@mybricks/to-code-taro 1.0.2 → 1.0.4

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 (256) hide show
  1. package/README.md +58 -0
  2. package/dist/cjs/core/comlib/_AesEncode.js +115 -0
  3. package/dist/cjs/core/comlib/_BackTo.js +80 -0
  4. package/dist/cjs/core/comlib/{Index.js → _CallPhone.js} +29 -16
  5. package/dist/cjs/core/comlib/_ChooseFile.js +103 -0
  6. package/dist/cjs/core/comlib/_ChooseMedia.js +70 -0
  7. package/dist/cjs/core/comlib/_Connector.js +92 -0
  8. package/dist/cjs/core/comlib/_ConnectorGlobalHeaders.js +79 -0
  9. package/dist/cjs/core/comlib/_Format.js +123 -0
  10. package/dist/cjs/core/comlib/_GetLocation.js +60 -0
  11. package/dist/cjs/core/comlib/_GetStorage.js +68 -0
  12. package/dist/cjs/core/comlib/_GetSystemInfo.js +62 -0
  13. package/dist/cjs/core/comlib/_OpenCamera.js +73 -0
  14. package/dist/cjs/core/comlib/_OpenPetalMap.js +49 -0
  15. package/dist/cjs/core/comlib/_OpenUrl.js +62 -0
  16. package/dist/cjs/core/comlib/_RemoveStorage.js +68 -0
  17. package/dist/cjs/core/comlib/_Router.js +100 -0
  18. package/dist/cjs/core/comlib/_ScanQrcode.js +9 -10
  19. package/dist/cjs/core/comlib/_SetStorage.js +10 -19
  20. package/dist/cjs/core/comlib/_Share.js +58 -0
  21. package/dist/cjs/core/comlib/_ShowToast.js +23 -50
  22. package/dist/cjs/core/comlib/_TextToSpeech.js +120 -0
  23. package/dist/cjs/core/comlib/_TimerDebounce.js +72 -0
  24. package/dist/cjs/core/comlib/_TimerDelay.js +63 -0
  25. package/dist/cjs/core/comlib/_TimerThrottle.js +75 -0
  26. package/dist/cjs/core/comlib/_Vibrate.js +60 -0
  27. package/dist/cjs/core/comlib/index.js +111 -0
  28. package/dist/cjs/core/mybricks/index.js +47 -47
  29. package/dist/cjs/core/utils/ComContext.js +3 -0
  30. package/dist/cjs/core/utils/PopupRenderer.js +63 -0
  31. package/dist/cjs/core/utils/hooks.js +131 -0
  32. package/dist/cjs/core/utils/index.js +33 -57
  33. package/dist/cjs/core/utils/pageRouter.js +81 -0
  34. package/dist/cjs/core/utils/popupRouter.js +98 -0
  35. package/dist/cjs/core/utils/useContext.js +11 -2
  36. package/dist/cjs/core/utils/with.js +37 -13
  37. package/dist/cjs/generate/generateTaroProjectJson.d.ts +3 -14
  38. package/dist/cjs/generate/generateTaroProjectJson.js +39 -6
  39. package/dist/cjs/generate/utils/tabBarImages.d.ts +1 -1
  40. package/dist/cjs/handleCom.d.ts +1 -1
  41. package/dist/cjs/handleCom.js +91 -177
  42. package/dist/cjs/handleDom.js +7 -44
  43. package/dist/cjs/handleExtension.d.ts +2 -2
  44. package/dist/cjs/handleExtension.js +5 -5
  45. package/dist/cjs/handleGlobal.d.ts +2 -12
  46. package/dist/cjs/handleGlobal.js +23 -7
  47. package/dist/cjs/handleModule.js +3 -3
  48. package/dist/cjs/handleSlot.d.ts +4 -9
  49. package/dist/cjs/handleSlot.js +61 -150
  50. package/dist/cjs/processors/processComEvents.d.ts +9 -0
  51. package/dist/cjs/processors/processComEvents.js +164 -0
  52. package/dist/cjs/processors/processModule.d.ts +31 -0
  53. package/dist/cjs/processors/processModule.js +125 -0
  54. package/dist/cjs/processors/processScene.d.ts +32 -0
  55. package/dist/cjs/processors/processScene.js +128 -0
  56. package/dist/cjs/processors/processSceneLogic.d.ts +4 -0
  57. package/dist/cjs/processors/processSceneLogic.js +170 -0
  58. package/dist/cjs/shims-taro.d.ts +20 -0
  59. package/dist/cjs/taro-template.json +501 -351
  60. package/dist/cjs/toCodeTaro.d.ts +27 -6
  61. package/dist/cjs/toCodeTaro.js +68 -340
  62. package/dist/cjs/utils/builder/buildResult.d.ts +22 -0
  63. package/dist/cjs/utils/builder/buildResult.js +117 -0
  64. package/dist/cjs/utils/common/ImportManager.d.ts +19 -0
  65. package/dist/cjs/utils/common/ImportManager.js +105 -0
  66. package/dist/cjs/utils/common/helper.d.ts +2 -0
  67. package/dist/cjs/utils/common/helper.js +31 -0
  68. package/dist/cjs/utils/common/object.d.ts +5 -0
  69. package/dist/cjs/utils/common/object.js +58 -0
  70. package/dist/cjs/utils/common/string.d.ts +8 -0
  71. package/dist/cjs/utils/common/string.js +46 -0
  72. package/dist/cjs/utils/{pageConfig → config/content}/converter.js +1 -1
  73. package/dist/cjs/utils/{pageConfig → config/content}/index.js +9 -9
  74. package/dist/cjs/utils/{pageConfig → config/content}/pageConfig.js +12 -22
  75. package/dist/{esm/utils/pageConfig → cjs/utils/config/content}/saveBase64Image.d.ts +1 -1
  76. package/dist/cjs/utils/{pageConfig → config/content}/saveBase64Image.js +8 -17
  77. package/dist/cjs/utils/{pageConfig → config/content}/tabBarConfig.js +9 -32
  78. package/dist/cjs/utils/config/content/types.js +17 -0
  79. package/dist/cjs/utils/{pageConfig → config/content}/validator.js +1 -1
  80. package/dist/{esm/utils → cjs/utils/config}/handlePageConfig.d.ts +3 -2
  81. package/dist/cjs/utils/{handlePageConfig.js → config/handlePageConfig.js} +7 -6
  82. package/dist/cjs/utils/context/buildContext.d.ts +24 -0
  83. package/dist/cjs/utils/context/buildContext.js +65 -0
  84. package/dist/cjs/utils/context/buildFrameMap.d.ts +16 -0
  85. package/dist/cjs/utils/context/buildFrameMap.js +106 -0
  86. package/dist/cjs/utils/context/buildGlobalData.d.ts +13 -0
  87. package/dist/cjs/utils/context/buildGlobalData.js +58 -0
  88. package/dist/cjs/utils/context/collectJSModules.d.ts +37 -0
  89. package/dist/cjs/utils/context/collectJSModules.js +91 -0
  90. package/dist/cjs/utils/context/createEventQueries.d.ts +45 -0
  91. package/dist/cjs/utils/context/createEventQueries.js +99 -0
  92. package/dist/cjs/utils/context/createProvider.d.ts +21 -0
  93. package/dist/cjs/utils/context/createProvider.js +49 -0
  94. package/dist/cjs/utils/index.d.ts +10 -62
  95. package/dist/cjs/utils/index.js +21 -282
  96. package/dist/cjs/utils/{convertNamespace.js → logic/convertNamespace.js} +1 -1
  97. package/dist/cjs/utils/{genJSModules.js → logic/genJSModules.js} +1 -1
  98. package/dist/{esm/utils → cjs/utils/logic}/handleProcess.d.ts +2 -2
  99. package/dist/cjs/utils/{handleProcess.js → logic/handleProcess.js} +40 -16
  100. package/dist/cjs/utils/logic/processChildren.d.ts +12 -0
  101. package/dist/cjs/utils/logic/processChildren.js +82 -0
  102. package/dist/cjs/utils/style/color.d.ts +4 -0
  103. package/dist/cjs/utils/style/color.js +45 -0
  104. package/dist/cjs/utils/style/converter.d.ts +7 -0
  105. package/dist/cjs/utils/style/converter.js +181 -0
  106. package/dist/cjs/utils/{getComponentClassName.js → style/getComponentClassName.js} +1 -1
  107. package/dist/cjs/utils/{pxtransform.js → style/pxtransform.js} +1 -1
  108. package/dist/cjs/utils/style/types.d.ts +23 -0
  109. package/dist/cjs/utils/{pageConfig → style}/types.js +1 -1
  110. package/dist/cjs/utils/{code → templates}/component.js +1 -1
  111. package/dist/cjs/utils/{code → templates}/index.js +4 -4
  112. package/dist/cjs/utils/{code → templates}/renderManager.js +1 -1
  113. package/dist/cjs/utils/{code → templates}/scene.d.ts +3 -1
  114. package/dist/cjs/utils/{code → templates}/scene.js +17 -5
  115. package/dist/esm/core/comlib/_AesEncode.js +85 -0
  116. package/dist/esm/core/comlib/_BackTo.js +66 -0
  117. package/dist/esm/core/comlib/_CallPhone.js +30 -0
  118. package/dist/esm/core/comlib/_ChooseFile.js +81 -0
  119. package/dist/esm/core/comlib/_ChooseMedia.js +38 -0
  120. package/dist/esm/core/comlib/_Connector.js +60 -0
  121. package/dist/esm/core/comlib/_ConnectorGlobalHeaders.js +56 -0
  122. package/dist/esm/core/comlib/_Format.js +102 -0
  123. package/dist/esm/core/comlib/_GetLocation.js +26 -0
  124. package/dist/esm/core/comlib/_GetStorage.js +44 -0
  125. package/dist/esm/core/comlib/_GetSystemInfo.js +32 -0
  126. package/dist/esm/core/comlib/_OpenCamera.js +44 -0
  127. package/dist/esm/core/comlib/_OpenPetalMap.js +28 -0
  128. package/dist/esm/core/comlib/_OpenUrl.js +36 -0
  129. package/dist/esm/core/comlib/_RemoveStorage.js +42 -0
  130. package/dist/esm/core/comlib/_Router.js +113 -0
  131. package/dist/esm/core/comlib/_ScanQrcode.js +10 -11
  132. package/dist/esm/core/comlib/_SetStorage.js +13 -25
  133. package/dist/esm/core/comlib/_Share.js +28 -0
  134. package/dist/esm/core/comlib/_ShowToast.js +32 -55
  135. package/dist/esm/core/comlib/_TextToSpeech.js +117 -0
  136. package/dist/esm/core/comlib/_TimerDebounce.js +66 -0
  137. package/dist/esm/core/comlib/_TimerDelay.js +47 -0
  138. package/dist/esm/core/comlib/_TimerThrottle.js +69 -0
  139. package/dist/esm/core/comlib/_Vibrate.js +34 -0
  140. package/dist/esm/core/comlib/index.js +37 -0
  141. package/dist/esm/core/mybricks/index.js +1 -1
  142. package/dist/esm/core/utils/ComContext.js +1 -0
  143. package/dist/esm/core/utils/PopupRenderer.js +27 -0
  144. package/dist/esm/core/utils/hooks.js +130 -0
  145. package/dist/esm/core/utils/index.js +8 -57
  146. package/dist/esm/core/utils/pageRouter.js +69 -0
  147. package/dist/esm/core/utils/popupRouter.js +116 -0
  148. package/dist/esm/core/utils/useContext.js +16 -3
  149. package/dist/esm/core/utils/with.js +62 -19
  150. package/dist/esm/generate/generateTaroProjectJson.d.ts +3 -14
  151. package/dist/esm/generate/generateTaroProjectJson.js +62 -24
  152. package/dist/esm/generate/utils/tabBarImages.d.ts +1 -1
  153. package/dist/esm/handleCom.d.ts +1 -1
  154. package/dist/esm/handleCom.js +159 -244
  155. package/dist/esm/handleDom.js +9 -48
  156. package/dist/esm/handleExtension.d.ts +2 -2
  157. package/dist/esm/handleExtension.js +5 -5
  158. package/dist/esm/handleGlobal.d.ts +2 -12
  159. package/dist/esm/handleGlobal.js +17 -3
  160. package/dist/esm/handleModule.js +3 -3
  161. package/dist/esm/handleSlot.d.ts +4 -9
  162. package/dist/esm/handleSlot.js +112 -173
  163. package/dist/esm/processors/processComEvents.d.ts +9 -0
  164. package/dist/esm/processors/processComEvents.js +167 -0
  165. package/dist/esm/processors/processModule.d.ts +31 -0
  166. package/dist/esm/processors/processModule.js +126 -0
  167. package/dist/esm/processors/processScene.d.ts +32 -0
  168. package/dist/esm/processors/processScene.js +134 -0
  169. package/dist/esm/processors/processSceneLogic.d.ts +4 -0
  170. package/dist/esm/processors/processSceneLogic.js +170 -0
  171. package/dist/esm/shims-taro.d.ts +20 -0
  172. package/dist/esm/taro-template.json +501 -351
  173. package/dist/esm/toCodeTaro.d.ts +27 -6
  174. package/dist/esm/toCodeTaro.js +110 -395
  175. package/dist/esm/utils/builder/buildResult.d.ts +22 -0
  176. package/dist/esm/utils/builder/buildResult.js +82 -0
  177. package/dist/esm/utils/common/ImportManager.d.ts +19 -0
  178. package/dist/esm/utils/common/ImportManager.js +103 -0
  179. package/dist/esm/utils/common/helper.d.ts +2 -0
  180. package/dist/esm/utils/common/helper.js +4 -0
  181. package/dist/esm/utils/common/object.d.ts +5 -0
  182. package/dist/esm/utils/common/object.js +32 -0
  183. package/dist/esm/utils/common/string.d.ts +8 -0
  184. package/dist/esm/utils/common/string.js +21 -0
  185. package/dist/esm/utils/config/content/pageConfig.js +40 -0
  186. package/dist/{cjs/utils/pageConfig → esm/utils/config/content}/saveBase64Image.d.ts +1 -1
  187. package/dist/esm/utils/{pageConfig → config/content}/saveBase64Image.js +11 -30
  188. package/dist/esm/utils/{pageConfig → config/content}/tabBarConfig.js +12 -34
  189. package/dist/{cjs/utils → esm/utils/config}/handlePageConfig.d.ts +3 -2
  190. package/dist/esm/utils/{handlePageConfig.js → config/handlePageConfig.js} +6 -2
  191. package/dist/esm/utils/context/buildContext.d.ts +24 -0
  192. package/dist/esm/utils/context/buildContext.js +53 -0
  193. package/dist/esm/utils/context/buildFrameMap.d.ts +16 -0
  194. package/dist/esm/utils/context/buildFrameMap.js +131 -0
  195. package/dist/esm/utils/context/buildGlobalData.d.ts +13 -0
  196. package/dist/esm/utils/context/buildGlobalData.js +44 -0
  197. package/dist/esm/utils/context/collectJSModules.d.ts +37 -0
  198. package/dist/esm/utils/context/collectJSModules.js +87 -0
  199. package/dist/esm/utils/context/createEventQueries.d.ts +45 -0
  200. package/dist/esm/utils/context/createEventQueries.js +99 -0
  201. package/dist/esm/utils/context/createProvider.d.ts +21 -0
  202. package/dist/esm/utils/context/createProvider.js +33 -0
  203. package/dist/esm/utils/index.d.ts +10 -62
  204. package/dist/esm/utils/index.js +12 -345
  205. package/dist/{cjs/utils → esm/utils/logic}/handleProcess.d.ts +2 -2
  206. package/dist/esm/utils/{handleProcess.js → logic/handleProcess.js} +42 -9
  207. package/dist/esm/utils/logic/processChildren.d.ts +12 -0
  208. package/dist/esm/utils/logic/processChildren.js +48 -0
  209. package/dist/esm/utils/style/color.d.ts +4 -0
  210. package/dist/esm/utils/style/color.js +17 -0
  211. package/dist/esm/utils/style/converter.d.ts +7 -0
  212. package/dist/esm/utils/style/converter.js +176 -0
  213. package/dist/esm/utils/style/types.d.ts +23 -0
  214. package/dist/esm/utils/style/types.js +1 -0
  215. package/dist/esm/utils/{code → templates}/scene.d.ts +3 -1
  216. package/dist/esm/utils/{code → templates}/scene.js +13 -5
  217. package/package.json +4 -2
  218. package/dist/esm/core/comlib/Index.js +0 -3
  219. package/dist/esm/utils/pageConfig/pageConfig.js +0 -60
  220. /package/dist/cjs/utils/{pageConfig → config/content}/converter.d.ts +0 -0
  221. /package/dist/cjs/utils/{pageConfig → config/content}/index.d.ts +0 -0
  222. /package/dist/cjs/utils/{pageConfig → config/content}/pageConfig.d.ts +0 -0
  223. /package/dist/cjs/utils/{pageConfig → config/content}/tabBarConfig.d.ts +0 -0
  224. /package/dist/cjs/utils/{pageConfig → config/content}/types.d.ts +0 -0
  225. /package/dist/cjs/utils/{pageConfig → config/content}/validator.d.ts +0 -0
  226. /package/dist/cjs/utils/{convertNamespace.d.ts → logic/convertNamespace.d.ts} +0 -0
  227. /package/dist/cjs/utils/{genJSModules.d.ts → logic/genJSModules.d.ts} +0 -0
  228. /package/dist/cjs/utils/{getComponentClassName.d.ts → style/getComponentClassName.d.ts} +0 -0
  229. /package/dist/cjs/utils/{pxtransform.d.ts → style/pxtransform.d.ts} +0 -0
  230. /package/dist/cjs/utils/{code → templates}/component.d.ts +0 -0
  231. /package/dist/cjs/utils/{code → templates}/index.d.ts +0 -0
  232. /package/dist/cjs/utils/{code → templates}/renderManager.d.ts +0 -0
  233. /package/dist/esm/utils/{pageConfig → config/content}/converter.d.ts +0 -0
  234. /package/dist/esm/utils/{pageConfig → config/content}/converter.js +0 -0
  235. /package/dist/esm/utils/{pageConfig → config/content}/index.d.ts +0 -0
  236. /package/dist/esm/utils/{pageConfig → config/content}/index.js +0 -0
  237. /package/dist/esm/utils/{pageConfig → config/content}/pageConfig.d.ts +0 -0
  238. /package/dist/esm/utils/{pageConfig → config/content}/tabBarConfig.d.ts +0 -0
  239. /package/dist/esm/utils/{pageConfig → config/content}/types.d.ts +0 -0
  240. /package/dist/esm/utils/{pageConfig → config/content}/types.js +0 -0
  241. /package/dist/esm/utils/{pageConfig → config/content}/validator.d.ts +0 -0
  242. /package/dist/esm/utils/{pageConfig → config/content}/validator.js +0 -0
  243. /package/dist/esm/utils/{convertNamespace.d.ts → logic/convertNamespace.d.ts} +0 -0
  244. /package/dist/esm/utils/{convertNamespace.js → logic/convertNamespace.js} +0 -0
  245. /package/dist/esm/utils/{genJSModules.d.ts → logic/genJSModules.d.ts} +0 -0
  246. /package/dist/esm/utils/{genJSModules.js → logic/genJSModules.js} +0 -0
  247. /package/dist/esm/utils/{getComponentClassName.d.ts → style/getComponentClassName.d.ts} +0 -0
  248. /package/dist/esm/utils/{getComponentClassName.js → style/getComponentClassName.js} +0 -0
  249. /package/dist/esm/utils/{pxtransform.d.ts → style/pxtransform.d.ts} +0 -0
  250. /package/dist/esm/utils/{pxtransform.js → style/pxtransform.js} +0 -0
  251. /package/dist/esm/utils/{code → templates}/component.d.ts +0 -0
  252. /package/dist/esm/utils/{code → templates}/component.js +0 -0
  253. /package/dist/esm/utils/{code → templates}/index.d.ts +0 -0
  254. /package/dist/esm/utils/{code → templates}/index.js +0 -0
  255. /package/dist/esm/utils/{code → templates}/renderManager.d.ts +0 -0
  256. /package/dist/esm/utils/{code → templates}/renderManager.js +0 -0
@@ -33,38 +33,32 @@ __export(handleCom_exports, {
33
33
  });
34
34
  module.exports = __toCommonJS(handleCom_exports);
35
35
  var import_utils = require("./utils");
36
- var import_code = require("./utils/code");
36
+ var import_templates = require("./utils/templates");
37
37
  var import_handleSlot = __toESM(require("./handleSlot"));
38
- var import_component = require("./utils/code/component");
39
- var import_renderManager = require("./utils/code/renderManager");
40
- var import_handleProcess = require("./utils/handleProcess");
38
+ var import_renderManager = require("./utils/templates/renderManager");
39
+ var import_processComEvents = require("./processors/processComEvents");
40
+ var import_component = require("./utils/templates/component");
41
41
  var handleCom = (com, config) => {
42
- var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j;
43
- const { meta, props, slots, events } = com;
44
- const isModule = meta.def.namespace.startsWith("mybricks.taro.module");
45
- const { importInfo, callName } = config.getComponentMeta(meta);
46
- const isJsCalculationComponent = meta.def.namespace === "mybricks.taro._muilt-inputJs" || meta.def.namespace === "mybricks.core-comlib.js-ai";
47
- if (isJsCalculationComponent) {
48
- const transformCode = ((_b = (_a = props.data) == null ? void 0 : _a.fns) == null ? void 0 : _b.code) || ((_d = (_c = props.data) == null ? void 0 : _c.fns) == null ? void 0 : _d.transformCode) || ((_e = props.data) == null ? void 0 : _e.fns);
49
- if (transformCode && config.addJSModule) {
50
- config.addJSModule({
51
- id: meta.id,
52
- title: meta.title || "JS计算",
53
- transformCode: typeof transformCode === "string" ? transformCode : "",
54
- inputs: ((_f = meta.model) == null ? void 0 : _f.inputs) || [],
55
- outputs: ((_g = meta.model) == null ? void 0 : _g.outputs) || [],
56
- data: props.data || {}
57
- });
58
- }
59
- return {
60
- slots: [],
61
- scopeSlots: [],
62
- ui: "",
63
- js: "",
64
- cssContent: "",
65
- outputsConfig: void 0
66
- };
42
+ const { meta, props } = com;
43
+ if (isJsCalculation(meta)) {
44
+ return handleJsCalculation(com, config);
67
45
  }
46
+ const { componentName, eventHandlers, comEventCode } = prepareComponent(com, config);
47
+ const { cssContent, rootStyle } = prepareStyles(com);
48
+ const { slotsCode, accumulatedCssContent, eventCode } = processComSlots(com, config, cssContent);
49
+ const ui = generateUiCode(com, config, componentName, rootStyle, comEventCode, slotsCode, eventHandlers);
50
+ return {
51
+ slots: [],
52
+ scopeSlots: [],
53
+ ui,
54
+ js: eventCode,
55
+ cssContent: accumulatedCssContent,
56
+ outputsConfig: Object.keys(eventHandlers).length > 0 ? { [meta.id]: eventHandlers } : void 0
57
+ };
58
+ };
59
+ var prepareComponent = (com, config) => {
60
+ const { meta } = com;
61
+ const { importInfo, callName } = config.getComponentMeta(meta);
68
62
  const componentName = (0, import_utils.firstCharToUpperCase)(callName || importInfo.name);
69
63
  const importName = (0, import_utils.firstCharToUpperCase)(importInfo.name);
70
64
  config.addParentDependencyImport({
@@ -73,188 +67,108 @@ var handleCom = (com, config) => {
73
67
  importType: importInfo.type
74
68
  });
75
69
  const currentProvider = config.getCurrentProvider();
76
- const providerName = currentProvider.name;
77
- const componentController = ((_h = config.getComponentController) == null ? void 0 : _h.call(config, {
78
- com: meta,
79
- scene: config.getCurrentScene()
80
- })) || `controller_${meta.id}`;
81
- const providerPath = `controllers.current.${providerName}`;
82
- const controllerPath = `${providerPath}.${componentController}`;
83
- const indentJs = (0, import_utils.indentation)(config.codeStyle.indent * (config.depth + 1));
84
- let eventCode = "";
70
+ currentProvider.coms.add(meta.id);
71
+ currentProvider.controllers.add(meta.id);
72
+ const { comEventCode, outputsConfig } = (0, import_processComEvents.processComEvents)(com, config);
73
+ return {
74
+ componentName,
75
+ eventHandlers: outputsConfig[meta.id] || {},
76
+ comEventCode
77
+ };
78
+ };
79
+ var prepareStyles = (com) => {
80
+ var _a;
81
+ const { meta, props } = com;
82
+ const resultStyle = (0, import_utils.convertComponentStyle)(props.style);
83
+ const cssContent = (0, import_utils.convertStyleAryToCss)((_a = props.style) == null ? void 0 : _a.styleAry, meta.id);
84
+ return { cssContent, rootStyle: resultStyle.root || {} };
85
+ };
86
+ var generateUiCode = (com, config, componentName, rootStyle, comEventCode, slotsCode, eventHandlers) => {
87
+ var _a;
88
+ const { meta, props } = com;
85
89
  const scene = config.getCurrentScene();
86
- const sceneCom = (_i = scene.coms) == null ? void 0 : _i[meta.id];
90
+ const sceneCom = (_a = scene.coms) == null ? void 0 : _a[meta.id];
87
91
  const componentInputs = (sceneCom == null ? void 0 : sceneCom.inputs) || [];
88
92
  const componentOutputs = (sceneCom == null ? void 0 : sceneCom.outputs) || meta.outputs || [];
89
- let comEventCode = "";
90
- const outputsConfig = {};
91
- const eventConfig = {};
92
- const resultStyle = (0, import_utils.convertComponentStyle)(props.style);
93
- const cssContent = (0, import_utils.convertStyleAryToCss)((_j = props.style) == null ? void 0 : _j.styleAry, meta.id);
94
- const outputEvents = events || {};
95
- Object.entries(outputEvents).forEach(
96
- ([eventId, eventInfo]) => {
97
- const { type, isAbstract, diagramId, schema, active } = eventInfo;
98
- if (active === false)
99
- return;
100
- if (isAbstract) {
101
- config.setAbstractEventTypeDefMap({
102
- comId: com.meta.id,
103
- eventId,
104
- typeDef: config.getTypeDef(),
105
- schema
106
- });
107
- return;
108
- }
109
- if (type === "fx") {
110
- const fxsMap = config.getFxsMap();
111
- const currentProvider2 = config.getCurrentProvider();
112
- const scene2 = config.getCurrentScene();
113
- const pinProxy = scene2.pinProxies[`${props.id}-${eventId}`];
114
- const fxProvider = fxsMap[pinProxy.frameId];
115
- const isGlobal = fxProvider.name === "global";
116
- if (fxProvider.name !== currentProvider2.name) {
117
- if (isGlobal) {
118
- config.addParentDependencyImport({
119
- packageName: config.getComponentPackageName(),
120
- dependencyNames: ["globalFxs"],
121
- importType: "named"
122
- });
123
- } else {
124
- config.addConsumer(fxProvider);
125
- }
126
- }
127
- const indent3 = (0, import_utils.indentation)(
128
- config.codeStyle.indent * (config.depth + 2)
129
- );
130
- comEventCode += `${indent3}${eventId}: ${isGlobal ? `globalFxs` : `comRefs.current.${fxProvider.name}_Fxs`}.${pinProxy.frameId},
131
- `;
132
- eventConfig[eventId] = { connected: true };
133
- return;
134
- }
135
- if (type !== "defined") {
136
- return;
137
- }
138
- if (!diagramId) {
139
- return;
140
- }
141
- const event = config.getEventByDiagramId(diagramId);
142
- if (!event) {
143
- return;
144
- }
145
- const paramName = "value";
146
- let process = (0, import_handleProcess.handleProcess)(event, {
147
- ...config,
148
- target: "comRefs.current",
149
- depth: config.depth + 3,
150
- addParentDependencyImport: config.addParentDependencyImport,
151
- getParams: () => {
152
- return {
153
- [eventId]: paramName
154
- };
155
- }
156
- }).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.");
157
- if (process.includes("pageParams")) {
158
- config.addParentDependencyImport({
159
- packageName: config.getComponentPackageName(),
160
- dependencyNames: ["page"],
161
- importType: "named"
162
- });
163
- process = (0, import_utils.indentation)(config.codeStyle.indent * (config.depth + 3)) + `const pageParams: any = page.getParams("${config.getCurrentScene().id}");
164
- ` + process;
165
- }
166
- const handlerCode = `(${paramName}: any) => {
167
- ${process}
168
- ${(0, import_utils.indentation)(config.codeStyle.indent * (config.depth + 2))}}`;
169
- if (!outputsConfig[meta.id]) {
170
- outputsConfig[meta.id] = {};
171
- }
172
- const onEventName = eventId.startsWith("on") ? eventId : `on${eventId.charAt(0).toUpperCase()}${eventId.slice(1)}`;
173
- outputsConfig[meta.id][onEventName] = handlerCode;
174
- eventConfig[eventId] = { connected: true };
93
+ return (0, import_templates.getUiComponentCode)(
94
+ {
95
+ componentName,
96
+ meta,
97
+ props,
98
+ resultStyle: { root: rootStyle },
99
+ componentInputs: componentInputs.length > 0 ? componentInputs : void 0,
100
+ componentOutputs: componentOutputs.length > 0 ? componentOutputs : void 0,
101
+ comEventCode,
102
+ slotsCode,
103
+ eventHandlers
104
+ },
105
+ {
106
+ codeStyle: config.codeStyle,
107
+ depth: config.depth + 1,
108
+ verbose: config.verbose
175
109
  }
176
110
  );
177
- currentProvider.coms.add(meta.id);
178
- currentProvider.controllers.add(meta.id);
179
- const indent = (0, import_utils.indentation)(config.codeStyle.indent * config.depth);
180
- const indent2 = (0, import_utils.indentation)(config.codeStyle.indent * (config.depth + 1));
111
+ };
112
+ var isJsCalculation = (meta) => meta.def.namespace === "mybricks.taro._muilt-inputJs" || meta.def.namespace === "mybricks.core-comlib.js-ai";
113
+ var handleJsCalculation = (com, config) => {
114
+ var _a, _b, _c, _d, _e, _f, _g;
115
+ const { meta, props } = com;
116
+ const transformCode = ((_b = (_a = props.data) == null ? void 0 : _a.fns) == null ? void 0 : _b.code) || ((_d = (_c = props.data) == null ? void 0 : _c.fns) == null ? void 0 : _d.transformCode) || ((_e = props.data) == null ? void 0 : _e.fns);
117
+ if (transformCode && config.addJSModule) {
118
+ config.addJSModule({
119
+ id: meta.id,
120
+ title: meta.title || "JS计算",
121
+ transformCode: typeof transformCode === "string" ? transformCode : "",
122
+ inputs: ((_f = meta.model) == null ? void 0 : _f.inputs) || [],
123
+ outputs: ((_g = meta.model) == null ? void 0 : _g.outputs) || [],
124
+ data: props.data || {}
125
+ });
126
+ }
127
+ return { slots: [], scopeSlots: [], ui: "", js: "", cssContent: "", outputsConfig: void 0 };
128
+ };
129
+ var processComSlots = (com, config, initialCss) => {
130
+ const { meta, props, slots } = com;
181
131
  let slotsCode = "";
182
- let accumulatedCssContent = cssContent;
183
- let renderCode = "";
184
- const renderManager = config.renderManager || new import_renderManager.RenderManager();
132
+ let accumulatedCssContent = initialCss;
133
+ let eventCode = "";
185
134
  if (slots) {
186
- let slotsObjectCode = "";
135
+ const renderManager = config.renderManager || new import_renderManager.RenderManager();
187
136
  const slotEntries = Object.entries(slots);
188
137
  slotEntries.forEach(([slotId, slot], index) => {
189
- var _a2, _b2;
190
- const rawSlotInfo = (_b2 = (_a2 = props.style) == null ? void 0 : _a2.slots) == null ? void 0 : _b2[slotId];
138
+ var _a, _b;
139
+ const rawSlotInfo = (_b = (_a = props.style) == null ? void 0 : _a.slots) == null ? void 0 : _b[slotId];
191
140
  if (rawSlotInfo == null ? void 0 : rawSlotInfo.layout) {
192
141
  slot.layout = rawSlotInfo.layout;
193
142
  }
194
- const { js, ui: ui2, cssContent: slotCssContent } = (0, import_handleSlot.default)(slot, {
143
+ const result = (0, import_handleSlot.default)(slot, {
195
144
  ...config,
196
145
  checkIsRoot: () => false,
197
146
  depth: 1,
198
- // 参照鸿蒙:非作用域插槽 depth 从 1 开始
199
147
  renderManager
200
- // 传递 renderManager
201
148
  });
202
- eventCode += js;
203
- if (slotCssContent) {
204
- accumulatedCssContent += (accumulatedCssContent ? "\n" : "") + slotCssContent;
149
+ eventCode += result.js;
150
+ if (result.cssContent) {
151
+ accumulatedCssContent += (accumulatedCssContent ? "\n" : "") + result.cssContent;
205
152
  }
206
153
  const renderId = `${meta.id}_${slotId}`;
207
154
  const baseIndentSize = config.codeStyle.indent;
208
155
  const rootIndent = config.codeStyle.indent;
209
156
  const renderBodyIndent = (0, import_utils.indentation)(rootIndent + config.codeStyle.indent);
210
157
  const formattedContent = (0, import_component.formatSlotContent)({
211
- uiContent: ui2,
158
+ uiContent: result.ui,
212
159
  baseIndentSize,
213
160
  renderBodyIndent
214
161
  });
215
162
  renderManager.register(renderId, formattedContent);
216
163
  const slotIndent = (0, import_utils.indentation)(config.codeStyle.indent * (config.depth + 2));
217
- slotsObjectCode += (0, import_component.genSlotRenderRef)({
164
+ slotsCode += (0, import_component.genSlotRenderRef)({
218
165
  slotId,
219
166
  renderId,
220
167
  indent: slotIndent,
221
168
  isLast: index === slotEntries.length - 1
222
169
  });
223
170
  });
224
- slotsCode = slotsObjectCode;
225
171
  }
226
- const componentResultStyle = { ...resultStyle };
227
- const rootStyle = componentResultStyle.root || {};
228
- delete componentResultStyle.root;
229
- const eventHandlers = outputsConfig[meta.id] || {};
230
- const uiComponentCode = (0, import_code.getUiComponentCode)(
231
- {
232
- componentName,
233
- meta,
234
- props,
235
- resultStyle: { root: rootStyle },
236
- // 传递 root style
237
- componentInputs: componentInputs.length > 0 ? componentInputs : void 0,
238
- componentOutputs: componentOutputs.length > 0 ? componentOutputs : void 0,
239
- comEventCode,
240
- slotsCode,
241
- eventHandlers
242
- // 传递事件处理函数
243
- },
244
- {
245
- codeStyle: config.codeStyle,
246
- depth: config.depth + 1,
247
- verbose: config.verbose
248
- }
249
- );
250
- const ui = uiComponentCode;
251
- return {
252
- slots: [],
253
- scopeSlots: [],
254
- ui,
255
- js: eventCode,
256
- cssContent: accumulatedCssContent,
257
- outputsConfig: Object.keys(outputsConfig).length > 0 ? outputsConfig : void 0
258
- };
172
+ return { slotsCode, accumulatedCssContent, eventCode };
259
173
  };
260
174
  var handleCom_default = handleCom;
@@ -1,8 +1,6 @@
1
- var __create = Object.create;
2
1
  var __defProp = Object.defineProperty;
3
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
5
  var __export = (target, all) => {
8
6
  for (var name in all)
@@ -16,14 +14,6 @@ var __copyProps = (to, from, except, desc) => {
16
14
  }
17
15
  return to;
18
16
  };
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
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
18
 
29
19
  // src/handleDom.ts
@@ -33,53 +23,26 @@ __export(handleDom_exports, {
33
23
  });
34
24
  module.exports = __toCommonJS(handleDom_exports);
35
25
  var import_utils = require("./utils");
36
- var import_handleCom = __toESM(require("./handleCom"));
26
+ var import_processChildren = require("./utils/logic/processChildren");
37
27
  var handleDom = (dom, config) => {
38
28
  var _a;
39
29
  const { props, children } = dom;
40
30
  const domProps = props;
41
- let uiCode = "";
42
- let jsCode = "";
43
- let cssContent = (0, import_utils.convertStyleAryToCss)((_a = domProps.style) == null ? void 0 : _a.styleAry, domProps.id);
44
- const level0Slots = [];
45
- const level1Slots = [];
46
- const nextConfig = {
31
+ const childResults = (0, import_processChildren.processChildren)(children, {
47
32
  ...config,
48
33
  depth: config.depth + 1
49
- };
50
- children.forEach((child) => {
51
- if (child.type === "com") {
52
- const { ui: ui2, js, slots, scopeSlots, cssContent: childCssContent } = (0, import_handleCom.default)(child, nextConfig);
53
- uiCode += uiCode ? "\n" + ui2 : ui2;
54
- jsCode += js;
55
- if (childCssContent) {
56
- cssContent += (cssContent ? "\n" : "") + childCssContent;
57
- }
58
- level0Slots.push(...slots);
59
- level1Slots.push(...scopeSlots);
60
- } else if (child.type === "module") {
61
- uiCode += uiCode ? "\n模块" : "模块";
62
- } else {
63
- const { ui: ui2, js, slots, scopeSlots, cssContent: childCssContent } = handleDom(child, nextConfig);
64
- uiCode += uiCode ? "\n" + ui2 : ui2;
65
- jsCode += js;
66
- if (childCssContent) {
67
- cssContent += (cssContent ? "\n" : "") + childCssContent;
68
- }
69
- level0Slots.push(...slots);
70
- level1Slots.push(...scopeSlots);
71
- }
72
34
  });
35
+ const cssContent = ((0, import_utils.convertStyleAryToCss)((_a = domProps.style) == null ? void 0 : _a.styleAry, domProps.id) || "") + (childResults.cssContent ? "\n" + childResults.cssContent : "");
73
36
  const indent = (0, import_utils.indentation)(config.codeStyle.indent * config.depth);
74
37
  const styleCode = JSON.stringify((0, import_utils.convertRootStyle)(domProps.style));
75
38
  const ui = `${indent}<View${domProps.id ? ` id="${domProps.id}" className="${domProps.id}"` : ""} style={${styleCode}}>
76
- ${uiCode}
39
+ ${childResults.ui}
77
40
  ${indent}</View>`;
78
41
  return {
79
42
  ui,
80
- js: jsCode,
81
- slots: level0Slots,
82
- scopeSlots: level1Slots,
43
+ js: childResults.js,
44
+ slots: childResults.slots,
45
+ scopeSlots: childResults.scopeSlots,
83
46
  cssContent
84
47
  };
85
48
  };
@@ -1,10 +1,10 @@
1
1
  /**
2
2
  * 处理Extension事件卡片
3
3
  */
4
- import type { ToTaroCodeConfig, Result } from "./toCodeTaro";
4
+ import type { ToTaroCodeConfig, GeneratedFile } from "./toCodeTaro";
5
5
  interface HandleExtensionParams {
6
6
  tojson: any;
7
7
  extensionEvents: any[];
8
8
  }
9
- declare const handleExtension: (params: HandleExtensionParams, config: ToTaroCodeConfig) => Result;
9
+ declare const handleExtension: (params: HandleExtensionParams, config: ToTaroCodeConfig) => GeneratedFile[];
10
10
  export default handleExtension;
@@ -23,10 +23,10 @@ __export(handleExtension_exports, {
23
23
  });
24
24
  module.exports = __toCommonJS(handleExtension_exports);
25
25
  var import_utils = require("./utils");
26
- var import_handleProcess = require("./utils/handleProcess");
26
+ var import_handleProcess = require("./utils/logic/handleProcess");
27
27
  var handleExtension = (params, config) => {
28
28
  const { tojson, extensionEvents } = params;
29
- const result = [];
29
+ const files = [];
30
30
  const importManager = new import_utils.ImportManager(config);
31
31
  const addDependencyImport = importManager.addImport.bind(importManager);
32
32
  const eventCode = genEvent(
@@ -56,7 +56,7 @@ var handleExtension = (params, config) => {
56
56
  },
57
57
  { ...config, addParentDependencyImport: addDependencyImport }
58
58
  );
59
- result.push({
59
+ files.push({
60
60
  type: "api",
61
61
  content: (apiCode ? `${apiCode}
62
62
 
@@ -78,14 +78,14 @@ var handleExtension = (params, config) => {
78
78
  { ...config, addParentDependencyImport: addDependencyExtensionBusImport }
79
79
  );
80
80
  if (busCode) {
81
- result.push({
81
+ files.push({
82
82
  content: busCode,
83
83
  importManager: extensionBusImportManager,
84
84
  type: "extension-bus",
85
85
  name: "系统总线"
86
86
  });
87
87
  }
88
- return result;
88
+ return files;
89
89
  };
90
90
  var handleExtension_default = handleExtension;
91
91
  var genConfig = (params, config) => {
@@ -1,21 +1,11 @@
1
1
  /**
2
2
  * 处理全局变量和全局Fx
3
3
  */
4
- import { ImportManager } from "./utils";
5
- import type { ToTaroCodeConfig } from "./toCodeTaro";
4
+ import type { ToTaroCodeConfig, GeneratedFile } from "./toCodeTaro";
6
5
  interface HandleGlobalParams {
7
6
  tojson: any;
8
7
  globalFxs: any[];
9
8
  globalVars: any[];
10
9
  }
11
- declare const handleGlobal: (params: HandleGlobalParams, config: ToTaroCodeConfig) => {
12
- content: string;
13
- cssContent?: string;
14
- pageConfigContent?: string;
15
- importManager: ImportManager;
16
- type: "module" | "fx" | "global" | "extension-event" | "extension-api" | "extension-config" | "api" | "normal" | "popup" | "extension-bus" | "abstractEventTypeDef" | "jsModules" | "commonIndex" | "tabBarConfig";
17
- meta?: import("@mybricks/to-code-react/dist/cjs/toCode/types").Scene;
18
- name: string;
19
- tabBarConfig?: string;
20
- };
10
+ declare const handleGlobal: (params: HandleGlobalParams, config: ToTaroCodeConfig) => GeneratedFile[];
21
11
  export default handleGlobal;
@@ -23,7 +23,7 @@ __export(handleGlobal_exports, {
23
23
  });
24
24
  module.exports = __toCommonJS(handleGlobal_exports);
25
25
  var import_utils = require("./utils");
26
- var import_handleProcess = require("./utils/handleProcess");
26
+ var import_handleProcess = require("./utils/logic/handleProcess");
27
27
  var handleGlobal = (params, config) => {
28
28
  const { tojson, globalFxs, globalVars } = params;
29
29
  const globalImportManager = new import_utils.ImportManager(config);
@@ -138,6 +138,20 @@ class GlobalFxs {
138
138
  ${globalFxsInitCode}}
139
139
 
140
140
  export const globalFxs = new GlobalFxs()`;
141
+ if (varCode.includes("createVariable(")) {
142
+ globalAddDependencyImport({
143
+ packageName: config.getUtilsPackageName(),
144
+ dependencyNames: ["createVariable"],
145
+ importType: "named"
146
+ });
147
+ }
148
+ if (fxCode.includes("createFx(")) {
149
+ globalAddDependencyImport({
150
+ packageName: config.getUtilsPackageName(),
151
+ dependencyNames: ["createFx"],
152
+ importType: "named"
153
+ });
154
+ }
141
155
  if (fxCode.includes("merge(")) {
142
156
  globalAddDependencyImport({
143
157
  packageName: config.getUtilsPackageName(),
@@ -145,11 +159,13 @@ export const globalFxs = new GlobalFxs()`;
145
159
  importType: "named"
146
160
  });
147
161
  }
148
- return {
149
- type: "global",
150
- content: varCode + "\n\n" + fxCode,
151
- importManager: globalImportManager,
152
- name: "global"
153
- };
162
+ return [
163
+ {
164
+ type: "global",
165
+ content: varCode + "\n\n" + fxCode,
166
+ importManager: globalImportManager,
167
+ name: "global"
168
+ }
169
+ ];
154
170
  };
155
171
  var handleGlobal_default = handleGlobal;
@@ -23,7 +23,7 @@ __export(handleModule_exports, {
23
23
  });
24
24
  module.exports = __toCommonJS(handleModule_exports);
25
25
  var import_utils = require("./utils");
26
- var import_handleProcess = require("./utils/handleProcess");
26
+ var import_handleProcess = require("./utils/logic/handleProcess");
27
27
  var handleModule = (module2, config) => {
28
28
  var _a, _b, _c;
29
29
  const { events, moduleId, props } = module2;
@@ -54,10 +54,10 @@ var handleModule = (module2, config) => {
54
54
  if (process.includes("pageParams")) {
55
55
  config.addParentDependencyImport({
56
56
  packageName: config.getComponentPackageName(),
57
- dependencyNames: ["page"],
57
+ dependencyNames: ["page", "SUBJECT_VALUE"],
58
58
  importType: "named"
59
59
  });
60
- process = (0, import_utils.indentation)(config.codeStyle.indent * (config.depth + 2)) + `const pageParams: any = page.getParams("${config.getCurrentScene().id}");
60
+ process = (0, import_utils.indentation)(config.codeStyle.indent * (config.depth + 2)) + `const pageParams: any = page.getParams("${config.getCurrentScene().id}")[SUBJECT_VALUE];
61
61
  ` + process;
62
62
  }
63
63
  comEventCode += `${indent}${eventId}: (${defaultValue}: any) => {
@@ -1,5 +1,5 @@
1
1
  import { ImportManager } from "./utils";
2
- import { RenderManager } from "./utils/code/renderManager";
2
+ import { RenderManager } from "./utils/templates/renderManager";
3
3
  import type { UI, BaseConfig } from "./toCodeTaro";
4
4
  interface HandleSlotConfig extends BaseConfig {
5
5
  addParentDependencyImport?: (typeof ImportManager)["prototype"]["addImport"];
@@ -7,14 +7,9 @@ interface HandleSlotConfig extends BaseConfig {
7
7
  addConsumer?: (provider: ReturnType<BaseConfig["getCurrentProvider"]>) => void;
8
8
  checkIsRoot: () => boolean;
9
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;
10
+ addJSModule?: (module: any) => void;
11
+ isPopup?: boolean;
12
+ hasPopups?: boolean;
18
13
  }
19
14
  declare const handleSlot: (ui: UI, config: HandleSlotConfig) => {
20
15
  js: string;