@lcap/nasl 3.5.0-alpha.1 → 3.5.0-beta.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 (571) hide show
  1. package/out/bak/translator.js +119 -39
  2. package/out/bak/translator.js.map +1 -1
  3. package/out/breakpoint/generator/BreakpointNode.d.ts +3 -0
  4. package/out/breakpoint/generator/BreakpointNode.js +9 -0
  5. package/out/breakpoint/generator/BreakpointNode.js.map +1 -1
  6. package/out/breakpoint/generator/CallbackNode.js +15 -0
  7. package/out/breakpoint/generator/CallbackNode.js.map +1 -1
  8. package/out/breakpoint/shared/constants.js +1 -0
  9. package/out/breakpoint/shared/constants.js.map +1 -1
  10. package/out/breakpoint/shared/utils.js +12 -6
  11. package/out/breakpoint/shared/utils.js.map +1 -1
  12. package/out/common/BaseNode.d.ts +1 -0
  13. package/out/common/BaseNode.js +23 -34
  14. package/out/common/BaseNode.js.map +1 -1
  15. package/out/concepts/App__.d.ts +51 -51
  16. package/out/concepts/App__.js +87 -92
  17. package/out/concepts/App__.js.map +1 -1
  18. package/out/concepts/BackendVariable__.js +10 -2
  19. package/out/concepts/BackendVariable__.js.map +1 -1
  20. package/out/concepts/BinaryExpression__.d.ts +2 -0
  21. package/out/concepts/BinaryExpression__.js +4 -0
  22. package/out/concepts/BinaryExpression__.js.map +1 -1
  23. package/out/concepts/BindAttribute__.js +16 -6
  24. package/out/concepts/BindAttribute__.js.map +1 -1
  25. package/out/concepts/BindDirective__.d.ts +1 -0
  26. package/out/concepts/BindDirective__.js +19 -4
  27. package/out/concepts/BindDirective__.js.map +1 -1
  28. package/out/concepts/BindEvent__.d.ts +3 -1
  29. package/out/concepts/BindEvent__.js +38 -13
  30. package/out/concepts/BindEvent__.js.map +1 -1
  31. package/out/concepts/BusinessComponent__.d.ts +637 -0
  32. package/out/concepts/BusinessComponent__.js +1892 -0
  33. package/out/concepts/BusinessComponent__.js.map +1 -0
  34. package/out/concepts/BusinessLogic__.d.ts +38 -0
  35. package/out/concepts/BusinessLogic__.js +358 -0
  36. package/out/concepts/BusinessLogic__.js.map +1 -0
  37. package/out/concepts/CallEvent__.d.ts +97 -0
  38. package/out/concepts/CallEvent__.js +263 -0
  39. package/out/concepts/CallEvent__.js.map +1 -0
  40. package/out/concepts/CallFunction__.d.ts +2 -0
  41. package/out/concepts/CallFunction__.js +14 -2
  42. package/out/concepts/CallFunction__.js.map +1 -1
  43. package/out/concepts/CallInterface__.d.ts +2 -0
  44. package/out/concepts/CallInterface__.js +5 -1
  45. package/out/concepts/CallInterface__.js.map +1 -1
  46. package/out/concepts/CallLogic__.d.ts +5 -2
  47. package/out/concepts/CallLogic__.js +43 -50
  48. package/out/concepts/CallLogic__.js.map +1 -1
  49. package/out/concepts/Constant__.js +7 -6
  50. package/out/concepts/Constant__.js.map +1 -1
  51. package/out/concepts/Destination__.js +2 -2
  52. package/out/concepts/Destination__.js.map +1 -1
  53. package/out/concepts/End__.js +2 -1
  54. package/out/concepts/End__.js.map +1 -1
  55. package/out/concepts/Event__.d.ts +10 -0
  56. package/out/concepts/Event__.js +49 -0
  57. package/out/concepts/Event__.js.map +1 -1
  58. package/out/concepts/FrontendType__.d.ts +308 -0
  59. package/out/concepts/FrontendType__.js +605 -0
  60. package/out/concepts/FrontendType__.js.map +1 -0
  61. package/out/concepts/Frontend__.d.ts +0 -88
  62. package/out/concepts/Frontend__.js +1 -143
  63. package/out/concepts/Frontend__.js.map +1 -1
  64. package/out/concepts/Identifier__.d.ts +5 -0
  65. package/out/concepts/Identifier__.js +19 -9
  66. package/out/concepts/Identifier__.js.map +1 -1
  67. package/out/concepts/LogicItem__.d.ts +1 -1
  68. package/out/concepts/LogicItem__.js.map +1 -1
  69. package/out/concepts/Logic__.d.ts +3 -1
  70. package/out/concepts/Logic__.js +16 -13
  71. package/out/concepts/Logic__.js.map +1 -1
  72. package/out/concepts/MemberExpression__.d.ts +1 -1
  73. package/out/concepts/MemberExpression__.js +3 -3
  74. package/out/concepts/MemberExpression__.js.map +1 -1
  75. package/out/concepts/NewComposite__.d.ts +2 -0
  76. package/out/concepts/NewComposite__.js +4 -0
  77. package/out/concepts/NewComposite__.js.map +1 -1
  78. package/out/concepts/NewList__.d.ts +2 -0
  79. package/out/concepts/NewList__.js +4 -0
  80. package/out/concepts/NewList__.js.map +1 -1
  81. package/out/concepts/NewMap__.d.ts +2 -0
  82. package/out/concepts/NewMap__.js +4 -0
  83. package/out/concepts/NewMap__.js.map +1 -1
  84. package/out/concepts/ParamWithGroup__.d.ts +39 -0
  85. package/out/concepts/ParamWithGroup__.js +85 -0
  86. package/out/concepts/ParamWithGroup__.js.map +1 -0
  87. package/out/concepts/Param__.js +11 -3
  88. package/out/concepts/Param__.js.map +1 -1
  89. package/out/concepts/Return__.js +17 -9
  90. package/out/concepts/Return__.js.map +1 -1
  91. package/out/concepts/TypeAnnotation__.js.map +1 -1
  92. package/out/concepts/Variable__.js +17 -8
  93. package/out/concepts/Variable__.js.map +1 -1
  94. package/out/concepts/ViewElement__.d.ts +17 -1
  95. package/out/concepts/ViewElement__.js +141 -15
  96. package/out/concepts/ViewElement__.js.map +1 -1
  97. package/out/concepts/View__.js +4 -4
  98. package/out/concepts/View__.js.map +1 -1
  99. package/out/concepts/index__.d.ts +5 -0
  100. package/out/concepts/index__.js +5 -0
  101. package/out/concepts/index__.js.map +1 -1
  102. package/out/concepts/utils/asserts.d.ts +258 -3
  103. package/out/concepts/utils/asserts.js +351 -13
  104. package/out/concepts/utils/asserts.js.map +1 -1
  105. package/out/concepts/utils/quick-info.d.ts +13 -0
  106. package/out/concepts/utils/quick-info.js +51 -0
  107. package/out/concepts/utils/quick-info.js.map +1 -0
  108. package/out/concepts/utils/types.d.ts +20 -3
  109. package/out/generator/genBundleFiles.js +25 -11
  110. package/out/generator/genBundleFiles.js.map +1 -1
  111. package/out/generator/genReleaseBody.js +12 -3
  112. package/out/generator/genReleaseBody.js.map +1 -1
  113. package/out/generator/permission.js +3 -3
  114. package/out/generator/permission.js.map +1 -1
  115. package/out/server/extendBaseNode.js +6 -4
  116. package/out/server/extendBaseNode.js.map +1 -1
  117. package/out/server/getLogics.js +62 -27
  118. package/out/server/getLogics.js.map +1 -1
  119. package/out/server/getMemberIdentifier.js +6 -1
  120. package/out/server/getMemberIdentifier.js.map +1 -1
  121. package/out/server/naslServer.js +26 -59
  122. package/out/server/naslServer.js.map +1 -1
  123. package/out/server/translator.js +6 -1
  124. package/out/server/translator.js.map +1 -1
  125. package/out/service/storage/init.js +1 -2
  126. package/out/service/storage/init.js.map +1 -1
  127. package/out/templator/genCreateBlock.js +6 -6
  128. package/out/templator/genCreateBlock.js.map +1 -1
  129. package/out/templator/genCurdEditMultipleKeyBlock.js +16 -16
  130. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  131. package/out/templator/genCurdMultipleKeyBlock.js +36 -36
  132. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  133. package/out/templator/genGetBlock.js +4 -4
  134. package/out/templator/genGetBlock.js.map +1 -1
  135. package/out/templator/genGridViewBlock.js +12 -12
  136. package/out/templator/genGridViewBlock.js.map +1 -1
  137. package/out/templator/genListViewBlock.js +4 -4
  138. package/out/templator/genListViewBlock.js.map +1 -1
  139. package/out/templator/genSelectBlock.js +3 -3
  140. package/out/templator/genSelectBlock.js.map +1 -1
  141. package/out/templator/genTableBlock.js +10 -10
  142. package/out/templator/genTableBlock.js.map +1 -1
  143. package/out/templator/genUpdateBlock.js +8 -8
  144. package/out/templator/genUpdateBlock.js.map +1 -1
  145. package/out/templator/utils.d.ts +2 -2
  146. package/out/templator/utils.js.map +1 -1
  147. package/out/translator/utils.d.ts +2 -2
  148. package/out/translator/utils.js +0 -18
  149. package/out/translator/utils.js.map +1 -1
  150. package/out/utils/i18nInfo.js +7 -2
  151. package/out/utils/i18nInfo.js.map +1 -1
  152. package/package.json +1 -1
  153. package/src/bak/translator.js +121 -43
  154. package/src/breakpoint/generator/BreakpointNode.ts +12 -0
  155. package/src/breakpoint/generator/CallbackNode.ts +17 -0
  156. package/src/breakpoint/shared/constants.ts +1 -0
  157. package/src/breakpoint/shared/utils.ts +13 -8
  158. package/src/common/BaseNode.ts +22 -34
  159. package/src/concepts/App__.ts +140 -146
  160. package/src/concepts/BackendVariable__.ts +10 -2
  161. package/src/concepts/BinaryExpression__.ts +5 -1
  162. package/src/concepts/BindAttribute__.ts +15 -6
  163. package/src/concepts/BindDirective__.ts +19 -4
  164. package/src/concepts/BindEvent__.ts +40 -12
  165. package/src/concepts/BusinessComponent__.ts +2659 -0
  166. package/src/concepts/BusinessLogic__.ts +376 -0
  167. package/src/concepts/CallEvent__.ts +334 -0
  168. package/src/concepts/CallFunction__.ts +15 -2
  169. package/src/concepts/CallInterface__.ts +6 -1
  170. package/src/concepts/CallLogic__.ts +50 -58
  171. package/src/concepts/Constant__.ts +5 -7
  172. package/src/concepts/Destination__.ts +2 -2
  173. package/src/concepts/End__.ts +1 -0
  174. package/src/concepts/Event__.ts +57 -0
  175. package/src/concepts/FrontendType__.ts +919 -0
  176. package/src/concepts/Frontend__.ts +3 -251
  177. package/src/concepts/Identifier__.ts +29 -13
  178. package/src/concepts/LogicItem__.ts +1 -0
  179. package/src/concepts/Logic__.ts +21 -14
  180. package/src/concepts/MemberExpression__.ts +3 -3
  181. package/src/concepts/NewComposite__.ts +5 -5
  182. package/src/concepts/NewList__.ts +6 -2
  183. package/src/concepts/NewMap__.ts +6 -3
  184. package/src/concepts/ParamWithGroup__.ts +101 -0
  185. package/src/concepts/Param__.ts +11 -3
  186. package/src/concepts/Return__.ts +15 -12
  187. package/src/concepts/TypeAnnotation__.ts +1 -1
  188. package/src/concepts/Variable__.ts +17 -9
  189. package/src/concepts/ViewElement__.ts +164 -31
  190. package/src/concepts/View__.ts +6 -4
  191. package/src/concepts/index__.ts +5 -0
  192. package/src/concepts/utils/asserts.ts +367 -4
  193. package/src/concepts/utils/quick-info.ts +64 -0
  194. package/src/concepts/utils/types.ts +28 -0
  195. package/src/generator/genBundleFiles.ts +33 -15
  196. package/src/generator/genReleaseBody.ts +14 -3
  197. package/src/generator/permission.ts +8 -6
  198. package/src/server/extendBaseNode.ts +22 -20
  199. package/src/server/getLogics.ts +79 -41
  200. package/src/server/getMemberIdentifier.ts +7 -1
  201. package/src/server/naslServer.ts +28 -57
  202. package/src/server/translator.ts +7 -1
  203. package/src/service/storage/init.ts +1 -2
  204. package/src/templator/genCreateBlock.ts +6 -6
  205. package/src/templator/genCurdEditMultipleKeyBlock.ts +16 -16
  206. package/src/templator/genCurdMultipleKeyBlock.ts +36 -36
  207. package/src/templator/genGetBlock.ts +4 -4
  208. package/src/templator/genGridViewBlock.ts +12 -12
  209. package/src/templator/genListViewBlock.ts +4 -4
  210. package/src/templator/genSelectBlock.ts +3 -3
  211. package/src/templator/genTableBlock.ts +10 -10
  212. package/src/templator/genUpdateBlock.ts +8 -8
  213. package/src/templator/utils.ts +2 -2
  214. package/src/translator/utils.ts +2 -22
  215. package/src/utils/i18nInfo.ts +7 -2
  216. package/test/concepts/binary-expression/__snapshots__/getQuickInfoOffset.spec.ts.snap +25 -0
  217. package/test/concepts/binary-expression/getQuickInfoOffset.spec.ts +19 -0
  218. package/test/concepts/call-function/__snapshots__/getQuickInfoOffset.spec.ts.snap +41 -0
  219. package/test/concepts/call-function/fixtures/from-string.json +68 -59
  220. package/test/concepts/call-function/fixtures/to-string-global-tz.json +67 -58
  221. package/test/concepts/call-function/fixtures/to-string-no-tz.json +57 -48
  222. package/test/concepts/call-function/fixtures/to-string-user-tz.json +69 -60
  223. package/test/concepts/call-function/fixtures/to-string-utc-tz.json +69 -60
  224. package/test/concepts/call-function/getQuickInfoOffset.spec.ts +19 -0
  225. package/test/concepts/call-interface/__snapshots__/getQuickInfoOffset.spec.ts.snap +86 -0
  226. package/test/concepts/call-interface/__snapshots__/toEmbeddedTS.spec.ts.snap +3 -3
  227. package/test/concepts/call-interface/fixtures/only-interface.json +81 -72
  228. package/test/concepts/call-interface/fixtures/with-body-complex-argument.json +223 -214
  229. package/test/concepts/call-interface/fixtures/with-body-no-argument.json +85 -76
  230. package/test/concepts/call-interface/fixtures/with-body-simple-argument.json +100 -91
  231. package/test/concepts/call-interface/fixtures/with-headers-no-argument.json +88 -79
  232. package/test/concepts/call-interface/fixtures/with-headers.json +90 -81
  233. package/test/concepts/call-interface/fixtures/with-query-no-argument.json +88 -79
  234. package/test/concepts/call-interface/fixtures/with-query.json +90 -81
  235. package/test/concepts/call-interface/getQuickInfoOffset.spec.ts +19 -0
  236. package/test/concepts/call-logic/__snapshots__/getQuickInfoOffset.spec.ts.snap +4 -2
  237. package/test/concepts/call-logic/fixtures/entries-get-with-arguments.json +104 -95
  238. package/test/concepts/call-logic/fixtures/entries-update-with-arguments.json +209 -200
  239. package/test/concepts/call-logic/fixtures/global-logic-argument-no-expression.json +97 -88
  240. package/test/concepts/call-logic/fixtures/global-logic-argument-some-expression.json +124 -115
  241. package/test/concepts/call-logic/fixtures/json-deserialize.json +120 -111
  242. package/test/concepts/call-logic/fixtures/json-serialize-with-string.json +124 -115
  243. package/test/concepts/call-logic/fixtures/json-serialize.json +124 -115
  244. package/test/concepts/call-logic/fixtures/view-buildin-logic-with-argument.json +91 -82
  245. package/test/concepts/call-logic/fixtures/view-component-logic-no-argument.json +88 -79
  246. package/test/concepts/call-logic/fixtures/view-component-with-validation.json +144 -135
  247. package/test/concepts/call-logic/getQuickInfoOffset.spec.ts +2 -7
  248. package/test/concepts/identifier/fixtures/view-variable.json +145 -136
  249. package/test/concepts/new-composite/__snapshots__/getQuickInfoOffset.spec.ts.snap +104 -0
  250. package/test/concepts/new-composite/__snapshots__/toEmbeddedTS.spec.ts.snap +97 -0
  251. package/test/concepts/new-composite/__snapshots__/toJS.spec.ts.snap +43 -0
  252. package/test/concepts/new-composite/constant.ts +5 -0
  253. package/test/concepts/new-composite/fixtures/nested-transform.json +241 -0
  254. package/test/concepts/new-composite/fixtures/nested.json +146 -0
  255. package/test/concepts/new-composite/fixtures/normal.json +63 -0
  256. package/test/concepts/new-composite/getQuickInfoOffset.spec.ts +19 -0
  257. package/test/concepts/new-composite/toEmbeddedTS.spec.ts +15 -0
  258. package/test/concepts/new-composite/toJS.spec.ts +14 -0
  259. package/test/concepts/new-list/__snapshots__/getQuickInfoOffset.spec.ts.snap +165 -0
  260. package/test/concepts/new-list/__snapshots__/toEmbeddedTS.spec.ts.snap +207 -0
  261. package/test/concepts/new-list/__snapshots__/toJS.spec.ts.snap +63 -0
  262. package/test/concepts/new-list/constant.ts +5 -0
  263. package/test/concepts/new-list/fixtures/nested-map.json +117 -0
  264. package/test/concepts/new-list/fixtures/nested-tranform.json +140 -0
  265. package/test/concepts/new-list/fixtures/nested.json +107 -0
  266. package/test/concepts/new-list/fixtures/normal.json +95 -0
  267. package/test/concepts/new-list/getQuickInfoOffset.spec.ts +19 -0
  268. package/test/concepts/new-list/toEmbeddedTS.spec.ts +15 -0
  269. package/test/concepts/new-list/toJS.spec.ts +14 -0
  270. package/test/concepts/new-map/__snapshots__/getQuickInfoOffset.spec.ts.snap +115 -0
  271. package/test/concepts/new-map/__snapshots__/toEmbeddedTS.spec.ts.snap +192 -0
  272. package/test/concepts/new-map/__snapshots__/toJS.spec.ts.snap +54 -0
  273. package/test/concepts/new-map/constant.ts +5 -0
  274. package/test/concepts/new-map/fixtures/nested-transform.json +169 -0
  275. package/test/concepts/new-map/fixtures/nested.json +141 -0
  276. package/test/concepts/new-map/fixtures/normal.json +101 -0
  277. package/test/concepts/new-map/getQuickInfoOffset.spec.ts +19 -0
  278. package/test/concepts/new-map/toEmbeddedTS.spec.ts +15 -0
  279. package/test/concepts/new-map/toJS.spec.ts +14 -0
  280. package/test/concepts/utils.ts +17 -0
  281. package/test/concepts/view-element/__snapshots__/toVue.spec.ts.snap +1 -1
  282. package/test/concepts/view-element/fixtures/default-login.json +221 -212
  283. package/test/concepts/view-element/fixtures/default-not-found.json +183 -174
  284. package/test/concepts/view-element/fixtures/with-role-auth.json +91 -82
  285. package/test/concepts/view-element/fixtures/with-table.json +1894 -1885
  286. package/test/concepts/view-element/toVue.spec.ts +1 -0
  287. package/.nyc_output/b920244d-8d01-4e76-be5a-95132217c5a1.json +0 -1
  288. package/.nyc_output/processinfo/b920244d-8d01-4e76-be5a-95132217c5a1.json +0 -1
  289. package/.nyc_output/processinfo/index.json +0 -1
  290. package/coverage/base.css +0 -224
  291. package/coverage/block-navigation.js +0 -87
  292. package/coverage/favicon.png +0 -0
  293. package/coverage/index.html +0 -461
  294. package/coverage/prettify.css +0 -1
  295. package/coverage/prettify.js +0 -2
  296. package/coverage/sort-arrow-sprite.png +0 -0
  297. package/coverage/sorter.js +0 -196
  298. package/coverage/src/automate/engine/index.html +0 -116
  299. package/coverage/src/automate/engine/utils.js.html +0 -1414
  300. package/coverage/src/bak/index.html +0 -116
  301. package/coverage/src/bak/translator.js.html +0 -631
  302. package/coverage/src/breakpoint/generator/AfterStartNode.ts.html +0 -175
  303. package/coverage/src/breakpoint/generator/BeforeEndNode.ts.html +0 -169
  304. package/coverage/src/breakpoint/generator/BreakpointNode.ts.html +0 -1246
  305. package/coverage/src/breakpoint/generator/CallbackNode.ts.html +0 -145
  306. package/coverage/src/breakpoint/generator/index.html +0 -176
  307. package/coverage/src/breakpoint/generator/index.ts.html +0 -508
  308. package/coverage/src/breakpoint/index.html +0 -116
  309. package/coverage/src/breakpoint/index.ts.html +0 -94
  310. package/coverage/src/breakpoint/shared/constants.ts.html +0 -436
  311. package/coverage/src/breakpoint/shared/index.html +0 -176
  312. package/coverage/src/breakpoint/shared/index.ts.html +0 -94
  313. package/coverage/src/breakpoint/shared/operations.ts.html +0 -160
  314. package/coverage/src/breakpoint/shared/socket.ts.html +0 -1297
  315. package/coverage/src/breakpoint/shared/utils.ts.html +0 -1087
  316. package/coverage/src/breakpoint/store/core.ts.html +0 -1600
  317. package/coverage/src/breakpoint/store/dock.ts.html +0 -733
  318. package/coverage/src/breakpoint/store/index.html +0 -146
  319. package/coverage/src/breakpoint/store/index.ts.html +0 -91
  320. package/coverage/src/common/BaseNode.ts.html +0 -4081
  321. package/coverage/src/common/Command.ts.html +0 -310
  322. package/coverage/src/common/EventEmitter.ts.html +0 -373
  323. package/coverage/src/common/Messager.ts.html +0 -820
  324. package/coverage/src/common/asyncFuncMap.ts.html +0 -127
  325. package/coverage/src/common/index.html +0 -191
  326. package/coverage/src/common/index.ts.html +0 -94
  327. package/coverage/src/concepts/Abort__.ts.html +0 -331
  328. package/coverage/src/concepts/Anchor__.ts.html +0 -667
  329. package/coverage/src/concepts/AnonymousFunction__.ts.html +0 -2092
  330. package/coverage/src/concepts/App__.ts.html +0 -13651
  331. package/coverage/src/concepts/Argument__.ts.html +0 -907
  332. package/coverage/src/concepts/Assignee__.ts.html +0 -2317
  333. package/coverage/src/concepts/AssignmentLine__.ts.html +0 -430
  334. package/coverage/src/concepts/Assignment__.ts.html +0 -1174
  335. package/coverage/src/concepts/Attribute__.ts.html +0 -919
  336. package/coverage/src/concepts/AuthInterface__.ts.html +0 -370
  337. package/coverage/src/concepts/AuthLogicForCallInterface__.ts.html +0 -2011
  338. package/coverage/src/concepts/AuthLogic__.ts.html +0 -793
  339. package/coverage/src/concepts/BackendVariable__.ts.html +0 -1690
  340. package/coverage/src/concepts/Backend__.ts.html +0 -1192
  341. package/coverage/src/concepts/BatchAssignment__.ts.html +0 -3376
  342. package/coverage/src/concepts/BinaryExpression__.ts.html +0 -1468
  343. package/coverage/src/concepts/BindAttribute__.ts.html +0 -3931
  344. package/coverage/src/concepts/BindDirective__.ts.html +0 -2002
  345. package/coverage/src/concepts/BindEvent__.ts.html +0 -3487
  346. package/coverage/src/concepts/BindStyle__.ts.html +0 -1645
  347. package/coverage/src/concepts/BooleanLiteral__.ts.html +0 -421
  348. package/coverage/src/concepts/CallAuthInterface__.ts.html +0 -1642
  349. package/coverage/src/concepts/CallConnector__.ts.html +0 -925
  350. package/coverage/src/concepts/CallFunction__.ts.html +0 -2164
  351. package/coverage/src/concepts/CallInterface__.ts.html +0 -2776
  352. package/coverage/src/concepts/CallLogic__.ts.html +0 -4693
  353. package/coverage/src/concepts/CallQueryComponent__.ts.html +0 -5419
  354. package/coverage/src/concepts/Comment__.ts.html +0 -397
  355. package/coverage/src/concepts/CompletionProperty__.ts.html +0 -946
  356. package/coverage/src/concepts/ConfigGroup__.ts.html +0 -1132
  357. package/coverage/src/concepts/ConfigPropertyValue__.ts.html +0 -427
  358. package/coverage/src/concepts/ConfigProperty__.ts.html +0 -1375
  359. package/coverage/src/concepts/Configuration__.ts.html +0 -1054
  360. package/coverage/src/concepts/Connection__.ts.html +0 -1387
  361. package/coverage/src/concepts/ConnectorTrigger__.ts.html +0 -598
  362. package/coverage/src/concepts/Connector__.ts.html +0 -4390
  363. package/coverage/src/concepts/Constant__.ts.html +0 -1123
  364. package/coverage/src/concepts/DataSource__.ts.html +0 -1798
  365. package/coverage/src/concepts/DatabaseTypeAnnotation__.ts.html +0 -334
  366. package/coverage/src/concepts/DefaultValue__.ts.html +0 -946
  367. package/coverage/src/concepts/Destination__.ts.html +0 -2761
  368. package/coverage/src/concepts/End__.ts.html +0 -436
  369. package/coverage/src/concepts/EntityIndex__.ts.html +0 -799
  370. package/coverage/src/concepts/EntityProperty__.ts.html +0 -2866
  371. package/coverage/src/concepts/Entity__.ts.html +0 -3070
  372. package/coverage/src/concepts/EnumItem__.ts.html +0 -553
  373. package/coverage/src/concepts/Enum__.ts.html +0 -1258
  374. package/coverage/src/concepts/Event__.ts.html +0 -1111
  375. package/coverage/src/concepts/ExternalDestination__.ts.html +0 -1060
  376. package/coverage/src/concepts/ForEachStatement__.ts.html +0 -2023
  377. package/coverage/src/concepts/FrontendLibrary__.ts.html +0 -1762
  378. package/coverage/src/concepts/FrontendVariable__.ts.html +0 -292
  379. package/coverage/src/concepts/Frontend__.ts.html +0 -4078
  380. package/coverage/src/concepts/Function__.ts.html +0 -3718
  381. package/coverage/src/concepts/Identifier__.ts.html +0 -1060
  382. package/coverage/src/concepts/IfStatement__.ts.html +0 -1636
  383. package/coverage/src/concepts/Integration__.ts.html +0 -1273
  384. package/coverage/src/concepts/InterfaceParam__.ts.html +0 -1258
  385. package/coverage/src/concepts/Interface__.ts.html +0 -3463
  386. package/coverage/src/concepts/JSBlock__.ts.html +0 -424
  387. package/coverage/src/concepts/JavaLogic__.ts.html +0 -463
  388. package/coverage/src/concepts/LogicItem__.ts.html +0 -1174
  389. package/coverage/src/concepts/Logic__.ts.html +0 -7732
  390. package/coverage/src/concepts/MatchCase__.ts.html +0 -2974
  391. package/coverage/src/concepts/Match__.ts.html +0 -2494
  392. package/coverage/src/concepts/MemberExpression__.ts.html +0 -1744
  393. package/coverage/src/concepts/MicroApp__.ts.html +0 -439
  394. package/coverage/src/concepts/Module__.ts.html +0 -9385
  395. package/coverage/src/concepts/MsgTriggerEvent__.ts.html +0 -1072
  396. package/coverage/src/concepts/MsgTriggerLauncher__.ts.html +0 -1045
  397. package/coverage/src/concepts/Namespace__.ts.html +0 -8221
  398. package/coverage/src/concepts/NewComposite__.ts.html +0 -4765
  399. package/coverage/src/concepts/NewList__.ts.html +0 -1702
  400. package/coverage/src/concepts/NewMap__.ts.html +0 -2470
  401. package/coverage/src/concepts/New__.ts.html +0 -289
  402. package/coverage/src/concepts/NullLiteral__.ts.html +0 -352
  403. package/coverage/src/concepts/NumericLiteral__.ts.html +0 -697
  404. package/coverage/src/concepts/OqlQueryComponent__.ts.html +0 -1237
  405. package/coverage/src/concepts/OverriddenLogic__.ts.html +0 -6970
  406. package/coverage/src/concepts/Param__.ts.html +0 -1798
  407. package/coverage/src/concepts/Point__.ts.html +0 -334
  408. package/coverage/src/concepts/ProcessComponent__.ts.html +0 -1717
  409. package/coverage/src/concepts/ProcessElement__.ts.html +0 -6187
  410. package/coverage/src/concepts/ProcessOutcome__.ts.html +0 -355
  411. package/coverage/src/concepts/ProcessOutcomes__.ts.html +0 -355
  412. package/coverage/src/concepts/Process__.ts.html +0 -5071
  413. package/coverage/src/concepts/QueryAggregateExpression__.ts.html +0 -589
  414. package/coverage/src/concepts/QueryFieldExpression__.ts.html +0 -586
  415. package/coverage/src/concepts/QueryFromExpression__.ts.html +0 -937
  416. package/coverage/src/concepts/QueryGroupByExpression__.ts.html +0 -580
  417. package/coverage/src/concepts/QueryJoinExpression__.ts.html +0 -1606
  418. package/coverage/src/concepts/QueryLimitExpression__.ts.html +0 -664
  419. package/coverage/src/concepts/QueryOrderByExpression__.ts.html +0 -706
  420. package/coverage/src/concepts/QuerySelectExpression__.ts.html +0 -1741
  421. package/coverage/src/concepts/Rect__.ts.html +0 -376
  422. package/coverage/src/concepts/Return__.ts.html +0 -1471
  423. package/coverage/src/concepts/Role__.ts.html +0 -604
  424. package/coverage/src/concepts/SelectMembers__.ts.html +0 -1279
  425. package/coverage/src/concepts/Slot__.ts.html +0 -649
  426. package/coverage/src/concepts/SqlQueryComponent__.ts.html +0 -1003
  427. package/coverage/src/concepts/Start__.ts.html +0 -307
  428. package/coverage/src/concepts/StringInterpolation__.ts.html +0 -1156
  429. package/coverage/src/concepts/StringLiteral__.ts.html +0 -508
  430. package/coverage/src/concepts/StructureProperty__.ts.html +0 -1300
  431. package/coverage/src/concepts/Structure__.ts.html +0 -2182
  432. package/coverage/src/concepts/SwitchCase__.ts.html +0 -1204
  433. package/coverage/src/concepts/SwitchStatement__.ts.html +0 -904
  434. package/coverage/src/concepts/Theme__.ts.html +0 -361
  435. package/coverage/src/concepts/Transactional__.ts.html +0 -631
  436. package/coverage/src/concepts/TriggerEvent__.ts.html +0 -1039
  437. package/coverage/src/concepts/TriggerLauncher__.ts.html +0 -778
  438. package/coverage/src/concepts/TypeAnnotation__.ts.html +0 -3832
  439. package/coverage/src/concepts/TypeParam__.ts.html +0 -322
  440. package/coverage/src/concepts/UnaryExpression__.ts.html +0 -730
  441. package/coverage/src/concepts/Unparsed__.ts.html +0 -397
  442. package/coverage/src/concepts/UseComponent__.ts.html +0 -334
  443. package/coverage/src/concepts/ValidationRule__.ts.html +0 -1876
  444. package/coverage/src/concepts/Variable__.ts.html +0 -1705
  445. package/coverage/src/concepts/ViewBlock__.ts.html +0 -355
  446. package/coverage/src/concepts/ViewComponent__.ts.html +0 -4327
  447. package/coverage/src/concepts/ViewElement__.ts.html +0 -8992
  448. package/coverage/src/concepts/View__.ts.html +0 -9019
  449. package/coverage/src/concepts/WhileStatement__.ts.html +0 -1105
  450. package/coverage/src/concepts/basics/stdlib/index.html +0 -356
  451. package/coverage/src/concepts/basics/stdlib/index.ts.html +0 -208
  452. package/coverage/src/concepts/basics/stdlib/nasl.auth.ts.html +0 -565
  453. package/coverage/src/concepts/basics/stdlib/nasl.browser.ts.html +0 -517
  454. package/coverage/src/concepts/basics/stdlib/nasl.collection.ts.html +0 -226
  455. package/coverage/src/concepts/basics/stdlib/nasl.configuration.ts.html +0 -172
  456. package/coverage/src/concepts/basics/stdlib/nasl.core.ts.html +0 -214
  457. package/coverage/src/concepts/basics/stdlib/nasl.event.ts.html +0 -145
  458. package/coverage/src/concepts/basics/stdlib/nasl.http.ts.html +0 -589
  459. package/coverage/src/concepts/basics/stdlib/nasl.interface.ts.html +0 -214
  460. package/coverage/src/concepts/basics/stdlib/nasl.io.ts.html +0 -229
  461. package/coverage/src/concepts/basics/stdlib/nasl.logging.ts.html +0 -268
  462. package/coverage/src/concepts/basics/stdlib/nasl.process.ts.html +0 -1999
  463. package/coverage/src/concepts/basics/stdlib/nasl.ui.ts.html +0 -3259
  464. package/coverage/src/concepts/basics/stdlib/nasl.util.ts.html +0 -6955
  465. package/coverage/src/concepts/basics/stdlib/nasl.validation.ts.html +0 -1768
  466. package/coverage/src/concepts/basics/stdlib/reference2TypeAnnotationList.ts.html +0 -163
  467. package/coverage/src/concepts/basics/stdlib/timeZone.ts.html +0 -664
  468. package/coverage/src/concepts/basics/types/coreTypeList.ts.html +0 -121
  469. package/coverage/src/concepts/basics/types/index.html +0 -131
  470. package/coverage/src/concepts/basics/types/index.ts.html +0 -160
  471. package/coverage/src/concepts/index.html +0 -1976
  472. package/coverage/src/concepts/index.ts.html +0 -103
  473. package/coverage/src/concepts/index__.ts.html +0 -454
  474. package/coverage/src/config.ts.html +0 -325
  475. package/coverage/src/decorators/index.html +0 -131
  476. package/coverage/src/decorators/index.ts.html +0 -583
  477. package/coverage/src/decorators/promise.ts.html +0 -169
  478. package/coverage/src/eventBus.ts.html +0 -100
  479. package/coverage/src/generator/compileComponent.ts.html +0 -142
  480. package/coverage/src/generator/genBundleFiles.ts.html +0 -1828
  481. package/coverage/src/generator/genHash.ts.html +0 -124
  482. package/coverage/src/generator/genMetaData.ts.html +0 -1084
  483. package/coverage/src/generator/genReleaseBody.ts.html +0 -1282
  484. package/coverage/src/generator/icestark.ts.html +0 -220
  485. package/coverage/src/generator/index.html +0 -266
  486. package/coverage/src/generator/index.ts.html +0 -106
  487. package/coverage/src/generator/microApp.ts.html +0 -172
  488. package/coverage/src/generator/permission.ts.html +0 -1036
  489. package/coverage/src/generator/qiankun.ts.html +0 -232
  490. package/coverage/src/generator/styleReplacer.ts.html +0 -199
  491. package/coverage/src/index.html +0 -146
  492. package/coverage/src/index.ts.html +0 -124
  493. package/coverage/src/manager/diagnostic.ts.html +0 -442
  494. package/coverage/src/manager/index.html +0 -131
  495. package/coverage/src/manager/stepRecorder.ts.html +0 -457
  496. package/coverage/src/natural/genNaturalTS.ts.html +0 -355
  497. package/coverage/src/natural/index.html +0 -161
  498. package/coverage/src/natural/index.ts.html +0 -91
  499. package/coverage/src/natural/naslStdlibMap.ts.html +0 -157
  500. package/coverage/src/natural/transformTSCode.ts.html +0 -2707
  501. package/coverage/src/sentry/index.html +0 -116
  502. package/coverage/src/sentry/index.ts.html +0 -676
  503. package/coverage/src/server/createUiTs.ts.html +0 -919
  504. package/coverage/src/server/entity2LogicNamespace.ts.html +0 -1294
  505. package/coverage/src/server/event.js.html +0 -526
  506. package/coverage/src/server/extendBaseNode.ts.html +0 -1762
  507. package/coverage/src/server/formatTsUtils.ts.html +0 -2689
  508. package/coverage/src/server/getConnector.ts.html +0 -316
  509. package/coverage/src/server/getExtensionModules.ts.html +0 -178
  510. package/coverage/src/server/getFunctions.ts.html +0 -133
  511. package/coverage/src/server/getInterfaces.ts.html +0 -229
  512. package/coverage/src/server/getLogging.ts.html +0 -100
  513. package/coverage/src/server/getLogics.ts.html +0 -1363
  514. package/coverage/src/server/getMemberIdentifier.ts.html +0 -1606
  515. package/coverage/src/server/getProcessComponents.ts.html +0 -112
  516. package/coverage/src/server/getProcesses.ts.html +0 -2023
  517. package/coverage/src/server/getValidates.ts.html +0 -115
  518. package/coverage/src/server/index.html +0 -401
  519. package/coverage/src/server/index.ts.html +0 -229
  520. package/coverage/src/server/naslServer.ts.html +0 -14356
  521. package/coverage/src/server/naslStdlibMap.ts.html +0 -241
  522. package/coverage/src/server/process2LogicNamespace.ts.html +0 -454
  523. package/coverage/src/server/translator.ts.html +0 -2566
  524. package/coverage/src/service/creator/add.configs.js.html +0 -397
  525. package/coverage/src/service/creator/errHandles.js.html +0 -304
  526. package/coverage/src/service/creator/index.html +0 -146
  527. package/coverage/src/service/creator/index.js.html +0 -352
  528. package/coverage/src/service/datasource/api.js.html +0 -118
  529. package/coverage/src/service/datasource/index.html +0 -131
  530. package/coverage/src/service/datasource/index.js.html +0 -103
  531. package/coverage/src/service/logic/api.js.html +0 -109
  532. package/coverage/src/service/logic/index.html +0 -131
  533. package/coverage/src/service/logic/index.js.html +0 -103
  534. package/coverage/src/service/storage/api.js.html +0 -202
  535. package/coverage/src/service/storage/index.html +0 -206
  536. package/coverage/src/service/storage/index.ts.html +0 -103
  537. package/coverage/src/service/storage/init.ts.html +0 -3721
  538. package/coverage/src/service/storage/jsoner.ts.html +0 -502
  539. package/coverage/src/service/storage/map.ts.html +0 -256
  540. package/coverage/src/service/storage/service.ts.html +0 -331
  541. package/coverage/src/service/storage/storagePoint.ts.html +0 -304
  542. package/coverage/src/templator/genCallComponentLogic.ts.html +0 -163
  543. package/coverage/src/templator/genCreateBlock.ts.html +0 -1093
  544. package/coverage/src/templator/genCurdEditMultipleKeyBlock.ts.html +0 -1609
  545. package/coverage/src/templator/genCurdMultipleKeyBlock.ts.html +0 -2254
  546. package/coverage/src/templator/genEditTableBlock.ts.html +0 -1021
  547. package/coverage/src/templator/genEnumSelectBlock.ts.html +0 -178
  548. package/coverage/src/templator/genGetBlock.ts.html +0 -451
  549. package/coverage/src/templator/genGridViewBlock.ts.html +0 -1114
  550. package/coverage/src/templator/genListViewBlock.ts.html +0 -475
  551. package/coverage/src/templator/genQueryComponent.ts.html +0 -1207
  552. package/coverage/src/templator/genSelectBlock.ts.html +0 -1243
  553. package/coverage/src/templator/genTableBlock.ts.html +0 -973
  554. package/coverage/src/templator/genUpdateBlock.ts.html +0 -1192
  555. package/coverage/src/templator/index.html +0 -326
  556. package/coverage/src/templator/index.ts.html +0 -154
  557. package/coverage/src/templator/utils.ts.html +0 -1861
  558. package/coverage/src/translator/constant.ts.html +0 -106
  559. package/coverage/src/translator/index.html +0 -146
  560. package/coverage/src/translator/index.ts.html +0 -94
  561. package/coverage/src/translator/utils.ts.html +0 -436
  562. package/coverage/src/utils/cookie.ts.html +0 -265
  563. package/coverage/src/utils/env.ts.html +0 -91
  564. package/coverage/src/utils/index.html +0 -236
  565. package/coverage/src/utils/index.ts.html +0 -694
  566. package/coverage/src/utils/logger.ts.html +0 -145
  567. package/coverage/src/utils/sortTsString.ts.html +0 -187
  568. package/coverage/src/utils/string.ts.html +0 -400
  569. package/coverage/src/utils/time-slicing.ts.html +0 -418
  570. package/coverage/src/utils/traverse.ts.html +0 -568
  571. package/coverage/src/utils/window.ts.html +0 -112
@@ -0,0 +1,919 @@
1
+ import type { EmbeddedTSFileGenerator } from '../utils';
2
+ import { createCompilerState, withSourceMapGenerator, TranslatorGenerator } from '../translator';
3
+ import Namespace from './Namespace__';
4
+ import { AssetsInfo } from './App__';
5
+
6
+ //================================================================================
7
+ // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
8
+ // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
9
+ //================================================================================
10
+ import { EventPayload, Params } from '../common/EventEmitter';
11
+ import { concept, excludedInJSON, property, getConceptConstructor, getBaseNode } from '../decorators';
12
+
13
+ import * as utils from '../utils';
14
+ import * as types from './utils/types';
15
+ import * as asserts from './utils/asserts';
16
+ import { v4 as uuidv4 } from 'uuid';
17
+ import BaseNode from '../common/BaseNode';
18
+ import type Frontend from './Frontend__';
19
+ import type BusinessComponent from './BusinessComponent__';
20
+ import type Module from './Module__';
21
+
22
+ /**
23
+ * 端类型
24
+ */
25
+ @concept('端类型')
26
+ export class FrontendType extends BaseNode {
27
+ /** 类名 */
28
+ static readonly ConceptName: string = 'FrontendType';
29
+
30
+ /** 继承链 */
31
+ static readonly inheritanceChain: string[] = ['BaseNode'];
32
+
33
+ /**
34
+ * 产品概念
35
+ */
36
+ @property('concept')
37
+ // @ts-ignore
38
+ readonly concept!: 'FrontendType';
39
+
40
+ /**
41
+ * 名称与type保持一致
42
+ */
43
+ @property()
44
+ name!: 'pc' | 'h5';
45
+
46
+ /**
47
+ * PC/H5 端
48
+ */
49
+ @property()
50
+ kind!: 'pc' | 'h5';
51
+
52
+ /**
53
+ * 前端列表
54
+ */
55
+ @property({
56
+ objectRef: 'Frontend',
57
+ isArray: true,
58
+ defaultValue: [],
59
+ })
60
+ frontends: Array<Frontend> = [];
61
+
62
+ /**
63
+ * 业务组件列表
64
+ */
65
+ @property({
66
+ objectRef: 'BusinessComponent',
67
+ isArray: true,
68
+ defaultValue: [],
69
+ })
70
+ businessComponents: Array<BusinessComponent> = [];
71
+
72
+ /**
73
+ * 扩展组件列表(兼容老版)
74
+ */
75
+ @property({
76
+ objectRef: 'Module',
77
+ isArray: true,
78
+ defaultValue: [],
79
+ })
80
+ componentDependencies: Array<Module> = [];
81
+
82
+ /**
83
+ * @param source 需要合并的部分参数
84
+ */
85
+ constructor(source?: Partial<FrontendType>) {
86
+ source = Object.assign({}, FrontendType.getDefaultOptions(), source);
87
+ super(source);
88
+ super.subConstructor(source);
89
+ }
90
+
91
+ static from(source: any, parentNode?: any, parentKey?: string): FrontendType {
92
+ return super.from(source, parentNode, parentKey) as FrontendType;
93
+ }
94
+
95
+ /**
96
+ * 从父级删除该节点
97
+ * @internal
98
+ */
99
+ _delete() {
100
+ let params: Params = null;
101
+ if (this.parentNode) {
102
+ params = (this.parentNode as any)?.__removeFrontendType?.(this);
103
+ }
104
+ return params;
105
+ }
106
+
107
+ getFrontendExistingNames(excludedList: Array<Frontend> = []) {
108
+ const excludedSet = new Set(excludedList);
109
+ return ((this.frontends as Frontend[]) || []).filter((item) => !excludedSet.has(item)).map((item) => item?.name);
110
+ }
111
+ getFrontendUniqueName(name = 'frontend1') {
112
+ return utils.unique(name, this.getFrontendExistingNames(), undefined, true);
113
+ }
114
+
115
+ /**
116
+ * 插入前端
117
+ * @internal
118
+ * @param name 前端名称,如果不填会自动生成一个唯一名称
119
+ */
120
+ _insertFrontendAt(name: string, index: number): Frontend;
121
+
122
+ /**
123
+ * 插入前端
124
+ * @internal
125
+ * @param frontendOptions 前端参数
126
+ */
127
+ _insertFrontendAt(frontendOptions: Partial<Frontend>, index: number): Frontend;
128
+
129
+ /**
130
+ * 插入前端
131
+ * @internal
132
+ * @param frontend 已有的前端实例
133
+ */
134
+ _insertFrontendAt(frontend: Frontend, index: number): Frontend;
135
+
136
+ _insertFrontendAt(options: string | Partial<Frontend> | Frontend, index: number) {
137
+ const frontendOptions: any = {};
138
+ const relationOptions = { parentNode: this, parentKey: 'frontends' };
139
+ const Frontend = getConceptConstructor('Frontend');
140
+ let frontend: Frontend;
141
+ if (!options) {
142
+ frontend = Frontend.from(
143
+ {
144
+ ...frontendOptions,
145
+ name: this.getFrontendUniqueName(),
146
+ },
147
+ this,
148
+ 'frontends',
149
+ );
150
+ } else if (typeof options === 'string') {
151
+ frontend = Frontend.from(
152
+ {
153
+ ...frontendOptions,
154
+ name: options,
155
+ },
156
+ this,
157
+ 'frontends',
158
+ );
159
+ } else if (asserts.isFrontend(options)) {
160
+ options.ensureDelete(); // 同一实例不支持多处存在
161
+ frontend = options;
162
+ Object.assign(frontend, relationOptions);
163
+ } else {
164
+ frontend = Frontend.from(
165
+ {
166
+ ...frontendOptions,
167
+ ...options,
168
+ },
169
+ this,
170
+ 'frontends',
171
+ );
172
+ }
173
+ this.frontends.splice(index, 0, frontend);
174
+ return frontend;
175
+ }
176
+
177
+ /**
178
+ * 插入前端
179
+ * @param name 前端名称,如果不填会自动生成一个唯一名称
180
+ */
181
+ insertFrontendAt(name: string, index: number): Frontend;
182
+
183
+ /**
184
+ * 插入前端
185
+ * @param frontendOptions 前端参数
186
+ */
187
+ insertFrontendAt(frontendOptions: Partial<Frontend>, index: number): Frontend;
188
+
189
+ /**
190
+ * 插入前端
191
+ * @param frontend 已有的前端实例
192
+ */
193
+ insertFrontendAt(frontend: Frontend, index: number): Frontend;
194
+
195
+ insertFrontendAt(options: string | Partial<Frontend> | Frontend, index: number) {
196
+ const node = this._insertFrontendAt(options as any, index);
197
+ node.create({
198
+ index,
199
+ parentNode: this,
200
+ parentKey: 'frontends',
201
+ });
202
+ return node;
203
+ }
204
+
205
+ /**
206
+ * 添加前端
207
+ * @internal
208
+ * @param name 前端名称,如果不填会自动生成一个唯一名称
209
+ */
210
+ _addFrontend(name?: string): Frontend;
211
+
212
+ /**
213
+ * 添加前端
214
+ * @internal
215
+ * @param frontendOptions 前端参数
216
+ */
217
+ _addFrontend(frontendOptions: Partial<Frontend>): Frontend;
218
+
219
+ /**
220
+ * 添加前端
221
+ * @internal
222
+ * @param frontend 已有的前端实例
223
+ */
224
+ _addFrontend(frontend: Frontend): Frontend;
225
+
226
+ _addFrontend(options?: string | Partial<Frontend> | Frontend) {
227
+ const index = this.frontends.length;
228
+ return this._insertFrontendAt(options as any, index);
229
+ }
230
+
231
+ /**
232
+ * 添加前端
233
+ * @internal
234
+ * @param name 前端名称,如果不填会自动生成一个唯一名称
235
+ */
236
+ addFrontend(name?: string): Frontend;
237
+
238
+ /**
239
+ * 添加前端
240
+ * @param frontendOptions 前端参数
241
+ */
242
+ addFrontend(frontendOptions: Partial<Frontend>): Frontend;
243
+
244
+ /**
245
+ * 添加前端
246
+ * @param frontend 已有的前端实例
247
+ */
248
+ addFrontend(frontend: Frontend): Frontend;
249
+
250
+ addFrontend(options?: string | Partial<Frontend> | Frontend) {
251
+ const node = this._addFrontend(options as any);
252
+ const index = this.frontends.indexOf(node);
253
+ node.create({
254
+ index,
255
+ parentNode: this,
256
+ parentKey: 'frontends',
257
+ });
258
+ return node;
259
+ }
260
+
261
+ getBusinessComponentExistingNames(excludedList: Array<BusinessComponent> = []) {
262
+ const excludedSet = new Set(excludedList);
263
+ return ((this.businessComponents as BusinessComponent[]) || [])
264
+ .filter((item) => !excludedSet.has(item))
265
+ .map((item) => item?.name);
266
+ }
267
+ getBusinessComponentUniqueName(name = 'component1') {
268
+ return utils.unique(name, this.getBusinessComponentExistingNames(), undefined, false);
269
+ }
270
+
271
+ /**
272
+ * 插入业务组件
273
+ * @internal
274
+ * @param name 业务组件名称,如果不填会自动生成一个唯一名称
275
+ */
276
+ _insertBusinessComponentAt(name: string, index: number): BusinessComponent;
277
+
278
+ /**
279
+ * 插入业务组件
280
+ * @internal
281
+ * @param componentOptions 业务组件参数
282
+ */
283
+ _insertBusinessComponentAt(componentOptions: Partial<BusinessComponent>, index: number): BusinessComponent;
284
+
285
+ /**
286
+ * 插入业务组件
287
+ * @internal
288
+ * @param component 已有的业务组件实例
289
+ */
290
+ _insertBusinessComponentAt(component: BusinessComponent, index: number): BusinessComponent;
291
+
292
+ _insertBusinessComponentAt(options: string | Partial<BusinessComponent> | BusinessComponent, index: number) {
293
+ const componentOptions: any = this.getBusinessComponentOptions();
294
+ const relationOptions = { parentNode: this, parentKey: 'businessComponents' };
295
+ const BusinessComponent = getConceptConstructor('BusinessComponent');
296
+ let component: BusinessComponent;
297
+ if (!options) {
298
+ component = BusinessComponent.from(
299
+ {
300
+ ...componentOptions,
301
+ name: this.getBusinessComponentUniqueName(),
302
+ },
303
+ this,
304
+ 'businessComponents',
305
+ );
306
+ } else if (typeof options === 'string') {
307
+ component = BusinessComponent.from(
308
+ {
309
+ ...componentOptions,
310
+ name: options,
311
+ },
312
+ this,
313
+ 'businessComponents',
314
+ );
315
+ } else if (asserts.isBusinessComponent(options)) {
316
+ options.ensureDelete(); // 同一实例不支持多处存在
317
+ component = options;
318
+ Object.assign(component, relationOptions);
319
+ } else {
320
+ component = BusinessComponent.from(
321
+ {
322
+ ...componentOptions,
323
+ ...options,
324
+ },
325
+ this,
326
+ 'businessComponents',
327
+ );
328
+ }
329
+ this.businessComponents.splice(index, 0, component);
330
+ return component;
331
+ }
332
+
333
+ /**
334
+ * 插入业务组件
335
+ * @param name 业务组件名称,如果不填会自动生成一个唯一名称
336
+ */
337
+ insertBusinessComponentAt(name: string, index: number): BusinessComponent;
338
+
339
+ /**
340
+ * 插入业务组件
341
+ * @param componentOptions 业务组件参数
342
+ */
343
+ insertBusinessComponentAt(componentOptions: Partial<BusinessComponent>, index: number): BusinessComponent;
344
+
345
+ /**
346
+ * 插入业务组件
347
+ * @param component 已有的业务组件实例
348
+ */
349
+ insertBusinessComponentAt(component: BusinessComponent, index: number): BusinessComponent;
350
+
351
+ insertBusinessComponentAt(options: string | Partial<BusinessComponent> | BusinessComponent, index: number) {
352
+ const node = this._insertBusinessComponentAt(options as any, index);
353
+ node.create({
354
+ index,
355
+ parentNode: this,
356
+ parentKey: 'businessComponents',
357
+ });
358
+ return node;
359
+ }
360
+
361
+ /**
362
+ * 添加业务组件
363
+ * @internal
364
+ * @param name 业务组件名称,如果不填会自动生成一个唯一名称
365
+ */
366
+ _addBusinessComponent(name?: string): BusinessComponent;
367
+
368
+ /**
369
+ * 添加业务组件
370
+ * @internal
371
+ * @param componentOptions 业务组件参数
372
+ */
373
+ _addBusinessComponent(componentOptions: Partial<BusinessComponent>): BusinessComponent;
374
+
375
+ /**
376
+ * 添加业务组件
377
+ * @internal
378
+ * @param component 已有的业务组件实例
379
+ */
380
+ _addBusinessComponent(component: BusinessComponent): BusinessComponent;
381
+
382
+ _addBusinessComponent(options?: string | Partial<BusinessComponent> | BusinessComponent) {
383
+ const index = this.businessComponents.length;
384
+ return this._insertBusinessComponentAt(options as any, index);
385
+ }
386
+
387
+ /**
388
+ * 添加业务组件
389
+ * @internal
390
+ * @param name 业务组件名称,如果不填会自动生成一个唯一名称
391
+ */
392
+ addBusinessComponent(name?: string): BusinessComponent;
393
+
394
+ /**
395
+ * 添加业务组件
396
+ * @param componentOptions 业务组件参数
397
+ */
398
+ addBusinessComponent(componentOptions: Partial<BusinessComponent>): BusinessComponent;
399
+
400
+ /**
401
+ * 添加业务组件
402
+ * @param component 已有的业务组件实例
403
+ */
404
+ addBusinessComponent(component: BusinessComponent): BusinessComponent;
405
+
406
+ addBusinessComponent(options?: string | Partial<BusinessComponent> | BusinessComponent) {
407
+ const node = this._addBusinessComponent(options as any);
408
+ const index = this.businessComponents.indexOf(node);
409
+ node.create({
410
+ index,
411
+ parentNode: this,
412
+ parentKey: 'businessComponents',
413
+ });
414
+ return node;
415
+ }
416
+
417
+ getModuleExistingNames(excludedList: Array<Module> = []) {
418
+ const excludedSet = new Set(excludedList);
419
+ return ((this.componentDependencies as Module[]) || [])
420
+ .filter((item) => !excludedSet.has(item))
421
+ .map((item) => item?.name);
422
+ }
423
+ getModuleUniqueName(name = 'module1') {
424
+ return utils.unique(name, this.getModuleExistingNames(), undefined, false);
425
+ }
426
+
427
+ /**
428
+ * 插入模块
429
+ * @internal
430
+ * @param name 模块名称,如果不填会自动生成一个唯一名称
431
+ */
432
+ _insertModuleAt(name: string, index: number): Module;
433
+
434
+ /**
435
+ * 插入模块
436
+ * @internal
437
+ * @param moduleOptions 模块参数
438
+ */
439
+ _insertModuleAt(moduleOptions: Partial<Module>, index: number): Module;
440
+
441
+ /**
442
+ * 插入模块
443
+ * @internal
444
+ * @param module 已有的模块实例
445
+ */
446
+ _insertModuleAt(module: Module, index: number): Module;
447
+
448
+ _insertModuleAt(options: string | Partial<Module> | Module, index: number) {
449
+ const moduleOptions: any = {};
450
+ const relationOptions = { parentNode: this, parentKey: 'componentDependencies' };
451
+ const Module = getConceptConstructor('Module');
452
+ let module: Module;
453
+ if (!options) {
454
+ module = Module.from(
455
+ {
456
+ ...moduleOptions,
457
+ name: this.getModuleUniqueName(),
458
+ },
459
+ this,
460
+ 'componentDependencies',
461
+ );
462
+ } else if (typeof options === 'string') {
463
+ module = Module.from(
464
+ {
465
+ ...moduleOptions,
466
+ name: options,
467
+ },
468
+ this,
469
+ 'componentDependencies',
470
+ );
471
+ } else if (asserts.isModule(options)) {
472
+ options.ensureDelete(); // 同一实例不支持多处存在
473
+ module = options;
474
+ Object.assign(module, relationOptions);
475
+ } else {
476
+ module = Module.from(
477
+ {
478
+ ...moduleOptions,
479
+ ...options,
480
+ },
481
+ this,
482
+ 'componentDependencies',
483
+ );
484
+ }
485
+ this.componentDependencies.splice(index, 0, module);
486
+ return module;
487
+ }
488
+
489
+ /**
490
+ * 插入模块
491
+ * @param name 模块名称,如果不填会自动生成一个唯一名称
492
+ */
493
+ insertModuleAt(name: string, index: number): Module;
494
+
495
+ /**
496
+ * 插入模块
497
+ * @param moduleOptions 模块参数
498
+ */
499
+ insertModuleAt(moduleOptions: Partial<Module>, index: number): Module;
500
+
501
+ /**
502
+ * 插入模块
503
+ * @param module 已有的模块实例
504
+ */
505
+ insertModuleAt(module: Module, index: number): Module;
506
+
507
+ insertModuleAt(options: string | Partial<Module> | Module, index: number) {
508
+ const node = this._insertModuleAt(options as any, index);
509
+ node.create({
510
+ index,
511
+ parentNode: this,
512
+ parentKey: 'componentDependencies',
513
+ });
514
+ return node;
515
+ }
516
+
517
+ /**
518
+ * 添加模块
519
+ * @internal
520
+ * @param name 模块名称,如果不填会自动生成一个唯一名称
521
+ */
522
+ _addModule(name?: string): Module;
523
+
524
+ /**
525
+ * 添加模块
526
+ * @internal
527
+ * @param moduleOptions 模块参数
528
+ */
529
+ _addModule(moduleOptions: Partial<Module>): Module;
530
+
531
+ /**
532
+ * 添加模块
533
+ * @internal
534
+ * @param module 已有的模块实例
535
+ */
536
+ _addModule(module: Module): Module;
537
+
538
+ _addModule(options?: string | Partial<Module> | Module) {
539
+ const index = this.componentDependencies.length;
540
+ return this._insertModuleAt(options as any, index);
541
+ }
542
+
543
+ /**
544
+ * 添加模块
545
+ * @internal
546
+ * @param name 模块名称,如果不填会自动生成一个唯一名称
547
+ */
548
+ addModule(name?: string): Module;
549
+
550
+ /**
551
+ * 添加模块
552
+ * @param moduleOptions 模块参数
553
+ */
554
+ addModule(moduleOptions: Partial<Module>): Module;
555
+
556
+ /**
557
+ * 添加模块
558
+ * @param module 已有的模块实例
559
+ */
560
+ addModule(module: Module): Module;
561
+
562
+ addModule(options?: string | Partial<Module> | Module) {
563
+ const node = this._addModule(options as any);
564
+ const index = this.componentDependencies.indexOf(node);
565
+ node.create({
566
+ index,
567
+ parentNode: this,
568
+ parentKey: 'componentDependencies',
569
+ });
570
+ return node;
571
+ }
572
+
573
+ /**
574
+ * 删除前端
575
+ * @param name 前端名称
576
+ */
577
+ removeFrontend(name: string): void;
578
+
579
+ /**
580
+ * 删除前端
581
+ * @param frontend 已有的前端实例
582
+ */
583
+ removeFrontend(frontend: Frontend): void;
584
+
585
+ removeFrontend(options: string | Frontend) {
586
+ let frontend: Frontend;
587
+ if (typeof options === 'string') {
588
+ frontend = (this.frontends as Frontend[]).find((item) => item.name === options);
589
+ if (!frontend) {
590
+ throw new Error('找不到前端 ' + options);
591
+ }
592
+ } else {
593
+ frontend = options;
594
+ }
595
+ return frontend.delete();
596
+ }
597
+
598
+ __removeFrontend(frontend: Frontend) {
599
+ const parentKey = frontend.parentKey;
600
+ const params: Params = {
601
+ parentNode: this,
602
+ parentKey,
603
+ index: -1,
604
+ object: null,
605
+ oldObject: frontend,
606
+ };
607
+ if (parentKey) {
608
+ params.parentKey = parentKey;
609
+ // @ts-ignore
610
+ const t = this.__v_raw || this;
611
+ // @ts-ignore
612
+ const n = frontend.__v_raw || frontend;
613
+ if (Array.isArray((t as any)[parentKey])) {
614
+ // @ts-ignore
615
+ const index = (t as any)[parentKey].findIndex((el) => (el.__v_raw || el) === n);
616
+ ~index && (this as any)[parentKey].splice(index, 1);
617
+ params.index = index;
618
+ } else {
619
+ const q = (t as any)[parentKey];
620
+ if ((q.__v_raw || q) === n) {
621
+ params.index = 0;
622
+ (this as any)[parentKey] = undefined;
623
+ }
624
+ }
625
+ }
626
+ return params;
627
+ }
628
+
629
+ /**
630
+ * 删除业务组件
631
+ * @param name 业务组件名称
632
+ */
633
+ removeBusinessComponent(name: string): void;
634
+
635
+ /**
636
+ * 删除业务组件
637
+ * @param component 已有的业务组件实例
638
+ */
639
+ removeBusinessComponent(component: BusinessComponent): void;
640
+
641
+ removeBusinessComponent(options: string | BusinessComponent) {
642
+ let component: BusinessComponent;
643
+ if (typeof options === 'string') {
644
+ component = (this.businessComponents as BusinessComponent[]).find((item) => item.name === options);
645
+ if (!component) {
646
+ throw new Error('找不到业务组件 ' + options);
647
+ }
648
+ } else {
649
+ component = options;
650
+ }
651
+ return component.delete();
652
+ }
653
+
654
+ __removeBusinessComponent(component: BusinessComponent) {
655
+ const parentKey = component.parentKey;
656
+ const params: Params = {
657
+ parentNode: this,
658
+ parentKey,
659
+ index: -1,
660
+ object: null,
661
+ oldObject: component,
662
+ };
663
+ if (parentKey) {
664
+ params.parentKey = parentKey;
665
+ // @ts-ignore
666
+ const t = this.__v_raw || this;
667
+ // @ts-ignore
668
+ const n = component.__v_raw || component;
669
+ if (Array.isArray((t as any)[parentKey])) {
670
+ // @ts-ignore
671
+ const index = (t as any)[parentKey].findIndex((el) => (el.__v_raw || el) === n);
672
+ ~index && (this as any)[parentKey].splice(index, 1);
673
+ params.index = index;
674
+ } else {
675
+ const q = (t as any)[parentKey];
676
+ if ((q.__v_raw || q) === n) {
677
+ params.index = 0;
678
+ (this as any)[parentKey] = undefined;
679
+ }
680
+ }
681
+ }
682
+ return params;
683
+ }
684
+
685
+ /**
686
+ * 删除模块
687
+ * @param name 模块名称
688
+ */
689
+ removeModule(name: string): void;
690
+
691
+ /**
692
+ * 删除模块
693
+ * @param module 已有的模块实例
694
+ */
695
+ removeModule(module: Module): void;
696
+
697
+ removeModule(options: string | Module) {
698
+ let module: Module;
699
+ if (typeof options === 'string') {
700
+ module = (this.componentDependencies as Module[]).find((item) => item.name === options);
701
+ if (!module) {
702
+ throw new Error('找不到模块 ' + options);
703
+ }
704
+ } else {
705
+ module = options;
706
+ }
707
+ return module.delete();
708
+ }
709
+
710
+ __removeModule(module: Module) {
711
+ const parentKey = module.parentKey;
712
+ const params: Params = {
713
+ parentNode: this,
714
+ parentKey,
715
+ index: -1,
716
+ object: null,
717
+ oldObject: module,
718
+ };
719
+ if (parentKey) {
720
+ params.parentKey = parentKey;
721
+ // @ts-ignore
722
+ const t = this.__v_raw || this;
723
+ // @ts-ignore
724
+ const n = module.__v_raw || module;
725
+ if (Array.isArray((t as any)[parentKey])) {
726
+ // @ts-ignore
727
+ const index = (t as any)[parentKey].findIndex((el) => (el.__v_raw || el) === n);
728
+ ~index && (this as any)[parentKey].splice(index, 1);
729
+ params.index = index;
730
+ } else {
731
+ const q = (t as any)[parentKey];
732
+ if ((q.__v_raw || q) === n) {
733
+ params.index = 0;
734
+ (this as any)[parentKey] = undefined;
735
+ }
736
+ }
737
+ }
738
+ return params;
739
+ }
740
+
741
+ //================================================================================
742
+ // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
743
+ // 自动生成的代码已结束。下面可以手动编写。
744
+ //================================================================================
745
+ getNamespace() {
746
+ if (this.parentNode && (this.parentNode as Namespace).getNamespace) {
747
+ const parentNamespace = (this.parentNode as Namespace).getNamespace();
748
+ const parentName = this.parentNode.name;
749
+ const arr = [parentNamespace];
750
+ if (this.parentNode.concept !== 'App' && parentName) {
751
+ arr.push(parentName);
752
+ }
753
+ return `${arr.join('.')}.frontendTypes`;
754
+ }
755
+ throw new Error('无法获取命名空间,请设置 parentNode!');
756
+ }
757
+
758
+ /**
759
+ * 生成宿主语言的文件路径
760
+ * @param name 一般不用传,用于 rename
761
+ */
762
+ getEmbeddedFilePath(name = this.name) {
763
+ return `/embedded/${this.rootNode?.name || this.parentNode.name}/frontendTypes/${name}.ts`;
764
+ }
765
+
766
+ @withSourceMapGenerator
767
+ *toEmbeddedTS(state = createCompilerState()): TranslatorGenerator {
768
+ const self = this;
769
+ let code = `export namespace ${self.name} {\n`;
770
+ code += 'const name = ';
771
+ code += `"${self.name}";\n`;
772
+ code += '}\n';
773
+ return code;
774
+ }
775
+
776
+ *toEmbeddedTSFile(): EmbeddedTSFileGenerator {
777
+ let code = `namespace ${this.getNamespace()} {\n`;
778
+
779
+ const state = createCompilerState(code, { tabSize: 1 });
780
+ try {
781
+ code += yield* this.toEmbeddedTS(state);
782
+ } catch (err) {
783
+ code += '';
784
+ console.log(err);
785
+ }
786
+ code += '}\n';
787
+
788
+ return {
789
+ code,
790
+ filePath: this.getEmbeddedFilePath(),
791
+ sourceMap: state.sourceMap,
792
+ };
793
+ }
794
+
795
+ /**
796
+ * 获取业务组件的默认配置
797
+ * @returns
798
+ */
799
+ getBusinessComponentOptions() {
800
+ let options: any;
801
+ if (this.kind === 'pc') {
802
+ options = {
803
+ elements: [
804
+ {
805
+ concept: 'ViewElement',
806
+ type: 0,
807
+ tag: 'u-linear-layout',
808
+ name: 'uLinearLayout1',
809
+ staticClass: null,
810
+ slotTarget: null,
811
+ slotScope: null,
812
+ bindAttrs: [
813
+ {
814
+ concept: 'BindAttribute',
815
+ name: 'gap',
816
+ type: 'string',
817
+ value: 'none',
818
+ rules: [],
819
+ playground: [],
820
+ },
821
+ ],
822
+ bindEvents: [],
823
+ bindDirectives: [],
824
+ bindRoles: [],
825
+ bindStyles: [],
826
+ children: [],
827
+ },
828
+ ],
829
+ };
830
+ } else {
831
+ options = {
832
+ elements: [
833
+ {
834
+ concept: 'ViewElement',
835
+ name: 'vanLinearLayout1',
836
+ type: 0,
837
+ tag: 'van-linear-layout',
838
+ staticStyle: null,
839
+ slotTarget: null,
840
+ slotScope: null,
841
+ bindAttrs: [
842
+ {
843
+ concept: 'BindAttribute',
844
+ name: 'gap',
845
+ type: 'string',
846
+ value: 'none',
847
+ rules: [],
848
+ playground: [],
849
+ },
850
+ ],
851
+ bindEvents: [],
852
+ bindDirectives: [],
853
+ bindRoles: [],
854
+ bindStyles: [],
855
+ children: [],
856
+ },
857
+ ],
858
+ };
859
+ }
860
+ return options;
861
+ }
862
+
863
+ addFrontendForType(options?: string | Partial<Frontend> | Frontend) {
864
+ let insertIndex = -1;
865
+ this.frontends.forEach((frontend, index) => {
866
+ if (frontend.type === (options as any).type) {
867
+ insertIndex = index;
868
+ }
869
+ });
870
+ if ((options as any).type === 'h5' && insertIndex === -1) {
871
+ insertIndex = this.frontends.length;
872
+ }
873
+ const node = this._insertFrontendAt(options as any, insertIndex + 1);
874
+ const index = this.frontends.indexOf(node);
875
+ node.create({
876
+ index,
877
+ parentNode: this,
878
+ parentKey: 'frontends',
879
+ });
880
+ return node;
881
+ }
882
+
883
+ findComponentDependencyByName(name: string) {
884
+ return this.componentDependencies.find((componentDependency) => componentDependency.name === name);
885
+ }
886
+
887
+ genCustomAssetsInfo(prefix: string) {
888
+ const custom: AssetsInfo = {
889
+ js: [],
890
+ css: [],
891
+ names: [],
892
+ };
893
+ const existingSet = new Set();
894
+ this.componentDependencies.forEach((dep) => {
895
+ const { name, version } = dep;
896
+ const jsName = `${prefix}/packages/${name}@${version}/dist-theme/index.js`;
897
+ if (!existingSet.has(jsName)) {
898
+ existingSet.add(jsName);
899
+ custom.js.push(jsName);
900
+ if (utils.shouldLoadCss(name, version)) {
901
+ custom.css.push(`${prefix}/packages/${name}@${version}/dist-theme/index.css`);
902
+ }
903
+ custom.names.push(name);
904
+ }
905
+ });
906
+ return custom;
907
+ }
908
+
909
+ //================================================================================
910
+ // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
911
+ // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
912
+ //================================================================================
913
+ }
914
+
915
+ export default FrontendType;
916
+ //================================================================================
917
+ // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
918
+ // 自动生成的代码已结束。下面可以手动编写。
919
+ //================================================================================