@lcap/nasl 4.4.0-beta.3 → 4.4.0-beta.31

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 (276) hide show
  1. package/out/generator/genBundleFiles.d.ts +2 -0
  2. package/out/generator/genBundleFiles.d.ts.map +1 -1
  3. package/out/generator/genBundleFiles.js +77 -12
  4. package/out/generator/genBundleFiles.js.map +1 -1
  5. package/out/generator/icestark.d.ts +1 -1
  6. package/out/generator/icestark.d.ts.map +1 -1
  7. package/out/generator/icestark.js +6 -1
  8. package/out/generator/icestark.js.map +1 -1
  9. package/out/generator/qiankun.d.ts +1 -1
  10. package/out/generator/qiankun.d.ts.map +1 -1
  11. package/out/generator/qiankun.js +9 -3
  12. package/out/generator/qiankun.js.map +1 -1
  13. package/out/generator/release-body/body.d.ts +0 -1
  14. package/out/generator/release-body/body.d.ts.map +1 -1
  15. package/out/generator/release-body/body.js +1 -390
  16. package/out/generator/release-body/body.js.map +1 -1
  17. package/out/generator/release-body/data.d.ts.map +1 -1
  18. package/out/generator/release-body/data.js +38 -11
  19. package/out/generator/release-body/data.js.map +1 -1
  20. package/out/generator/release-body/internal.d.ts +1 -0
  21. package/out/generator/release-body/internal.d.ts.map +1 -1
  22. package/out/generator/release-body/internal.js.map +1 -1
  23. package/out/generator/release-body/share-content.js +1 -1
  24. package/out/generator/release-body/share-content.js.map +1 -1
  25. package/out/generator/release-body/types.d.ts +2 -0
  26. package/out/generator/release-body/types.d.ts.map +1 -1
  27. package/out/generator/release-body/utils.d.ts +1 -0
  28. package/out/generator/release-body/utils.d.ts.map +1 -1
  29. package/out/generator/release-body/utils.js +2 -1
  30. package/out/generator/release-body/utils.js.map +1 -1
  31. package/out/generator/templates/chunk.js +1 -1
  32. package/out/generator/templates/runtime.js +2 -2
  33. package/out/generator/ui-library-declaration/dependency.d.ts +20 -0
  34. package/out/generator/ui-library-declaration/dependency.d.ts.map +1 -1
  35. package/out/generator/ui-library-declaration/dependency.js +3 -2
  36. package/out/generator/ui-library-declaration/dependency.js.map +1 -1
  37. package/out/generator/ui-library-declaration/index.d.ts +1 -0
  38. package/out/generator/ui-library-declaration/index.d.ts.map +1 -1
  39. package/out/generator/ui-library-declaration/index.js +1 -0
  40. package/out/generator/ui-library-declaration/index.js.map +1 -1
  41. package/out/generator/wujie.d.ts +1 -1
  42. package/out/generator/wujie.d.ts.map +1 -1
  43. package/out/generator/wujie.js +6 -1
  44. package/out/generator/wujie.js.map +1 -1
  45. package/out/natural/exports/nasl2Files.d.ts +34 -0
  46. package/out/natural/exports/nasl2Files.d.ts.map +1 -0
  47. package/out/natural/exports/nasl2Files.js +237 -0
  48. package/out/natural/exports/nasl2Files.js.map +1 -0
  49. package/out/natural/{transform2BatchActions.d.ts → exports/transform2BatchActions.d.ts} +20 -2
  50. package/out/natural/exports/transform2BatchActions.d.ts.map +1 -0
  51. package/out/natural/exports/transform2BatchActions.js +1233 -0
  52. package/out/natural/exports/transform2BatchActions.js.map +1 -0
  53. package/out/natural/index.d.ts +12 -12
  54. package/out/natural/index.d.ts.map +1 -1
  55. package/out/natural/index.js +12 -14
  56. package/out/natural/index.js.map +1 -1
  57. package/out/natural/{genNaturalTS.d.ts → old/getContext/genNaturalTS.d.ts} +12 -12
  58. package/out/natural/old/getContext/genNaturalTS.d.ts.map +1 -0
  59. package/out/natural/{genNaturalTS.js → old/getContext/genNaturalTS.js} +65 -65
  60. package/out/natural/old/getContext/genNaturalTS.js.map +1 -0
  61. package/out/natural/old/getContext/genTextualNASL.d.ts.map +1 -0
  62. package/out/natural/old/getContext/genTextualNASL.js.map +1 -0
  63. package/out/natural/{getContext → old/getContext}/getUILib.d.ts +1 -1
  64. package/out/natural/old/getContext/getUILib.d.ts.map +1 -0
  65. package/out/natural/{getContext → old/getContext}/getUILib.js +14 -14
  66. package/out/natural/old/getContext/getUILib.js.map +1 -0
  67. package/out/natural/{getContext → old/getContext}/index.d.ts +3 -3
  68. package/out/natural/old/getContext/index.d.ts.map +1 -0
  69. package/out/natural/{getContext → old/getContext}/index.js +4 -4
  70. package/out/natural/old/getContext/index.js.map +1 -0
  71. package/out/natural/old/getContext/naslStdlibMap.d.ts.map +1 -0
  72. package/out/natural/{getContext → old/getContext}/naslStdlibMap.js +10 -10
  73. package/out/natural/old/getContext/naslStdlibMap.js.map +1 -0
  74. package/out/natural/{transformTS2UI.d.ts → old/parser/transformTS2UI.d.ts} +2 -2
  75. package/out/natural/old/parser/transformTS2UI.d.ts.map +1 -0
  76. package/out/natural/{transformTS2UI.js → old/parser/transformTS2UI.js} +13 -14
  77. package/out/natural/old/parser/transformTS2UI.js.map +1 -0
  78. package/out/natural/{transformTSCode.d.ts → old/parser/transformTSCode.d.ts} +1 -1
  79. package/out/natural/old/parser/transformTSCode.d.ts.map +1 -0
  80. package/out/natural/{transformTSCode.js → old/parser/transformTSCode.js} +32 -8
  81. package/out/natural/old/parser/transformTSCode.js.map +1 -0
  82. package/out/natural/{tools.d.ts → old/tools.d.ts} +0 -4
  83. package/out/natural/old/tools.d.ts.map +1 -0
  84. package/out/natural/{tools.js → old/tools.js} +7 -25
  85. package/out/natural/old/tools.js.map +1 -0
  86. package/out/natural/{parseNaturalTS.d.ts → parser/parseNaturalTS.d.ts} +9 -2
  87. package/out/natural/parser/parseNaturalTS.d.ts.map +1 -0
  88. package/out/natural/{parseNaturalTS.js → parser/parseNaturalTS.js} +119 -38
  89. package/out/natural/parser/parseNaturalTS.js.map +1 -0
  90. package/out/natural/{parseNaturalTSXView.d.ts → parser/parseNaturalTSXView.d.ts} +1 -2
  91. package/out/natural/parser/parseNaturalTSXView.d.ts.map +1 -0
  92. package/out/natural/{parseNaturalTSXView.js → parser/parseNaturalTSXView.js} +181 -139
  93. package/out/natural/parser/parseNaturalTSXView.js.map +1 -0
  94. package/out/natural/transforms/checker/checkDataQueryCalleeNameOrder.d.ts +7 -0
  95. package/out/natural/transforms/checker/checkDataQueryCalleeNameOrder.d.ts.map +1 -0
  96. package/out/natural/transforms/checker/checkDataQueryCalleeNameOrder.js +38 -0
  97. package/out/natural/transforms/checker/checkDataQueryCalleeNameOrder.js.map +1 -0
  98. package/out/natural/transforms/checker/checkDefaultValue.d.ts +14 -0
  99. package/out/natural/transforms/checker/checkDefaultValue.d.ts.map +1 -0
  100. package/out/natural/transforms/checker/checkDefaultValue.js +39 -0
  101. package/out/natural/transforms/checker/checkDefaultValue.js.map +1 -0
  102. package/out/natural/transforms/checker/checkLcapEntity.d.ts +16 -0
  103. package/out/natural/transforms/checker/checkLcapEntity.d.ts.map +1 -0
  104. package/out/natural/transforms/checker/checkLcapEntity.js +337 -0
  105. package/out/natural/transforms/checker/checkLcapEntity.js.map +1 -0
  106. package/out/natural/transforms/checker/checkValidationCalleeName.d.ts +3 -0
  107. package/out/natural/transforms/checker/checkValidationCalleeName.d.ts.map +1 -0
  108. package/out/natural/transforms/checker/checkValidationCalleeName.js +88 -0
  109. package/out/natural/transforms/checker/checkValidationCalleeName.js.map +1 -0
  110. package/out/natural/transforms/checker/checkViewElement.d.ts +29 -0
  111. package/out/natural/transforms/checker/checkViewElement.d.ts.map +1 -0
  112. package/out/natural/transforms/checker/checkViewElement.js +618 -0
  113. package/out/natural/transforms/checker/checkViewElement.js.map +1 -0
  114. package/out/natural/transforms/checker/index.d.ts +19 -0
  115. package/out/natural/transforms/checker/index.d.ts.map +1 -0
  116. package/out/natural/transforms/checker/index.js +30 -0
  117. package/out/natural/transforms/checker/index.js.map +1 -0
  118. package/out/natural/transforms/transform2Entity.d.ts +13 -1
  119. package/out/natural/transforms/transform2Entity.d.ts.map +1 -1
  120. package/out/natural/transforms/transform2Entity.js +172 -17
  121. package/out/natural/transforms/transform2Entity.js.map +1 -1
  122. package/out/natural/transforms/transform2Enum.d.ts +1 -1
  123. package/out/natural/transforms/transform2Enum.d.ts.map +1 -1
  124. package/out/natural/transforms/transform2Enum.js +5 -1
  125. package/out/natural/transforms/transform2Enum.js.map +1 -1
  126. package/out/natural/transforms/transform2GlobalLogicDeclaration.d.ts +2 -2
  127. package/out/natural/transforms/transform2GlobalLogicDeclaration.d.ts.map +1 -1
  128. package/out/natural/transforms/transform2GlobalLogicDeclaration.js +18 -4
  129. package/out/natural/transforms/transform2GlobalLogicDeclaration.js.map +1 -1
  130. package/out/natural/transforms/transform2Logic.d.ts +4 -4
  131. package/out/natural/transforms/transform2Logic.d.ts.map +1 -1
  132. package/out/natural/transforms/transform2Logic.js +58 -17
  133. package/out/natural/transforms/transform2Logic.js.map +1 -1
  134. package/out/natural/transforms/transform2LogicItem.d.ts +11 -4
  135. package/out/natural/transforms/transform2LogicItem.d.ts.map +1 -1
  136. package/out/natural/transforms/transform2LogicItem.js +279 -178
  137. package/out/natural/transforms/transform2LogicItem.js.map +1 -1
  138. package/out/natural/transforms/transform2MetadataType.d.ts +1 -1
  139. package/out/natural/transforms/transform2MetadataType.d.ts.map +1 -1
  140. package/out/natural/transforms/transform2MetadataType.js +1 -1
  141. package/out/natural/transforms/transform2MetadataType.js.map +1 -1
  142. package/out/natural/transforms/transform2Param.d.ts +4 -0
  143. package/out/natural/transforms/transform2Param.d.ts.map +1 -0
  144. package/out/natural/transforms/transform2Param.js +114 -0
  145. package/out/natural/transforms/transform2Param.js.map +1 -0
  146. package/out/natural/transforms/transform2Structure.d.ts +1 -1
  147. package/out/natural/transforms/transform2Structure.d.ts.map +1 -1
  148. package/out/natural/transforms/transform2Structure.js +13 -2
  149. package/out/natural/transforms/transform2Structure.js.map +1 -1
  150. package/out/natural/transforms/transform2TypeAnnotation.d.ts +1 -1
  151. package/out/natural/transforms/transform2TypeAnnotation.d.ts.map +1 -1
  152. package/out/natural/transforms/transform2TypeAnnotation.js +3 -3
  153. package/out/natural/transforms/transform2TypeAnnotation.js.map +1 -1
  154. package/out/natural/transforms/transform2ValidationRule.d.ts +2 -2
  155. package/out/natural/transforms/transform2ValidationRule.d.ts.map +1 -1
  156. package/out/natural/transforms/transform2ValidationRule.js +6 -1
  157. package/out/natural/transforms/transform2ValidationRule.js.map +1 -1
  158. package/out/natural/transforms/transform2Variable.d.ts +4 -3
  159. package/out/natural/transforms/transform2Variable.d.ts.map +1 -1
  160. package/out/natural/transforms/transform2Variable.js +57 -6
  161. package/out/natural/transforms/transform2Variable.js.map +1 -1
  162. package/out/natural/transforms/transformThemeAndStyle.d.ts +5 -2
  163. package/out/natural/transforms/transformThemeAndStyle.d.ts.map +1 -1
  164. package/out/natural/transforms/transformThemeAndStyle.js +26 -13
  165. package/out/natural/transforms/transformThemeAndStyle.js.map +1 -1
  166. package/out/natural/transforms/utils/createComponentLookupMap.d.ts +32 -0
  167. package/out/natural/transforms/utils/createComponentLookupMap.d.ts.map +1 -0
  168. package/out/natural/transforms/utils/createComponentLookupMap.js +57 -0
  169. package/out/natural/transforms/utils/createComponentLookupMap.js.map +1 -0
  170. package/out/natural/transforms/utils/iconNames.d.ts +2 -0
  171. package/out/natural/transforms/utils/iconNames.d.ts.map +1 -0
  172. package/out/natural/transforms/utils/iconNames.js +299 -0
  173. package/out/natural/transforms/utils/iconNames.js.map +1 -0
  174. package/out/natural/transforms/utils/misc.d.ts +16 -0
  175. package/out/natural/transforms/utils/misc.d.ts.map +1 -0
  176. package/out/natural/transforms/utils/misc.js +240 -0
  177. package/out/natural/transforms/utils/misc.js.map +1 -0
  178. package/out/natural/transforms/utils/normalizeNode.d.ts +3 -0
  179. package/out/natural/transforms/utils/normalizeNode.d.ts.map +1 -0
  180. package/out/natural/transforms/utils/normalizeNode.js +15 -0
  181. package/out/natural/transforms/utils/normalizeNode.js.map +1 -0
  182. package/out/natural/transforms/utils/parseDecorator.d.ts +74 -0
  183. package/out/natural/transforms/utils/parseDecorator.d.ts.map +1 -0
  184. package/out/natural/transforms/utils/parseDecorator.js +252 -0
  185. package/out/natural/transforms/utils/parseDecorator.js.map +1 -0
  186. package/out/natural/transforms/utils/transform2Directory.d.ts +59 -0
  187. package/out/natural/transforms/utils/transform2Directory.d.ts.map +1 -0
  188. package/out/natural/transforms/utils/transform2Directory.js +229 -0
  189. package/out/natural/transforms/utils/transform2Directory.js.map +1 -0
  190. package/out/natural/{transforms/utils.d.ts → utils/index.d.ts} +35 -18
  191. package/out/natural/utils/index.d.ts.map +1 -0
  192. package/out/natural/utils/index.js +206 -0
  193. package/out/natural/utils/index.js.map +1 -0
  194. package/out/natural/utils/nasl-file-types.d.ts +45 -0
  195. package/out/natural/utils/nasl-file-types.d.ts.map +1 -0
  196. package/out/natural/utils/nasl-file-types.js +131 -0
  197. package/out/natural/utils/nasl-file-types.js.map +1 -0
  198. package/out/server/OQL/sqlDbTypes.json +717 -0
  199. package/out/server/createUiTs.d.ts +0 -1
  200. package/out/server/createUiTs.d.ts.map +1 -1
  201. package/out/server/createUiTs.js +1 -118
  202. package/out/server/createUiTs.js.map +1 -1
  203. package/out/server/extendBaseNode.d.ts.map +1 -1
  204. package/out/server/extendBaseNode.js +25 -3
  205. package/out/server/extendBaseNode.js.map +1 -1
  206. package/out/server/findReference.js +1 -1
  207. package/out/server/findReference.js.map +1 -1
  208. package/out/server/naslServer.d.ts +0 -1
  209. package/out/server/naslServer.d.ts.map +1 -1
  210. package/out/server/naslServer.js +66 -55
  211. package/out/server/naslServer.js.map +1 -1
  212. package/out/server/translator.js.map +1 -1
  213. package/out/service/autofix/rules/rule-convert-incompatible-assignment-to-union.js.map +1 -1
  214. package/out/service/creator/add.configs.js +1 -1
  215. package/out/service/creator/add.configs.js.map +1 -1
  216. package/out/service/storage/init.d.ts +1 -1
  217. package/out/service/storage/init.d.ts.map +1 -1
  218. package/out/service/storage/init.js +26 -9
  219. package/out/service/storage/init.js.map +1 -1
  220. package/out/service/storage/specTools.d.ts +20 -8
  221. package/out/service/storage/specTools.d.ts.map +1 -1
  222. package/out/service/storage/specTools.js +157 -5
  223. package/out/service/storage/specTools.js.map +1 -1
  224. package/out/templator/block2nasl/jsx2nasl/transform-func2nasl.d.ts +4 -0
  225. package/out/templator/block2nasl/jsx2nasl/transform-func2nasl.d.ts.map +1 -1
  226. package/out/templator/block2nasl/jsx2nasl/transform-func2nasl.js +20 -1
  227. package/out/templator/block2nasl/jsx2nasl/transform-func2nasl.js.map +1 -1
  228. package/out/templator/block2nasl/jsx2nasl/transform-tsx2nasl.d.ts.map +1 -1
  229. package/out/templator/block2nasl/jsx2nasl/transform-tsx2nasl.js +28 -1
  230. package/out/templator/block2nasl/jsx2nasl/transform-tsx2nasl.js.map +1 -1
  231. package/out/templator/block2nasl/transformBlock2Nasl.js +2 -2
  232. package/out/templator/block2nasl/transformBlock2Nasl.js.map +1 -1
  233. package/out/templator/block2nasl/viewMergeBlock.js +3 -2
  234. package/out/templator/block2nasl/viewMergeBlock.js.map +1 -1
  235. package/out/utils/can-i-use.d.ts.map +1 -1
  236. package/out/utils/can-i-use.js +1 -0
  237. package/out/utils/can-i-use.js.map +1 -1
  238. package/package.json +9 -9
  239. package/sandbox/stdlib/nasl.core.ts +2 -0
  240. package/sandbox/stdlib/nasl.io.ts +1 -1
  241. package/sandbox/stdlib/nasl.oql.ts +2 -0
  242. package/sandbox/stdlib/nasl.util.ts +1 -1
  243. package/sandbox/stdlib/nasl.validation.ts +50 -14
  244. package/out/natural/genNaturalTS.d.ts.map +0 -1
  245. package/out/natural/genNaturalTS.js.map +0 -1
  246. package/out/natural/genTextualNASL.d.ts.map +0 -1
  247. package/out/natural/genTextualNASL.js.map +0 -1
  248. package/out/natural/getContext/getUILib.d.ts.map +0 -1
  249. package/out/natural/getContext/getUILib.js.map +0 -1
  250. package/out/natural/getContext/index.d.ts.map +0 -1
  251. package/out/natural/getContext/index.js.map +0 -1
  252. package/out/natural/getContext/nasl2Files.d.ts +0 -15
  253. package/out/natural/getContext/nasl2Files.d.ts.map +0 -1
  254. package/out/natural/getContext/nasl2Files.js +0 -75
  255. package/out/natural/getContext/nasl2Files.js.map +0 -1
  256. package/out/natural/getContext/naslStdlibMap.d.ts.map +0 -1
  257. package/out/natural/getContext/naslStdlibMap.js.map +0 -1
  258. package/out/natural/parseNaturalTS.d.ts.map +0 -1
  259. package/out/natural/parseNaturalTS.js.map +0 -1
  260. package/out/natural/parseNaturalTSXView.d.ts.map +0 -1
  261. package/out/natural/parseNaturalTSXView.js.map +0 -1
  262. package/out/natural/tools.d.ts.map +0 -1
  263. package/out/natural/tools.js.map +0 -1
  264. package/out/natural/transform2BatchActions.d.ts.map +0 -1
  265. package/out/natural/transform2BatchActions.js +0 -387
  266. package/out/natural/transform2BatchActions.js.map +0 -1
  267. package/out/natural/transformTS2UI.d.ts.map +0 -1
  268. package/out/natural/transformTS2UI.js.map +0 -1
  269. package/out/natural/transformTSCode.d.ts.map +0 -1
  270. package/out/natural/transformTSCode.js.map +0 -1
  271. package/out/natural/transforms/utils.d.ts.map +0 -1
  272. package/out/natural/transforms/utils.js +0 -407
  273. package/out/natural/transforms/utils.js.map +0 -1
  274. /package/out/natural/{genTextualNASL.d.ts → old/getContext/genTextualNASL.d.ts} +0 -0
  275. /package/out/natural/{genTextualNASL.js → old/getContext/genTextualNASL.js} +0 -0
  276. /package/out/natural/{getContext → old/getContext}/naslStdlibMap.d.ts +0 -0
@@ -1,13 +1,20 @@
1
- import { naslTypes } from './transforms/utils';
1
+ import { naslTypes } from '../utils';
2
2
  type HeadNamespace = 'app' | 'extensions' | 'apis' | 'connectors';
3
3
  type TypeInNamespace = 'structures' | 'enums' | 'metadataTypes' | 'logics' | 'interfaces';
4
4
  /**
5
5
  * 添加到指定命名空间中
6
6
  */
7
7
  export declare function addType2Namespace(app: naslTypes.App, node: any, namespacePrefix: HeadNamespace, type: TypeInNamespace, opts?: any): void;
8
- export declare function parseNaturalTS(tsCode: string, options?: {
8
+ export declare function parseNaturalTS(tsCode: string, { parsingId, strictForTraining, source, componentsMap }?: {
9
9
  parsingId?: number;
10
+ strictForTraining?: boolean;
10
11
  source?: string;
12
+ componentsMap?: Map<string, {
13
+ component: any;
14
+ propsMap: Map<string, any>;
15
+ eventsMap: Map<string, any>;
16
+ slotsMap: Map<string, any>;
17
+ }>;
11
18
  }): naslTypes.App;
12
19
  export {};
13
20
  //# sourceMappingURL=parseNaturalTS.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseNaturalTS.d.ts","sourceRoot":"","sources":["../../../src/natural/parser/parseNaturalTS.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,SAAS,EAAiG,MAAM,UAAU,CAAC;AA6HhJ,KAAK,aAAa,GAAG,KAAK,GAAG,YAAY,GAAG,MAAM,GAAG,YAAY,CAAC;AAClE,KAAK,eAAe,GAAG,YAAY,GAAG,OAAO,GAAG,eAAe,GAAG,QAAQ,GAAG,YAAY,CAAC;AAI1F;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,eAAe,EAAE,aAAa,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,CAAC,EAAE,GAAG,QA+BjI;AASD,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,EACd,EACE,SAAS,EACT,iBAAiB,EACjB,MAAkB,EAClB,aAAa,EACd,GAAE;IACD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,GAAG,CACjB,MAAM,EACN;QACE,SAAS,EAAE,GAAG,CAAC;QACf,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC3B,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC5B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC5B,CACF,CAAC;CACE,iBA2VP"}
@@ -25,16 +25,17 @@ var __importStar = (this && this.__importStar) || function (mod) {
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
26
  exports.parseNaturalTS = exports.addType2Namespace = void 0;
27
27
  const babel = __importStar(require("@babel/core"));
28
- const utils_1 = require("./transforms/utils");
29
- const transform2Entity_1 = require("./transforms/transform2Entity");
30
- const transform2Structure_1 = require("./transforms/transform2Structure");
31
- const transform2GlobalLogicDeclaration_1 = require("./transforms/transform2GlobalLogicDeclaration");
32
- const transform2Enum_1 = require("./transforms/transform2Enum");
33
- const transform2Logic_1 = require("./transforms/transform2Logic");
34
- const transform2Variable_1 = require("./transforms/transform2Variable");
28
+ const utils_1 = require("../utils");
29
+ const transform2Entity_1 = require("../transforms/transform2Entity");
30
+ const transform2Structure_1 = require("../transforms/transform2Structure");
31
+ const transform2GlobalLogicDeclaration_1 = require("../transforms/transform2GlobalLogicDeclaration");
32
+ const transform2Enum_1 = require("../transforms/transform2Enum");
33
+ const transform2Logic_1 = require("../transforms/transform2Logic");
34
+ const transform2Variable_1 = require("../transforms/transform2Variable");
35
35
  const parseNaturalTSXView_1 = require("./parseNaturalTSXView");
36
- const transform2MetadataType_1 = require("./transforms/transform2MetadataType");
37
- const transformThemeAndStyle_1 = require("./transforms/transformThemeAndStyle");
36
+ const transform2MetadataType_1 = require("../transforms/transform2MetadataType");
37
+ const transformThemeAndStyle_1 = require("../transforms/transformThemeAndStyle");
38
+ const transform2Directory_1 = require("../transforms/utils/transform2Directory");
38
39
  /**
39
40
  * 铺平命名空间
40
41
  * 会将连续嵌套的命令空间铺平
@@ -188,7 +189,7 @@ function addConnectionByName(app, connectionName, connectorName) {
188
189
  namespace: `connector.${connectorName}`,
189
190
  }));
190
191
  }
191
- function parseNaturalTS(tsCode, options = { source: 'creator' }) {
192
+ function parseNaturalTS(tsCode, { parsingId, strictForTraining, source = 'creator', componentsMap } = {}) {
192
193
  const plugins = [
193
194
  [require('@babel/plugin-proposal-decorators'), { legacy: true }],
194
195
  require('@babel/plugin-proposal-class-properties'),
@@ -199,7 +200,7 @@ function parseNaturalTS(tsCode, options = { source: 'creator' }) {
199
200
  plugins
200
201
  });
201
202
  const app = new utils_1.naslTypes.App();
202
- const namespaceStatements = flatMapNamespaceStatements(root.program.body, false, { $$beacon: true, parsingId: options?.parsingId });
203
+ const namespaceStatements = flatMapNamespaceStatements(root.program.body, false, { $$beacon: true, parsingId });
203
204
  let viewCacheMap = {};
204
205
  namespaceStatements.forEach(({ ids: _ids, statement }, index) => {
205
206
  const idNames = _ids.map((id) => id.name);
@@ -207,10 +208,13 @@ function parseNaturalTS(tsCode, options = { source: 'creator' }) {
207
208
  // console.log('nodeNamespace in namespaceStatements:', idNamesStr);
208
209
  const parseState = {
209
210
  $$beacon: true,
210
- parsingId: options?.parsingId,
211
+ parsingId,
211
212
  nodeNamespace: idNamesStr,
212
213
  nodeName: '',
213
214
  appendExtName: true,
215
+ source,
216
+ componentsMap,
217
+ strictForTraining
214
218
  };
215
219
  if (!HEAD_NAMESPACES.includes(idNames[0]))
216
220
  return (0, utils_1.throwError)(parseState, `不支持命名空间以${idNames[0]}开头`);
@@ -268,7 +272,9 @@ function parseNaturalTS(tsCode, options = { source: 'creator' }) {
268
272
  app.dataSources.push(dataSource);
269
273
  }
270
274
  if (statement.type === 'ClassDeclaration') {
271
- dataSource.entities.push((0, transform2Entity_1.transform2Entity)(statement, { ...parseState }));
275
+ const entity = (0, transform2Entity_1.transform2Entity)(statement, { ...parseState });
276
+ dataSource.entities.push(entity);
277
+ (0, transform2Directory_1.handleDirectory)(app, entity, 'Entity');
272
278
  }
273
279
  else if (statement.type === 'VariableDeclaration') { }
274
280
  else if (statement.type === 'ExpressionStatement' && statement.expression.type === 'CallExpression' && statement.expression.callee.type === 'MemberExpression' && statement.expression.callee.property.type === 'Identifier' && statement.expression.callee.property.name === '$mockData') {
@@ -288,14 +294,18 @@ function parseNaturalTS(tsCode, options = { source: 'creator' }) {
288
294
  }
289
295
  else if (typeInNamespace === 'structures') {
290
296
  if (statement.type === 'ClassDeclaration') {
291
- addType2Namespace(app, (0, transform2Structure_1.transform2Structure)(statement, { ...parseState }), headNamespace, typeInNamespace, { ...parseState });
297
+ const structure = (0, transform2Structure_1.transform2Structure)(statement, { ...parseState });
298
+ addType2Namespace(app, structure, headNamespace, typeInNamespace, { ...parseState });
299
+ (0, transform2Directory_1.handleDirectory)(app, structure, 'Structure');
292
300
  }
293
301
  else
294
302
  return (0, utils_1.throwError)(parseState, '数据结构命名空间中不支持的节点类型', statement.type, statement);
295
303
  }
296
304
  else if (typeInNamespace === 'enums') {
297
305
  if (statement.type === 'ClassDeclaration') {
298
- addType2Namespace(app, (0, transform2Enum_1.transform2Enum)(statement, statement.leadingComments, { ...parseState }), headNamespace, typeInNamespace, { ...parseState });
306
+ const enumeration = (0, transform2Enum_1.transform2Enum)(statement, statement.leadingComments, { ...parseState });
307
+ addType2Namespace(app, enumeration, headNamespace, typeInNamespace, { ...parseState });
308
+ (0, transform2Directory_1.handleDirectory)(app, enumeration, 'Enum');
299
309
  }
300
310
  else
301
311
  return (0, utils_1.throwError)(parseState, '枚举命名空间中不支持的节点类型', statement.type, statement);
@@ -308,35 +318,46 @@ function parseNaturalTS(tsCode, options = { source: 'creator' }) {
308
318
  return (0, utils_1.throwError)(parseState, '元数据类型命名空间中不支持的节点类型', statement.type, statement);
309
319
  }
310
320
  else if (typeInNamespace === 'logics') {
311
- const logicParseState = { ...parseState, logicKind: statement.type === 'TSDeclareFunction' ? 'declare' : 'export' };
312
- if (statement.type === 'TSDeclareFunction') {
313
- addType2Namespace(app, (0, transform2GlobalLogicDeclaration_1.transform2GlobalLogicDeclaration)(statement, { ...parseState }), headNamespace, typeInNamespace, logicParseState);
314
- }
315
- else if (statement.type === 'FunctionDeclaration') {
316
- addType2Namespace(app, (0, transform2Logic_1.transform2Logic)(statement, undefined, { ...parseState }), headNamespace, typeInNamespace, logicParseState);
321
+ // 只处理函数声明,忽略其他类型(如装饰器调用 $Logic({...}))
322
+ if (statement.type === 'TSDeclareFunction' || statement.type === 'FunctionDeclaration') {
323
+ const logicParseState = { ...parseState, logicKind: statement.type === 'TSDeclareFunction' ? 'declare' : 'export' };
324
+ // 检查前一个语句是否是 $Logic 调用表达式
325
+ const decorator = (0, utils_1.getDecoratorCall)(namespaceStatements[index - 1]?.statement, 'Logic');
326
+ let logic;
327
+ if (statement.type === 'TSDeclareFunction') {
328
+ logic = (0, transform2GlobalLogicDeclaration_1.transform2GlobalLogicDeclaration)(statement, decorator, { ...parseState });
329
+ }
330
+ else {
331
+ logic = (0, transform2Logic_1.transform2Logic)(statement, undefined, decorator, { ...parseState, logicType: 'global_logic' });
332
+ }
333
+ addType2Namespace(app, logic, headNamespace, typeInNamespace, logicParseState);
334
+ (0, transform2Directory_1.handleDirectory)(app, logic, 'Logic');
317
335
  }
318
- else
319
- return (0, utils_1.throwError)(parseState, '逻辑命名空间中不支持的节点类型', statement.type, statement);
320
336
  }
321
337
  else if (['apis', 'extensions', 'connectors'].includes(headNamespace)) {
322
338
  // logics / interfaces
323
339
  if (tailNamespace === 'logics' || tailNamespace === 'interfaces') {
324
340
  const logicParseState = { ...parseState, logicKind: statement.type === 'TSDeclareFunction' ? 'declare' : 'export' };
325
- const logic = (0, transform2Logic_1.transform2Logic)(statement, undefined, logicParseState);
341
+ const logic = (0, transform2Logic_1.transform2Logic)(statement, undefined, undefined, logicParseState);
326
342
  if (logicParseState.logicKind === 'declare') {
327
343
  logic.body = [];
328
344
  }
329
345
  addType2Namespace(app, logic, headNamespace, tailNamespace, logicParseState);
346
+ // 注意:扩展、API、连接器的逻辑不需要处理 directory,因为它们属于依赖模块
330
347
  }
331
348
  else if (tailNamespace === 'enums' && statement.type === 'ClassDeclaration') {
332
- addType2Namespace(app, (0, transform2Enum_1.transform2Enum)(statement, statement.leadingComments, { ...parseState }), headNamespace, tailNamespace, parseState);
349
+ const enumeration = (0, transform2Enum_1.transform2Enum)(statement, statement.leadingComments, { ...parseState });
350
+ addType2Namespace(app, enumeration, headNamespace, tailNamespace, parseState);
351
+ // 扩展、API、连接器的枚举不需要处理 directory
333
352
  }
334
353
  else if (tailNamespace === 'structures' && statement.type === 'ClassDeclaration') {
335
- addType2Namespace(app, (0, transform2Structure_1.transform2Structure)(statement, { ...parseState }), headNamespace, tailNamespace, parseState);
354
+ const structure = (0, transform2Structure_1.transform2Structure)(statement, { ...parseState });
355
+ addType2Namespace(app, structure, headNamespace, tailNamespace, parseState);
356
+ // 扩展、API、连接器的结构不需要处理 directory
336
357
  }
337
358
  else if (headNamespace === 'connectors') {
338
359
  const logicParseState = { ...parseState, logicKind: statement.type === 'TSDeclareFunction' ? 'declare' : 'export' };
339
- const logic = (0, transform2Logic_1.transform2Logic)(statement, undefined, logicParseState);
360
+ const logic = (0, transform2Logic_1.transform2Logic)(statement, undefined, undefined, logicParseState);
340
361
  if (logicParseState.logicKind === 'declare') {
341
362
  logic.body = [];
342
363
  }
@@ -347,15 +368,27 @@ function parseNaturalTS(tsCode, options = { source: 'creator' }) {
347
368
  }
348
369
  }
349
370
  else if (idNamesStr === 'app.backend.variables') {
371
+ // 只处理变量声明,忽略其他类型(如装饰器调用 $BackendVariable({...}))
350
372
  if (statement.type === 'VariableDeclaration') {
351
373
  if (!app.backend) {
352
374
  app.backend = new utils_1.naslTypes.Backend();
353
375
  }
354
- const variable = (0, transform2Variable_1.transform2BackendVariable)(statement, { ...parseState });
376
+ // 检查前一个语句是否是 $BackendVariable 装饰器
377
+ const decorator = (0, utils_1.getDecoratorCall)(namespaceStatements[index - 1]?.statement, 'BackendVariable');
378
+ const variable = (0, transform2Variable_1.transform2BackendVariable)(statement, decorator, { ...parseState });
355
379
  variable && app.backend.variables.push(variable);
356
380
  }
357
- else
381
+ else if (statement.type === 'ExpressionStatement') {
382
+ // 检查是否是 $BackendVariable 装饰器,如果不是则报错
383
+ const isDecorator = (0, utils_1.getDecoratorCall)(statement, 'BackendVariable');
384
+ if (!isDecorator) {
385
+ return (0, utils_1.throwError)(parseState, '变量命名空间中不支持的表达式', statement.type, statement);
386
+ }
387
+ // 是装饰器则跳过,等待下一个变量声明处理
388
+ }
389
+ else {
358
390
  return (0, utils_1.throwError)(parseState, '变量命名空间中不支持的节点类型', statement.type, statement);
391
+ }
359
392
  }
360
393
  else if (idNames[1] === 'frontendTypes' && idNames[3] === 'frontends') {
361
394
  let frontendType = app.frontendTypes.find((item) => item.name === idNames[2]);
@@ -383,20 +416,48 @@ function parseNaturalTS(tsCode, options = { source: 'creator' }) {
383
416
  frontendType.frontends.push(frontend);
384
417
  }
385
418
  if (idNames[5] === 'variables') {
419
+ // 只处理变量声明,忽略其他类型(如装饰器调用 $FrontendVariable({...}))
386
420
  if (statement.type === 'VariableDeclaration') {
387
- const variable = (0, transform2Variable_1.transform2FrontendVariable)(statement, { ...parseState });
421
+ // 检查前一个语句是否是 $FrontendVariable 装饰器
422
+ const decorator = (0, utils_1.getDecoratorCall)(namespaceStatements[index - 1]?.statement, 'FrontendVariable');
423
+ const variable = (0, transform2Variable_1.transform2FrontendVariable)(statement, decorator, { ...parseState });
388
424
  variable && frontend.variables.push(variable);
389
425
  }
390
- else
426
+ else if (statement.type === 'ExpressionStatement') {
427
+ // 检查是否是 $FrontendVariable 装饰器,如果不是则报错
428
+ const isDecorator = (0, utils_1.getDecoratorCall)(statement, 'FrontendVariable');
429
+ if (!isDecorator) {
430
+ return (0, utils_1.throwError)(parseState, '前端变量命名空间中不支持的表达式', statement.type, statement);
431
+ }
432
+ // 是装饰器则跳过,等待下一个变量声明处理
433
+ }
434
+ else {
391
435
  return (0, utils_1.throwError)(parseState, '前端变量命名空间中不支持的节点类型', statement.type, statement);
436
+ }
437
+ }
438
+ else if (idNames[5] === 'theme') {
439
+ if (statement.type === 'ExpressionStatement' && statement.expression.type === 'TaggedTemplateExpression') {
440
+ const expression = statement.expression;
441
+ if (expression.tag.type === 'Identifier' && expression.tag.name === '$theme') {
442
+ if (expression.quasi.expressions.length > 0) {
443
+ return (0, utils_1.throwError)(parseState, '不支持在 $theme 中使用动态表达式');
444
+ }
445
+ const css = expression.quasi.quasis[0].value.raw;
446
+ const { scopeVariableMap, cssRules } = (0, transformThemeAndStyle_1.transformTheme)(css, { ...parseState });
447
+ frontend.theme.scopeVariableMap = scopeVariableMap;
448
+ frontend.theme.cssRules = cssRules;
449
+ }
450
+ else {
451
+ return (0, utils_1.throwError)(parseState, 'theme.css 必须使用 $theme 标签模板字符串', statement.type, statement);
452
+ }
453
+ }
454
+ else {
455
+ return (0, utils_1.throwError)(parseState, 'theme.css 必须使用 $theme 标签模板字符串', statement.type, statement);
456
+ }
392
457
  }
393
458
  else if (idNames[5] === 'views') {
394
459
  if (statement.type === 'FunctionDeclaration' || statement.type === 'TSDeclareFunction') {
395
- let decorator;
396
- let prevStatement = namespaceStatements[index - 1]?.statement;
397
- if (prevStatement?.type === 'ExpressionStatement' && prevStatement.expression.type === 'CallExpression' && prevStatement.expression.callee.type === 'Identifier' && prevStatement.expression.callee.name === '$View') {
398
- decorator = prevStatement.expression;
399
- }
460
+ const decorator = (0, utils_1.getDecoratorCall)(namespaceStatements[index - 1]?.statement, 'View');
400
461
  const newOptions = { ...parseState, isInFrontend: true };
401
462
  const view = statement.type === 'FunctionDeclaration' ? (0, parseNaturalTSXView_1.transform2View)(statement, decorator, newOptions) : (0, parseNaturalTSXView_1.transformTSDeclareFunction2View)(statement, decorator, newOptions);
402
463
  newOptions.nodeName = view.name;
@@ -431,8 +492,27 @@ function parseNaturalTS(tsCode, options = { source: 'creator' }) {
431
492
  parentView = findViewByPath(frontend.views, parentPathSegments);
432
493
  if (!parentView)
433
494
  return (0, utils_1.throwError)(newOptions, `找不到父级页面:${idNames.slice(0, -1).join('.')}`);
495
+ // 检查父页面的所有元素中是否包含 el-router-view
496
+ const hasRouterView = parentView?.elements?.some((element) => {
497
+ return element?.findElementByTag('el-router-view');
498
+ });
499
+ if (!hasRouterView) {
500
+ return (0, utils_1.throwError)({ ...newOptions, nodeNamespace: '' }, `父级页面 ${parentView.name} 下存在子页面,但没有子页面容器,请为父页面添加对应的 <ElRouterView />组件`);
501
+ }
434
502
  parentViewList = parentView.children;
435
503
  }
504
+ // 子页面未开启权限时,向上找最近一个 auth=true 的祖先页面,继承其 auth 和 bindRoles
505
+ if (!view.auth && parentPathSegments.length > 0) {
506
+ for (let i = parentPathSegments.length; i >= 1; i--) {
507
+ const ancestorPath = parentPathSegments.slice(0, i).join('/');
508
+ const ancestorView = viewCacheMap[ancestorPath] ?? findViewByPath(frontend.views, parentPathSegments.slice(0, i));
509
+ if (ancestorView?.auth) {
510
+ view.auth = ancestorView.auth;
511
+ view.bindRoles = ancestorView.bindRoles;
512
+ break;
513
+ }
514
+ }
515
+ }
436
516
  if (view) {
437
517
  const existingView = parentViewList.find((item) => item.name === view.name);
438
518
  if (existingView) {
@@ -458,8 +538,9 @@ function parseNaturalTS(tsCode, options = { source: 'creator' }) {
458
538
  return (0, utils_1.throwError)(parseState, '不支持在 $theme 中使用动态表达式');
459
539
  }
460
540
  const css = expression.quasi.quasis[0].value.raw;
461
- const variableMap = (0, transformThemeAndStyle_1.transformTheme)(css, { ...parseState });
462
- frontend.theme.scopeVariableMap = variableMap;
541
+ const { scopeVariableMap, cssRules } = (0, transformThemeAndStyle_1.transformTheme)(css, { ...parseState });
542
+ frontend.theme.scopeVariableMap = scopeVariableMap;
543
+ frontend.theme.cssRules = cssRules;
463
544
  }
464
545
  else if (expression.tag.type === 'Identifier' && expression.tag.name === '$extraStyle') {
465
546
  if (expression.quasi.expressions.length > 0) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseNaturalTS.js","sourceRoot":"","sources":["../../../src/natural/parser/parseNaturalTS.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
- import { babelTypes, naslTypes, ParseNaturalTSState, ParseLogicState, ParseViewState } from './transforms/utils';
2
- export declare function transform2Variables(node: babelTypes.VariableDeclaration, options: ParseNaturalTSState): naslTypes.Variable[];
1
+ import { babelTypes, naslTypes, type ParseNaturalTSState, type ParseLogicState, type ParseViewState } from '../utils';
3
2
  export declare function transformJSXElement2ViewElement(node: babelTypes.JSXElement, options: ParseViewState): naslTypes.ViewElement | void;
4
3
  export declare function transform2View(func: babelTypes.FunctionDeclaration, decorator: babelTypes.CallExpression, options: ParseNaturalTSState): naslTypes.View;
5
4
  export declare function transformTSDeclareFunction2View(func: babelTypes.TSDeclareFunction, decorator: babelTypes.CallExpression, options: ParseLogicState): naslTypes.View;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseNaturalTSXView.d.ts","sourceRoot":"","sources":["../../../src/natural/parser/parseNaturalTSXView.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAkF,KAAK,mBAAmB,EAAE,KAAK,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AA2CtM,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE,cAAc,GAAG,SAAS,CAAC,WAAW,GAAG,IAAI,CAyZlI;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,UAAU,CAAC,mBAAmB,EAAE,SAAS,EAAE,UAAU,CAAC,cAAc,EAAE,OAAO,EAAE,mBAAmB,kBAwItI;AAED,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,UAAU,CAAC,iBAAiB,EAAE,SAAS,EAAE,UAAU,CAAC,cAAc,EAAE,OAAO,EAAE,eAAe,kBAiEjJ;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,kBAuB/E"}