ngx-axis-appforge 0.0.3 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (580) hide show
  1. package/.editorconfig +17 -0
  2. package/angular.json +40 -0
  3. package/axis-components/badge/badge.css +3 -0
  4. package/axis-components/badge/badge.html +20 -0
  5. package/axis-components/badge/badge.options.ts +23 -0
  6. package/axis-components/badge/badge.ts +17 -0
  7. package/axis-components/badge/design/config.ts +52 -0
  8. package/axis-components/badge/design/ng-package.json +5 -0
  9. package/axis-components/badge/design/setting/setting.css +0 -0
  10. package/axis-components/badge/design/setting/setting.html +181 -0
  11. package/axis-components/badge/design/setting/setting.ts +126 -0
  12. package/axis-components/badge/ng-package.json +5 -0
  13. package/axis-components/button/button.css +3 -0
  14. package/axis-components/button/button.html +13 -0
  15. package/axis-components/button/button.options.ts +17 -0
  16. package/axis-components/button/button.ts +56 -0
  17. package/axis-components/button/design/config.ts +30 -0
  18. package/axis-components/button/design/ng-package.json +5 -0
  19. package/axis-components/button/design/setting/setting.css +0 -0
  20. package/axis-components/button/design/setting/setting.html +151 -0
  21. package/axis-components/button/design/setting/setting.ts +76 -0
  22. package/axis-components/button/ng-package.json +5 -0
  23. package/axis-components/cmp-map.ts +52 -0
  24. package/axis-components/cmplib.ts +9 -0
  25. package/axis-components/desc/desc.css +8 -0
  26. package/axis-components/desc/desc.html +19 -0
  27. package/axis-components/desc/desc.options.ts +24 -0
  28. package/axis-components/desc/desc.ts +29 -0
  29. package/axis-components/desc/design/config.ts +113 -0
  30. package/axis-components/desc/design/desc-item-setting/desc-item-setting.css +0 -0
  31. package/axis-components/desc/design/desc-item-setting/desc-item-setting.html +47 -0
  32. package/axis-components/desc/design/desc-item-setting/desc-item-setting.ts +40 -0
  33. package/axis-components/desc/design/desc-items-menu/desc-items-menu.css +0 -0
  34. package/axis-components/desc/design/desc-items-menu/desc-items-menu.html +9 -0
  35. package/axis-components/desc/design/desc-items-menu/desc-items-menu.ts +23 -0
  36. package/axis-components/desc/design/desc-setting/desc-setting.css +0 -0
  37. package/axis-components/desc/design/desc-setting/desc-setting.html +76 -0
  38. package/axis-components/desc/design/desc-setting/desc-setting.ts +51 -0
  39. package/axis-components/desc/design/ng-package.json +5 -0
  40. package/axis-components/desc/ng-package.json +5 -0
  41. package/axis-components/design/cmplib/cmplib.css +5 -0
  42. package/axis-components/design/cmplib/cmplib.html +52 -0
  43. package/axis-components/design/cmplib/cmplib.ts +96 -0
  44. package/axis-components/design/design/config.ts +29 -0
  45. package/axis-components/design/design/ng-package.json +5 -0
  46. package/axis-components/design/design/setting/setting.css +0 -0
  47. package/axis-components/design/design/setting/setting.html +33 -0
  48. package/axis-components/design/design/setting/setting.ts +33 -0
  49. package/axis-components/design/design.css +15 -0
  50. package/axis-components/design/design.html +51 -0
  51. package/axis-components/design/design.options.ts +9 -0
  52. package/axis-components/design/design.ts +509 -0
  53. package/axis-components/design/ng-package.json +5 -0
  54. package/axis-components/design/preview/drag.service.ts +148 -0
  55. package/axis-components/design/preview/drop-handler.ts +56 -0
  56. package/axis-components/design/preview/preview.css +3 -0
  57. package/axis-components/design/preview/preview.html +1 -0
  58. package/axis-components/design/preview/preview.ts +250 -0
  59. package/axis-components/design/preview/select.service.ts +140 -0
  60. package/axis-components/design/shortcut-key.ts +160 -0
  61. package/axis-components/design/toolbar/toolbar.css +24 -0
  62. package/axis-components/design/toolbar/toolbar.html +96 -0
  63. package/axis-components/design/toolbar/toolbar.ts +65 -0
  64. package/axis-components/design/tree/drag-drop.ts +125 -0
  65. package/axis-components/design/tree/tree.css +30 -0
  66. package/axis-components/design/tree/tree.html +49 -0
  67. package/axis-components/design/tree/tree.ts +292 -0
  68. package/axis-components/dynamic-container/design/config.ts +30 -0
  69. package/axis-components/dynamic-container/design/ng-package.json +5 -0
  70. package/axis-components/dynamic-container/design/setting/setting.css +0 -0
  71. package/axis-components/dynamic-container/design/setting/setting.html +20 -0
  72. package/axis-components/dynamic-container/design/setting/setting.ts +30 -0
  73. package/axis-components/dynamic-container/dynamic-container.css +3 -0
  74. package/axis-components/dynamic-container/dynamic-container.html +2 -0
  75. package/axis-components/dynamic-container/dynamic-container.options.ts +6 -0
  76. package/axis-components/dynamic-container/dynamic-container.ts +17 -0
  77. package/axis-components/dynamic-container/ng-package.json +5 -0
  78. package/axis-components/editor/editor.css +47 -0
  79. package/axis-components/editor/editor.html +10 -0
  80. package/axis-components/editor/editor.options.ts +10 -0
  81. package/axis-components/editor/editor.ts +86 -0
  82. package/axis-components/editor/ng-package.json +5 -0
  83. package/axis-components/examples/examples/badge.ts +17 -0
  84. package/axis-components/examples/examples/button.ts +38 -0
  85. package/axis-components/examples/examples/desc.ts +31 -0
  86. package/axis-components/examples/examples/design.ts +15 -0
  87. package/axis-components/examples/examples/dynamic-container.ts +21 -0
  88. package/axis-components/examples/examples/flex.ts +18 -0
  89. package/axis-components/examples/examples/form-item.ts +39 -0
  90. package/axis-components/examples/examples/form.ts +315 -0
  91. package/axis-components/examples/examples/icon.ts +16 -0
  92. package/axis-components/examples/examples/image.ts +15 -0
  93. package/axis-components/examples/examples/input-component.ts +15 -0
  94. package/axis-components/examples/examples/input-icon.ts +15 -0
  95. package/axis-components/examples/examples/input-json.ts +15 -0
  96. package/axis-components/examples/examples/input-number.ts +15 -0
  97. package/axis-components/examples/examples/input.ts +15 -0
  98. package/axis-components/examples/examples/modal.ts +15 -0
  99. package/axis-components/examples/examples/scope.ts +17 -0
  100. package/axis-components/examples/examples/single-selector.ts +25 -0
  101. package/axis-components/examples/examples/splitter.ts +36 -0
  102. package/axis-components/examples/examples/table.ts +126 -0
  103. package/axis-components/examples/examples/text.ts +15 -0
  104. package/axis-components/examples/examples/textarea.ts +15 -0
  105. package/axis-components/examples/examples/tree-selector.ts +35 -0
  106. package/axis-components/examples/examples/upload.ts +15 -0
  107. package/axis-components/examples/examples.ts +73 -0
  108. package/axis-components/flex/design/config.ts +49 -0
  109. package/axis-components/flex/design/ng-package.json +5 -0
  110. package/axis-components/flex/design/setting/setting.css +0 -0
  111. package/axis-components/flex/design/setting/setting.html +72 -0
  112. package/axis-components/flex/design/setting/setting.ts +43 -0
  113. package/axis-components/flex/flex.css +5 -0
  114. package/axis-components/flex/flex.html +6 -0
  115. package/axis-components/flex/flex.options.ts +12 -0
  116. package/axis-components/flex/flex.ts +15 -0
  117. package/axis-components/flex/ng-package.json +5 -0
  118. package/axis-components/form/design/config.ts +71 -0
  119. package/axis-components/form/design/ng-package.json +5 -0
  120. package/axis-components/form/design/setting/setting.css +0 -0
  121. package/axis-components/form/design/setting/setting.html +21 -0
  122. package/axis-components/form/design/setting/setting.ts +31 -0
  123. package/axis-components/form/form.css +3 -0
  124. package/axis-components/form/form.html +3 -0
  125. package/axis-components/form/form.options.ts +9 -0
  126. package/axis-components/form/form.ts +121 -0
  127. package/axis-components/form/ng-package.json +5 -0
  128. package/axis-components/form-item/design/config.ts +43 -0
  129. package/axis-components/form-item/design/ng-package.json +5 -0
  130. package/axis-components/form-item/design/setting/input-validator/input-validator.css +8 -0
  131. package/axis-components/form-item/design/setting/input-validator/input-validator.html +140 -0
  132. package/axis-components/form-item/design/setting/input-validator/input-validator.ts +158 -0
  133. package/axis-components/form-item/design/setting/setting.css +0 -0
  134. package/axis-components/form-item/design/setting/setting.html +39 -0
  135. package/axis-components/form-item/design/setting/setting.ts +40 -0
  136. package/axis-components/form-item/form-item.css +4 -0
  137. package/axis-components/form-item/form-item.html +16 -0
  138. package/axis-components/form-item/form-item.options.ts +12 -0
  139. package/axis-components/form-item/form-item.ts +128 -0
  140. package/axis-components/form-item/ng-package.json +5 -0
  141. package/axis-components/icon/design/config.ts +29 -0
  142. package/axis-components/icon/design/ng-package.json +5 -0
  143. package/axis-components/icon/design/setting/setting.css +0 -0
  144. package/axis-components/icon/design/setting/setting.html +67 -0
  145. package/axis-components/icon/design/setting/setting.ts +48 -0
  146. package/axis-components/icon/icon.css +0 -0
  147. package/axis-components/icon/icon.html +7 -0
  148. package/axis-components/icon/icon.options.ts +10 -0
  149. package/axis-components/icon/icon.ts +17 -0
  150. package/axis-components/icon/ng-package.json +5 -0
  151. package/axis-components/image/design/config.ts +30 -0
  152. package/axis-components/image/design/ng-package.json +5 -0
  153. package/axis-components/image/design/setting/setting.css +0 -0
  154. package/axis-components/image/design/setting/setting.html +42 -0
  155. package/axis-components/image/design/setting/setting.ts +37 -0
  156. package/axis-components/image/image.css +58 -0
  157. package/axis-components/image/image.html +14 -0
  158. package/axis-components/image/image.options.ts +8 -0
  159. package/axis-components/image/image.ts +29 -0
  160. package/axis-components/image/ng-package.json +5 -0
  161. package/axis-components/input/design/config.ts +80 -0
  162. package/axis-components/input/design/ng-package.json +5 -0
  163. package/axis-components/input/design/setting/setting.css +0 -0
  164. package/axis-components/input/design/setting/setting.html +79 -0
  165. package/axis-components/input/design/setting/setting.ts +51 -0
  166. package/axis-components/input/input.css +4 -0
  167. package/axis-components/input/input.html +32 -0
  168. package/axis-components/input/input.options.ts +14 -0
  169. package/axis-components/input/input.ts +53 -0
  170. package/axis-components/input/ng-package.json +5 -0
  171. package/axis-components/input-component/design/config.ts +30 -0
  172. package/axis-components/input-component/design/ng-package.json +5 -0
  173. package/axis-components/input-component/design/setting/setting.css +0 -0
  174. package/axis-components/input-component/design/setting/setting.html +33 -0
  175. package/axis-components/input-component/design/setting/setting.ts +33 -0
  176. package/axis-components/input-component/input-component.css +4 -0
  177. package/axis-components/input-component/input-component.html +25 -0
  178. package/axis-components/input-component/input-component.options.ts +7 -0
  179. package/axis-components/input-component/input-component.ts +50 -0
  180. package/axis-components/input-component/ng-package.json +5 -0
  181. package/axis-components/input-icon/design/config.ts +30 -0
  182. package/axis-components/input-icon/design/ng-package.json +5 -0
  183. package/axis-components/input-icon/design/setting/setting.css +0 -0
  184. package/axis-components/input-icon/design/setting/setting.html +29 -0
  185. package/axis-components/input-icon/design/setting/setting.ts +33 -0
  186. package/axis-components/input-icon/input-icon.css +4 -0
  187. package/axis-components/input-icon/input-icon.html +70 -0
  188. package/axis-components/input-icon/input-icon.options.ts +7 -0
  189. package/axis-components/input-icon/input-icon.ts +51 -0
  190. package/axis-components/input-icon/ng-package.json +5 -0
  191. package/axis-components/input-json/design/config.ts +29 -0
  192. package/axis-components/input-json/design/ng-package.json +5 -0
  193. package/axis-components/input-json/design/setting/setting.css +0 -0
  194. package/axis-components/input-json/design/setting/setting.html +7 -0
  195. package/axis-components/input-json/design/setting/setting.ts +26 -0
  196. package/axis-components/input-json/input-json.css +4 -0
  197. package/axis-components/input-json/input-json.html +19 -0
  198. package/axis-components/input-json/input-json.ts +67 -0
  199. package/axis-components/input-json/ng-package.json +5 -0
  200. package/axis-components/input-number/design/config.ts +30 -0
  201. package/axis-components/input-number/design/ng-package.json +5 -0
  202. package/axis-components/input-number/design/setting/setting.css +0 -0
  203. package/axis-components/input-number/design/setting/setting.html +118 -0
  204. package/axis-components/input-number/design/setting/setting.ts +66 -0
  205. package/axis-components/input-number/input-number.css +22 -0
  206. package/axis-components/input-number/input-number.html +11 -0
  207. package/axis-components/input-number/input-number.options.ts +17 -0
  208. package/axis-components/input-number/input-number.ts +30 -0
  209. package/axis-components/input-number/ng-package.json +5 -0
  210. package/axis-components/modal/design/config.ts +50 -0
  211. package/axis-components/modal/design/ng-package.json +5 -0
  212. package/axis-components/modal/design/set-modal-visible-handler/set-modal-visible-handler.css +0 -0
  213. package/axis-components/modal/design/set-modal-visible-handler/set-modal-visible-handler.html +15 -0
  214. package/axis-components/modal/design/set-modal-visible-handler/set-modal-visible-handler.ts +34 -0
  215. package/axis-components/modal/design/setting/setting.css +0 -0
  216. package/axis-components/modal/design/setting/setting.html +139 -0
  217. package/axis-components/modal/design/setting/setting.ts +92 -0
  218. package/axis-components/modal/modal.css +0 -0
  219. package/axis-components/modal/modal.html +7 -0
  220. package/axis-components/modal/modal.options.ts +20 -0
  221. package/axis-components/modal/modal.ts +57 -0
  222. package/axis-components/modal/ng-package.json +5 -0
  223. package/axis-components/ng-package.json +5 -0
  224. package/axis-components/scope/design/config.ts +59 -0
  225. package/axis-components/scope/design/ng-package.json +5 -0
  226. package/axis-components/scope/design/setting/datasource-editor/datasource-editor.css +28 -0
  227. package/axis-components/scope/design/setting/datasource-editor/datasource-editor.html +188 -0
  228. package/axis-components/scope/design/setting/datasource-editor/datasource-editor.ts +245 -0
  229. package/axis-components/scope/design/setting/setting.css +0 -0
  230. package/axis-components/scope/design/setting/setting.html +19 -0
  231. package/axis-components/scope/design/setting/setting.ts +30 -0
  232. package/axis-components/scope/ng-package.json +5 -0
  233. package/axis-components/scope/scope.css +6 -0
  234. package/axis-components/scope/scope.html +4 -0
  235. package/axis-components/scope/scope.options.ts +8 -0
  236. package/axis-components/scope/scope.ts +48 -0
  237. package/axis-components/single-selector/design/config.ts +30 -0
  238. package/axis-components/single-selector/design/ng-package.json +5 -0
  239. package/axis-components/single-selector/design/setting/setting.css +0 -0
  240. package/axis-components/single-selector/design/setting/setting.html +164 -0
  241. package/axis-components/single-selector/design/setting/setting.ts +80 -0
  242. package/axis-components/single-selector/ng-package.json +5 -0
  243. package/axis-components/single-selector/single-selector.css +8 -0
  244. package/axis-components/single-selector/single-selector.html +51 -0
  245. package/axis-components/single-selector/single-selector.options.ts +22 -0
  246. package/axis-components/single-selector/single-selector.ts +80 -0
  247. package/axis-components/splitter/design/config.ts +84 -0
  248. package/axis-components/splitter/design/ng-package.json +5 -0
  249. package/axis-components/splitter/design/splitter-menu/splitter-menu.css +0 -0
  250. package/axis-components/splitter/design/splitter-menu/splitter-menu.html +10 -0
  251. package/axis-components/splitter/design/splitter-menu/splitter-menu.ts +22 -0
  252. package/axis-components/splitter/design/splitter-panel-setting/splitter-panel-setting.css +0 -0
  253. package/axis-components/splitter/design/splitter-panel-setting/splitter-panel-setting.html +66 -0
  254. package/axis-components/splitter/design/splitter-panel-setting/splitter-panel-setting.ts +47 -0
  255. package/axis-components/splitter/design/splitter-setting/splitter-setting.css +0 -0
  256. package/axis-components/splitter/design/splitter-setting/splitter-setting.html +28 -0
  257. package/axis-components/splitter/design/splitter-setting/splitter-setting.ts +30 -0
  258. package/axis-components/splitter/ng-package.json +5 -0
  259. package/axis-components/splitter/splitter.css +7 -0
  260. package/axis-components/splitter/splitter.html +12 -0
  261. package/axis-components/splitter/splitter.options.ts +18 -0
  262. package/axis-components/splitter/splitter.ts +40 -0
  263. package/axis-components/table/design/config.ts +147 -0
  264. package/axis-components/table/design/ng-package.json +5 -0
  265. package/axis-components/table/design/table-field-setting/table-field-setting.css +0 -0
  266. package/axis-components/table/design/table-field-setting/table-field-setting.html +259 -0
  267. package/axis-components/table/design/table-field-setting/table-field-setting.ts +105 -0
  268. package/axis-components/table/design/table-fields-menu/table-fields-menu.css +0 -0
  269. package/axis-components/table/design/table-fields-menu/table-fields-menu.html +9 -0
  270. package/axis-components/table/design/table-fields-menu/table-fields-menu.ts +24 -0
  271. package/axis-components/table/design/table-setting/table-setting.css +0 -0
  272. package/axis-components/table/design/table-setting/table-setting.html +417 -0
  273. package/axis-components/table/design/table-setting/table-setting.ts +173 -0
  274. package/axis-components/table/expand.ts +12 -0
  275. package/axis-components/table/ng-package.json +5 -0
  276. package/axis-components/table/select.ts +66 -0
  277. package/axis-components/table/table-setter/table-setter.css +55 -0
  278. package/axis-components/table/table-setter/table-setter.html +38 -0
  279. package/axis-components/table/table-setter/table-setter.ts +121 -0
  280. package/axis-components/table/table.css +5 -0
  281. package/axis-components/table/table.html +191 -0
  282. package/axis-components/table/table.options.ts +72 -0
  283. package/axis-components/table/table.ts +204 -0
  284. package/axis-components/text/design/config.ts +30 -0
  285. package/axis-components/text/design/ng-package.json +5 -0
  286. package/axis-components/text/design/setting/setting.css +0 -0
  287. package/axis-components/text/design/setting/setting.html +84 -0
  288. package/axis-components/text/design/setting/setting.ts +54 -0
  289. package/axis-components/text/ng-package.json +5 -0
  290. package/axis-components/text/text.css +3 -0
  291. package/axis-components/text/text.html +17 -0
  292. package/axis-components/text/text.options.ts +10 -0
  293. package/axis-components/text/text.ts +54 -0
  294. package/axis-components/textarea/design/config.ts +30 -0
  295. package/axis-components/textarea/design/ng-package.json +5 -0
  296. package/axis-components/textarea/design/setting/setting.css +0 -0
  297. package/axis-components/textarea/design/setting/setting.html +76 -0
  298. package/axis-components/textarea/design/setting/setting.ts +55 -0
  299. package/axis-components/textarea/ng-package.json +5 -0
  300. package/axis-components/textarea/textarea.css +4 -0
  301. package/axis-components/textarea/textarea.html +11 -0
  302. package/axis-components/textarea/textarea.options.ts +13 -0
  303. package/axis-components/textarea/textarea.ts +49 -0
  304. package/axis-components/tree-selector/design/config.ts +55 -0
  305. package/axis-components/tree-selector/design/ng-package.json +5 -0
  306. package/axis-components/tree-selector/design/tree-selector-menu/tree-selector-menu.css +0 -0
  307. package/axis-components/tree-selector/design/tree-selector-menu/tree-selector-menu.html +9 -0
  308. package/axis-components/tree-selector/design/tree-selector-menu/tree-selector-menu.ts +26 -0
  309. package/axis-components/tree-selector/design/tree-selector-menu-setting/tree-selector-menu-setting.css +0 -0
  310. package/axis-components/tree-selector/design/tree-selector-menu-setting/tree-selector-menu-setting.html +80 -0
  311. package/axis-components/tree-selector/design/tree-selector-menu-setting/tree-selector-menu-setting.ts +58 -0
  312. package/axis-components/tree-selector/design/tree-selector-setting/tree-selector-setting.css +0 -0
  313. package/axis-components/tree-selector/design/tree-selector-setting/tree-selector-setting.html +235 -0
  314. package/axis-components/tree-selector/design/tree-selector-setting/tree-selector-setting.ts +87 -0
  315. package/axis-components/tree-selector/ng-package.json +5 -0
  316. package/axis-components/tree-selector/tree-selector.css +43 -0
  317. package/axis-components/tree-selector/tree-selector.html +65 -0
  318. package/axis-components/tree-selector/tree-selector.options.ts +50 -0
  319. package/axis-components/tree-selector/tree-selector.ts +252 -0
  320. package/axis-components/upload/design/config.ts +37 -0
  321. package/axis-components/upload/design/ng-package.json +5 -0
  322. package/axis-components/upload/design/setting/setting.css +0 -0
  323. package/axis-components/upload/design/setting/setting.html +288 -0
  324. package/axis-components/upload/design/setting/setting.ts +96 -0
  325. package/axis-components/upload/ng-package.json +5 -0
  326. package/axis-components/upload/upload.css +3 -0
  327. package/axis-components/upload/upload.html +36 -0
  328. package/axis-components/upload/upload.options.ts +29 -0
  329. package/axis-components/upload/upload.ts +130 -0
  330. package/core/base/base-menu.ts +22 -0
  331. package/core/base/base.ts +143 -0
  332. package/core/base/design-builder.ts +8 -0
  333. package/core/base/funfield-base.ts +106 -0
  334. package/core/base/funfield-value-base.ts +53 -0
  335. package/core/base/value-access.ts +70 -0
  336. package/core/directives/dynamic.ts +216 -0
  337. package/core/directives/scope.ts +432 -0
  338. package/core/models/api.options.ts +5 -0
  339. package/core/models/base.options.ts +11 -0
  340. package/core/models/cmplib.ts +7 -0
  341. package/core/models/data-source.options.ts +11 -0
  342. package/core/models/data.options.ts +6 -0
  343. package/core/models/design-build.ts +26 -0
  344. package/core/models/design-config.ts +14 -0
  345. package/core/models/design-tree-node.ts +16 -0
  346. package/core/models/event-desc.ts +28 -0
  347. package/core/models/event-handler.ts +6 -0
  348. package/core/models/event.options.ts +14 -0
  349. package/core/models/examples.ts +21 -0
  350. package/core/models/form-registe.options.ts +12 -0
  351. package/core/models/fun-field.options.ts +6 -0
  352. package/core/models/initobs.ts +8 -0
  353. package/core/models/options-node.ts +149 -0
  354. package/core/models/static-data-source.options.ts +4 -0
  355. package/core/models/trigge-events.options.ts +3 -0
  356. package/core/models/value-access.options.ts +10 -0
  357. package/core/ng-package.json +5 -0
  358. package/core/pipes/how-long.pipe.ts +69 -0
  359. package/core/public-api.ts +39 -0
  360. package/core/share/api-handler/api-handler.css +0 -0
  361. package/core/share/api-handler/api-handler.html +38 -0
  362. package/core/share/api-handler/api-handler.ts +51 -0
  363. package/core/share/array-filter-handler/array-filter-handler.css +0 -0
  364. package/core/share/array-filter-handler/array-filter-handler.html +26 -0
  365. package/core/share/array-filter-handler/array-filter-handler.ts +65 -0
  366. package/core/share/array-filter-handler/input-filter-options/filter-options.css +19 -0
  367. package/core/share/array-filter-handler/input-filter-options/filter-options.html +57 -0
  368. package/core/share/array-filter-handler/input-filter-options/filter-options.ts +100 -0
  369. package/core/share/base-design-setting/base-design-setting.css +0 -0
  370. package/core/share/base-design-setting/base-design-setting.html +50 -0
  371. package/core/share/base-design-setting/base-design-setting.ts +55 -0
  372. package/core/share/base-event-handler-descs.ts +100 -0
  373. package/core/share/common-menu/common-menu.css +0 -0
  374. package/core/share/common-menu/common-menu.html +21 -0
  375. package/core/share/common-menu/common-menu.ts +73 -0
  376. package/core/share/data-handler/data-handler.css +0 -0
  377. package/core/share/data-handler/data-handler.html +13 -0
  378. package/core/share/data-handler/data-handler.ts +39 -0
  379. package/core/share/events-handler.service.ts +185 -0
  380. package/core/share/fun-field/fun-field.css +55 -0
  381. package/core/share/fun-field/fun-field.html +175 -0
  382. package/core/share/fun-field/fun-field.ts +363 -0
  383. package/core/share/input-trigger/input-trigger.css +16 -0
  384. package/core/share/input-trigger/input-trigger.html +114 -0
  385. package/core/share/input-trigger/input-trigger.ts +394 -0
  386. package/core/share/msg-tip-handler/msg-tip-handler.css +0 -0
  387. package/core/share/msg-tip-handler/msg-tip-handler.html +40 -0
  388. package/core/share/msg-tip-handler/msg-tip-handler.ts +46 -0
  389. package/core/share/refresh-data-source-handler/refresh-data-source-handler.css +0 -0
  390. package/core/share/refresh-data-source-handler/refresh-data-source-handler.html +29 -0
  391. package/core/share/refresh-data-source-handler/refresh-data-source-handler.ts +55 -0
  392. package/core/share/route-handler/route-handler.css +0 -0
  393. package/core/share/route-handler/route-handler.html +49 -0
  394. package/core/share/route-handler/route-handler.ts +51 -0
  395. package/core/share/set-data-source-handler/set-data-source-handler.css +0 -0
  396. package/core/share/set-data-source-handler/set-data-source-handler.html +23 -0
  397. package/core/share/set-data-source-handler/set-data-source-handler.ts +44 -0
  398. package/core/share/simple-menu/simple-menu.css +0 -0
  399. package/core/share/simple-menu/simple-menu.html +5 -0
  400. package/core/share/simple-menu/simple-menu.ts +17 -0
  401. package/core/share/tokens.ts +29 -0
  402. package/core/share/value-design-setting/value-design-setting.css +0 -0
  403. package/core/share/value-design-setting/value-design-setting.html +48 -0
  404. package/core/share/value-design-setting/value-design-setting.ts +54 -0
  405. package/core/utils/code-name.utils.ts +19 -0
  406. package/core/utils/components-loader.ts +29 -0
  407. package/core/utils/declaration.utils.ts +38 -0
  408. package/core/utils/dynamic.util.ts +57 -0
  409. package/core/utils/form-validators.ts +160 -0
  410. package/core/utils/form.util.ts +25 -0
  411. package/core/utils/http.utils.ts +8 -0
  412. package/core/utils/object.utils.ts +182 -0
  413. package/core/utils/scripts-loader.ts +25 -0
  414. package/ng-package.json +12 -0
  415. package/package.json +16 -217
  416. package/providers/ng-package.json +5 -0
  417. package/{fesm2022/ngx-axis-appforge-providers.mjs → providers/providers.ts} +8 -16
  418. package/providers/public-api.ts +1 -0
  419. package/public-api.ts +1 -0
  420. package/tsconfig.json +35 -0
  421. package/tsconfig.lib.json +19 -0
  422. package/tsconfig.lib.prod.json +11 -0
  423. package/axis-components/badge/design/index.d.ts +0 -5
  424. package/axis-components/badge/index.d.ts +0 -27
  425. package/axis-components/button/design/index.d.ts +0 -5
  426. package/axis-components/button/index.d.ts +0 -32
  427. package/axis-components/desc/design/index.d.ts +0 -5
  428. package/axis-components/desc/index.d.ts +0 -30
  429. package/axis-components/design/design/index.d.ts +0 -5
  430. package/axis-components/design/index.d.ts +0 -246
  431. package/axis-components/dynamic-container/design/index.d.ts +0 -5
  432. package/axis-components/dynamic-container/index.d.ts +0 -14
  433. package/axis-components/editor/index.d.ts +0 -33
  434. package/axis-components/flex/design/index.d.ts +0 -5
  435. package/axis-components/flex/index.d.ts +0 -20
  436. package/axis-components/form/design/index.d.ts +0 -5
  437. package/axis-components/form/index.d.ts +0 -30
  438. package/axis-components/form-item/design/index.d.ts +0 -5
  439. package/axis-components/form-item/index.d.ts +0 -34
  440. package/axis-components/icon/design/index.d.ts +0 -5
  441. package/axis-components/icon/index.d.ts +0 -16
  442. package/axis-components/image/design/index.d.ts +0 -5
  443. package/axis-components/image/index.d.ts +0 -16
  444. package/axis-components/index.d.ts +0 -5
  445. package/axis-components/input/design/index.d.ts +0 -5
  446. package/axis-components/input/index.d.ts +0 -27
  447. package/axis-components/input-component/design/index.d.ts +0 -5
  448. package/axis-components/input-component/index.d.ts +0 -33
  449. package/axis-components/input-icon/design/index.d.ts +0 -5
  450. package/axis-components/input-icon/index.d.ts +0 -24
  451. package/axis-components/input-json/design/index.d.ts +0 -5
  452. package/axis-components/input-json/index.d.ts +0 -24
  453. package/axis-components/input-number/design/index.d.ts +0 -5
  454. package/axis-components/input-number/index.d.ts +0 -25
  455. package/axis-components/modal/design/index.d.ts +0 -5
  456. package/axis-components/modal/index.d.ts +0 -33
  457. package/axis-components/scope/design/index.d.ts +0 -5
  458. package/axis-components/scope/index.d.ts +0 -24
  459. package/axis-components/single-selector/design/index.d.ts +0 -5
  460. package/axis-components/single-selector/index.d.ts +0 -37
  461. package/axis-components/splitter/design/index.d.ts +0 -5
  462. package/axis-components/splitter/index.d.ts +0 -28
  463. package/axis-components/table/design/index.d.ts +0 -5
  464. package/axis-components/table/index.d.ts +0 -183
  465. package/axis-components/text/design/index.d.ts +0 -5
  466. package/axis-components/text/index.d.ts +0 -24
  467. package/axis-components/textarea/design/index.d.ts +0 -5
  468. package/axis-components/textarea/index.d.ts +0 -25
  469. package/axis-components/tree-selector/design/index.d.ts +0 -5
  470. package/axis-components/tree-selector/index.d.ts +0 -76
  471. package/axis-components/upload/design/index.d.ts +0 -5
  472. package/axis-components/upload/index.d.ts +0 -51
  473. package/core/index.d.ts +0 -773
  474. package/fesm2022/ngx-axis-appforge-axis-components-badge-design.mjs +0 -191
  475. package/fesm2022/ngx-axis-appforge-axis-components-badge-design.mjs.map +0 -1
  476. package/fesm2022/ngx-axis-appforge-axis-components-badge.mjs +0 -39
  477. package/fesm2022/ngx-axis-appforge-axis-components-badge.mjs.map +0 -1
  478. package/fesm2022/ngx-axis-appforge-axis-components-button-design.mjs +0 -116
  479. package/fesm2022/ngx-axis-appforge-axis-components-button-design.mjs.map +0 -1
  480. package/fesm2022/ngx-axis-appforge-axis-components-button.mjs +0 -78
  481. package/fesm2022/ngx-axis-appforge-axis-components-button.mjs.map +0 -1
  482. package/fesm2022/ngx-axis-appforge-axis-components-desc-design.mjs +0 -224
  483. package/fesm2022/ngx-axis-appforge-axis-components-desc-design.mjs.map +0 -1
  484. package/fesm2022/ngx-axis-appforge-axis-components-desc.mjs +0 -51
  485. package/fesm2022/ngx-axis-appforge-axis-components-desc.mjs.map +0 -1
  486. package/fesm2022/ngx-axis-appforge-axis-components-design-design.mjs +0 -69
  487. package/fesm2022/ngx-axis-appforge-axis-components-design-design.mjs.map +0 -1
  488. package/fesm2022/ngx-axis-appforge-axis-components-design.mjs +0 -1746
  489. package/fesm2022/ngx-axis-appforge-axis-components-design.mjs.map +0 -1
  490. package/fesm2022/ngx-axis-appforge-axis-components-dynamic-container-design.mjs +0 -65
  491. package/fesm2022/ngx-axis-appforge-axis-components-dynamic-container-design.mjs.map +0 -1
  492. package/fesm2022/ngx-axis-appforge-axis-components-dynamic-container.mjs +0 -26
  493. package/fesm2022/ngx-axis-appforge-axis-components-dynamic-container.mjs.map +0 -1
  494. package/fesm2022/ngx-axis-appforge-axis-components-editor.mjs +0 -99
  495. package/fesm2022/ngx-axis-appforge-axis-components-editor.mjs.map +0 -1
  496. package/fesm2022/ngx-axis-appforge-axis-components-flex-design.mjs +0 -98
  497. package/fesm2022/ngx-axis-appforge-axis-components-flex-design.mjs.map +0 -1
  498. package/fesm2022/ngx-axis-appforge-axis-components-flex.mjs +0 -31
  499. package/fesm2022/ngx-axis-appforge-axis-components-flex.mjs.map +0 -1
  500. package/fesm2022/ngx-axis-appforge-axis-components-form-design.mjs +0 -108
  501. package/fesm2022/ngx-axis-appforge-axis-components-form-design.mjs.map +0 -1
  502. package/fesm2022/ngx-axis-appforge-axis-components-form-item-design.mjs +0 -242
  503. package/fesm2022/ngx-axis-appforge-axis-components-form-item-design.mjs.map +0 -1
  504. package/fesm2022/ngx-axis-appforge-axis-components-form-item.mjs +0 -144
  505. package/fesm2022/ngx-axis-appforge-axis-components-form-item.mjs.map +0 -1
  506. package/fesm2022/ngx-axis-appforge-axis-components-form.mjs +0 -132
  507. package/fesm2022/ngx-axis-appforge-axis-components-form.mjs.map +0 -1
  508. package/fesm2022/ngx-axis-appforge-axis-components-icon-design.mjs +0 -88
  509. package/fesm2022/ngx-axis-appforge-axis-components-icon-design.mjs.map +0 -1
  510. package/fesm2022/ngx-axis-appforge-axis-components-icon.mjs +0 -28
  511. package/fesm2022/ngx-axis-appforge-axis-components-icon.mjs.map +0 -1
  512. package/fesm2022/ngx-axis-appforge-axis-components-image-design.mjs +0 -75
  513. package/fesm2022/ngx-axis-appforge-axis-components-image-design.mjs.map +0 -1
  514. package/fesm2022/ngx-axis-appforge-axis-components-image.mjs +0 -43
  515. package/fesm2022/ngx-axis-appforge-axis-components-image.mjs.map +0 -1
  516. package/fesm2022/ngx-axis-appforge-axis-components-input-component-design.mjs +0 -70
  517. package/fesm2022/ngx-axis-appforge-axis-components-input-component-design.mjs.map +0 -1
  518. package/fesm2022/ngx-axis-appforge-axis-components-input-component.mjs +0 -61
  519. package/fesm2022/ngx-axis-appforge-axis-components-input-component.mjs.map +0 -1
  520. package/fesm2022/ngx-axis-appforge-axis-components-input-design.mjs +0 -142
  521. package/fesm2022/ngx-axis-appforge-axis-components-input-design.mjs.map +0 -1
  522. package/fesm2022/ngx-axis-appforge-axis-components-input-icon-design.mjs +0 -71
  523. package/fesm2022/ngx-axis-appforge-axis-components-input-icon-design.mjs.map +0 -1
  524. package/fesm2022/ngx-axis-appforge-axis-components-input-icon.mjs +0 -64
  525. package/fesm2022/ngx-axis-appforge-axis-components-input-icon.mjs.map +0 -1
  526. package/fesm2022/ngx-axis-appforge-axis-components-input-json-design.mjs +0 -60
  527. package/fesm2022/ngx-axis-appforge-axis-components-input-json-design.mjs.map +0 -1
  528. package/fesm2022/ngx-axis-appforge-axis-components-input-json.mjs +0 -70
  529. package/fesm2022/ngx-axis-appforge-axis-components-input-json.mjs.map +0 -1
  530. package/fesm2022/ngx-axis-appforge-axis-components-input-number-design.mjs +0 -107
  531. package/fesm2022/ngx-axis-appforge-axis-components-input-number-design.mjs.map +0 -1
  532. package/fesm2022/ngx-axis-appforge-axis-components-input-number.mjs +0 -48
  533. package/fesm2022/ngx-axis-appforge-axis-components-input-number.mjs.map +0 -1
  534. package/fesm2022/ngx-axis-appforge-axis-components-input.mjs +0 -68
  535. package/fesm2022/ngx-axis-appforge-axis-components-input.mjs.map +0 -1
  536. package/fesm2022/ngx-axis-appforge-axis-components-modal-design.mjs +0 -181
  537. package/fesm2022/ngx-axis-appforge-axis-components-modal-design.mjs.map +0 -1
  538. package/fesm2022/ngx-axis-appforge-axis-components-modal.mjs +0 -74
  539. package/fesm2022/ngx-axis-appforge-axis-components-modal.mjs.map +0 -1
  540. package/fesm2022/ngx-axis-appforge-axis-components-scope-design.mjs +0 -330
  541. package/fesm2022/ngx-axis-appforge-axis-components-scope-design.mjs.map +0 -1
  542. package/fesm2022/ngx-axis-appforge-axis-components-scope.mjs +0 -55
  543. package/fesm2022/ngx-axis-appforge-axis-components-scope.mjs.map +0 -1
  544. package/fesm2022/ngx-axis-appforge-axis-components-single-selector-design.mjs +0 -120
  545. package/fesm2022/ngx-axis-appforge-axis-components-single-selector-design.mjs.map +0 -1
  546. package/fesm2022/ngx-axis-appforge-axis-components-single-selector.mjs +0 -102
  547. package/fesm2022/ngx-axis-appforge-axis-components-single-selector.mjs.map +0 -1
  548. package/fesm2022/ngx-axis-appforge-axis-components-splitter-design.mjs +0 -178
  549. package/fesm2022/ngx-axis-appforge-axis-components-splitter-design.mjs.map +0 -1
  550. package/fesm2022/ngx-axis-appforge-axis-components-splitter.mjs +0 -49
  551. package/fesm2022/ngx-axis-appforge-axis-components-splitter.mjs.map +0 -1
  552. package/fesm2022/ngx-axis-appforge-axis-components-table-design.mjs +0 -442
  553. package/fesm2022/ngx-axis-appforge-axis-components-table-design.mjs.map +0 -1
  554. package/fesm2022/ngx-axis-appforge-axis-components-table.mjs +0 -452
  555. package/fesm2022/ngx-axis-appforge-axis-components-table.mjs.map +0 -1
  556. package/fesm2022/ngx-axis-appforge-axis-components-text-design.mjs +0 -95
  557. package/fesm2022/ngx-axis-appforge-axis-components-text-design.mjs.map +0 -1
  558. package/fesm2022/ngx-axis-appforge-axis-components-text.mjs +0 -64
  559. package/fesm2022/ngx-axis-appforge-axis-components-text.mjs.map +0 -1
  560. package/fesm2022/ngx-axis-appforge-axis-components-textarea-design.mjs +0 -94
  561. package/fesm2022/ngx-axis-appforge-axis-components-textarea-design.mjs.map +0 -1
  562. package/fesm2022/ngx-axis-appforge-axis-components-textarea.mjs +0 -64
  563. package/fesm2022/ngx-axis-appforge-axis-components-textarea.mjs.map +0 -1
  564. package/fesm2022/ngx-axis-appforge-axis-components-tree-selector-design.mjs +0 -222
  565. package/fesm2022/ngx-axis-appforge-axis-components-tree-selector-design.mjs.map +0 -1
  566. package/fesm2022/ngx-axis-appforge-axis-components-tree-selector.mjs +0 -295
  567. package/fesm2022/ngx-axis-appforge-axis-components-tree-selector.mjs.map +0 -1
  568. package/fesm2022/ngx-axis-appforge-axis-components-upload-design.mjs +0 -146
  569. package/fesm2022/ngx-axis-appforge-axis-components-upload-design.mjs.map +0 -1
  570. package/fesm2022/ngx-axis-appforge-axis-components-upload.mjs +0 -156
  571. package/fesm2022/ngx-axis-appforge-axis-components-upload.mjs.map +0 -1
  572. package/fesm2022/ngx-axis-appforge-axis-components.mjs +0 -988
  573. package/fesm2022/ngx-axis-appforge-axis-components.mjs.map +0 -1
  574. package/fesm2022/ngx-axis-appforge-core.mjs +0 -3169
  575. package/fesm2022/ngx-axis-appforge-core.mjs.map +0 -1
  576. package/fesm2022/ngx-axis-appforge-providers.mjs.map +0 -1
  577. package/fesm2022/ngx-axis-appforge.mjs +0 -6
  578. package/fesm2022/ngx-axis-appforge.mjs.map +0 -1
  579. package/index.d.ts +0 -2
  580. package/providers/index.d.ts +0 -13
@@ -1,330 +0,0 @@
1
- import { FunFieldBase, AXIS_DESIGN_SCOPE_INFOS_GETTER_TOKEN, FormValidators, copy, updateAndValidAll, DynamicDirective, FunField, FunFieldValueBase, baseFbConfig, baseFunField, BaseDesignSetting, InputTrigger, OptionsNode, SimpleMenu, nameCode } from 'ngx-axis-appforge/core';
2
- import * as i0 from '@angular/core';
3
- import { effect, input, inject, signal, model, computed, forwardRef, ChangeDetectionStrategy, Component } from '@angular/core';
4
- import * as i8 from '@angular/forms';
5
- import { FormsModule, ReactiveFormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
6
- import * as i9 from 'ng-zorro-antd/collapse';
7
- import { NzCollapseModule } from 'ng-zorro-antd/collapse';
8
- import * as i10 from 'ng-zorro-antd/form';
9
- import { NzFormModule } from 'ng-zorro-antd/form';
10
- import * as i13 from 'ng-zorro-antd/input';
11
- import { NzInputModule } from 'ng-zorro-antd/input';
12
- import * as i2 from 'ng-zorro-antd/grid';
13
- import { NzGridModule } from 'ng-zorro-antd/grid';
14
- import * as i3 from 'ng-zorro-antd/icon';
15
- import { NzIconModule } from 'ng-zorro-antd/icon';
16
- import { NzListModule } from 'ng-zorro-antd/list';
17
- import { NzSpaceModule } from 'ng-zorro-antd/space';
18
- import * as i1 from 'ng-zorro-antd/tag';
19
- import { NzTagModule } from 'ng-zorro-antd/tag';
20
- import * as i4 from 'ng-zorro-antd/empty';
21
- import { NzEmptyModule } from 'ng-zorro-antd/empty';
22
- import { NzMessageService } from 'ng-zorro-antd/message';
23
- import * as i5 from 'ng-zorro-antd/button';
24
- import { NzButtonModule } from 'ng-zorro-antd/button';
25
- import * as i7 from 'ng-zorro-antd/modal';
26
- import { NzModalModule } from 'ng-zorro-antd/modal';
27
- import * as i11 from 'ng-zorro-antd/radio';
28
- import { NzRadioModule } from 'ng-zorro-antd/radio';
29
- import * as i12 from 'ng-zorro-antd/select';
30
- import { NzSelectModule } from 'ng-zorro-antd/select';
31
- import * as i14 from 'ng-zorro-antd/switch';
32
- import { NzSwitchModule } from 'ng-zorro-antd/switch';
33
- import { CommonModule } from '@angular/common';
34
- import { map } from 'rxjs';
35
- import { moveItemInArray, CdkDropList, CdkDrag, CdkDragHandle } from '@angular/cdk/drag-drop';
36
- import * as i15 from 'ng-zorro-antd/flex';
37
- import { NzFlexModule } from 'ng-zorro-antd/flex';
38
- import * as i6 from 'ng-zorro-antd/core/transition-patch';
39
-
40
- class DataSourceEditor extends FunFieldBase {
41
- element;
42
- constructor(element) {
43
- super();
44
- this.element = element;
45
- effect(() => this.refreshCurrentScopeInfo());
46
- }
47
- scopeId = input(...(ngDevMode ? [undefined, { debugName: "scopeId" }] : []));
48
- msg = inject(NzMessageService);
49
- getScopeInfos = inject(AXIS_DESIGN_SCOPE_INFOS_GETTER_TOKEN);
50
- currentScopeInfo = signal(undefined, ...(ngDevMode ? [{ debugName: "currentScopeInfo" }] : []));
51
- value = model(...(ngDevMode ? [undefined, { debugName: "value" }] : []));
52
- ds = computed(() => this.buildDs(), ...(ngDevMode ? [{ debugName: "ds" }] : []));
53
- internalDataSources = computed(() => this.buildInternalDataSources(), ...(ngDevMode ? [{ debugName: "internalDataSources" }] : []));
54
- showDataSource = signal(undefined, ...(ngDevMode ? [{ debugName: "showDataSource" }] : []));
55
- showLine = signal(false, ...(ngDevMode ? [{ debugName: "showLine" }] : []));
56
- onChange;
57
- sub;
58
- fg = this.fb.group({
59
- name: [undefined, [FormValidators.required, FormValidators.pattern(/^[a-zA-Z_][a-zA-Z_0-9@\$]*$/)]],
60
- skipOnExists: [false, FormValidators.required],
61
- type: ['local', FormValidators.required],
62
- api: this.fb.group({
63
- url: [],
64
- method: ["get", FormValidators.required],
65
- body: [],
66
- }),
67
- data: [],
68
- injectField: [],
69
- cacheKey: [],
70
- });
71
- funFields = {
72
- api: {
73
- child: {
74
- url: {
75
- defaultValue: "",
76
- },
77
- method: {
78
- defaultValue: "get",
79
- },
80
- body: {
81
- defaultValue: null,
82
- },
83
- },
84
- },
85
- data: {
86
- defaultValue: undefined
87
- },
88
- cacheKey: {
89
- defaultValue: "",
90
- },
91
- };
92
- showModal = model(false, ...(ngDevMode ? [{ debugName: "showModal" }] : []));
93
- editIndex = -1;
94
- oldDataSourceName;
95
- dataSourceNameRepeat = signal(false, ...(ngDevMode ? [{ debugName: "dataSourceNameRepeat" }] : []));
96
- writeValue(v) {
97
- this.value.set(v);
98
- }
99
- registerOnChange(fn) {
100
- this.onChange = fn;
101
- }
102
- registerOnTouched(fn) { }
103
- copySuccess() {
104
- this.msg.info("已复制");
105
- }
106
- ngAfterViewInit() {
107
- if (this.element.nativeElement.nextElementSibling) {
108
- this.showLine.set(true);
109
- }
110
- }
111
- refreshCurrentScopeInfo() {
112
- this.sub?.unsubscribe();
113
- this.sub = this.getScopeInfos(this.scopeId()).pipe(map(sis => sis.find(scope => scope.scopeId == this.scopeId())))
114
- .subscribe(si => {
115
- this.currentScopeInfo.set(si);
116
- });
117
- }
118
- buildDs() {
119
- const ds = this.currentScopeInfo() ? copy(this.currentScopeInfo().ds, true) : {};
120
- for (const d of this.value() ?? []) {
121
- if (!ds.hasOwnProperty(d.name)) {
122
- ds[d.name] = "示例数据";
123
- }
124
- }
125
- return ds;
126
- }
127
- buildInternalDataSources() {
128
- const list = [];
129
- for (const name in this.currentScopeInfo()?.ds ?? {}) {
130
- if (!this.value()?.some(d => d.name == name)) {
131
- list.push({
132
- name: name,
133
- skipOnExists: false,
134
- type: "local",
135
- data: this.currentScopeInfo().ds[name]
136
- });
137
- }
138
- }
139
- return list;
140
- }
141
- openWithCreate() {
142
- this.editIndex = -1;
143
- this.oldDataSourceName = "";
144
- this.reset({
145
- name: "",
146
- skipOnExists: false,
147
- type: 'local'
148
- });
149
- this.changeType();
150
- this.showModal.set(true);
151
- }
152
- changeType() {
153
- const apiCtrl = this.fg.get("api");
154
- switch (this.fg.value.type) {
155
- case "local":
156
- apiCtrl.get("url")?.setValidators([]);
157
- this.fg.get("injectField")?.setValidators([]);
158
- this.fg.get("cacheKey")?.setValidators([]);
159
- break;
160
- case "api":
161
- apiCtrl.get("url")?.setValidators(FormValidators.requiredFun);
162
- this.fg.get("injectField")?.setValidators([]);
163
- this.fg.get("cacheKey")?.setValidators([]);
164
- break;
165
- case "inject":
166
- apiCtrl.get("url")?.setValidators([]);
167
- this.fg.get("injectField")?.setValidators([FormValidators.required]);
168
- this.fg.get("cacheKey")?.setValidators([]);
169
- break;
170
- case "cache":
171
- apiCtrl.get("url")?.setValidators([]);
172
- this.fg.get("injectField")?.setValidators([]);
173
- this.fg.get("cacheKey")?.setValidators([FormValidators.required]);
174
- break;
175
- }
176
- }
177
- doShowDataSource(name) {
178
- this.showDataSource.set({
179
- name: name,
180
- data: JSON.stringify(this.ds()[name], undefined, '\t')
181
- });
182
- }
183
- updateDataSource(name) {
184
- this.editIndex = this.value().findIndex((e) => e.name == name);
185
- this.oldDataSourceName = name;
186
- this.reset(this.value()[this.editIndex]);
187
- this.changeType();
188
- this.showModal.set(true);
189
- }
190
- dataSourceValid(name) {
191
- const allDataSourceNames = new Set();
192
- for (const ds of this.internalDataSources()) {
193
- allDataSourceNames.add(ds.name);
194
- }
195
- for (const ds of this.value() ?? []) {
196
- allDataSourceNames.add(ds.name);
197
- }
198
- this.dataSourceNameRepeat.set(!!name && name != this.oldDataSourceName && allDataSourceNames.has(name));
199
- }
200
- save() {
201
- if (updateAndValidAll(this.fg)) {
202
- const nextValue = copy(this.value() ?? [], true);
203
- const dataSource = this.recoverFunField(this.fg.value);
204
- if (this.editIndex == -1) {
205
- nextValue.push(dataSource);
206
- }
207
- else {
208
- nextValue[this.editIndex] = dataSource;
209
- }
210
- this.showModal.set(false);
211
- this.value.set(nextValue);
212
- this.onChange(this.value());
213
- }
214
- }
215
- deleteDataSource(name) {
216
- const index = this.value().findIndex((e) => e.name == name);
217
- if (index != -1) {
218
- this.value().splice(index, 1);
219
- this.value.set([...this.value()]);
220
- this.onChange(this.value());
221
- }
222
- }
223
- onDsDrop(e) {
224
- if (e.previousIndex != e.currentIndex) {
225
- moveItemInArray(this.value(), e.previousIndex, e.currentIndex);
226
- this.value.set([...this.value()]);
227
- this.onChange(this.value());
228
- }
229
- }
230
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.2", ngImport: i0, type: DataSourceEditor, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
231
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.2", type: DataSourceEditor, isStandalone: true, selector: "axis-design-scope-setting-datasource-editor", inputs: { scopeId: { classPropertyName: "scopeId", publicName: "scopeId", isSignal: true, isRequired: false, transformFunction: null }, value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, showModal: { classPropertyName: "showModal", publicName: "showModal", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", showModal: "showModalChange" }, providers: [
232
- {
233
- provide: NG_VALUE_ACCESSOR,
234
- useExisting: forwardRef(() => DataSourceEditor),
235
- multi: true
236
- },
237
- ], usesInheritance: true, ngImport: i0, template: "<nz-collapse [nzBordered]=\"false\">\n <ng-template #addButton>\n <a nz-button nzType=\"link\" style=\"float: right;\" (click)=\"$event.stopPropagation();openWithCreate()\">\n <nz-icon nzType=\"plus\"></nz-icon>\n \u6DFB\u52A0\n </a>\n </ng-template>\n <nz-collapse-panel nzHeader=\"\u6570\u636E\u6E90\u8BBE\u7F6E\" nzActive [nzExtra]=\"addButton\">\n @if (!value()?.length && !internalDataSources().length) {\n <nz-empty nzNotFoundContent=\"\u6682\u65E0\u6570\u636E\u6E90\"></nz-empty>\n }@else{\n <div class=\"ds-list\" nz-flex nzVertical nzGap=\"8px\" style=\"padding: 6px;\" cdkDropList\n (cdkDropListDropped)=\"onDsDrop($event)\">\n @for (item of value()??[]; track item.name;) {\n <div class=\"ds-box\" nz-flex nzGap=\"8px\" cdkDrag cdkDragLockAxis=\"y\" style=\"background: #fafafa;\">\n <nz-icon nzType=\"holder\" cdkDragHandle></nz-icon>\n <div>@switch (item.type) {\n @case (\"api\") {\n <nz-tag nzColor=\"magenta\">\u63A5\u53E3</nz-tag>\n }\n @case (\"local\") {\n <nz-tag nzColor=\"blue\">\u672C\u5730</nz-tag>\n }\n @case (\"inject\") {\n <nz-tag nzColor=\"purple\">\u6CE8\u5165</nz-tag>\n }\n @case (\"cache\") {\n <nz-tag nzColor=\"volcano\">\u7F13\u5B58</nz-tag>\n }\n }\n </div>\n <div style=\"flex: 1;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;\">{{item.name}}</div>\n <div>\n <a nz-button nzType=\"link\" nzSize=\"small\" (click)=\"doShowDataSource(item.name)\">\n <i nz-icon nzType=\"eye\" nzTheme=\"outline\"></i>\n </a>\n <a nz-button nzType=\"link\" nzSize=\"small\" (click)=\"updateDataSource(item.name)\">\n <i nz-icon nzType=\"edit\" nzTheme=\"outline\"></i>\n </a>\n <a nz-button nzType=\"link\" nzSize=\"small\" nzDanger (click)=\"deleteDataSource(item.name)\">\n <i nz-icon nzType=\"delete\" nzTheme=\"outline\"></i>\n </a>\n </div>\n </div>\n }\n @for (item of internalDataSources(); track item;) {\n <div class=\"ds-box\" nz-flex nzGap=\"8px\">\n <div style=\"width: 14px;\"></div>\n <div><nz-tag nzColor=\"blue\">\u672C\u5730</nz-tag></div>\n <div style=\"flex: 1;\">{{item.name}}</div>\n <div style=\"width: 72px;\">\n <a nz-button nzType=\"link\" nzSize=\"small\" (click)=\"doShowDataSource(item.name)\">\n <i nz-icon nzType=\"eye\" nzTheme=\"outline\"></i>\n </a>\n </div>\n </div>\n }\n </div>\n }\n </nz-collapse-panel>\n @if (showLine()) {\n <div></div>\n }\n</nz-collapse>\n\n<nz-modal nzWidth=\"800px\" [nzVisible]=\"!!showDataSource()\" [nzTitle]=\"'\u67E5\u770B\u6570\u636E\u6E90-'+showDataSource()?.name\" [nzOkText]=\"null\"\n (nzOnCancel)=\"showDataSource.set(undefined)\" [nzBodyStyle]=\"{padding:'0'}\" nzCancelText=\"\u5173\u95ED\">\n <div *nzModalContent style=\"height: 400px;\" nz-flex>\n <ng-container [axisDynamic]=\"{component:'axis-components/editor',inuse:true,mode:'json',readonly:true}\"\n [ngModel]=\"showDataSource()?.data ??''\"></ng-container>\n </div>\n</nz-modal>\n\n<nz-modal [(nzVisible)]=\"showModal\" nzTitle=\"\u6570\u636E\u6E90\" nzWidth=\"450px\" (nzOnCancel)=\"showModal.set(false)\" (nzOnOk)=\"save()\">\n <ng-container *nzModalContent>\n <form [formGroup]=\"fg\" nz-form>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u6570\u636E\u6E90\u540D\u5B57\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <input formControlName=\"name\" nz-input (ngModelChange)=\"dataSourceValid($event)\" />\n @if (dataSourceNameRepeat()) {\n <div class=\"ant-form-item-explain-warning\">\u6570\u636E\u6E90\u540D\u79F0\u91CD\u590D</div>\n }\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u5B58\u5728\u65F6\u5FFD\u7565\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <nz-switch formControlName=\"skipOnExists\"></nz-switch>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u6570\u636E\u6E90\u7C7B\u578B\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <nz-radio-group formControlName=\"type\" (ngModelChange)=\"changeType()\">\n <label nz-radio nzValue=\"local\">\u672C\u5730</label>\n <label nz-radio nzValue=\"api\">\u63A5\u53E3</label>\n <label nz-radio nzValue=\"inject\">\u6CE8\u5165</label>\n <label nz-radio nzValue=\"cache\">\u7F13\u5B58</label>\n </nz-radio-group>\n </nz-form-control>\n </nz-form-item>\n @switch (fg.value.type) {\n @case (\"api\") {\n <ng-container formGroupName=\"api\">\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u63A5\u53E3\u5730\u5740\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"url\" [exclude]=\"[fg.value.name]\">\n <input ngModel [ngModelOptions]=\"{standalone:true}\" nz-input />\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u8BF7\u6C42\u65B9\u5F0F\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"method\" [exclude]=\"[fg.value.name]\">\n <nz-select ngModel [ngModelOptions]=\"{standalone:true}\">\n <nz-option nzValue=\"get\" nzLabel=\"GET\"></nz-option>\n <nz-option nzValue=\"post\" nzLabel=\"POST\"></nz-option>\n <nz-option nzValue=\"put\" nzLabel=\"PUT\"></nz-option>\n <nz-option nzValue=\"delete\" nzLabel=\"DELETE\"></nz-option>\n </nz-select>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\">\n \u8BF7\u6C42\u6570\u636E\u4F53\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"body\" [exclude]=\"[fg.value.name]\">\n <ng-container [axisDynamic]=\"{component:'axis-components/input-json',inuse:true}\" ngModel\n [ngModelOptions]=\"{standalone:true}\"></ng-container>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n </ng-container>\n }\n @case (\"local\") {\n <nz-form-item>\n <nz-form-label nzSpan=\"6\">\n \u6570\u636E\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"data\" [exclude]=\"[fg.value.name]\">\n <ng-container [axisDynamic]=\"{component:'axis-components/input-json',inuse:true}\" ngModel\n [ngModelOptions]=\"{standalone:true}\"></ng-container>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n @case (\"inject\") {\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u5B57\u6BB5\u540D\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <input nz-input formControlName=\"injectField\" />\n </nz-form-control>\n </nz-form-item>\n }\n @case (\"cache\") {\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u7F13\u5B58Key\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"cacheKey\" [exclude]=\"[fg.value.name]\">\n <input nz-input ngModel [ngModelOptions]=\"{standalone:true}\" />\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n }\n </form>\n </ng-container>\n</nz-modal>", styles: [".cdk-drag-preview{border:none;box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.ds-list.cdk-drop-list-dragging .ds-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}nz-icon[nzType=holder]:hover{color:var(--ant-primary-color)}nz-icon[nzType=holder]{cursor:move}\n"], dependencies: [{ kind: "ngmodule", type: NzListModule }, { kind: "ngmodule", type: NzTagModule }, { kind: "component", type: i1.NzTagComponent, selector: "nz-tag", inputs: ["nzMode", "nzColor", "nzChecked", "nzBordered"], outputs: ["nzOnClose", "nzCheckedChange"], exportAs: ["nzTag"] }, { kind: "ngmodule", type: NzSpaceModule }, { kind: "ngmodule", type: NzGridModule }, { kind: "directive", type: i2.NzColDirective, selector: "[nz-col],nz-col,nz-form-control,nz-form-label", inputs: ["nzFlex", "nzSpan", "nzOrder", "nzOffset", "nzPush", "nzPull", "nzXs", "nzSm", "nzMd", "nzLg", "nzXl", "nzXXl"], exportAs: ["nzCol"] }, { kind: "directive", type: i2.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }, { kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i3.NzIconDirective, selector: "nz-icon,[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "ngmodule", type: NzEmptyModule }, { kind: "component", type: i4.NzEmptyComponent, selector: "nz-empty", inputs: ["nzNotFoundImage", "nzNotFoundContent", "nzNotFoundFooter"], exportAs: ["nzEmpty"] }, { kind: "ngmodule", type: NzButtonModule }, { kind: "component", type: i5.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }, { kind: "directive", type: i6.ɵNzTransitionPatchDirective, selector: "[nz-button], [nz-icon], nz-icon, [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "ngmodule", type: NzModalModule }, { kind: "component", type: i7.NzModalComponent, selector: "nz-modal", inputs: ["nzMask", "nzMaskClosable", "nzCloseOnNavigation", "nzVisible", "nzClosable", "nzOkLoading", "nzOkDisabled", "nzCancelDisabled", "nzCancelLoading", "nzKeyboard", "nzNoAnimation", "nzCentered", "nzDraggable", "nzContent", "nzFooter", "nzZIndex", "nzWidth", "nzWrapClassName", "nzClassName", "nzStyle", "nzTitle", "nzCloseIcon", "nzMaskStyle", "nzBodyStyle", "nzOkText", "nzCancelText", "nzOkType", "nzOkDanger", "nzIconType", "nzModalType", "nzAutofocus", "nzOnOk", "nzOnCancel"], outputs: ["nzOnOk", "nzOnCancel", "nzAfterOpen", "nzAfterClose", "nzVisibleChange"], exportAs: ["nzModal"] }, { kind: "directive", type: i7.NzModalContentDirective, selector: "[nzModalContent]", exportAs: ["nzModalContent"] }, { kind: "directive", type: DynamicDirective, selector: "[axisDynamic]", inputs: ["axisDynamic", "standalone", "isDesign"], exportAs: ["axisDynamic"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NzCollapseModule }, { kind: "component", type: i9.NzCollapsePanelComponent, selector: "nz-collapse-panel", inputs: ["nzActive", "nzDisabled", "nzShowArrow", "nzExtra", "nzHeader", "nzExpandedIcon"], outputs: ["nzActiveChange"], exportAs: ["nzCollapsePanel"] }, { kind: "component", type: i9.NzCollapseComponent, selector: "nz-collapse", inputs: ["nzAccordion", "nzBordered", "nzGhost", "nzExpandIconPosition"], exportAs: ["nzCollapse"] }, { kind: "ngmodule", type: NzFormModule }, { kind: "directive", type: i10.NzFormDirective, selector: "[nz-form]", inputs: ["nzLayout", "nzNoColon", "nzAutoTips", "nzDisableAutoTips", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap"], exportAs: ["nzForm"] }, { kind: "component", type: i10.NzFormItemComponent, selector: "nz-form-item", exportAs: ["nzFormItem"] }, { kind: "component", type: i10.NzFormLabelComponent, selector: "nz-form-label", inputs: ["nzFor", "nzRequired", "nzNoColon", "nzTooltipTitle", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap"], exportAs: ["nzFormLabel"] }, { kind: "component", type: i10.NzFormControlComponent, selector: "nz-form-control", inputs: ["nzSuccessTip", "nzWarningTip", "nzErrorTip", "nzValidatingTip", "nzExtra", "nzAutoTips", "nzDisableAutoTips", "nzHasFeedback", "nzValidateStatus"], exportAs: ["nzFormControl"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i8.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i8.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i8.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "ngmodule", type: NzRadioModule }, { kind: "component", type: i11.NzRadioComponent, selector: "[nz-radio],[nz-radio-button]", inputs: ["nzValue", "nzDisabled", "nzAutoFocus", "nz-radio-button"], exportAs: ["nzRadio"] }, { kind: "component", type: i11.NzRadioGroupComponent, selector: "nz-radio-group", inputs: ["nzDisabled", "nzButtonStyle", "nzSize", "nzName"], exportAs: ["nzRadioGroup"] }, { kind: "component", type: FunField, selector: "axis-fun-field", inputs: ["scopes", "exclude", "scopeId", "onlyFun", "noListen", "disabled", "editTip", "value", "open", "showCreateListenModal", "createListenDataSourceName"], outputs: ["valueChange", "openChange", "showCreateListenModalChange", "createListenDataSourceNameChange"] }, { kind: "ngmodule", type: NzSelectModule }, { kind: "component", type: i12.NzOptionComponent, selector: "nz-option", inputs: ["nzTitle", "nzLabel", "nzValue", "nzKey", "nzDisabled", "nzHide", "nzCustomContent"], exportAs: ["nzOption"] }, { kind: "component", type: i12.NzSelectComponent, selector: "nz-select", inputs: ["nzId", "nzSize", "nzStatus", "nzVariant", "nzOptionHeightPx", "nzOptionOverflowSize", "nzDropdownClassName", "nzDropdownMatchSelectWidth", "nzDropdownStyle", "nzNotFoundContent", "nzPlaceHolder", "nzPlacement", "nzMaxTagCount", "nzDropdownRender", "nzCustomTemplate", "nzSuffixIcon", "nzClearIcon", "nzRemoveIcon", "nzMenuItemSelectedIcon", "nzTokenSeparators", "nzMaxTagPlaceholder", "nzMaxMultipleCount", "nzMode", "nzFilterOption", "compareWith", "nzAllowClear", "nzBorderless", "nzShowSearch", "nzLoading", "nzAutoFocus", "nzAutoClearSearchValue", "nzServerSearch", "nzDisabled", "nzOpen", "nzSelectOnTab", "nzBackdrop", "nzOptions", "nzShowArrow"], outputs: ["nzOnSearch", "nzScrollToBottom", "nzOpenChange", "nzBlur", "nzFocus", "nzOnClear"], exportAs: ["nzSelect"] }, { kind: "ngmodule", type: NzInputModule }, { kind: "directive", type: i13.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzVariant", "nzSize", "nzStepperless", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "ngmodule", type: NzSwitchModule }, { kind: "component", type: i14.NzSwitchComponent, selector: "nz-switch", inputs: ["nzLoading", "nzDisabled", "nzControl", "nzCheckedChildren", "nzUnCheckedChildren", "nzSize", "nzId"], exportAs: ["nzSwitch"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer", "cdkDropListHasAnchor"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "ngmodule", type: NzFlexModule }, { kind: "directive", type: i15.NzFlexDirective, selector: "[nz-flex],nz-flex", inputs: ["nzVertical", "nzJustify", "nzAlign", "nzGap", "nzWrap", "nzFlex"], exportAs: ["nzFlex"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
238
- }
239
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.2", ngImport: i0, type: DataSourceEditor, decorators: [{
240
- type: Component,
241
- args: [{ selector: 'axis-design-scope-setting-datasource-editor', imports: [NzListModule, NzTagModule, NzSpaceModule, NzGridModule, NzIconModule, NzEmptyModule, NzButtonModule, NzModalModule, DynamicDirective, FormsModule, NzCollapseModule, NzFormModule, ReactiveFormsModule, NzRadioModule, FunField, NzSelectModule, NzInputModule, NzSwitchModule, CommonModule, CdkDropList, CdkDrag, CdkDragHandle, NzFlexModule], changeDetection: ChangeDetectionStrategy.OnPush, providers: [
242
- {
243
- provide: NG_VALUE_ACCESSOR,
244
- useExisting: forwardRef(() => DataSourceEditor),
245
- multi: true
246
- },
247
- ], template: "<nz-collapse [nzBordered]=\"false\">\n <ng-template #addButton>\n <a nz-button nzType=\"link\" style=\"float: right;\" (click)=\"$event.stopPropagation();openWithCreate()\">\n <nz-icon nzType=\"plus\"></nz-icon>\n \u6DFB\u52A0\n </a>\n </ng-template>\n <nz-collapse-panel nzHeader=\"\u6570\u636E\u6E90\u8BBE\u7F6E\" nzActive [nzExtra]=\"addButton\">\n @if (!value()?.length && !internalDataSources().length) {\n <nz-empty nzNotFoundContent=\"\u6682\u65E0\u6570\u636E\u6E90\"></nz-empty>\n }@else{\n <div class=\"ds-list\" nz-flex nzVertical nzGap=\"8px\" style=\"padding: 6px;\" cdkDropList\n (cdkDropListDropped)=\"onDsDrop($event)\">\n @for (item of value()??[]; track item.name;) {\n <div class=\"ds-box\" nz-flex nzGap=\"8px\" cdkDrag cdkDragLockAxis=\"y\" style=\"background: #fafafa;\">\n <nz-icon nzType=\"holder\" cdkDragHandle></nz-icon>\n <div>@switch (item.type) {\n @case (\"api\") {\n <nz-tag nzColor=\"magenta\">\u63A5\u53E3</nz-tag>\n }\n @case (\"local\") {\n <nz-tag nzColor=\"blue\">\u672C\u5730</nz-tag>\n }\n @case (\"inject\") {\n <nz-tag nzColor=\"purple\">\u6CE8\u5165</nz-tag>\n }\n @case (\"cache\") {\n <nz-tag nzColor=\"volcano\">\u7F13\u5B58</nz-tag>\n }\n }\n </div>\n <div style=\"flex: 1;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;\">{{item.name}}</div>\n <div>\n <a nz-button nzType=\"link\" nzSize=\"small\" (click)=\"doShowDataSource(item.name)\">\n <i nz-icon nzType=\"eye\" nzTheme=\"outline\"></i>\n </a>\n <a nz-button nzType=\"link\" nzSize=\"small\" (click)=\"updateDataSource(item.name)\">\n <i nz-icon nzType=\"edit\" nzTheme=\"outline\"></i>\n </a>\n <a nz-button nzType=\"link\" nzSize=\"small\" nzDanger (click)=\"deleteDataSource(item.name)\">\n <i nz-icon nzType=\"delete\" nzTheme=\"outline\"></i>\n </a>\n </div>\n </div>\n }\n @for (item of internalDataSources(); track item;) {\n <div class=\"ds-box\" nz-flex nzGap=\"8px\">\n <div style=\"width: 14px;\"></div>\n <div><nz-tag nzColor=\"blue\">\u672C\u5730</nz-tag></div>\n <div style=\"flex: 1;\">{{item.name}}</div>\n <div style=\"width: 72px;\">\n <a nz-button nzType=\"link\" nzSize=\"small\" (click)=\"doShowDataSource(item.name)\">\n <i nz-icon nzType=\"eye\" nzTheme=\"outline\"></i>\n </a>\n </div>\n </div>\n }\n </div>\n }\n </nz-collapse-panel>\n @if (showLine()) {\n <div></div>\n }\n</nz-collapse>\n\n<nz-modal nzWidth=\"800px\" [nzVisible]=\"!!showDataSource()\" [nzTitle]=\"'\u67E5\u770B\u6570\u636E\u6E90-'+showDataSource()?.name\" [nzOkText]=\"null\"\n (nzOnCancel)=\"showDataSource.set(undefined)\" [nzBodyStyle]=\"{padding:'0'}\" nzCancelText=\"\u5173\u95ED\">\n <div *nzModalContent style=\"height: 400px;\" nz-flex>\n <ng-container [axisDynamic]=\"{component:'axis-components/editor',inuse:true,mode:'json',readonly:true}\"\n [ngModel]=\"showDataSource()?.data ??''\"></ng-container>\n </div>\n</nz-modal>\n\n<nz-modal [(nzVisible)]=\"showModal\" nzTitle=\"\u6570\u636E\u6E90\" nzWidth=\"450px\" (nzOnCancel)=\"showModal.set(false)\" (nzOnOk)=\"save()\">\n <ng-container *nzModalContent>\n <form [formGroup]=\"fg\" nz-form>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u6570\u636E\u6E90\u540D\u5B57\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <input formControlName=\"name\" nz-input (ngModelChange)=\"dataSourceValid($event)\" />\n @if (dataSourceNameRepeat()) {\n <div class=\"ant-form-item-explain-warning\">\u6570\u636E\u6E90\u540D\u79F0\u91CD\u590D</div>\n }\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u5B58\u5728\u65F6\u5FFD\u7565\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <nz-switch formControlName=\"skipOnExists\"></nz-switch>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u6570\u636E\u6E90\u7C7B\u578B\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <nz-radio-group formControlName=\"type\" (ngModelChange)=\"changeType()\">\n <label nz-radio nzValue=\"local\">\u672C\u5730</label>\n <label nz-radio nzValue=\"api\">\u63A5\u53E3</label>\n <label nz-radio nzValue=\"inject\">\u6CE8\u5165</label>\n <label nz-radio nzValue=\"cache\">\u7F13\u5B58</label>\n </nz-radio-group>\n </nz-form-control>\n </nz-form-item>\n @switch (fg.value.type) {\n @case (\"api\") {\n <ng-container formGroupName=\"api\">\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u63A5\u53E3\u5730\u5740\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"url\" [exclude]=\"[fg.value.name]\">\n <input ngModel [ngModelOptions]=\"{standalone:true}\" nz-input />\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u8BF7\u6C42\u65B9\u5F0F\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"method\" [exclude]=\"[fg.value.name]\">\n <nz-select ngModel [ngModelOptions]=\"{standalone:true}\">\n <nz-option nzValue=\"get\" nzLabel=\"GET\"></nz-option>\n <nz-option nzValue=\"post\" nzLabel=\"POST\"></nz-option>\n <nz-option nzValue=\"put\" nzLabel=\"PUT\"></nz-option>\n <nz-option nzValue=\"delete\" nzLabel=\"DELETE\"></nz-option>\n </nz-select>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\">\n \u8BF7\u6C42\u6570\u636E\u4F53\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"body\" [exclude]=\"[fg.value.name]\">\n <ng-container [axisDynamic]=\"{component:'axis-components/input-json',inuse:true}\" ngModel\n [ngModelOptions]=\"{standalone:true}\"></ng-container>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n </ng-container>\n }\n @case (\"local\") {\n <nz-form-item>\n <nz-form-label nzSpan=\"6\">\n \u6570\u636E\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"data\" [exclude]=\"[fg.value.name]\">\n <ng-container [axisDynamic]=\"{component:'axis-components/input-json',inuse:true}\" ngModel\n [ngModelOptions]=\"{standalone:true}\"></ng-container>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n @case (\"inject\") {\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u5B57\u6BB5\u540D\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <input nz-input formControlName=\"injectField\" />\n </nz-form-control>\n </nz-form-item>\n }\n @case (\"cache\") {\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n \u7F13\u5B58Key\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"cacheKey\" [exclude]=\"[fg.value.name]\">\n <input nz-input ngModel [ngModelOptions]=\"{standalone:true}\" />\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n }\n </form>\n </ng-container>\n</nz-modal>", styles: [".cdk-drag-preview{border:none;box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.ds-list.cdk-drop-list-dragging .ds-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}nz-icon[nzType=holder]:hover{color:var(--ant-primary-color)}nz-icon[nzType=holder]{cursor:move}\n"] }]
248
- }], ctorParameters: () => [{ type: i0.ElementRef }] });
249
-
250
- class Setting extends FunFieldValueBase {
251
- fg = this.fb.group({
252
- ...baseFbConfig,
253
- scopeName: ["未命名", FormValidators.required],
254
- dataSources: []
255
- });
256
- funFields = {
257
- ...baseFunField,
258
- };
259
- excludeDs = computed(() => this.value().dataSources?.map((e) => e.name), ...(ngDevMode ? [{ debugName: "excludeDs" }] : []));
260
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.2", ngImport: i0, type: Setting, deps: null, target: i0.ɵɵFactoryTarget.Component });
261
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.2", type: Setting, isStandalone: true, selector: "axis-design-scope-setting", usesInheritance: true, ngImport: i0, template: "<form [formGroup]=\"fg\" nz-form>\n <nz-collapse [nzBordered]=\"false\">\n <nz-collapse-panel nzHeader=\"\u57FA\u672C\u8BBE\u7F6E\" nzActive>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u57DF\u540D\u79F0\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <input nz-input formControlName=\"scopeName\" />\n </nz-form-control>\n </nz-form-item>\n </nz-collapse-panel>\n <axis-design-scope-setting-datasource-editor [scopeId]=\"value().id\"\n formControlName=\"dataSources\"></axis-design-scope-setting-datasource-editor>\n <axis-base-design-setting [fg]=\"fg\" [exclude]=\"excludeDs()\" [scopeId]=\"value().id\"></axis-base-design-setting>\n <axis-input-trigger formControlName=\"triggeEvents\"\n [eventDesc]=\"[{name:'dataChange',title:'\u6570\u636E\u53D8\u5316',noListen:false}]\"></axis-input-trigger>\n </nz-collapse>\n</form>", styles: [""], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i8.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i8.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: NzFormModule }, { kind: "directive", type: i2.NzColDirective, selector: "[nz-col],nz-col,nz-form-control,nz-form-label", inputs: ["nzFlex", "nzSpan", "nzOrder", "nzOffset", "nzPush", "nzPull", "nzXs", "nzSm", "nzMd", "nzLg", "nzXl", "nzXXl"], exportAs: ["nzCol"] }, { kind: "directive", type: i2.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }, { kind: "directive", type: i10.NzFormDirective, selector: "[nz-form]", inputs: ["nzLayout", "nzNoColon", "nzAutoTips", "nzDisableAutoTips", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap"], exportAs: ["nzForm"] }, { kind: "component", type: i10.NzFormItemComponent, selector: "nz-form-item", exportAs: ["nzFormItem"] }, { kind: "component", type: i10.NzFormLabelComponent, selector: "nz-form-label", inputs: ["nzFor", "nzRequired", "nzNoColon", "nzTooltipTitle", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap"], exportAs: ["nzFormLabel"] }, { kind: "component", type: i10.NzFormControlComponent, selector: "nz-form-control", inputs: ["nzSuccessTip", "nzWarningTip", "nzErrorTip", "nzValidatingTip", "nzExtra", "nzAutoTips", "nzDisableAutoTips", "nzHasFeedback", "nzValidateStatus"], exportAs: ["nzFormControl"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i8.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i8.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: NzCollapseModule }, { kind: "component", type: i9.NzCollapsePanelComponent, selector: "nz-collapse-panel", inputs: ["nzActive", "nzDisabled", "nzShowArrow", "nzExtra", "nzHeader", "nzExpandedIcon"], outputs: ["nzActiveChange"], exportAs: ["nzCollapsePanel"] }, { kind: "component", type: i9.NzCollapseComponent, selector: "nz-collapse", inputs: ["nzAccordion", "nzBordered", "nzGhost", "nzExpandIconPosition"], exportAs: ["nzCollapse"] }, { kind: "component", type: BaseDesignSetting, selector: "axis-base-design-setting", inputs: ["scopeId", "exclude", "fg"] }, { kind: "ngmodule", type: NzInputModule }, { kind: "directive", type: i13.NzInputDirective, selector: "input[nz-input],textarea[nz-input]", inputs: ["nzBorderless", "nzVariant", "nzSize", "nzStepperless", "nzStatus", "disabled"], exportAs: ["nzInput"] }, { kind: "component", type: DataSourceEditor, selector: "axis-design-scope-setting-datasource-editor", inputs: ["scopeId", "value", "showModal"], outputs: ["valueChange", "showModalChange"] }, { kind: "component", type: InputTrigger, selector: "axis-input-trigger", inputs: ["internalTriggers", "value", "eventDesc", "isVisibleHandlerModal", "editEventHandler"], outputs: ["valueChange", "isVisibleHandlerModalChange", "editEventHandlerChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
262
- }
263
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.2", ngImport: i0, type: Setting, decorators: [{
264
- type: Component,
265
- args: [{ selector: 'axis-design-scope-setting', imports: [FormsModule, NzFormModule, ReactiveFormsModule, NzCollapseModule, BaseDesignSetting, NzInputModule, DataSourceEditor, InputTrigger], changeDetection: ChangeDetectionStrategy.OnPush, template: "<form [formGroup]=\"fg\" nz-form>\n <nz-collapse [nzBordered]=\"false\">\n <nz-collapse-panel nzHeader=\"\u57FA\u672C\u8BBE\u7F6E\" nzActive>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n \u57DF\u540D\u79F0\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <input nz-input formControlName=\"scopeName\" />\n </nz-form-control>\n </nz-form-item>\n </nz-collapse-panel>\n <axis-design-scope-setting-datasource-editor [scopeId]=\"value().id\"\n formControlName=\"dataSources\"></axis-design-scope-setting-datasource-editor>\n <axis-base-design-setting [fg]=\"fg\" [exclude]=\"excludeDs()\" [scopeId]=\"value().id\"></axis-base-design-setting>\n <axis-input-trigger formControlName=\"triggeEvents\"\n [eventDesc]=\"[{name:'dataChange',title:'\u6570\u636E\u53D8\u5316',noListen:false}]\"></axis-input-trigger>\n </nz-collapse>\n</form>" }]
266
- }] });
267
-
268
- const Config = {
269
- componentName: "组件域",
270
- buildOptionsNodes(nextInfo) {
271
- const ds = {};
272
- for (const d of nextInfo.currentObject.dataSources ?? []) {
273
- if (d.type == "local" && d.data) {
274
- ds[d.name] = d.data;
275
- }
276
- else {
277
- ds[d.name] = "示例数据";
278
- }
279
- }
280
- return {
281
- treeNode: new OptionsNode({
282
- parentId: nextInfo.parentId,
283
- scopeId: nextInfo.currentObject.id,
284
- name: nameCode("组件域", nextInfo.currentObject.scopeName),
285
- canSetting: true,
286
- canDrag: true,
287
- dragType: "component",
288
- canDrop: true,
289
- dropType: "component",
290
- dropObj: nextInfo.currentObject,
291
- defaultDropIndex: "child",
292
- parentObj: nextInfo.parentObject,
293
- indexOfParentObj: nextInfo.indexOfParent,
294
- rootOptions: nextInfo.currentObject,
295
- children: [],
296
- contextMenu: SimpleMenu,
297
- settingType: Setting,
298
- icon: "group"
299
- }),
300
- next: [
301
- {
302
- parentObject: nextInfo.currentObject,
303
- indexOfParent: "child",
304
- parentId: nextInfo.currentObject.id,
305
- scopeId: nextInfo.currentObject.id
306
- }
307
- ],
308
- newScopes: [
309
- {
310
- scopeId: nextInfo.currentObject.id,
311
- scopeName: nextInfo.currentObject.scopeName,
312
- parentScopeId: nextInfo.scopeId,
313
- ds: ds
314
- }
315
- ]
316
- };
317
- },
318
- bindElementsOptionsNode(element, options) {
319
- return {
320
- [options.id]: { element, dropElement: element }
321
- };
322
- },
323
- };
324
-
325
- /**
326
- * Generated bundle index. Do not edit.
327
- */
328
-
329
- export { Config };
330
- //# sourceMappingURL=ngx-axis-appforge-axis-components-scope-design.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ngx-axis-appforge-axis-components-scope-design.mjs","sources":["../../../axis-components/scope/design/setting/datasource-editor/datasource-editor.ts","../../../axis-components/scope/design/setting/datasource-editor/datasource-editor.html","../../../axis-components/scope/design/setting/setting.ts","../../../axis-components/scope/design/setting/setting.html","../../../axis-components/scope/design/config.ts","../../../axis-components/scope/design/ngx-axis-appforge-axis-components-scope-design.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed, effect, ElementRef, forwardRef, inject, input, model, signal } from \"@angular/core\";\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR, ReactiveFormsModule, UntypedFormGroup } from \"@angular/forms\";\nimport { AXIS_DESIGN_SCOPE_INFOS_GETTER_TOKEN, copy, DataSourceOptions, DynamicDirective, FormValidators, FunField, FunFieldBase, FunFieldOptions, ScopeInfo, updateAndValidAll } from \"ngx-axis-appforge/core\";\nimport { NzGridModule } from \"ng-zorro-antd/grid\";\nimport { NzIconModule } from \"ng-zorro-antd/icon\";\nimport { NzListModule } from \"ng-zorro-antd/list\";\nimport { NzSpaceModule } from \"ng-zorro-antd/space\";\nimport { NzTagModule } from \"ng-zorro-antd/tag\";\nimport { NzEmptyModule } from \"ng-zorro-antd/empty\";\nimport { NzMessageService } from \"ng-zorro-antd/message\";\nimport { NzButtonModule } from \"ng-zorro-antd/button\";\nimport { NzModalModule } from \"ng-zorro-antd/modal\";\nimport { NzCollapseModule } from \"ng-zorro-antd/collapse\";\nimport { NzFormModule } from \"ng-zorro-antd/form\";\nimport { NzRadioModule } from \"ng-zorro-antd/radio\";\nimport { NzSelectModule } from \"ng-zorro-antd/select\";\nimport { NzInputModule } from \"ng-zorro-antd/input\";\nimport { NzSwitchModule } from \"ng-zorro-antd/switch\";\nimport { CommonModule } from \"@angular/common\";\nimport { BehaviorSubject, map, Subscription, tap } from \"rxjs\";\nimport { CdkDragDrop, CdkDropList, CdkDrag, moveItemInArray, CdkDragHandle } from '@angular/cdk/drag-drop';\nimport { NzFlexModule } from \"ng-zorro-antd/flex\";\n\n\n@Component({\n selector: 'axis-design-scope-setting-datasource-editor',\n imports: [NzListModule, NzTagModule, NzSpaceModule, NzGridModule, NzIconModule, NzEmptyModule, NzButtonModule, NzModalModule, DynamicDirective, FormsModule, NzCollapseModule, NzFormModule, ReactiveFormsModule, NzRadioModule, FunField, NzSelectModule, NzInputModule, NzSwitchModule, CommonModule, CdkDropList, CdkDrag, CdkDragHandle, NzFlexModule],\n templateUrl: './datasource-editor.html',\n styleUrl: './datasource-editor.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => DataSourceEditor),\n multi: true\n },\n ]\n})\nexport class DataSourceEditor extends FunFieldBase implements ControlValueAccessor {\n\n constructor(private element: ElementRef) {\n super();\n effect(() => this.refreshCurrentScopeInfo());\n }\n\n readonly scopeId = input<string>();\n private readonly msg = inject(NzMessageService);\n readonly getScopeInfos = inject(AXIS_DESIGN_SCOPE_INFOS_GETTER_TOKEN);\n readonly currentScopeInfo = signal<ScopeInfo | undefined>(undefined);\n readonly value = model<DataSourceOptions[]>();\n readonly ds = computed(() => this.buildDs());\n readonly internalDataSources = computed(() => this.buildInternalDataSources());\n readonly showDataSource = signal<any>(undefined);\n readonly showLine = signal(false);\n onChange: any;\n sub?: Subscription;\n\n override fg: UntypedFormGroup = this.fb.group({\n name: [undefined, [FormValidators.required, FormValidators.pattern(/^[a-zA-Z_][a-zA-Z_0-9@\\$]*$/)]],\n skipOnExists: [false, FormValidators.required],\n type: ['local', FormValidators.required],\n api: this.fb.group({\n url: [],\n method: [\"get\", FormValidators.required],\n body: [],\n }),\n data: [],\n injectField: [],\n cacheKey: [],\n });\n protected override funFields: FunFieldOptions = {\n api: {\n child: {\n url: {\n defaultValue: \"\",\n },\n method: {\n defaultValue: \"get\",\n },\n body: {\n defaultValue: null,\n },\n },\n },\n data: {\n defaultValue: undefined\n },\n cacheKey: {\n defaultValue: \"\",\n },\n };\n\n readonly showModal = model(false);\n editIndex = -1;\n oldDataSourceName?: string;\n dataSourceNameRepeat = signal(false);\n\n writeValue(v: any): void {\n this.value.set(v);\n }\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n registerOnTouched(fn: any): void { }\n\n copySuccess() {\n this.msg.info(\"已复制\");\n }\n\n ngAfterViewInit(): void {\n if (this.element.nativeElement.nextElementSibling) {\n this.showLine.set(true);\n }\n }\n\n refreshCurrentScopeInfo() {\n this.sub?.unsubscribe();\n this.sub = this.getScopeInfos(this.scopeId()).pipe(map(sis => sis.find(scope => scope.scopeId == this.scopeId())))\n .subscribe(si => {\n this.currentScopeInfo.set(si);\n });\n }\n\n private buildDs(): any {\n const ds = this.currentScopeInfo() ? copy(this.currentScopeInfo()!.ds, true) : {};\n for (const d of this.value() ?? []) {\n if (!ds.hasOwnProperty(d.name)) {\n ds[d.name] = \"示例数据\";\n }\n }\n return ds;\n }\n\n private buildInternalDataSources(): DataSourceOptions[] {\n const list: DataSourceOptions[] = [];\n for (const name in this.currentScopeInfo()?.ds ?? {}) {\n if (!this.value()?.some(d => d.name == name)) {\n list.push({\n name: name,\n skipOnExists: false,\n type: \"local\",\n data: this.currentScopeInfo()!.ds[name]\n })\n }\n }\n return list;\n }\n\n openWithCreate() {\n this.editIndex = -1;\n this.oldDataSourceName = \"\";\n this.reset({\n name: \"\",\n skipOnExists: false,\n type: 'local'\n });\n this.changeType();\n this.showModal.set(true);\n }\n\n changeType() {\n const apiCtrl = this.fg.get(\"api\") as UntypedFormGroup;\n switch (this.fg.value.type) {\n case \"local\":\n apiCtrl.get(\"url\")?.setValidators([]);\n this.fg.get(\"injectField\")?.setValidators([]);\n this.fg.get(\"cacheKey\")?.setValidators([]);\n break;\n case \"api\":\n apiCtrl.get(\"url\")?.setValidators(FormValidators.requiredFun);\n this.fg.get(\"injectField\")?.setValidators([]);\n this.fg.get(\"cacheKey\")?.setValidators([]);\n break;\n case \"inject\":\n apiCtrl.get(\"url\")?.setValidators([]);\n this.fg.get(\"injectField\")?.setValidators([FormValidators.required]);\n this.fg.get(\"cacheKey\")?.setValidators([]);\n break;\n case \"cache\":\n apiCtrl.get(\"url\")?.setValidators([]);\n this.fg.get(\"injectField\")?.setValidators([]);\n this.fg.get(\"cacheKey\")?.setValidators([FormValidators.required]);\n break;\n }\n }\n\n doShowDataSource(name: string) {\n this.showDataSource.set({\n name: name,\n data: JSON.stringify(this.ds()[name], undefined, '\\t')\n });\n }\n\n updateDataSource(name: string) {\n this.editIndex = this.value()!.findIndex((e: any) => e.name == name);\n this.oldDataSourceName = name;\n this.reset(this.value()![this.editIndex]);\n this.changeType();\n this.showModal.set(true);\n }\n\n dataSourceValid(name: string) {\n const allDataSourceNames = new Set<string>();\n for (const ds of this.internalDataSources()) {\n allDataSourceNames.add(ds.name);\n }\n for (const ds of this.value() ?? []) {\n allDataSourceNames.add(ds.name);\n }\n this.dataSourceNameRepeat.set(!!name && name != this.oldDataSourceName && allDataSourceNames.has(name));\n }\n\n save() {\n if (updateAndValidAll(this.fg)) {\n const nextValue = copy(this.value() ?? [], true);\n const dataSource = this.recoverFunField(this.fg.value)\n if (this.editIndex == -1) {\n nextValue.push(dataSource);\n } else {\n nextValue[this.editIndex] = dataSource;\n }\n this.showModal.set(false);\n this.value.set(nextValue);\n this.onChange(this.value());\n }\n }\n\n deleteDataSource(name: string) {\n const index = this.value()!.findIndex((e: any) => e.name == name);\n if (index != -1) {\n this.value()!.splice(index, 1);\n this.value.set([...this.value()!]);\n this.onChange(this.value());\n }\n }\n\n onDsDrop(e: CdkDragDrop<string[]>) {\n if (e.previousIndex != e.currentIndex) {\n moveItemInArray(this.value()!, e.previousIndex, e.currentIndex);\n this.value.set([...this.value()!]);\n this.onChange(this.value());\n }\n }\n\n}","<nz-collapse [nzBordered]=\"false\">\n <ng-template #addButton>\n <a nz-button nzType=\"link\" style=\"float: right;\" (click)=\"$event.stopPropagation();openWithCreate()\">\n <nz-icon nzType=\"plus\"></nz-icon>\n 添加\n </a>\n </ng-template>\n <nz-collapse-panel nzHeader=\"数据源设置\" nzActive [nzExtra]=\"addButton\">\n @if (!value()?.length && !internalDataSources().length) {\n <nz-empty nzNotFoundContent=\"暂无数据源\"></nz-empty>\n }@else{\n <div class=\"ds-list\" nz-flex nzVertical nzGap=\"8px\" style=\"padding: 6px;\" cdkDropList\n (cdkDropListDropped)=\"onDsDrop($event)\">\n @for (item of value()??[]; track item.name;) {\n <div class=\"ds-box\" nz-flex nzGap=\"8px\" cdkDrag cdkDragLockAxis=\"y\" style=\"background: #fafafa;\">\n <nz-icon nzType=\"holder\" cdkDragHandle></nz-icon>\n <div>@switch (item.type) {\n @case (\"api\") {\n <nz-tag nzColor=\"magenta\">接口</nz-tag>\n }\n @case (\"local\") {\n <nz-tag nzColor=\"blue\">本地</nz-tag>\n }\n @case (\"inject\") {\n <nz-tag nzColor=\"purple\">注入</nz-tag>\n }\n @case (\"cache\") {\n <nz-tag nzColor=\"volcano\">缓存</nz-tag>\n }\n }\n </div>\n <div style=\"flex: 1;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;\">{{item.name}}</div>\n <div>\n <a nz-button nzType=\"link\" nzSize=\"small\" (click)=\"doShowDataSource(item.name)\">\n <i nz-icon nzType=\"eye\" nzTheme=\"outline\"></i>\n </a>\n <a nz-button nzType=\"link\" nzSize=\"small\" (click)=\"updateDataSource(item.name)\">\n <i nz-icon nzType=\"edit\" nzTheme=\"outline\"></i>\n </a>\n <a nz-button nzType=\"link\" nzSize=\"small\" nzDanger (click)=\"deleteDataSource(item.name)\">\n <i nz-icon nzType=\"delete\" nzTheme=\"outline\"></i>\n </a>\n </div>\n </div>\n }\n @for (item of internalDataSources(); track item;) {\n <div class=\"ds-box\" nz-flex nzGap=\"8px\">\n <div style=\"width: 14px;\"></div>\n <div><nz-tag nzColor=\"blue\">本地</nz-tag></div>\n <div style=\"flex: 1;\">{{item.name}}</div>\n <div style=\"width: 72px;\">\n <a nz-button nzType=\"link\" nzSize=\"small\" (click)=\"doShowDataSource(item.name)\">\n <i nz-icon nzType=\"eye\" nzTheme=\"outline\"></i>\n </a>\n </div>\n </div>\n }\n </div>\n }\n </nz-collapse-panel>\n @if (showLine()) {\n <div></div>\n }\n</nz-collapse>\n\n<nz-modal nzWidth=\"800px\" [nzVisible]=\"!!showDataSource()\" [nzTitle]=\"'查看数据源-'+showDataSource()?.name\" [nzOkText]=\"null\"\n (nzOnCancel)=\"showDataSource.set(undefined)\" [nzBodyStyle]=\"{padding:'0'}\" nzCancelText=\"关闭\">\n <div *nzModalContent style=\"height: 400px;\" nz-flex>\n <ng-container [axisDynamic]=\"{component:'axis-components/editor',inuse:true,mode:'json',readonly:true}\"\n [ngModel]=\"showDataSource()?.data ??''\"></ng-container>\n </div>\n</nz-modal>\n\n<nz-modal [(nzVisible)]=\"showModal\" nzTitle=\"数据源\" nzWidth=\"450px\" (nzOnCancel)=\"showModal.set(false)\" (nzOnOk)=\"save()\">\n <ng-container *nzModalContent>\n <form [formGroup]=\"fg\" nz-form>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n 数据源名字\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <input formControlName=\"name\" nz-input (ngModelChange)=\"dataSourceValid($event)\" />\n @if (dataSourceNameRepeat()) {\n <div class=\"ant-form-item-explain-warning\">数据源名称重复</div>\n }\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n 存在时忽略\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <nz-switch formControlName=\"skipOnExists\"></nz-switch>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n 数据源类型\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <nz-radio-group formControlName=\"type\" (ngModelChange)=\"changeType()\">\n <label nz-radio nzValue=\"local\">本地</label>\n <label nz-radio nzValue=\"api\">接口</label>\n <label nz-radio nzValue=\"inject\">注入</label>\n <label nz-radio nzValue=\"cache\">缓存</label>\n </nz-radio-group>\n </nz-form-control>\n </nz-form-item>\n @switch (fg.value.type) {\n @case (\"api\") {\n <ng-container formGroupName=\"api\">\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n 接口地址\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"url\" [exclude]=\"[fg.value.name]\">\n <input ngModel [ngModelOptions]=\"{standalone:true}\" nz-input />\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n 请求方式\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"method\" [exclude]=\"[fg.value.name]\">\n <nz-select ngModel [ngModelOptions]=\"{standalone:true}\">\n <nz-option nzValue=\"get\" nzLabel=\"GET\"></nz-option>\n <nz-option nzValue=\"post\" nzLabel=\"POST\"></nz-option>\n <nz-option nzValue=\"put\" nzLabel=\"PUT\"></nz-option>\n <nz-option nzValue=\"delete\" nzLabel=\"DELETE\"></nz-option>\n </nz-select>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"6\">\n 请求数据体\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"body\" [exclude]=\"[fg.value.name]\">\n <ng-container [axisDynamic]=\"{component:'axis-components/input-json',inuse:true}\" ngModel\n [ngModelOptions]=\"{standalone:true}\"></ng-container>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n </ng-container>\n }\n @case (\"local\") {\n <nz-form-item>\n <nz-form-label nzSpan=\"6\">\n 数据\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"data\" [exclude]=\"[fg.value.name]\">\n <ng-container [axisDynamic]=\"{component:'axis-components/input-json',inuse:true}\" ngModel\n [ngModelOptions]=\"{standalone:true}\"></ng-container>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n @case (\"inject\") {\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n 字段名\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <input nz-input formControlName=\"injectField\" />\n </nz-form-control>\n </nz-form-item>\n }\n @case (\"cache\") {\n <nz-form-item>\n <nz-form-label nzSpan=\"6\" nzRequired>\n 缓存Key\n </nz-form-label>\n <nz-form-control nzSpan=\"18\">\n <axis-fun-field formControlName=\"cacheKey\" [exclude]=\"[fg.value.name]\">\n <input nz-input ngModel [ngModelOptions]=\"{standalone:true}\" />\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n }\n </form>\n </ng-container>\n</nz-modal>","import { ChangeDetectionStrategy, Component, computed } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule, UntypedFormGroup } from '@angular/forms';\nimport { NzCollapseModule } from 'ng-zorro-antd/collapse';\nimport { NzFormModule } from 'ng-zorro-antd/form';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { BaseDesignSetting, baseFbConfig, baseFunField, FormValidators, FunFieldValueBase, FunFieldOptions, DataSourceOptions, InputTrigger } from 'ngx-axis-appforge/core';\nimport { DataSourceEditor } from './datasource-editor/datasource-editor';\n\n@Component({\n selector: 'axis-design-scope-setting',\n imports: [FormsModule, NzFormModule, ReactiveFormsModule, NzCollapseModule, BaseDesignSetting, NzInputModule, DataSourceEditor, InputTrigger],\n templateUrl: './setting.html',\n styleUrl: './setting.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class Setting extends FunFieldValueBase {\n\n override fg: UntypedFormGroup = this.fb.group({\n ...baseFbConfig,\n scopeName: [\"未命名\", FormValidators.required],\n dataSources: []\n });\n\n protected override funFields: FunFieldOptions = {\n ...baseFunField,\n };\n\n excludeDs = computed(() => this.value().dataSources?.map((e: DataSourceOptions) => e.name))\n\n}\n","<form [formGroup]=\"fg\" nz-form>\n <nz-collapse [nzBordered]=\"false\">\n <nz-collapse-panel nzHeader=\"基本设置\" nzActive>\n <nz-form-item>\n <nz-form-label nzSpan=\"8\" nzRequired>\n 域名称\n </nz-form-label>\n <nz-form-control nzSpan=\"16\">\n <input nz-input formControlName=\"scopeName\" />\n </nz-form-control>\n </nz-form-item>\n </nz-collapse-panel>\n <axis-design-scope-setting-datasource-editor [scopeId]=\"value().id\"\n formControlName=\"dataSources\"></axis-design-scope-setting-datasource-editor>\n <axis-base-design-setting [fg]=\"fg\" [exclude]=\"excludeDs()\" [scopeId]=\"value().id\"></axis-base-design-setting>\n <axis-input-trigger formControlName=\"triggeEvents\"\n [eventDesc]=\"[{name:'dataChange',title:'数据变化',noListen:false}]\"></axis-input-trigger>\n </nz-collapse>\n</form>","import { NextInfo, DesignBuildResult, DesignBindElementsResult, DesignConfig, OptionsNode, nameCode, SimpleMenu } from \"ngx-axis-appforge/core\";\nimport { Setting } from \"./setting/setting\";\n\nexport const Config: DesignConfig = {\n\n componentName: \"组件域\",\n buildOptionsNodes(nextInfo: NextInfo): DesignBuildResult {\n const ds: any = {};\n for (const d of nextInfo.currentObject.dataSources ?? []) {\n if (d.type == \"local\" && d.data) {\n ds[d.name] = d.data;\n } else {\n ds[d.name] = \"示例数据\";\n }\n }\n return {\n treeNode: new OptionsNode({\n parentId: nextInfo.parentId,\n scopeId: nextInfo.currentObject.id,\n name: nameCode(\"组件域\", nextInfo.currentObject.scopeName),\n canSetting: true,\n canDrag: true,\n dragType: \"component\",\n canDrop: true,\n dropType: \"component\",\n dropObj: nextInfo.currentObject,\n defaultDropIndex: \"child\",\n parentObj: nextInfo.parentObject,\n indexOfParentObj: nextInfo.indexOfParent,\n rootOptions: nextInfo.currentObject,\n children: [],\n contextMenu: SimpleMenu,\n settingType: Setting,\n icon: \"group\"\n }),\n next: [\n {\n parentObject: nextInfo.currentObject,\n indexOfParent: \"child\",\n parentId: nextInfo.currentObject.id,\n scopeId: nextInfo.currentObject.id\n }\n ],\n newScopes: [\n {\n scopeId: nextInfo.currentObject.id,\n scopeName: nextInfo.currentObject.scopeName,\n parentScopeId: nextInfo.scopeId,\n ds: ds\n }\n ]\n };\n },\n bindElementsOptionsNode(element: HTMLElement, options: any): DesignBindElementsResult {\n return {\n [options.id]: { element, dropElement: element }\n }\n },\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './config';\n"],"names":["i1","i3","i5"],"mappings":"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"}
@@ -1,55 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { signal, effect, ViewChild, Component } from '@angular/core';
3
- import { BaseOptions, Base, ScopeDirective, DynamicDirective } from 'ngx-axis-appforge/core';
4
-
5
- class ScopeOptions extends BaseOptions {
6
- scopeName = signal("未命名", ...(ngDevMode ? [{ debugName: "scopeName" }] : []));
7
- dataSources = signal([], ...(ngDevMode ? [{ debugName: "dataSources" }] : []));
8
- child = signal(undefined, ...(ngDevMode ? [{ debugName: "child" }] : []));
9
- }
10
-
11
- class Scope extends Base {
12
- constructor() {
13
- super();
14
- effect(() => this.listenDataChange());
15
- }
16
- options = new ScopeOptions();
17
- childScope;
18
- triggeEvents(trigger, tempDataSource, triggeEvents, scope) {
19
- return super.triggeEvents(trigger, tempDataSource, triggeEvents, scope ?? this.childScope);
20
- }
21
- triggeEvent(e, scope) {
22
- return super.triggeEvent(e, scope ?? this.childScope);
23
- }
24
- listenDataChange() {
25
- this.unsubscribe(["dataChange"]);
26
- const dataChangeHandlers = this.options.triggeEvents()?.["dataChange"];
27
- if (dataChangeHandlers) {
28
- for (const handler of dataChangeHandlers) {
29
- const io = this.childScope.dynamicOptions(handler, true);
30
- if (io.init) {
31
- this.triggeEvents("dataChange", undefined, { dataChange: [handler] }).subscribe();
32
- }
33
- if (io.obs) {
34
- this.addSubscribe(io.obs.subscribe(_ => this.triggeEvents("dataChange", undefined, { dataChange: [handler] }).subscribe()), "dataChange");
35
- }
36
- }
37
- }
38
- }
39
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.2", ngImport: i0, type: Scope, deps: [], target: i0.ɵɵFactoryTarget.Component });
40
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.1.2", type: Scope, isStandalone: true, selector: "axis-scope", viewQueries: [{ propertyName: "childScope", first: true, predicate: ScopeDirective, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-container [axisScope]=\"options.id\" [scopeName]=\"options.scopeName()\" [isRoot]=\"true\"\n [dataSources]=\"options.dataSources()\">\n <ng-container [axisDynamic]=\"options.child()\"></ng-container>\n</ng-container>", styles: [":host{display:block;width:100%;height:100%;position:relative}\n"], dependencies: [{ kind: "directive", type: ScopeDirective, selector: "[axisScope]", inputs: ["axisScope", "scopeName", "isRoot", "dataSources"] }, { kind: "directive", type: DynamicDirective, selector: "[axisDynamic]", inputs: ["axisDynamic", "standalone", "isDesign"], exportAs: ["axisDynamic"] }] });
41
- }
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.2", ngImport: i0, type: Scope, decorators: [{
43
- type: Component,
44
- args: [{ selector: 'axis-scope', imports: [ScopeDirective, DynamicDirective], template: "<ng-container [axisScope]=\"options.id\" [scopeName]=\"options.scopeName()\" [isRoot]=\"true\"\n [dataSources]=\"options.dataSources()\">\n <ng-container [axisDynamic]=\"options.child()\"></ng-container>\n</ng-container>", styles: [":host{display:block;width:100%;height:100%;position:relative}\n"] }]
45
- }], ctorParameters: () => [], propDecorators: { childScope: [{
46
- type: ViewChild,
47
- args: [ScopeDirective, { static: true }]
48
- }] } });
49
-
50
- /**
51
- * Generated bundle index. Do not edit.
52
- */
53
-
54
- export { Scope };
55
- //# sourceMappingURL=ngx-axis-appforge-axis-components-scope.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ngx-axis-appforge-axis-components-scope.mjs","sources":["../../../axis-components/scope/scope.options.ts","../../../axis-components/scope/scope.ts","../../../axis-components/scope/scope.html","../../../axis-components/scope/ngx-axis-appforge-axis-components-scope.ts"],"sourcesContent":["import { signal } from \"@angular/core\";\nimport { BaseOptions, DataSourceOptions } from \"ngx-axis-appforge/core\";\n\nexport class ScopeOptions extends BaseOptions {\n readonly scopeName = signal(\"未命名\");\n readonly dataSources = signal<DataSourceOptions[]>([]);\n readonly child = signal<any>(undefined);\n}","import { Component, effect, OnInit, ViewChild } from '@angular/core';\nimport { ScopeOptions } from './scope.options';\nimport { ScopeDirective, DynamicDirective, Base, EventHandlerOptions } from 'ngx-axis-appforge/core';\nimport { Observable } from 'rxjs';\n\n@Component({\n selector: 'axis-scope',\n imports: [ScopeDirective, DynamicDirective],\n templateUrl: './scope.html',\n styleUrl: './scope.css',\n})\nexport class Scope extends Base<ScopeOptions> {\n\n constructor() {\n super();\n effect(() => this.listenDataChange());\n }\n\n protected override options: ScopeOptions = new ScopeOptions();\n\n @ViewChild(ScopeDirective, { static: true })\n childScope!: ScopeDirective;\n\n override triggeEvents(trigger: string, tempDataSource?: any, triggeEvents?: { [trigger: string]: EventHandlerOptions<any>[]; }, scope?: ScopeDirective): Observable<boolean> {\n return super.triggeEvents(trigger, tempDataSource, triggeEvents, scope ?? this.childScope);\n }\n\n override triggeEvent(e: EventHandlerOptions<unknown>, scope?: ScopeDirective): Observable<boolean> {\n return super.triggeEvent(e, scope ?? this.childScope);\n }\n\n listenDataChange(): void {\n this.unsubscribe([\"dataChange\"]);\n const dataChangeHandlers = this.options.triggeEvents()?.[\"dataChange\"];\n if (dataChangeHandlers) {\n for (const handler of dataChangeHandlers) {\n const io = this.childScope.dynamicOptions(handler, true);\n if (io.init) {\n this.triggeEvents(\"dataChange\", undefined, { dataChange: [handler] }).subscribe();\n }\n if (io.obs) {\n this.addSubscribe(io.obs.subscribe(_ => this.triggeEvents(\"dataChange\", undefined, { dataChange: [handler] }).subscribe()), \"dataChange\");\n }\n }\n }\n }\n\n}\n","<ng-container [axisScope]=\"options.id\" [scopeName]=\"options.scopeName()\" [isRoot]=\"true\"\n [dataSources]=\"options.dataSources()\">\n <ng-container [axisDynamic]=\"options.child()\"></ng-container>\n</ng-container>","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './scope';\n"],"names":[],"mappings":"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"}