UNPKG

i18n-transform-cli

Version:

这是一款能够自动将代码里的中文转成i18n国际化标记的命令行工具。当然,你也可以用它实现将中文语言包自动翻译成其他语言。适用于vue2、vue3和react

38 lines (37 loc) 1.78 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.initParse = void 0; const babel = require('@babel/core'); const pluginSyntaxJSX = require('@babel/plugin-syntax-jsx'); const pluginSyntaxProposalOptionalChaining = require('@babel/plugin-proposal-optional-chaining'); const pluginSyntaxClassProperties = require('@babel/plugin-syntax-class-properties'); const pluginSyntaxDecorators = require('@babel/plugin-syntax-decorators'); const pluginSyntaxObjectRestSpread = require('@babel/plugin-syntax-object-rest-spread'); const pluginSyntaxAsyncGenerators = require('@babel/plugin-syntax-async-generators'); const pluginSyntaxDoExpressions = require('@babel/plugin-syntax-do-expressions'); const pluginSyntaxDynamicImport = require('@babel/plugin-syntax-dynamic-import'); const pluginSyntaxExportExtensions = require('@babel/plugin-syntax-export-extensions'); const pluginSyntaxFunctionBind = require('@babel/plugin-syntax-function-bind'); function initParse(babelPresets = [], babelPlugins = []) { return function (code) { return babel.parseSync(code, { ast: true, configFile: false, presets: babelPresets, plugins: [ pluginSyntaxJSX, pluginSyntaxProposalOptionalChaining, pluginSyntaxClassProperties, [pluginSyntaxDecorators, { decoratorsBeforeExport: true }], pluginSyntaxObjectRestSpread, pluginSyntaxAsyncGenerators, pluginSyntaxDoExpressions, pluginSyntaxDynamicImport, pluginSyntaxExportExtensions, pluginSyntaxFunctionBind, ...babelPlugins, ], }); }; } exports.initParse = initParse;