@dignite-ng/expand.cms 0.0.32 → 0.0.33

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 (361) hide show
  1. package/config/ng-package.json +7 -0
  2. package/config/src/cms-config.module.ts +12 -0
  3. package/config/{enums/index.d.ts → src/enums/index.ts} +1 -1
  4. package/config/src/enums/route-names.ts +8 -0
  5. package/config/{providers/index.d.ts → src/providers/index.ts} +1 -1
  6. package/config/src/providers/route.provider.ts +82 -0
  7. package/config/{public-api.d.ts → src/public-api.ts} +3 -3
  8. package/ng-package.json +7 -0
  9. package/package.json +6 -21
  10. package/src/lib/cms-routing.module.ts +108 -0
  11. package/src/lib/cms.module.ts +108 -0
  12. package/src/lib/components/admin/domains/domains.component.html +19 -0
  13. package/src/lib/components/admin/domains/domains.component.scss +0 -0
  14. package/src/lib/components/admin/domains/domains.component.spec.ts +21 -0
  15. package/src/lib/components/admin/domains/domains.component.ts +99 -0
  16. package/src/lib/components/admin/domains/index.ts +1 -0
  17. package/src/lib/components/admin/entries/create-or-edit-entries.component.html +113 -0
  18. package/src/lib/components/admin/entries/create-or-edit-entries.component.scss +1 -0
  19. package/src/lib/components/admin/entries/create-or-edit-entries.component.spec.ts +21 -0
  20. package/src/lib/components/admin/entries/create-or-edit-entries.component.ts +284 -0
  21. package/src/lib/components/admin/entries/create-or-update-entry-input-base.ts +33 -0
  22. package/src/lib/components/admin/entries/create.component.html +13 -0
  23. package/src/lib/components/admin/entries/create.component.scss +1 -0
  24. package/src/lib/components/admin/entries/create.component.spec.ts +21 -0
  25. package/src/lib/components/admin/entries/create.component.ts +104 -0
  26. package/src/lib/components/admin/entries/edit.component.html +9 -0
  27. package/src/lib/components/admin/entries/edit.component.scss +1 -0
  28. package/src/lib/components/admin/entries/edit.component.spec.ts +21 -0
  29. package/src/lib/components/admin/entries/edit.component.ts +98 -0
  30. package/src/lib/components/admin/entries/entries.component.html +112 -0
  31. package/src/lib/components/admin/entries/entries.component.scss +1 -0
  32. package/src/lib/components/admin/entries/entries.component.spec.ts +21 -0
  33. package/src/lib/components/admin/entries/entries.component.ts +219 -0
  34. package/src/lib/components/admin/entries/index.ts +4 -0
  35. package/src/lib/components/admin/fields/create-field.component.html +12 -0
  36. package/src/lib/components/admin/fields/create-field.component.scss +1 -0
  37. package/src/lib/components/admin/fields/create-field.component.spec.ts +21 -0
  38. package/src/lib/components/admin/fields/create-field.component.ts +68 -0
  39. package/src/lib/components/admin/fields/create-or-edit-field.component.html +39 -0
  40. package/src/lib/components/admin/fields/create-or-edit-field.component.scss +0 -0
  41. package/src/lib/components/admin/fields/create-or-edit-field.component.spec.ts +21 -0
  42. package/src/lib/components/admin/fields/create-or-edit-field.component.ts +116 -0
  43. package/src/lib/components/admin/fields/create-or-update-field-input-base.ts +33 -0
  44. package/src/lib/components/admin/fields/edit-field.component.html +13 -0
  45. package/src/lib/components/admin/fields/edit-field.component.scss +0 -0
  46. package/src/lib/components/admin/fields/edit-field.component.spec.ts +21 -0
  47. package/src/lib/components/admin/fields/edit-field.component.ts +100 -0
  48. package/src/lib/components/admin/fields/field-group.component.html +69 -0
  49. package/src/lib/components/admin/fields/field-group.component.scss +0 -0
  50. package/src/lib/components/admin/fields/field-group.component.spec.ts +21 -0
  51. package/src/lib/components/admin/fields/field-group.component.ts +132 -0
  52. package/src/lib/components/admin/fields/fields.component.html +74 -0
  53. package/src/lib/components/admin/fields/fields.component.scss +1 -0
  54. package/src/lib/components/admin/fields/fields.component.spec.ts +21 -0
  55. package/src/lib/components/admin/fields/fields.component.ts +111 -0
  56. package/src/lib/components/admin/fields/index.ts +6 -0
  57. package/src/lib/components/admin/index.ts +5 -0
  58. package/src/lib/components/admin/sections/create-or-update-sections-input-base.ts +36 -0
  59. package/src/lib/components/admin/sections/entry-types/create-or-edit.-entry-type-input-base.ts +79 -0
  60. package/src/lib/components/admin/sections/entry-types/create-or-edit.component.html +191 -0
  61. package/src/lib/components/admin/sections/entry-types/create-or-edit.component.scss +1 -0
  62. package/src/lib/components/admin/sections/entry-types/create-or-edit.component.spec.ts +21 -0
  63. package/src/lib/components/admin/sections/entry-types/create-or-edit.component.ts +408 -0
  64. package/src/lib/components/admin/sections/entry-types/index.ts +2 -0
  65. package/src/lib/components/admin/sections/index.ts +3 -0
  66. package/src/lib/components/admin/sections/sections.component.html +190 -0
  67. package/src/lib/components/admin/sections/sections.component.scss +1 -0
  68. package/src/lib/components/admin/sections/sections.component.spec.ts +21 -0
  69. package/src/lib/components/admin/sections/sections.component.ts +370 -0
  70. package/src/lib/components/admin/sites/create-or-update-sites-input-base.ts +18 -0
  71. package/src/lib/components/admin/sites/index.ts +2 -0
  72. package/src/lib/components/admin/sites/sites.component.html +136 -0
  73. package/src/lib/components/admin/sites/sites.component.scss +1 -0
  74. package/src/lib/components/admin/sites/sites.component.spec.ts +21 -0
  75. package/src/lib/components/admin/sites/sites.component.ts +250 -0
  76. package/src/lib/components/dynamic-form/entry/entry-config.component.html +36 -0
  77. package/src/lib/components/dynamic-form/entry/entry-config.component.scss +0 -0
  78. package/src/lib/components/dynamic-form/entry/entry-config.component.spec.ts +21 -0
  79. package/src/lib/components/dynamic-form/entry/entry-config.component.ts +115 -0
  80. package/src/lib/components/dynamic-form/entry/entry-config.ts +24 -0
  81. package/src/lib/components/dynamic-form/entry/entry-control.component.html +26 -0
  82. package/src/lib/components/dynamic-form/entry/entry-control.component.scss +1 -0
  83. package/src/lib/components/dynamic-form/entry/entry-control.component.spec.ts +21 -0
  84. package/src/lib/components/dynamic-form/entry/entry-control.component.ts +109 -0
  85. package/src/lib/components/dynamic-form/entry/index.ts +3 -0
  86. package/src/lib/components/dynamic-form/form-control-group.ts +27 -0
  87. package/src/lib/components/dynamic-form/index.ts +4 -0
  88. package/src/lib/components/dynamic-form/matrix/index.ts +3 -0
  89. package/src/lib/components/dynamic-form/matrix/matrix-config.component.html +147 -0
  90. package/src/lib/components/dynamic-form/matrix/matrix-config.component.scss +0 -0
  91. package/src/lib/components/dynamic-form/matrix/matrix-config.component.spec.ts +21 -0
  92. package/src/lib/components/dynamic-form/matrix/matrix-config.component.ts +236 -0
  93. package/src/lib/components/dynamic-form/matrix/matrix-config.ts +63 -0
  94. package/src/lib/components/dynamic-form/matrix/matrix-control.component.html +42 -0
  95. package/src/lib/components/dynamic-form/matrix/matrix-control.component.scss +0 -0
  96. package/src/lib/components/dynamic-form/matrix/matrix-control.component.spec.ts +21 -0
  97. package/src/lib/components/dynamic-form/matrix/matrix-control.component.ts +104 -0
  98. package/src/lib/components/dynamic-form/table/index.ts +3 -0
  99. package/src/lib/components/dynamic-form/table/table-config.component.html +85 -0
  100. package/src/lib/components/dynamic-form/table/table-config.component.scss +10 -0
  101. package/src/lib/components/dynamic-form/table/table-config.component.spec.ts +21 -0
  102. package/src/lib/components/dynamic-form/table/table-config.component.ts +170 -0
  103. package/src/lib/components/dynamic-form/table/table-config.ts +45 -0
  104. package/src/lib/components/dynamic-form/table/table-control.component.html +54 -0
  105. package/src/lib/components/dynamic-form/table/table-control.component.scss +1 -0
  106. package/src/lib/components/dynamic-form/table/table-control.component.spec.ts +21 -0
  107. package/src/lib/components/dynamic-form/table/table-control.component.ts +115 -0
  108. package/src/lib/components/index.ts +2 -0
  109. package/src/lib/constants/index.ts +1 -0
  110. package/src/lib/constants/styles.ts +13 -0
  111. package/src/lib/enums/ecms-component.ts +11 -0
  112. package/src/lib/enums/index.ts +1 -0
  113. package/src/lib/proxy/README.md +17 -0
  114. package/src/lib/proxy/admin/domains/domain-admin.service.ts +38 -0
  115. package/{lib/proxy/admin/domains/models.d.ts → src/lib/proxy/admin/domains/models.ts} +9 -7
  116. package/src/lib/proxy/admin/dynamic-forms/form-admin.service.ts +21 -0
  117. package/src/lib/proxy/admin/dynamic-forms/models.ts +5 -0
  118. package/src/lib/proxy/admin/entries/entry-admin.service.ts +109 -0
  119. package/src/lib/proxy/admin/entries/models.ts +68 -0
  120. package/src/lib/proxy/admin/fields/field-admin.service.ts +64 -0
  121. package/src/lib/proxy/admin/fields/field-group-admin.service.ts +56 -0
  122. package/{lib/proxy/admin/fields/models.d.ts → src/lib/proxy/admin/fields/models.ts} +42 -34
  123. package/src/lib/proxy/admin/index.ts +7 -0
  124. package/src/lib/proxy/admin/sections/entry-type-admin.service.ts +55 -0
  125. package/{lib/proxy/admin/sections/models.d.ts → src/lib/proxy/admin/sections/models.ts} +81 -67
  126. package/src/lib/proxy/admin/sections/section-admin.service.ts +74 -0
  127. package/src/lib/proxy/admin/settings/site-settings-admin.service.ts +37 -0
  128. package/src/lib/proxy/dignite/abp/data/index.ts +1 -0
  129. package/src/lib/proxy/dignite/abp/data/models.ts +4 -0
  130. package/src/lib/proxy/dignite/abp/index.ts +2 -0
  131. package/src/lib/proxy/dignite/file-explorer/directories/file-descriptor.service.ts +65 -0
  132. package/src/lib/proxy/dignite/file-explorer/directories/index.ts +2 -0
  133. package/src/lib/proxy/dignite/file-explorer/directories/models.ts +35 -0
  134. package/src/lib/proxy/dignite/file-explorer/files/file-descriptor.service.ts +86 -0
  135. package/src/lib/proxy/dignite/file-explorer/files/index.ts +2 -0
  136. package/src/lib/proxy/dignite/file-explorer/files/models.ts +58 -0
  137. package/src/lib/proxy/dignite/file-explorer/index.ts +3 -0
  138. package/src/lib/proxy/dignite/index.ts +3 -0
  139. package/src/lib/proxy/entries/entry-status.enum.ts +8 -0
  140. package/src/lib/proxy/fields/index.ts +1 -0
  141. package/src/lib/proxy/fields/models.ts +9 -0
  142. package/src/lib/proxy/generate-proxy.json +11425 -0
  143. package/src/lib/proxy/index.ts +9 -0
  144. package/src/lib/proxy/microsoft/asp-net-core/index.ts +2 -0
  145. package/src/lib/proxy/microsoft/asp-net-core/mvc/index.ts +1 -0
  146. package/src/lib/proxy/microsoft/asp-net-core/mvc/models.ts +12 -0
  147. package/src/lib/proxy/microsoft/extensions/index.ts +2 -0
  148. package/src/lib/proxy/microsoft/extensions/primitives/index.ts +1 -0
  149. package/src/lib/proxy/microsoft/extensions/primitives/models.ts +9 -0
  150. package/src/lib/proxy/microsoft/index.ts +4 -0
  151. package/src/lib/proxy/microsoft/net/http/headers/index.ts +1 -0
  152. package/src/lib/proxy/microsoft/net/http/headers/models.ts +7 -0
  153. package/src/lib/proxy/microsoft/net/http/index.ts +2 -0
  154. package/src/lib/proxy/microsoft/net/index.ts +2 -0
  155. package/src/lib/proxy/sections/models.ts +14 -0
  156. package/src/lib/proxy/sections/section-type.enum.ts +9 -0
  157. package/src/lib/proxy/settings/index.ts +1 -0
  158. package/src/lib/proxy/settings/models.ts +6 -0
  159. package/src/lib/proxy/volo/abp/content/index.ts +1 -0
  160. package/src/lib/proxy/volo/abp/content/models.ts +6 -0
  161. package/src/lib/proxy/volo/abp/index.ts +2 -0
  162. package/src/lib/proxy/volo/cms-kit/index.ts +2 -0
  163. package/src/lib/proxy/volo/cms-kit/users/index.ts +1 -0
  164. package/{lib/proxy/volo/cms-kit/users/models.d.ts → src/lib/proxy/volo/cms-kit/users/models.ts} +8 -7
  165. package/src/lib/proxy/volo/index.ts +3 -0
  166. package/src/lib/proxy.zip +0 -0
  167. package/src/lib/services/appent-content.ts +13 -0
  168. package/src/lib/services/cms-api.service.ts +71 -0
  169. package/src/lib/services/cms.service.ts +18 -0
  170. package/src/lib/services/field-abstracts.service.ts +40 -0
  171. package/src/lib/services/index.ts +4 -0
  172. package/src/lib/services/simple-reuse-strategy.ts +49 -0
  173. package/src/lib/services/update-list.service.ts +15 -0
  174. package/src/lib/toolbar/index.ts +2 -0
  175. package/src/lib/toolbar/toolbar-btn-default-action.ts +171 -0
  176. package/src/lib/toolbar/toolbar-config.ts +93 -0
  177. package/{public-api.d.ts → src/public-api.ts} +10 -4
  178. package/src/test.ts +26 -0
  179. package/tsconfig.lib.json +34 -0
  180. package/tsconfig.lib.prod.json +10 -0
  181. package/tsconfig.spec.json +17 -0
  182. package/config/cms-config.module.d.ts +0 -8
  183. package/config/enums/route-names.d.ts +0 -7
  184. package/config/index.d.ts +0 -5
  185. package/config/providers/route.provider.d.ts +0 -9
  186. package/esm2022/config/cms-config.module.mjs +0 -19
  187. package/esm2022/config/dignite-ng-expand.cms-config.mjs +0 -5
  188. package/esm2022/config/enums/index.mjs +0 -2
  189. package/esm2022/config/enums/route-names.mjs +0 -2
  190. package/esm2022/config/providers/index.mjs +0 -2
  191. package/esm2022/config/providers/route.provider.mjs +0 -78
  192. package/esm2022/config/public-api.mjs +0 -4
  193. package/esm2022/dignite-ng-expand.cms.mjs +0 -5
  194. package/esm2022/lib/cms-routing.module.mjs +0 -100
  195. package/esm2022/lib/cms.module.mjs +0 -132
  196. package/esm2022/lib/components/admin/domains/domains.component.mjs +0 -90
  197. package/esm2022/lib/components/admin/domains/index.mjs +0 -2
  198. package/esm2022/lib/components/admin/entries/create-or-edit-entries.component.mjs +0 -286
  199. package/esm2022/lib/components/admin/entries/create-or-update-entry-input-base.mjs +0 -32
  200. package/esm2022/lib/components/admin/entries/create.component.mjs +0 -108
  201. package/esm2022/lib/components/admin/entries/edit.component.mjs +0 -107
  202. package/esm2022/lib/components/admin/entries/entries.component.mjs +0 -211
  203. package/esm2022/lib/components/admin/entries/index.mjs +0 -5
  204. package/esm2022/lib/components/admin/fields/create-field.component.mjs +0 -82
  205. package/esm2022/lib/components/admin/fields/create-or-edit-field.component.mjs +0 -119
  206. package/esm2022/lib/components/admin/fields/create-or-update-field-input-base.mjs +0 -25
  207. package/esm2022/lib/components/admin/fields/edit-field.component.mjs +0 -110
  208. package/esm2022/lib/components/admin/fields/field-group.component.mjs +0 -124
  209. package/esm2022/lib/components/admin/fields/fields.component.mjs +0 -119
  210. package/esm2022/lib/components/admin/fields/index.mjs +0 -7
  211. package/esm2022/lib/components/admin/index.mjs +0 -6
  212. package/esm2022/lib/components/admin/sections/create-or-update-sections-input-base.mjs +0 -27
  213. package/esm2022/lib/components/admin/sections/entry-types/create-or-edit.-entry-type-input-base.mjs +0 -71
  214. package/esm2022/lib/components/admin/sections/entry-types/create-or-edit.component.mjs +0 -416
  215. package/esm2022/lib/components/admin/sections/entry-types/index.mjs +0 -3
  216. package/esm2022/lib/components/admin/sections/index.mjs +0 -4
  217. package/esm2022/lib/components/admin/sections/sections.component.mjs +0 -344
  218. package/esm2022/lib/components/admin/sites/create-or-update-sites-input-base.mjs +0 -18
  219. package/esm2022/lib/components/admin/sites/index.mjs +0 -3
  220. package/esm2022/lib/components/admin/sites/sites.component.mjs +0 -29
  221. package/esm2022/lib/components/dynamic-form/entry/entry-config.component.mjs +0 -124
  222. package/esm2022/lib/components/dynamic-form/entry/entry-config.mjs +0 -18
  223. package/esm2022/lib/components/dynamic-form/entry/entry-control.component.mjs +0 -115
  224. package/esm2022/lib/components/dynamic-form/entry/index.mjs +0 -4
  225. package/esm2022/lib/components/dynamic-form/form-control-group.mjs +0 -28
  226. package/esm2022/lib/components/dynamic-form/index.mjs +0 -5
  227. package/esm2022/lib/components/dynamic-form/matrix/index.mjs +0 -4
  228. package/esm2022/lib/components/dynamic-form/matrix/matrix-config.component.mjs +0 -227
  229. package/esm2022/lib/components/dynamic-form/matrix/matrix-config.mjs +0 -50
  230. package/esm2022/lib/components/dynamic-form/matrix/matrix-control.component.mjs +0 -111
  231. package/esm2022/lib/components/dynamic-form/table/index.mjs +0 -4
  232. package/esm2022/lib/components/dynamic-form/table/table-config.component.mjs +0 -173
  233. package/esm2022/lib/components/dynamic-form/table/table-config.mjs +0 -38
  234. package/esm2022/lib/components/dynamic-form/table/table-control.component.mjs +0 -121
  235. package/esm2022/lib/components/index.mjs +0 -3
  236. package/esm2022/lib/constants/styles.mjs +0 -14
  237. package/esm2022/lib/enums/ecms-component.mjs +0 -13
  238. package/esm2022/lib/enums/index.mjs +0 -2
  239. package/esm2022/lib/proxy/admin/domains/domain-admin.service.mjs +0 -34
  240. package/esm2022/lib/proxy/admin/domains/index.mjs +0 -3
  241. package/esm2022/lib/proxy/admin/domains/models.mjs +0 -2
  242. package/esm2022/lib/proxy/admin/dynamic-forms/form-admin.service.mjs +0 -24
  243. package/esm2022/lib/proxy/admin/dynamic-forms/index.mjs +0 -3
  244. package/esm2022/lib/proxy/admin/dynamic-forms/models.mjs +0 -2
  245. package/esm2022/lib/proxy/admin/entries/entry-admin.service.mjs +0 -72
  246. package/esm2022/lib/proxy/admin/entries/index.mjs +0 -3
  247. package/esm2022/lib/proxy/admin/entries/models.mjs +0 -2
  248. package/esm2022/lib/proxy/admin/fields/field-admin.service.mjs +0 -47
  249. package/esm2022/lib/proxy/admin/fields/field-group-admin.service.mjs +0 -43
  250. package/esm2022/lib/proxy/admin/fields/index.mjs +0 -4
  251. package/esm2022/lib/proxy/admin/fields/models.mjs +0 -2
  252. package/esm2022/lib/proxy/admin/sections/entry-type-admin.service.mjs +0 -43
  253. package/esm2022/lib/proxy/admin/sections/index.mjs +0 -4
  254. package/esm2022/lib/proxy/admin/sections/models.mjs +0 -2
  255. package/esm2022/lib/proxy/admin/sections/section-admin.service.mjs +0 -53
  256. package/esm2022/lib/proxy/admin/settings/index.mjs +0 -2
  257. package/esm2022/lib/proxy/admin/settings/site-settings-admin.service.mjs +0 -33
  258. package/esm2022/lib/proxy/dignite/abp/data/models.mjs +0 -2
  259. package/esm2022/lib/proxy/entries/entry-status.enum.mjs +0 -8
  260. package/esm2022/lib/proxy/entries/index.mjs +0 -2
  261. package/esm2022/lib/proxy/fields/models.mjs +0 -2
  262. package/esm2022/lib/proxy/sections/index.mjs +0 -3
  263. package/esm2022/lib/proxy/sections/models.mjs +0 -2
  264. package/esm2022/lib/proxy/sections/section-type.enum.mjs +0 -9
  265. package/esm2022/lib/proxy/settings/models.mjs +0 -2
  266. package/esm2022/lib/proxy/volo/cms-kit/users/models.mjs +0 -2
  267. package/esm2022/lib/services/appent-content.mjs +0 -15
  268. package/esm2022/lib/services/cms-api.service.mjs +0 -80
  269. package/esm2022/lib/services/cms.service.mjs +0 -23
  270. package/esm2022/lib/services/field-abstracts.service.mjs +0 -45
  271. package/esm2022/lib/services/index.mjs +0 -5
  272. package/esm2022/lib/services/simple-reuse-strategy.mjs +0 -43
  273. package/esm2022/lib/services/update-list.service.mjs +0 -19
  274. package/esm2022/lib/toolbar/index.mjs +0 -3
  275. package/esm2022/lib/toolbar/toolbar-btn-default-action.mjs +0 -160
  276. package/esm2022/lib/toolbar/toolbar-config.mjs +0 -79
  277. package/esm2022/public-api.mjs +0 -10
  278. package/fesm2022/dignite-ng-expand.cms-config.mjs +0 -101
  279. package/fesm2022/dignite-ng-expand.cms-config.mjs.map +0 -1
  280. package/fesm2022/dignite-ng-expand.cms.mjs +0 -4079
  281. package/fesm2022/dignite-ng-expand.cms.mjs.map +0 -1
  282. package/index.d.ts +0 -5
  283. package/lib/cms-routing.module.d.ts +0 -7
  284. package/lib/cms.module.d.ts +0 -35
  285. package/lib/components/admin/domains/domains.component.d.ts +0 -21
  286. package/lib/components/admin/domains/index.d.ts +0 -1
  287. package/lib/components/admin/entries/create-or-edit-entries.component.d.ts +0 -92
  288. package/lib/components/admin/entries/create-or-update-entry-input-base.d.ts +0 -23
  289. package/lib/components/admin/entries/create.component.d.ts +0 -40
  290. package/lib/components/admin/entries/edit.component.d.ts +0 -40
  291. package/lib/components/admin/entries/entries.component.d.ts +0 -66
  292. package/lib/components/admin/entries/index.d.ts +0 -4
  293. package/lib/components/admin/fields/create-field.component.d.ts +0 -31
  294. package/lib/components/admin/fields/create-or-edit-field.component.d.ts +0 -36
  295. package/lib/components/admin/fields/create-or-update-field-input-base.d.ts +0 -16
  296. package/lib/components/admin/fields/edit-field.component.d.ts +0 -40
  297. package/lib/components/admin/fields/field-group.component.d.ts +0 -51
  298. package/lib/components/admin/fields/fields.component.d.ts +0 -37
  299. package/lib/components/admin/fields/index.d.ts +0 -6
  300. package/lib/components/admin/index.d.ts +0 -5
  301. package/lib/components/admin/sections/create-or-update-sections-input-base.d.ts +0 -17
  302. package/lib/components/admin/sections/entry-types/create-or-edit.-entry-type-input-base.d.ts +0 -38
  303. package/lib/components/admin/sections/entry-types/create-or-edit.component.d.ts +0 -132
  304. package/lib/components/admin/sections/entry-types/index.d.ts +0 -2
  305. package/lib/components/admin/sections/index.d.ts +0 -3
  306. package/lib/components/admin/sections/sections.component.d.ts +0 -90
  307. package/lib/components/admin/sites/create-or-update-sites-input-base.d.ts +0 -8
  308. package/lib/components/admin/sites/index.d.ts +0 -2
  309. package/lib/components/admin/sites/sites.component.d.ts +0 -5
  310. package/lib/components/dynamic-form/entry/entry-config.component.d.ts +0 -39
  311. package/lib/components/dynamic-form/entry/entry-config.d.ts +0 -9
  312. package/lib/components/dynamic-form/entry/entry-control.component.d.ts +0 -35
  313. package/lib/components/dynamic-form/entry/index.d.ts +0 -3
  314. package/lib/components/dynamic-form/form-control-group.d.ts +0 -4
  315. package/lib/components/dynamic-form/index.d.ts +0 -4
  316. package/lib/components/dynamic-form/matrix/index.d.ts +0 -3
  317. package/lib/components/dynamic-form/matrix/matrix-config.component.d.ts +0 -73
  318. package/lib/components/dynamic-form/matrix/matrix-config.d.ts +0 -24
  319. package/lib/components/dynamic-form/matrix/matrix-control.component.d.ts +0 -39
  320. package/lib/components/dynamic-form/table/index.d.ts +0 -3
  321. package/lib/components/dynamic-form/table/table-config.component.d.ts +0 -58
  322. package/lib/components/dynamic-form/table/table-config.d.ts +0 -18
  323. package/lib/components/dynamic-form/table/table-control.component.d.ts +0 -39
  324. package/lib/components/index.d.ts +0 -2
  325. package/lib/constants/styles.d.ts +0 -2
  326. package/lib/enums/ecms-component.d.ts +0 -11
  327. package/lib/enums/index.d.ts +0 -1
  328. package/lib/proxy/admin/domains/domain-admin.service.d.ts +0 -13
  329. package/lib/proxy/admin/dynamic-forms/form-admin.service.d.ts +0 -12
  330. package/lib/proxy/admin/dynamic-forms/models.d.ts +0 -4
  331. package/lib/proxy/admin/entries/entry-admin.service.d.ts +0 -22
  332. package/lib/proxy/admin/entries/models.d.ts +0 -60
  333. package/lib/proxy/admin/fields/field-admin.service.d.ts +0 -17
  334. package/lib/proxy/admin/fields/field-group-admin.service.d.ts +0 -16
  335. package/lib/proxy/admin/sections/entry-type-admin.service.d.ts +0 -15
  336. package/lib/proxy/admin/sections/section-admin.service.d.ts +0 -18
  337. package/lib/proxy/admin/settings/site-settings-admin.service.d.ts +0 -13
  338. package/lib/proxy/dignite/abp/data/models.d.ts +0 -3
  339. package/lib/proxy/entries/entry-status.enum.d.ts +0 -5
  340. package/lib/proxy/fields/models.d.ts +0 -8
  341. package/lib/proxy/sections/models.d.ts +0 -12
  342. package/lib/proxy/sections/section-type.enum.d.ts +0 -6
  343. package/lib/proxy/settings/models.d.ts +0 -5
  344. package/lib/services/appent-content.d.ts +0 -1
  345. package/lib/services/cms-api.service.d.ts +0 -20
  346. package/lib/services/cms.service.d.ts +0 -10
  347. package/lib/services/field-abstracts.service.d.ts +0 -20
  348. package/lib/services/index.d.ts +0 -4
  349. package/lib/services/simple-reuse-strategy.d.ts +0 -11
  350. package/lib/services/update-list.service.d.ts +0 -9
  351. package/lib/toolbar/index.d.ts +0 -2
  352. package/lib/toolbar/toolbar-btn-default-action.d.ts +0 -18
  353. package/lib/toolbar/toolbar-config.d.ts +0 -56
  354. /package/{lib/proxy/admin/domains/index.d.ts → src/lib/proxy/admin/domains/index.ts} +0 -0
  355. /package/{lib/proxy/admin/dynamic-forms/index.d.ts → src/lib/proxy/admin/dynamic-forms/index.ts} +0 -0
  356. /package/{lib/proxy/admin/entries/index.d.ts → src/lib/proxy/admin/entries/index.ts} +0 -0
  357. /package/{lib/proxy/admin/fields/index.d.ts → src/lib/proxy/admin/fields/index.ts} +0 -0
  358. /package/{lib/proxy/admin/sections/index.d.ts → src/lib/proxy/admin/sections/index.ts} +0 -0
  359. /package/{lib/proxy/admin/settings/index.d.ts → src/lib/proxy/admin/settings/index.ts} +0 -0
  360. /package/{lib/proxy/entries/index.d.ts → src/lib/proxy/entries/index.ts} +0 -0
  361. /package/{lib/proxy/sections/index.d.ts → src/lib/proxy/sections/index.ts} +0 -0
@@ -1,82 +0,0 @@
1
- import { Component, ViewChild, inject } from '@angular/core';
2
- import { CreateOrUpdateFieldInputBase } from './create-or-update-field-input-base';
3
- import { EXTENSIONS_IDENTIFIER } from '@abp/ng.theme.shared/extensions';
4
- import { ECmsComponent } from '../../../enums';
5
- import { UpdateListService } from '../../../services/update-list.service';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/forms";
8
- import * as i2 from "../../../proxy/admin/fields";
9
- import * as i3 from "@abp/ng.theme.shared";
10
- import * as i4 from "@angular/common";
11
- import * as i5 from "@abp/ng.core";
12
- import * as i6 from "../../../services";
13
- import * as i7 from "@angular/router";
14
- import * as i8 from "@ngx-validate/core";
15
- import * as i9 from "@abp/ng.components/page";
16
- import * as i10 from "./create-or-edit-field.component";
17
- class CreateFieldComponent {
18
- fb;
19
- _FieldAdminService;
20
- toaster;
21
- _location;
22
- _LocalizationService;
23
- _CmsApiService;
24
- router;
25
- constructor(fb, _FieldAdminService, toaster, _location, _LocalizationService, _CmsApiService, router) {
26
- this.fb = fb;
27
- this._FieldAdminService = _FieldAdminService;
28
- this.toaster = toaster;
29
- this._location = _location;
30
- this._LocalizationService = _LocalizationService;
31
- this._CmsApiService = _CmsApiService;
32
- this.router = router;
33
- }
34
- _UpdateListService = inject(UpdateListService);
35
- /**表单实体 */
36
- newEntity;
37
- /**获取提交按钮替身,用于真实触发表单提交 */
38
- submitclick;
39
- ngOnInit() {
40
- //Called after the constructor, initializing input properties, and the first call to ngOnChanges.
41
- //Add 'implements OnInit' to the class.
42
- this.newEntity = this.fb.group(new CreateOrUpdateFieldInputBase());
43
- }
44
- /**触发提交按钮 */
45
- submitclickBtn() {
46
- this.submitclick.nativeElement.click();
47
- }
48
- /**保存表单 */
49
- save() {
50
- let input = this.newEntity.value;
51
- if (!this.newEntity.valid)
52
- return;
53
- this._FieldAdminService.create(input).subscribe(res => {
54
- this.toaster.success(this._LocalizationService.instant(`CmsKit::SavedSuccessfully`));
55
- this.router.navigateByUrl('', { skipLocationChange: true }).then(() => {
56
- this.router.navigate([`/cms/admin/fields`]);
57
- this._UpdateListService.updateList();
58
- });
59
- });
60
- }
61
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateFieldComponent, deps: [{ token: i1.FormBuilder }, { token: i2.FieldAdminService }, { token: i3.ToasterService }, { token: i4.Location }, { token: i5.LocalizationService }, { token: i6.CmsApiService }, { token: i7.Router }], target: i0.ɵɵFactoryTarget.Component });
62
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CreateFieldComponent, selector: "cms-create-field", providers: [
63
- {
64
- provide: EXTENSIONS_IDENTIFIER,
65
- useValue: ECmsComponent.FieldsCreate,
66
- },
67
- ], viewQueries: [{ propertyName: "submitclick", first: true, predicate: ["submitclick"], descendants: true, static: true }], ngImport: i0, template: "<form class=\"row g-3 needs-validation\" [formGroup]=\"newEntity\" (ngSubmit)=\"save()\">\n <abp-page [title]=\"'Cms::CreateField' | abpLocalization\" [toolbar]=\"true\">\n <div class=\"create-field-page\">\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n <div class=\"card\">\n <div class=\"card-body\">\n <cms-create-or-edit-field [Entity]=\"newEntity\"></cms-create-or-edit-field>\n </div>\n </div>\n </div>\n </abp-page>\n</form>", styles: ["::ng-deep .create-field-page .dignite_page{height:calc(100vh - 125px);overflow:auto}::ng-deep .create-field-page .form-control,::ng-deep .create-field-page .form-select{padding:.475rem 1.25rem}\n"], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit", "markAsDirtyWhenSubmit"], outputs: ["ngSubmit"] }, { kind: "directive", type: i8.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "component", type: i9.PageComponent, selector: "abp-page", inputs: ["title", "toolbar", "breadcrumb"] }, { kind: "component", type: i10.CreateOrEditFieldComponent, selector: "cms-create-or-edit-field", inputs: ["Entity", "selected"] }, { kind: "pipe", type: i5.LocalizationPipe, name: "abpLocalization" }] });
68
- }
69
- export { CreateFieldComponent };
70
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateFieldComponent, decorators: [{
71
- type: Component,
72
- args: [{ selector: 'cms-create-field', providers: [
73
- {
74
- provide: EXTENSIONS_IDENTIFIER,
75
- useValue: ECmsComponent.FieldsCreate,
76
- },
77
- ], template: "<form class=\"row g-3 needs-validation\" [formGroup]=\"newEntity\" (ngSubmit)=\"save()\">\n <abp-page [title]=\"'Cms::CreateField' | abpLocalization\" [toolbar]=\"true\">\n <div class=\"create-field-page\">\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n <div class=\"card\">\n <div class=\"card-body\">\n <cms-create-or-edit-field [Entity]=\"newEntity\"></cms-create-or-edit-field>\n </div>\n </div>\n </div>\n </abp-page>\n</form>", styles: ["::ng-deep .create-field-page .dignite_page{height:calc(100vh - 125px);overflow:auto}::ng-deep .create-field-page .form-control,::ng-deep .create-field-page .form-select{padding:.475rem 1.25rem}\n"] }]
78
- }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.FieldAdminService }, { type: i3.ToasterService }, { type: i4.Location }, { type: i5.LocalizationService }, { type: i6.CmsApiService }, { type: i7.Router }]; }, propDecorators: { submitclick: [{
79
- type: ViewChild,
80
- args: ['submitclick', { static: true }]
81
- }] } });
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Ntcy9zcmMvbGliL2NvbXBvbmVudHMvYWRtaW4vZmllbGRzL2NyZWF0ZS1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbXMvc3JjL2xpYi9jb21wb25lbnRzL2FkbWluL2ZpZWxkcy9jcmVhdGUtZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBTW5GLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUcvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7Ozs7Ozs7Ozs7O0FBRTFFLE1BV2Esb0JBQW9CO0lBR3JCO0lBQ0Q7SUFDQztJQUNEO0lBQ0E7SUFDQTtJQUNDO0lBUFYsWUFDVSxFQUFlLEVBQ2hCLGtCQUFxQyxFQUNwQyxPQUF1QixFQUN4QixTQUFtQixFQUNuQixvQkFBeUMsRUFDekMsY0FBNkIsRUFDNUIsTUFBYztRQU5kLE9BQUUsR0FBRixFQUFFLENBQWE7UUFDaEIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUNwQyxZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUN4QixjQUFTLEdBQVQsU0FBUyxDQUFVO1FBQ25CLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBcUI7UUFDekMsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFDNUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQUVwQixDQUFDO0lBQ0csa0JBQWtCLEdBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUE7SUFFcEQsVUFBVTtJQUNWLFNBQVMsQ0FBdUI7SUFFaEMseUJBQXlCO0lBQ21CLFdBQVcsQ0FBYTtJQUVwRSxRQUFRO1FBQ04saUdBQWlHO1FBQ2pHLHVDQUF1QztRQUN2QyxJQUFJLENBQUMsU0FBUyxHQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksNEJBQTRCLEVBQUUsQ0FBQyxDQUFBO0lBQ25FLENBQUM7SUFFRCxZQUFZO0lBQ1osY0FBYztRQUNaLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFBO0lBQ3hDLENBQUM7SUFDRCxVQUFVO0lBQ1YsSUFBSTtRQUNGLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFBO1FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUs7WUFBRSxPQUFNO1FBQ2pDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3BELElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsMkJBQTJCLENBQUMsQ0FBQyxDQUFDO1lBQ3JGLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLEVBQUUsRUFBRSxFQUFFLGtCQUFrQixFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDcEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7Z0JBQzVDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN2QyxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQzt3R0F6Q1Usb0JBQW9COzRGQUFwQixvQkFBb0IsMkNBUHBCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLHFCQUFxQjtnQkFDOUIsUUFBUSxFQUFFLGFBQWEsQ0FBQyxZQUFZO2FBQ3JDO1NBQ0Ysb0pDdEJILG9qQkFXTzs7U0RhTSxvQkFBb0I7NEZBQXBCLG9CQUFvQjtrQkFYaEMsU0FBUzsrQkFDRSxrQkFBa0IsYUFHakI7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLHFCQUFxQjs0QkFDOUIsUUFBUSxFQUFFLGFBQWEsQ0FBQyxZQUFZO3lCQUNyQztxQkFDRjt5UUFvQjJDLFdBQVc7c0JBQXRELFNBQVM7dUJBQUMsYUFBYSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgVmlld0NoaWxkLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENyZWF0ZU9yVXBkYXRlRmllbGRJbnB1dEJhc2UgfSBmcm9tICcuL2NyZWF0ZS1vci11cGRhdGUtZmllbGQtaW5wdXQtYmFzZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgVG9hc3RlclNlcnZpY2UgfSBmcm9tICdAYWJwL25nLnRoZW1lLnNoYXJlZCc7XG5pbXBvcnQgeyBGaWVsZEFkbWluU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3Byb3h5L2FkbWluL2ZpZWxkcyc7XG5pbXBvcnQgeyBMb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBMb2NhbGl6YXRpb25TZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy5jb3JlJztcbmltcG9ydCB7IEVYVEVOU0lPTlNfSURFTlRJRklFUiB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkL2V4dGVuc2lvbnMnO1xuaW1wb3J0IHsgRUNtc0NvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2VudW1zJztcbmltcG9ydCB7IENtc0FwaVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgVXBkYXRlTGlzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy91cGRhdGUtbGlzdC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY21zLWNyZWF0ZS1maWVsZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jcmVhdGUtZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jcmVhdGUtZmllbGQuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogRVhURU5TSU9OU19JREVOVElGSUVSLFxuICAgICAgdXNlVmFsdWU6IEVDbXNDb21wb25lbnQuRmllbGRzQ3JlYXRlLFxuICAgIH0sXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQ3JlYXRlRmllbGRDb21wb25lbnQge1xuICBcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmYjogRm9ybUJ1aWxkZXIsXG4gICAgcHVibGljIF9GaWVsZEFkbWluU2VydmljZTogRmllbGRBZG1pblNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0b2FzdGVyOiBUb2FzdGVyU2VydmljZSxcbiAgICBwdWJsaWMgX2xvY2F0aW9uOiBMb2NhdGlvbixcbiAgICBwdWJsaWMgX0xvY2FsaXphdGlvblNlcnZpY2U6IExvY2FsaXphdGlvblNlcnZpY2UsXG4gICAgcHVibGljIF9DbXNBcGlTZXJ2aWNlOiBDbXNBcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICBcbiAgKSB7IH1cbiAgcHJpdmF0ZSBfVXBkYXRlTGlzdFNlcnZpY2U9aW5qZWN0KFVwZGF0ZUxpc3RTZXJ2aWNlKVxuIFxuICAvKirooajljZXlrp7kvZMgKi9cbiAgbmV3RW50aXR5OiBGb3JtR3JvdXAgfCB1bmRlZmluZWQgXG5cbiAgLyoq6I635Y+W5o+Q5Lqk5oyJ6ZKu5pu/6Lqr77yM55So5LqO55yf5a6e6Kem5Y+R6KGo5Y2V5o+Q5LqkICovXG4gIEBWaWV3Q2hpbGQoJ3N1Ym1pdGNsaWNrJywgeyBzdGF0aWM6IHRydWUgfSkgc3VibWl0Y2xpY2s6IEVsZW1lbnRSZWY7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy9DYWxsZWQgYWZ0ZXIgdGhlIGNvbnN0cnVjdG9yLCBpbml0aWFsaXppbmcgaW5wdXQgcHJvcGVydGllcywgYW5kIHRoZSBmaXJzdCBjYWxsIHRvIG5nT25DaGFuZ2VzLlxuICAgIC8vQWRkICdpbXBsZW1lbnRzIE9uSW5pdCcgdG8gdGhlIGNsYXNzLlxuICAgIHRoaXMubmV3RW50aXR5PSB0aGlzLmZiLmdyb3VwKG5ldyBDcmVhdGVPclVwZGF0ZUZpZWxkSW5wdXRCYXNlKCkpXG4gIH1cblxuICAvKirop6blj5Hmj5DkuqTmjInpkq4gKi9cbiAgc3VibWl0Y2xpY2tCdG4oKXtcbiAgICB0aGlzLnN1Ym1pdGNsaWNrLm5hdGl2ZUVsZW1lbnQuY2xpY2soKVxuICB9XG4gIC8qKuS/neWtmOihqOWNlSAqL1xuICBzYXZlKCkge1xuICAgIGxldCBpbnB1dCA9IHRoaXMubmV3RW50aXR5LnZhbHVlXG4gICAgaWYgKCF0aGlzLm5ld0VudGl0eS52YWxpZCkgcmV0dXJuXG4gICAgdGhpcy5fRmllbGRBZG1pblNlcnZpY2UuY3JlYXRlKGlucHV0KS5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgIHRoaXMudG9hc3Rlci5zdWNjZXNzKHRoaXMuX0xvY2FsaXphdGlvblNlcnZpY2UuaW5zdGFudChgQ21zS2l0OjpTYXZlZFN1Y2Nlc3NmdWxseWApKTtcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJycsIHsgc2tpcExvY2F0aW9uQ2hhbmdlOiB0cnVlIH0pLnRoZW4oKCkgPT4ge1xuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbYC9jbXMvYWRtaW4vZmllbGRzYF0pO1xuICAgICAgICB0aGlzLl9VcGRhdGVMaXN0U2VydmljZS51cGRhdGVMaXN0KCk7XG4gICAgICB9KTtcbiAgICB9KVxuICB9XG5cbn1cbiIsIjxmb3JtIGNsYXNzPVwicm93IGctMyBuZWVkcy12YWxpZGF0aW9uXCIgW2Zvcm1Hcm91cF09XCJuZXdFbnRpdHlcIiAobmdTdWJtaXQpPVwic2F2ZSgpXCI+XG4gICAgPGFicC1wYWdlIFt0aXRsZV09XCInQ21zOjpDcmVhdGVGaWVsZCcgfCBhYnBMb2NhbGl6YXRpb25cIiBbdG9vbGJhcl09XCJ0cnVlXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjcmVhdGUtZmllbGQtcGFnZVwiPlxuICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgc3R5bGU9XCJkaXNwbGF5OiBub25lO1wiICNzdWJtaXRjbGljaz48L2J1dHRvbj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keVwiPlxuICAgICAgICAgICAgICAgICAgICA8Y21zLWNyZWF0ZS1vci1lZGl0LWZpZWxkIFtFbnRpdHldPVwibmV3RW50aXR5XCI+PC9jbXMtY3JlYXRlLW9yLWVkaXQtZmllbGQ+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9hYnAtcGFnZT5cbjwvZm9ybT4iXX0=
@@ -1,119 +0,0 @@
1
- import { Component, Input, ViewChild, ViewContainerRef } from '@angular/core';
2
- import { FormControl, Validators } from '@angular/forms';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../../../services/field-abstracts.service";
5
- import * as i2 from "../../../services/cms-api.service";
6
- import * as i3 from "../../../proxy/admin/fields";
7
- import * as i4 from "@abp/ng.core";
8
- import * as i5 from "@angular/common";
9
- import * as i6 from "@angular/forms";
10
- import * as i7 from "@ngx-validate/core";
11
- import * as i8 from "@dignite-ng/expand.dynamic-form";
12
- class CreateOrEditFieldComponent {
13
- _FieldAbstractsService;
14
- _CmsApiService;
15
- _FieldAdminService;
16
- _LocalizationService;
17
- /**表单控件模板-动态表单配置组件 */
18
- FormDynamicRef;
19
- constructor(_FieldAbstractsService, _CmsApiService, _FieldAdminService, _LocalizationService) {
20
- this._FieldAbstractsService = _FieldAbstractsService;
21
- this._CmsApiService = _CmsApiService;
22
- this._FieldAdminService = _FieldAdminService;
23
- this._LocalizationService = _LocalizationService;
24
- if (this._FieldAbstractsService.fieldGroupList.length == 0) {
25
- this._FieldAbstractsService.getfieldGroupList();
26
- }
27
- }
28
- /**表单实体 */
29
- _Entity;
30
- set Entity(v) {
31
- if (v) {
32
- this._Entity = v;
33
- this.dataLoaded();
34
- }
35
- }
36
- get formControlName() {
37
- return this._Entity.get('formControlName');
38
- }
39
- /**选择的表单信息 */
40
- _selected_copy;
41
- _selected;
42
- set selected(v) {
43
- if (v) {
44
- this._selected = v || '';
45
- this._selected_copy = v;
46
- this.dataLoaded();
47
- }
48
- }
49
- async dataLoaded() {
50
- if (this._FieldAbstractsService.fromControlList.length == 0) {
51
- await this._FieldAbstractsService.getFromControlList();
52
- }
53
- if (this._Entity) {
54
- if (!this.formControlName.value) {
55
- this._Entity.patchValue({
56
- formControlName: this._FieldAbstractsService.fromControlList[0]?.name,
57
- });
58
- }
59
- this._Entity.setControl('name', new FormControl(this.nameInput.value || '', {
60
- validators: Validators.required,
61
- asyncValidators: [this.repetitionAsyncValidator()],
62
- updateOn: 'blur'
63
- }));
64
- }
65
- }
66
- /**name表单控件 */
67
- get nameInput() {
68
- return this._Entity.get('name');
69
- }
70
- nameInputBlur(event) {
71
- let value = event.target.value;
72
- this.nameInput.patchValue(value);
73
- }
74
- /**字段标签input失去标点生成字段名字 */
75
- disPlayNameInputBlur(event) {
76
- let value = event.target.value;
77
- let pinyin = this._CmsApiService.chineseToPinyin(value);
78
- let nameInput = this.nameInput;
79
- if (nameInput.value)
80
- return;
81
- nameInput.patchValue(pinyin);
82
- }
83
- /**定义异步验证方法 */
84
- repetitionAsyncValidator() {
85
- return (ctrl) => {
86
- return new Promise(resolve => {
87
- if (ctrl.value == this._selected?.name || !ctrl.value) {
88
- resolve(null);
89
- return;
90
- }
91
- this._FieldAdminService.nameExists(ctrl.value).subscribe(res => {
92
- if (res) {
93
- resolve({ repetition: this._LocalizationService.instant(`Cms::FieldName{0}AlreadyExist`, ctrl.value) });
94
- }
95
- else {
96
- resolve(null);
97
- }
98
- });
99
- });
100
- };
101
- }
102
- formControlNameChange() {
103
- }
104
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateOrEditFieldComponent, deps: [{ token: i1.FieldAbstractsService }, { token: i2.CmsApiService }, { token: i3.FieldAdminService }, { token: i4.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
105
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CreateOrEditFieldComponent, selector: "cms-create-or-edit-field", inputs: { Entity: "Entity", selected: "selected" }, viewQueries: [{ propertyName: "FormDynamicRef", first: true, predicate: ["FormDynamicRef"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<form [formGroup]=\"_Entity\">\n <div class=\"mb-2\">\n <label class=\"form-label\" for=\"groupId\">{{'Cms::FieldGroup' | abpLocalization}}</label>\n <select class=\"form-select\" formControlName=\"groupId\">\n <option value=\"\">{{'Cms::OptionalGrouping' | abpLocalization}}</option>\n <ng-container *ngFor=\"let item of _FieldAbstractsService.fieldGroupList\">\n <option [value]=\"item.id\">{{item.name}}</option>\n </ng-container>\n </select>\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\" for=\"displayName\">{{'DigniteAbpForms::FieldDisplayName' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"displayName\" (blur)=\"disPlayNameInputBlur($event)\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\" for=\"name\">{{'DigniteAbpForms::FieldName' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"name\" (input)=\"nameInputBlur($event)\">\n <div class=\"text-danger invalid-feedback\" *ngIf=\"nameInput.errors?.repetition\">\n {{nameInput.errors?.repetition}}\n </div>\n <div class=\"form-text\">{{'DigniteAbpForms::FieldNameHelpText' | abpLocalization}}</div>\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\" for=\"description\">{{'Cms::Description' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"description\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\" for=\"formControlName\">{{'Cms::FieldType' | abpLocalization}}</label>\n <select class=\"form-select\" formControlName=\"formControlName\" (change)=\"formControlNameChange()\">\n <ng-container *ngFor=\"let item of _FieldAbstractsService.fromControlList;let i =index\">\n <option [value]=\"item.name\">{{item.displayName}}</option>\n </ng-container>\n </select>\n </div>\n <ng-container *ngIf=\"_Entity.value.formControlName&&_Entity\"> \n <df-dynamic [type]=\"_Entity.value.formControlName\" [entity]=\"_Entity\" [selected]=\"_selected\"></df-dynamic>\n </ng-container>\n\n</form>", styles: [""], dependencies: [{ kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i6.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i6.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i6.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: i6.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i6.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i7.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i7.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "component", type: i8.DynamicComponent, selector: "df-dynamic", inputs: ["selected", "type", "entity", "culture", "parentFiledName", "fields"] }, { kind: "pipe", type: i4.LocalizationPipe, name: "abpLocalization" }] });
106
- }
107
- export { CreateOrEditFieldComponent };
108
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateOrEditFieldComponent, decorators: [{
109
- type: Component,
110
- args: [{ selector: 'cms-create-or-edit-field', template: "<form [formGroup]=\"_Entity\">\n <div class=\"mb-2\">\n <label class=\"form-label\" for=\"groupId\">{{'Cms::FieldGroup' | abpLocalization}}</label>\n <select class=\"form-select\" formControlName=\"groupId\">\n <option value=\"\">{{'Cms::OptionalGrouping' | abpLocalization}}</option>\n <ng-container *ngFor=\"let item of _FieldAbstractsService.fieldGroupList\">\n <option [value]=\"item.id\">{{item.name}}</option>\n </ng-container>\n </select>\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\" for=\"displayName\">{{'DigniteAbpForms::FieldDisplayName' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"displayName\" (blur)=\"disPlayNameInputBlur($event)\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\" for=\"name\">{{'DigniteAbpForms::FieldName' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"name\" (input)=\"nameInputBlur($event)\">\n <div class=\"text-danger invalid-feedback\" *ngIf=\"nameInput.errors?.repetition\">\n {{nameInput.errors?.repetition}}\n </div>\n <div class=\"form-text\">{{'DigniteAbpForms::FieldNameHelpText' | abpLocalization}}</div>\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\" for=\"description\">{{'Cms::Description' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" formControlName=\"description\">\n </div>\n <div class=\"mb-2\">\n <label class=\"form-label\" for=\"formControlName\">{{'Cms::FieldType' | abpLocalization}}</label>\n <select class=\"form-select\" formControlName=\"formControlName\" (change)=\"formControlNameChange()\">\n <ng-container *ngFor=\"let item of _FieldAbstractsService.fromControlList;let i =index\">\n <option [value]=\"item.name\">{{item.displayName}}</option>\n </ng-container>\n </select>\n </div>\n <ng-container *ngIf=\"_Entity.value.formControlName&&_Entity\"> \n <df-dynamic [type]=\"_Entity.value.formControlName\" [entity]=\"_Entity\" [selected]=\"_selected\"></df-dynamic>\n </ng-container>\n\n</form>" }]
111
- }], ctorParameters: function () { return [{ type: i1.FieldAbstractsService }, { type: i2.CmsApiService }, { type: i3.FieldAdminService }, { type: i4.LocalizationService }]; }, propDecorators: { FormDynamicRef: [{
112
- type: ViewChild,
113
- args: ['FormDynamicRef', { read: ViewContainerRef, static: true }]
114
- }], Entity: [{
115
- type: Input
116
- }], selected: [{
117
- type: Input
118
- }] } });
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW9yLWVkaXQtZmllbGQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21zL3NyYy9saWIvY29tcG9uZW50cy9hZG1pbi9maWVsZHMvY3JlYXRlLW9yLWVkaXQtZmllbGQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21zL3NyYy9saWIvY29tcG9uZW50cy9hZG1pbi9maWVsZHMvY3JlYXRlLW9yLWVkaXQtZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUcsU0FBUyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9FLE9BQU8sRUFBbUIsV0FBVyxFQUErQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7OztBQUt2RyxNQUthLDBCQUEwQjtJQU01QjtJQUNDO0lBQ0E7SUFDQTtJQVBWLHFCQUFxQjtJQUNrRCxjQUFjLENBQW1CO0lBRXhHLFlBQ1Msc0JBQTZDLEVBQzVDLGNBQTZCLEVBQzdCLGtCQUFxQyxFQUNyQyxvQkFBeUM7UUFIMUMsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF1QjtRQUM1QyxtQkFBYyxHQUFkLGNBQWMsQ0FBZTtRQUM3Qix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBQ3JDLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBcUI7UUFHakQsSUFBSSxJQUFJLENBQUMsc0JBQXNCLENBQUMsY0FBYyxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUU7WUFDMUQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGlCQUFpQixFQUFFLENBQUE7U0FDaEQ7SUFDSCxDQUFDO0lBQ0QsVUFBVTtJQUNWLE9BQU8sQ0FBdUI7SUFDOUIsSUFDVyxNQUFNLENBQUMsQ0FBd0I7UUFDeEMsSUFBSSxDQUFDLEVBQUU7WUFDTCxJ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QUU7d0JBQ1AsT0FBTyxDQUFDLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsK0JBQStCLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztxQkFDekc7eUJBQU07d0JBQ0wsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO3FCQUNmO2dCQUNILENBQUMsQ0FBQyxDQUFBO1lBQ0osQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUM7SUFDSixDQUFDO0lBR0QscUJBQXFCO0lBQ3JCLENBQUM7d0dBckdVLDBCQUEwQjs0RkFBMUIsMEJBQTBCLGlOQUdBLGdCQUFnQiwyQ0NmdkQsaXVFQXNDTzs7U0QxQk0sMEJBQTBCOzRGQUExQiwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0UsMEJBQTBCOzBNQU9tQyxjQUFjO3NCQUFwRixTQUFTO3VCQUFDLGdCQUFnQixFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBZ0IxRCxNQUFNO3NCQURoQixLQUFLO2dCQWNLLFFBQVE7c0JBRGxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCAgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGaWVsZEFic3RyYWN0c1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9maWVsZC1hYnN0cmFjdHMuc2VydmljZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIFZhbGlkYXRpb25FcnJvcnMsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBDbXNBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvY21zLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZpZWxkQWRtaW5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vcHJveHkvYWRtaW4vZmllbGRzJztcbmltcG9ydCB7IExvY2FsaXphdGlvblNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY21zLWNyZWF0ZS1vci1lZGl0LWZpZWxkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NyZWF0ZS1vci1lZGl0LWZpZWxkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY3JlYXRlLW9yLWVkaXQtZmllbGQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDcmVhdGVPckVkaXRGaWVsZENvbXBvbmVudCB7XG5cbiAgLyoq6KGo5Y2V5o6n5Lu25qih5p2/LeWKqOaAgeihqOWNlemFjee9rue7hOS7tiAqL1xuICBAVmlld0NoaWxkKCdGb3JtRHluYW1pY1JlZicsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlIH0pIEZvcm1EeW5hbWljUmVmOiBWaWV3Q29udGFpbmVyUmVmO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBfRmllbGRBYnN0cmFjdHNTZXJ2aWNlOiBGaWVsZEFic3RyYWN0c1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBfQ21zQXBpU2VydmljZTogQ21zQXBpU2VydmljZSxcbiAgICBwcml2YXRlIF9GaWVsZEFkbWluU2VydmljZTogRmllbGRBZG1pblNlcnZpY2UsXG4gICAgcHJpdmF0ZSBfTG9jYWxpemF0aW9uU2VydmljZTogTG9jYWxpemF0aW9uU2VydmljZSxcbiAgXG4gICkge1xuICAgIGlmICh0aGlzLl9GaWVsZEFic3RyYWN0c1NlcnZpY2UuZmllbGRHcm91cExpc3QubGVuZ3RoID09IDApIHtcbiAgICAgIHRoaXMuX0ZpZWxkQWJzdHJhY3RzU2VydmljZS5nZXRmaWVsZEdyb3VwTGlzdCgpXG4gICAgfVxuICB9XG4gIC8qKuihqOWNleWunuS9kyAqL1xuICBfRW50aXR5OiBGb3JtR3JvdXAgfCB1bmRlZmluZWRcbiAgQElucHV0KClcbiAgcHVibGljIHNldCBFbnRpdHkodjogRm9ybUdyb3VwIHwgdW5kZWZpbmVkKSB7XG4gICAgaWYgKHYpIHtcbiAgICAgIHRoaXMuX0VudGl0eSA9IHY7XG4gICAgICB0aGlzLmRhdGFMb2FkZWQoKTtcbiAgICB9XG4gIH1cbiAgZ2V0IGZvcm1Db250cm9sTmFtZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fRW50aXR5LmdldCgnZm9ybUNvbnRyb2xOYW1lJylcbiAgfVxuICAvKirpgInmi6nnmoTooajljZXkv6Hmga8gKi9cbiAgX3NlbGVjdGVkX2NvcHk6YW55XG4gIF9zZWxlY3RlZDogYW55XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgc2VsZWN0ZWQodjogYW55KSB7XG4gICAgaWYodikge1xuICAgICAgdGhpcy5fc2VsZWN0ZWQgPSB2IHx8ICcnO1xuICAgICAgdGhpcy5fc2VsZWN0ZWRfY29weT12XG4gICAgICB0aGlzLmRhdGFMb2FkZWQoKVxuICAgIH1cbiAgIFxuICB9XG5cblxuICBhc3luYyBkYXRhTG9hZGVkKCkge1xuICAgIGlmICh0aGlzLl9GaWVsZEFic3RyYWN0c1NlcnZpY2UuZnJvbUNvbnRyb2xMaXN0Lmxlbmd0aCA9PSAwKSB7XG4gICAgICBhd2FpdCB0aGlzLl9GaWVsZEFic3RyYWN0c1NlcnZpY2UuZ2V0RnJvbUNvbnRyb2xMaXN0KClcbiAgICB9XG4gICAgXG4gICAgaWYgKHRoaXMuX0VudGl0eSkge1xuICAgICAgaWYgKCF0aGlzLmZvcm1Db250cm9sTmFtZS52YWx1ZSkge1xuICAgICAgICB0aGlzLl9FbnRpdHkucGF0Y2hWYWx1ZSh7XG4gICAgICAgICAgZm9ybUNvbnRyb2xOYW1lOiB0aGlzLl9GaWVsZEFic3RyYWN0c1NlcnZpY2UuZnJvbUNvbnRyb2xMaXN0WzBdPy5uYW1lLFxuICAgICAgICB9KVxuICAgICAgfVxuICAgICAgdGhpcy5fRW50aXR5LnNldENvbnRyb2woJ25hbWUnLCBuZXcgRm9ybUNvbnRyb2wodGhpcy5uYW1lSW5wdXQudmFsdWV8fCcnLCB7XG4gICAgICAgIHZhbGlkYXRvcnM6IFZhbGlkYXRvcnMucmVxdWlyZWQsXG4gICAgICAgIGFzeW5jVmFsaWRhdG9yczogW3RoaXMucmVwZXRpdGlvbkFzeW5jVmFsaWRhdG9yKCldICxcbiAgICAgICAgdXBkYXRlT246ICdibHVyJ1xuICAgICAgfSkpXG4gICAgfVxuICB9XG5cblxuICAvKipuYW1l6KGo5Y2V5o6n5Lu2ICovXG4gIGdldCBuYW1lSW5wdXQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX0VudGl0eS5nZXQoJ25hbWUnKVxuICB9XG5cbiAgbmFtZUlucHV0Qmx1cihldmVudCl7XG4gICAgbGV0IHZhbHVlID0gZXZlbnQudGFyZ2V0LnZhbHVlXG4gICAgdGhpcy5uYW1lSW5wdXQucGF0Y2hWYWx1ZSh2YWx1ZSlcbiAgfVxuXG4gIC8qKuWtl+auteagh+etvmlucHV05aSx5Y675qCH54K555Sf5oiQ5a2X5q615ZCN5a2XICovXG4gIGRpc1BsYXlOYW1lSW5wdXRCbHVyKGV2ZW50KSB7XG4gICAgbGV0IHZhbHVlID0gZXZlbnQudGFyZ2V0LnZhbHVlXG4gICAgbGV0IHBpbnlpbiA9IHRoaXMuX0Ntc0FwaVNlcnZpY2UuY2hpbmVzZVRvUGlueWluKHZhbHVlKVxuICAgIGxldCBuYW1lSW5wdXQgPSB0aGlzLm5hbWVJbnB1dFxuICAgIGlmIChuYW1lSW5wdXQudmFsdWUpIHJldHVyblxuICAgIG5hbWVJbnB1dC5wYXRjaFZhbHVlKHBpbnlpbilcbiAgfVxuICAvKirlrprkuYnlvILmraXpqozor4Hmlrnms5UgKi9cbiAgcmVwZXRpdGlvbkFzeW5jVmFsaWRhdG9yKCkge1xuICAgIHJldHVybiAoY3RybDogQWJzdHJhY3RDb250cm9sKTogUHJvbWlzZTxWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbD4gfCBPYnNlcnZhYmxlPFZhbGlkYXRpb25FcnJvcnMgfCBudWxsPiA9PiB7XG4gICAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XG4gICAgICAgIGlmIChjdHJsLnZhbHVlID09IHRoaXMuX3NlbGVjdGVkPy5uYW1lfHwhY3RybC52YWx1ZSkge1xuICAgICAgICAgIHJlc29sdmUobnVsbCk7XG4gICAgICAgICAgcmV0dXJuXG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fRmllbGRBZG1pblNlcnZpY2UubmFtZUV4aXN0cyhjdHJsLnZhbHVlKS5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgICAgICBpZiAocmVzKSB7XG4gICAgICAgICAgICByZXNvbHZlKHsgcmVwZXRpdGlvbjogdGhpcy5fTG9jYWxpemF0aW9uU2VydmljZS5pbnN0YW50KGBDbXM6OkZpZWxkTmFtZXswfUFscmVhZHlFeGlzdGAsIGN0cmwudmFsdWUpIH0pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXNvbHZlKG51bGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH0pO1xuICAgIH07XG4gIH1cblxuXG4gIGZvcm1Db250cm9sTmFtZUNoYW5nZSgpe1xuICB9XG5cbn1cbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwiX0VudGl0eVwiPlxuICAgIDxkaXYgY2xhc3M9XCJtYi0yXCI+XG4gICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiBmb3I9XCJncm91cElkXCI+e3snQ21zOjpGaWVsZEdyb3VwJyB8IGFicExvY2FsaXphdGlvbn19PC9sYWJlbD5cbiAgICAgICAgPHNlbGVjdCBjbGFzcz1cImZvcm0tc2VsZWN0XCIgZm9ybUNvbnRyb2xOYW1lPVwiZ3JvdXBJZFwiPlxuICAgICAgICAgICAgPG9wdGlvbiB2YWx1ZT1cIlwiPnt7J0Ntczo6T3B0aW9uYWxHcm91cGluZycgfCBhYnBMb2NhbGl6YXRpb259fTwvb3B0aW9uPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBfRmllbGRBYnN0cmFjdHNTZXJ2aWNlLmZpZWxkR3JvdXBMaXN0XCI+XG4gICAgICAgICAgICAgICAgPG9wdGlvbiBbdmFsdWVdPVwiaXRlbS5pZFwiPnt7aXRlbS5uYW1lfX08L29wdGlvbj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L3NlbGVjdD5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibWItMlwiPlxuICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCIgZm9yPVwiZGlzcGxheU5hbWVcIj57eydEaWduaXRlQWJwRm9ybXM6OkZpZWxkRGlzcGxheU5hbWUnIHwgYWJwTG9jYWxpemF0aW9ufX08L2xhYmVsPlxuICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGZvcm1Db250cm9sTmFtZT1cImRpc3BsYXlOYW1lXCIgKGJsdXIpPVwiZGlzUGxheU5hbWVJbnB1dEJsdXIoJGV2ZW50KVwiPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJtYi0yXCI+XG4gICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiBmb3I9XCJuYW1lXCI+e3snRGlnbml0ZUFicEZvcm1zOjpGaWVsZE5hbWUnIHwgYWJwTG9jYWxpemF0aW9ufX08L2xhYmVsPlxuICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGZvcm1Db250cm9sTmFtZT1cIm5hbWVcIiAoaW5wdXQpPVwibmFtZUlucHV0Qmx1cigkZXZlbnQpXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LWRhbmdlciBpbnZhbGlkLWZlZWRiYWNrXCIgKm5nSWY9XCJuYW1lSW5wdXQuZXJyb3JzPy5yZXBldGl0aW9uXCI+XG4gICAgICAgICAgICB7e25hbWVJbnB1dC5lcnJvcnM/LnJlcGV0aXRpb259fVxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tdGV4dFwiPnt7J0RpZ25pdGVBYnBGb3Jtczo6RmllbGROYW1lSGVscFRleHQnIHwgYWJwTG9jYWxpemF0aW9ufX08L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibWItMlwiPlxuICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsXCIgZm9yPVwiZGVzY3JpcHRpb25cIj57eydDbXM6OkRlc2NyaXB0aW9uJyB8IGFicExvY2FsaXphdGlvbn19PC9sYWJlbD5cbiAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBmb3JtQ29udHJvbE5hbWU9XCJkZXNjcmlwdGlvblwiPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJtYi0yXCI+XG4gICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWxcIiBmb3I9XCJmb3JtQ29udHJvbE5hbWVcIj57eydDbXM6OkZpZWxkVHlwZScgfCBhYnBMb2NhbGl6YXRpb259fTwvbGFiZWw+XG4gICAgICAgIDxzZWxlY3QgY2xhc3M9XCJmb3JtLXNlbGVjdFwiIGZvcm1Db250cm9sTmFtZT1cImZvcm1Db250cm9sTmFtZVwiIChjaGFuZ2UpPVwiZm9ybUNvbnRyb2xOYW1lQ2hhbmdlKClcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgX0ZpZWxkQWJzdHJhY3RzU2VydmljZS5mcm9tQ29udHJvbExpc3Q7bGV0IGkgPWluZGV4XCI+XG4gICAgICAgICAgICAgICAgPG9wdGlvbiBbdmFsdWVdPVwiaXRlbS5uYW1lXCI+e3tpdGVtLmRpc3BsYXlOYW1lfX08L29wdGlvbj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L3NlbGVjdD5cbiAgICA8L2Rpdj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiX0VudGl0eS52YWx1ZS5mb3JtQ29udHJvbE5hbWUmJl9FbnRpdHlcIj4gXG4gICAgICAgIDxkZi1keW5hbWljIFt0eXBlXT1cIl9FbnRpdHkudmFsdWUuZm9ybUNvbnRyb2xOYW1lXCIgW2VudGl0eV09XCJfRW50aXR5XCIgW3NlbGVjdGVkXT1cIl9zZWxlY3RlZFwiPjwvZGYtZHluYW1pYz5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuPC9mb3JtPiJdfQ==
@@ -1,25 +0,0 @@
1
- import { FormGroup, Validators } from "@angular/forms";
2
- export class CreateOrUpdateFieldInputBase {
3
- /**分组id */
4
- groupId = ['', []];
5
- /**字段名称 Display name of this field */
6
- displayName = ['', [Validators.required]];
7
- /**字段唯一名称 Unique Name*/
8
- name = ['', [Validators.required]];
9
- /**描述 说明 */
10
- description = ['', []];
11
- /**FieldType字段类型 表单控件名称 */
12
- formControlName = [undefined, [Validators.required]];
13
- /**动态表单配置 */
14
- formConfiguration = new FormGroup({});
15
- constructor(data) {
16
- if (data) {
17
- for (const key in data) {
18
- if (data.hasOwnProperty(key)) {
19
- this[key] = data[key];
20
- }
21
- }
22
- }
23
- }
24
- }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW9yLXVwZGF0ZS1maWVsZC1pbnB1dC1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21zL3NyYy9saWIvY29tcG9uZW50cy9hZG1pbi9maWVsZHMvY3JlYXRlLW9yLXVwZGF0ZS1maWVsZC1pbnB1dC1iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFdkQsTUFBTSxPQUFPLDRCQUE0QjtJQUNyQyxVQUFVO0lBQ1YsT0FBTyxHQUFRLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRXhCLHFDQUFxQztJQUNyQyxXQUFXLEdBQVEsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUUvQyx1QkFBdUI7SUFDdkIsSUFBSSxHQUFRLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFFeEMsV0FBVztJQUNYLFdBQVcsR0FBUSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUU1QiwwQkFBMEI7SUFDMUIsZUFBZSxHQUFRLENBQUMsU0FBUyxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFFMUQsWUFBWTtJQUNaLGlCQUFpQixHQUEwQixJQUFJLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQTtJQUc1RCxZQUFZLElBQW1DO1FBQzNDLElBQUksSUFBSSxFQUFFO1lBQ04sS0FBSyxNQUFNLEdBQUcsSUFBSSxJQUFJLEVBQUU7Z0JBQ3BCLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFDMUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztpQkFDekI7YUFDSjtTQUNKO0lBRUwsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgQ3JlYXRlT3JVcGRhdGVGaWVsZElucHV0QmFzZSB7XHJcbiAgICAvKirliIbnu4RpZCAqL1xyXG4gICAgZ3JvdXBJZDogYW55ID0gWycnLCBbXV07XHJcblxyXG4gICAgLyoq5a2X5q615ZCN56ewIERpc3BsYXkgbmFtZSBvZiB0aGlzIGZpZWxkICovXHJcbiAgICBkaXNwbGF5TmFtZTogYW55ID0gWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dO1xyXG5cclxuICAgIC8qKuWtl+auteWUr+S4gOWQjeensCBVbmlxdWUgTmFtZSovXHJcbiAgICBuYW1lOiBhbnkgPSBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV07XHJcblxyXG4gICAgLyoq5o+P6L+wIOivtOaYjiAqL1xyXG4gICAgZGVzY3JpcHRpb246IGFueSA9IFsnJywgW11dO1xyXG5cclxuICAgIC8qKkZpZWxkVHlwZeWtl+auteexu+WeiyDooajljZXmjqfku7blkI3np7AgKi9cclxuICAgIGZvcm1Db250cm9sTmFtZTogYW55ID0gW3VuZGVmaW5lZCwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdXTtcclxuXHJcbiAgICAvKirliqjmgIHooajljZXphY3nva4gKi9cclxuICAgIGZvcm1Db25maWd1cmF0aW9uOiBGb3JtR3JvdXAgfCB1bmRlZmluZWQgPSBuZXcgRm9ybUdyb3VwKHt9KVxyXG5cclxuXHJcbiAgICBjb25zdHJ1Y3RvcihkYXRhPzogQ3JlYXRlT3JVcGRhdGVGaWVsZElucHV0QmFzZSkge1xyXG4gICAgICAgIGlmIChkYXRhKSB7XHJcbiAgICAgICAgICAgIGZvciAoY29uc3Qga2V5IGluIGRhdGEpIHtcclxuICAgICAgICAgICAgICAgIGlmIChkYXRhLmhhc093blByb3BlcnR5KGtleSkpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzW2tleV0gPSBkYXRhW2tleV07XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -1,110 +0,0 @@
1
- import { Component, ViewChild, inject } from '@angular/core';
2
- import { CreateOrUpdateFieldInputBase } from './create-or-update-field-input-base';
3
- import { EXTENSIONS_IDENTIFIER } from '@abp/ng.theme.shared/extensions';
4
- import { ECmsComponent } from '../../../enums';
5
- import { UpdateListService } from '../../../services/update-list.service';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/forms";
8
- import * as i2 from "../../../services/field-abstracts.service";
9
- import * as i3 from "../../../proxy/admin/fields";
10
- import * as i4 from "@angular/router";
11
- import * as i5 from "@abp/ng.theme.shared";
12
- import * as i6 from "@angular/common";
13
- import * as i7 from "@abp/ng.core";
14
- import * as i8 from "../../../services";
15
- import * as i9 from "@ngx-validate/core";
16
- import * as i10 from "@abp/ng.components/page";
17
- import * as i11 from "./create-or-edit-field.component";
18
- class EditFieldComponent {
19
- fb;
20
- _FieldAbstractsService;
21
- _FieldAdminService;
22
- route;
23
- toaster;
24
- _location;
25
- _LocalizationService;
26
- _CmsApiService;
27
- router;
28
- constructor(fb, _FieldAbstractsService, _FieldAdminService, route, toaster, _location, _LocalizationService, _CmsApiService, router) {
29
- this.fb = fb;
30
- this._FieldAbstractsService = _FieldAbstractsService;
31
- this._FieldAdminService = _FieldAdminService;
32
- this.route = route;
33
- this.toaster = toaster;
34
- this._location = _location;
35
- this._LocalizationService = _LocalizationService;
36
- this._CmsApiService = _CmsApiService;
37
- this.router = router;
38
- }
39
- /**表单实体 */
40
- newEntity;
41
- /**字段id */
42
- fieldId = '';
43
- /**字段详情 */
44
- fieldDetails;
45
- /**获取提交按钮替身,用于真实触发表单提交 */
46
- submitclick;
47
- async ngOnInit() {
48
- const _fieldId = this.route.snapshot.params.id;
49
- if (_fieldId) {
50
- this.fieldId = _fieldId;
51
- this.newEntity = this.fb.group(new CreateOrUpdateFieldInputBase());
52
- await Promise.all([
53
- this._FieldAbstractsService.getFromControlList(),
54
- this.getFieldEdit(),
55
- ]);
56
- this.newEntity.patchValue({
57
- ...this.fieldDetails,
58
- });
59
- }
60
- }
61
- /**获取字段详情 */
62
- getFieldEdit() {
63
- return new Promise((resolve, reject) => {
64
- this._FieldAdminService.get(this.fieldId).subscribe(res => {
65
- res.groupId = res.groupId ? res.groupId : '';
66
- this.fieldDetails = res;
67
- resolve(res);
68
- });
69
- });
70
- }
71
- /**触发提交按钮 */
72
- submitclickBtn() {
73
- this.submitclick.nativeElement.click();
74
- }
75
- _UpdateListService = inject(UpdateListService);
76
- /**保存表单 */
77
- save() {
78
- let input = this.newEntity.value;
79
- if (!this.newEntity.valid)
80
- return;
81
- this._FieldAdminService.update(this.fieldId, input).subscribe((res => {
82
- this.toaster.success(this._LocalizationService.instant(`CmsKit::SavedSuccessfully`));
83
- this.router.navigateByUrl('', { skipLocationChange: true }).then(() => {
84
- this.router.navigate([`/cms/admin/fields`]);
85
- this._UpdateListService.updateList();
86
- });
87
- }));
88
- }
89
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditFieldComponent, deps: [{ token: i1.FormBuilder }, { token: i2.FieldAbstractsService }, { token: i3.FieldAdminService }, { token: i4.ActivatedRoute }, { token: i5.ToasterService }, { token: i6.Location }, { token: i7.LocalizationService }, { token: i8.CmsApiService }, { token: i4.Router }], target: i0.ɵɵFactoryTarget.Component });
90
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EditFieldComponent, selector: "cms-edit-field", providers: [
91
- {
92
- provide: EXTENSIONS_IDENTIFIER,
93
- useValue: ECmsComponent.FieldsEdit,
94
- },
95
- ], viewQueries: [{ propertyName: "submitclick", first: true, predicate: ["submitclick"], descendants: true, static: true }], ngImport: i0, template: "<form class=\"row g-3 needs-validation\" [formGroup]=\"newEntity\" (ngSubmit)=\"save()\">\n <abp-page [title]=\"'Cms::EditField' | abpLocalization\" [toolbar]=\"true\">\n <div class=\"create-field-page\">\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n <!-- <div class=\"p-3 bg-white rounded-1\"> -->\n <div class=\"card\">\n <div class=\"card-body\">\n <cms-create-or-edit-field [Entity]=\"newEntity\" [selected]=\"fieldDetails\"></cms-create-or-edit-field>\n </div>\n </div>\n </div>\n </abp-page>\n</form>", styles: [""], dependencies: [{ kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i7.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit", "markAsDirtyWhenSubmit"], outputs: ["ngSubmit"] }, { kind: "directive", type: i9.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "component", type: i10.PageComponent, selector: "abp-page", inputs: ["title", "toolbar", "breadcrumb"] }, { kind: "component", type: i11.CreateOrEditFieldComponent, selector: "cms-create-or-edit-field", inputs: ["Entity", "selected"] }, { kind: "pipe", type: i7.LocalizationPipe, name: "abpLocalization" }] });
96
- }
97
- export { EditFieldComponent };
98
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EditFieldComponent, decorators: [{
99
- type: Component,
100
- args: [{ selector: 'cms-edit-field', providers: [
101
- {
102
- provide: EXTENSIONS_IDENTIFIER,
103
- useValue: ECmsComponent.FieldsEdit,
104
- },
105
- ], template: "<form class=\"row g-3 needs-validation\" [formGroup]=\"newEntity\" (ngSubmit)=\"save()\">\n <abp-page [title]=\"'Cms::EditField' | abpLocalization\" [toolbar]=\"true\">\n <div class=\"create-field-page\">\n <button type=\"submit\" style=\"display: none;\" #submitclick></button>\n <!-- <div class=\"p-3 bg-white rounded-1\"> -->\n <div class=\"card\">\n <div class=\"card-body\">\n <cms-create-or-edit-field [Entity]=\"newEntity\" [selected]=\"fieldDetails\"></cms-create-or-edit-field>\n </div>\n </div>\n </div>\n </abp-page>\n</form>" }]
106
- }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.FieldAbstractsService }, { type: i3.FieldAdminService }, { type: i4.ActivatedRoute }, { type: i5.ToasterService }, { type: i6.Location }, { type: i7.LocalizationService }, { type: i8.CmsApiService }, { type: i4.Router }]; }, propDecorators: { submitclick: [{
107
- type: ViewChild,
108
- args: ['submitclick', { static: true }]
109
- }] } });
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdC1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbXMvc3JjL2xpYi9jb21wb25lbnRzL2FkbWluL2ZpZWxkcy9lZGl0LWZpZWxkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Ntcy9zcmMvbGliL2NvbXBvbmVudHMvYWRtaW4vZmllbGRzL2VkaXQtZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBc0IsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdqRixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQU1uRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFL0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFFMUUsTUFXYSxrQkFBa0I7SUFHbkI7SUFDRDtJQUNBO0lBQ0M7SUFDQTtJQUNEO0lBQ0E7SUFDQTtJQUNDO0lBVFYsWUFDVSxFQUFlLEVBQ2hCLHNCQUE2QyxFQUM3QyxrQkFBcUMsRUFDcEMsS0FBcUIsRUFDckIsT0FBdUIsRUFDeEIsU0FBbUIsRUFDbkIsb0JBQXlDLEVBQ3pDLGNBQTZCLEVBQzVCLE1BQWM7UUFSZCxPQUFFLEdBQUYsRUFBRSxDQUFhO1FBQ2hCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBdUI7UUFDN0MsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUNwQyxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUN4QixjQUFTLEdBQVQsU0FBUyxDQUFVO1FBQ25CLHlCQUFvQixHQUFwQixv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YSxDQUFDLFVBQVU7YUFDbkM7U0FDRixvSkN2QkgsMm9CQVlPOztTRGFNLGtCQUFrQjs0RkFBbEIsa0JBQWtCO2tCQVg5QixTQUFTOytCQUNFLGdCQUFnQixhQUdmO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxxQkFBcUI7NEJBQzlCLFFBQVEsRUFBRSxhQUFhLENBQUMsVUFBVTt5QkFDbkM7cUJBQ0Y7MFVBMEIyQyxXQUFXO3NCQUF0RCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uSW5pdCwgVmlld0NoaWxkLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGaWVsZEFic3RyYWN0c1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9maWVsZC1hYnN0cmFjdHMuc2VydmljZSc7XG5pbXBvcnQgeyBDcmVhdGVPclVwZGF0ZUZpZWxkSW5wdXRCYXNlIH0gZnJvbSAnLi9jcmVhdGUtb3ItdXBkYXRlLWZpZWxkLWlucHV0LWJhc2UnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBGaWVsZEFkbWluU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3Byb3h5L2FkbWluL2ZpZWxkcyc7XG5pbXBvcnQgeyBUb2FzdGVyU2VydmljZSB9IGZyb20gJ0BhYnAvbmcudGhlbWUuc2hhcmVkJztcbmltcG9ydCB7IExvY2F0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IExvY2FsaXphdGlvblNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuaW1wb3J0IHsgRVhURU5TSU9OU19JREVOVElGSUVSIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQvZXh0ZW5zaW9ucyc7XG5pbXBvcnQgeyBFQ21zQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZW51bXMnO1xuaW1wb3J0IHsgQ21zQXBpU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IFVwZGF0ZUxpc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvdXBkYXRlLWxpc3Quc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2Ntcy1lZGl0LWZpZWxkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VkaXQtZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lZGl0LWZpZWxkLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEVYVEVOU0lPTlNfSURFTlRJRklFUixcbiAgICAgIHVzZVZhbHVlOiBFQ21zQ29tcG9uZW50LkZpZWxkc0VkaXQsXG4gICAgfSxcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBFZGl0RmllbGRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxuICAgIHB1YmxpYyBfRmllbGRBYnN0cmFjdHNTZXJ2aWNlOiBGaWVsZEFic3RyYWN0c1NlcnZpY2UsXG4gICAgcHVibGljIF9GaWVsZEFkbWluU2VydmljZTogRmllbGRBZG1pblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcHJpdmF0ZSB0b2FzdGVyOiBUb2FzdGVyU2VydmljZSxcbiAgICBwdWJsaWMgX2xvY2F0aW9uOiBMb2NhdGlvbixcbiAgICBwdWJsaWMgX0xvY2FsaXphdGlvblNlcnZpY2U6IExvY2FsaXphdGlvblNlcnZpY2UsXG4gICAgcHVibGljIF9DbXNBcGlTZXJ2aWNlOiBDbXNBcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICkgeyB9XG5cbiAgLyoq6KGo5Y2V5a6e5L2TICovXG4gIG5ld0VudGl0eTogRm9ybUdyb3VwIHwgdW5kZWZpbmVkXG5cbiAgLyoq5a2X5q61aWQgKi9cbiAgZmllbGRJZDogc3RyaW5nID0gJyc7XG5cbiAgLyoq5a2X5q616K+m5oOFICovXG4gIGZpZWxkRGV0YWlsczogYW55O1xuXG4gIC8qKuiOt+WPluaPkOS6pOaMiemSruabv+i6q++8jOeUqOS6juecn+WunuinpuWPkeihqOWNleaPkOS6pCAqL1xuICBAVmlld0NoaWxkKCdzdWJtaXRjbGljaycsIHsgc3RhdGljOiB0cnVlIH0pIHN1Ym1pdGNsaWNrOiBFbGVtZW50UmVmO1xuXG5cbiAgYXN5bmMgbmdPbkluaXQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgX2ZpZWxkSWQgPSB0aGlzLnJvdXRlLnNuYXBzaG90LnBhcmFtcy5pZDtcbiAgICBpZiAoX2ZpZWxkSWQpIHtcbiAgICAgIHRoaXMuZmllbGRJZCA9IF9maWVsZElkO1xuICAgICAgdGhpcy5uZXdFbnRpdHkgPSB0aGlzLmZiLmdyb3VwKG5ldyBDcmVhdGVPclVwZGF0ZUZpZWxkSW5wdXRCYXNlKCkpO1xuICAgICAgYXdhaXQgUHJvbWlzZS5hbGwoW1xuICAgICAgICB0aGlzLl9GaWVsZEFic3RyYWN0c1NlcnZpY2UuZ2V0RnJvbUNvbnRyb2xMaXN0KCksXG4gICAgICAgIHRoaXMuZ2V0RmllbGRFZGl0KCksXG4gICAgICBdKTtcbiAgICAgIHRoaXMubmV3RW50aXR5LnBhdGNoVmFsdWUoe1xuICAgICAgICAuLi50aGlzLmZpZWxkRGV0YWlscyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKuiOt+WPluWtl+auteivpuaDhSAqL1xuICBnZXRGaWVsZEVkaXQoKSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIHRoaXMuX0ZpZWxkQWRtaW5TZXJ2aWNlLmdldCh0aGlzLmZpZWxkSWQpLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgICByZXMuZ3JvdXBJZCA9IHJlcy5ncm91cElkID8gcmVzLmdyb3VwSWQgOiAnJ1xuICAgICAgICB0aGlzLmZpZWxkRGV0YWlscyA9IHJlc1xuICAgICAgICByZXNvbHZlKHJlcylcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxuXG4gIC8qKuinpuWPkeaPkOS6pOaMiemSriAqL1xuICBzdWJtaXRjbGlja0J0bigpIHtcbiAgICB0aGlzLnN1Ym1pdGNsaWNrLm5hdGl2ZUVsZW1lbnQuY2xpY2soKVxuICB9XG4gIHByaXZhdGUgX1VwZGF0ZUxpc3RTZXJ2aWNlPWluamVjdChVcGRhdGVMaXN0U2VydmljZSlcblxuICAvKirkv53lrZjooajljZUgKi9cbiAgc2F2ZSgpIHtcbiAgICBsZXQgaW5wdXQgPSB0aGlzLm5ld0VudGl0eS52YWx1ZVxuICAgIGlmICghdGhpcy5uZXdFbnRpdHkudmFsaWQpIHJldHVyblxuICAgIHRoaXMuX0ZpZWxkQWRtaW5TZXJ2aWNlLnVwZGF0ZSh0aGlzLmZpZWxkSWQsIGlucHV0KS5zdWJzY3JpYmUoKHJlcyA9PiB7XG4gICAgICB0aGlzLnRvYXN0ZXIuc3VjY2Vzcyh0aGlzLl9Mb2NhbGl6YXRpb25TZXJ2aWNlLmluc3RhbnQoYENtc0tpdDo6U2F2ZWRTdWNjZXNzZnVsbHlgKSk7XG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKCcnLCB7IHNraXBMb2NhdGlvbkNoYW5nZTogdHJ1ZSB9KS50aGVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2AvY21zL2FkbWluL2ZpZWxkc2BdKTtcbiAgICAgICAgdGhpcy5fVXBkYXRlTGlzdFNlcnZpY2UudXBkYXRlTGlzdCgpO1xuICAgICAgfSk7XG4gICAgfSkpXG4gIH1cblxuICBcblxufVxuIiwiPGZvcm0gY2xhc3M9XCJyb3cgZy0zIG5lZWRzLXZhbGlkYXRpb25cIiBbZm9ybUdyb3VwXT1cIm5ld0VudGl0eVwiIChuZ1N1Ym1pdCk9XCJzYXZlKClcIj5cbiAgICA8YWJwLXBhZ2UgW3RpdGxlXT1cIidDbXM6OkVkaXRGaWVsZCcgfCBhYnBMb2NhbGl6YXRpb25cIiBbdG9vbGJhcl09XCJ0cnVlXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjcmVhdGUtZmllbGQtcGFnZVwiPlxuICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgc3R5bGU9XCJkaXNwbGF5OiBub25lO1wiICNzdWJtaXRjbGljaz48L2J1dHRvbj5cbiAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cInAtMyBiZy13aGl0ZSByb3VuZGVkLTFcIj4gLS0+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHlcIj5cbiAgICAgICAgICAgICAgICAgICAgPGNtcy1jcmVhdGUtb3ItZWRpdC1maWVsZCBbRW50aXR5XT1cIm5ld0VudGl0eVwiIFtzZWxlY3RlZF09XCJmaWVsZERldGFpbHNcIj48L2Ntcy1jcmVhdGUtb3ItZWRpdC1maWVsZD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2FicC1wYWdlPlxuPC9mb3JtPiJdfQ==
@@ -1,124 +0,0 @@
1
- import { Component, EventEmitter, Output } from '@angular/core';
2
- import { Validators } from '@angular/forms';
3
- import { finalize } from 'rxjs/operators';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/forms";
6
- import * as i2 from "../../../proxy/admin/fields";
7
- import * as i3 from "@abp/ng.theme.shared";
8
- import * as i4 from "../../../services/field-abstracts.service";
9
- import * as i5 from "@abp/ng.core";
10
- import * as i6 from "@angular/common";
11
- import * as i7 from "@ngx-validate/core";
12
- class FieldGroupComponent {
13
- fb;
14
- _FieldGroupAdminService;
15
- toaster;
16
- confirmation;
17
- _FieldAbstractsService;
18
- _LocalizationService;
19
- constructor(fb, _FieldGroupAdminService, toaster, confirmation, _FieldAbstractsService, _LocalizationService) {
20
- this.fb = fb;
21
- this._FieldGroupAdminService = _FieldGroupAdminService;
22
- this.toaster = toaster;
23
- this.confirmation = confirmation;
24
- this._FieldAbstractsService = _FieldAbstractsService;
25
- this._LocalizationService = _LocalizationService;
26
- }
27
- /**创建分组表单 */
28
- createForm;
29
- /** 编辑分组表单*/
30
- editGroupForm;
31
- /**表单已存在的值 */
32
- selected = {};
33
- /**选择的字段分组id */
34
- fieldGroupId = '';
35
- /**创建分组模态框状态 */
36
- createGroupOpen = false;
37
- /**用于确定模态的繁忙状态是否为真 */
38
- modalBusy = false;
39
- /**编辑分组模态框状态 */
40
- editGroupOpen = false;
41
- /**点击分组回调 */
42
- OnGroupClickBack = new EventEmitter();
43
- ngOnInit() {
44
- this._FieldAbstractsService.getfieldGroupList();
45
- }
46
- /**创建字段分组 */
47
- createGroupBtn() {
48
- this.createGroupOpen = true;
49
- this.createForm = this.fb.group({
50
- name: ['', [Validators.required]],
51
- });
52
- }
53
- /**创建分组模态框状态改变 */
54
- createGroupVisibleChange(event) {
55
- if (!event) {
56
- return;
57
- }
58
- }
59
- /**编辑字段分组 */
60
- editGroupBtn(itemName) {
61
- this.editGroupOpen = true;
62
- this.editGroupForm = this.fb.group({
63
- name: [itemName, [Validators.required]],
64
- });
65
- }
66
- /**编辑分组模态框状态改变 */
67
- editGroupVisibleChange(event) {
68
- if (!event) {
69
- return;
70
- }
71
- }
72
- /**创建字段分组保存 */
73
- createSave() {
74
- let input = this.createForm.value;
75
- this.modalBusy = true;
76
- this._FieldGroupAdminService.create(input).pipe(finalize(() => {
77
- this.modalBusy = false;
78
- this.createGroupOpen = false;
79
- })).subscribe(res => {
80
- this.toaster.success(this._LocalizationService.instant(`CmsKit::SavedSuccessfully`));
81
- this._FieldAbstractsService.getfieldGroupList();
82
- });
83
- }
84
- /**编辑字段分组保存 */
85
- editSave() {
86
- let input = this.editGroupForm.value;
87
- this.modalBusy = true;
88
- this._FieldGroupAdminService.update(this.fieldGroupId, input).pipe(finalize(() => {
89
- this.modalBusy = false;
90
- this.editGroupOpen = false;
91
- })).subscribe(res => {
92
- this.toaster.success(this._LocalizationService.instant(`CmsKit::SavedSuccessfully`));
93
- this._FieldAbstractsService.getfieldGroupList();
94
- });
95
- }
96
- /**删除字段分组1 */
97
- deleteGroupbtn(fieldGroupitem) {
98
- this.confirmation.warn(fieldGroupitem.name, this._LocalizationService.instant(`AbpUi::ItemWillBeDeletedMessage`)).subscribe((status) => {
99
- if (status == 'confirm') {
100
- this._FieldGroupAdminService.delete(this.fieldGroupId).pipe(finalize(() => {
101
- })).subscribe(res => {
102
- this.toaster.success(this._LocalizationService.instant(`AbpUi::SuccessfullyDeleted`));
103
- this.fieldGroupId = '';
104
- this._FieldAbstractsService.getfieldGroupList();
105
- });
106
- }
107
- });
108
- }
109
- /**字段分组改变 */
110
- fieldGroupChange(event) {
111
- this.fieldGroupId = event;
112
- this.OnGroupClickBack.emit(event);
113
- }
114
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FieldGroupComponent, deps: [{ token: i1.FormBuilder }, { token: i2.FieldGroupAdminService }, { token: i3.ToasterService }, { token: i3.ConfirmationService }, { token: i4.FieldAbstractsService }, { token: i5.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
115
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FieldGroupComponent, selector: "cms-field-group", outputs: { OnGroupClickBack: "OnGroupClickBack" }, ngImport: i0, template: "<div class=\"card-header px-2 py-sm-2 d-flex justify-content-between align-items-center\">\n <h6 class=\"h6 mb-0\">{{'Cms::FieldGroup' | abpLocalization}}</h6>\n <button type=\"button\" class=\"btn btn-link btn-sm ms-2\"><i class=\"fas fa-plus-circle\" aria-hidden=\"true\"\n (click)=\"createGroupBtn()\"></i></button>\n</div>\n<div class=\"card-body p-0\">\n <div class=\"container-height overflow-auto\">\n <ul class=\"list-group list-group-flush\">\n <li class=\"list-group-item list-group-item-action active\" [class.active]=\"fieldGroupId===''\"\n (click)=\"fieldGroupChange('')\">{{'Cms::AllFields' | abpLocalization}}</li>\n <ng-container *ngFor=\"let item of _FieldAbstractsService.fieldGroupList\">\n <li class=\"list-group-item list-group-item-action d-flex justify-content-between align-items-center\"\n [class.active]=\"fieldGroupId===item.id\" (click)=\"fieldGroupChange(item.id)\">\n <div>{{item.name}}</div>\n <div *ngIf=\"fieldGroupId===item.id\">\n <i class=\"fas fa-trash px-1\" role=\"button\" (click.stop)=\"deleteGroupbtn(item)\"></i>\n <i class=\"fas fa-edit px-1\" role=\"button\" (click.stop)=\"editGroupBtn(item.name)\"></i>\n </div>\n </li>\n </ng-container>\n </ul>\n </div>\n</div>\n\n<abp-modal [(visible)]=\"createGroupOpen\" [busy]=\"modalBusy\" (visibleChange)=\"createGroupVisibleChange($event)\">\n <ng-template #abpHeader>\n <h3>{{'Cms::New' | abpLocalization}}</h3>\n </ng-template>\n <ng-template #abpBody>\n <ng-template #loaderRef>\n <div class=\"text-center\"><i class=\"fa fa-pulse fa-spinner\" aria-hidden=\"true\"></i></div>\n </ng-template>\n <form *ngIf=\"createForm; else loaderRef\" [formGroup]=\"createForm\" (ngSubmit)=\"createSave()\">\n <div class=\"mb-3\">\n <label for=\"exampleFormControlInput1\" class=\"form-label\">{{'Cms::Name' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" id=\"exampleFormControlInput1\" formControlName=\"name\"\n placeholder=\"\">\n </div>\n </form>\n </ng-template>\n\n <ng-template #abpFooter>\n <button type=\"button\" class=\"btn btn-secondary\" abpClose>{{'AbpUi::Close' | abpLocalization}}</button>\n <abp-button iconClass=\"fa fa-check\" [disabled]=\"createForm?.invalid\" (click)=\"createSave()\">{{'AbpUi::Save' | abpLocalization}}</abp-button>\n </ng-template>\n</abp-modal>\n\n<abp-modal [(visible)]=\"editGroupOpen\" [busy]=\"modalBusy\" (visibleChange)=\"editGroupVisibleChange($event)\">\n <ng-template #abpHeader>\n <h3>{{'AbpUi::Edit' | abpLocalization}}</h3>\n </ng-template>\n <ng-template #abpBody>\n <ng-template #loaderRef>\n <div class=\"text-center\"><i class=\"fa fa-pulse fa-spinner\" aria-hidden=\"true\"></i></div>\n </ng-template>\n <form *ngIf=\"editGroupForm; else loaderRef\" [formGroup]=\"editGroupForm\" (ngSubmit)=\"editSave()\">\n <div class=\"mb-3\">\n <label for=\"exampleFormControlInput1\" class=\"form-label\">{{'Cms::Name' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" id=\"exampleFormControlInput1\" formControlName=\"name\"\n placeholder=\"\">\n </div>\n </form>\n </ng-template>\n\n <ng-template #abpFooter>\n <button type=\"button\" class=\"btn btn-secondary\" abpClose>{{'AbpUi::Close' | abpLocalization}}</button>\n <abp-button iconClass=\"fa fa-check\" [disabled]=\"editGroupForm?.invalid\" (click)=\"editSave()\">{{'AbpUi::Save' | abpLocalization}}</abp-button>\n </ng-template>\n</abp-modal>", styles: [""], dependencies: [{ kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i5.FormSubmitDirective, selector: "form[ngSubmit][formGroup]", inputs: ["debounce", "notValidateOnSubmit", "markAsDirtyWhenSubmit"], outputs: ["ngSubmit"] }, { kind: "directive", type: i5.StopPropagationDirective, selector: "[click.stop]", outputs: ["click.stop"] }, { kind: "directive", type: i7.ValidationGroupDirective, selector: "[formGroup],[formGroupName]", exportAs: ["validationGroup"] }, { kind: "directive", type: i7.ValidationDirective, selector: "[formControl],[formControlName]", exportAs: ["validationDirective"] }, { kind: "component", type: i3.ButtonComponent, selector: "abp-button", inputs: ["buttonId", "buttonClass", "buttonType", "formName", "iconClass", "loading", "disabled", "attributes"], outputs: ["click", "focus", "blur", "abpClick", "abpFocus", "abpBlur"] }, { kind: "component", type: i3.ModalComponent, selector: "abp-modal", inputs: ["visible", "busy", "options", "suppressUnsavedChangesWarning"], outputs: ["visibleChange", "init", "appear", "disappear"] }, { kind: "directive", type: i3.ModalCloseDirective, selector: "[abpClose]" }, { kind: "pipe", type: i5.LocalizationPipe, name: "abpLocalization" }] });
116
- }
117
- export { FieldGroupComponent };
118
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FieldGroupComponent, decorators: [{
119
- type: Component,
120
- args: [{ selector: 'cms-field-group', template: "<div class=\"card-header px-2 py-sm-2 d-flex justify-content-between align-items-center\">\n <h6 class=\"h6 mb-0\">{{'Cms::FieldGroup' | abpLocalization}}</h6>\n <button type=\"button\" class=\"btn btn-link btn-sm ms-2\"><i class=\"fas fa-plus-circle\" aria-hidden=\"true\"\n (click)=\"createGroupBtn()\"></i></button>\n</div>\n<div class=\"card-body p-0\">\n <div class=\"container-height overflow-auto\">\n <ul class=\"list-group list-group-flush\">\n <li class=\"list-group-item list-group-item-action active\" [class.active]=\"fieldGroupId===''\"\n (click)=\"fieldGroupChange('')\">{{'Cms::AllFields' | abpLocalization}}</li>\n <ng-container *ngFor=\"let item of _FieldAbstractsService.fieldGroupList\">\n <li class=\"list-group-item list-group-item-action d-flex justify-content-between align-items-center\"\n [class.active]=\"fieldGroupId===item.id\" (click)=\"fieldGroupChange(item.id)\">\n <div>{{item.name}}</div>\n <div *ngIf=\"fieldGroupId===item.id\">\n <i class=\"fas fa-trash px-1\" role=\"button\" (click.stop)=\"deleteGroupbtn(item)\"></i>\n <i class=\"fas fa-edit px-1\" role=\"button\" (click.stop)=\"editGroupBtn(item.name)\"></i>\n </div>\n </li>\n </ng-container>\n </ul>\n </div>\n</div>\n\n<abp-modal [(visible)]=\"createGroupOpen\" [busy]=\"modalBusy\" (visibleChange)=\"createGroupVisibleChange($event)\">\n <ng-template #abpHeader>\n <h3>{{'Cms::New' | abpLocalization}}</h3>\n </ng-template>\n <ng-template #abpBody>\n <ng-template #loaderRef>\n <div class=\"text-center\"><i class=\"fa fa-pulse fa-spinner\" aria-hidden=\"true\"></i></div>\n </ng-template>\n <form *ngIf=\"createForm; else loaderRef\" [formGroup]=\"createForm\" (ngSubmit)=\"createSave()\">\n <div class=\"mb-3\">\n <label for=\"exampleFormControlInput1\" class=\"form-label\">{{'Cms::Name' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" id=\"exampleFormControlInput1\" formControlName=\"name\"\n placeholder=\"\">\n </div>\n </form>\n </ng-template>\n\n <ng-template #abpFooter>\n <button type=\"button\" class=\"btn btn-secondary\" abpClose>{{'AbpUi::Close' | abpLocalization}}</button>\n <abp-button iconClass=\"fa fa-check\" [disabled]=\"createForm?.invalid\" (click)=\"createSave()\">{{'AbpUi::Save' | abpLocalization}}</abp-button>\n </ng-template>\n</abp-modal>\n\n<abp-modal [(visible)]=\"editGroupOpen\" [busy]=\"modalBusy\" (visibleChange)=\"editGroupVisibleChange($event)\">\n <ng-template #abpHeader>\n <h3>{{'AbpUi::Edit' | abpLocalization}}</h3>\n </ng-template>\n <ng-template #abpBody>\n <ng-template #loaderRef>\n <div class=\"text-center\"><i class=\"fa fa-pulse fa-spinner\" aria-hidden=\"true\"></i></div>\n </ng-template>\n <form *ngIf=\"editGroupForm; else loaderRef\" [formGroup]=\"editGroupForm\" (ngSubmit)=\"editSave()\">\n <div class=\"mb-3\">\n <label for=\"exampleFormControlInput1\" class=\"form-label\">{{'Cms::Name' | abpLocalization}}</label>\n <input type=\"text\" class=\"form-control\" id=\"exampleFormControlInput1\" formControlName=\"name\"\n placeholder=\"\">\n </div>\n </form>\n </ng-template>\n\n <ng-template #abpFooter>\n <button type=\"button\" class=\"btn btn-secondary\" abpClose>{{'AbpUi::Close' | abpLocalization}}</button>\n <abp-button iconClass=\"fa fa-check\" [disabled]=\"editGroupForm?.invalid\" (click)=\"editSave()\">{{'AbpUi::Save' | abpLocalization}}</abp-button>\n </ng-template>\n</abp-modal>" }]
121
- }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.FieldGroupAdminService }, { type: i3.ToasterService }, { type: i3.ConfirmationService }, { type: i4.FieldAbstractsService }, { type: i5.LocalizationService }]; }, propDecorators: { OnGroupClickBack: [{
122
- type: Output
123
- }] } });
124
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21zL3NyYy9saWIvY29tcG9uZW50cy9hZG1pbi9maWVsZHMvZmllbGQtZ3JvdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21zL3NyYy9saWIvY29tcG9uZW50cy9hZG1pbi9maWVsZHMvZmllbGQtZ3JvdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBMEIsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHcEUsT0FBTyxFQUFFLFFBQVEsRUFBQyxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7QUFJekMsTUFLYSxtQkFBbUI7SUFFcEI7SUFDQTtJQUNBO0lBQ0E7SUFDRDtJQUNBO0lBTlQsWUFDVSxFQUFlLEVBQ2YsdUJBQStDLEVBQy9DLE9BQXVCLEVBQ3ZCLFlBQWlDLEVBQ2xDLHNCQUE2QyxFQUM3QyxvQkFBeUM7UUFMeEMsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUNmLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBd0I7UUFDL0MsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFDdkIsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBQ2xDLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBdUI7UUFDN0MseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFxQjtJQUM5QyxDQUFDO0lBR0wsWUFBWTtJQUNaLFVBQVUsQ0FBd0I7SUFFbEMsWUFBWTtJQUNaLGFBQWEsQ0FBd0I7SUFFckMsYUFBYTtJQUNiLFFBQVEsR0FBRyxFQUFTLENBQUM7SUFFckIsZUFBZTtJQUNmLFlBQVksR0FBdUIsRUFBRSxDQUFBO0lBRXJDLGVBQWU7SUFDZixlQUFl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QUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUNwQixjQUFjLENBQUMsSUFBSSxFQUNuQixJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLGlDQUFpQyxDQUFDLENBQ3JFLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBMkIsRUFBRSxFQUFFO1lBQzFDLElBQUksTUFBTSxJQUFJLFNBQVMsRUFBRTtnQkFDdkIsSUFBSSxDQUFDLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUU7Z0JBQzFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO29CQUNsQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLDRCQUE0QixDQUFDLENBQUMsQ0FBQztvQkFDdEYsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUE7b0JBQ3RCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxpQkFBaUIsRUFBRSxDQUFBO2dCQUNqRCxDQUFDLENBQUMsQ0FBQTthQUNIO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsWUFBWTtJQUNaLGdCQUFnQixDQUFDLEtBQUs7UUFDcEIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUE7UUFDekIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNuQyxDQUFDO3dHQXBIVSxtQkFBbUI7NEZBQW5CLG1CQUFtQiwwR0NiaEMsdzBIQW9FWTs7U0R2REMsbUJBQW1COzRGQUFuQixtQkFBbUI7a0JBTC9CLFNBQVM7K0JBQ0UsaUJBQWlCOzRRQXFDakIsZ0JBQWdCO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRmllbGRHcm91cEFkbWluU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3Byb3h5L2FkbWluL2ZpZWxkcyc7XG5pbXBvcnQgeyBDb25maXJtYXRpb24sIENvbmZpcm1hdGlvblNlcnZpY2UsIFRvYXN0ZXJTZXJ2aWNlIH0gZnJvbSAnQGFicC9uZy50aGVtZS5zaGFyZWQnO1xuaW1wb3J0IHsgZmluYWxpemV9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEZpZWxkQWJzdHJhY3RzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2ZpZWxkLWFic3RyYWN0cy5zZXJ2aWNlJztcbmltcG9ydCB7IExvY2FsaXphdGlvblNlcnZpY2UgfSBmcm9tICdAYWJwL25nLmNvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjbXMtZmllbGQtZ3JvdXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmllbGQtZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWVsZC1ncm91cC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZpZWxkR3JvdXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZiOiBGb3JtQnVpbGRlcixcbiAgICBwcml2YXRlIF9GaWVsZEdyb3VwQWRtaW5TZXJ2aWNlOiBGaWVsZEdyb3VwQWRtaW5TZXJ2aWNlLFxuICAgIHByaXZhdGUgdG9hc3RlcjogVG9hc3RlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maXJtYXRpb246IENvbmZpcm1hdGlvblNlcnZpY2UsXG4gICAgcHVibGljIF9GaWVsZEFic3RyYWN0c1NlcnZpY2U6IEZpZWxkQWJzdHJhY3RzU2VydmljZSxcbiAgICBwdWJsaWMgX0xvY2FsaXphdGlvblNlcnZpY2U6IExvY2FsaXphdGlvblNlcnZpY2UsXG4gICkgeyB9XG5cblxuICAvKirliJvlu7rliIbnu4TooajljZUgKi9cbiAgY3JlYXRlRm9ybTogRm9ybUdyb3VwIHwgdW5kZWZpbmVkO1xuXG4gIC8qKiDnvJbovpHliIbnu4TooajljZUqL1xuICBlZGl0R3JvdXBGb3JtOiBGb3JtR3JvdXAgfCB1bmRlZmluZWQ7XG5cbiAgLyoq6KGo5Y2V5bey5a2Y5Zyo55qE5YC8ICovXG4gIHNlbGVjdGVkID0ge30gYXMgYW55O1xuXG4gIC8qKumAieaLqeeahOWtl+auteWIhue7hGlkICovXG4gIGZpZWxkR3JvdXBJZDogc3RyaW5nIHwgdW5kZWZpbmVkID0gJydcblxuICAvKirliJvlu7rliIbnu4TmqKHmgIHmoYbnirbmgIEgKi9cbiAgY3JlYXRlR3JvdXBPcGVuID0gZmFsc2VcblxuICAvKirnlKjkuo7noa7lrprmqKHmgIHnmoTnuYHlv5nnirbmgIHmmK/lkKbkuLrnnJ8gKi9cbiAgbW9kYWxCdXN5OiBib29sZWFuID0gZmFsc2VcblxuICAvKirnvJbovpHliIbnu4TmqKHmgIHmoYbnirbmgIEgKi9cbiAgZWRpdEdyb3VwT3BlbjogYm9vbGVhbiA9IGZhbHNlXG5cbiAgLyoq54K55Ye75YiG57uE5Zue6LCDICovXG4gIEBPdXRwdXQoKSBPbkdyb3VwQ2xpY2tCYWNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX0ZpZWxkQWJzdHJhY3RzU2VydmljZS5nZXRmaWVsZEdyb3VwTGlzdCgpXG4gIH1cblxuICAvKirliJvlu7rlrZfmrrXliIbnu4QgKi9cbiAgY3JlYXRlR3JvdXBCdG4oKSB7XG4gICAgdGhpcy5jcmVhdGVHcm91cE9wZW4gPSB0cnVlXG4gICAgdGhpcy5jcmVhdGVGb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBuYW1lOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgfSlcbiAgfVxuXG4gIC8qKuWIm+W7uuWIhue7hOaooeaAgeahhueKtuaAgeaUueWPmCAqL1xuICBjcmVhdGVHcm91cFZpc2libGVDaGFuZ2UoZXZlbnQpIHtcbiAgICBpZiAoIWV2ZW50KSB7XG4gICAgICByZXR1cm5cbiAgICB9XG4gIH1cblxuICAvKirnvJbovpHlrZfmrrXliIbnu4QgKi9cbiAgZWRpdEdyb3VwQnRuKGl0ZW1OYW1lOiBzdHJpbmcpIHtcbiAgICB0aGlzLmVkaXRHcm91cE9wZW4gPSB0cnVlXG4gICAgdGhpcy5lZGl0R3JvdXBGb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBuYW1lOiBbaXRlbU5hbWUsIFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXG4gICAgfSlcbiAgfVxuXG4gIC8qKue8lui+keWIhue7hOaooeaAgeahhueKtuaAgeaUueWPmCAqL1xuICBlZGl0R3JvdXBWaXNpYmxlQ2hhbmdlKGV2ZW50KSB7XG4gICAgaWYgKCFldmVudCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuICB9XG5cbiAgLyoq5Yib5bu65a2X5q615YiG57uE5L+d5a2YICovXG4gIGNyZWF0ZVNhdmUoKSB7XG4gICAgbGV0IGlucHV0ID0gdGhpcy5jcmVhdGVGb3JtLnZhbHVlXG4gICAgdGhpcy5tb2RhbEJ1c3kgPSB0cnVlXG4gICAgdGhpcy5fRmllbGRHcm91cEFkbWluU2VydmljZS5jcmVhdGUoaW5wdXQpLnBpcGUoZmluYWxpemUoKCkgPT4ge1xuICAgICAgdGhpcy5tb2RhbEJ1c3kgPSBmYWxzZVxuICAgICAgdGhpcy5jcmVhdGVHcm91cE9wZW4gPSBmYWxzZVxuICAgIH0pKS5zdWJzY3JpYmUocmVzID0+IHtcbiAgICAgIHRoaXMudG9hc3Rlci5zdWNjZXNzKHRoaXMuX0xvY2FsaXphdGlvblNlcnZpY2UuaW5zdGFudChgQ21zS2l0OjpTYXZlZFN1Y2Nlc3NmdWxseWApKTtcbiAgICAgIHRoaXMuX0ZpZWxkQWJzdHJhY3RzU2VydmljZS5nZXRmaWVsZEdyb3VwTGlzdCgpXG4gICAgfSlcbiAgfVxuXG4gIC8qKue8lui+keWtl+auteWIhue7hOS/neWtmCAqL1xuICBlZGl0U2F2ZSgpIHtcbiAgICBsZXQgaW5wdXQgPSB0aGlzLmVkaXRHcm91cEZvcm0udmFsdWVcbiAgICB0aGlzLm1vZGFsQnVzeSA9IHRydWVcbiAgICB0aGlzLl9GaWVsZEdyb3VwQWRtaW5TZXJ2aWNlLnVwZGF0ZSh0aGlzLmZpZWxkR3JvdXBJZCwgaW5wdXQpLnBpcGUoZmluYWxpemUoKCkgPT4ge1xuICAgICAgdGhpcy5tb2RhbEJ1c3kgPSBmYWxzZVxuICAgICAgdGhpcy5lZGl0R3JvdXBPcGVuID0gZmFsc2VcbiAgICB9KSkuc3Vic2NyaWJlKHJlcyA9PiB7XG4gICAgICB0aGlzLnRvYXN0ZXIuc3VjY2Vzcyh0aGlzLl9Mb2NhbGl6YXRpb25TZXJ2aWNlLmluc3RhbnQoYENtc0tpdDo6U2F2ZWRTdWNjZXNzZnVsbHlgKSk7XG4gICAgICB0aGlzLl9GaWVsZEFic3RyYWN0c1NlcnZpY2UuZ2V0ZmllbGRHcm91cExpc3QoKVxuICAgIH0pXG4gIH1cblxuICAvKirliKDpmaTlrZfmrrXliIbnu4QxICovXG4gIGRlbGV0ZUdyb3VwYnRuKGZpZWxkR3JvdXBpdGVtOiBhbnkpIHtcbiAgICB0aGlzLmNvbmZpcm1hdGlvbi53YXJuKFxuICAgICAgZmllbGRHcm91cGl0ZW0ubmFtZSxcbiAgICAgIHRoaXMuX0xvY2FsaXphdGlvblNlcnZpY2UuaW5zdGFudChgQWJwVWk6Okl0ZW1XaWxsQmVEZWxldGVkTWVzc2FnZWApLFxuICAgICkuc3Vic2NyaWJlKChzdGF0dXM6IENvbmZpcm1hdGlvbi5TdGF0dXMpID0+IHtcbiAgICAgIGlmIChzdGF0dXMgPT0gJ2NvbmZpcm0nKSB7XG4gICAgICAgIHRoaXMuX0ZpZWxkR3JvdXBBZG1pblNlcnZpY2UuZGVsZXRlKHRoaXMuZmllbGRHcm91cElkKS5waXBlKGZpbmFsaXplKCgpID0+IHtcbiAgICAgICAgfSkpLnN1YnNjcmliZShyZXMgPT4ge1xuICAgICAgICAgIHRoaXMudG9hc3Rlci5zdWNjZXNzKHRoaXMuX0xvY2FsaXphdGlvblNlcnZpY2UuaW5zdGFudChgQWJwVWk6OlN1Y2Nlc3NmdWxseURlbGV0ZWRgKSk7XG4gICAgICAgICAgdGhpcy5maWVsZEdyb3VwSWQgPSAnJ1xuICAgICAgICAgIHRoaXMuX0ZpZWxkQWJzdHJhY3RzU2VydmljZS5nZXRmaWVsZEdyb3VwTGlzdCgpXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKirlrZfmrrXliIbnu4TmlLnlj5ggKi9cbiAgZmllbGRHcm91cENoYW5nZShldmVudCkge1xuICAgIHRoaXMuZmllbGRHcm91cElkID0gZXZlbnRcbiAgICB0aGlzLk9uR3JvdXBDbGlja0JhY2suZW1pdChldmVudClcbiAgfVxuXG59XG4iLCI8ZGl2IGNsYXNzPVwiY2FyZC1oZWFkZXIgcHgtMiBweS1zbS0yIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICA8aDYgY2xhc3M9XCJoNiBtYi0wXCI+e3snQ21zOjpGaWVsZEdyb3VwJyB8IGFicExvY2FsaXphdGlvbn19PC9oNj5cbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tbGluayBidG4tc20gbXMtMlwiPjxpIGNsYXNzPVwiZmFzIGZhLXBsdXMtY2lyY2xlXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgIChjbGljayk9XCJjcmVhdGVHcm91cEJ0bigpXCI+PC9pPjwvYnV0dG9uPlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHAtMFwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItaGVpZ2h0IG92ZXJmbG93LWF1dG9cIj5cbiAgICAgICAgPHVsIGNsYXNzPVwibGlzdC1ncm91cCBsaXN0LWdyb3VwLWZsdXNoXCI+XG4gICAgICAgICAgICA8bGkgY2xhc3M9XCJsaXN0LWdyb3VwLWl0ZW0gbGlzdC1ncm91cC1pdGVtLWFjdGlvbiBhY3RpdmVcIiBbY2xhc3MuYWN0aXZlXT1cImZpZWxkR3JvdXBJZD09PScnXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiZmllbGRHcm91cENoYW5nZSgnJylcIj57eydDbXM6OkFsbEZpZWxkcycgfCBhYnBMb2NhbGl6YXRpb259fTwvbGk+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIF9GaWVsZEFic3RyYWN0c1NlcnZpY2UuZmllbGRHcm91cExpc3RcIj5cbiAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJsaXN0LWdyb3VwLWl0ZW0gbGlzdC1ncm91cC1pdGVtLWFjdGlvbiBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJmaWVsZEdyb3VwSWQ9PT1pdGVtLmlkXCIgKGNsaWNrKT1cImZpZWxkR3JvdXBDaGFuZ2UoaXRlbS5pZClcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdj57e2l0ZW0ubmFtZX19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJmaWVsZEdyb3VwSWQ9PT1pdGVtLmlkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS10cmFzaCBweC0xXCIgcm9sZT1cImJ1dHRvblwiIChjbGljay5zdG9wKT1cImRlbGV0ZUdyb3VwYnRuKGl0ZW0pXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtZWRpdCBweC0xXCIgcm9sZT1cImJ1dHRvblwiIChjbGljay5zdG9wKT1cImVkaXRHcm91cEJ0bihpdGVtLm5hbWUpXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvdWw+XG4gICAgPC9kaXY+XG48L2Rpdj5cblxuPGFicC1tb2RhbCBbKHZpc2libGUpXT1cImNyZWF0ZUdyb3VwT3BlblwiIFtidXN5XT1cIm1vZGFsQnVzeVwiICh2aXNpYmxlQ2hhbmdlKT1cImNyZWF0ZUdyb3VwVmlzaWJsZUNoYW5nZSgkZXZlbnQpXCI+XG4gICAgPG5nLXRlbXBsYXRlICNhYnBIZWFkZXI+XG4gICAgICAgIDxoMz57eydDbXM6Ok5ldycgfCBhYnBMb2NhbGl6YXRpb259fTwvaDM+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI2FicEJvZHk+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjbG9hZGVyUmVmPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtY2VudGVyXCI+PGkgY2xhc3M9XCJmYSBmYS1wdWxzZSBmYS1zcGlubmVyXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPjwvZGl2PlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8Zm9ybSAqbmdJZj1cImNyZWF0ZUZvcm07IGVsc2UgbG9hZGVyUmVmXCIgW2Zvcm1Hcm91cF09XCJjcmVhdGVGb3JtXCIgKG5nU3VibWl0KT1cImNyZWF0ZVNhdmUoKVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZXhhbXBsZUZvcm1Db250cm9sSW5wdXQxXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3snQ21zOjpOYW1lJyB8IGFicExvY2FsaXphdGlvbn19PC9sYWJlbD5cbiAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwiZXhhbXBsZUZvcm1Db250cm9sSW5wdXQxXCIgZm9ybUNvbnRyb2xOYW1lPVwibmFtZVwiXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiXCI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9mb3JtPlxuICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICA8bmctdGVtcGxhdGUgI2FicEZvb3Rlcj5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIGFicENsb3NlPnt7J0FicFVpOjpDbG9zZScgfCBhYnBMb2NhbGl6YXRpb259fTwvYnV0dG9uPlxuICAgICAgICA8YWJwLWJ1dHRvbiBpY29uQ2xhc3M9XCJmYSBmYS1jaGVja1wiIFtkaXNhYmxlZF09XCJjcmVhdGVGb3JtPy5pbnZhbGlkXCIgKGNsaWNrKT1cImNyZWF0ZVNhdmUoKVwiPnt7J0FicFVpOjpTYXZlJyB8IGFicExvY2FsaXphdGlvbn19PC9hYnAtYnV0dG9uPlxuICAgIDwvbmctdGVtcGxhdGU+XG48L2FicC1tb2RhbD5cblxuPGFicC1tb2RhbCBbKHZpc2libGUpXT1cImVkaXRHcm91cE9wZW5cIiBbYnVzeV09XCJtb2RhbEJ1c3lcIiAodmlzaWJsZUNoYW5nZSk9XCJlZGl0R3JvdXBWaXNpYmxlQ2hhbmdlKCRldmVudClcIj5cbiAgICA8bmctdGVtcGxhdGUgI2FicEhlYWRlcj5cbiAgICAgICAgPGgzPnt7J0FicFVpOjpFZGl0JyB8IGFicExvY2FsaXphdGlvbn19PC9oMz5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSAjYWJwQm9keT5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNsb2FkZXJSZWY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1jZW50ZXJcIj48aSBjbGFzcz1cImZhIGZhLXB1bHNlIGZhLXNwaW5uZXJcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+PC9kaXY+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDxmb3JtICpuZ0lmPVwiZWRpdEdyb3VwRm9ybTsgZWxzZSBsb2FkZXJSZWZcIiBbZm9ybUdyb3VwXT1cImVkaXRHcm91cEZvcm1cIiAobmdTdWJtaXQpPVwiZWRpdFNhdmUoKVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiZXhhbXBsZUZvcm1Db250cm9sSW5wdXQxXCIgY2xhc3M9XCJmb3JtLWxhYmVsXCI+e3snQ21zOjpOYW1lJyB8IGFicExvY2FsaXphdGlvbn19PC9sYWJlbD5cbiAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwiZXhhbXBsZUZvcm1Db250cm9sSW5wdXQxXCIgZm9ybUNvbnRyb2xOYW1lPVwibmFtZVwiXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiXCI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9mb3JtPlxuICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICA8bmctdGVtcGxhdGUgI2FicEZvb3Rlcj5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gYnRuLXNlY29uZGFyeVwiIGFicENsb3NlPnt7J0FicFVpOjpDbG9zZScgfCBhYnBMb2NhbGl6YXRpb259fTwvYnV0dG9uPlxuICAgICAgICA8YWJwLWJ1dHRvbiBpY29uQ2xhc3M9XCJmYSBmYS1jaGVja1wiIFtkaXNhYmxlZF09XCJlZGl0R3JvdXBGb3JtPy5pbnZhbGlkXCIgKGNsaWNrKT1cImVkaXRTYXZlKClcIj57eydBYnBVaTo6U2F2ZScgfCBhYnBMb2NhbGl6YXRpb259fTwvYWJwLWJ1dHRvbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuPC9hYnAtbW9kYWw+Il19