@umijs/babel-preset-umi 3.5.20 → 4.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1 +1,3 @@
1
1
  # @umijs/babel-preset-umi
2
+
3
+ See our website [umijs](https://umijs.org) for more information.
@@ -0,0 +1,16 @@
1
+ import { Env } from './types';
2
+ interface IOpts {
3
+ env: Env;
4
+ presetEnv: any;
5
+ presetReact: any;
6
+ presetTypeScript: any;
7
+ pluginTransformRuntime: any;
8
+ pluginLockCoreJS: any;
9
+ pluginDynamicImportNode: any;
10
+ pluginAutoCSSModules: any;
11
+ }
12
+ declare const _default: (_context: any, opts: IOpts) => {
13
+ presets: any[][];
14
+ plugins: any[];
15
+ };
16
+ export default _default;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAE9B,UAAU,KAAK;IACb,GAAG,EAAE,GAAG,CAAC;IACT,SAAS,EAAE,GAAG,CAAC;IACf,WAAW,EAAE,GAAG,CAAC;IACjB,gBAAgB,EAAE,GAAG,CAAC;IACtB,sBAAsB,EAAE,GAAG,CAAC;IAC5B,gBAAgB,EAAE,GAAG,CAAC;IACtB,uBAAuB,EAAE,GAAG,CAAC;IAC7B,oBAAoB,EAAE,GAAG,CAAC;CAC3B;mCAEyB,GAAG,QAAQ,KAAK;;;;AAA1C,wBAkIE"}
package/dist/index.js ADDED
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const path_1 = require("path");
7
+ const autoCSSModules_1 = __importDefault(require("./plugins/autoCSSModules"));
8
+ const dynamicImportNode_1 = __importDefault(require("./plugins/dynamicImportNode"));
9
+ const lockCoreJS_1 = __importDefault(require("./plugins/lockCoreJS"));
10
+ const types_1 = require("./types");
11
+ exports.default = (_context, opts) => {
12
+ return {
13
+ presets: [
14
+ [
15
+ require.resolve('@umijs/bundler-utils/compiled/babel/preset-env'),
16
+ Object.assign({ bugfixes: true,
17
+ // 更兼容 spec,但会变慢,所以不开
18
+ spec: false,
19
+ // 推荐用 top level 的 assumptions 配置
20
+ loose: false,
21
+ // 保留 es modules 语法,交给 webpack 处理
22
+ modules: false, debug: false, useBuiltIns: 'entry', corejs: '3',
23
+ // 没必要,遇到了应该改 targets 配置
24
+ forceAllTransforms: false, ignoreBrowserslistConfig: true }, opts.presetEnv),
25
+ ],
26
+ [
27
+ require.resolve('@umijs/bundler-utils/compiled/babel/preset-react'),
28
+ Object.assign({ runtime: 'automatic', development: opts.env === types_1.Env.development, importSource: 'react' }, opts.presetReact),
29
+ ],
30
+ [
31
+ require.resolve('@umijs/bundler-utils/compiled/babel/preset-typescript'),
32
+ Object.assign({ allowNamespaces: true, allowDeclareFields: true, onlyRemoveTypeImports: true, optimizeConstEnums: true }, opts.presetTypeScript),
33
+ ],
34
+ ],
35
+ plugins: [
36
+ // TC39 Proposals
37
+ // class-static-block
38
+ // decorators
39
+ [
40
+ require.resolve('@umijs/bundler-utils/compiled/babel/plugin-proposal-decorators'),
41
+ { legacy: true },
42
+ ],
43
+ // do-expressions
44
+ [
45
+ require.resolve('@umijs/bundler-utils/compiled/babel/plugin-proposal-do-expressions'),
46
+ ],
47
+ // export-default-from
48
+ [
49
+ require.resolve('@umijs/bundler-utils/compiled/babel/plugin-proposal-export-default-from'),
50
+ ],
51
+ // export-namespace-from
52
+ [
53
+ require.resolve('@umijs/bundler-utils/compiled/babel/plugin-proposal-export-namespace-from'),
54
+ ],
55
+ // function-bind
56
+ [
57
+ require.resolve('@umijs/bundler-utils/compiled/babel/plugin-proposal-function-bind'),
58
+ ],
59
+ // function-sent
60
+ // partial-application
61
+ [
62
+ require.resolve('@umijs/bundler-utils/compiled/babel/plugin-proposal-partial-application'),
63
+ ],
64
+ // pipeline-operator
65
+ [
66
+ require.resolve('@umijs/bundler-utils/compiled/babel/plugin-proposal-pipeline-operator'),
67
+ { proposal: 'minimal' },
68
+ ],
69
+ // throw-expressions
70
+ // record-and-tuple
71
+ [
72
+ require.resolve('@umijs/bundler-utils/compiled/babel/plugin-proposal-record-and-tuple'),
73
+ {
74
+ syntaxType: 'hash',
75
+ importPolyfill: true,
76
+ polyfillModuleName: (0, path_1.dirname)(require.resolve('@bloomberg/record-tuple-polyfill/package')),
77
+ },
78
+ ],
79
+ opts.pluginTransformRuntime && [
80
+ require.resolve('@umijs/bundler-utils/compiled/babel/plugin-transform-runtime'),
81
+ Object.assign({ helpers: true, regenerator: true,
82
+ // 7.13 之后根据 exports 自动选择 esm 和 cjs,无需此配置
83
+ useESModules: false,
84
+ // lock the version of @babel/runtime
85
+ // make sure we are using the correct version
86
+ absoluteRuntime: (0, path_1.dirname)(require.resolve('@babel/runtime/package.json')), version: `^${require('@babel/runtime/package.json').version}` }, opts.pluginTransformRuntime),
87
+ ],
88
+ // none official plugins
89
+ opts.pluginLockCoreJS && [lockCoreJS_1.default],
90
+ opts.pluginDynamicImportNode && [dynamicImportNode_1.default],
91
+ opts.pluginAutoCSSModules && [autoCSSModules_1.default],
92
+ ].filter(Boolean),
93
+ };
94
+ };
@@ -0,0 +1,8 @@
1
+ import * as Babel from '@umijs/bundler-utils/compiled/babel/core';
2
+ import * as t from '@umijs/bundler-utils/compiled/babel/types';
3
+ export default function (): {
4
+ visitor: {
5
+ ImportDeclaration(path: Babel.NodePath<t.ImportDeclaration>): void;
6
+ VariableDeclarator(path: Babel.NodePath<t.VariableDeclarator>): void;
7
+ };
8
+ };
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ const t = __importStar(require("@umijs/bundler-utils/compiled/babel/types"));
23
+ const path_1 = require("path");
24
+ const CSS_EXT_NAMES = ['.css', '.less', '.sass', '.scss', '.stylus', '.styl'];
25
+ function default_1() {
26
+ return {
27
+ visitor: {
28
+ ImportDeclaration(path) {
29
+ const { specifiers, source, source: { value }, } = path.node;
30
+ if (specifiers.length && CSS_EXT_NAMES.includes((0, path_1.extname)(value))) {
31
+ source.value = `${value}?modules`;
32
+ }
33
+ },
34
+ // e.g.
35
+ // const styles = await import('./index.less');
36
+ VariableDeclarator(path) {
37
+ const { node } = path;
38
+ if (t.isAwaitExpression(node.init) &&
39
+ t.isCallExpression(node.init.argument) &&
40
+ t.isImport(node.init.argument.callee) &&
41
+ node.init.argument.arguments.length === 1 &&
42
+ t.isStringLiteral(node.init.argument.arguments[0]) &&
43
+ CSS_EXT_NAMES.includes((0, path_1.extname)(node.init.argument.arguments[0].value))) {
44
+ node.init.argument.arguments[0].value = `${node.init.argument.arguments[0].value}?modules`;
45
+ }
46
+ },
47
+ },
48
+ };
49
+ }
50
+ exports.default = default_1;
@@ -0,0 +1,3 @@
1
+ import * as Babel from '@umijs/bundler-utils/compiled/babel/core';
2
+ declare const _default: () => Babel.PluginObj;
3
+ export default _default;
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __importDefault = (this && this.__importDefault) || function (mod) {
22
+ return (mod && mod.__esModule) ? mod : { "default": mod };
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ const template_1 = __importDefault(require("@umijs/bundler-utils/compiled/babel/template"));
26
+ const t = __importStar(require("@umijs/bundler-utils/compiled/babel/types"));
27
+ function getImportSource(callNode) {
28
+ // @ts-ignore
29
+ const importArguments = callNode.arguments;
30
+ const [importPath] = importArguments;
31
+ const isString = t.isStringLiteral(importPath) || t.isTemplateLiteral(importPath);
32
+ if (isString) {
33
+ t.removeComments(importPath);
34
+ return importPath;
35
+ }
36
+ return t.templateLiteral([
37
+ t.templateElement({ raw: '', cooked: '' }),
38
+ t.templateElement({ raw: '', cooked: '' }, true),
39
+ ], importArguments);
40
+ }
41
+ const builders = {
42
+ static: (0, template_1.default)('Promise.resolve().then(() => INTEROP(require(SOURCE)))'),
43
+ dynamic: (0, template_1.default)('Promise.resolve(SOURCE).then(s => INTEROP(require(s)))'),
44
+ };
45
+ function isString(node) {
46
+ return (t.isStringLiteral(node) ||
47
+ (t.isTemplateLiteral(node) && node.expressions.length === 0));
48
+ }
49
+ exports.default = () => {
50
+ const visited = new WeakSet();
51
+ return {
52
+ visitor: {
53
+ Import(path) {
54
+ if (visited) {
55
+ if (visited.has(path)) {
56
+ return;
57
+ }
58
+ visited.add(path);
59
+ }
60
+ const SOURCE = getImportSource(path.parent);
61
+ const builder = isString(SOURCE) ? builders.static : builders.dynamic;
62
+ const newImport = builder({
63
+ SOURCE,
64
+ INTEROP: path.hub.addHelper('interopRequireWildcard'),
65
+ });
66
+ // @ts-ignore
67
+ path.parentPath.replaceWith(newImport);
68
+ },
69
+ },
70
+ };
71
+ };
@@ -0,0 +1,3 @@
1
+ export default function (): {
2
+ post({ path }: any): void;
3
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lockCoreJS.d.ts","sourceRoot":"","sources":["../../src/plugins/lockCoreJS.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,OAAO;mBAEK,GAAG;EAerB"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ const t = __importStar(require("@umijs/bundler-utils/compiled/babel/types"));
23
+ const utils_1 = require("@umijs/utils");
24
+ const path_1 = require("path");
25
+ function addLastSlash(path) {
26
+ return path.endsWith('/') ? path : `${path}/`;
27
+ }
28
+ function default_1() {
29
+ return {
30
+ post({ path }) {
31
+ path.node.body.forEach((node) => {
32
+ if (t.isImportDeclaration(node)) {
33
+ if (node.source.value.startsWith('core-js/')) {
34
+ node.source.value = node.source.value.replace(/^core-js\//, addLastSlash((0, utils_1.winPath)((0, path_1.dirname)(require.resolve('core-js/package.json')))));
35
+ }
36
+ }
37
+ });
38
+ },
39
+ };
40
+ }
41
+ exports.default = default_1;
@@ -0,0 +1,4 @@
1
+ export declare enum Env {
2
+ development = "development",
3
+ production = "production"
4
+ }
package/dist/types.js ADDED
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Env = void 0;
4
+ var Env;
5
+ (function (Env) {
6
+ Env["development"] = "development";
7
+ Env["production"] = "production";
8
+ })(Env = exports.Env || (exports.Env = {}));
package/package.json CHANGED
@@ -1,37 +1,35 @@
1
1
  {
2
2
  "name": "@umijs/babel-preset-umi",
3
- "version": "3.5.20",
4
- "description": "@umijs/babel-preset-umi",
5
- "main": "lib/index.js",
6
- "types": "lib/index.d.ts",
3
+ "version": "4.0.0-beta.1",
4
+ "description": "Official babel preset for umi.",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
7
  "files": [
8
- "lib",
9
- "app.js",
10
- "node.js",
11
- "dependency.js"
8
+ "dist"
12
9
  ],
10
+ "scripts": {
11
+ "build": "pnpm tsc",
12
+ "build:deps": "pnpm esno ../../scripts/bundleDeps.ts",
13
+ "dev": "pnpm build -- --watch"
14
+ },
13
15
  "repository": {
14
16
  "type": "git",
15
- "url": "https://github.com/umijs/umi"
17
+ "url": "https://github.com/umijs/umi-next"
16
18
  },
17
- "keywords": [
18
- "umi"
19
- ],
20
19
  "authors": [
21
20
  "chencheng <sorrycc@gmail.com> (https://github.com/sorrycc)"
22
21
  ],
23
22
  "license": "MIT",
24
- "bugs": "http://github.com/umijs/umi/issues",
25
- "homepage": "https://github.com/umijs/umi/tree/master/packages/babel-preset-umi#readme",
23
+ "bugs": "https://github.com/umijs/umi-next/issues",
24
+ "homepage": "https://github.com/umijs/umi-next/tree/master/packages/babel-preset-umi#readme",
26
25
  "publishConfig": {
27
26
  "access": "public"
28
27
  },
29
28
  "dependencies": {
30
- "@babel/runtime": "7.12.5",
31
- "@umijs/babel-plugin-auto-css-modules": "3.5.20",
32
- "@umijs/babel-plugin-import-to-await-require": "3.5.20",
33
- "@umijs/babel-plugin-lock-core-js-3": "3.5.20",
34
- "@umijs/babel-plugin-no-anonymous-default-export": "3.5.20",
35
- "@umijs/deps": "3.5.20"
29
+ "@babel/runtime": "7.15.4",
30
+ "@bloomberg/record-tuple-polyfill": "0.0.3",
31
+ "@umijs/bundler-utils": "4.0.0-beta.1",
32
+ "@umijs/utils": "4.0.0-beta.1",
33
+ "core-js": "3.18.3"
36
34
  }
37
35
  }
package/app.js DELETED
@@ -1,30 +0,0 @@
1
- module.exports = function (context, opts) {
2
- const { nodeEnv } = opts;
3
- delete opts['nodeEnv'];
4
-
5
- return {
6
- presets: [
7
- [
8
- require('./lib').default,
9
- require('@umijs/utils').deepmerge(
10
- {
11
- typescript: true,
12
- env: {
13
- useBuiltIns: 'entry',
14
- corejs: 3,
15
- modules: false,
16
- },
17
- react: {
18
- development: nodeEnv === 'development',
19
- },
20
- transformRuntime: {},
21
- reactRemovePropTypes: nodeEnv === 'production',
22
- reactRequire: true,
23
- lockCoreJS3: {},
24
- },
25
- opts,
26
- ),
27
- ],
28
- ],
29
- };
30
- };
package/dependency.js DELETED
@@ -1,23 +0,0 @@
1
- module.exports = function (api, opts) {
2
- const { nodeEnv } = opts;
3
- delete opts['nodeEnv'];
4
-
5
- return {
6
- presets: [
7
- [
8
- require('./lib').default,
9
- require('@umijs/utils').deepmerge(
10
- {
11
- env: {
12
- useBuiltIns: 'entry',
13
- corejs: 3,
14
- modules: false,
15
- },
16
- transformRuntime: {},
17
- },
18
- opts,
19
- ),
20
- ],
21
- ],
22
- };
23
- };
package/lib/index.d.ts DELETED
@@ -1,25 +0,0 @@
1
- interface IImportPluginOpts {
2
- libraryName: string;
3
- libraryDirectory?: string;
4
- style?: boolean;
5
- camel2DashComponentName?: boolean;
6
- }
7
- export interface IOpts {
8
- typescript?: boolean;
9
- react?: object;
10
- debug?: boolean;
11
- env?: object;
12
- transformRuntime?: object;
13
- reactRemovePropTypes?: boolean;
14
- reactRequire?: boolean;
15
- dynamicImportNode?: boolean;
16
- importToAwaitRequire?: object;
17
- autoCSSModules?: boolean;
18
- svgr?: object;
19
- import?: IImportPluginOpts[];
20
- lockCoreJS3?: object;
21
- modify?: Function;
22
- noAnonymousDefaultExport?: boolean;
23
- }
24
- declare const _default: (context: any, opts?: IOpts) => any;
25
- export default _default;
package/lib/index.js DELETED
@@ -1,107 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- function _react() {
9
- const data = _interopRequireDefault(require("react"));
10
-
11
- _react = function _react() {
12
- return data;
13
- };
14
-
15
- return data;
16
- }
17
-
18
- function _utils() {
19
- const data = require("@umijs/utils");
20
-
21
- _utils = function _utils() {
22
- return data;
23
- };
24
-
25
- return data;
26
- }
27
-
28
- function _path() {
29
- const data = require("path");
30
-
31
- _path = function _path() {
32
- return data;
33
- };
34
-
35
- return data;
36
- }
37
-
38
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
39
-
40
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
41
-
42
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
43
-
44
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
45
-
46
- function toObject(obj) {
47
- return typeof obj === 'object' ? obj : {};
48
- }
49
-
50
- var _default = (context, opts = {}) => {
51
- const defaultEnvConfig = {
52
- exclude: ['transform-typeof-symbol', 'transform-unicode-regex', 'transform-sticky-regex', 'transform-new-target', 'transform-modules-umd', 'transform-modules-systemjs', 'transform-modules-amd', 'transform-literals']
53
- };
54
- const preset = {
55
- presets: [opts.env && [require('@umijs/deps/compiled/babel/preset-env').default, _objectSpread(_objectSpread({}, (0, _utils().mergeConfig)(defaultEnvConfig, toObject(opts.env))), {}, {
56
- debug: opts.debug
57
- })], opts.react && [require('@umijs/deps/compiled/babel/preset-react').default, toObject(opts.react)], opts.typescript && [require('@umijs/deps/compiled/babel/preset-typescript').default, {
58
- // https://babeljs.io/docs/en/babel-plugin-transform-typescript#impartial-namespace-support
59
- allowNamespaces: true
60
- }]].filter(Boolean),
61
- plugins: [// https://github.com/webpack/webpack/issues/10227
62
- [require('@umijs/deps/compiled/babel/plugin-proposal-optional-chaining').default, {
63
- loose: false
64
- }], // https://github.com/webpack/webpack/issues/10227
65
- [require('@umijs/deps/compiled/babel/plugin-proposal-nullish-coalescing-operator').default, {
66
- loose: false
67
- }], require('@umijs/deps/compiled/babel/plugin-syntax-top-level-await').default, // Necessary to include regardless of the environment because
68
- // in practice some other transforms (such as object-rest-spread)
69
- // don't work without it: https://github.com/babel/babel/issues/7215
70
- [require('@umijs/deps/compiled/babel/plugin-transform-destructuring').default, {
71
- loose: false
72
- }], // https://www.npmjs.com/package/babel-plugin-transform-typescript-metadata#usage
73
- // should be placed before @babel/plugin-proposal-decorators.
74
- opts.typescript && [require.resolve('@umijs/deps/compiled/babel/babel-plugin-transform-typescript-metadata')], [require('@umijs/deps/compiled/babel/plugin-proposal-decorators').default, {
75
- legacy: true
76
- }], [require('@umijs/deps/compiled/babel/plugin-proposal-class-properties').default, {
77
- loose: true
78
- }], require('@umijs/deps/compiled/babel/plugin-proposal-export-default-from').default, [require('@umijs/deps/compiled/babel/plugin-proposal-pipeline-operator').default, {
79
- proposal: 'minimal'
80
- }], require('@umijs/deps/compiled/babel/plugin-proposal-do-expressions').default, require('@umijs/deps/compiled/babel/plugin-proposal-function-bind').default, require('@umijs/deps/compiled/babel/plugin-proposal-logical-assignment-operators').default, opts.transformRuntime && [require('@umijs/deps/compiled/babel/plugin-transform-runtime').default, _objectSpread({
81
- version: require('@babel/runtime/package.json').version,
82
- // https://babeljs.io/docs/en/babel-plugin-transform-runtime#absoluteruntime
83
- // lock the version of @babel/runtime
84
- // make sure we are using the correct version
85
- absoluteRuntime: (0, _path().dirname)(require.resolve('@babel/runtime/package.json')),
86
- // https://babeljs.io/docs/en/babel-plugin-transform-runtime#useesmodules
87
- useESModules: true
88
- }, toObject(opts.transformRuntime))], opts.reactRemovePropTypes && [require.resolve('@umijs/deps/compiled/babel/babel-plugin-transform-react-remove-prop-types'), {
89
- removeImport: true
90
- }], opts.reactRequire && [require.resolve('@umijs/deps/compiled/babel/babel-plugin-react-require')], opts.dynamicImportNode && [require.resolve('@umijs/deps/compiled/babel/babel-plugin-dynamic-import-node')], opts.svgr && [require.resolve('@umijs/deps/compiled/babel/babel-plugin-named-asset-import'), {
91
- loaderMap: {
92
- svg: {
93
- ReactComponent: `${require.resolve('@umijs/deps/compiled/babel/svgr-webpack')}?-svgo,+titleProp,+ref![path]`
94
- }
95
- }
96
- }], ...(opts.import ? opts.import.map(importOpts => {
97
- return [require.resolve('@umijs/deps/compiled/babel/babel-plugin-import'), importOpts, importOpts.libraryName];
98
- }) : []), opts.autoCSSModules && [require.resolve('@umijs/babel-plugin-auto-css-modules')], opts.importToAwaitRequire && [require.resolve('@umijs/babel-plugin-import-to-await-require'), opts.importToAwaitRequire], opts.lockCoreJS3 && [require.resolve('@umijs/babel-plugin-lock-core-js-3'), opts.lockCoreJS3], opts.noAnonymousDefaultExport && [require.resolve('@umijs/babel-plugin-no-anonymous-default-export')], [require('@umijs/deps/compiled/babel/plugin-proposal-record-and-tuple').default, {
99
- syntaxType: 'hash',
100
- polyfillModuleName: '@umijs/deps/reexported/record-tuple-polyfill',
101
- importPolyfill: true
102
- }]].filter(Boolean)
103
- };
104
- return opts.modify ? opts.modify(preset) : preset;
105
- };
106
-
107
- exports.default = _default;
package/node.js DELETED
@@ -1,22 +0,0 @@
1
- module.exports = function (api, opts) {
2
- return {
3
- presets: [
4
- [
5
- require('./lib').default,
6
- require('@umijs/utils').deepmerge(
7
- {
8
- typescript: true,
9
- react: true,
10
- env: {
11
- targets: {
12
- node: 'current',
13
- },
14
- modules: 'commonjs',
15
- },
16
- },
17
- opts,
18
- ),
19
- ],
20
- ],
21
- };
22
- };