@mybricks/to-code-taro 1.0.0
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/cjs/abstractEventTypeDef.d.ts +11 -0
- package/dist/cjs/abstractEventTypeDef.js +93 -0
- package/dist/cjs/core/comlib/Index.js +45 -0
- package/dist/cjs/core/comlib/_ScanQrcode.js +60 -0
- package/dist/cjs/core/comlib/_SetStorage.js +76 -0
- package/dist/cjs/core/comlib/_ShowToast.js +96 -0
- package/dist/cjs/core/mybricks/MyBricksDescriptor.js +213 -0
- package/dist/cjs/core/mybricks/Subject.js +115 -0
- package/dist/cjs/core/mybricks/constant.js +70 -0
- package/dist/cjs/core/mybricks/context.js +33 -0
- package/dist/cjs/core/mybricks/createEnv.js +39 -0
- package/dist/cjs/core/mybricks/createJSHandle.js +150 -0
- package/dist/cjs/core/mybricks/createModuleEventsHandle.js +49 -0
- package/dist/cjs/core/mybricks/createReactiveInputHandler.js +63 -0
- package/dist/cjs/core/mybricks/event.js +70 -0
- package/dist/cjs/core/mybricks/index.js +871 -0
- package/dist/cjs/core/mybricks/log.js +38 -0
- package/dist/cjs/core/mybricks/utils.js +69 -0
- package/dist/cjs/core/mybricks/variables.js +217 -0
- package/dist/cjs/core/utils/ComContext.js +39 -0
- package/dist/cjs/core/utils/index.js +88 -0
- package/dist/cjs/core/utils/useContext.js +53 -0
- package/dist/cjs/core/utils/with.js +84 -0
- package/dist/cjs/generate/generateTaroProjectJson.d.ts +24 -0
- package/dist/cjs/generate/generateTaroProjectJson.js +101 -0
- package/dist/cjs/generate/generateTaroTempalteJson.d.ts +15 -0
- package/dist/cjs/generate/generateTaroTempalteJson.js +103 -0
- package/dist/cjs/generate/utils/appConfig.d.ts +21 -0
- package/dist/cjs/generate/utils/appConfig.js +47 -0
- package/dist/cjs/generate/utils/commonDir.d.ts +21 -0
- package/dist/cjs/generate/utils/commonDir.js +50 -0
- package/dist/cjs/generate/utils/fileNode.d.ts +17 -0
- package/dist/cjs/generate/utils/fileNode.js +57 -0
- package/dist/cjs/generate/utils/index.d.ts +7 -0
- package/dist/cjs/generate/utils/index.js +29 -0
- package/dist/cjs/generate/utils/tabBarImages.d.ts +14 -0
- package/dist/cjs/generate/utils/tabBarImages.js +36 -0
- package/dist/cjs/handleCom.d.ts +31 -0
- package/dist/cjs/handleCom.js +260 -0
- package/dist/cjs/handleDom.d.ts +19 -0
- package/dist/cjs/handleDom.js +86 -0
- package/dist/cjs/handleExtension.d.ts +10 -0
- package/dist/cjs/handleExtension.js +300 -0
- package/dist/cjs/handleGlobal.d.ts +21 -0
- package/dist/cjs/handleGlobal.js +155 -0
- package/dist/cjs/handleModule.d.ts +15 -0
- package/dist/cjs/handleModule.js +108 -0
- package/dist/cjs/handleSlot.d.ts +27 -0
- package/dist/cjs/handleSlot.js +197 -0
- package/dist/cjs/index.d.ts +3 -0
- package/dist/cjs/index.js +44 -0
- package/dist/cjs/taro-template.json +5370 -0
- package/dist/cjs/toCodeTaro.d.ts +130 -0
- package/dist/cjs/toCodeTaro.js +427 -0
- package/dist/cjs/utils/code/component.d.ts +19 -0
- package/dist/cjs/utils/code/component.js +85 -0
- package/dist/cjs/utils/code/index.d.ts +18 -0
- package/dist/cjs/utils/code/index.js +71 -0
- package/dist/cjs/utils/code/renderManager.d.ts +22 -0
- package/dist/cjs/utils/code/renderManager.js +80 -0
- package/dist/cjs/utils/code/scene.d.ts +19 -0
- package/dist/cjs/utils/code/scene.js +82 -0
- package/dist/cjs/utils/convertNamespace.d.ts +11 -0
- package/dist/cjs/utils/convertNamespace.js +43 -0
- package/dist/cjs/utils/genJSModules.d.ts +12 -0
- package/dist/cjs/utils/genJSModules.js +116 -0
- package/dist/cjs/utils/getComponentClassName.d.ts +16 -0
- package/dist/cjs/utils/getComponentClassName.js +47 -0
- package/dist/cjs/utils/handlePageConfig.d.ts +24 -0
- package/dist/cjs/utils/handlePageConfig.js +73 -0
- package/dist/cjs/utils/handleProcess.d.ts +9 -0
- package/dist/cjs/utils/handleProcess.js +370 -0
- package/dist/cjs/utils/index.d.ts +62 -0
- package/dist/cjs/utils/index.js +321 -0
- package/dist/cjs/utils/pageConfig/converter.d.ts +17 -0
- package/dist/cjs/utils/pageConfig/converter.js +83 -0
- package/dist/cjs/utils/pageConfig/index.d.ts +10 -0
- package/dist/cjs/utils/pageConfig/index.js +33 -0
- package/dist/cjs/utils/pageConfig/pageConfig.d.ts +10 -0
- package/dist/cjs/utils/pageConfig/pageConfig.js +87 -0
- package/dist/cjs/utils/pageConfig/saveBase64Image.d.ts +14 -0
- package/dist/cjs/utils/pageConfig/saveBase64Image.js +81 -0
- package/dist/cjs/utils/pageConfig/tabBarConfig.d.ts +13 -0
- package/dist/cjs/utils/pageConfig/tabBarConfig.js +74 -0
- package/dist/cjs/utils/pageConfig/types.d.ts +68 -0
- package/dist/cjs/utils/pageConfig/types.js +17 -0
- package/dist/cjs/utils/pageConfig/validator.d.ts +13 -0
- package/dist/cjs/utils/pageConfig/validator.js +67 -0
- package/dist/cjs/utils/pxtransform.d.ts +28 -0
- package/dist/cjs/utils/pxtransform.js +102 -0
- package/dist/esm/abstractEventTypeDef.d.ts +11 -0
- package/dist/esm/abstractEventTypeDef.js +63 -0
- package/dist/esm/core/comlib/Index.js +3 -0
- package/dist/esm/core/comlib/_ScanQrcode.js +27 -0
- package/dist/esm/core/comlib/_SetStorage.js +52 -0
- package/dist/esm/core/comlib/_ShowToast.js +68 -0
- package/dist/esm/core/mybricks/MyBricksDescriptor.js +232 -0
- package/dist/esm/core/mybricks/Subject.js +143 -0
- package/dist/esm/core/mybricks/constant.js +18 -0
- package/dist/esm/core/mybricks/context.js +5 -0
- package/dist/esm/core/mybricks/createEnv.js +9 -0
- package/dist/esm/core/mybricks/createJSHandle.js +138 -0
- package/dist/esm/core/mybricks/createModuleEventsHandle.js +26 -0
- package/dist/esm/core/mybricks/createReactiveInputHandler.js +40 -0
- package/dist/esm/core/mybricks/event.js +44 -0
- package/dist/esm/core/mybricks/index.js +952 -0
- package/dist/esm/core/mybricks/log.js +12 -0
- package/dist/esm/core/mybricks/utils.js +41 -0
- package/dist/esm/core/mybricks/variables.js +190 -0
- package/dist/esm/core/utils/ComContext.js +10 -0
- package/dist/esm/core/utils/index.js +57 -0
- package/dist/esm/core/utils/useContext.js +24 -0
- package/dist/esm/core/utils/with.js +67 -0
- package/dist/esm/generate/generateTaroProjectJson.d.ts +24 -0
- package/dist/esm/generate/generateTaroProjectJson.js +102 -0
- package/dist/esm/generate/generateTaroTempalteJson.d.ts +15 -0
- package/dist/esm/generate/generateTaroTempalteJson.js +94 -0
- package/dist/esm/generate/utils/appConfig.d.ts +21 -0
- package/dist/esm/generate/utils/appConfig.js +30 -0
- package/dist/esm/generate/utils/commonDir.d.ts +21 -0
- package/dist/esm/generate/utils/commonDir.js +36 -0
- package/dist/esm/generate/utils/fileNode.d.ts +17 -0
- package/dist/esm/generate/utils/fileNode.js +49 -0
- package/dist/esm/generate/utils/index.d.ts +7 -0
- package/dist/esm/generate/utils/index.js +8 -0
- package/dist/esm/generate/utils/tabBarImages.d.ts +14 -0
- package/dist/esm/generate/utils/tabBarImages.js +15 -0
- package/dist/esm/handleCom.d.ts +31 -0
- package/dist/esm/handleCom.js +297 -0
- package/dist/esm/handleDom.d.ts +19 -0
- package/dist/esm/handleDom.js +63 -0
- package/dist/esm/handleExtension.d.ts +10 -0
- package/dist/esm/handleExtension.js +243 -0
- package/dist/esm/handleGlobal.d.ts +21 -0
- package/dist/esm/handleGlobal.js +117 -0
- package/dist/esm/handleModule.d.ts +15 -0
- package/dist/esm/handleModule.js +78 -0
- package/dist/esm/handleSlot.d.ts +27 -0
- package/dist/esm/handleSlot.js +205 -0
- package/dist/esm/index.d.ts +3 -0
- package/dist/esm/index.js +3 -0
- package/dist/esm/taro-template.json +5370 -0
- package/dist/esm/toCodeTaro.d.ts +130 -0
- package/dist/esm/toCodeTaro.js +452 -0
- package/dist/esm/utils/code/component.d.ts +19 -0
- package/dist/esm/utils/code/component.js +54 -0
- package/dist/esm/utils/code/index.d.ts +18 -0
- package/dist/esm/utils/code/index.js +51 -0
- package/dist/esm/utils/code/renderManager.d.ts +22 -0
- package/dist/esm/utils/code/renderManager.js +62 -0
- package/dist/esm/utils/code/scene.d.ts +19 -0
- package/dist/esm/utils/code/scene.js +47 -0
- package/dist/esm/utils/convertNamespace.d.ts +11 -0
- package/dist/esm/utils/convertNamespace.js +27 -0
- package/dist/esm/utils/genJSModules.d.ts +12 -0
- package/dist/esm/utils/genJSModules.js +44 -0
- package/dist/esm/utils/getComponentClassName.d.ts +16 -0
- package/dist/esm/utils/getComponentClassName.js +37 -0
- package/dist/esm/utils/handlePageConfig.d.ts +24 -0
- package/dist/esm/utils/handlePageConfig.js +68 -0
- package/dist/esm/utils/handleProcess.d.ts +9 -0
- package/dist/esm/utils/handleProcess.js +379 -0
- package/dist/esm/utils/index.d.ts +62 -0
- package/dist/esm/utils/index.js +345 -0
- package/dist/esm/utils/pageConfig/converter.d.ts +17 -0
- package/dist/esm/utils/pageConfig/converter.js +105 -0
- package/dist/esm/utils/pageConfig/index.d.ts +10 -0
- package/dist/esm/utils/pageConfig/index.js +11 -0
- package/dist/esm/utils/pageConfig/pageConfig.d.ts +10 -0
- package/dist/esm/utils/pageConfig/pageConfig.js +60 -0
- package/dist/esm/utils/pageConfig/saveBase64Image.d.ts +14 -0
- package/dist/esm/utils/pageConfig/saveBase64Image.js +105 -0
- package/dist/esm/utils/pageConfig/tabBarConfig.d.ts +13 -0
- package/dist/esm/utils/pageConfig/tabBarConfig.js +82 -0
- package/dist/esm/utils/pageConfig/types.d.ts +68 -0
- package/dist/esm/utils/pageConfig/types.js +1 -0
- package/dist/esm/utils/pageConfig/validator.d.ts +13 -0
- package/dist/esm/utils/pageConfig/validator.js +64 -0
- package/dist/esm/utils/pxtransform.d.ts +28 -0
- package/dist/esm/utils/pxtransform.js +121 -0
- package/package.json +74 -0
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/handleGlobal.ts
|
|
20
|
+
var handleGlobal_exports = {};
|
|
21
|
+
__export(handleGlobal_exports, {
|
|
22
|
+
default: () => handleGlobal_default
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(handleGlobal_exports);
|
|
25
|
+
var import_utils = require("./utils");
|
|
26
|
+
var import_handleProcess = require("./utils/handleProcess");
|
|
27
|
+
var handleGlobal = (params, config) => {
|
|
28
|
+
const { tojson, globalFxs, globalVars } = params;
|
|
29
|
+
const globalImportManager = new import_utils.ImportManager(config);
|
|
30
|
+
const globalAddDependencyImport = globalImportManager.addImport.bind(globalImportManager);
|
|
31
|
+
globalAddDependencyImport({
|
|
32
|
+
packageName: config.getComponentPackageName(),
|
|
33
|
+
dependencyNames: ["useAppContext"],
|
|
34
|
+
importType: "named"
|
|
35
|
+
});
|
|
36
|
+
let globalVarsInitCode = "";
|
|
37
|
+
let globalVarsRegisterChangeCode = "";
|
|
38
|
+
const indent = (0, import_utils.indentation)(config.codeStyle.indent);
|
|
39
|
+
const indent2 = (0, import_utils.indentation)(config.codeStyle.indent * 2);
|
|
40
|
+
Object.entries(tojson.global.comsReg).forEach(([, com]) => {
|
|
41
|
+
if (com.def.namespace !== "mybricks.core-comlib.var") {
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
const event = globalVars.find((globalVar) => {
|
|
45
|
+
return globalVar.meta.id === com.id;
|
|
46
|
+
});
|
|
47
|
+
const res = (0, import_handleProcess.handleProcess)(event, {
|
|
48
|
+
...config,
|
|
49
|
+
depth: 2,
|
|
50
|
+
getParams: () => {
|
|
51
|
+
return {
|
|
52
|
+
[event.paramId]: "value"
|
|
53
|
+
};
|
|
54
|
+
},
|
|
55
|
+
getComponentPackageName: (props) => {
|
|
56
|
+
if (props == null ? void 0 : props.meta.global) {
|
|
57
|
+
return "";
|
|
58
|
+
}
|
|
59
|
+
return config.getComponentPackageName(props);
|
|
60
|
+
},
|
|
61
|
+
addParentDependencyImport: globalAddDependencyImport,
|
|
62
|
+
getComponentMeta: config.getComponentMeta,
|
|
63
|
+
getCurrentScene: () => {
|
|
64
|
+
return tojson.global;
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
globalVarsRegisterChangeCode += `
|
|
68
|
+
${indent2}this.${com.title}.registerChange((value: any) => {
|
|
69
|
+
${res}
|
|
70
|
+
${indent2}})`;
|
|
71
|
+
globalVarsInitCode += `${indent}${com.title}: any = createVariable(${JSON.stringify(com.model.data.initValue || {})})
|
|
72
|
+
`;
|
|
73
|
+
});
|
|
74
|
+
let globalFxsInitCode = "";
|
|
75
|
+
globalFxs.forEach((event) => {
|
|
76
|
+
const currentScene = tojson.global.fxFrames.find(
|
|
77
|
+
(fxFrame) => fxFrame.id === event.frameId
|
|
78
|
+
);
|
|
79
|
+
const res = (0, import_handleProcess.handleProcess)(event, {
|
|
80
|
+
...config,
|
|
81
|
+
depth: 2,
|
|
82
|
+
getCurrentScene: () => {
|
|
83
|
+
return currentScene;
|
|
84
|
+
},
|
|
85
|
+
getParams: () => {
|
|
86
|
+
return event.paramPins.reduce(
|
|
87
|
+
(pre, cur, index) => {
|
|
88
|
+
pre[cur.id] = `value${index}`;
|
|
89
|
+
return pre;
|
|
90
|
+
},
|
|
91
|
+
{}
|
|
92
|
+
);
|
|
93
|
+
},
|
|
94
|
+
getComponentPackageName: (props) => {
|
|
95
|
+
if (props == null ? void 0 : props.meta.global) {
|
|
96
|
+
return "";
|
|
97
|
+
}
|
|
98
|
+
return config.getComponentPackageName(props);
|
|
99
|
+
},
|
|
100
|
+
addParentDependencyImport: (params2) => {
|
|
101
|
+
const { dependencyNames } = params2;
|
|
102
|
+
const filterDependencyNames = dependencyNames.filter(
|
|
103
|
+
(dependencyName) => {
|
|
104
|
+
return !["globalVars", "globalFxs"].includes(dependencyName);
|
|
105
|
+
}
|
|
106
|
+
);
|
|
107
|
+
if (filterDependencyNames.length) {
|
|
108
|
+
globalAddDependencyImport({
|
|
109
|
+
...params2,
|
|
110
|
+
dependencyNames: filterDependencyNames
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
},
|
|
114
|
+
getComponentMeta: config.getComponentMeta
|
|
115
|
+
});
|
|
116
|
+
const values = event.paramPins.map((paramPin, index) => {
|
|
117
|
+
if (paramPin.type === "config") {
|
|
118
|
+
return `value${index}: any = ${JSON.stringify(event.initValues[paramPin.id])}`;
|
|
119
|
+
}
|
|
120
|
+
return `value${index}: any`;
|
|
121
|
+
}).join(", ");
|
|
122
|
+
globalFxsInitCode += `${indent}/** ${event.title} */
|
|
123
|
+
${indent}${event.frameId}: any = createFx((${values}) => {
|
|
124
|
+
${res}
|
|
125
|
+
${indent}})
|
|
126
|
+
`;
|
|
127
|
+
});
|
|
128
|
+
const varCode = `/** 全局变量 */
|
|
129
|
+
class GlobalVars {
|
|
130
|
+
${globalVarsInitCode}
|
|
131
|
+
${indent}init() {${globalVarsRegisterChangeCode}
|
|
132
|
+
${indent}}
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
export const globalVars = new GlobalVars()`;
|
|
136
|
+
const fxCode = `/** 全局Fx */
|
|
137
|
+
class GlobalFxs {
|
|
138
|
+
${globalFxsInitCode}}
|
|
139
|
+
|
|
140
|
+
export const globalFxs = new GlobalFxs()`;
|
|
141
|
+
if (fxCode.includes("merge(")) {
|
|
142
|
+
globalAddDependencyImport({
|
|
143
|
+
packageName: config.getUtilsPackageName(),
|
|
144
|
+
dependencyNames: ["merge"],
|
|
145
|
+
importType: "named"
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
return {
|
|
149
|
+
type: "global",
|
|
150
|
+
content: varCode + "\n\n" + fxCode,
|
|
151
|
+
importManager: globalImportManager,
|
|
152
|
+
name: "global"
|
|
153
|
+
};
|
|
154
|
+
};
|
|
155
|
+
var handleGlobal_default = handleGlobal;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { UI, BaseConfig } from "./toCodeTaro";
|
|
2
|
+
import { ImportManager } from "./utils";
|
|
3
|
+
type Module = Extract<UI["children"][0], {
|
|
4
|
+
type: "module";
|
|
5
|
+
}>;
|
|
6
|
+
interface HandleModuleConfig extends BaseConfig {
|
|
7
|
+
addParentDependencyImport: (typeof ImportManager)["prototype"]["addImport"];
|
|
8
|
+
addConsumer: (provider: ReturnType<BaseConfig["getCurrentProvider"]>) => void;
|
|
9
|
+
addComId: (comId: string) => void;
|
|
10
|
+
}
|
|
11
|
+
declare const handleModule: (module: Module, config: HandleModuleConfig) => {
|
|
12
|
+
ui: string;
|
|
13
|
+
cssContent: string;
|
|
14
|
+
};
|
|
15
|
+
export default handleModule;
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
|
|
19
|
+
// src/handleModule.ts
|
|
20
|
+
var handleModule_exports = {};
|
|
21
|
+
__export(handleModule_exports, {
|
|
22
|
+
default: () => handleModule_default
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(handleModule_exports);
|
|
25
|
+
var import_utils = require("./utils");
|
|
26
|
+
var import_handleProcess = require("./utils/handleProcess");
|
|
27
|
+
var handleModule = (module2, config) => {
|
|
28
|
+
var _a, _b, _c;
|
|
29
|
+
const { events, moduleId, props } = module2;
|
|
30
|
+
const moduleScene = config.getSceneById(moduleId);
|
|
31
|
+
const rawName = ((_a = config.getFileName) == null ? void 0 : _a.call(config, moduleId)) || moduleScene.title;
|
|
32
|
+
const name = (0, import_utils.firstCharToUpperCase)(rawName);
|
|
33
|
+
let comEventCode = "";
|
|
34
|
+
const indent = (0, import_utils.indentation)(config.codeStyle.indent * (config.depth + 1));
|
|
35
|
+
Object.entries(events).forEach(([eventId, { diagramId }]) => {
|
|
36
|
+
if (!diagramId) {
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
const event = config.getEventByDiagramId(diagramId);
|
|
40
|
+
if (!event) {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
const defaultValue = "value";
|
|
44
|
+
let process = (0, import_handleProcess.handleProcess)(event, {
|
|
45
|
+
...config,
|
|
46
|
+
depth: config.depth + 2,
|
|
47
|
+
addParentDependencyImport: config.addParentDependencyImport,
|
|
48
|
+
getParams: () => {
|
|
49
|
+
return {
|
|
50
|
+
[eventId]: defaultValue
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
if (process.includes("pageParams")) {
|
|
55
|
+
config.addParentDependencyImport({
|
|
56
|
+
packageName: config.getComponentPackageName(),
|
|
57
|
+
dependencyNames: ["page"],
|
|
58
|
+
importType: "named"
|
|
59
|
+
});
|
|
60
|
+
process = (0, import_utils.indentation)(config.codeStyle.indent * (config.depth + 2)) + `const pageParams: any = page.getParams("${config.getCurrentScene().id}");
|
|
61
|
+
` + process;
|
|
62
|
+
}
|
|
63
|
+
comEventCode += `${indent}${eventId}: (${defaultValue}: any) => {
|
|
64
|
+
` + process + `
|
|
65
|
+
${indent}},
|
|
66
|
+
`;
|
|
67
|
+
});
|
|
68
|
+
config.addParentDependencyImport({
|
|
69
|
+
packageName: "../sections/Index",
|
|
70
|
+
dependencyNames: [name],
|
|
71
|
+
importType: "named"
|
|
72
|
+
});
|
|
73
|
+
const configs = module2.meta.model.data.configs;
|
|
74
|
+
const currentProvider = config.getCurrentProvider();
|
|
75
|
+
currentProvider.coms.add(module2.meta.id);
|
|
76
|
+
currentProvider.controllers.add(module2.meta.id);
|
|
77
|
+
const resultStyle = (0, import_utils.convertComponentStyle)(module2.props.style);
|
|
78
|
+
const cssContent = (0, import_utils.convertStyleAryToCss)((_b = props.style) == null ? void 0 : _b.styleAry, module2.meta.id);
|
|
79
|
+
const componentController = ((_c = config.getComponentController) == null ? void 0 : _c.call(config, {
|
|
80
|
+
com: module2.meta,
|
|
81
|
+
scene: config.getCurrentScene()
|
|
82
|
+
})) || `controller_${module2.meta.id}`;
|
|
83
|
+
const initialIndent = config.codeStyle.indent * config.depth;
|
|
84
|
+
const indentView = (0, import_utils.indentation)(initialIndent);
|
|
85
|
+
const indent2 = (0, import_utils.indentation)(initialIndent + config.codeStyle.indent);
|
|
86
|
+
const indent3 = (0, import_utils.indentation)(initialIndent + config.codeStyle.indent * 2);
|
|
87
|
+
const moduleCode = `${indent2}<${name}` + (config.verbose ? `
|
|
88
|
+
${indent3}title="${module2.meta.title}"` : "") + (configs ? `
|
|
89
|
+
${indent3}data={${(0, import_utils.genObjectCode)(configs, {
|
|
90
|
+
initialIndent: initialIndent + config.codeStyle.indent * 2,
|
|
91
|
+
indentSize: config.codeStyle.indent
|
|
92
|
+
})}}` : "") + `
|
|
93
|
+
${indent3}controller={this.${currentProvider.name}.${componentController}}` + (comEventCode ? `
|
|
94
|
+
${indent3}onEvents={{${comEventCode.replace(/\n/g, "\n" + indent3)}}}` : "") + `
|
|
95
|
+
${indent2}/>`;
|
|
96
|
+
const ui = `${indentView}<View id="${module2.meta.id}" className="${module2.meta.id}" style={${JSON.stringify(resultStyle.root)}}>
|
|
97
|
+
${moduleCode}
|
|
98
|
+
${indentView}</View>`;
|
|
99
|
+
return {
|
|
100
|
+
ui,
|
|
101
|
+
cssContent
|
|
102
|
+
};
|
|
103
|
+
return {
|
|
104
|
+
ui,
|
|
105
|
+
cssContent
|
|
106
|
+
};
|
|
107
|
+
};
|
|
108
|
+
var handleModule_default = handleModule;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { ImportManager } from "./utils";
|
|
2
|
+
import { RenderManager } from "./utils/code/renderManager";
|
|
3
|
+
import type { UI, BaseConfig } from "./toCodeTaro";
|
|
4
|
+
interface HandleSlotConfig extends BaseConfig {
|
|
5
|
+
addParentDependencyImport?: (typeof ImportManager)["prototype"]["addImport"];
|
|
6
|
+
addComId?: (comId: string) => void;
|
|
7
|
+
addConsumer?: (provider: ReturnType<BaseConfig["getCurrentProvider"]>) => void;
|
|
8
|
+
checkIsRoot: () => boolean;
|
|
9
|
+
renderManager?: RenderManager;
|
|
10
|
+
addJSModule?: (module: {
|
|
11
|
+
id: string;
|
|
12
|
+
title: string;
|
|
13
|
+
transformCode: string;
|
|
14
|
+
inputs: string[];
|
|
15
|
+
outputs: string[];
|
|
16
|
+
data: any;
|
|
17
|
+
}) => void;
|
|
18
|
+
}
|
|
19
|
+
declare const handleSlot: (ui: UI, config: HandleSlotConfig) => {
|
|
20
|
+
js: string;
|
|
21
|
+
combinedJsCode: string;
|
|
22
|
+
ui: string;
|
|
23
|
+
cssContent: string;
|
|
24
|
+
slots: any[];
|
|
25
|
+
scopeSlots: any[];
|
|
26
|
+
};
|
|
27
|
+
export default handleSlot;
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
|
|
29
|
+
// src/handleSlot.ts
|
|
30
|
+
var handleSlot_exports = {};
|
|
31
|
+
__export(handleSlot_exports, {
|
|
32
|
+
default: () => handleSlot_default
|
|
33
|
+
});
|
|
34
|
+
module.exports = __toCommonJS(handleSlot_exports);
|
|
35
|
+
var import_utils = require("./utils");
|
|
36
|
+
var import_handleCom = __toESM(require("./handleCom"));
|
|
37
|
+
var import_handleProcess = require("./utils/handleProcess");
|
|
38
|
+
var import_scene = require("./utils/code/scene");
|
|
39
|
+
var import_renderManager = require("./utils/code/renderManager");
|
|
40
|
+
var import_handleDom = __toESM(require("./handleDom"));
|
|
41
|
+
var import_handleModule = __toESM(require("./handleModule"));
|
|
42
|
+
var handleSlot = (ui, config) => {
|
|
43
|
+
var _a, _b, _c, _d, _e, _f;
|
|
44
|
+
const importManager = new import_utils.ImportManager(config);
|
|
45
|
+
const { props = {}, children = [] } = ui;
|
|
46
|
+
let uiCode = "";
|
|
47
|
+
let jsCode = "";
|
|
48
|
+
let effectCode = "";
|
|
49
|
+
const slotId = ((_a = ui.meta) == null ? void 0 : _a.id) || ui.id;
|
|
50
|
+
const renderManager = config.checkIsRoot() ? new import_renderManager.RenderManager() : config.renderManager || new import_renderManager.RenderManager();
|
|
51
|
+
const currentProvider = config.getCurrentProvider();
|
|
52
|
+
const addDependencyImport = config.addParentDependencyImport || importManager.addImport.bind(importManager);
|
|
53
|
+
const indent2 = (0, import_utils.indentation)(config.codeStyle.indent);
|
|
54
|
+
let envDefineCode = "";
|
|
55
|
+
if (config.checkIsRoot()) {
|
|
56
|
+
addDependencyImport({
|
|
57
|
+
packageName: "react",
|
|
58
|
+
dependencyNames: ["useRef", "useEffect", "useState"],
|
|
59
|
+
importType: "named"
|
|
60
|
+
});
|
|
61
|
+
addDependencyImport({
|
|
62
|
+
packageName: "@tarojs/components",
|
|
63
|
+
dependencyNames: ["View"],
|
|
64
|
+
importType: "named"
|
|
65
|
+
});
|
|
66
|
+
const utilsPackageName = config.getUtilsPackageName();
|
|
67
|
+
addDependencyImport({
|
|
68
|
+
packageName: utilsPackageName,
|
|
69
|
+
dependencyNames: ["WithCom", "WithWrapper"],
|
|
70
|
+
importType: "named"
|
|
71
|
+
});
|
|
72
|
+
addDependencyImport({
|
|
73
|
+
packageName: "./index.less",
|
|
74
|
+
dependencyNames: [],
|
|
75
|
+
importType: "module"
|
|
76
|
+
});
|
|
77
|
+
envDefineCode = (0, import_scene.genRootDefineCode)(indent2, utilsPackageName);
|
|
78
|
+
addDependencyImport({
|
|
79
|
+
packageName: config.getComponentPackageName(),
|
|
80
|
+
dependencyNames: ["useAppContext"],
|
|
81
|
+
importType: "named"
|
|
82
|
+
});
|
|
83
|
+
} else {
|
|
84
|
+
envDefineCode = (0, import_scene.genSlotDefineCode)(indent2);
|
|
85
|
+
addDependencyImport({
|
|
86
|
+
packageName: config.getComponentPackageName(),
|
|
87
|
+
dependencyNames: ["useAppContext"],
|
|
88
|
+
importType: "named"
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
let cssContent = (0, import_utils.convertStyleAryToCss)((_b = props.style) == null ? void 0 : _b.styleAry, slotId);
|
|
92
|
+
const nextConfig = {
|
|
93
|
+
...config,
|
|
94
|
+
depth: config.depth + 1,
|
|
95
|
+
addParentDependencyImport: addDependencyImport,
|
|
96
|
+
renderManager
|
|
97
|
+
// 传递 renderManager
|
|
98
|
+
};
|
|
99
|
+
children.forEach((child) => {
|
|
100
|
+
if (child.type === "com") {
|
|
101
|
+
const { ui: ui2, js, cssContent: childCssContent } = (0, import_handleCom.default)(child, nextConfig);
|
|
102
|
+
uiCode += uiCode ? "\n" + ui2 : ui2;
|
|
103
|
+
jsCode += js;
|
|
104
|
+
if (childCssContent) {
|
|
105
|
+
cssContent += (cssContent ? "\n" : "") + childCssContent;
|
|
106
|
+
}
|
|
107
|
+
} else if (child.type === "module") {
|
|
108
|
+
const { ui: ui2, cssContent: childCssContent } = (0, import_handleModule.default)(child, nextConfig);
|
|
109
|
+
uiCode += uiCode ? "\n" + ui2 : ui2;
|
|
110
|
+
if (childCssContent) {
|
|
111
|
+
cssContent += (cssContent ? "\n" : "") + childCssContent;
|
|
112
|
+
}
|
|
113
|
+
} else {
|
|
114
|
+
const { ui: ui2, js, cssContent: childCssContent } = (0, import_handleDom.default)(child, nextConfig);
|
|
115
|
+
uiCode += uiCode ? "\n" + ui2 : ui2;
|
|
116
|
+
jsCode += js;
|
|
117
|
+
if (childCssContent) {
|
|
118
|
+
cssContent += (cssContent ? "\n" : "") + childCssContent;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
if (config.checkIsRoot()) {
|
|
123
|
+
const scene2 = ((_c = ui.meta) == null ? void 0 : _c.scene) || ui.meta;
|
|
124
|
+
const sceneEvents = (scene2 == null ? void 0 : scene2.events) || ui.events || [];
|
|
125
|
+
if (Array.isArray(sceneEvents)) {
|
|
126
|
+
sceneEvents.forEach((eventInfo) => {
|
|
127
|
+
const { type, diagramId, active } = eventInfo;
|
|
128
|
+
if (active !== false && type === "defined" && diagramId) {
|
|
129
|
+
const event = config.getEventByDiagramId(diagramId);
|
|
130
|
+
if (event) {
|
|
131
|
+
const process = (0, import_handleProcess.handleProcess)(event, {
|
|
132
|
+
...config,
|
|
133
|
+
target: "comRefs.current",
|
|
134
|
+
depth: 2,
|
|
135
|
+
addParentDependencyImport: addDependencyImport,
|
|
136
|
+
getParams: () => ({})
|
|
137
|
+
}).replace(/this\./g, "comRefs.current.").replace(/comRefs\.current\.([a-zA-Z0-9_]+)\.controller_/g, "comRefs.current.$1.").replace(/comRefs\.current\.slot_Index\./g, "comRefs.current.");
|
|
138
|
+
if (process.trim()) {
|
|
139
|
+
effectCode += `
|
|
140
|
+
${indent2} ${process.trim()}`;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
let renderCodeBlock = "";
|
|
148
|
+
if (config.checkIsRoot() && renderManager) {
|
|
149
|
+
const renderIndent = (0, import_utils.indentation)(config.codeStyle.indent);
|
|
150
|
+
renderCodeBlock = renderManager.toCode(renderIndent);
|
|
151
|
+
}
|
|
152
|
+
const combinedJsCode = `${envDefineCode}${jsCode}${renderCodeBlock ? `
|
|
153
|
+
${renderCodeBlock}` : ""}${(0, import_scene.wrapInEffect)(indent2, effectCode)}`;
|
|
154
|
+
const indent = (0, import_utils.indentation)(config.codeStyle.indent * config.depth);
|
|
155
|
+
const mergedStyle = {
|
|
156
|
+
width: "100%",
|
|
157
|
+
height: "100%",
|
|
158
|
+
...ui.style,
|
|
159
|
+
...props.style || {}
|
|
160
|
+
};
|
|
161
|
+
const styleCode = JSON.stringify((0, import_utils.convertRootStyle)({
|
|
162
|
+
...mergedStyle,
|
|
163
|
+
layout: ui.layout || mergedStyle.layout
|
|
164
|
+
}));
|
|
165
|
+
const scene = config.getCurrentScene();
|
|
166
|
+
const rootClassName = (0, import_utils.getRootComponentClassName)(scene, config.checkIsRoot());
|
|
167
|
+
const classNameAttr = rootClassName ? ` className='${rootClassName}'` : "";
|
|
168
|
+
const uiResult = `${indent}<View${classNameAttr} style={${styleCode}}>
|
|
169
|
+
${uiCode}
|
|
170
|
+
${indent}</View>`;
|
|
171
|
+
if (config.checkIsRoot()) {
|
|
172
|
+
const scene2 = config.getCurrentScene();
|
|
173
|
+
const fileName = ((_d = config.getFileName) == null ? void 0 : _d.call(config, ui.meta.slotId)) || ui.meta.title || "index";
|
|
174
|
+
const componentId = ((_e = ui.meta) == null ? void 0 : _e.id) || ui.id || ((_f = ui.meta) == null ? void 0 : _f.slotId) || "Index";
|
|
175
|
+
const componentName = `I${String(componentId).replace(/[^a-zA-Z0-9]/g, "_")}`;
|
|
176
|
+
const componentCode = (0, import_scene.genComponentTemplate)({
|
|
177
|
+
componentName,
|
|
178
|
+
combinedJsCode,
|
|
179
|
+
uiResult
|
|
180
|
+
});
|
|
181
|
+
config.add({
|
|
182
|
+
importManager,
|
|
183
|
+
content: componentCode,
|
|
184
|
+
cssContent,
|
|
185
|
+
name: fileName
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
return {
|
|
189
|
+
js: jsCode,
|
|
190
|
+
combinedJsCode,
|
|
191
|
+
ui: uiResult,
|
|
192
|
+
cssContent,
|
|
193
|
+
slots: [],
|
|
194
|
+
scopeSlots: []
|
|
195
|
+
};
|
|
196
|
+
};
|
|
197
|
+
var handleSlot_default = handleSlot;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
|
|
29
|
+
// src/index.ts
|
|
30
|
+
var src_exports = {};
|
|
31
|
+
__export(src_exports, {
|
|
32
|
+
default: () => import_toCodeTaro.default,
|
|
33
|
+
generateTaroProjectJson: () => import_generateTaroProjectJson.default,
|
|
34
|
+
generateTaroTempalteJson: () => import_generateTaroTempalteJson.default
|
|
35
|
+
});
|
|
36
|
+
module.exports = __toCommonJS(src_exports);
|
|
37
|
+
var import_toCodeTaro = __toESM(require("./toCodeTaro"));
|
|
38
|
+
var import_generateTaroProjectJson = __toESM(require("./generate/generateTaroProjectJson"));
|
|
39
|
+
var import_generateTaroTempalteJson = __toESM(require("./generate/generateTaroTempalteJson"));
|
|
40
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
41
|
+
0 && (module.exports = {
|
|
42
|
+
generateTaroProjectJson,
|
|
43
|
+
generateTaroTempalteJson
|
|
44
|
+
});
|