@tarojs/transformer-wx 2.2.18 → 3.6.19
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/LICENSE +140 -1
- package/index.js +1 -0
- package/lib/src/adapter.js +24 -15
- package/lib/src/adapter.js.map +1 -1
- package/lib/src/class-method-renamer.js +13 -12
- package/lib/src/class-method-renamer.js.map +1 -1
- package/lib/src/class.js +203 -181
- package/lib/src/class.js.map +1 -1
- package/lib/src/constant.js +26 -26
- package/lib/src/constant.js.map +1 -1
- package/lib/src/create-html-element.js +20 -15
- package/lib/src/create-html-element.js.map +1 -1
- package/lib/src/eslint.js +20 -16
- package/lib/src/eslint.js.map +1 -1
- package/lib/src/functional.js +38 -43
- package/lib/src/functional.js.map +1 -1
- package/lib/src/index.js +165 -125
- package/lib/src/index.js.map +1 -1
- package/lib/src/jsx.js +71 -57
- package/lib/src/jsx.js.map +1 -1
- package/lib/src/lifecycle.js +2 -2
- package/lib/src/options.js +11 -9
- package/lib/src/options.js.map +1 -1
- package/lib/src/plugins/remove-dead-code.js +111 -143
- package/lib/src/plugins/remove-dead-code.js.map +1 -1
- package/lib/src/plugins.js +2 -2
- package/lib/src/plugins.js.map +1 -1
- package/lib/src/render-props.js +33 -24
- package/lib/src/render-props.js.map +1 -1
- package/lib/src/render.js +1763 -1719
- package/lib/src/render.js.map +1 -1
- package/lib/src/utils.js +115 -116
- package/lib/src/utils.js.map +1 -1
- package/lib/src/wxs.js +72 -0
- package/lib/src/wxs.js.map +1 -0
- package/package.json +40 -27
- package/CHANGELOG.md +0 -43
package/LICENSE
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
MIT License
|
|
2
2
|
|
|
3
|
-
Copyright (c) 2018
|
|
3
|
+
Copyright (c) 2018 O2Team
|
|
4
4
|
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
|
@@ -19,3 +19,142 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
|
19
19
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
20
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
21
|
SOFTWARE.
|
|
22
|
+
|
|
23
|
+
========================================================================
|
|
24
|
+
|
|
25
|
+
MIT (react-devtools):
|
|
26
|
+
The following files embed [react-devtools](https://github.com/facebook/react) MIT:
|
|
27
|
+
`/packages/taro-plugin-react-devtools/src/backend/index.js`
|
|
28
|
+
See `/LICENSE` for details of the license.
|
|
29
|
+
|
|
30
|
+
==================
|
|
31
|
+
|
|
32
|
+
MIT (vue-devtools):
|
|
33
|
+
The following files embed [vue-devtools](https://github.com/vuejs/devtools) MIT:
|
|
34
|
+
`/packages/taro-plugin-vue-devtools/src/backend/*`
|
|
35
|
+
See `/LICENSE` for details of the license.
|
|
36
|
+
|
|
37
|
+
==================
|
|
38
|
+
|
|
39
|
+
MIT (vite):
|
|
40
|
+
The following files embed [vite](https://github.com/vitejs/vite) MIT:
|
|
41
|
+
`/packages/taro-webpack5-prebundle/src/prebundle/scanImport.ts`,
|
|
42
|
+
`/packages/taro-webpack5-prebundle/src/prebundle/bundle.ts`,
|
|
43
|
+
`/packages/taro-webpack5-prebundle/src/h5.ts`,
|
|
44
|
+
`/packages/taro-webpack5-prebundle/src/min.ts`
|
|
45
|
+
See `/LICENSE` for details of the license.
|
|
46
|
+
|
|
47
|
+
==================
|
|
48
|
+
|
|
49
|
+
MIT (webpack):
|
|
50
|
+
The following files embed [webpack](https://github.com/webpack/webpack) MIT:
|
|
51
|
+
`/packages/taro-webpack5-prebundle/src/webpack/TaroContainerEntryModule.ts`,
|
|
52
|
+
`/packages/taro-webpack5-prebundle/src/webpack/TaroContainerPlugin.ts`,
|
|
53
|
+
`/packages/taro-webpack5-prebundle/src/webpack/TaroContainerReferencePlugin.ts`,
|
|
54
|
+
`/packages/taro-webpack5-prebundle/src/webpack/TaroModuleFederationPlugin.ts`
|
|
55
|
+
See `/LICENSE` for details of the license.
|
|
56
|
+
|
|
57
|
+
==================
|
|
58
|
+
|
|
59
|
+
MIT (sizzle):
|
|
60
|
+
The following files embed [sizzle](https://github.com/jquery/sizzle) MIT:
|
|
61
|
+
`/packages/taro-extends/src/jquery/sizzle.js`
|
|
62
|
+
See `/LICENSE.txt` for details of the license.
|
|
63
|
+
|
|
64
|
+
==================
|
|
65
|
+
|
|
66
|
+
MIT (zepto):
|
|
67
|
+
The following files embed [zepto](https://github.com/madrobby/zepto) MIT:
|
|
68
|
+
`/packages/taro-extends/src/jquery/zepto.js`,
|
|
69
|
+
`/packages/taro-extends/src/jquery/event.js`
|
|
70
|
+
See `/MIT-LICENSE` for details of the license.
|
|
71
|
+
|
|
72
|
+
==================
|
|
73
|
+
|
|
74
|
+
MIT (css-to-react-native):
|
|
75
|
+
The following files embed [css-to-react-native](https://github.com/styled-components/css-to-react-native) MIT:
|
|
76
|
+
`/packages/css-to-react-native/src/css-to-react-native/*`
|
|
77
|
+
See `/LICENSE.md` for details of the license.
|
|
78
|
+
|
|
79
|
+
==================
|
|
80
|
+
|
|
81
|
+
MIT (reactify-wc):
|
|
82
|
+
The following files embed [reactify-wc](https://github.com/BBKolton/reactify-wc) MIT:
|
|
83
|
+
`/packages/taro-components-library-react/src/component-lib/reactify-wc.ts`
|
|
84
|
+
See `/LICENSE` for details of the license.
|
|
85
|
+
|
|
86
|
+
==================
|
|
87
|
+
|
|
88
|
+
MIT (ant-design-mobile-rn):
|
|
89
|
+
The following files embed [ant-design-mobile-rn](https://github.com/ant-design/ant-design-mobile-rn) MIT:
|
|
90
|
+
`/packages/taro-components-rn/src/components/Swiper/carousel.tsx`
|
|
91
|
+
See `/LICENSE` for details of the license.
|
|
92
|
+
|
|
93
|
+
==================
|
|
94
|
+
|
|
95
|
+
MIT (react-wx-images-viewer):
|
|
96
|
+
The following files embed [react-wx-images-viewer](https://github.com/react-ld/react-wx-images-viewer) MIT:
|
|
97
|
+
`/packages/taro-h5/src/api/media/image/previewImage.ts`
|
|
98
|
+
See `/LICENSE` for details of the license.
|
|
99
|
+
|
|
100
|
+
==================
|
|
101
|
+
|
|
102
|
+
MIT (webpack-contrib/css-loader):
|
|
103
|
+
The following files embed [webpack-contrib/css-loader](https://github.com/webpack-contrib/css-loader) MIT:
|
|
104
|
+
`/packages/taro-rn-style-transformer/src/utils/index.ts`
|
|
105
|
+
See `/LICENSE` for details of the license.
|
|
106
|
+
|
|
107
|
+
==================
|
|
108
|
+
|
|
109
|
+
MIT (react-native):
|
|
110
|
+
The following files embed [react-native](https://github.com/facebook/react-native) MIT:
|
|
111
|
+
`/packages/taro-rn-style-transformer/src/transforms/StyleSheet/*`
|
|
112
|
+
See `/LICENSE` for details of the license.
|
|
113
|
+
|
|
114
|
+
==================
|
|
115
|
+
|
|
116
|
+
MIT (myrne/performance-now):
|
|
117
|
+
The following files embed [myrne/performance-now](https://github.com/myrne/performance-now) MIT:
|
|
118
|
+
`/packages/taro-runtime/src/bom/raf.ts`
|
|
119
|
+
See `/LICENSE` for details of the license.
|
|
120
|
+
|
|
121
|
+
==================
|
|
122
|
+
|
|
123
|
+
Apache (chameleon-api):
|
|
124
|
+
The following files embed [chameleon-api](https://github.com/chameleon-team/chameleon-api) Apache:
|
|
125
|
+
`/packages/taro-h5/src/api/device/clipboard.ts`
|
|
126
|
+
|
|
127
|
+
==================
|
|
128
|
+
|
|
129
|
+
MIT (uni-app):
|
|
130
|
+
The following files embed [uni-app](https://github.com/dcloudio/uni-app) MIT:
|
|
131
|
+
`/packages/taro-components-rn/src/components/Video/index.tsx`
|
|
132
|
+
See `/LICENSE` for details of the license.
|
|
133
|
+
|
|
134
|
+
==================
|
|
135
|
+
|
|
136
|
+
MIT (miniprogram-render):
|
|
137
|
+
The following files embed [miniprogram-render](https://github.com/Tencent/kbone) MIT:
|
|
138
|
+
`/packages/taro-plugin-http/src/runtime/Cookie.ts`
|
|
139
|
+
See `/LICENSE` for details of the license.
|
|
140
|
+
|
|
141
|
+
==================
|
|
142
|
+
|
|
143
|
+
MIT (stencil-ds-output-targets):
|
|
144
|
+
The following files embed [stencil-ds-output-targets](https://github.com/ionic-team/stencil-ds-output-targets/) MIT:
|
|
145
|
+
`/packages/taro-components-library-react/src/react-component-lib/utils/attachProps.ts`
|
|
146
|
+
`/packages/taro-components-library-react/src/react-component-lib/utils/case.ts`
|
|
147
|
+
`/packages/taro-components-library-react/src/react-component-lib/utils/dev.ts`
|
|
148
|
+
`/packages/taro-components-library-react/src/react-component-lib/utils/index.tsx`
|
|
149
|
+
`/packages/taro-components-library-react/src/react-component-lib/createComponent.tsx`
|
|
150
|
+
`/packages/taro-components-library-react/src/react-component-lib/createOverlayComponent.tsx`
|
|
151
|
+
`/packages/taro-components-library-react/src/react-component-lib/interfaces.ts`
|
|
152
|
+
`/packages/taro-components-library-vue3/src/vue-component-lib/utils.ts`
|
|
153
|
+
See `/LICENSE` for details of the license.
|
|
154
|
+
|
|
155
|
+
==================
|
|
156
|
+
|
|
157
|
+
MIT (stencil-vue2-output-target):
|
|
158
|
+
The following files embed [stencil-vue2-output-target](https://github.com/diondree/stencil-vue2-output-target) MIT:
|
|
159
|
+
`/packages/taro-components-library-vue2/src/vue-component-lib/utils.ts`
|
|
160
|
+
See `/LICENSE` for details of the license.
|
package/index.js
CHANGED
package/lib/src/adapter.js
CHANGED
|
@@ -19,7 +19,7 @@ const weixinAdapter = {
|
|
|
19
19
|
forItem: 'wx:for-item',
|
|
20
20
|
forIndex: 'wx:for-index',
|
|
21
21
|
key: 'wx:key',
|
|
22
|
-
type: "weapp" /* weapp
|
|
22
|
+
type: "weapp" /* Adapters.weapp */,
|
|
23
23
|
};
|
|
24
24
|
const swanAdapter = {
|
|
25
25
|
if: 's-if',
|
|
@@ -29,7 +29,7 @@ const swanAdapter = {
|
|
|
29
29
|
forItem: 's-for-item',
|
|
30
30
|
forIndex: 's-for-index',
|
|
31
31
|
key: 's-key',
|
|
32
|
-
type: "swan" /* swan
|
|
32
|
+
type: "swan" /* Adapters.swan */,
|
|
33
33
|
};
|
|
34
34
|
const alipayAdapter = {
|
|
35
35
|
if: 'a:if',
|
|
@@ -39,7 +39,7 @@ const alipayAdapter = {
|
|
|
39
39
|
forItem: 'a:for-item',
|
|
40
40
|
forIndex: 'a:for-index',
|
|
41
41
|
key: 'a:key',
|
|
42
|
-
type: "alipay" /* alipay
|
|
42
|
+
type: "alipay" /* Adapters.alipay */,
|
|
43
43
|
};
|
|
44
44
|
const ttAdapter = {
|
|
45
45
|
if: 'tt:if',
|
|
@@ -49,7 +49,7 @@ const ttAdapter = {
|
|
|
49
49
|
forItem: 'tt:for-item',
|
|
50
50
|
forIndex: 'tt:for-index',
|
|
51
51
|
key: 'tt:key',
|
|
52
|
-
type: "tt" /* tt
|
|
52
|
+
type: "tt" /* Adapters.tt */,
|
|
53
53
|
};
|
|
54
54
|
const quickappAdapter = {
|
|
55
55
|
if: 'if',
|
|
@@ -59,7 +59,7 @@ const quickappAdapter = {
|
|
|
59
59
|
forItem: 'for-item',
|
|
60
60
|
forIndex: 'for-index',
|
|
61
61
|
key: 'key',
|
|
62
|
-
type: "quickapp" /* quickapp
|
|
62
|
+
type: "quickapp" /* Adapters.quickapp */,
|
|
63
63
|
};
|
|
64
64
|
const qqAdapter = {
|
|
65
65
|
if: 'qq:if',
|
|
@@ -69,7 +69,7 @@ const qqAdapter = {
|
|
|
69
69
|
forItem: 'qq:for-item',
|
|
70
70
|
forIndex: 'qq:for-index',
|
|
71
71
|
key: 'qq:key',
|
|
72
|
-
type: "qq" /* qq
|
|
72
|
+
type: "qq" /* Adapters.qq */,
|
|
73
73
|
};
|
|
74
74
|
const jdAdapter = {
|
|
75
75
|
if: 'jd:if',
|
|
@@ -79,30 +79,39 @@ const jdAdapter = {
|
|
|
79
79
|
forItem: 'jd:for-item',
|
|
80
80
|
forIndex: 'jd:for-index',
|
|
81
81
|
key: 'jd:key',
|
|
82
|
-
type: "jd" /* jd
|
|
82
|
+
type: "jd" /* Adapters.jd */,
|
|
83
83
|
};
|
|
84
84
|
exports.Adapter = weixinAdapter;
|
|
85
|
-
|
|
86
|
-
return [
|
|
85
|
+
const isNewPropsSystem = () => {
|
|
86
|
+
return [
|
|
87
|
+
"weapp" /* Adapters.weapp */,
|
|
88
|
+
"swan" /* Adapters.swan */,
|
|
89
|
+
"tt" /* Adapters.tt */,
|
|
90
|
+
"qq" /* Adapters.qq */,
|
|
91
|
+
"alipay" /* Adapters.alipay */,
|
|
92
|
+
"quickapp" /* Adapters.quickapp */,
|
|
93
|
+
"jd" /* Adapters.jd */,
|
|
94
|
+
].includes(exports.Adapter.type);
|
|
87
95
|
};
|
|
96
|
+
exports.isNewPropsSystem = isNewPropsSystem;
|
|
88
97
|
function setAdapter(adapter) {
|
|
89
98
|
switch (adapter.toLowerCase()) {
|
|
90
|
-
case "swan" /* swan */:
|
|
99
|
+
case "swan" /* Adapters.swan */:
|
|
91
100
|
exports.Adapter = swanAdapter;
|
|
92
101
|
break;
|
|
93
|
-
case "alipay" /* alipay */:
|
|
102
|
+
case "alipay" /* Adapters.alipay */:
|
|
94
103
|
exports.Adapter = alipayAdapter;
|
|
95
104
|
break;
|
|
96
|
-
case "tt" /* tt */:
|
|
105
|
+
case "tt" /* Adapters.tt */:
|
|
97
106
|
exports.Adapter = ttAdapter;
|
|
98
107
|
break;
|
|
99
|
-
case "quickapp" /* quickapp */:
|
|
108
|
+
case "quickapp" /* Adapters.quickapp */:
|
|
100
109
|
exports.Adapter = quickappAdapter;
|
|
101
110
|
break;
|
|
102
|
-
case "qq" /* qq */:
|
|
111
|
+
case "qq" /* Adapters.qq */:
|
|
103
112
|
exports.Adapter = qqAdapter;
|
|
104
113
|
break;
|
|
105
|
-
case "jd" /* jd */:
|
|
114
|
+
case "jd" /* Adapters.jd */:
|
|
106
115
|
exports.Adapter = jdAdapter;
|
|
107
116
|
break;
|
|
108
117
|
default:
|
package/lib/src/adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapter.ts"],"names":[],"mappings":";;;AAAA,IAAkB,QAQjB;AARD,WAAkB,QAAQ;IACxB,2BAAe,CAAA;IACf,yBAAa,CAAA;IACb,6BAAiB,CAAA;IACjB,iCAAqB,CAAA;IACrB,qBAAS,CAAA;IACT,qBAAS,CAAA;IACT,qBAAS,CAAA;AACX,CAAC,EARiB,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAQzB;AAaD,MAAM,aAAa,GAAY;IAC7B,EAAE,EAAE,OAAO;IACX,IAAI,EAAE,SAAS;IACf,MAAM,EAAE,SAAS;IACjB,GAAG,EAAE,QAAQ;IACb,OAAO,EAAE,aAAa;IACtB,QAAQ,EAAE,cAAc;IACxB,GAAG,EAAE,QAAQ;IACb,IAAI,
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.buildVistor = void 0;
|
|
4
|
-
const t = require("babel
|
|
4
|
+
const t = require("@babel/types");
|
|
5
5
|
const utils_1 = require("./utils");
|
|
6
6
|
function buildMethodName(n) {
|
|
7
7
|
return `render${n.charAt(0).toUpperCase() + n.slice(1)}`;
|
|
8
8
|
}
|
|
9
|
-
|
|
9
|
+
const buildVistor = () => {
|
|
10
10
|
const renameMap = new Map();
|
|
11
11
|
const classMethodRenamer = () => {
|
|
12
12
|
return {
|
|
13
13
|
visitor: {
|
|
14
14
|
JSXElement(path) {
|
|
15
15
|
let methodName = '';
|
|
16
|
-
const classMethod = path.findParent(p => p.isClassMethod());
|
|
16
|
+
const classMethod = path.findParent((p) => p.isClassMethod());
|
|
17
17
|
if (classMethod && classMethod.isClassMethod() && t.isIdentifier(classMethod.node.key)) {
|
|
18
18
|
methodName = classMethod.node.key.name;
|
|
19
19
|
if (methodName.startsWith('render') || methodName === 'constructor') {
|
|
@@ -21,7 +21,7 @@ exports.buildVistor = () => {
|
|
|
21
21
|
}
|
|
22
22
|
classMethod.node.key = t.identifier(buildMethodName(methodName));
|
|
23
23
|
}
|
|
24
|
-
const classProp = path.findParent(p => p.isClassProperty());
|
|
24
|
+
const classProp = path.findParent((p) => p.isClassProperty());
|
|
25
25
|
if (classProp && classProp.isClassProperty()) {
|
|
26
26
|
methodName = classProp.node.key.name;
|
|
27
27
|
if (methodName.startsWith('render')) {
|
|
@@ -30,9 +30,9 @@ exports.buildVistor = () => {
|
|
|
30
30
|
if (!t.isArrowFunctionExpression(classProp.node.value)) {
|
|
31
31
|
return;
|
|
32
32
|
}
|
|
33
|
-
classProp.replaceWith(t.classMethod('method', t.identifier(buildMethodName(methodName)), classProp.node.value.params, t.isBlockStatement(classProp.node.value.body)
|
|
34
|
-
|
|
35
|
-
|
|
33
|
+
classProp.replaceWith(t.classMethod('method', t.identifier(buildMethodName(methodName)), classProp.node.value.params, t.isBlockStatement(classProp.node.value.body)
|
|
34
|
+
? classProp.node.value.body
|
|
35
|
+
: t.blockStatement([t.returnStatement(classProp.node.value.body)])));
|
|
36
36
|
return;
|
|
37
37
|
}
|
|
38
38
|
if (methodName.length > 0 && !methodName.startsWith('render')) {
|
|
@@ -45,21 +45,22 @@ exports.buildVistor = () => {
|
|
|
45
45
|
const memberExpr = path.parentPath;
|
|
46
46
|
if (memberExpr.isMemberExpression() && memberExpr.parentPath.isCallExpression()) {
|
|
47
47
|
const object = memberExpr.get('object');
|
|
48
|
-
if (
|
|
48
|
+
if (t.isThisExpression(object)) {
|
|
49
49
|
path.replaceWith(t.identifier(buildMethodName(name)));
|
|
50
50
|
}
|
|
51
|
-
else if (
|
|
51
|
+
else if (t.isIdentifier(object) && (0, utils_1.isDerivedFromThis)(path.scope, object.name)) {
|
|
52
52
|
memberExpr.replaceWith(t.memberExpression(t.thisExpression(), t.identifier(buildMethodName(name))));
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
|
-
else if (memberExpr.isCallExpression() && utils_1.isDerivedFromThis(path.scope, name)) {
|
|
55
|
+
else if (memberExpr.isCallExpression() && (0, utils_1.isDerivedFromThis)(path.scope, name)) {
|
|
56
56
|
path.scope.rename(name, buildMethodName(name));
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
|
-
}
|
|
60
|
-
}
|
|
59
|
+
},
|
|
60
|
+
},
|
|
61
61
|
};
|
|
62
62
|
};
|
|
63
63
|
return classMethodRenamer;
|
|
64
64
|
};
|
|
65
|
+
exports.buildVistor = buildVistor;
|
|
65
66
|
//# sourceMappingURL=class-method-renamer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"class-method-renamer.js","sourceRoot":"","sources":["../../src/class-method-renamer.ts"],"names":[],"mappings":";;;AACA,
|
|
1
|
+
{"version":3,"file":"class-method-renamer.js","sourceRoot":"","sources":["../../src/class-method-renamer.ts"],"names":[],"mappings":"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"}
|