@taro-minify-pack/plugin-async-pack 0.0.5-alpha.1 → 0.0.5-alpha.3
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/dist/transform-react-lazy.js +3 -2
- package/dist/transform-react-lazy.js.map +1 -1
- package/dist/transform-webpack-runtime.js +19 -3
- package/dist/transform-webpack-runtime.js.map +1 -1
- package/dist/utils.d.ts +1 -0
- package/dist/utils.js +9 -1
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
- package/src/transform-react-lazy.ts +3 -2
- package/src/transform-webpack-runtime.ts +28 -4
- package/src/utils.ts +5 -0
|
@@ -34,6 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
const types = __importStar(require("@babel/types"));
|
|
37
|
+
const utils_1 = require("./utils");
|
|
37
38
|
const customLazySource = '@taro-minify-pack/react-lazy-enhanced';
|
|
38
39
|
exports.default = () => {
|
|
39
40
|
return {
|
|
@@ -41,7 +42,7 @@ exports.default = () => {
|
|
|
41
42
|
Program: {
|
|
42
43
|
enter(programPath, state) {
|
|
43
44
|
const { filename = '' } = state;
|
|
44
|
-
if (new RegExp(customLazySource).test(filename))
|
|
45
|
+
if (new RegExp(customLazySource).test((0, utils_1.normalizeFileName)(filename)))
|
|
45
46
|
return;
|
|
46
47
|
state.reactNamespaces = new Set();
|
|
47
48
|
state.reactLazyBindings = new Set();
|
|
@@ -100,7 +101,7 @@ exports.default = () => {
|
|
|
100
101
|
},
|
|
101
102
|
exit(programPath, state) {
|
|
102
103
|
const { filename = '' } = state;
|
|
103
|
-
if (new RegExp(customLazySource).test(filename))
|
|
104
|
+
if (new RegExp(customLazySource).test((0, utils_1.normalizeFileName)(filename)))
|
|
104
105
|
return;
|
|
105
106
|
let needInject = false;
|
|
106
107
|
const customLazyId = programPath.scope.generateUidIdentifier('customLazy');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transform-react-lazy.js","sourceRoot":"","sources":["../src/transform-react-lazy.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,oDAAqC;
|
|
1
|
+
{"version":3,"file":"transform-react-lazy.js","sourceRoot":"","sources":["../src/transform-react-lazy.ts"],"names":[],"mappings":"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"}
|
|
@@ -125,9 +125,12 @@ const replaceWebpackLoadScriptFn = (assignmentExpressionNodePath, opts) => {
|
|
|
125
125
|
assignmentExpressionNodePath.insertBefore(hasStyleDynamicAssetsListAst);
|
|
126
126
|
assignmentExpressionNodePath.insertBefore(templateCodeDepAst);
|
|
127
127
|
};
|
|
128
|
-
const
|
|
128
|
+
const webpackLoadDynamicStylesheetTemplate = `
|
|
129
129
|
__webpack_require__.f.miniCss = function (dynamicStylesheetChunkId, promises) {
|
|
130
|
-
|
|
130
|
+
var cssChunks = CSS_CHUNKS;
|
|
131
|
+
if(installedCssChunks[dynamicStylesheetChunkId] !== 0 && cssChunks[dynamicStylesheetChunkId]){
|
|
132
|
+
promises.push(loadStylesheet(dynamicStylesheetChunkId))
|
|
133
|
+
}
|
|
131
134
|
}
|
|
132
135
|
`;
|
|
133
136
|
const replaceWebpackLoadDynamicModuleStylesheetFn = (assignmentExpressionNodePath) => {
|
|
@@ -149,7 +152,19 @@ const replaceWebpackLoadDynamicModuleStylesheetFn = (assignmentExpressionNodePat
|
|
|
149
152
|
});
|
|
150
153
|
if (isProcessed)
|
|
151
154
|
return;
|
|
152
|
-
const
|
|
155
|
+
const cssChunksValueAst = [];
|
|
156
|
+
assignmentExpressionNodePath.traverse({
|
|
157
|
+
VariableDeclarator: (nodePath) => {
|
|
158
|
+
const { id, init } = nodePath.node || {};
|
|
159
|
+
if (!types.isIdentifier(id, { name: 'cssChunks' }))
|
|
160
|
+
return;
|
|
161
|
+
if (!types.isObjectExpression(init))
|
|
162
|
+
return;
|
|
163
|
+
cssChunksValueAst.push(...init.properties);
|
|
164
|
+
}
|
|
165
|
+
});
|
|
166
|
+
const CSS_CHUNKS = types.objectExpression(cssChunksValueAst);
|
|
167
|
+
const templateCodeAst = core_1.template.statement(webpackLoadDynamicStylesheetTemplate)({ CSS_CHUNKS });
|
|
153
168
|
assignmentExpressionNodePath.replaceWith(templateCodeAst);
|
|
154
169
|
};
|
|
155
170
|
const webpackLoadStylesheetTemplate = `
|
|
@@ -193,6 +208,7 @@ const transformWebpackRuntime = (code, opts) => {
|
|
|
193
208
|
(0, traverse_1.default)(ast, {
|
|
194
209
|
AssignmentExpression: (nodePath) => {
|
|
195
210
|
replaceWebpackLoadScriptFn(nodePath, opts);
|
|
211
|
+
replaceWebpackLoadDynamicModuleStylesheetFn(nodePath);
|
|
196
212
|
},
|
|
197
213
|
VariableDeclarator(nodePath) {
|
|
198
214
|
replaceLoadStylesheetFn(nodePath, opts);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transform-webpack-runtime.js","sourceRoot":"","sources":["../src/transform-webpack-runtime.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sCAAgD;AAChD,iEAAwC;AACxC,sDAAuC;AACvC,+DAAsC;AACtC,oDAAqC;
|
|
1
|
+
{"version":3,"file":"transform-webpack-runtime.js","sourceRoot":"","sources":["../src/transform-webpack-runtime.ts"],"names":[],"mappings":"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"}
|
package/dist/utils.d.ts
CHANGED
package/dist/utils.js
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.generateDynamicPackageName = exports.isDynamicPackageWXssAssetWithOrder = exports.isDynamicPackageWXssAsset = exports.isDynamicPackageJsAsset = exports.isDynamicPackageName = exports.isNumber = exports.hashModBigInt = exports.generateKeyByOrder = void 0;
|
|
6
|
+
exports.normalizeFileName = exports.generateDynamicPackageName = exports.isDynamicPackageWXssAssetWithOrder = exports.isDynamicPackageWXssAsset = exports.isDynamicPackageJsAsset = exports.isDynamicPackageName = exports.isNumber = exports.hashModBigInt = exports.generateKeyByOrder = void 0;
|
|
7
|
+
const path_1 = __importDefault(require("path"));
|
|
4
8
|
const generateKeyByOrder = (order) => {
|
|
5
9
|
const startStr = 'a'.charCodeAt(0);
|
|
6
10
|
const firstLetter = String.fromCharCode(startStr + Math.floor(order / 26));
|
|
@@ -45,4 +49,8 @@ const generateDynamicPackageName = (opt) => {
|
|
|
45
49
|
return `${opt.dynamicPackageNamePrefix}-${(0, exports.generateKeyByOrder)(opt.order)}`;
|
|
46
50
|
};
|
|
47
51
|
exports.generateDynamicPackageName = generateDynamicPackageName;
|
|
52
|
+
const normalizeFileName = (fileName) => {
|
|
53
|
+
return path_1.default.normalize(fileName).replace(/\\/g, '/');
|
|
54
|
+
};
|
|
55
|
+
exports.normalizeFileName = normalizeFileName;
|
|
48
56
|
//# sourceMappingURL=utils.js.map
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAuB;AAGhB,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE;IAClD,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;IAClC,MAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAA;IAC1E,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC,QAAQ,GAAG,KAAK,GAAG,EAAE,CAAC,CAAA;IAC/D,OAAO,GAAG,WAAW,GAAG,YAAY,EAAE,CAAA;AACxC,CAAC,CAAA;AALY,QAAA,kBAAkB,sBAK9B;AAEM,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,GAAW,EAAE,EAAE;IACzD,IAAI,CAAC,IAAI;QAAE,OAAO,CAAC,CAAA;IACnB,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;AAClD,CAAC,CAAA;AAHY,QAAA,aAAa,iBAGzB;AAEM,MAAM,QAAQ,GAAG,CAAC,GAAQ,EAAE,EAAE;IACnC,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;AACxD,CAAC,CAAA;AAFY,QAAA,QAAQ,YAEpB;AAEM,MAAM,oBAAoB,GAAG,CAAC,MAAc,EAAE,WAAmB,EAAE,EAAE;IAC1E,MAAM,mBAAmB,GAAG,IAAI,MAAM,CAAC,IAAI,MAAM,iBAAiB,CAAC,CAAA;IACnE,OAAO,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;AAC9C,CAAC,CAAA;AAHY,QAAA,oBAAoB,wBAGhC;AAEM,MAAM,uBAAuB,GAAG,CAAC,MAAc,EAAE,SAAiB,EAAE,EAAE;IAC3E,MAAM,oBAAoB,GAAG,IAAI,MAAM,CAAC,IAAI,MAAM,2BAA2B,CAAC,CAAA;IAC9E,OAAO,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AAC7C,CAAC,CAAA;AAHY,QAAA,uBAAuB,2BAGnC;AAEM,MAAM,yBAAyB,GAAG,CAAC,MAAc,EAAE,SAAiB,EAAE,EAAE;IAC7E,MAAM,sBAAsB,GAAG,IAAI,MAAM,CAAC,IAAI,MAAM,6BAA6B,CAAC,CAAA;IAClF,OAAO,sBAAsB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AAC/C,CAAC,CAAA;AAHY,QAAA,yBAAyB,6BAGrC;AAEM,MAAM,kCAAkC,GAAG,CAAC,GAAuC,EAAE,SAAiB,EAAE,EAAE;IAC/G,IAAI,CAAC,IAAA,gBAAQ,EAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,mBAAmB,IAAI,CAAC;QAAE,OAAO,IAAA,iCAAyB,EAAC,GAAG,CAAC,wBAAwB,EAAE,SAAS,CAAC,CAAA;IACnI,OAAO,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,wBAAwB,IAAI,IAAA,0BAAkB,EAAC,GAAG,CAAC,KAAM,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AACtH,CAAC,CAAA;AAHY,QAAA,kCAAkC,sCAG9C;AAEM,MAAM,0BAA0B,GAAG,CAAC,GAAuC,EAAE,EAAE;IACpF,IAAI,CAAC,IAAA,gBAAQ,EAAC,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,mBAAmB,IAAI,CAAC;QAAE,OAAO,GAAG,CAAC,wBAAwB,CAAA;IAC7F,OAAO,GAAG,GAAG,CAAC,wBAAwB,IAAI,IAAA,0BAAkB,EAAC,GAAG,CAAC,KAAM,CAAC,EAAE,CAAA;AAC5E,CAAC,CAAA;AAHY,QAAA,0BAA0B,8BAGtC;AAEM,MAAM,iBAAiB,GAAG,CAAC,QAAgB,EAAE,EAAE;IACpD,OAAO,cAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AACrD,CAAC,CAAA;AAFY,QAAA,iBAAiB,qBAE7B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { PluginObj, NodePath, PluginPass } from '@babel/core'
|
|
2
2
|
import * as types from '@babel/types'
|
|
3
3
|
import { CallExpression, ImportDeclaration, Program, VariableDeclarator } from '@babel/types'
|
|
4
|
+
import { normalizeFileName } from './utils'
|
|
4
5
|
|
|
5
6
|
const customLazySource = '@taro-minify-pack/react-lazy-enhanced'
|
|
6
7
|
|
|
@@ -16,7 +17,7 @@ export default (): PluginObj<State> => {
|
|
|
16
17
|
enter (programPath: NodePath<Program>, state: State) {
|
|
17
18
|
const { filename = '' } = state
|
|
18
19
|
|
|
19
|
-
if (new RegExp(customLazySource).test(filename)) return
|
|
20
|
+
if (new RegExp(customLazySource).test(normalizeFileName(filename))) return
|
|
20
21
|
|
|
21
22
|
state.reactNamespaces = new Set()
|
|
22
23
|
|
|
@@ -85,7 +86,7 @@ export default (): PluginObj<State> => {
|
|
|
85
86
|
exit (programPath: NodePath<Program>, state: State) {
|
|
86
87
|
const { filename = '' } = state
|
|
87
88
|
|
|
88
|
-
if (new RegExp(customLazySource).test(filename)) return
|
|
89
|
+
if (new RegExp(customLazySource).test(normalizeFileName(filename))) return
|
|
89
90
|
|
|
90
91
|
let needInject = false
|
|
91
92
|
|
|
@@ -3,7 +3,14 @@ import generator from '@babel/generator'
|
|
|
3
3
|
import * as parser from '@babel/parser'
|
|
4
4
|
import traverse from '@babel/traverse'
|
|
5
5
|
import * as types from '@babel/types'
|
|
6
|
-
import type {
|
|
6
|
+
import type {
|
|
7
|
+
AssignmentExpression,
|
|
8
|
+
ObjectMethod,
|
|
9
|
+
ObjectProperty,
|
|
10
|
+
SpreadElement,
|
|
11
|
+
Statement,
|
|
12
|
+
VariableDeclarator
|
|
13
|
+
} from '@babel/types'
|
|
7
14
|
import type { CompilationAssets, AsyncPackOpts } from './types'
|
|
8
15
|
import { isDynamicPackageJsAsset, isDynamicPackageWXssAsset } from './utils'
|
|
9
16
|
|
|
@@ -111,9 +118,12 @@ const replaceWebpackLoadScriptFn = (assignmentExpressionNodePath: NodePath<Assig
|
|
|
111
118
|
assignmentExpressionNodePath.insertBefore(templateCodeDepAst)
|
|
112
119
|
}
|
|
113
120
|
|
|
114
|
-
const
|
|
121
|
+
const webpackLoadDynamicStylesheetTemplate = `
|
|
115
122
|
__webpack_require__.f.miniCss = function (dynamicStylesheetChunkId, promises) {
|
|
116
|
-
|
|
123
|
+
var cssChunks = CSS_CHUNKS;
|
|
124
|
+
if(installedCssChunks[dynamicStylesheetChunkId] !== 0 && cssChunks[dynamicStylesheetChunkId]){
|
|
125
|
+
promises.push(loadStylesheet(dynamicStylesheetChunkId))
|
|
126
|
+
}
|
|
117
127
|
}
|
|
118
128
|
`
|
|
119
129
|
|
|
@@ -140,7 +150,20 @@ const replaceWebpackLoadDynamicModuleStylesheetFn = (
|
|
|
140
150
|
|
|
141
151
|
if (isProcessed) return
|
|
142
152
|
|
|
143
|
-
const
|
|
153
|
+
const cssChunksValueAst: Array<ObjectMethod | ObjectProperty | SpreadElement> = []
|
|
154
|
+
|
|
155
|
+
assignmentExpressionNodePath.traverse({
|
|
156
|
+
VariableDeclarator: (nodePath: NodePath<VariableDeclarator>) => {
|
|
157
|
+
const { id, init } = nodePath.node || {}
|
|
158
|
+
if (!types.isIdentifier(id, { name: 'cssChunks' })) return
|
|
159
|
+
if (!types.isObjectExpression(init)) return
|
|
160
|
+
cssChunksValueAst.push(...init.properties)
|
|
161
|
+
}
|
|
162
|
+
})
|
|
163
|
+
|
|
164
|
+
const CSS_CHUNKS = types.objectExpression(cssChunksValueAst)
|
|
165
|
+
|
|
166
|
+
const templateCodeAst = template.statement(webpackLoadDynamicStylesheetTemplate)({ CSS_CHUNKS })
|
|
144
167
|
|
|
145
168
|
assignmentExpressionNodePath.replaceWith(templateCodeAst)
|
|
146
169
|
}
|
|
@@ -185,6 +208,7 @@ export const transformWebpackRuntime = (code: string, opts: Opts) => {
|
|
|
185
208
|
traverse(ast, {
|
|
186
209
|
AssignmentExpression: (nodePath: NodePath<AssignmentExpression>) => {
|
|
187
210
|
replaceWebpackLoadScriptFn(nodePath, opts)
|
|
211
|
+
replaceWebpackLoadDynamicModuleStylesheetFn(nodePath)
|
|
188
212
|
},
|
|
189
213
|
VariableDeclarator (nodePath: NodePath<VariableDeclarator>) {
|
|
190
214
|
replaceLoadStylesheetFn(nodePath, opts)
|
package/src/utils.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import path from 'path'
|
|
1
2
|
import { AsyncPackOpts } from './types'
|
|
2
3
|
|
|
3
4
|
export const generateKeyByOrder = (order: number) => {
|
|
@@ -40,3 +41,7 @@ export const generateDynamicPackageName = (opt: AsyncPackOpts & { order?: number
|
|
|
40
41
|
if (!isNumber(opt.order) || opt.dynamicPackageCount <= 1) return opt.dynamicPackageNamePrefix
|
|
41
42
|
return `${opt.dynamicPackageNamePrefix}-${generateKeyByOrder(opt.order!)}`
|
|
42
43
|
}
|
|
44
|
+
|
|
45
|
+
export const normalizeFileName = (fileName: string) => {
|
|
46
|
+
return path.normalize(fileName).replace(/\\/g, '/')
|
|
47
|
+
}
|