@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
@@ -0,0 +1,181 @@
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/utils/style/converter.ts
30
+ var converter_exports = {};
31
+ __export(converter_exports, {
32
+ convertComponentStyle: () => convertComponentStyle,
33
+ convertRootStyle: () => convertRootStyle,
34
+ convertStyleAryToCss: () => convertStyleAryToCss
35
+ });
36
+ module.exports = __toCommonJS(converter_exports);
37
+ var import_pxtransform = __toESM(require("./pxtransform"));
38
+ var import_string = require("../common/string");
39
+ var convertRootStyle = (style) => {
40
+ const rootStyle = {};
41
+ Object.entries(style || {}).forEach(([key, value]) => {
42
+ if (key === "_new" || key === "themesId" || key === "visibility" || key === "styleAry") {
43
+ return;
44
+ }
45
+ if (key === "layout") {
46
+ if (typeof value === "object" && value !== null) {
47
+ const layoutObj = value;
48
+ Object.entries(layoutObj).forEach(([lKey, lValue]) => {
49
+ if (lKey === "position") {
50
+ if (lValue === "smart") {
51
+ rootStyle["position"] = "absolute";
52
+ } else if (lValue !== "inherit") {
53
+ rootStyle["position"] = lValue;
54
+ }
55
+ } else {
56
+ const camelLayoutKey = (0, import_string.kebabToCamel)(lKey);
57
+ rootStyle[camelLayoutKey] = (0, import_pxtransform.default)(lValue);
58
+ }
59
+ });
60
+ } else if (value === "flex-row") {
61
+ rootStyle["display"] = "flex";
62
+ rootStyle["flexDirection"] = "row";
63
+ } else if (value === "flex-column") {
64
+ rootStyle["display"] = "flex";
65
+ rootStyle["flexDirection"] = "column";
66
+ } else if (value === "smart") {
67
+ rootStyle["position"] = "relative";
68
+ }
69
+ return;
70
+ }
71
+ const camelKey = key.includes("-") ? (0, import_string.kebabToCamel)(key) : key;
72
+ if (typeof value === "string" || typeof value === "number") {
73
+ rootStyle[camelKey] = (0, import_pxtransform.default)(value);
74
+ }
75
+ });
76
+ return rootStyle;
77
+ };
78
+ var convertComponentStyle = (style) => {
79
+ const resultStyle = {};
80
+ const rootStyle = convertRootStyle(style);
81
+ if (style.styleAry) {
82
+ style.styleAry.forEach(
83
+ ({
84
+ css,
85
+ selector
86
+ }) => {
87
+ const transformedCss = {};
88
+ Object.entries(css).forEach(([cssKey, cssValue]) => {
89
+ if (cssKey === "layout") {
90
+ if (typeof cssValue === "object" && cssValue !== null) {
91
+ const layoutObj = cssValue;
92
+ Object.entries(layoutObj).forEach(([lKey, lValue]) => {
93
+ if (lKey === "position") {
94
+ if (lValue === "smart") {
95
+ transformedCss["position"] = "absolute";
96
+ } else if (lValue !== "inherit") {
97
+ transformedCss["position"] = lValue;
98
+ }
99
+ } else {
100
+ transformedCss[(0, import_string.kebabToCamel)(lKey)] = lValue;
101
+ }
102
+ });
103
+ } else if (cssValue === "flex-row") {
104
+ transformedCss["display"] = "flex";
105
+ transformedCss["flexDirection"] = "row";
106
+ } else if (cssValue === "flex-column") {
107
+ transformedCss["display"] = "flex";
108
+ transformedCss["flexDirection"] = "column";
109
+ } else if (cssValue === "smart") {
110
+ transformedCss["position"] = "relative";
111
+ }
112
+ } else {
113
+ const camelKey = cssKey.includes("-") ? (0, import_string.kebabToCamel)(cssKey) : cssKey;
114
+ transformedCss[camelKey] = (0, import_pxtransform.default)(cssValue);
115
+ }
116
+ });
117
+ resultStyle[selector] = transformedCss;
118
+ }
119
+ );
120
+ }
121
+ resultStyle["root"] = rootStyle;
122
+ return resultStyle;
123
+ };
124
+ var convertStyleAryToCss = (styleAry, parentSelector) => {
125
+ if (!Array.isArray(styleAry))
126
+ return "";
127
+ const prefix = parentSelector ? `.${parentSelector} ` : "";
128
+ return styleAry.map(({ selector, css }) => {
129
+ if (!selector || !css)
130
+ return "";
131
+ let finalSelector = selector;
132
+ if (finalSelector.startsWith(">")) {
133
+ finalSelector = `${prefix}${finalSelector}`;
134
+ } else {
135
+ finalSelector = `${prefix}${finalSelector}`;
136
+ }
137
+ const transformedCss = {};
138
+ Object.entries(css).forEach(([key, value]) => {
139
+ if (key === "layout") {
140
+ if (typeof value === "object" && value !== null) {
141
+ const layoutObj = value;
142
+ Object.entries(layoutObj).forEach(([lKey, lValue]) => {
143
+ if (lKey === "position") {
144
+ if (lValue === "smart") {
145
+ transformedCss["position"] = "absolute";
146
+ } else if (lValue !== "inherit") {
147
+ transformedCss["position"] = lValue;
148
+ }
149
+ } else {
150
+ transformedCss[(0, import_string.kebabToCamel)(lKey)] = lValue;
151
+ }
152
+ });
153
+ } else if (value === "flex-row") {
154
+ transformedCss["display"] = "flex";
155
+ transformedCss["flexDirection"] = "row";
156
+ } else if (value === "flex-column") {
157
+ transformedCss["display"] = "flex";
158
+ transformedCss["flexDirection"] = "column";
159
+ } else if (value === "smart") {
160
+ transformedCss["position"] = "relative";
161
+ }
162
+ } else {
163
+ transformedCss[(0, import_string.kebabToCamel)(key)] = value;
164
+ }
165
+ });
166
+ const cssString = Object.entries(transformedCss).map(([key, value]) => {
167
+ const kebabKey = (0, import_string.camelToKebab)(key);
168
+ const formattedValue = typeof value === "number" ? `${value}px` : value;
169
+ return ` ${kebabKey}: ${formattedValue};`;
170
+ }).join("\n");
171
+ return `${finalSelector} {
172
+ ${cssString}
173
+ }`;
174
+ }).join("\n\n");
175
+ };
176
+ // Annotate the CommonJS export names for ESM import in node:
177
+ 0 && (module.exports = {
178
+ convertComponentStyle,
179
+ convertRootStyle,
180
+ convertStyleAryToCss
181
+ });
@@ -16,7 +16,7 @@ var __copyProps = (to, from, except, desc) => {
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
18
 
19
- // src/utils/getComponentClassName.ts
19
+ // src/utils/style/getComponentClassName.ts
20
20
  var getComponentClassName_exports = {};
21
21
  __export(getComponentClassName_exports, {
22
22
  getComponentClassName: () => getComponentClassName,
@@ -16,7 +16,7 @@ var __copyProps = (to, from, except, desc) => {
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
18
 
19
- // src/utils/pxtransform.ts
19
+ // src/utils/style/pxtransform.ts
20
20
  var pxtransform_exports = {};
21
21
  __export(pxtransform_exports, {
22
22
  MIN_PX_THRESHOLD: () => MIN_PX_THRESHOLD,
@@ -0,0 +1,23 @@
1
+ export interface Style {
2
+ layout?: "smart" | "flex-column" | "flex-row" | {
3
+ display?: string;
4
+ position?: string;
5
+ flexDirection?: string;
6
+ alignItems?: string;
7
+ justifyContent?: string;
8
+ flexWrap?: string;
9
+ rowGap?: number;
10
+ columnGap?: number;
11
+ };
12
+ width?: string | number;
13
+ height?: string | number;
14
+ styleAry?: Array<{
15
+ selector: string;
16
+ css: Record<string, any>;
17
+ }>;
18
+ slots?: Record<string, {
19
+ layout?: string | object;
20
+ [key: string]: any;
21
+ }>;
22
+ [key: string]: any;
23
+ }
@@ -12,6 +12,6 @@ var __copyProps = (to, from, except, desc) => {
12
12
  };
13
13
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
14
14
 
15
- // src/utils/pageConfig/types.ts
15
+ // src/utils/style/types.ts
16
16
  var types_exports = {};
17
17
  module.exports = __toCommonJS(types_exports);
@@ -16,7 +16,7 @@ var __copyProps = (to, from, except, desc) => {
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
18
 
19
- // src/utils/code/component.ts
19
+ // src/utils/templates/component.ts
20
20
  var component_exports = {};
21
21
  __export(component_exports, {
22
22
  formatSlotContent: () => formatSlotContent,
@@ -16,12 +16,12 @@ var __copyProps = (to, from, except, desc) => {
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
18
 
19
- // src/utils/code/index.ts
20
- var code_exports = {};
21
- __export(code_exports, {
19
+ // src/utils/templates/index.ts
20
+ var templates_exports = {};
21
+ __export(templates_exports, {
22
22
  getUiComponentCode: () => getUiComponentCode
23
23
  });
24
- module.exports = __toCommonJS(code_exports);
24
+ module.exports = __toCommonJS(templates_exports);
25
25
  var import__ = require("../index");
26
26
  var getUiComponentCode = (params, config) => {
27
27
  const {
@@ -16,7 +16,7 @@ var __copyProps = (to, from, except, desc) => {
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
18
 
19
- // src/utils/code/renderManager.ts
19
+ // src/utils/templates/renderManager.ts
20
20
  var renderManager_exports = {};
21
21
  __export(renderManager_exports, {
22
22
  RenderManager: () => RenderManager
@@ -7,13 +7,15 @@ export declare const genSlotDefineCode: (indent: string) => string;
7
7
  /** 生成控制器初始化代码 */
8
8
  export declare const genControllerInitCode: (indent: string, providerName: string) => string;
9
9
  /** 生成完整的函数组件模板 */
10
- export declare const genComponentTemplate: ({ componentName, combinedJsCode, uiResult, outputsConfig, scopeName, utilsPackageName, }: {
10
+ export declare const genComponentTemplate: ({ componentName, combinedJsCode, uiResult, outputsConfig, scopeName, utilsPackageName, isPopup, hasPopups, }: {
11
11
  componentName: string;
12
12
  combinedJsCode: string;
13
13
  uiResult: string;
14
14
  outputsConfig?: Record<string, Record<string, any>>;
15
15
  scopeName?: string;
16
16
  utilsPackageName?: string;
17
+ isPopup?: boolean;
18
+ hasPopups?: boolean;
17
19
  }) => string;
18
20
  /** 生成 useEffect 包装代码 */
19
21
  export declare const wrapInEffect: (indent: string, effectCode: string) => string;
@@ -16,7 +16,7 @@ var __copyProps = (to, from, except, desc) => {
16
16
  };
17
17
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
18
 
19
- // src/utils/code/scene.ts
19
+ // src/utils/templates/scene.ts
20
20
  var scene_exports = {};
21
21
  __export(scene_exports, {
22
22
  genComponentTemplate: () => genComponentTemplate,
@@ -53,16 +53,28 @@ var genComponentTemplate = ({
53
53
  uiResult,
54
54
  outputsConfig,
55
55
  scopeName,
56
- utilsPackageName
56
+ utilsPackageName,
57
+ isPopup = false,
58
+ hasPopups = false
57
59
  }) => {
58
- return `function ${componentName}() {
60
+ let code = `function ${componentName}() {
59
61
  ${combinedJsCode}
60
62
  return (
61
- ${uiResult.split("\n").map((line) => ` ${line}`).join("\n")}
63
+ <>
64
+ ${uiResult.split("\n").map((line) => ` ${line}`).join("\n")}
65
+ ` + (hasPopups ? ` <PopupRenderer popupMap={POPUP_MAP} />
66
+ ` : "") + ` </>
62
67
  );
63
68
  }
64
69
 
65
- export default WithWrapper(${componentName})`;
70
+ `;
71
+ if (isPopup) {
72
+ code += `(${componentName} as any).isPopup = true;
73
+
74
+ `;
75
+ }
76
+ code += `export default WithWrapper(${componentName})`;
77
+ return code;
66
78
  };
67
79
  var wrapInEffect = (indent, effectCode) => {
68
80
  return `
@@ -0,0 +1,85 @@
1
+ import CryptoJS from 'crypto-js';
2
+ export default (function (context) {
3
+ var _inputs$encrypt, _inputs$decrypt;
4
+ var data = context.data;
5
+ var inputs = context.inputs;
6
+ var outputs = context.outputs;
7
+
8
+ // 模式映射
9
+ var modeMap = {
10
+ CBC: CryptoJS.mode.CBC,
11
+ ECB: CryptoJS.mode.ECB,
12
+ CFB: CryptoJS.mode.CFB,
13
+ OFB: CryptoJS.mode.OFB,
14
+ CTR: CryptoJS.mode.CTR
15
+ };
16
+
17
+ // 填充方式映射
18
+ var paddingMap = {
19
+ Pkcs7: CryptoJS.pad.Pkcs7,
20
+ Iso97971: CryptoJS.pad.Iso97971,
21
+ AnsiX923: CryptoJS.pad.AnsiX923,
22
+ Iso10126: CryptoJS.pad.Iso10126,
23
+ ZeroPadding: CryptoJS.pad.ZeroPadding,
24
+ NoPadding: CryptoJS.pad.NoPadding
25
+ };
26
+ (_inputs$encrypt = inputs.encrypt) === null || _inputs$encrypt === void 0 || _inputs$encrypt.call(inputs, function (val) {
27
+ try {
28
+ var text = val.text || '';
29
+ var key = val.key || data.key || 'defaultKey1234567890123456';
30
+ var iv = val.iv || data.iv;
31
+ var mode = modeMap[val.mode || data.mode || 'CBC'];
32
+ var padding = paddingMap[val.padding || data.padding || 'Pkcs7'];
33
+ if (!text) {
34
+ outputs.onFail('待加密文本不能为空');
35
+ return;
36
+ }
37
+ var keyBytes = CryptoJS.enc.Utf8.parse(key);
38
+ var ivBytes = iv ? CryptoJS.enc.Utf8.parse(iv) : undefined;
39
+ var encrypted = CryptoJS.AES.encrypt(text, keyBytes, {
40
+ mode: mode,
41
+ padding: padding,
42
+ iv: ivBytes
43
+ });
44
+ outputs.onEncryptSuccess({
45
+ encryptedText: encrypted.toString(),
46
+ originalText: text
47
+ });
48
+ } catch (error) {
49
+ console.error('AES加密失败:', error);
50
+ outputs.onFail((error === null || error === void 0 ? void 0 : error.message) || 'AES加密失败');
51
+ }
52
+ });
53
+ (_inputs$decrypt = inputs.decrypt) === null || _inputs$decrypt === void 0 || _inputs$decrypt.call(inputs, function (val) {
54
+ try {
55
+ var encryptedText = val.encryptedText || '';
56
+ var key = val.key || data.key || 'defaultKey1234567890123456';
57
+ var iv = val.iv || data.iv;
58
+ var mode = modeMap[val.mode || data.mode || 'CBC'];
59
+ var padding = paddingMap[val.padding || data.padding || 'Pkcs7'];
60
+ if (!encryptedText) {
61
+ outputs.onFail('待解密文本不能为空');
62
+ return;
63
+ }
64
+ var keyBytes = CryptoJS.enc.Utf8.parse(key);
65
+ var ivBytes = iv ? CryptoJS.enc.Utf8.parse(iv) : undefined;
66
+ var decrypted = CryptoJS.AES.decrypt(encryptedText, keyBytes, {
67
+ mode: mode,
68
+ padding: padding,
69
+ iv: ivBytes
70
+ });
71
+ var decryptedText = decrypted.toString(CryptoJS.enc.Utf8);
72
+ if (!decryptedText) {
73
+ outputs.onFail('解密失败,可能密钥或参数不正确');
74
+ return;
75
+ }
76
+ outputs.onDecryptSuccess({
77
+ decryptedText: decryptedText,
78
+ encryptedText: encryptedText
79
+ });
80
+ } catch (error) {
81
+ console.error('AES解密失败:', error);
82
+ outputs.onFail((error === null || error === void 0 ? void 0 : error.message) || 'AES解密失败');
83
+ }
84
+ });
85
+ });
@@ -0,0 +1,66 @@
1
+ import Taro from '@tarojs/taro';
2
+ export default (function (context) {
3
+ var _inputs$back;
4
+ var data = context.data;
5
+ var inputs = context.inputs;
6
+ var outputs = context.outputs;
7
+ (_inputs$back = inputs.back) === null || _inputs$back === void 0 || _inputs$back.call(inputs, function (val) {
8
+ try {
9
+ var _ref, _val$delta, _data$animation;
10
+ var delta = (_ref = (_val$delta = val === null || val === void 0 ? void 0 : val.delta) !== null && _val$delta !== void 0 ? _val$delta : data.delta) !== null && _ref !== void 0 ? _ref : 1;
11
+ var animation = (val === null || val === void 0 ? void 0 : val.animation) !== undefined ? val.animation : (_data$animation = data.animation) !== null && _data$animation !== void 0 ? _data$animation : true;
12
+
13
+ // 获取当前页面栈信息
14
+ var pages = Taro.getCurrentPages();
15
+ var currentIndex = pages.length - 1;
16
+ if (currentIndex === 0) {
17
+ // 如果是首页,返回失败
18
+ outputs.onFail('已经是首页,无法返回');
19
+ return;
20
+ }
21
+ if (delta > currentIndex) {
22
+ // 如果返回层数超过页面栈深度,返回失败
23
+ outputs.onFail("\u9875\u9762\u6808\u6DF1\u5EA6\u4E0D\u8DB3\uFF0C\u65E0\u6CD5\u8FD4\u56DE".concat(delta, "\u5C42"));
24
+ return;
25
+ }
26
+ if (delta === 1) {
27
+ // 返回上一页
28
+ Taro.navigateBack({
29
+ delta: 1,
30
+ animation: animation,
31
+ success: function success() {
32
+ return outputs.onSuccess({
33
+ delta: 1
34
+ });
35
+ },
36
+ fail: function fail(err) {
37
+ return outputs.onFail(err.errMsg || '返回失败');
38
+ }
39
+ });
40
+ } else {
41
+ // 多层返回,需要先获取目标页面信息
42
+ var targetPage = pages[currentIndex - delta];
43
+ if (targetPage) {
44
+ Taro.navigateBack({
45
+ delta: delta,
46
+ animation: animation,
47
+ success: function success() {
48
+ return outputs.onSuccess({
49
+ delta: delta,
50
+ targetPage: targetPage.route
51
+ });
52
+ },
53
+ fail: function fail(err) {
54
+ return outputs.onFail(err.errMsg || '返回失败');
55
+ }
56
+ });
57
+ } else {
58
+ outputs.onFail('目标页面不存在');
59
+ }
60
+ }
61
+ } catch (error) {
62
+ console.error('返回操作失败:', error);
63
+ outputs.onFail((error === null || error === void 0 ? void 0 : error.message) || '返回操作失败');
64
+ }
65
+ });
66
+ });
@@ -0,0 +1,30 @@
1
+ import Taro from '@tarojs/taro';
2
+ export default (function (context) {
3
+ var _inputs$callPhone;
4
+ var data = context.data;
5
+ var inputs = context.inputs;
6
+ var outputs = context.outputs;
7
+ (_inputs$callPhone = inputs.callPhone) === null || _inputs$callPhone === void 0 || _inputs$callPhone.call(inputs, function (val) {
8
+ try {
9
+ var phoneNumber = typeof val === 'string' ? val : (val === null || val === void 0 ? void 0 : val.phoneNumber) || data.phoneNumber;
10
+ if (!phoneNumber) {
11
+ outputs.onFail('电话号码不能为空');
12
+ return;
13
+ }
14
+ Taro.makePhoneCall({
15
+ phoneNumber: phoneNumber,
16
+ success: function success() {
17
+ return outputs.onSuccess({
18
+ phoneNumber: phoneNumber
19
+ });
20
+ },
21
+ fail: function fail(err) {
22
+ return outputs.onFail(err.errMsg || '拨打电话失败');
23
+ }
24
+ });
25
+ } catch (error) {
26
+ console.error('拨打电话失败:', error);
27
+ outputs.onFail((error === null || error === void 0 ? void 0 : error.message) || '拨打电话失败');
28
+ }
29
+ });
30
+ });
@@ -0,0 +1,81 @@
1
+ import Taro from '@tarojs/taro';
2
+ export default (function (context) {
3
+ var _inputs$chooseFile;
4
+ var data = context.data;
5
+ var inputs = context.inputs;
6
+ var outputs = context.outputs;
7
+ (_inputs$chooseFile = inputs.chooseFile) === null || _inputs$chooseFile === void 0 || _inputs$chooseFile.call(inputs, function (val) {
8
+ try {
9
+ var _config$accept, _config$accept2, _config$accept3;
10
+ var _config = {
11
+ accept: (val === null || val === void 0 ? void 0 : val.accept) || data.accept || 'image/*',
12
+ multiple: (val === null || val === void 0 ? void 0 : val.multiple) !== undefined ? val.multiple : data.multiple || false,
13
+ capture: (val === null || val === void 0 ? void 0 : val.capture) || data.capture,
14
+ compressed: (val === null || val === void 0 ? void 0 : val.compressed) !== undefined ? val.compressed : data.compressed,
15
+ maxDuration: (val === null || val === void 0 ? void 0 : val.maxDuration) || data.maxDuration,
16
+ camera: (val === null || val === void 0 ? void 0 : val.camera) || data.camera
17
+ };
18
+
19
+ // 根据文件类型选择不同的API
20
+ if ((_config$accept = _config.accept) !== null && _config$accept !== void 0 && _config$accept.startsWith('image/')) {
21
+ // 选择图片
22
+ Taro.chooseImage({
23
+ count: _config.multiple ? 9 : 1,
24
+ sourceType: _config.capture === 'album' ? ['album'] : _config.capture === 'camera' ? ['camera'] : ['album', 'camera'],
25
+ success: function success(res) {
26
+ outputs.onSuccess({
27
+ type: 'image',
28
+ files: res.tempFiles,
29
+ tempFilePaths: res.tempFilePaths
30
+ });
31
+ },
32
+ fail: function fail(err) {
33
+ return outputs.onFail(err.errMsg || '选择图片失败');
34
+ }
35
+ });
36
+ } else if ((_config$accept2 = _config.accept) !== null && _config$accept2 !== void 0 && _config$accept2.startsWith('video/')) {
37
+ // 选择视频
38
+ Taro.chooseVideo({
39
+ sourceType: _config.capture === 'album' ? ['album'] : _config.capture === 'camera' ? ['camera'] : ['album', 'camera'],
40
+ compressed: _config.compressed,
41
+ maxDuration: _config.maxDuration,
42
+ camera: _config.camera,
43
+ success: function success(res) {
44
+ outputs.onSuccess({
45
+ type: 'video',
46
+ file: res
47
+ });
48
+ },
49
+ fail: function fail(err) {
50
+ return outputs.onFail(err.errMsg || '选择视频失败');
51
+ }
52
+ });
53
+ } else if ((_config$accept3 = _config.accept) !== null && _config$accept3 !== void 0 && _config$accept3.startsWith('audio/')) {
54
+ // 选择音频(小程序暂不支持直接选择音频文件,这里返回提示)
55
+ outputs.onFail('小程序暂不支持直接选择音频文件');
56
+ } else {
57
+ // 其他文件类型,使用文件选择器(如果支持)
58
+ if (Taro.chooseMessageFile) {
59
+ Taro.chooseMessageFile({
60
+ count: _config.multiple ? 10 : 1,
61
+ type: 'file',
62
+ success: function success(res) {
63
+ outputs.onSuccess({
64
+ type: 'file',
65
+ files: res.tempFiles
66
+ });
67
+ },
68
+ fail: function fail(err) {
69
+ return outputs.onFail(err.errMsg || '选择文件失败');
70
+ }
71
+ });
72
+ } else {
73
+ outputs.onFail('当前环境不支持文件选择');
74
+ }
75
+ }
76
+ } catch (error) {
77
+ console.error('文件选择失败:', error);
78
+ outputs.onFail((error === null || error === void 0 ? void 0 : error.message) || '文件选择失败');
79
+ }
80
+ });
81
+ });
@@ -0,0 +1,38 @@
1
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
+ import Taro from '@tarojs/taro';
3
+ export default (function (context) {
4
+ var _inputs$chooseMedia;
5
+ var data = context.data;
6
+ var inputs = context.inputs;
7
+ var outputs = context.outputs;
8
+ (_inputs$chooseMedia = inputs.chooseMedia) === null || _inputs$chooseMedia === void 0 || _inputs$chooseMedia.call(inputs, function (val) {
9
+ try {
10
+ var _config = {
11
+ mediaType: (val === null || val === void 0 ? void 0 : val.mediaType) || data.mediaType || ['image', 'video'],
12
+ sourceType: (val === null || val === void 0 ? void 0 : val.sourceType) || data.sourceType || ['album', 'camera'],
13
+ count: (val === null || val === void 0 ? void 0 : val.count) || data.count || 9,
14
+ sizeType: (val === null || val === void 0 ? void 0 : val.sizeType) || data.sizeType || ['original', 'compressed'],
15
+ maxDuration: (val === null || val === void 0 ? void 0 : val.maxDuration) || data.maxDuration || 10,
16
+ camera: (val === null || val === void 0 ? void 0 : val.camera) || data.camera
17
+ };
18
+ Taro.chooseMedia(_objectSpread(_objectSpread({}, _config), {}, {
19
+ success: function success(res) {
20
+ var _res$tempFiles;
21
+ outputs.onSuccess({
22
+ type: res.type,
23
+ tempFiles: res.tempFiles,
24
+ tempFilePaths: res.tempFilePaths || ((_res$tempFiles = res.tempFiles) === null || _res$tempFiles === void 0 ? void 0 : _res$tempFiles.map(function (file) {
25
+ return file.tempFilePath;
26
+ }))
27
+ });
28
+ },
29
+ fail: function fail(err) {
30
+ outputs.onFail(err.errMsg || '选择媒体失败');
31
+ }
32
+ }));
33
+ } catch (error) {
34
+ console.error('选择媒体失败:', error);
35
+ outputs.onFail((error === null || error === void 0 ? void 0 : error.message) || '选择媒体失败');
36
+ }
37
+ });
38
+ });