@cloudbase/framework-plugin-low-code 1.7.0 → 1.7.2

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 +3 -3
  2. package/lib/builder/config/common.d.ts +0 -2
  3. package/lib/builder/config/common.d.ts.map +0 -1
  4. package/lib/builder/config/common.js +0 -13
  5. package/lib/builder/config/index.d.ts +0 -3
  6. package/lib/builder/config/index.d.ts.map +0 -1
  7. package/lib/builder/config/index.js +0 -29
  8. package/lib/builder/config/mp.d.ts +0 -2
  9. package/lib/builder/config/mp.d.ts.map +0 -1
  10. package/lib/builder/config/mp.js +0 -13
  11. package/lib/builder/core/copy.d.ts +0 -5
  12. package/lib/builder/core/copy.d.ts.map +0 -1
  13. package/lib/builder/core/copy.js +0 -62
  14. package/lib/builder/core/generate.d.ts +0 -9
  15. package/lib/builder/core/generate.d.ts.map +0 -1
  16. package/lib/builder/core/generate.js +0 -128
  17. package/lib/builder/core/index.d.ts +0 -32
  18. package/lib/builder/core/index.d.ts.map +0 -1
  19. package/lib/builder/core/index.js +0 -149
  20. package/lib/builder/core/material.d.ts +0 -4
  21. package/lib/builder/core/material.d.ts.map +0 -1
  22. package/lib/builder/core/material.js +0 -80
  23. package/lib/builder/core/plugin.d.ts +0 -4
  24. package/lib/builder/core/plugin.d.ts.map +0 -1
  25. package/lib/builder/core/plugin.js +0 -30
  26. package/lib/builder/core/prepare.d.ts +0 -8
  27. package/lib/builder/core/prepare.d.ts.map +0 -1
  28. package/lib/builder/core/prepare.js +0 -108
  29. package/lib/builder/core/webpack.d.ts +0 -15
  30. package/lib/builder/core/webpack.d.ts.map +0 -1
  31. package/lib/builder/core/webpack.js +0 -58
  32. package/lib/builder/mp/BuildContext.d.ts +0 -13
  33. package/lib/builder/mp/BuildContext.d.ts.map +0 -1
  34. package/lib/builder/mp/BuildContext.js +0 -2
  35. package/lib/builder/mp/index.d.ts +0 -33
  36. package/lib/builder/mp/index.d.ts.map +0 -1
  37. package/lib/builder/mp/index.js +0 -450
  38. package/lib/builder/mp/lowcode.d.ts +0 -8
  39. package/lib/builder/mp/lowcode.d.ts.map +0 -1
  40. package/lib/builder/mp/lowcode.js +0 -54
  41. package/lib/builder/mp/materials.d.ts +0 -15
  42. package/lib/builder/mp/materials.d.ts.map +0 -1
  43. package/lib/builder/mp/materials.js +0 -338
  44. package/lib/builder/mp/mixMode.d.ts +0 -10
  45. package/lib/builder/mp/mixMode.d.ts.map +0 -1
  46. package/lib/builder/mp/mixMode.js +0 -215
  47. package/lib/builder/mp/mp_config.d.ts +0 -18
  48. package/lib/builder/mp/mp_config.d.ts.map +0 -1
  49. package/lib/builder/mp/mp_config.js +0 -206
  50. package/lib/builder/mp/util.d.ts +0 -20
  51. package/lib/builder/mp/util.d.ts.map +0 -1
  52. package/lib/builder/mp/util.js +0 -243
  53. package/lib/builder/mp/wxml.d.ts +0 -16
  54. package/lib/builder/mp/wxml.d.ts.map +0 -1
  55. package/lib/builder/mp/wxml.js +0 -300
  56. package/lib/builder/service/builder/copy.d.ts +0 -14
  57. package/lib/builder/service/builder/copy.d.ts.map +0 -1
  58. package/lib/builder/service/builder/copy.js +0 -189
  59. package/lib/builder/service/builder/generate.d.ts +0 -52
  60. package/lib/builder/service/builder/generate.d.ts.map +0 -1
  61. package/lib/builder/service/builder/generate.js +0 -792
  62. package/lib/builder/service/builder/index.d.ts +0 -16
  63. package/lib/builder/service/builder/index.d.ts.map +0 -1
  64. package/lib/builder/service/builder/index.js +0 -69
  65. package/lib/builder/service/builder/plugin.d.ts +0 -8
  66. package/lib/builder/service/builder/plugin.d.ts.map +0 -1
  67. package/lib/builder/service/builder/plugin.js +0 -149
  68. package/lib/builder/service/builder/webpack.d.ts +0 -91
  69. package/lib/builder/service/builder/webpack.d.ts.map +0 -1
  70. package/lib/builder/service/builder/webpack.js +0 -589
  71. package/lib/builder/types/common.d.ts +0 -12
  72. package/lib/builder/types/common.d.ts.map +0 -1
  73. package/lib/builder/types/common.js +0 -7
  74. package/lib/builder/util/common.d.ts +0 -36
  75. package/lib/builder/util/common.d.ts.map +0 -1
  76. package/lib/builder/util/common.js +0 -257
  77. package/lib/builder/util/console.d.ts +0 -2
  78. package/lib/builder/util/console.d.ts.map +0 -1
  79. package/lib/builder/util/console.js +0 -13
  80. package/lib/builder/util/generateFiles.d.ts +0 -6
  81. package/lib/builder/util/generateFiles.d.ts.map +0 -1
  82. package/lib/builder/util/generateFiles.js +0 -94
  83. package/lib/builder/util/index.d.ts +0 -2
  84. package/lib/builder/util/index.d.ts.map +0 -1
  85. package/lib/builder/util/index.js +0 -13
  86. package/lib/builder/util/junk.d.ts +0 -3
  87. package/lib/builder/util/junk.d.ts.map +0 -1
  88. package/lib/builder/util/junk.js +0 -25
  89. package/lib/builder/util/mp.d.ts +0 -5
  90. package/lib/builder/util/mp.d.ts.map +0 -1
  91. package/lib/builder/util/mp.js +0 -99
  92. package/lib/builder/util/name-mangler.d.ts +0 -3
  93. package/lib/builder/util/name-mangler.d.ts.map +0 -1
  94. package/lib/builder/util/name-mangler.js +0 -7
  95. package/lib/builder/util/net.d.ts +0 -3
  96. package/lib/builder/util/net.d.ts.map +0 -1
  97. package/lib/builder/util/net.js +0 -54
  98. package/lib/builder/util/process.d.ts +0 -9
  99. package/lib/builder/util/process.d.ts.map +0 -1
  100. package/lib/builder/util/process.js +0 -28
  101. package/lib/builder/util/style.d.ts +0 -2
  102. package/lib/builder/util/style.d.ts.map +0 -1
  103. package/lib/builder/util/style.js +0 -13
  104. package/lib/builder/util/weapp.d.ts +0 -2
  105. package/lib/builder/util/weapp.d.ts.map +0 -1
  106. package/lib/builder/util/weapp.js +0 -13
  107. package/lib/config/private.d.ts +0 -3
  108. package/lib/config/private.d.ts.map +0 -1
  109. package/lib/config/private.js +0 -14
  110. package/lib/generate.d.ts +0 -2
  111. package/lib/generate.d.ts.map +0 -1
  112. package/lib/generate.js +0 -49
  113. package/lib/generator/config/common.d.ts +0 -6
  114. package/lib/generator/config/common.d.ts.map +0 -1
  115. package/lib/generator/config/common.js +0 -25
  116. package/lib/generator/config/index.d.ts +0 -18
  117. package/lib/generator/config/index.d.ts.map +0 -1
  118. package/lib/generator/config/index.js +0 -43
  119. package/lib/generator/config/mp.d.ts +0 -56
  120. package/lib/generator/config/mp.d.ts.map +0 -1
  121. package/lib/generator/config/mp.js +0 -104
  122. package/lib/generator/core/generate.d.ts +0 -59
  123. package/lib/generator/core/generate.d.ts.map +0 -1
  124. package/lib/generator/core/generate.js +0 -663
  125. package/lib/generator/core/index.d.ts +0 -25
  126. package/lib/generator/core/index.d.ts.map +0 -1
  127. package/lib/generator/core/index.js +0 -102
  128. package/lib/generator/core/material.d.ts +0 -14
  129. package/lib/generator/core/material.d.ts.map +0 -1
  130. package/lib/generator/core/material.js +0 -230
  131. package/lib/generator/template.d.ts +0 -3
  132. package/lib/generator/template.d.ts.map +0 -1
  133. package/lib/generator/template.js +0 -3
  134. package/lib/generator/types/common.d.ts +0 -69
  135. package/lib/generator/types/common.d.ts.map +0 -1
  136. package/lib/generator/types/common.js +0 -21
  137. package/lib/generator/util/common.d.ts +0 -36
  138. package/lib/generator/util/common.d.ts.map +0 -1
  139. package/lib/generator/util/common.js +0 -238
  140. package/lib/generator/util/console.d.ts +0 -3
  141. package/lib/generator/util/console.d.ts.map +0 -1
  142. package/lib/generator/util/console.js +0 -17
  143. package/lib/generator/util/index.d.ts +0 -2
  144. package/lib/generator/util/index.d.ts.map +0 -1
  145. package/lib/generator/util/index.js +0 -13
  146. package/lib/generator/util/name-mangler.d.ts +0 -17
  147. package/lib/generator/util/name-mangler.d.ts.map +0 -1
  148. package/lib/generator/util/name-mangler.js +0 -63
  149. package/lib/generator/util/postcss-rpx.d.ts +0 -11
  150. package/lib/generator/util/postcss-rpx.d.ts.map +0 -1
  151. package/lib/generator/util/postcss-rpx.js +0 -16
  152. package/lib/generator/util/style.d.ts +0 -6
  153. package/lib/generator/util/style.d.ts.map +0 -1
  154. package/lib/generator/util/style.js +0 -92
  155. package/lib/generator/util/weapp.d.ts +0 -5
  156. package/lib/generator/util/weapp.d.ts.map +0 -1
  157. package/lib/generator/util/weapp.js +0 -17
  158. package/lib/types.d.ts +0 -14
  159. package/lib/types.d.ts.map +0 -1
  160. package/lib/types.js +0 -19
  161. package/lib/utils/dataSource.d.ts +0 -28
  162. package/lib/utils/dataSource.d.ts.map +0 -1
  163. package/lib/utils/dataSource.js +0 -171
  164. package/lib/utils/postProcess.d.ts +0 -3
  165. package/lib/utils/postProcess.d.ts.map +0 -1
  166. package/lib/utils/postProcess.js +0 -48
  167. package/lib/weapps-core/config/index.d.ts +0 -2
  168. package/lib/weapps-core/config/index.d.ts.map +0 -1
  169. package/lib/weapps-core/config/index.js +0 -13
  170. package/lib/weapps-core/config/style.d.ts +0 -7
  171. package/lib/weapps-core/config/style.d.ts.map +0 -1
  172. package/lib/weapps-core/config/style.js +0 -70
  173. package/lib/weapps-core/index.d.ts +0 -6
  174. package/lib/weapps-core/index.d.ts.map +0 -1
  175. package/lib/weapps-core/index.js +0 -31
  176. package/lib/weapps-core/types/action.d.ts +0 -25
  177. package/lib/weapps-core/types/action.d.ts.map +0 -1
  178. package/lib/weapps-core/types/action.js +0 -28
  179. package/lib/weapps-core/types/app.d.ts +0 -142
  180. package/lib/weapps-core/types/app.d.ts.map +0 -1
  181. package/lib/weapps-core/types/app.js +0 -21
  182. package/lib/weapps-core/types/appbuild.d.ts +0 -63
  183. package/lib/weapps-core/types/appbuild.d.ts.map +0 -1
  184. package/lib/weapps-core/types/appbuild.js +0 -78
  185. package/lib/weapps-core/types/code_types.d.ts +0 -26
  186. package/lib/weapps-core/types/code_types.d.ts.map +0 -1
  187. package/lib/weapps-core/types/code_types.js +0 -2
  188. package/lib/weapps-core/types/git.d.ts +0 -7
  189. package/lib/weapps-core/types/git.d.ts.map +0 -1
  190. package/lib/weapps-core/types/git.js +0 -2
  191. package/lib/weapps-core/types/index.d.ts +0 -11
  192. package/lib/weapps-core/types/index.d.ts.map +0 -1
  193. package/lib/weapps-core/types/index.js +0 -22
  194. package/lib/weapps-core/types/lowcode.d.ts +0 -26
  195. package/lib/weapps-core/types/lowcode.d.ts.map +0 -1
  196. package/lib/weapps-core/types/lowcode.js +0 -25
  197. package/lib/weapps-core/types/material.d.ts +0 -90
  198. package/lib/weapps-core/types/material.d.ts.map +0 -1
  199. package/lib/weapps-core/types/material.js +0 -9
  200. package/lib/weapps-core/types/plugins.d.ts +0 -17
  201. package/lib/weapps-core/types/plugins.d.ts.map +0 -1
  202. package/lib/weapps-core/types/plugins.js +0 -2
  203. package/lib/weapps-core/types/style.d.ts +0 -93
  204. package/lib/weapps-core/types/style.d.ts.map +0 -1
  205. package/lib/weapps-core/types/style.js +0 -2
  206. package/lib/weapps-core/types/web.d.ts +0 -120
  207. package/lib/weapps-core/types/web.d.ts.map +0 -1
  208. package/lib/weapps-core/types/web.js +0 -2
  209. package/lib/weapps-core/utils/appbuild.d.ts +0 -6
  210. package/lib/weapps-core/utils/appbuild.d.ts.map +0 -1
  211. package/lib/weapps-core/utils/appbuild.js +0 -40
  212. package/lib/weapps-core/utils/common.d.ts +0 -16
  213. package/lib/weapps-core/utils/common.d.ts.map +0 -1
  214. package/lib/weapps-core/utils/common.js +0 -90
  215. package/lib/weapps-core/utils/file.d.ts +0 -12
  216. package/lib/weapps-core/utils/file.d.ts.map +0 -1
  217. package/lib/weapps-core/utils/file.js +0 -142
  218. package/lib/weapps-core/utils/formily.d.ts +0 -5
  219. package/lib/weapps-core/utils/formily.d.ts.map +0 -1
  220. package/lib/weapps-core/utils/formily.js +0 -416
  221. package/lib/weapps-core/utils/index.d.ts +0 -7
  222. package/lib/weapps-core/utils/index.d.ts.map +0 -1
  223. package/lib/weapps-core/utils/index.js +0 -18
  224. package/lib/weapps-core/utils/lowcdoe.d.ts +0 -4
  225. package/lib/weapps-core/utils/lowcdoe.d.ts.map +0 -1
  226. package/lib/weapps-core/utils/lowcdoe.js +0 -69
  227. package/lib/weapps-core/utils/style.d.ts +0 -17
  228. package/lib/weapps-core/utils/style.d.ts.map +0 -1
  229. package/lib/weapps-core/utils/style.js +0 -330
@@ -1,663 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.generateCodeFromTpl = exports.writeLowCodeFiles = exports.generateRouterFile = exports.getListenersString = exports.getComponentSchemaString = exports.isSlot = exports.pullComponentToListByInstance = exports.pullActionToListByInstances = exports.getOriginComponentAndActionList = exports.generateSinglePageJsxFile = exports.runGenerateCore = void 0;
16
- const weapps_core_1 = require("../../weapps-core");
17
- const common_1 = require("../types/common");
18
- const path_1 = __importDefault(require("path"));
19
- const template_1 = __importDefault(require("../template"));
20
- const util_1 = require("../util");
21
- const config_1 = require("../config");
22
- const os_1 = __importDefault(require("os"));
23
- const react_schema_renderer_1 = require("@formily/react-schema-renderer");
24
- const style_1 = require("../util/style");
25
- const lodash_template_1 = __importDefault(require("lodash.template"));
26
- const chalk_1 = __importDefault(require("chalk"));
27
- const types_1 = require("../../types");
28
- const dataSource_1 = require("../../utils/dataSource");
29
- function runGenerateCore(props) {
30
- return __awaiter(this, void 0, void 0, function* () {
31
- const { appBuildDir, appData, subAppDataList = [], dependencies = [], buildTypeList, appKey, basename, extraData = {
32
- isComposite: false,
33
- compProps: {},
34
- }, i18nConfig, fileCodeMap, isSandbox = false, deployMode, runtime = types_1.RUNTIME.NONE, ignoreInstall = false, } = props;
35
- const { domain } = appData.extra;
36
- const allAppDataList = [appData].concat(subAppDataList);
37
- const deps = {};
38
- allAppDataList.map((app) => {
39
- Object.entries(app.npmDependencies).forEach(([name, version]) => {
40
- deps[name] = version;
41
- });
42
- });
43
- dependencies.map((compLb) => {
44
- if (compLb.isComposite && compLb.compLibCommonResource) {
45
- Object.assign(deps, compLb.compLibCommonResource.npm);
46
- }
47
- });
48
- yield Promise.all(allAppDataList.map((data) => __awaiter(this, void 0, void 0, function* () {
49
- const { pageInstanceList, rootPath = '' } = data;
50
- console.log(chalk_1.default.blue.bold(`Generating files for ${rootPath ? 'Sub app ' + rootPath : 'Main app'}`));
51
- const dstDir = path_1.default.join(appBuildDir, 'src', rootPath ? `packages/${rootPath}` : '');
52
- yield Promise.all(pageInstanceList.map((pageInstance) => generateSinglePageJsxFile(pageInstance, appBuildDir, rootPath, dependencies, extraData, fileCodeMap, isSandbox)));
53
- yield generateCodeFromTpl(appKey, data, dstDir, rootPath, extraData, i18nConfig, fileCodeMap, isSandbox, subAppDataList, buildTypeList, deployMode, domain);
54
- yield writeLowCodeFiles(data, dstDir, fileCodeMap, rootPath);
55
- })));
56
- yield generateRouterFile(allAppDataList, appBuildDir, basename, fileCodeMap, isSandbox);
57
- });
58
- }
59
- exports.runGenerateCore = runGenerateCore;
60
- function getGenericCompFromDep(dependencies = []) {
61
- const genericCompMap = {};
62
- dependencies.forEach((compLib) => {
63
- if (compLib.isComposite) {
64
- compLib.components.forEach((component) => {
65
- (0, util_1.deepDealComponentSchemaJson)(Object.values(component.componentInstances)[0], (componentSchema) => {
66
- if (componentSchema === null || componentSchema === void 0 ? void 0 : componentSchema.genericComp) {
67
- genericCompMap[`${component.materialName}:${component.name}`] = componentSchema.genericComp;
68
- }
69
- });
70
- });
71
- }
72
- });
73
- return genericCompMap;
74
- }
75
- function generateSinglePageJsxFile(pageInstance, appBuildDir, rootPath, dependencies = [], extraData = {
76
- isComposite: false,
77
- compProps: {},
78
- }, fileCodeMap, isSandbox) {
79
- return __awaiter(this, void 0, void 0, function* () {
80
- const dstDir = path_1.default.join(appBuildDir, 'src', rootPath ? `packages/${rootPath}` : '');
81
- const { componentSchemaJson, data, style } = pageInstance;
82
- const genericCompMap = getGenericCompFromDep(dependencies);
83
- const { originComponentList, originActionList } = getOriginComponentAndActionList(componentSchemaJson, dependencies, [], [], genericCompMap);
84
- const componentInfo = yield (0, util_1.getComponentsInfo)(appBuildDir, dependencies, fileCodeMap);
85
- const { widgets, dataBinds, componentSchema } = getComponentSchemaString(componentSchemaJson, false, componentInfo);
86
- const pageClass = [rootPath, pageInstance.id].filter(Boolean).join('-');
87
- const templateData = {
88
- upperFirst: util_1.upperFirst,
89
- cleanVarName: util_1.cleanVarName,
90
- isSandbox,
91
- pageName: pageInstance.id,
92
- pageStyleText: (0, weapps_core_1.toCssText)((0, weapps_core_1.toCssStyle)(style), `body`),
93
- useComponents: originComponentList,
94
- useActions: originActionList.filter((action) => action.type === weapps_core_1.ActionType.Material),
95
- componentSchema,
96
- widgets,
97
- dataBinds,
98
- pageClass,
99
- isComposite: extraData.isComposite,
100
- compProps: extraData.compProps,
101
- title: data.navigationBarTitleText || data.title || '',
102
- };
103
- const dest = path_1.default.join(dstDir, `/pages/${pageInstance.id}/index.jsx`);
104
- const template = template_1.default[`/src/pages/app.tpl`];
105
- const jsx = (0, lodash_template_1.default)(template.code, { interpolate: /<%=([\s\S]+?)%>/g })(templateData);
106
- fileCodeMap[dest] = {
107
- code: jsx,
108
- };
109
- });
110
- }
111
- exports.generateSinglePageJsxFile = generateSinglePageJsxFile;
112
- function getOriginComponentAndActionList(componentSchema, dependencies, originComponentList = [], originActionList = [], genericCompMap = {}) {
113
- const fieldSchema = new react_schema_renderer_1.Schema(componentSchema);
114
- if (fieldSchema.isObject()) {
115
- const { 'x-props': xProps } = fieldSchema;
116
- if (xProps) {
117
- const { listenerInstances, sourceKey } = xProps;
118
- if (genericCompMap[sourceKey]) {
119
- const genericProps = genericCompMap[sourceKey];
120
- const genericComp = xProps.data[genericProps.propName];
121
- pullComponentToListByInstance(genericComp, originComponentList, dependencies);
122
- }
123
- pullComponentToListByInstance(sourceKey, originComponentList, dependencies);
124
- pullActionToListByInstances(listenerInstances, originActionList, dependencies);
125
- }
126
- const filedSchemaProperties = fieldSchema.properties || {};
127
- Object.keys(filedSchemaProperties).forEach((key) => {
128
- const schema = filedSchemaProperties[key];
129
- const schemaJson = schema;
130
- getOriginComponentAndActionList(schemaJson, dependencies, originComponentList, originActionList, genericCompMap);
131
- });
132
- }
133
- return {
134
- originComponentList,
135
- originActionList,
136
- };
137
- }
138
- exports.getOriginComponentAndActionList = getOriginComponentAndActionList;
139
- function pullActionToListByInstances(listenerInstances, originActionList, fixedDependencies) {
140
- if (!listenerInstances || !listenerInstances.length) {
141
- return;
142
- }
143
- listenerInstances.map((pageListenerInstance) => {
144
- const { sourceKey, type } = pageListenerInstance;
145
- const { materialName, name, variableName } = (0, util_1.getMetaInfoBySourceKey)(sourceKey);
146
- const material = fixedDependencies.find((m) => m.name === materialName);
147
- const actionKey = `${materialName}_${name}`;
148
- const isExistAction = originActionList.find((item) => item.key === actionKey);
149
- if (!isExistAction) {
150
- originActionList.push({
151
- name,
152
- materialName,
153
- materialVersion: material === null || material === void 0 ? void 0 : material.version,
154
- key: actionKey,
155
- type,
156
- variableName,
157
- entries: material === null || material === void 0 ? void 0 : material.entries,
158
- });
159
- }
160
- });
161
- }
162
- exports.pullActionToListByInstances = pullActionToListByInstances;
163
- function pullComponentToListByInstance(sourceKey, originComponentList, fixedDependencies) {
164
- var _a, _b;
165
- const { materialName, name, variableName } = (0, util_1.getMetaInfoBySourceKey)(sourceKey);
166
- const componentKey = `${materialName}_${name}`;
167
- const isExistComponent = originComponentList.find((item) => item.key === componentKey);
168
- if (!isExistComponent) {
169
- const foundOne = fixedDependencies.find((m) => m.name === materialName);
170
- if (!foundOne)
171
- return;
172
- const { schemaVersion = '' } = foundOne;
173
- let isPlainProps = false;
174
- try {
175
- if (Number((_a = schemaVersion.split('.')) === null || _a === void 0 ? void 0 : _a[0]) >= 3) {
176
- isPlainProps = true;
177
- }
178
- }
179
- catch (e) { }
180
- originComponentList.push({
181
- sourceKey,
182
- name: name || '',
183
- materialName: materialName || '',
184
- materialVersion: foundOne.version,
185
- isComposite: foundOne.isComposite,
186
- key: componentKey,
187
- variableName: variableName || '',
188
- isPlainProps,
189
- entries: (_b = foundOne) === null || _b === void 0 ? void 0 : _b.entries,
190
- });
191
- }
192
- }
193
- exports.pullComponentToListByInstance = pullComponentToListByInstance;
194
- function isSlot(comp) {
195
- return comp.path && !comp['x-props'];
196
- }
197
- exports.isSlot = isSlot;
198
- function getComponentSchemaString(componentSchema, isComposite = false, componentsInfoMap = {}, wrapperClass) {
199
- const componentInputProps = (0, util_1.getInputProps)(componentsInfoMap) || {};
200
- const copyJson = (0, util_1.simpleDeepClone)(componentSchema);
201
- const compWidgets = {};
202
- const compDataBinds = {};
203
- const componentSchemaJson = (0, util_1.deepDealSchema)(copyJson, (schema) => {
204
- var _a, _b, _c, _d, _e, _f, _g;
205
- const { 'x-props': xProps = {}, properties } = schema;
206
- const { dataBinds = [], commonStyle = {}, data = {}, classNameList = [], sourceKey, styleBind, classNameListBind, } = xProps;
207
- const componentInfo = componentsInfoMap[sourceKey];
208
- if ((_a = componentInfo) === null || _a === void 0 ? void 0 : _a.selectableBlock) {
209
- schema['selectableBlock'] = componentInfo['selectableBlock'];
210
- }
211
- if ((_b = componentInfo) === null || _b === void 0 ? void 0 : _b.compConfig) {
212
- schema['compConfig'] = componentInfo['compConfig'];
213
- }
214
- if ((_c = componentInfo) === null || _c === void 0 ? void 0 : _c.events) {
215
- schema['emitEvents'] = (_d = componentInfo) === null || _d === void 0 ? void 0 : _d.events.map((item) => item.name);
216
- }
217
- else if ((_e = componentInfo) === null || _e === void 0 ? void 0 : _e.emitEvents) {
218
- schema['emitEvents'] = componentInfo.emitEvents.map((item) => item.eventName);
219
- }
220
- if (!isSlot(schema) && schema.key) {
221
- const parentSchema = schema.parent;
222
- compWidgets[schema.key] = Object.assign(Object.assign({}, data), { style: (0, weapps_core_1.toCssStyle)(commonStyle), classList: classNameList, widgetType: sourceKey, _parentId: isSlot(parentSchema) ? (_f = parentSchema.parent) === null || _f === void 0 ? void 0 : _f.key : parentSchema.key });
223
- if (dataBinds.length > 0) {
224
- compDataBinds[schema.key] = generateDataBinds(dataBinds, isComposite);
225
- }
226
- if (styleBind) {
227
- if (!styleBind.bindDataPath) {
228
- console.warn('无 bindDataPath', xProps);
229
- }
230
- else {
231
- styleBind.propertyPath = 'style';
232
- compDataBinds[schema.key] = Object.assign(Object.assign({}, (compDataBinds[schema.key] || {})), generateDataBinds([styleBind], isComposite));
233
- }
234
- }
235
- if (classNameListBind) {
236
- classNameListBind.propertyPath = 'classList';
237
- compDataBinds[schema.key] = Object.assign(Object.assign({}, (compDataBinds[schema.key] || {})), generateDataBinds([classNameListBind], isComposite));
238
- }
239
- }
240
- delete xProps.data;
241
- delete xProps.dataTypes;
242
- delete xProps.dataBinds;
243
- delete xProps.styleBind;
244
- delete xProps.classNameListBind;
245
- if (properties && (0, weapps_core_1.isEmptyObj)(properties)) {
246
- delete schema.properties;
247
- }
248
- delete schema.type;
249
- if (compWidgets[schema.key]) {
250
- const propsKeys = Object.keys(compWidgets[schema.key]);
251
- propsKeys.forEach((propsKey) => {
252
- const propsVaule = compWidgets[schema.key][propsKey];
253
- if (propsVaule && Array.isArray(propsVaule)) {
254
- propsVaule.map((block) => {
255
- var _a, _b;
256
- const blockInstance = (block === null || block === void 0 ? void 0 : block.selectableBlock) && ((_b = (_a = block === null || block === void 0 ? void 0 : block.selectableBlock) === null || _a === void 0 ? void 0 : _a['x-props']) === null || _b === void 0 ? void 0 : _b.listenerInstances);
257
- if (blockInstance) {
258
- block.selectableBlock['x-props'].listenerInstances = generateListnerInstances(blockInstance, isComposite);
259
- }
260
- return block;
261
- });
262
- }
263
- });
264
- }
265
- if (xProps) {
266
- if (isComposite) {
267
- if (!((_g = schema.parent) === null || _g === void 0 ? void 0 : _g.parent)) {
268
- if (!xProps['classNameList'])
269
- xProps['classNameList'] = [];
270
- xProps['classNameList'].push(wrapperClass);
271
- }
272
- }
273
- xProps['commonStyle'] = (0, weapps_core_1.toCssStyle)(xProps['commonStyle']);
274
- if ((0, weapps_core_1.isEmptyObj)(xProps['commonStyle'])) {
275
- delete xProps['commonStyle'];
276
- }
277
- if ((0, weapps_core_1.isEmptyObj)(xProps['style'])) {
278
- delete xProps['style'];
279
- }
280
- if (xProps['dataBinds'] && xProps['dataBinds'].length === 0) {
281
- delete xProps['dataBinds'];
282
- }
283
- if (xProps['listenerInstances'] && xProps['listenerInstances'].length === 0) {
284
- delete xProps['listenerInstances'];
285
- }
286
- if (xProps['data']) {
287
- const xPropsData = xProps['data'];
288
- if (xPropsData._waFor && xPropsData._waFor.length === 0) {
289
- delete xPropsData._waFor;
290
- }
291
- if (xPropsData.title === '') {
292
- delete xPropsData.title;
293
- }
294
- if ((0, weapps_core_1.isEmptyObj)(xPropsData)) {
295
- delete xProps['data'];
296
- }
297
- }
298
- if (xProps.listenerInstances) {
299
- xProps.listenerInstances = generateListnerInstances(xProps.listenerInstances, isComposite);
300
- }
301
- const syncProps = componentInputProps[xProps.sourceKey];
302
- if (syncProps) {
303
- if (!xProps.listenerInstances)
304
- xProps.listenerInstances = [];
305
- Object.keys(syncProps).forEach((key) => {
306
- let syncPropArr = [];
307
- const syncProp = syncProps[key];
308
- if (!Array.isArray(syncProp)) {
309
- syncPropArr = [syncProp];
310
- }
311
- else {
312
- syncPropArr = syncProp;
313
- }
314
- syncPropArr.forEach(({ changeEvent, valueFromEvent }) => {
315
- xProps.listenerInstances.unshift({
316
- trigger: changeEvent,
317
- instanceFunction: `${config_1.REPLACE_SIGN}function({ event, forItems, $context }) {
318
- const $for = forItems;
319
- const wid = ${isComposite ? 'this.widgets' : '$page.widgets'}.${schema.key};
320
- const widgetData = (forItems.forIndexes && forItems.forIndexes.length > 0) ? get(wid, forItems.forIndexes) : wid;
321
- widgetData.${key} = ${valueFromEvent};
322
- }.bind(this)${config_1.REPLACE_SIGN}`,
323
- });
324
- });
325
- });
326
- }
327
- if (xProps.dataBinds) {
328
- xProps.dataBinds = generateDataBinds(xProps.dataBinds, isComposite);
329
- }
330
- if (xProps.styleBind) {
331
- xProps.styleBind = generateDataBinds([xProps.styleBind], isComposite);
332
- }
333
- if (xProps.classNameListBind) {
334
- xProps.classNameListBind = generateDataBinds([xProps.classNameListBind], isComposite);
335
- }
336
- }
337
- });
338
- return {
339
- widgets: (0, util_1.JsonToStringWithVariableName)(compWidgets, { EOL: false }),
340
- dataBinds: (0, util_1.JsonToStringWithVariableName)(compDataBinds, { EOL: true }),
341
- componentSchema: (0, util_1.JsonToStringWithVariableName)(componentSchemaJson, {
342
- EOL: true,
343
- }),
344
- };
345
- }
346
- exports.getComponentSchemaString = getComponentSchemaString;
347
- function generateDataBinds(dataBinds, isComposite) {
348
- const dataBindFuncs = {};
349
- dataBinds.forEach((bind) => {
350
- if (!bind.bindDataPath) {
351
- return console.warn('无 bindDataPath', bind.propertyPath);
352
- }
353
- let funcCode = '()=>{}';
354
- if (bind.type === weapps_core_1.PropBindType.forItem) {
355
- funcCode = `(forItems) => forItems.${bind.bindDataPath}`;
356
- }
357
- else if (bind.type === weapps_core_1.PropBindType.scope) {
358
- funcCode = `() => ({__type: "scopedValue", getValue: ($scope)=>$scope.${bind.bindDataPath}})}`;
359
- }
360
- else if (bind.type === weapps_core_1.PropBindType.expression) {
361
- if (isComposite) {
362
- funcCode = `(forItems, event, $context) => {const $for = forItems; return (${bind.bindDataPath
363
- .replace(/\$comp/g, 'this.$WEAPPS_COMP')
364
- .replace(/;$/, '')})}`;
365
- }
366
- else {
367
- const code = bind.bindDataPath.replace(/;$/, '');
368
- funcCode = /\$scope\./.test(code)
369
- ? `(forItems, event, $context)) => ({__type: "scopedValue", getValue: ($scope) => { const $for = forItems; return (${code})}})`
370
- : `(forItems, event, $context)) => { const $for = forItems; return (${code})}`;
371
- }
372
- }
373
- else if (bind.type === weapps_core_1.PropBindType.prop) {
374
- let bindDataPath = bind.bindDataPath;
375
- const isNegated = bindDataPath.startsWith('!');
376
- if (isNegated)
377
- bindDataPath = bindDataPath.replace(/^!/, '');
378
- if (isComposite) {
379
- funcCode = `() => ${isNegated ? '!' : ''}${'this.$WEAPPS_COMP'}.props.data.${bindDataPath}`;
380
- }
381
- else {
382
- funcCode = `() => ${isNegated ? '!' : ''}$page.props.data.${bindDataPath}`;
383
- }
384
- }
385
- else {
386
- const PREFIX_MAP = {
387
- [weapps_core_1.PropBindType.state]: 'state',
388
- [weapps_core_1.PropBindType.computed]: 'computed',
389
- [weapps_core_1.PropBindType.dataVar]: 'dataVar',
390
- [weapps_core_1.PropBindType.stateData]: 'dataset.state',
391
- [weapps_core_1.PropBindType.paramData]: 'dataset.params',
392
- };
393
- switch (bind.type) {
394
- case weapps_core_1.PropBindType.state:
395
- case weapps_core_1.PropBindType.computed:
396
- case weapps_core_1.PropBindType.dataVar:
397
- case weapps_core_1.PropBindType.stateData:
398
- case weapps_core_1.PropBindType.paramData: {
399
- if (bind.bindDataPath.startsWith('global.')) {
400
- funcCode = bind.bindDataPath.replace(/^global./, `app.${PREFIX_MAP[bind.type]}.`);
401
- }
402
- else {
403
- if (isComposite) {
404
- funcCode = bind.bindDataPath
405
- .replace(/^comp-\w+./, `this.$WEAPPS_COMP.${PREFIX_MAP[bind.type]}.`)
406
- .replace(/^\$\w+_\d+./, `this.$WEAPPS_COMP.${PREFIX_MAP[bind.type]}.`);
407
- }
408
- else {
409
- funcCode = bind.bindDataPath.replace(/^\w+./, `$page.${PREFIX_MAP[bind.type]}.`);
410
- }
411
- }
412
- funcCode = `() => ${funcCode}`;
413
- break;
414
- }
415
- }
416
- }
417
- dataBindFuncs[bind.propertyPath] = `${config_1.REPLACE_SIGN}${funcCode}${config_1.REPLACE_SIGN}`;
418
- });
419
- return dataBindFuncs;
420
- }
421
- function generateListnerInstances(listenerInstances, isComposite = false) {
422
- return listenerInstances.map((listener) => {
423
- var _a, _b, _c, _d, _e;
424
- const generatedListener = {
425
- key: listener.key,
426
- trigger: listener.trigger,
427
- isCapturePhase: listener.isCapturePhase,
428
- noPropagation: listener.noPropagation,
429
- };
430
- if (listener.type === weapps_core_1.ActionType.Material) {
431
- const { sourceKey } = listener;
432
- const { variableName } = (0, util_1.getMetaInfoBySourceKey)(sourceKey);
433
- generatedListener.instanceFunction = `${config_1.REPLACE_SIGN}${variableName}${config_1.REPLACE_SIGN}`;
434
- }
435
- else if (listener.type === weapps_core_1.ActionType.PropEvent) {
436
- if (isComposite) {
437
- generatedListener.instanceFunction = `${config_1.REPLACE_SIGN}function({ data, event, forItems }) {
438
- event.detail.data = data;
439
- this.props.emit('${((_a = listener.handler) === null || _a === void 0 ? void 0 : _a.name) || listener.jsCode}', event.detail);
440
- }.bind(this)${config_1.REPLACE_SIGN}`;
441
- }
442
- else {
443
- generatedListener.instanceFunction = `${config_1.REPLACE_SIGN}function(...args) { $page.props.events.${((_b = listener.handler) === null || _b === void 0 ? void 0 : _b.name) || listener.jsCode}.apply(null, args) }${config_1.REPLACE_SIGN}`;
444
- }
445
- }
446
- else if (listener.type === weapps_core_1.ActionType.Inline) {
447
- if (isComposite) {
448
- generatedListener.instanceFunction = `${config_1.REPLACE_SIGN}function({event, domEvent, customEventData, data, forItems}) {
449
- return ${listener.jsCode}
450
- }.bind(this)${config_1.REPLACE_SIGN}`;
451
- }
452
- else {
453
- generatedListener.instanceFunction = `${config_1.REPLACE_SIGN}function({event, domEvent, customEventData, data, forItems}) {
454
- return ${listener.jsCode}
455
- }.bind(pageCodeContext)${config_1.REPLACE_SIGN}`;
456
- }
457
- }
458
- else if (listener.type === weapps_core_1.ActionType.Platform) {
459
- let name = ((_c = listener.handler) === null || _c === void 0 ? void 0 : _c.name) || listener.jsCode;
460
- generatedListener.instanceFunction = `${config_1.REPLACE_SIGN}function({data}) { return app.${name}(data) }${config_1.REPLACE_SIGN}`;
461
- }
462
- else if (listener.type === weapps_core_1.ActionType.DataSource) {
463
- generatedListener.instanceFunction = `${config_1.REPLACE_SIGN}function({data}) { return app.cloud.callDataSource(data) }${config_1.REPLACE_SIGN}`;
464
- }
465
- else {
466
- if (isComposite) {
467
- generatedListener.instanceFunction = `${config_1.REPLACE_SIGN}this.handler.${((_d = listener.handler) === null || _d === void 0 ? void 0 : _d.name) || listener.jsCode}.bind(this)${config_1.REPLACE_SIGN}`;
468
- }
469
- else {
470
- let name = ((_e = listener.handler) === null || _e === void 0 ? void 0 : _e.name) || listener.jsCode;
471
- generatedListener.instanceFunction = `${config_1.REPLACE_SIGN}handler.${name}.bind(pageCodeContext)${config_1.REPLACE_SIGN}`;
472
- }
473
- }
474
- if (!(0, weapps_core_1.isEmptyObj)(listener.data)) {
475
- generatedListener.data = listener.data;
476
- }
477
- if (listener.dataBinds && listener.dataBinds.length > 0) {
478
- generatedListener.dataBinds = generateDataBinds(listener.dataBinds, isComposite);
479
- }
480
- return generatedListener;
481
- });
482
- }
483
- function getListenersString(listeners = [], isComposite = false) {
484
- return (0, util_1.JsonToStringWithVariableName)(generateListnerInstances(listeners, isComposite), {
485
- EOL: true,
486
- });
487
- }
488
- exports.getListenersString = getListenersString;
489
- function generateRouterFile(allAppDataList, appBuildDir, basename = '', fileCodeMap, isSandbox) {
490
- return __awaiter(this, void 0, void 0, function* () {
491
- const routerImports = [];
492
- const routerRenders = [];
493
- const mountApis = [];
494
- let homePageId = '';
495
- yield Promise.all(allAppDataList.map((data) => __awaiter(this, void 0, void 0, function* () {
496
- const { pageInstanceList, rootPath = '' } = data;
497
- const pageFilePath = rootPath ? `/src/packages/${rootPath}/` : '/src/';
498
- pageInstanceList.map((pageInstance) => {
499
- const pageId = [rootPath, pageInstance.id].filter((i) => !!i).join('_');
500
- const pagePath = rootPath ? `${rootPath}/${pageInstance.id}` : `${pageInstance.id}`;
501
- if (pageInstance.isHome && !rootPath) {
502
- homePageId = pageId;
503
- routerRenders.push(`<Redirect from="/" exact to="/${pageId}"/>`);
504
- }
505
- if (pageInstance.isHome && rootPath) {
506
- routerRenders.push(`<Redirect from="/${rootPath}" exact to="/${pagePath}"/>`);
507
- }
508
- if (isSandbox) {
509
- routerImports.push(`import Page${pageId} from '${pageFilePath}pages/${pageInstance.id}/index';`);
510
- }
511
- else {
512
- routerImports.push(`const Page${pageId} = React.lazy(() => import('${pageFilePath}pages/${pageInstance.id}/index'));`);
513
- }
514
- routerRenders.push(`<Route path="/${pagePath}" component={() => <Page${pageId} />}/>`);
515
- });
516
- })));
517
- const routerTemplate = template_1.default['/src/router/index.tpl'].code;
518
- const routerIndexStr = (0, lodash_template_1.default)(routerTemplate, {
519
- interpolate: /<%=([\s\S]+?)%>/g,
520
- })({
521
- routerImports: routerImports.join('\n'),
522
- routerRenders: routerRenders.join('\n'),
523
- mountApis: mountApis.join('\n'),
524
- basename: basename,
525
- homePageId,
526
- isHash: isSandbox,
527
- });
528
- const dest = path_1.default.resolve(appBuildDir, `src/router/index.jsx`);
529
- fileCodeMap[dest] = {
530
- code: routerIndexStr,
531
- };
532
- });
533
- }
534
- exports.generateRouterFile = generateRouterFile;
535
- function writeLowCodeFiles(appData, appBuildDir, fileCodeMap, rootPath) {
536
- return __awaiter(this, void 0, void 0, function* () {
537
- const lowcodeRootDir = path_1.default.join(appBuildDir, 'lowcode');
538
- (0, style_1.generateDefaultTheme)(appData);
539
- generateDefaultLifecycle(appData);
540
- const themeCode = appData.codeModules.find((mod) => mod.type === 'theme');
541
- yield Promise.all(appData.codeModules.map((m) => writeCode2file(m, 'global')));
542
- yield Promise.all(appData.pageInstanceList.map((page) => __awaiter(this, void 0, void 0, function* () {
543
- (0, style_1.generateDefaultStyle)(page);
544
- yield page.codeModules.filter((m) => m.name !== '____index____').forEach((m) => writeCode2file(m, page.id, page));
545
- })));
546
- function writeCode2file(mod, pageId, page) {
547
- return __awaiter(this, void 0, void 0, function* () {
548
- const file = path_1.default.join(lowcodeRootDir, (0, weapps_core_1.getCodeModuleFilePath)(pageId, mod, {
549
- style: '.css',
550
- }));
551
- let code = mod.code || '';
552
- let weappsApiPrefix = '';
553
- if (mod.type !== 'theme' && mod.type !== 'style') {
554
- const isIncludeAppDot = !!code
555
- .replace('通过 app.common.[name].xxx 访问这里定义的方法或值', '')
556
- .match(/[^'"\w]?app[^'"\w]/g);
557
- if (isIncludeAppDot) {
558
- weappsApiPrefix = `import { app } from '${path_1.default
559
- .relative(path_1.default.dirname(file), appBuildDir + '/app/global-api')
560
- .replace(/\\/g, '/')}';\nconst $app = app;`;
561
- }
562
- }
563
- if (mod.type === 'style') {
564
- let pageStyleString = '';
565
- if (page) {
566
- const pageClass = [rootPath, page.id].filter(Boolean).join('-');
567
- pageStyleString = (0, weapps_core_1.toCssText)((0, weapps_core_1.toCssStyle)(page.style), `.weapps-page-${pageClass}`);
568
- }
569
- code = yield (0, style_1.processLess)(((themeCode === null || themeCode === void 0 ? void 0 : themeCode.code) || style_1.defaultThemeCode) + code);
570
- }
571
- if (mod.type === 'theme') {
572
- return;
573
- }
574
- fileCodeMap[file] = {
575
- code: weappsApiPrefix + os_1.default.EOL + code.replace(/\$page/g, 'this.$page'),
576
- };
577
- });
578
- }
579
- });
580
- }
581
- exports.writeLowCodeFiles = writeLowCodeFiles;
582
- function generateDefaultLifecycle(data) {
583
- const lowCodes = data.lowCodes || data.codeModules || [];
584
- const isHas = lowCodes.find((item) => item.type === 'lifecycle');
585
- if (!isHas) {
586
- const themeStyle = {
587
- type: 'lifecycle',
588
- name: 'lifecycle',
589
- code: `export default {}`,
590
- path: `global/lifecycle`,
591
- system: true,
592
- };
593
- lowCodes.unshift(themeStyle);
594
- return themeStyle;
595
- }
596
- return isHas;
597
- }
598
- function generateCodeFromTpl(appKey, appData, appBuildDir, rootPath, extraData, i18nConfig, fileCodeMap, isSandbox, subAppDataList, buildTypeList, deployMode, domain) {
599
- var _a;
600
- return __awaiter(this, void 0, void 0, function* () {
601
- const pageIds = [];
602
- const pageModules = {};
603
- appData.pageInstanceList.map((p) => {
604
- pageIds.push(p.id);
605
- pageModules[p.id] = p.codeModules;
606
- });
607
- const yyptConfig = yield (0, util_1.getYyptConfigInfo)(extraData);
608
- const templatesData = {
609
- 'app/global-api.js': {
610
- appId: appKey,
611
- subPackageName: rootPath,
612
- domain: domain,
613
- },
614
- 'app/handlers.js': {
615
- pageModules,
616
- },
617
- 'app/common.js': {
618
- mods: appData.codeModules
619
- .filter((m) => m.type === 'normal-module' && m.name !== '____index____')
620
- .map((m) => m.name),
621
- },
622
- 'store/computed.js': {
623
- pageIds,
624
- },
625
- 'store/index.js': {},
626
- 'utils/initGlobalVar.js': {},
627
- 'datasources/index.js.tpl': {},
628
- 'datasources/config.js.tpl': {
629
- appID: appKey,
630
- envID: appData.envId,
631
- isProd: deployMode === types_1.DEPLOY_MODE.UPLOAD,
632
- clientID: ((_a = appData.extra) === null || _a === void 0 ? void 0 : _a.clientId) || '',
633
- },
634
- 'datasources/datasource-profiles.js.tpl': {
635
- datasourceProfiles: JSON.stringify((0, dataSource_1.getDatasourceProfiles)(appData.datasources || []), null, 2),
636
- },
637
- 'datasources/dataset-profiles.js.tpl': {
638
- datasetProfiles: (0, util_1.JsonToStringWithVariableName)((0, dataSource_1.getDatasetProfiles)(appData, [appData]), { EOL: true }),
639
- },
640
- 'utils/common.js': {
641
- isAdminPortal: (0, common_1.buildAsAdminPortalByBuildType)(buildTypeList),
642
- },
643
- };
644
- if (!rootPath) {
645
- templatesData['index.jsx'] = Object.assign(Object.assign({}, yyptConfig), { i18nConfig,
646
- isSandbox, isBuildApp: buildTypeList.includes('app'), subAppDataList });
647
- }
648
- for (const file in templatesData) {
649
- const filePath = `/src/${file}`;
650
- if (!template_1.default[filePath]) {
651
- console.log('not found', filePath);
652
- process.exit();
653
- }
654
- const tplStr = template_1.default[filePath].code;
655
- const generatedCode = (0, lodash_template_1.default)(tplStr)(templatesData[file]);
656
- const outFile = path_1.default.resolve(appBuildDir, file.replace(/.tpl$/, ''));
657
- fileCodeMap[outFile] = {
658
- code: generatedCode,
659
- };
660
- }
661
- });
662
- }
663
- exports.generateCodeFromTpl = generateCodeFromTpl;