@mybricks/to-code-taro 1.1.2 → 1.1.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 (82) hide show
  1. package/dist/cjs/core/utils/PopupRenderer.js +1 -1
  2. package/dist/cjs/core/utils/hooks.js +102 -38
  3. package/dist/cjs/core/utils/slots.js +11 -4
  4. package/dist/cjs/core/utils/useContext.js +6 -4
  5. package/dist/cjs/core/utils/with.js +3 -3
  6. package/dist/cjs/generate/generateTaroProjectJson.js +7 -4
  7. package/dist/cjs/generate/utils/commonDir.js +12 -1
  8. package/dist/cjs/generate/utils/pageImages.d.ts +14 -0
  9. package/dist/cjs/generate/utils/pageImages.js +36 -0
  10. package/dist/cjs/handleCom.js +37 -14
  11. package/dist/cjs/handleDom.d.ts +2 -0
  12. package/dist/cjs/handleDom.js +5 -2
  13. package/dist/cjs/handleGlobal.js +4 -2
  14. package/dist/cjs/handleSlot.d.ts +3 -0
  15. package/dist/cjs/handleSlot.js +31 -7
  16. package/dist/cjs/taro-template.json +1250 -946
  17. package/dist/cjs/toCodeTaro.d.ts +1 -0
  18. package/dist/cjs/toCodeTaro.js +80 -1
  19. package/dist/cjs/utils/config/content/converter.js +2 -2
  20. package/dist/cjs/utils/config/content/pageConfig.js +4 -1
  21. package/dist/cjs/utils/config/content/saveBase64Image.d.ts +10 -0
  22. package/dist/cjs/utils/config/content/saveBase64Image.js +44 -3
  23. package/dist/cjs/utils/config/content/tabBarConfig.js +8 -2
  24. package/dist/cjs/utils/logic/handleProcess.js +3 -3
  25. package/dist/cjs/utils/logic/processChildren.d.ts +14 -1
  26. package/dist/cjs/utils/logic/processChildren.js +30 -6
  27. package/dist/cjs/utils/style/converter.js +34 -72
  28. package/dist/cjs/utils/templates/index.d.ts +1 -0
  29. package/dist/cjs/utils/templates/index.js +11 -2
  30. package/dist/cjs/utils/templates/renderManager.d.ts +4 -0
  31. package/dist/cjs/utils/templates/renderManager.js +10 -3
  32. package/dist/cjs/utils/templates/scene.js +2 -0
  33. package/dist/esm/core/utils/PopupRenderer.js +1 -1
  34. package/dist/esm/core/utils/hooks.js +137 -53
  35. package/dist/esm/core/utils/popupRouter.js +2 -1
  36. package/dist/esm/core/utils/slots.js +24 -22
  37. package/dist/esm/core/utils/useContext.js +8 -10
  38. package/dist/esm/core/utils/with.js +3 -3
  39. package/dist/esm/generate/generateTaroProjectJson.js +7 -2
  40. package/dist/esm/generate/utils/commonDir.js +15 -0
  41. package/dist/esm/generate/utils/pageImages.d.ts +14 -0
  42. package/dist/esm/generate/utils/pageImages.d.ts.map +1 -0
  43. package/dist/esm/generate/utils/pageImages.js +15 -0
  44. package/dist/esm/handleCom.js +44 -17
  45. package/dist/esm/handleDom.d.ts +2 -0
  46. package/dist/esm/handleDom.js +6 -4
  47. package/dist/esm/handleGlobal.js +4 -2
  48. package/dist/esm/handleSlot.d.ts +3 -0
  49. package/dist/esm/handleSlot.js +52 -10
  50. package/dist/esm/taro-template.json +1250 -946
  51. package/dist/esm/toCodeTaro.d.ts +1 -0
  52. package/dist/esm/toCodeTaro.d.ts.map +1 -1
  53. package/dist/esm/toCodeTaro.js +89 -4
  54. package/dist/esm/utils/config/content/converter.js +2 -2
  55. package/dist/esm/utils/config/content/pageConfig.js +4 -1
  56. package/dist/esm/utils/config/content/saveBase64Image.d.ts +10 -0
  57. package/dist/esm/utils/config/content/saveBase64Image.js +42 -1
  58. package/dist/esm/utils/config/content/tabBarConfig.js +7 -2
  59. package/dist/esm/utils/config/handlePageConfig.d.ts.map +1 -0
  60. package/dist/esm/utils/logic/genJSModules.d.ts.map +1 -0
  61. package/dist/esm/utils/logic/handleProcess.js +3 -3
  62. package/dist/esm/utils/logic/processChildren.d.ts +14 -1
  63. package/dist/esm/utils/logic/processChildren.js +45 -8
  64. package/dist/esm/utils/style/converter.js +57 -106
  65. package/dist/esm/utils/templates/index.d.ts +1 -0
  66. package/dist/esm/utils/templates/index.js +9 -2
  67. package/dist/esm/utils/templates/renderManager.d.ts +4 -0
  68. package/dist/esm/utils/templates/renderManager.js +17 -4
  69. package/dist/esm/utils/templates/scene.js +1 -0
  70. package/package.json +1 -1
  71. package/dist/esm/generate/utils/commonDir.d.ts.map +0 -1
  72. package/dist/esm/handleCom.d.ts.map +0 -1
  73. package/dist/esm/handleDom.d.ts.map +0 -1
  74. package/dist/esm/handleGlobal.d.ts.map +0 -1
  75. package/dist/esm/utils/config/content/converter.d.ts.map +0 -1
  76. package/dist/esm/utils/config/content/pageConfig.d.ts.map +0 -1
  77. package/dist/esm/utils/config/content/saveBase64Image.d.ts.map +0 -1
  78. package/dist/esm/utils/config/content/tabBarConfig.d.ts.map +0 -1
  79. package/dist/esm/utils/logic/handleProcess.d.ts.map +0 -1
  80. package/dist/esm/utils/logic/processChildren.d.ts.map +0 -1
  81. package/dist/esm/utils/templates/index.d.ts.map +0 -1
  82. package/dist/esm/utils/templates/renderManager.d.ts.map +0 -1
@@ -43,6 +43,7 @@ export var getUiComponentCode = function getUiComponentCode(params, config) {
43
43
  resultStyle = params.resultStyle,
44
44
  dataCode = params.dataCode,
45
45
  slotsCode = params.slotsCode,
46
+ childrenUi = params.childrenUi,
46
47
  _params$eventHandlers = params.eventHandlers,
47
48
  eventHandlers = _params$eventHandlers === void 0 ? {} : _params$eventHandlers;
48
49
  var isRoot = config.checkIsRoot();
@@ -79,7 +80,13 @@ export var getUiComponentCode = function getUiComponentCode(params, config) {
79
80
  // 添加插槽
80
81
  if (slotsCode) {
81
82
  ui += "\n".concat(indent2, "slots={{\n").concat(slotsCode).concat(indent2, "}}");
82
- } else {}
83
- ui += "\n".concat(indent, "/>");
83
+ }
84
+ if (childrenUi) {
85
+ ui += "\n".concat(indent, ">");
86
+ ui += "\n".concat(childrenUi);
87
+ ui += "\n".concat(indent, "</WithCom>");
88
+ } else {
89
+ ui += "\n".concat(indent, "/>");
90
+ }
84
91
  return ui;
85
92
  };
@@ -10,5 +10,9 @@ export declare class RenderManager {
10
10
  * 生成所有 render 函数的 definition 代码
11
11
  */
12
12
  toCode(indent: string): string;
13
+ /**
14
+ * 转义字符串并创建能够匹配任意空白符的正则
15
+ */
16
+ private createFlexibleRegex;
13
17
  genRenderRef(slotId: string, renderId: string, indent: string): string;
14
18
  }
@@ -33,6 +33,7 @@ export var RenderManager = /*#__PURE__*/function () {
33
33
  }, {
34
34
  key: "toCode",
35
35
  value: function toCode(indent) {
36
+ var _this = this;
36
37
  if (this._renders.size === 0) {
37
38
  return "";
38
39
  }
@@ -71,14 +72,15 @@ export var RenderManager = /*#__PURE__*/function () {
71
72
  children.forEach(function (child) {
72
73
  if (child.type === "com") {
73
74
  var varName = "".concat(child.id, "_JSX");
74
- var comJsx = child.ui.trim();
75
+ var comJsx = child.ui; // 保持原始字符串(包含可能的 Fragment 或 View 包裹)
75
76
  comVars[child.id] = varName;
76
77
  code += "".concat(indent).concat(indent2, "const ").concat(varName, " = (\n");
77
- code += "".concat(indent).concat(indent3).concat(comJsx, "\n");
78
+ // 内部定义时 trim 掉外层缩进,保持变量内容整洁
79
+ code += "".concat(indent).concat(indent3).concat(comJsx.trim(), "\n");
78
80
  code += "".concat(indent).concat(indent2, ");\n");
79
81
 
80
- // 替换渲染结构中的组件调用为变量引用
81
- var pattern = new RegExp("<WithCom\\s+[^>]*id=['\"]".concat(child.id, "['\"][\\s\\S]*?/>|<WithCom\\s+[^>]*id=['\"]").concat(child.id, "['\"][\\s\\S]*?>[\\s\\S]*?</WithCom>"), 'g');
82
+ // 优化:使用宽容空白匹配正则
83
+ var pattern = _this.createFlexibleRegex(comJsx.trim());
82
84
  modifiedRenderCode = modifiedRenderCode.replace(pattern, "{".concat(varName, "}"));
83
85
  }
84
86
  });
@@ -123,6 +125,17 @@ export var RenderManager = /*#__PURE__*/function () {
123
125
  });
124
126
  return code;
125
127
  }
128
+
129
+ /**
130
+ * 转义字符串并创建能够匹配任意空白符的正则
131
+ */
132
+ }, {
133
+ key: "createFlexibleRegex",
134
+ value: function createFlexibleRegex(str) {
135
+ var escaped = str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&') // 转义正则元字符
136
+ .replace(/\s+/g, '\\s+'); // 将所有空白符替换为 \s+
137
+ return new RegExp(escaped, 'g');
138
+ }
126
139
  }, {
127
140
  key: "genRenderRef",
128
141
  value: function genRenderRef(slotId, renderId, indent) {
@@ -8,6 +8,7 @@ export var genRootDefineCode = function genRootDefineCode(indent, utilsPackageNa
8
8
  var hasJsModules = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
9
9
  // 使用 useAppContext 获取 comRefs / $vars / $fxs / appContext
10
10
  var code = "".concat(indent, "const {comRefs, $vars, $fxs, appContext} = useAppContext();\n");
11
+ code += "".concat(indent, "usePageLife();\n");
11
12
  // 如果有 JS 计算组件,需要初始化 comModules
12
13
  if (hasJsModules) {
13
14
  code += "".concat(indent, "const comModules = jsModules({ createJSHandle });\n");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mybricks/to-code-taro",
3
- "version": "1.1.2",
3
+ "version": "1.1.4",
4
4
  "description": "To code for Taro",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",
@@ -1 +0,0 @@
1
- {"version":3,"file":"commonDir.d.ts","sourceRoot":"","sources":["commonDir.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,UAAU,QAAQ;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;CACvB;AAED,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE;QACd,MAAM,EAAE,MAAM,MAAM,CAAC;KACtB,CAAC;IACF,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,IAAI,CAchF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"handleCom.d.ts","sourceRoot":"","sources":["handleCom.ts"],"names":[],"mappings":"AASA,MAAM,MAAM,GAAG,GAAG,GAAG,CAAC;AACtB,MAAM,MAAM,eAAe,GAAG,GAAG,CAAC;AAClC,MAAM,MAAM,eAAe,GAAG,GAAG,CAAC;AAWlC;;GAEG;AACH,eAAO,MAAM,SAAS,QAAS,GAAG,UAAU,eAAe,KAAG,eAuC7D,CAAC;AAmPF,eAAe,SAAS,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"handleDom.d.ts","sourceRoot":"","sources":["handleDom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,aAAa,EAAuD,MAAM,SAAS,CAAC;AAG7F,KAAK,GAAG,GAAG,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,CAAC,CAAC;AAEvD,UAAU,eAAgB,SAAQ,UAAU;IAC1C,yBAAyB,EAAE,CAAC,OAAO,aAAa,CAAC,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CAAC;IAC5E,WAAW,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC,KAAK,IAAI,CAAC;IAC9E,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC;AAED,KAAK,eAAe,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,QAAA,MAAM,SAAS,QAAS,GAAG,UAAU,eAAe,KAAG,eAwBtD,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"handleGlobal.d.ts","sourceRoot":"","sources":["handleGlobal.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAEpE,UAAU,kBAAkB;IAC1B,MAAM,EAAE,GAAG,CAAC;IACZ,SAAS,EAAE,GAAG,EAAE,CAAC;IACjB,UAAU,EAAE,GAAG,EAAE,CAAC;CACnB;AAED,QAAA,MAAM,YAAY,WACR,kBAAkB,UAClB,gBAAgB,KACvB,aAAa,EAuKf,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"converter.d.ts","sourceRoot":"","sources":["converter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAkB,gBAAgB,EAAE,MAAM,SAAS,CAAC;AA4DlF;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,gBAAgB,EAAE,GAAG,SAAS,GAAG,IAAI,EAC7C,YAAY,GAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAA4C,EAC9E,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,UAAU,KAAK,MAAM,GAAG,SAAS,GAC7G,gBAAgB,GAAG,IAAI,CAiCzB;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,gBAAgB,EAAE,GAAG,SAAS,GAAG,IAAI,EAC7C,kBAAkB,CAAC,EAAE,MAAM,GAC1B,MAAM,GAAG,IAAI,CAMf"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"pageConfig.d.ts","sourceRoot":"","sources":["pageConfig.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAgCH;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,cAAc,CAAC,EAAE,GAAG,GAAG,MAAM,CAoCtE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"saveBase64Image.d.ts","sourceRoot":"","sources":["saveBase64Image.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AA4D7C;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,QAAQ,GAAG,UAAU,EAC3B,UAAU,CAAC,EAAE,aAAa,EAAE,GAC3B,MAAM,GAAG,SAAS,CAwBpB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tabBarConfig.d.ts","sourceRoot":"","sources":["tabBarConfig.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAI/D;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,GAAG,EAAE,GAAG,SAAS,EACzB,YAAY,GAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAA4C,EAC9E,UAAU,CAAC,EAAE,aAAa,EAAE,GAC3B,gBAAgB,GAAG,IAAI,CAsBzB;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,gBAAgB,EACxB,MAAM,GAAE,MAAa,GACpB,MAAM,CAiBR;AAED;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,GAAG,EAAE,GAAG,SAAS,EACzB,MAAM,EAAE,gBAAgB,GACvB,MAAM,CAYR"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"handleProcess.d.ts","sourceRoot":"","sources":["handleProcess.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAIxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,WAAW,mBAAoB,SAAQ,UAAU;IACrD,yBAAyB,EAAE,CAAC,OAAO,aAAa,CAAC,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CAAC;IAC5E,SAAS,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,WAAW,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC,KAAK,IAAI,CAAC;IAC9E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAsBD,eAAO,MAAM,aAAa,UACjB,QAAQ,WAAW,UAAU,CAAC,qBAAqB,CAAC,CAAC,EAAE,SAAS,CAAC,UAChE,mBAAmB,WA8N5B,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"processChildren.d.ts","sourceRoot":"","sources":["processChildren.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAK3C,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,eAAe,CAAC,EAAE,GAAG,EAAE,CAAC;CACzB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,aAChB,EAAE,CAAC,UAAU,CAAC,UAChB,GAAG,KACV,WA2DF,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB,gBAAgB;AAChB,eAAO,MAAM,oBAAoB,QAAS,MAAM,KAAG,MAGlD,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,iBAAiB,cAAe,MAAM,kBAAkB,MAAM,oBAAoB,MAAM,KAAG,MAKvG,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,YAAY,QAAS,MAAM,KAAG,MAK1C,CAAC;AAUF,2BAA2B;AAC3B,eAAO,MAAM,kBAAkB,WACrB;IACN,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,GAAG,CAAC;IACV,KAAK,EAAE,GAAG,CAAC;IACX,WAAW,EAAE,OAAO,MAAM,EAAE,OAAO,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC;IAC7D,sCAAsC;IACtC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,MAAM,EAAE,MAAM,CAAC,CAAC;CACxC,UACO;IACN,SAAS,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,MAAM,OAAO,CAAC;CAC5B,KACA,MAiDF,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"renderManager.d.ts","sourceRoot":"","sources":["renderManager.ts"],"names":[],"mappings":"AAEA,mBAAmB;AACnB,qBAAa,aAAa;IACxB,gGAAgG;IAChG,OAAO,CAAC,QAAQ,CAAoJ;IAEpK;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,GAAG,EAAE,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,MAAM;IAI/I;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IA0F9B,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;CAIvE"}