Spaces:
Sleeping
Sleeping
| module.exports = function (fileInfo, api) { | |
| const j = api.jscodeshift | |
| const root = j(fileInfo.source) | |
| const useDoubleQuote = root.find(j.Literal).some(({ node }) => node.raw.startsWith('"')) | |
| root | |
| .find(j.Literal, { value: '@vue/app' }) | |
| .replaceWith(j.stringLiteral('@vue/cli-plugin-babel/preset')) | |
| root | |
| .find(j.Literal, { value: '@vue/babel-preset-app' }) | |
| .replaceWith(j.stringLiteral('@vue/cli-plugin-babel/preset')) | |
| const templateLiterals = root | |
| .find(j.TemplateLiteral, { | |
| expressions: { length: 0 } | |
| }) | |
| templateLiterals | |
| .find(j.TemplateElement, { | |
| value: { | |
| cooked: '@vue/app' | |
| } | |
| }) | |
| .closest(j.TemplateLiteral) | |
| .replaceWith(j.stringLiteral('@vue/cli-plugin-babel/preset')) | |
| templateLiterals | |
| .find(j.TemplateElement, { | |
| value: { | |
| cooked: '@vue/babel-preset-app' | |
| } | |
| }) | |
| .closest(j.TemplateLiteral) | |
| .replaceWith(j.stringLiteral('@vue/cli-plugin-babel/preset')) | |
| return root.toSource({ | |
| lineTerminator: '\n', | |
| quote: useDoubleQuote ? 'double' : 'single' | |
| }) | |
| } | |