@mybricks/to-code-taro 1.1.7 → 1.2.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.
Files changed (88) hide show
  1. package/dist/cjs/generate/generateTaroProjectJson.js +47 -2
  2. package/dist/cjs/handleCom.js +1 -1
  3. package/dist/cjs/handleModule.js +6 -8
  4. package/dist/cjs/handleSlot.d.ts +1 -0
  5. package/dist/cjs/handleSlot.js +6 -3
  6. package/dist/cjs/index.js +1 -0
  7. package/dist/cjs/processors/processModule.js +1 -0
  8. package/dist/cjs/processors/processSceneLogic.js +5 -1
  9. package/dist/cjs/taro-template.json +6 -6008
  10. package/dist/cjs/toCodeTaro.js +89 -0
  11. package/dist/cjs/utils/logic/handleProcess.js +26 -18
  12. package/dist/cjs/utils/templates/component.js +1 -1
  13. package/dist/cjs/utils/templates/index.d.ts +2 -0
  14. package/dist/cjs/utils/templates/index.js +7 -2
  15. package/dist/cjs/utils/templates/renderManager.js +2 -2
  16. package/dist/cjs/utils/templates/scene.d.ts +1 -1
  17. package/dist/cjs/utils/templates/scene.js +4 -2
  18. package/dist/esm/generate/generateTaroProjectJson.js +43 -2
  19. package/dist/esm/handleCom.js +1 -1
  20. package/dist/esm/handleModule.js +5 -7
  21. package/dist/esm/handleSlot.d.ts +1 -0
  22. package/dist/esm/handleSlot.js +10 -7
  23. package/dist/esm/index.js +2 -1
  24. package/dist/esm/processors/processModule.js +1 -0
  25. package/dist/esm/processors/processSceneLogic.js +4 -2
  26. package/dist/esm/taro-template.json +6 -6008
  27. package/dist/esm/toCodeTaro.js +112 -0
  28. package/dist/esm/utils/logic/handleProcess.js +39 -18
  29. package/dist/esm/utils/templates/component.js +2 -2
  30. package/dist/esm/utils/templates/index.d.ts +2 -0
  31. package/dist/esm/utils/templates/index.js +5 -0
  32. package/dist/esm/utils/templates/renderManager.js +3 -3
  33. package/dist/esm/utils/templates/scene.d.ts +1 -1
  34. package/dist/esm/utils/templates/scene.js +4 -1
  35. package/package.json +2 -9
  36. package/README.md +0 -58
  37. package/dist/cjs/core/mybricks/MyBricksDescriptor.js +0 -213
  38. package/dist/cjs/core/mybricks/Subject.js +0 -119
  39. package/dist/cjs/core/mybricks/constant.js +0 -70
  40. package/dist/cjs/core/mybricks/context.js +0 -33
  41. package/dist/cjs/core/mybricks/createEnv.js +0 -39
  42. package/dist/cjs/core/mybricks/createJSHandle.js +0 -191
  43. package/dist/cjs/core/mybricks/createModuleEventsHandle.js +0 -49
  44. package/dist/cjs/core/mybricks/createReactiveInputHandler.js +0 -63
  45. package/dist/cjs/core/mybricks/event.js +0 -70
  46. package/dist/cjs/core/mybricks/index.js +0 -871
  47. package/dist/cjs/core/mybricks/log.js +0 -37
  48. package/dist/cjs/core/mybricks/utils.js +0 -69
  49. package/dist/cjs/core/mybricks/variables.js +0 -217
  50. package/dist/cjs/core/utils/ComContext.js +0 -51
  51. package/dist/cjs/core/utils/PopupRenderer.js +0 -63
  52. package/dist/cjs/core/utils/comRefResolver.js +0 -112
  53. package/dist/cjs/core/utils/event.js +0 -53
  54. package/dist/cjs/core/utils/hooks.js +0 -238
  55. package/dist/cjs/core/utils/index.js +0 -77
  56. package/dist/cjs/core/utils/pageRouter.js +0 -104
  57. package/dist/cjs/core/utils/pool.js +0 -63
  58. package/dist/cjs/core/utils/popupRouter.js +0 -98
  59. package/dist/cjs/core/utils/slots.js +0 -183
  60. package/dist/cjs/core/utils/tabbar.js +0 -56
  61. package/dist/cjs/core/utils/useContext.js +0 -112
  62. package/dist/cjs/core/utils/with.js +0 -109
  63. package/dist/esm/core/mybricks/MyBricksDescriptor.js +0 -232
  64. package/dist/esm/core/mybricks/Subject.js +0 -149
  65. package/dist/esm/core/mybricks/constant.js +0 -18
  66. package/dist/esm/core/mybricks/context.js +0 -5
  67. package/dist/esm/core/mybricks/createEnv.js +0 -9
  68. package/dist/esm/core/mybricks/createJSHandle.js +0 -189
  69. package/dist/esm/core/mybricks/createModuleEventsHandle.js +0 -26
  70. package/dist/esm/core/mybricks/createReactiveInputHandler.js +0 -40
  71. package/dist/esm/core/mybricks/event.js +0 -44
  72. package/dist/esm/core/mybricks/index.js +0 -952
  73. package/dist/esm/core/mybricks/log.js +0 -8
  74. package/dist/esm/core/mybricks/utils.js +0 -41
  75. package/dist/esm/core/mybricks/variables.js +0 -190
  76. package/dist/esm/core/utils/ComContext.js +0 -16
  77. package/dist/esm/core/utils/PopupRenderer.js +0 -27
  78. package/dist/esm/core/utils/comRefResolver.js +0 -134
  79. package/dist/esm/core/utils/event.js +0 -32
  80. package/dist/esm/core/utils/hooks.js +0 -287
  81. package/dist/esm/core/utils/index.js +0 -12
  82. package/dist/esm/core/utils/pageRouter.js +0 -112
  83. package/dist/esm/core/utils/pool.js +0 -52
  84. package/dist/esm/core/utils/popupRouter.js +0 -117
  85. package/dist/esm/core/utils/slots.js +0 -194
  86. package/dist/esm/core/utils/tabbar.js +0 -47
  87. package/dist/esm/core/utils/useContext.js +0 -100
  88. package/dist/esm/core/utils/with.js +0 -115
@@ -93,7 +93,7 @@ ${fileContent}` : fileContent;
93
93
  path: `src/pages/${pageName}/index.jsModules.ts`,
94
94
  content: (0, import_genJSModules.genScopedJSModules)(
95
95
  item.jsModules,
96
- "@/core/mybricks/index",
96
+ "@mybricks/taro-core",
97
97
  "@/common/jsModulesRuntime"
98
98
  )
99
99
  });
@@ -128,7 +128,7 @@ ${item.content || ""}`;
128
128
  path: `src/popupComponents/${popupId}/index.jsModules.ts`,
129
129
  content: (0, import_genJSModules.genScopedJSModules)(
130
130
  item.jsModules,
131
- "@/core/mybricks/index",
131
+ "@mybricks/taro-core",
132
132
  "@/common/jsModulesRuntime"
133
133
  )
134
134
  });
@@ -139,6 +139,51 @@ ${item.content || ""}`;
139
139
  children: popupChildren
140
140
  });
141
141
  });
142
+ const componentsDir = (0, import_fileNode.ensureDir)(srcDir, "src/components");
143
+ const moduleScenes = files.filter((item) => item.type === "module" && item.meta);
144
+ const moduleExports = [];
145
+ moduleScenes.forEach((item) => {
146
+ var _a2;
147
+ const moduleId = item.meta.id;
148
+ const exportName = `C${String(moduleId).replace(/[^a-zA-Z0-9]/g, "_").toUpperCase()}`;
149
+ const importCode = ((_a2 = item.importManager) == null ? void 0 : _a2.toCode()) || "";
150
+ const fullContent = `${importCode}
151
+ ${item.content || ""}`;
152
+ const moduleChildren = [
153
+ {
154
+ path: `src/components/${moduleId}/index.tsx`,
155
+ content: fullContent
156
+ },
157
+ {
158
+ path: `src/components/${moduleId}/index.global.less`,
159
+ content: item.cssContent || ""
160
+ }
161
+ ];
162
+ if (item.jsModules && item.jsModules.length > 0) {
163
+ moduleChildren.push({
164
+ path: `src/components/${moduleId}/index.jsModules.ts`,
165
+ content: (0, import_genJSModules.genScopedJSModules)(
166
+ item.jsModules,
167
+ "@mybricks/taro-core",
168
+ "@/common/jsModulesRuntime"
169
+ )
170
+ });
171
+ }
172
+ componentsDir.children.push({
173
+ path: `src/components/${moduleId}`,
174
+ content: null,
175
+ children: moduleChildren
176
+ });
177
+ moduleExports.push(
178
+ `export { default as ${exportName} } from "./${moduleId}/index";`
179
+ );
180
+ });
181
+ if (moduleExports.length > 0) {
182
+ componentsDir.children.push({
183
+ path: "src/components/Index.ts",
184
+ content: moduleExports.join("\n") + "\n"
185
+ });
186
+ }
142
187
  const appConfigFile = (_a = srcDir.children) == null ? void 0 : _a.find(
143
188
  (node) => node.path === "src/app.config.ts"
144
189
  );
@@ -157,7 +157,7 @@ ${slotIndent}}${isLast ? "" : ","}
157
157
  if (result.cssContent) {
158
158
  accumulatedCssContent += (accumulatedCssContent ? "\n" : "") + result.cssContent;
159
159
  }
160
- const renderId = `${meta.id}_${slotId}`;
160
+ const renderId = slotEntries.length > 1 ? `${meta.id}_${slotId}` : meta.id;
161
161
  const rawContent = result.ui;
162
162
  if (meta.def.namespace === "mybricks.taro.formContainer" && Array.isArray((_g = props.data) == null ? void 0 : _g.items) && result.directChildren) {
163
163
  const items = (_h = props.data) == null ? void 0 : _h.items;
@@ -25,11 +25,9 @@ module.exports = __toCommonJS(handleModule_exports);
25
25
  var import_utils = require("./utils");
26
26
  var import_handleProcess = require("./utils/logic/handleProcess");
27
27
  var handleModule = (module2, config) => {
28
- var _a, _b, _c;
28
+ var _a, _b;
29
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);
30
+ const name = `C${String(moduleId).replace(/[^a-zA-Z0-9]/g, "_").toUpperCase()}`;
33
31
  let comEventCode = "";
34
32
  const indent = (0, import_utils.indentation)(config.codeStyle.indent * (config.depth + 1));
35
33
  Object.entries(events).forEach(([eventId, { diagramId }]) => {
@@ -66,7 +64,7 @@ ${indent}},
66
64
  `;
67
65
  });
68
66
  config.addParentDependencyImport({
69
- packageName: "../sections/Index",
67
+ packageName: "@/components/Index",
70
68
  dependencyNames: [name],
71
69
  importType: "named"
72
70
  });
@@ -75,8 +73,8 @@ ${indent}},
75
73
  currentProvider.coms.add(module2.meta.id);
76
74
  currentProvider.controllers.add(module2.meta.id);
77
75
  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, {
76
+ const cssContent = (0, import_utils.convertStyleAryToCss)((_a = props.style) == null ? void 0 : _a.styleAry, module2.meta.id);
77
+ const componentController = ((_b = config.getComponentController) == null ? void 0 : _b.call(config, {
80
78
  com: module2.meta,
81
79
  scene: config.getCurrentScene()
82
80
  })) || `controller_${module2.meta.id}`;
@@ -90,7 +88,7 @@ ${indent3}data={${(0, import_utils.genObjectCode)(configs, {
90
88
  initialIndent: initialIndent + config.codeStyle.indent * 2,
91
89
  indentSize: config.codeStyle.indent
92
90
  })}}` : "") + `
93
- ${indent3}controller={this.${currentProvider.name}.${componentController}}` + (comEventCode ? `
91
+ ${indent3}controller={comRefs.current.${componentController}}` + (comEventCode ? `
94
92
  ${indent3}onEvents={{${comEventCode.replace(/\n/g, "\n" + indent3)}}}` : "") + `
95
93
  ${indent2}/>`;
96
94
  const ui = `${indentView}<View id="${module2.meta.id}" className="${module2.meta.id}" style={${JSON.stringify(resultStyle.root)}}>
@@ -9,6 +9,7 @@ interface HandleSlotConfig extends BaseConfig {
9
9
  renderManager?: RenderManager;
10
10
  addJSModule?: (module: any) => void;
11
11
  isPopup?: boolean;
12
+ isModule?: boolean;
12
13
  hasPopups?: boolean;
13
14
  /** handleCom 处理 slots 时的 slot key(如 item/content),用于识别 scope 入参 */
14
15
  slotKey?: string;
@@ -50,7 +50,7 @@ var handleSlot = (ui, config) => {
50
50
  });
51
51
  }
52
52
  const indent2 = (0, import_utils.indentation)(config.codeStyle.indent);
53
- const envDefineCode = isRoot ? (0, import_scene.genRootDefineCode)(indent2, config.getUtilsPackageName()) : (0, import_scene.genSlotDefineCode)(indent2);
53
+ const envDefineCode = isRoot ? (0, import_scene.genRootDefineCode)(indent2, config.getUtilsPackageName(), false, config.isModule) : (0, import_scene.genSlotDefineCode)(indent2);
54
54
  const renderManager = isRoot ? new import_renderManager.RenderManager() : config.renderManager || new import_renderManager.RenderManager();
55
55
  const childResults = (0, import_processChildren.processChildren)(children, {
56
56
  ...config,
@@ -96,7 +96,9 @@ var setupImports = (addImport, config, isRoot) => {
96
96
  addImport({ packageName: utilsPkg, dependencyNames, importType: "named" });
97
97
  addImport({ packageName: comPkg, dependencyNames: ["useAppContext"], importType: "named" });
98
98
  if (isRoot) {
99
- addImport({ packageName: "@/common/pageLife", dependencyNames: ["usePageLife"], importType: "named" });
99
+ if (!config.isModule) {
100
+ addImport({ packageName: "@/common/pageLife", dependencyNames: ["usePageLife"], importType: "named" });
101
+ }
100
102
  if (config.hasPopups) {
101
103
  addImport({ packageName: "@/common/popup", dependencyNames: ["POPUP_MAP", "POPUP_IDS"], importType: "named" });
102
104
  }
@@ -126,7 +128,8 @@ var finalizeRootComponent = (ui, config, importManager, combinedJsCode, renderDe
126
128
  var _a, _b, _c;
127
129
  const fileName = ((_a = config.getFileName) == null ? void 0 : _a.call(config, ui.meta.slotId)) || ui.meta.title || "index";
128
130
  const componentId = ((_b = ui.meta) == null ? void 0 : _b.id) || ui.id || ((_c = ui.meta) == null ? void 0 : _c.slotId) || "Index";
129
- const componentName = `I${String(componentId).replace(/[^a-zA-Z0-9]/g, "_")}`;
131
+ const prefix = config.isModule ? "C" : "P";
132
+ const componentName = `${prefix}${String(componentId).replace(/[^a-zA-Z0-9]/g, "_").toUpperCase()}`;
130
133
  const componentCode = (0, import_scene.genComponentTemplate)({
131
134
  componentId,
132
135
  componentName,
package/dist/cjs/index.js CHANGED
@@ -37,6 +37,7 @@ module.exports = __toCommonJS(src_exports);
37
37
  var import_toCodeTaro = __toESM(require("./toCodeTaro"));
38
38
  var import_generateTaroProjectJson = __toESM(require("./generate/generateTaroProjectJson"));
39
39
  var import_generateTaroTempalteJson = __toESM(require("./generate/generateTaroTempalteJson"));
40
+ console.log("222");
40
41
  // Annotate the CommonJS export names for ESM import in node:
41
42
  0 && (module.exports = {
42
43
  generateTaroProjectJson,
@@ -64,6 +64,7 @@ var processModule = (params) => {
64
64
  const eventQueries = (0, import_createEventQueries.createEventQueries)(event);
65
65
  (0, import_handleSlot.default)(ui, {
66
66
  ...config,
67
+ isModule: true,
67
68
  getCurrentScene: () => {
68
69
  const originalScene = getSceneById(scene.id);
69
70
  return { ...scene, ...originalScene, event };
@@ -84,7 +84,11 @@ ${indent} const run_${varName}_${pinId} = (value: any) => {
84
84
  ${process}
85
85
  ${indent} };`;
86
86
  code += `
87
- ${indent} $vars.current.${varName}.${pinId}?.()[SUBJECT_SUBSCRIBE](run_${varName}_${pinId});`;
87
+ ${indent} $vars.current.${varName}.registerChange((changeValue: any) => {`;
88
+ code += `
89
+ ${indent} changeValue[SUBJECT_SUBSCRIBE](run_${varName}_${pinId});`;
90
+ code += `
91
+ ${indent} });`;
88
92
  });
89
93
  return code;
90
94
  };