@mybricks/to-code-taro 1.2.7 → 1.2.8

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 (229) hide show
  1. package/package.json +1 -1
  2. package/dist/cjs/abstractEventTypeDef.d.ts +0 -11
  3. package/dist/cjs/abstractEventTypeDef.js +0 -93
  4. package/dist/cjs/generate/compressImages.d.ts +0 -16
  5. package/dist/cjs/generate/compressImages.js +0 -76
  6. package/dist/cjs/generate/generateTaroProjectJson.d.ts +0 -13
  7. package/dist/cjs/generate/generateTaroProjectJson.js +0 -225
  8. package/dist/cjs/generate/generateTaroTempalteJson.d.ts +0 -15
  9. package/dist/cjs/generate/generateTaroTempalteJson.js +0 -103
  10. package/dist/cjs/generate/utils/appConfig.d.ts +0 -21
  11. package/dist/cjs/generate/utils/appConfig.js +0 -57
  12. package/dist/cjs/generate/utils/commonDir.d.ts +0 -21
  13. package/dist/cjs/generate/utils/commonDir.js +0 -63
  14. package/dist/cjs/generate/utils/customTabBar.d.ts +0 -11
  15. package/dist/cjs/generate/utils/customTabBar.js +0 -73
  16. package/dist/cjs/generate/utils/fileNode.d.ts +0 -21
  17. package/dist/cjs/generate/utils/fileNode.js +0 -67
  18. package/dist/cjs/generate/utils/index.d.ts +0 -7
  19. package/dist/cjs/generate/utils/index.js +0 -29
  20. package/dist/cjs/generate/utils/pageImages.d.ts +0 -14
  21. package/dist/cjs/generate/utils/pageImages.js +0 -36
  22. package/dist/cjs/generate/utils/tabBarImages.d.ts +0 -14
  23. package/dist/cjs/generate/utils/tabBarImages.js +0 -36
  24. package/dist/cjs/handleCom.d.ts +0 -8
  25. package/dist/cjs/handleCom.js +0 -280
  26. package/dist/cjs/handleDom.d.ts +0 -21
  27. package/dist/cjs/handleDom.js +0 -52
  28. package/dist/cjs/handleExtension.d.ts +0 -10
  29. package/dist/cjs/handleExtension.js +0 -300
  30. package/dist/cjs/handleGlobal.d.ts +0 -11
  31. package/dist/cjs/handleGlobal.js +0 -191
  32. package/dist/cjs/handleModule.d.ts +0 -15
  33. package/dist/cjs/handleModule.js +0 -104
  34. package/dist/cjs/handleSlot.d.ts +0 -29
  35. package/dist/cjs/handleSlot.js +0 -153
  36. package/dist/cjs/index.d.ts +0 -4
  37. package/dist/cjs/index.js +0 -48
  38. package/dist/cjs/processors/processComEvents.d.ts +0 -9
  39. package/dist/cjs/processors/processComEvents.js +0 -163
  40. package/dist/cjs/processors/processModule.d.ts +0 -31
  41. package/dist/cjs/processors/processModule.js +0 -159
  42. package/dist/cjs/processors/processScene.d.ts +0 -32
  43. package/dist/cjs/processors/processScene.js +0 -198
  44. package/dist/cjs/processors/processSceneLogic.d.ts +0 -7
  45. package/dist/cjs/processors/processSceneLogic.js +0 -230
  46. package/dist/cjs/shims-taro.d.ts +0 -20
  47. package/dist/cjs/taro-template.json +0 -154
  48. package/dist/cjs/toCodeTaro.d.ts +0 -168
  49. package/dist/cjs/toCodeTaro.js +0 -326
  50. package/dist/cjs/utils/builder/buildResult.d.ts +0 -24
  51. package/dist/cjs/utils/builder/buildResult.js +0 -163
  52. package/dist/cjs/utils/common/ImportManager.d.ts +0 -26
  53. package/dist/cjs/utils/common/ImportManager.js +0 -123
  54. package/dist/cjs/utils/common/helper.d.ts +0 -12
  55. package/dist/cjs/utils/common/helper.js +0 -52
  56. package/dist/cjs/utils/common/object.d.ts +0 -5
  57. package/dist/cjs/utils/common/object.js +0 -58
  58. package/dist/cjs/utils/common/string.d.ts +0 -18
  59. package/dist/cjs/utils/common/string.js +0 -59
  60. package/dist/cjs/utils/config/content/converter.d.ts +0 -17
  61. package/dist/cjs/utils/config/content/converter.js +0 -84
  62. package/dist/cjs/utils/config/content/index.d.ts +0 -10
  63. package/dist/cjs/utils/config/content/index.js +0 -33
  64. package/dist/cjs/utils/config/content/pageConfig.d.ts +0 -10
  65. package/dist/cjs/utils/config/content/pageConfig.js +0 -80
  66. package/dist/cjs/utils/config/content/saveBase64Image.d.ts +0 -24
  67. package/dist/cjs/utils/config/content/saveBase64Image.js +0 -113
  68. package/dist/cjs/utils/config/content/tabBarConfig.d.ts +0 -28
  69. package/dist/cjs/utils/config/content/tabBarConfig.js +0 -74
  70. package/dist/cjs/utils/config/content/types.d.ts +0 -73
  71. package/dist/cjs/utils/config/content/types.js +0 -17
  72. package/dist/cjs/utils/config/content/validator.d.ts +0 -13
  73. package/dist/cjs/utils/config/content/validator.js +0 -67
  74. package/dist/cjs/utils/config/handlePageConfig.d.ts +0 -31
  75. package/dist/cjs/utils/config/handlePageConfig.js +0 -88
  76. package/dist/cjs/utils/context/buildContext.d.ts +0 -31
  77. package/dist/cjs/utils/context/buildContext.js +0 -76
  78. package/dist/cjs/utils/context/buildFrameMap.d.ts +0 -16
  79. package/dist/cjs/utils/context/buildFrameMap.js +0 -106
  80. package/dist/cjs/utils/context/buildGlobalData.d.ts +0 -13
  81. package/dist/cjs/utils/context/buildGlobalData.js +0 -58
  82. package/dist/cjs/utils/context/collectJSModules.d.ts +0 -41
  83. package/dist/cjs/utils/context/collectJSModules.js +0 -93
  84. package/dist/cjs/utils/context/createEventQueries.d.ts +0 -45
  85. package/dist/cjs/utils/context/createEventQueries.js +0 -99
  86. package/dist/cjs/utils/context/createProvider.d.ts +0 -21
  87. package/dist/cjs/utils/context/createProvider.js +0 -49
  88. package/dist/cjs/utils/index.d.ts +0 -10
  89. package/dist/cjs/utils/index.js +0 -60
  90. package/dist/cjs/utils/logic/convertNamespace.d.ts +0 -11
  91. package/dist/cjs/utils/logic/convertNamespace.js +0 -43
  92. package/dist/cjs/utils/logic/genJSModules.d.ts +0 -16
  93. package/dist/cjs/utils/logic/genJSModules.js +0 -114
  94. package/dist/cjs/utils/logic/handleProcess.d.ts +0 -9
  95. package/dist/cjs/utils/logic/handleProcess.js +0 -462
  96. package/dist/cjs/utils/logic/processChildren.d.ts +0 -26
  97. package/dist/cjs/utils/logic/processChildren.js +0 -121
  98. package/dist/cjs/utils/style/color.d.ts +0 -4
  99. package/dist/cjs/utils/style/color.js +0 -45
  100. package/dist/cjs/utils/style/converter.d.ts +0 -7
  101. package/dist/cjs/utils/style/converter.js +0 -175
  102. package/dist/cjs/utils/style/getComponentClassName.d.ts +0 -16
  103. package/dist/cjs/utils/style/getComponentClassName.js +0 -47
  104. package/dist/cjs/utils/style/pxtransform.d.ts +0 -4
  105. package/dist/cjs/utils/style/pxtransform.js +0 -62
  106. package/dist/cjs/utils/style/types.d.ts +0 -23
  107. package/dist/cjs/utils/style/types.js +0 -17
  108. package/dist/cjs/utils/templates/component.d.ts +0 -19
  109. package/dist/cjs/utils/templates/component.js +0 -86
  110. package/dist/cjs/utils/templates/index.d.ts +0 -32
  111. package/dist/cjs/utils/templates/index.js +0 -116
  112. package/dist/cjs/utils/templates/renderManager.d.ts +0 -18
  113. package/dist/cjs/utils/templates/renderManager.js +0 -152
  114. package/dist/cjs/utils/templates/scene.d.ts +0 -23
  115. package/dist/cjs/utils/templates/scene.js +0 -113
  116. package/dist/esm/abstractEventTypeDef.d.ts +0 -11
  117. package/dist/esm/abstractEventTypeDef.js +0 -63
  118. package/dist/esm/generate/compressImages.d.ts +0 -16
  119. package/dist/esm/generate/compressImages.js +0 -108
  120. package/dist/esm/generate/generateTaroProjectJson.d.ts +0 -13
  121. package/dist/esm/generate/generateTaroProjectJson.js +0 -228
  122. package/dist/esm/generate/generateTaroTempalteJson.d.ts +0 -15
  123. package/dist/esm/generate/generateTaroTempalteJson.js +0 -94
  124. package/dist/esm/generate/utils/appConfig.d.ts +0 -21
  125. package/dist/esm/generate/utils/appConfig.js +0 -49
  126. package/dist/esm/generate/utils/commonDir.d.ts +0 -21
  127. package/dist/esm/generate/utils/commonDir.js +0 -53
  128. package/dist/esm/generate/utils/customTabBar.d.ts +0 -11
  129. package/dist/esm/generate/utils/customTabBar.js +0 -52
  130. package/dist/esm/generate/utils/fileNode.d.ts +0 -21
  131. package/dist/esm/generate/utils/fileNode.js +0 -62
  132. package/dist/esm/generate/utils/index.d.ts +0 -7
  133. package/dist/esm/generate/utils/index.js +0 -8
  134. package/dist/esm/generate/utils/pageImages.d.ts +0 -14
  135. package/dist/esm/generate/utils/pageImages.js +0 -15
  136. package/dist/esm/generate/utils/tabBarImages.d.ts +0 -14
  137. package/dist/esm/generate/utils/tabBarImages.js +0 -15
  138. package/dist/esm/handleCom.d.ts +0 -8
  139. package/dist/esm/handleCom.js +0 -350
  140. package/dist/esm/handleDom.d.ts +0 -21
  141. package/dist/esm/handleDom.js +0 -26
  142. package/dist/esm/handleExtension.d.ts +0 -10
  143. package/dist/esm/handleExtension.js +0 -243
  144. package/dist/esm/handleGlobal.d.ts +0 -11
  145. package/dist/esm/handleGlobal.js +0 -157
  146. package/dist/esm/handleModule.d.ts +0 -15
  147. package/dist/esm/handleModule.js +0 -73
  148. package/dist/esm/handleSlot.d.ts +0 -29
  149. package/dist/esm/handleSlot.js +0 -215
  150. package/dist/esm/index.d.ts +0 -4
  151. package/dist/esm/index.js +0 -4
  152. package/dist/esm/processors/processComEvents.d.ts +0 -9
  153. package/dist/esm/processors/processComEvents.js +0 -170
  154. package/dist/esm/processors/processModule.d.ts +0 -31
  155. package/dist/esm/processors/processModule.js +0 -177
  156. package/dist/esm/processors/processScene.d.ts +0 -32
  157. package/dist/esm/processors/processScene.js +0 -234
  158. package/dist/esm/processors/processSceneLogic.d.ts +0 -7
  159. package/dist/esm/processors/processSceneLogic.js +0 -247
  160. package/dist/esm/shims-taro.d.ts +0 -20
  161. package/dist/esm/taro-template.json +0 -154
  162. package/dist/esm/toCodeTaro.d.ts +0 -168
  163. package/dist/esm/toCodeTaro.js +0 -367
  164. package/dist/esm/utils/builder/buildResult.d.ts +0 -24
  165. package/dist/esm/utils/builder/buildResult.js +0 -119
  166. package/dist/esm/utils/common/ImportManager.d.ts +0 -26
  167. package/dist/esm/utils/common/ImportManager.js +0 -131
  168. package/dist/esm/utils/common/helper.d.ts +0 -12
  169. package/dist/esm/utils/common/helper.js +0 -33
  170. package/dist/esm/utils/common/object.d.ts +0 -5
  171. package/dist/esm/utils/common/object.js +0 -32
  172. package/dist/esm/utils/common/string.d.ts +0 -18
  173. package/dist/esm/utils/common/string.js +0 -37
  174. package/dist/esm/utils/config/content/converter.d.ts +0 -17
  175. package/dist/esm/utils/config/content/converter.js +0 -106
  176. package/dist/esm/utils/config/content/index.d.ts +0 -10
  177. package/dist/esm/utils/config/content/index.js +0 -11
  178. package/dist/esm/utils/config/content/pageConfig.d.ts +0 -10
  179. package/dist/esm/utils/config/content/pageConfig.js +0 -43
  180. package/dist/esm/utils/config/content/saveBase64Image.d.ts +0 -24
  181. package/dist/esm/utils/config/content/saveBase64Image.js +0 -127
  182. package/dist/esm/utils/config/content/tabBarConfig.d.ts +0 -28
  183. package/dist/esm/utils/config/content/tabBarConfig.js +0 -89
  184. package/dist/esm/utils/config/content/types.d.ts +0 -73
  185. package/dist/esm/utils/config/content/types.js +0 -1
  186. package/dist/esm/utils/config/content/validator.d.ts +0 -13
  187. package/dist/esm/utils/config/content/validator.js +0 -64
  188. package/dist/esm/utils/config/handlePageConfig.d.ts +0 -31
  189. package/dist/esm/utils/config/handlePageConfig.js +0 -89
  190. package/dist/esm/utils/context/buildContext.d.ts +0 -31
  191. package/dist/esm/utils/context/buildContext.js +0 -65
  192. package/dist/esm/utils/context/buildFrameMap.d.ts +0 -16
  193. package/dist/esm/utils/context/buildFrameMap.js +0 -131
  194. package/dist/esm/utils/context/buildGlobalData.d.ts +0 -13
  195. package/dist/esm/utils/context/buildGlobalData.js +0 -44
  196. package/dist/esm/utils/context/collectJSModules.d.ts +0 -41
  197. package/dist/esm/utils/context/collectJSModules.js +0 -87
  198. package/dist/esm/utils/context/createEventQueries.d.ts +0 -45
  199. package/dist/esm/utils/context/createEventQueries.js +0 -99
  200. package/dist/esm/utils/context/createProvider.d.ts +0 -21
  201. package/dist/esm/utils/context/createProvider.js +0 -33
  202. package/dist/esm/utils/index.d.ts +0 -10
  203. package/dist/esm/utils/index.js +0 -12
  204. package/dist/esm/utils/logic/convertNamespace.d.ts +0 -11
  205. package/dist/esm/utils/logic/convertNamespace.js +0 -27
  206. package/dist/esm/utils/logic/genJSModules.d.ts +0 -16
  207. package/dist/esm/utils/logic/genJSModules.js +0 -33
  208. package/dist/esm/utils/logic/handleProcess.d.ts +0 -9
  209. package/dist/esm/utils/logic/handleProcess.js +0 -520
  210. package/dist/esm/utils/logic/processChildren.d.ts +0 -26
  211. package/dist/esm/utils/logic/processChildren.js +0 -101
  212. package/dist/esm/utils/style/color.d.ts +0 -4
  213. package/dist/esm/utils/style/color.js +0 -17
  214. package/dist/esm/utils/style/converter.d.ts +0 -7
  215. package/dist/esm/utils/style/converter.js +0 -175
  216. package/dist/esm/utils/style/getComponentClassName.d.ts +0 -16
  217. package/dist/esm/utils/style/getComponentClassName.js +0 -37
  218. package/dist/esm/utils/style/pxtransform.d.ts +0 -4
  219. package/dist/esm/utils/style/pxtransform.js +0 -54
  220. package/dist/esm/utils/style/types.d.ts +0 -23
  221. package/dist/esm/utils/style/types.js +0 -1
  222. package/dist/esm/utils/templates/component.d.ts +0 -19
  223. package/dist/esm/utils/templates/component.js +0 -55
  224. package/dist/esm/utils/templates/index.d.ts +0 -32
  225. package/dist/esm/utils/templates/index.js +0 -97
  226. package/dist/esm/utils/templates/renderManager.d.ts +0 -18
  227. package/dist/esm/utils/templates/renderManager.js +0 -145
  228. package/dist/esm/utils/templates/scene.d.ts +0 -23
  229. package/dist/esm/utils/templates/scene.js +0 -66
@@ -1,15 +0,0 @@
1
- /**
2
- * 页面图片文件处理工具
3
- */
4
-
5
- /**
6
- * 处理页面 base64 图片文件
7
- */
8
- export function handlePageImages(assetsDir, imageFiles) {
9
- imageFiles.forEach(function (imageFile) {
10
- assetsDir.children.push({
11
- path: imageFile.filePath,
12
- content: imageFile.fileContent.toString('base64')
13
- });
14
- });
15
- }
@@ -1,14 +0,0 @@
1
- /**
2
- * TabBar 图片文件处理工具
3
- */
4
- import type { ImageFileInfo } from '../../utils/config/content';
5
- interface FileNode {
6
- path: string;
7
- content: string | null;
8
- children?: FileNode[];
9
- }
10
- /**
11
- * 处理 TabBar 图片文件
12
- */
13
- export declare function handleTabBarImages(tabbarDir: FileNode, imageFiles: ImageFileInfo[]): void;
14
- export {};
@@ -1,15 +0,0 @@
1
- /**
2
- * TabBar 图片文件处理工具
3
- */
4
-
5
- /**
6
- * 处理 TabBar 图片文件
7
- */
8
- export function handleTabBarImages(tabbarDir, imageFiles) {
9
- imageFiles.forEach(function (imageFile) {
10
- tabbarDir.children.push({
11
- path: imageFile.filePath,
12
- content: imageFile.fileContent.toString('base64')
13
- });
14
- });
15
- }
@@ -1,8 +0,0 @@
1
- export type Com = any;
2
- export type HandleComConfig = any;
3
- export type HandleComResult = any;
4
- /**
5
- * 处理组件
6
- */
7
- export declare const handleCom: (com: Com, config: HandleComConfig) => HandleComResult;
8
- export default handleCom;
@@ -1,350 +0,0 @@
1
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
- import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
- import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
4
- /* eslint-disable @typescript-eslint/no-explicit-any */
5
- import { convertComponentStyle, convertStyleAryToCss } from "./utils/style/converter";
6
- import { indentation, firstCharToUpperCase, getUiComponentCode } from "./utils/templates/index";
7
- import { genSlotRenderRef } from "./utils/templates/component";
8
- import { RenderManager } from "./utils/templates/renderManager";
9
- import handleSlot from "./handleSlot";
10
- import handleDom from "./handleDom";
11
- import { processComEvents } from "./processors/processComEvents";
12
- import { handleProcess } from "./utils/logic/handleProcess";
13
- /**
14
- * 组件协议配置(参考鸿蒙规范)
15
- * - useWrap: 是否支持容器协议(如 Form 容器需要 metadata 包装)
16
- */
17
- var COM_PROTOCOL = {
18
- "mybricks.taro.formContainer": {
19
- useWrap: true
20
- }
21
- // 移除 FormAdditionContainer 的配置,因为它的 runtime 没有传递 wrap 函数
22
- // "mybricks.taro.formAdditionContainer": { useWrap: true },
23
- };
24
-
25
- /**
26
- * 处理组件
27
- */
28
- export var handleCom = function handleCom(com, config) {
29
- var meta = com.meta,
30
- props = com.props;
31
- var namespace = meta.def.namespace;
32
-
33
- // 鸿蒙规范:确保组件具有稳定的 DSL 名称(用于容器识别)
34
- if (!meta.name && config.getDslComNameById) {
35
- meta.name = config.getDslComNameById(meta.id);
36
- }
37
-
38
- // 1. 如果是 JS 计算组件
39
- if (namespace === "mybricks.core-comlib.js-calculation") {
40
- return handleJsCalculation(com, config);
41
- }
42
-
43
- // 2. 准备组件元数据
44
- var _prepareComponent = prepareComponent(com, config),
45
- componentName = _prepareComponent.componentName,
46
- eventHandlers = _prepareComponent.eventHandlers,
47
- comEventCode = _prepareComponent.comEventCode;
48
-
49
- // 3. 准备样式
50
- var _prepareStyles = prepareStyles(com),
51
- cssContent = _prepareStyles.cssContent,
52
- rootStyle = _prepareStyles.rootStyle;
53
- var accumulatedCssContent = cssContent;
54
-
55
- // 鸿蒙化:如果存在内置子节点(child),确保容器为 relative,以便内部绝对定位生效
56
- if (com.child) {
57
- rootStyle.position = "relative";
58
- }
59
-
60
- // 4. 处理插槽
61
- var _processComSlots = processComSlots(com, config, accumulatedCssContent),
62
- slotsCode = _processComSlots.slotsCode,
63
- slotCss = _processComSlots.accumulatedCssContent,
64
- eventCode = _processComSlots.eventCode,
65
- childrenResults = _processComSlots.childrenResults;
66
- accumulatedCssContent = slotCss;
67
-
68
- // 5. 处理组件内置子节点 (child 属性,常用于自由布局中的绝对定位包装层)
69
- var childrenUi = "";
70
- if (com.child) {
71
- var childResult = handleDom(com.child, _objectSpread(_objectSpread({}, config), {}, {
72
- depth: config.depth + 1
73
- }));
74
- childrenUi = childResult.ui;
75
- if (childResult.cssContent) {
76
- accumulatedCssContent += (accumulatedCssContent ? "\n" : "") + childResult.cssContent;
77
- }
78
- }
79
-
80
- // 6. 生成 UI 代码 (支持嵌套子节点)
81
- var ui = generateUiCode(com, config, componentName, rootStyle, comEventCode, slotsCode, eventHandlers, childrenUi);
82
- var hasEvents = Object.keys(eventHandlers).length > 0;
83
- return {
84
- slots: [],
85
- scopeSlots: [],
86
- ui: ui,
87
- js: eventCode,
88
- cssContent: accumulatedCssContent,
89
- outputsConfig: hasEvents ? _defineProperty({}, meta.id, eventHandlers) : undefined,
90
- childrenResults: childrenResults,
91
- name: meta.name,
92
- // 返回解析后的稳定名称
93
- rootStyle: rootStyle // 返回转换后的根样式
94
- };
95
- };
96
-
97
- /**
98
- * 准备组件注册与事件
99
- */
100
- var prepareComponent = function prepareComponent(com, config) {
101
- var meta = com.meta;
102
- var _config$getComponentM = config.getComponentMeta(meta),
103
- importInfo = _config$getComponentM.importInfo,
104
- callName = _config$getComponentM.callName;
105
- var componentName = firstCharToUpperCase(callName || importInfo.name);
106
- var importName = firstCharToUpperCase(importInfo.name);
107
- config.addParentDependencyImport({
108
- packageName: importInfo.from,
109
- dependencyNames: [importName],
110
- importType: importInfo.type
111
- });
112
- var currentProvider = config.getCurrentProvider();
113
- currentProvider.coms.add(meta.id);
114
- currentProvider.controllers.add(meta.id);
115
- var _processComEvents = processComEvents(com, config),
116
- comEventCode = _processComEvents.comEventCode,
117
- outputsConfig = _processComEvents.outputsConfig;
118
- return {
119
- componentName: componentName,
120
- eventHandlers: outputsConfig[meta.id] || {},
121
- comEventCode: comEventCode
122
- };
123
- };
124
-
125
- /**
126
- * 准备样式转换
127
- */
128
- var prepareStyles = function prepareStyles(com) {
129
- var _props$style;
130
- var meta = com.meta,
131
- props = com.props;
132
- var resultStyle = convertComponentStyle(props.style || {});
133
- var cssContent = convertStyleAryToCss((_props$style = props.style) === null || _props$style === void 0 ? void 0 : _props$style.styleAry, meta.id);
134
- return {
135
- cssContent: cssContent,
136
- rootStyle: resultStyle.root || {}
137
- };
138
- };
139
-
140
- /**
141
- * 处理组件内的所有插槽
142
- */
143
- var processComSlots = function processComSlots(com, config, initialCss) {
144
- var meta = com.meta,
145
- props = com.props,
146
- slots = com.slots;
147
- var slotsCode = "";
148
- var accumulatedCssContent = initialCss;
149
- var eventCode = "";
150
- var allChildrenResults = [];
151
- if (!slots) return {
152
- slotsCode: slotsCode,
153
- accumulatedCssContent: accumulatedCssContent,
154
- eventCode: eventCode,
155
- childrenResults: []
156
- };
157
- var renderManager = config.renderManager || new RenderManager();
158
- var slotEntries = Object.entries(slots);
159
- slotEntries.forEach(function (_ref2, index) {
160
- var _config$getEffectEven, _effectEvent$process, _effectEvent$process2, _com$props$data, _props$data, _COM_PROTOCOL$meta$de;
161
- var _ref3 = _slicedToArray(_ref2, 2),
162
- slotId = _ref3[0],
163
- slot = _ref3[1];
164
- var children = slot.comAry || slot.children || [];
165
- var isLast = index === slotEntries.length - 1;
166
- var slotIndent = indentation(config.codeStyle.indent * (config.depth + 2));
167
-
168
- // 检查是否有插槽级别的 effectEvent(即使 children 为空也可能有逻辑代码)
169
- var effectEvent = (_config$getEffectEven = config.getEffectEvent) === null || _config$getEffectEven === void 0 ? void 0 : _config$getEffectEven.call(config, {
170
- comId: meta.id,
171
- slotId: slotId
172
- });
173
- var hasSlotLogic = effectEvent && (((_effectEvent$process = effectEvent.process) === null || _effectEvent$process === void 0 || (_effectEvent$process = _effectEvent$process.nodesDeclaration) === null || _effectEvent$process === void 0 ? void 0 : _effectEvent$process.length) > 0 || ((_effectEvent$process2 = effectEvent.process) === null || _effectEvent$process2 === void 0 || (_effectEvent$process2 = _effectEvent$process2.nodesInvocation) === null || _effectEvent$process2 === void 0 ? void 0 : _effectEvent$process2.length) > 0);
174
-
175
- // 如果插槽内没有组件且没有逻辑代码,直接渲染空
176
- if (children.length === 0 && !hasSlotLogic) {
177
- slotsCode += "".concat(slotIndent).concat(slotId, ": {\n").concat(slotIndent, " render: () => null\n").concat(slotIndent, "}").concat(isLast ? '' : ',', "\n");
178
- return;
179
- }
180
- var slotLayout = (_com$props$data = com.props.data) === null || _com$props$data === void 0 ? void 0 : _com$props$data.layout;
181
- var result = handleSlot(slot, _objectSpread(_objectSpread({}, config), {}, {
182
- checkIsRoot: function checkIsRoot() {
183
- return false;
184
- },
185
- depth: 1,
186
- renderManager: renderManager,
187
- slotKey: slotId,
188
- // 给 slot 根容器打标用(slot wrapper className)
189
- parentComId: meta.id,
190
- // 鸿蒙化:传递父容器的布局配置给插槽
191
- layout: slotLayout
192
- }));
193
- eventCode += result.js;
194
- if (result.cssContent) {
195
- accumulatedCssContent += (accumulatedCssContent ? "\n" : "") + result.cssContent;
196
- }
197
- var renderId = slotEntries.length > 1 ? "".concat(meta.id, "_").concat(slotId) : meta.id;
198
-
199
- // 关键:不再预先 formatSlotContent,而是将原始 ui 传给 renderManager
200
- // 这样 RenderManager 在内部进行精确字符串替换时才能匹配成功
201
- var rawContent = result.ui;
202
-
203
- // 鸿蒙化处理:针对表单容器进行别名对齐
204
- if (meta.def.namespace === "mybricks.taro.formContainer" && Array.isArray((_props$data = props.data) === null || _props$data === void 0 ? void 0 : _props$data.items) && result.directChildren) {
205
- var _props$data2;
206
- var items = (_props$data2 = props.data) === null || _props$data2 === void 0 ? void 0 : _props$data2.items;
207
- result.directChildren.forEach(function (childRes) {
208
- var itemConfig = items.find(function (it) {
209
- return it.id === childRes.id;
210
- });
211
- if (itemConfig !== null && itemConfig !== void 0 && itemConfig.comName) {
212
- childRes.name = itemConfig.comName;
213
- }
214
- });
215
- }
216
-
217
- // 插槽驱动逻辑(用户侧可读的最小版):
218
- // - 直连:params.inputValues -> 子组件 inputs
219
- // - js-autorun:执行一次 jsModules,并把 outputs 路由到下游 inputs
220
- var logicCode = buildSlotLogicCode({
221
- parentComId: meta.id,
222
- slotKey: slotId,
223
- children: result.directChildren,
224
- config: config
225
- });
226
-
227
- // 生成插槽描述注释内容
228
- var description = "".concat(meta.title || meta.id, "\u7684").concat(slot.title || slotId, "\u63D2\u69FD");
229
- renderManager.register(renderId, rawContent, result.directChildren,
230
- // 仅传入直接子组件,避免递归替换导致的结构破坏
231
- logicCode, slot.type, slot.wrap || slot.itemWrap || ((_COM_PROTOCOL$meta$de = COM_PROTOCOL[meta.def.namespace]) === null || _COM_PROTOCOL$meta$de === void 0 ? void 0 : _COM_PROTOCOL$meta$de.useWrap), description);
232
- if (result.childrenResults) {
233
- allChildrenResults = allChildrenResults.concat(result.childrenResults);
234
- }
235
- slotsCode += genSlotRenderRef({
236
- slotId: slotId,
237
- renderId: renderId,
238
- indent: slotIndent,
239
- isLast: isLast
240
- });
241
- });
242
- return {
243
- slotsCode: slotsCode,
244
- accumulatedCssContent: accumulatedCssContent,
245
- eventCode: eventCode,
246
- childrenResults: allChildrenResults
247
- };
248
- };
249
-
250
- /**
251
- * 生成插槽内部的驱动逻辑 (useEffect 监听 inputValues 并调用子组件 inputs)
252
- */
253
- var buildSlotLogicCode = function buildSlotLogicCode(args) {
254
- var _config$getEffectEven2;
255
- var parentComId = args.parentComId,
256
- slotKey = args.slotKey,
257
- config = args.config;
258
- var indent = indentation(2);
259
- var indent2 = indentation(4);
260
-
261
- // 更直接:用 to-code-react 已经解析好的“effect event”(底层来自 diagrams[].conAry)
262
- // buildSlotLogicCode 只负责包一层 useEffect,不再自己扫描/猜测 cons/pinValueProxies
263
- var effectEvent = (_config$getEffectEven2 = config.getEffectEvent) === null || _config$getEffectEven2 === void 0 ? void 0 : _config$getEffectEven2.call(config, {
264
- comId: parentComId,
265
- slotId: slotKey
266
- });
267
- if (!effectEvent) return "";
268
-
269
- // 任意 slot 入参都映射到 params.inputValues[pinId]
270
- var paramsProxy = new Proxy({}, {
271
- get: function get(_t, key) {
272
- return "params?.inputValues?.['".concat(String(key), "']");
273
- }
274
- });
275
- var process = handleProcess(effectEvent, _objectSpread(_objectSpread({}, config), {}, {
276
- target: "comRefs.current",
277
- depth: 3,
278
- addParentDependencyImport: config.addParentDependencyImport,
279
- addConsumer: config.addConsumer,
280
- getParams: function getParams() {
281
- return paramsProxy;
282
- }
283
- })).replace(/this\.\$vars\./g, "$vars.current.").replace(/this\.\$fxs\./g, "$fxs.current.").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.");
284
- if (!process.trim()) return "";
285
- var code = "".concat(indent, "useEffect(() => {\n");
286
- code += "".concat(indent2, "if (!params?.inputValues) return;\n");
287
- code += "".concat(process, "\n");
288
- code += "".concat(indent, "}, [params?.inputValues]);\n");
289
- return code;
290
- };
291
-
292
- /**
293
- * 生成 UI 代码
294
- */
295
- var generateUiCode = function generateUiCode(com, config, componentName, rootStyle, comEventCode, slotsCode, eventHandlers, childrenUi) {
296
- var _scene$coms, _sceneCom$inputs, _sceneCom$outputs, _meta$outputs;
297
- var meta = com.meta,
298
- props = com.props;
299
- var scene = config.getCurrentScene();
300
- var sceneCom = (_scene$coms = scene.coms) === null || _scene$coms === void 0 ? void 0 : _scene$coms[meta.id];
301
- return getUiComponentCode({
302
- componentName: componentName,
303
- meta: meta,
304
- props: props,
305
- resultStyle: {
306
- root: rootStyle
307
- },
308
- componentInputs: ((sceneCom === null || sceneCom === void 0 || (_sceneCom$inputs = sceneCom.inputs) === null || _sceneCom$inputs === void 0 ? void 0 : _sceneCom$inputs.length) || 0) > 0 ? sceneCom.inputs : undefined,
309
- componentOutputs: ((sceneCom === null || sceneCom === void 0 || (_sceneCom$outputs = sceneCom.outputs) === null || _sceneCom$outputs === void 0 ? void 0 : _sceneCom$outputs.length) || 0) > 0 ? sceneCom.outputs : (((_meta$outputs = meta.outputs) === null || _meta$outputs === void 0 ? void 0 : _meta$outputs.length) || 0) > 0 ? meta.outputs : undefined,
310
- comEventCode: comEventCode,
311
- slotsCode: slotsCode,
312
- eventHandlers: eventHandlers,
313
- childrenUi: childrenUi
314
- }, {
315
- codeStyle: config.codeStyle,
316
- depth: config.depth + 1,
317
- verbose: config.verbose,
318
- checkIsRoot: config.checkIsRoot
319
- });
320
- };
321
-
322
- /**
323
- * JS 计算组件专用处理
324
- */
325
- var handleJsCalculation = function handleJsCalculation(com, config) {
326
- var _props$data3, _props$data4, _props$data5;
327
- var meta = com.meta,
328
- props = com.props;
329
- var transformCode = ((_props$data3 = props.data) === null || _props$data3 === void 0 || (_props$data3 = _props$data3.fns) === null || _props$data3 === void 0 ? void 0 : _props$data3.code) || ((_props$data4 = props.data) === null || _props$data4 === void 0 || (_props$data4 = _props$data4.fns) === null || _props$data4 === void 0 ? void 0 : _props$data4.transformCode) || ((_props$data5 = props.data) === null || _props$data5 === void 0 ? void 0 : _props$data5.fns);
330
- if (transformCode && config.addJSModule) {
331
- var _meta$model, _meta$model2;
332
- config.addJSModule({
333
- id: meta.id,
334
- title: meta.title || "JS计算",
335
- transformCode: typeof transformCode === "string" ? transformCode : "",
336
- inputs: ((_meta$model = meta.model) === null || _meta$model === void 0 ? void 0 : _meta$model.inputs) || [],
337
- outputs: ((_meta$model2 = meta.model) === null || _meta$model2 === void 0 ? void 0 : _meta$model2.outputs) || [],
338
- data: props.data || {}
339
- });
340
- }
341
- return {
342
- slots: [],
343
- scopeSlots: [],
344
- ui: "",
345
- js: "",
346
- cssContent: "",
347
- outputsConfig: undefined
348
- };
349
- };
350
- export default handleCom;
@@ -1,21 +0,0 @@
1
- import type { UI, BaseConfig } from "./toCodeTaro";
2
- import { ImportManager } from "./utils";
3
- type Dom = Extract<UI["children"][0], {
4
- type: "dom";
5
- }>;
6
- interface HandleDomConfig extends BaseConfig {
7
- addParentDependencyImport: (typeof ImportManager)["prototype"]["addImport"];
8
- addConsumer: (provider: ReturnType<BaseConfig["getCurrentProvider"]>) => void;
9
- addComId: (comId: string) => void;
10
- }
11
- type HandleDomResult = {
12
- ui: string;
13
- js: string;
14
- slots: string[];
15
- scopeSlots: string[];
16
- cssContent: string;
17
- directChildren?: any[];
18
- childrenResults?: any[];
19
- };
20
- declare const handleDom: (dom: Dom, config: HandleDomConfig) => HandleDomResult;
21
- export default handleDom;
@@ -1,26 +0,0 @@
1
- import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
- import { indentation, convertStyleAryToCss, convertRootStyle } from "./utils";
3
- import { normalizeChildren, processChildren } from "./utils/logic/processChildren";
4
- var handleDom = function handleDom(dom, config) {
5
- var _domProps$style;
6
- var props = dom.props;
7
- var domProps = props;
8
- var children = normalizeChildren(dom);
9
- var childResults = processChildren(children, _objectSpread(_objectSpread({}, config), {}, {
10
- depth: config.depth + 1
11
- }));
12
- var cssContent = (convertStyleAryToCss((_domProps$style = domProps.style) === null || _domProps$style === void 0 ? void 0 : _domProps$style.styleAry, domProps.id) || "") + (childResults.cssContent ? "\n" + childResults.cssContent : "");
13
- var indent = indentation(config.codeStyle.indent * config.depth);
14
- var styleCode = JSON.stringify(convertRootStyle(domProps.style));
15
- var ui = "".concat(indent, "<View").concat(domProps.id ? " id=\"".concat(domProps.id, "\" className=\"").concat(domProps.id, "\"") : "", " style={").concat(styleCode, "}>\n").concat(childResults.ui, "\n").concat(indent, "</View>");
16
- return {
17
- ui: ui,
18
- js: childResults.js,
19
- slots: childResults.slots,
20
- scopeSlots: childResults.scopeSlots,
21
- cssContent: cssContent,
22
- directChildren: childResults.directChildren,
23
- childrenResults: childResults.childrenResults
24
- };
25
- };
26
- export default handleDom;
@@ -1,10 +0,0 @@
1
- /**
2
- * 处理Extension事件卡片
3
- */
4
- import type { ToTaroCodeConfig, GeneratedFile } from "./toCodeTaro";
5
- interface HandleExtensionParams {
6
- tojson: any;
7
- extensionEvents: any[];
8
- }
9
- declare const handleExtension: (params: HandleExtensionParams, config: ToTaroCodeConfig) => GeneratedFile[];
10
- export default handleExtension;