@mediusinc/mng-commons 0.0.1-rc.4 → 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (453) hide show
  1. package/README.md +95 -0
  2. package/assets/i18n/en.json +54 -3
  3. package/assets/i18n/sl.json +54 -8
  4. package/assets/images/effect-ondark.png +0 -0
  5. package/assets/images/effect-ondark.svg +38 -0
  6. package/assets/images/effect-ondark@2x.png +0 -0
  7. package/assets/images/effect-onlight.png +0 -0
  8. package/assets/images/effect-onlight.svg +38 -0
  9. package/assets/images/effect-onlight@2x.png +0 -0
  10. package/assets/images/pages/exception-ondark.png +0 -0
  11. package/assets/images/pages/exception-onlight.png +0 -0
  12. package/assets/images/pages/login-ondark.png +0 -0
  13. package/assets/images/pages/login-onlight.png +0 -0
  14. package/esm2020/lib/api/models/builders/query-param.builder.mjs +48 -48
  15. package/esm2020/lib/api/models/filter-match-type.model.mjs +26 -24
  16. package/esm2020/lib/api/models/filter-param.model.mjs +46 -46
  17. package/esm2020/lib/api/models/index.mjs +9 -9
  18. package/esm2020/lib/api/models/mappers.mjs +17 -17
  19. package/esm2020/lib/api/models/query-mode.model.mjs +19 -19
  20. package/esm2020/lib/api/models/query-param.model.mjs +69 -69
  21. package/esm2020/lib/api/models/query-result.model.mjs +45 -45
  22. package/esm2020/lib/api/models/serialization.model.mjs +2 -2
  23. package/esm2020/lib/api/services/crud-api.abstract.service.mjs +72 -0
  24. package/esm2020/lib/api/services/index.mjs +2 -2
  25. package/esm2020/lib/api/utils/index.mjs +3 -3
  26. package/esm2020/lib/api/utils/medius-rest.util.mjs +122 -70
  27. package/esm2020/lib/api/utils/object-serializer.util.mjs +226 -226
  28. package/esm2020/lib/components/action/action.component.mjs +65 -63
  29. package/esm2020/lib/components/action/dialog/action-dialog.component.mjs +148 -157
  30. package/esm2020/lib/components/action/index.mjs +4 -4
  31. package/esm2020/lib/components/action/models/action-confirmation-service.model.mjs +2 -0
  32. package/esm2020/lib/components/action/models/action-execution.model.mjs +58 -0
  33. package/esm2020/lib/components/action/models/index.mjs +3 -0
  34. package/esm2020/lib/components/action/route/action-route.component.mjs +144 -144
  35. package/esm2020/lib/components/form/autocomplete/autocomplete.component.mjs +114 -0
  36. package/esm2020/lib/components/form/dropdown/dropdown.component.mjs +113 -0
  37. package/esm2020/lib/components/form/editor/form-editor.component.mjs +141 -142
  38. package/esm2020/lib/components/form/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +19 -58
  39. package/esm2020/lib/components/form/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +19 -51
  40. package/esm2020/lib/components/form/formly/fields/formly-field-fieldset/formly-field-fieldset.component.mjs +16 -16
  41. package/esm2020/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.mjs +26 -26
  42. package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +109 -109
  43. package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +122 -122
  44. package/esm2020/lib/components/form/formly/fields/formly-field-tabs/formly-field-tabs.component.mjs +17 -17
  45. package/esm2020/lib/components/form/formly/fields/index.mjs +8 -8
  46. package/esm2020/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +17 -17
  47. package/esm2020/lib/components/form/formly/wrappers/formly-table-wrapper/formly-table-wrapper.component.mjs +16 -16
  48. package/esm2020/lib/components/form/formly/wrappers/index.mjs +3 -3
  49. package/esm2020/lib/components/form/index.mjs +4 -2
  50. package/esm2020/lib/components/form/models/form-editor.event.mjs +7 -0
  51. package/esm2020/lib/components/form/models/index.mjs +2 -0
  52. package/esm2020/lib/components/layout/breadcrumb.component.mjs +17 -0
  53. package/esm2020/lib/components/layout/footer.component.mjs +17 -0
  54. package/esm2020/lib/components/layout/index.mjs +7 -7
  55. package/esm2020/lib/components/layout/main-layout.component.mjs +54 -0
  56. package/esm2020/lib/components/layout/menu-item.component.mjs +173 -0
  57. package/esm2020/lib/components/layout/menu.component.mjs +20 -0
  58. package/esm2020/lib/components/layout/services/index.mjs +2 -0
  59. package/esm2020/lib/components/layout/services/main-layout.component.service.mjs +190 -0
  60. package/esm2020/lib/components/layout/topbar.component.mjs +59 -0
  61. package/esm2020/lib/components/tableview/index.mjs +6 -4
  62. package/esm2020/lib/components/tableview/models/index.mjs +2 -0
  63. package/esm2020/lib/components/tableview/models/table.event.mjs +16 -0
  64. package/esm2020/lib/components/tableview/route/tableview-route.abstract.component.mjs +24 -24
  65. package/esm2020/lib/components/tableview/services/index.mjs +2 -0
  66. package/esm2020/lib/components/tableview/services/tableview.component.service.mjs +17 -0
  67. package/esm2020/lib/components/tableview/table/column-filter/column-filter.component.mjs +74 -0
  68. package/esm2020/lib/components/tableview/table/column-value/column-value.component.mjs +25 -0
  69. package/esm2020/lib/components/tableview/table/table.component.mjs +307 -173
  70. package/esm2020/lib/components/tableview/tableview.component.mjs +82 -83
  71. package/esm2020/lib/config/formly.config.mjs +136 -136
  72. package/esm2020/lib/config/index.mjs +2 -2
  73. package/esm2020/lib/config/models/index.mjs +2 -0
  74. package/esm2020/lib/config/models/mng-config.model.mjs +2 -0
  75. package/esm2020/lib/data-providers/base.data-provider.mjs +24 -0
  76. package/esm2020/lib/data-providers/editor.data-provider.mjs +37 -0
  77. package/esm2020/lib/data-providers/index.mjs +6 -0
  78. package/esm2020/lib/data-providers/lookup.data-provider.mjs +16 -0
  79. package/esm2020/lib/data-providers/table.data-provider.mjs +2 -0
  80. package/esm2020/lib/data-providers/tableview.data-provider.mjs +17 -0
  81. package/esm2020/lib/descriptors/action.descriptor.mjs +332 -0
  82. package/esm2020/lib/descriptors/editor.descriptor.mjs +670 -0
  83. package/esm2020/lib/descriptors/field.validator.mjs +21 -0
  84. package/esm2020/lib/descriptors/index.mjs +8 -0
  85. package/esm2020/lib/descriptors/lookup.descriptor.mjs +2 -0
  86. package/esm2020/lib/descriptors/model.descriptor.mjs +34 -0
  87. package/esm2020/lib/descriptors/table.descriptor.mjs +401 -0
  88. package/esm2020/lib/descriptors/tableview.descriptor.mjs +131 -0
  89. package/esm2020/lib/directives/component.directive.mjs +23 -0
  90. package/esm2020/lib/directives/index.mjs +3 -2
  91. package/esm2020/lib/directives/template.directive.mjs +29 -25
  92. package/esm2020/lib/mng-commons.module.mjs +410 -313
  93. package/esm2020/lib/models/index.mjs +3 -0
  94. package/esm2020/lib/models/router.model.mjs +2 -0
  95. package/esm2020/lib/models/user.model.mjs +2 -0
  96. package/esm2020/lib/pipes/boolean.pipe.mjs +22 -0
  97. package/esm2020/lib/pipes/index.mjs +3 -2
  98. package/esm2020/lib/pipes/property-path.pipe.mjs +36 -36
  99. package/esm2020/lib/services/action.service.mjs +269 -269
  100. package/esm2020/lib/services/commons.service.mjs +354 -0
  101. package/esm2020/lib/services/configuration.service.mjs +78 -77
  102. package/esm2020/lib/services/index.mjs +5 -7
  103. package/esm2020/lib/services/navigation.service.mjs +48 -49
  104. package/esm2020/lib/services/providers/commons-init.provider.mjs +4 -0
  105. package/esm2020/lib/services/providers/config-service.provider.mjs +20 -12
  106. package/esm2020/lib/services/providers/formly-config.provider.mjs +31 -31
  107. package/esm2020/lib/services/providers/index.mjs +4 -3
  108. package/esm2020/lib/services/tokens/browser-storage.token.mjs +6 -0
  109. package/esm2020/lib/services/tokens/index.mjs +3 -0
  110. package/esm2020/lib/services/tokens/module-config.token.mjs +3 -0
  111. package/esm2020/lib/types/index.mjs +3 -0
  112. package/esm2020/lib/types/type.decorator.mjs +7 -0
  113. package/esm2020/lib/types/type.model.mjs +2 -0
  114. package/esm2020/lib/utils/editor-formly.util.mjs +176 -176
  115. package/esm2020/lib/utils/i18n.util.mjs +125 -91
  116. package/esm2020/lib/utils/index.mjs +6 -5
  117. package/esm2020/lib/utils/model.util.mjs +57 -38
  118. package/esm2020/lib/utils/toast.util.mjs +39 -26
  119. package/esm2020/lib/utils/type.util.mjs +39 -39
  120. package/esm2020/mediusinc-mng-commons.mjs +5 -5
  121. package/esm2020/public-api.mjs +36 -33
  122. package/fesm2015/mediusinc-mng-commons.mjs +6093 -5081
  123. package/fesm2015/mediusinc-mng-commons.mjs.map +1 -1
  124. package/fesm2020/mediusinc-mng-commons.mjs +6018 -5030
  125. package/fesm2020/mediusinc-mng-commons.mjs.map +1 -1
  126. package/lib/api/models/builders/query-param.builder.d.ts +11 -11
  127. package/lib/api/models/filter-match-type.model.d.ts +23 -21
  128. package/lib/api/models/filter-param.model.d.ts +23 -23
  129. package/lib/api/models/index.d.ts +8 -8
  130. package/lib/api/models/mappers.d.ts +6 -6
  131. package/lib/api/models/query-mode.model.d.ts +16 -16
  132. package/lib/api/models/query-param.model.d.ts +31 -31
  133. package/lib/api/models/query-result.model.d.ts +36 -36
  134. package/lib/api/models/serialization.model.d.ts +8 -8
  135. package/lib/api/services/{abstract-crud-api.service.d.ts → crud-api.abstract.service.d.ts} +23 -23
  136. package/lib/api/services/index.d.ts +1 -1
  137. package/lib/api/utils/index.d.ts +2 -2
  138. package/lib/api/utils/medius-rest.util.d.ts +12 -6
  139. package/lib/api/utils/object-serializer.util.d.ts +30 -30
  140. package/lib/components/action/action.component.d.ts +36 -36
  141. package/lib/components/action/dialog/action-dialog.component.d.ts +46 -48
  142. package/lib/components/action/index.d.ts +3 -3
  143. package/lib/{models/interfaces/confirmation-service.model.d.ts → components/action/models/action-confirmation-service.model.d.ts} +6 -6
  144. package/lib/{models/action/action.model.d.ts → components/action/models/action-execution.model.d.ts} +53 -53
  145. package/lib/components/action/models/index.d.ts +2 -0
  146. package/lib/components/action/route/action-route.component.d.ts +32 -32
  147. package/lib/components/form/autocomplete/autocomplete.component.d.ts +36 -0
  148. package/lib/components/form/dropdown/dropdown.component.d.ts +34 -0
  149. package/lib/components/form/editor/form-editor.component.d.ts +39 -39
  150. package/lib/components/form/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.d.ts +11 -21
  151. package/lib/components/form/formly/fields/formly-field-dropdown/formly-field-dropdown.component.d.ts +11 -19
  152. package/lib/components/form/formly/fields/formly-field-fieldset/formly-field-fieldset.component.d.ts +6 -6
  153. package/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.d.ts +12 -12
  154. package/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.d.ts +17 -17
  155. package/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.d.ts +36 -36
  156. package/lib/components/form/formly/fields/formly-field-tabs/formly-field-tabs.component.d.ts +6 -6
  157. package/lib/components/form/formly/fields/index.d.ts +7 -7
  158. package/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.d.ts +8 -8
  159. package/lib/components/form/formly/wrappers/formly-table-wrapper/formly-table-wrapper.component.d.ts +8 -8
  160. package/lib/components/form/formly/wrappers/index.d.ts +2 -2
  161. package/lib/components/form/index.d.ts +3 -1
  162. package/lib/components/form/models/form-editor.event.d.ts +5 -0
  163. package/lib/components/form/models/index.d.ts +1 -0
  164. package/lib/components/layout/breadcrumb.component.d.ts +8 -0
  165. package/lib/components/layout/footer.component.d.ts +9 -0
  166. package/lib/components/layout/index.d.ts +6 -6
  167. package/lib/components/layout/main-layout.component.d.ts +21 -0
  168. package/lib/components/layout/menu-item.component.d.ts +29 -0
  169. package/lib/components/layout/menu.component.d.ts +10 -0
  170. package/lib/components/layout/services/index.d.ts +1 -0
  171. package/lib/components/layout/services/main-layout.component.service.d.ts +65 -0
  172. package/lib/components/layout/topbar.component.d.ts +25 -0
  173. package/lib/components/tableview/index.d.ts +5 -3
  174. package/lib/components/tableview/models/index.d.ts +1 -0
  175. package/lib/{models/events/table-event.model.d.ts → components/tableview/models/table.event.d.ts} +17 -17
  176. package/lib/components/tableview/route/tableview-route.abstract.component.d.ts +14 -14
  177. package/lib/components/tableview/services/index.d.ts +1 -0
  178. package/lib/components/tableview/{tableview.component.service.d.ts → services/tableview.component.service.d.ts} +13 -13
  179. package/lib/components/tableview/table/column-filter/column-filter.component.d.ts +22 -0
  180. package/lib/components/tableview/table/column-value/column-value.component.d.ts +12 -0
  181. package/lib/components/tableview/table/table.component.d.ts +79 -47
  182. package/lib/components/tableview/tableview.component.d.ts +35 -36
  183. package/lib/config/formly.config.d.ts +14 -14
  184. package/lib/config/index.d.ts +1 -1
  185. package/lib/{models/config → config/models}/index.d.ts +1 -1
  186. package/lib/config/models/mng-config.model.d.ts +34 -0
  187. package/lib/data-providers/base.data-provider.d.ts +17 -0
  188. package/lib/data-providers/editor.data-provider.d.ts +25 -0
  189. package/lib/data-providers/index.d.ts +5 -0
  190. package/lib/data-providers/lookup.data-provider.d.ts +14 -0
  191. package/lib/data-providers/table.data-provider.d.ts +6 -0
  192. package/lib/data-providers/tableview.data-provider.d.ts +15 -0
  193. package/lib/{models/descriptors/action-descriptor.model.d.ts → descriptors/action.descriptor.d.ts} +148 -145
  194. package/lib/{models/descriptors/editor-descriptor.model.d.ts → descriptors/editor.descriptor.d.ts} +255 -255
  195. package/lib/{models/validators → descriptors}/field.validator.d.ts +18 -18
  196. package/lib/descriptors/index.d.ts +7 -0
  197. package/lib/descriptors/lookup.descriptor.d.ts +17 -0
  198. package/lib/{models/descriptors/model-descriptor.model.d.ts → descriptors/model.descriptor.d.ts} +15 -15
  199. package/lib/descriptors/table.descriptor.d.ts +164 -0
  200. package/lib/{models/descriptors/tableview-descriptor.model.d.ts → descriptors/tableview.descriptor.d.ts} +39 -38
  201. package/lib/directives/component.directive.d.ts +11 -0
  202. package/lib/directives/index.d.ts +2 -1
  203. package/lib/directives/template.directive.d.ts +13 -11
  204. package/lib/mng-commons.module.d.ts +79 -71
  205. package/lib/models/index.d.ts +2 -0
  206. package/lib/models/router.model.d.ts +14 -0
  207. package/lib/models/user.model.d.ts +8 -0
  208. package/lib/pipes/boolean.pipe.d.ts +7 -0
  209. package/lib/pipes/index.d.ts +2 -1
  210. package/lib/pipes/property-path.pipe.d.ts +7 -7
  211. package/lib/services/action.service.d.ts +92 -92
  212. package/lib/services/commons.service.d.ts +72 -0
  213. package/lib/services/configuration.service.d.ts +35 -35
  214. package/lib/services/index.d.ts +4 -6
  215. package/lib/services/navigation.service.d.ts +14 -14
  216. package/lib/services/providers/commons-init.provider.d.ts +2 -0
  217. package/lib/services/providers/config-service.provider.d.ts +5 -5
  218. package/lib/services/providers/formly-config.provider.d.ts +4 -4
  219. package/lib/services/providers/index.d.ts +3 -2
  220. package/lib/services/tokens/browser-storage.token.d.ts +2 -0
  221. package/lib/services/tokens/index.d.ts +2 -0
  222. package/lib/services/tokens/module-config.token.d.ts +3 -0
  223. package/lib/{models/types → types}/index.d.ts +2 -2
  224. package/lib/{models/types → types}/type.decorator.d.ts +2 -2
  225. package/lib/{models/types → types}/type.model.d.ts +10 -10
  226. package/lib/utils/editor-formly.util.d.ts +9 -9
  227. package/lib/utils/i18n.util.d.ts +18 -15
  228. package/lib/utils/index.d.ts +5 -4
  229. package/lib/utils/model.util.d.ts +7 -5
  230. package/lib/utils/toast.util.d.ts +13 -12
  231. package/lib/utils/type.util.d.ts +15 -15
  232. package/mediusinc-mng-commons.d.ts +5 -5
  233. package/package.json +37 -36
  234. package/public-api.d.ts +25 -22
  235. package/scss/common/layout/_breadcrumb.scss +96 -0
  236. package/scss/common/layout/_config.scss +101 -0
  237. package/scss/common/layout/_dashboard.scss +16 -0
  238. package/scss/common/layout/_exception.scss +131 -0
  239. package/scss/common/layout/_footer.scss +29 -0
  240. package/scss/common/layout/_help.scss +157 -0
  241. package/scss/common/layout/_inlinemenu.scss +55 -0
  242. package/scss/common/layout/_invoice.scss +176 -0
  243. package/scss/common/layout/_landing.scss +639 -0
  244. package/scss/common/layout/_layout_dark.scss +23 -0
  245. package/scss/common/layout/_layout_light.scss +23 -0
  246. package/scss/common/layout/_loader.scss +18 -0
  247. package/scss/common/layout/_login.scss +106 -0
  248. package/scss/common/layout/_main.scss +45 -0
  249. package/scss/common/layout/_mixins.scss +214 -0
  250. package/scss/common/layout/_rightmenu.scss +125 -0
  251. package/scss/common/layout/_topbar.scss +189 -0
  252. package/scss/common/layout/_typography.scss +63 -0
  253. package/scss/common/layout/_utils.scss +96 -0
  254. package/scss/common/layout/_widgets.scss +391 -0
  255. package/scss/common/layout/menu/_menu.scss +7 -0
  256. package/scss/common/layout/menu/_menu_common.scss +183 -0
  257. package/scss/common/layout/menu/_menu_overlay.scss +52 -0
  258. package/scss/common/layout/menu/_menu_sidebar.scss +232 -0
  259. package/scss/common/layout/menu/_menu_slim.scss +138 -0
  260. package/scss/common/layout/menu/_menu_static.scss +70 -0
  261. package/scss/common/layout/menu/_menu_theme.scss +365 -0
  262. package/scss/common/theme/_theme_dark.scss +5 -0
  263. package/scss/common/theme/_theme_light.scss +5 -0
  264. package/scss/common/theme/designer/_colors.scss +18 -0
  265. package/scss/common/theme/designer/_common.scss +40 -0
  266. package/scss/common/theme/designer/_components.scss +101 -0
  267. package/scss/common/theme/designer/_mixins.scss +174 -0
  268. package/scss/common/theme/designer/components/button/_button.scss +560 -0
  269. package/scss/common/theme/designer/components/button/_speeddial.scss +79 -0
  270. package/scss/common/theme/designer/components/button/_splitbutton.scss +1 -0
  271. package/scss/common/theme/designer/components/data/_carousel.scss +37 -0
  272. package/scss/common/theme/designer/components/data/_datatable.scss +266 -0
  273. package/scss/common/theme/designer/components/data/_dataview.scss +55 -0
  274. package/scss/common/theme/designer/components/data/_filter.scss +138 -0
  275. package/scss/common/theme/designer/components/data/_fullcalendar.scss +324 -0
  276. package/scss/common/theme/designer/components/data/_orderlist.scss +91 -0
  277. package/scss/common/theme/designer/components/data/_organizationchart.scss +50 -0
  278. package/scss/common/theme/designer/components/data/_paginator.scss +83 -0
  279. package/scss/common/theme/designer/components/data/_picklist.scss +91 -0
  280. package/scss/common/theme/designer/components/data/_timeline.scss +38 -0
  281. package/scss/common/theme/designer/components/data/_tree.scss +144 -0
  282. package/scss/common/theme/designer/components/data/_treetable.scss +242 -0
  283. package/scss/common/theme/designer/components/data/_virtualscroller.scss +28 -0
  284. package/scss/common/theme/designer/components/file/_fileupload.scss +58 -0
  285. package/scss/common/theme/designer/components/input/_autocomplete.scss +103 -0
  286. package/scss/common/theme/designer/components/input/_calendar.scss +212 -0
  287. package/scss/common/theme/designer/components/input/_cascadeselect.scss +98 -0
  288. package/scss/common/theme/designer/components/input/_checkbox.scss +85 -0
  289. package/scss/common/theme/designer/components/input/_chips.scss +41 -0
  290. package/scss/common/theme/designer/components/input/_colorpicker.scss +19 -0
  291. package/scss/common/theme/designer/components/input/_dropdown.scss +136 -0
  292. package/scss/common/theme/designer/components/input/_editor.scss +122 -0
  293. package/scss/common/theme/designer/components/input/_inputgroup.scss +69 -0
  294. package/scss/common/theme/designer/components/input/_inputmask.scss +3 -0
  295. package/scss/common/theme/designer/components/input/_inputnumber.scss +3 -0
  296. package/scss/common/theme/designer/components/input/_inputswitch.scss +58 -0
  297. package/scss/common/theme/designer/components/input/_inputtext.scss +97 -0
  298. package/scss/common/theme/designer/components/input/_listbox.scss +82 -0
  299. package/scss/common/theme/designer/components/input/_multiselect.scss +164 -0
  300. package/scss/common/theme/designer/components/input/_password.scss +33 -0
  301. package/scss/common/theme/designer/components/input/_radiobutton.scss +78 -0
  302. package/scss/common/theme/designer/components/input/_rating.scss +48 -0
  303. package/scss/common/theme/designer/components/input/_selectbutton.scss +50 -0
  304. package/scss/common/theme/designer/components/input/_slider.scss +69 -0
  305. package/scss/common/theme/designer/components/input/_togglebutton.scss +48 -0
  306. package/scss/common/theme/designer/components/input/_treeselect.scss +89 -0
  307. package/scss/common/theme/designer/components/menu/_breadcrumb.scss +42 -0
  308. package/scss/common/theme/designer/components/menu/_contextmenu.scss +50 -0
  309. package/scss/common/theme/designer/components/menu/_dock.scss +51 -0
  310. package/scss/common/theme/designer/components/menu/_megamenu.scss +102 -0
  311. package/scss/common/theme/designer/components/menu/_menu.scss +41 -0
  312. package/scss/common/theme/designer/components/menu/_menubar.scss +179 -0
  313. package/scss/common/theme/designer/components/menu/_panelmenu.scss +137 -0
  314. package/scss/common/theme/designer/components/menu/_slidemenu.scss +55 -0
  315. package/scss/common/theme/designer/components/menu/_steps.scss +55 -0
  316. package/scss/common/theme/designer/components/menu/_tabmenu.scss +49 -0
  317. package/scss/common/theme/designer/components/menu/_tieredmenu.scss +56 -0
  318. package/scss/common/theme/designer/components/messages/_inlinemessage.scss +64 -0
  319. package/scss/common/theme/designer/components/messages/_message.scss +102 -0
  320. package/scss/common/theme/designer/components/messages/_toast.scss +95 -0
  321. package/scss/common/theme/designer/components/misc/_avatar.scss +30 -0
  322. package/scss/common/theme/designer/components/misc/_badge.scss +48 -0
  323. package/scss/common/theme/designer/components/misc/_blockui.scss +3 -0
  324. package/scss/common/theme/designer/components/misc/_chip.scss +36 -0
  325. package/scss/common/theme/designer/components/misc/_inplace.scss +17 -0
  326. package/scss/common/theme/designer/components/misc/_progressbar.scss +17 -0
  327. package/scss/common/theme/designer/components/misc/_scrolltop.scss +20 -0
  328. package/scss/common/theme/designer/components/misc/_skeleton.scss +8 -0
  329. package/scss/common/theme/designer/components/misc/_tag.scss +33 -0
  330. package/scss/common/theme/designer/components/misc/_terminal.scss +11 -0
  331. package/scss/common/theme/designer/components/multimedia/_galleria.scss +141 -0
  332. package/scss/common/theme/designer/components/overlay/_confirmpopup.scss +67 -0
  333. package/scss/common/theme/designer/components/overlay/_dialog.scss +63 -0
  334. package/scss/common/theme/designer/components/overlay/_overlaypanel.scss +62 -0
  335. package/scss/common/theme/designer/components/overlay/_sidebar.scss +27 -0
  336. package/scss/common/theme/designer/components/overlay/_tooltip.scss +33 -0
  337. package/scss/common/theme/designer/components/panel/_accordion.scss +119 -0
  338. package/scss/common/theme/designer/components/panel/_card.scss +30 -0
  339. package/scss/common/theme/designer/components/panel/_divider.scss +31 -0
  340. package/scss/common/theme/designer/components/panel/_fieldset.scss +47 -0
  341. package/scss/common/theme/designer/components/panel/_panel.scss +42 -0
  342. package/scss/common/theme/designer/components/panel/_scrollpanel.scss +6 -0
  343. package/scss/common/theme/designer/components/panel/_splitter.scss +19 -0
  344. package/scss/common/theme/designer/components/panel/_tabview.scss +66 -0
  345. package/scss/common/theme/designer/components/panel/_toolbar.scss +10 -0
  346. package/scss/common/theme/extensions/_button.scss +99 -0
  347. package/scss/common/theme/extensions/_calendar.scss +18 -0
  348. package/scss/common/theme/extensions/_card.scss +6 -0
  349. package/scss/common/theme/extensions/_carousel.scss +13 -0
  350. package/scss/common/theme/extensions/_checkbox.scss +10 -0
  351. package/scss/common/theme/extensions/_contextmenu.scss +16 -0
  352. package/scss/common/theme/extensions/_datatable.scss +83 -0
  353. package/scss/common/theme/extensions/_dialog.scss +14 -0
  354. package/scss/common/theme/extensions/_fieldset.scss +6 -0
  355. package/scss/common/theme/extensions/_galleria.scss +25 -0
  356. package/scss/common/theme/extensions/_megamenu.scss +18 -0
  357. package/scss/common/theme/extensions/_menu.scss +14 -0
  358. package/scss/common/theme/extensions/_menubar.scss +14 -0
  359. package/scss/common/theme/extensions/_orderlist.scss +38 -0
  360. package/scss/common/theme/extensions/_paginator.scss +19 -0
  361. package/scss/common/theme/extensions/_panelmenu.scss +20 -0
  362. package/scss/common/theme/extensions/_password.scss +5 -0
  363. package/scss/common/theme/extensions/_picklist.scss +38 -0
  364. package/scss/common/theme/extensions/_radiobutton.scss +8 -0
  365. package/scss/common/theme/extensions/_sidebar.scss +19 -0
  366. package/scss/common/theme/extensions/_slidemenu.scss +10 -0
  367. package/scss/common/theme/extensions/_slider.scss +6 -0
  368. package/scss/common/theme/extensions/_steps.scss +50 -0
  369. package/scss/common/theme/extensions/_tieredmenu.scss +14 -0
  370. package/scss/common/theme/extensions/_toast.scss +6 -0
  371. package/scss/common/theme/extensions/_tree.scss +36 -0
  372. package/scss/common/theme/extensions/_treetable.scss +35 -0
  373. package/scss/common/theme/extensions/_vendor_extensions.scss +27 -0
  374. package/scss/common/variables/layout/_common.scss +12 -0
  375. package/scss/common/variables/layout/_layout_dark.scss +71 -0
  376. package/scss/common/variables/layout/_layout_light.scss +71 -0
  377. package/scss/common/variables/theme/_theme_dark.scss +897 -0
  378. package/scss/common/variables/theme/_theme_light.scss +885 -0
  379. package/scss/layout/default/_mng-variables-layout-dark.scss +2 -0
  380. package/scss/layout/default/_mng-variables-layout-light.scss +2 -0
  381. package/scss/layout/default/layout-dark.scss +2 -0
  382. package/scss/layout/default/layout-light.scss +2 -0
  383. package/scss/mng-commons-dark.scss +5 -0
  384. package/scss/mng-commons-light.scss +5 -0
  385. package/scss/mng-overrides/_layout_action.scss +3 -0
  386. package/scss/mng-overrides/_layout_dialog.scss +34 -0
  387. package/scss/mng-overrides/_layout_forms.scss +31 -0
  388. package/scss/mng-overrides/_layout_radio.scss +3 -0
  389. package/scss/mng-overrides/_layout_styles.scss +4 -0
  390. package/scss/mng-overrides/_theme_datatable.scss +9 -0
  391. package/scss/mng-overrides/_theme_dialog.scss +9 -0
  392. package/scss/mng-overrides/_theme_dropdown.scss +6 -0
  393. package/scss/mng-overrides/_theme_styles.scss +9 -0
  394. package/scss/mng-overrides/_theme_tableview.scss +94 -0
  395. package/scss/theme/default/_mng-variables-theme-dark.scss +8 -0
  396. package/scss/theme/default/_mng-variables-theme-light.scss +8 -0
  397. package/scss/theme/default/theme-dark.scss +2 -0
  398. package/scss/theme/default/theme-light.scss +2 -0
  399. package/esm2020/lib/api/services/abstract-crud-api.service.mjs +0 -72
  400. package/esm2020/lib/components/layout/app.breadcrumb.component.mjs +0 -26
  401. package/esm2020/lib/components/layout/app.footer.component.mjs +0 -35
  402. package/esm2020/lib/components/layout/app.main.component.mjs +0 -25
  403. package/esm2020/lib/components/layout/app.main.component.service.mjs +0 -133
  404. package/esm2020/lib/components/layout/app.menu.component.mjs +0 -24
  405. package/esm2020/lib/components/layout/app.menuitem.component.mjs +0 -241
  406. package/esm2020/lib/components/layout/app.topbar.component.mjs +0 -135
  407. package/esm2020/lib/components/tableview/tableview.component.service.mjs +0 -18
  408. package/esm2020/lib/models/action/action.model.mjs +0 -58
  409. package/esm2020/lib/models/action/index.mjs +0 -2
  410. package/esm2020/lib/models/config/index.mjs +0 -2
  411. package/esm2020/lib/models/config/mng-config.model.mjs +0 -3
  412. package/esm2020/lib/models/descriptors/action-descriptor.model.mjs +0 -325
  413. package/esm2020/lib/models/descriptors/editor-descriptor.model.mjs +0 -666
  414. package/esm2020/lib/models/descriptors/index.mjs +0 -6
  415. package/esm2020/lib/models/descriptors/model-descriptor.model.mjs +0 -34
  416. package/esm2020/lib/models/descriptors/table-descriptor.model.mjs +0 -123
  417. package/esm2020/lib/models/descriptors/tableview-descriptor.model.mjs +0 -124
  418. package/esm2020/lib/models/events/editor-event.model.mjs +0 -14
  419. package/esm2020/lib/models/events/index.mjs +0 -3
  420. package/esm2020/lib/models/events/table-event.model.mjs +0 -16
  421. package/esm2020/lib/models/interfaces/confirmation-service.model.mjs +0 -2
  422. package/esm2020/lib/models/interfaces/index.mjs +0 -2
  423. package/esm2020/lib/models/providers/data-provider.model.mjs +0 -86
  424. package/esm2020/lib/models/providers/index.mjs +0 -2
  425. package/esm2020/lib/models/types/index.mjs +0 -3
  426. package/esm2020/lib/models/types/type.decorator.mjs +0 -7
  427. package/esm2020/lib/models/types/type.model.mjs +0 -2
  428. package/esm2020/lib/models/validators/field.validator.mjs +0 -21
  429. package/esm2020/lib/models/validators/index.mjs +0 -2
  430. package/esm2020/lib/services/breadcrumb.service.mjs +0 -74
  431. package/esm2020/lib/services/menu.service.mjs +0 -37
  432. package/esm2020/lib/services/settings.service.mjs +0 -81
  433. package/lib/components/layout/app.breadcrumb.component.d.ts +0 -14
  434. package/lib/components/layout/app.footer.component.d.ts +0 -8
  435. package/lib/components/layout/app.main.component.d.ts +0 -12
  436. package/lib/components/layout/app.main.component.service.d.ts +0 -40
  437. package/lib/components/layout/app.menu.component.d.ts +0 -15
  438. package/lib/components/layout/app.menuitem.component.d.ts +0 -31
  439. package/lib/components/layout/app.topbar.component.d.ts +0 -15
  440. package/lib/models/action/index.d.ts +0 -1
  441. package/lib/models/config/mng-config.model.d.ts +0 -20
  442. package/lib/models/descriptors/index.d.ts +0 -5
  443. package/lib/models/descriptors/table-descriptor.model.d.ts +0 -45
  444. package/lib/models/events/editor-event.model.d.ts +0 -11
  445. package/lib/models/events/index.d.ts +0 -2
  446. package/lib/models/interfaces/index.d.ts +0 -1
  447. package/lib/models/providers/data-provider.model.d.ts +0 -62
  448. package/lib/models/providers/index.d.ts +0 -1
  449. package/lib/models/validators/index.d.ts +0 -1
  450. package/lib/services/breadcrumb.service.d.ts +0 -15
  451. package/lib/services/menu.service.d.ts +0 -16
  452. package/lib/services/settings.service.d.ts +0 -30
  453. package/mediusinc-mng-commons-0.0.1-rc.4.tgz +0 -0
@@ -1,91 +1,125 @@
1
- import { first, map, mergeMap } from 'rxjs/operators';
2
- export class I18nUtil {
3
- static instantActionTranslation(translate, action, keyPath, customKey, item, fallbackKey, functionNameKey, i18nParams) {
4
- const keys = I18nUtil.getActionKeysByPriority(action, keyPath, customKey, fallbackKey);
5
- const i18nModelName = I18nUtil.instantModelName(translate, action?.model, true);
6
- const translatedFunctionTitle = I18nUtil.getFunctionTitle(translate, functionNameKey);
7
- const i18n = translate.instant(keys, I18nUtil.getActionI18nParams(action, item, i18nModelName ?? undefined, i18nParams, translatedFunctionTitle));
8
- return I18nUtil.selectKeyByPriority(keys, i18n);
9
- }
10
- static streamActionTranslation(translate, action, keyPath, customKey, item, fallbackKey) {
11
- return I18nUtil.getActionTranslation(translate, action, keyPath, customKey, item, fallbackKey, false);
12
- }
13
- static getActionTranslation(translate, action, keyPath, customKey, item, fallbackKey, oneTime = true) {
14
- const keys = I18nUtil.getActionKeysByPriority(action, keyPath, customKey, fallbackKey);
15
- return I18nUtil.getModelName(translate, action?.model, oneTime, true).pipe(mergeMap(i18nModelName => translate.get(keys, I18nUtil.getActionI18nParams(action, item, i18nModelName ?? undefined))), map(i18n => I18nUtil.selectKeyByPriority(keys, i18n)));
16
- }
17
- static getActionKeysByPriority(action, keyPath, customKey, fallbackKey) {
18
- const keys = [];
19
- if (customKey) {
20
- keys.push(customKey);
21
- }
22
- const modelActionKey = `${action.i18nModelActionBaseKey}.${keyPath}`;
23
- const actionKey = `${action.actionName}.${keyPath}`;
24
- keys.push(modelActionKey, actionKey);
25
- if (fallbackKey) {
26
- keys.push(fallbackKey);
27
- }
28
- return keys;
29
- }
30
- static getActionI18nParams(action, item, i18nModelName, i18nParameters = {}, functionTitle) {
31
- i18nParameters.itemId = '';
32
- i18nParameters.itemTitle = '';
33
- if (functionTitle) {
34
- i18nParameters.functionTitle = functionTitle;
35
- }
36
- if (i18nModelName) {
37
- i18nParameters.modelName = i18nModelName;
38
- }
39
- if (item) {
40
- if (action.model.idPropertyName && item[action.model.idPropertyName]) {
41
- i18nParameters.itemId = item[action.model.idPropertyName];
42
- }
43
- if (action.model.titlePropertyName && item[action.model.titlePropertyName]) {
44
- i18nParameters.itemTitle = item[action.model.titlePropertyName];
45
- }
46
- }
47
- return i18nParameters;
48
- }
49
- static instantModelName(translate, model, singular) {
50
- const keys = I18nUtil.getModelNameKeys(model, singular);
51
- const i18n = translate.instant(keys);
52
- return I18nUtil.selectKeyByPriority(keys, i18n);
53
- }
54
- static getModelName(translate, model, oneTime = true, singular) {
55
- const keys = I18nUtil.getModelNameKeys(model, singular);
56
- const obs = translate.stream(keys);
57
- if (oneTime) {
58
- obs.pipe(first());
59
- }
60
- return obs.pipe(map(i18n => I18nUtil.selectKeyByPriority(keys, i18n)));
61
- }
62
- static getModelNameKeys(model, singular) {
63
- let keys = [];
64
- if (singular !== undefined) {
65
- keys.push(singular ? `${model?.typeName}.nameSingular` : `${model?.typeName}.namePlural`);
66
- }
67
- keys.push(`${model?.typeName}.name`);
68
- return keys;
69
- }
70
- static selectKeyByPriority(keys, i18n) {
71
- for (const key of keys) {
72
- if (key !== i18n[key]) {
73
- return i18n[key];
74
- }
75
- }
76
- return null;
77
- }
78
- static getFunctionTitle(translate, functionTitle) {
79
- if (functionTitle) {
80
- const translation = translate.instant(`mngAction.functions.${functionTitle}.title`);
81
- if (translation === functionTitle) {
82
- return null;
83
- }
84
- return translation;
85
- }
86
- else {
87
- return null;
88
- }
89
- }
90
- }
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW5nLWNvbW1vbnMvc3JjL2xpYi91dGlscy9pMThuLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFJcEQsTUFBTSxPQUFPLFFBQVE7SUFFVixNQUFNLENBQUMsd0JBQXdCLENBQUMsU0FBMkIsRUFBRSxNQUE2QixFQUFFLE9BQWUsRUFBRSxTQUFrQixFQUFFLElBQVUsRUFDM0csV0FBb0IsRUFBRSxlQUF3QixFQUFFLFVBQWdCO1FBQ25HLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUN2RixNQUFNLGFBQWEsR0FBRyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDaEYsTUFBTSx1QkFBdUIsR0FBRyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLGVBQWUsQ0FBQyxDQUFDO1FBQ3RGLE1BQU0sSUFBSSxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLGFBQWEsSUFBSSxTQUFTLEVBQUUsVUFBVSxFQUFFLHVCQUF1QixDQUFDLENBQUMsQ0FBQztRQUNsSixPQUFPLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVNLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxTQUEyQixFQUFFLE1BQTZCLEVBQUUsT0FBZSxFQUFFLFNBQWtCLEVBQUUsSUFBVSxFQUFFLFdBQW9CO1FBQ25LLE9BQU8s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LE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxJQUFjLEVBQUUsSUFBUztRQUN4RCxLQUFLLE1BQU0sR0FBRyxJQUFJLElBQUksRUFBRTtZQUNwQixJQUFJLEdBQUcsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ25CLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3BCO1NBQ0o7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU8sTUFBTSxDQUFDLGdCQUFnQixDQUFDLFNBQTJCLEVBQUUsYUFBc0I7UUFDL0UsSUFBSSxhQUFhLEVBQUU7WUFDZixNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLHVCQUF1QixhQUFhLFFBQVEsQ0FBQyxDQUFDO1lBQ3BGLElBQUksV0FBVyxLQUFLLGFBQWEsRUFBRTtnQkFDL0IsT0FBTyxJQUFJLENBQUM7YUFDZjtZQUNELE9BQU8sV0FBVyxDQUFDO1NBQ3RCO2FBQU07WUFDSCxPQUFPLElBQUksQ0FBQztTQUNmO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2ZpcnN0LCBtYXAsIG1lcmdlTWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7QWN0aW9uRGVzY3JpcHRvciwgTW9kZWxEZXNjcmlwdG9yfSBmcm9tICcuLi9tb2RlbHMvZGVzY3JpcHRvcnMnO1xuXG5leHBvcnQgY2xhc3MgSTE4blV0aWwge1xuXG4gICAgcHVibGljIHN0YXRpYyBpbnN0YW50QWN0aW9uVHJhbnNsYXRpb24odHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLCBhY3Rpb246IEFjdGlvbkRlc2NyaXB0b3I8YW55Piwga2V5UGF0aDogc3RyaW5nLCBjdXN0b21LZXk/OiBzdHJpbmcsIGl0ZW0/OiBhbnksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsbGJhY2tLZXk/OiBzdHJpbmcsIGZ1bmN0aW9uTmFtZUtleT86IHN0cmluZywgaTE4blBhcmFtcz86IGFueSk6IHN0cmluZ3xudWxsIHtcbiAgICAgICAgY29uc3Qga2V5cyA9IEkxOG5VdGlsLmdldEFjdGlvbktleXNCeVByaW9yaXR5KGFjdGlvbiwga2V5UGF0aCwgY3VzdG9tS2V5LCBmYWxsYmFja0tleSk7XG4gICAgICAgIGNvbnN0IGkxOG5Nb2RlbE5hbWUgPSBJMThuVXRpbC5pbnN0YW50TW9kZWxOYW1lKHRyYW5zbGF0ZSwgYWN0aW9uPy5tb2RlbCwgdHJ1ZSk7XG4gICAgICAgIGNvbnN0IHRyYW5zbGF0ZWRGdW5jdGlvblRpdGxlID0gSTE4blV0aWwuZ2V0RnVuY3Rpb25UaXRsZSh0cmFuc2xhdGUsIGZ1bmN0aW9uTmFtZUtleSk7XG4gICAgICAgIGNvbnN0IGkxOG4gPSB0cmFuc2xhdGUuaW5zdGFudChrZXlzLCBJMThuVXRpbC5nZXRBY3Rpb25JMThuUGFyYW1zKGFjdGlvbiwgaXRlbSwgaTE4bk1vZGVsTmFtZSA/PyB1bmRlZmluZWQsIGkxOG5QYXJhbXMsIHRyYW5zbGF0ZWRGdW5jdGlvblRpdGxlKSk7XG4gICAgICAgIHJldHVybiBJMThuVXRpbC5zZWxlY3RLZXlCeVByaW9yaXR5KGtleXMsIGkxOG4pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgc3RyZWFtQWN0aW9uVHJhbnNsYXRpb24odHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLCBhY3Rpb246IEFjdGlvbkRlc2NyaXB0b3I8YW55Piwga2V5UGF0aDogc3RyaW5nLCBjdXN0b21LZXk/OiBzdHJpbmcsIGl0ZW0/OiBhbnksIGZhbGxiYWNrS2V5Pzogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmd8bnVsbD4ge1xuICAgICAgICByZXR1cm4gSTE4blV0aWwuZ2V0QWN0aW9uVHJhbnNsYXRpb24odHJhbnNsYXRlLCBhY3Rpb24sIGtleVBhdGgsIGN1c3RvbUtleSwgaXRlbSwgZmFsbGJhY2tLZXksIGZhbHNlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldEFjdGlvblRyYW5zbGF0aW9uKHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSwgYWN0aW9uOiBBY3Rpb25EZXNjcmlwdG9yPGFueT4sIGtleVBhdGg6IHN0cmluZywgY3VzdG9tS2V5Pzogc3RyaW5nLCBpdGVtPzogYW55LCBmYWxsYmFja0tleT86IHN0cmluZywgb25lVGltZTogYm9vbGVhbiA9IHRydWUpOiBPYnNlcnZhYmxlPHN0cmluZ3xudWxsPiB7XG4gICAgICAgIGNvbnN0IGtleXMgPSBJMThuVXRpbC5nZXRBY3Rpb25LZXlzQnlQcmlvcml0eShhY3Rpb24sIGtleVBhdGgsIGN1c3RvbUtleSwgZmFsbGJhY2tLZXkpO1xuICAgICAgICByZXR1cm4gSTE4blV0aWwuZ2V0TW9kZWxOYW1lKHRyYW5zbGF0ZSwgYWN0aW9uPy5tb2RlbCwgb25lVGltZSwgdHJ1ZSkucGlwZShcbiAgICAgICAgICAgIG1lcmdlTWFwKGkxOG5Nb2RlbE5hbWUgPT4gdHJhbnNsYXRlLmdldChrZXlzLCBJMThuVXRpbC5nZXRBY3Rpb25JMThuUGFyYW1zKGFjdGlvbiwgaXRlbSwgaTE4bk1vZGVsTmFtZSA/PyB1bmRlZmluZWQpKSksXG4gICAgICAgICAgICBtYXAoaTE4biA9PiBJMThuVXRpbC5zZWxlY3RLZXlCeVByaW9yaXR5KGtleXMsIGkxOG4pKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGdldEFjdGlvbktleXNCeVByaW9yaXR5KGFjdGlvbjogQWN0aW9uRGVzY3JpcHRvcjxhbnk+LCBrZXlQYXRoOiBzdHJpbmcsIGN1c3RvbUtleT86IHN0cmluZywgZmFsbGJhY2tLZXk/OiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3Qga2V5cyA9IFtdO1xuICAgICAgICBpZiAoY3VzdG9tS2V5KSB7XG4gICAgICAgICAgICBrZXlzLnB1c2goY3VzdG9tS2V5KTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBtb2RlbEFjdGlvbktleSA9IGAke2FjdGlvbi5pMThuTW9kZWxBY3Rpb25CYXNlS2V5fS4ke2tleVBhdGh9YDtcbiAgICAgICAgY29uc3QgYWN0aW9uS2V5ID0gYCR7YWN0aW9uLmFjdGlvbk5hbWV9LiR7a2V5UGF0aH1gO1xuICAgICAgICBrZXlzLnB1c2gobW9kZWxBY3Rpb25LZXksIGFjdGlvbktleSk7XG4gICAgICAgIGlmIChmYWxsYmFja0tleSkge1xuICAgICAgICAgICAga2V5cy5wdXNoKGZhbGxiYWNrS2V5KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4ga2V5cztcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldEFjdGlvbkkxOG5QYXJhbXMoYWN0aW9uOiBBY3Rpb25EZXNjcmlwdG9yPGFueT4sIGl0ZW06IGFueSwgaTE4bk1vZGVsTmFtZT86IHN0cmluZywgaTE4blBhcmFtZXRlcnM6IGFueSA9IHt9LCBmdW5jdGlvblRpdGxlPzogc3RyaW5nKSB7XG4gICAgICAgIGkxOG5QYXJhbWV0ZXJzLml0ZW1JZCA9ICcnXG4gICAgICAgIGkxOG5QYXJhbWV0ZXJzLml0ZW1UaXRsZSA9ICcnXG5cbiAgICAgICAgaWYgKGZ1bmN0aW9uVGl0bGUpIHtcbiAgICAgICAgICAgIGkxOG5QYXJhbWV0ZXJzLmZ1bmN0aW9uVGl0bGUgPSBmdW5jdGlvblRpdGxlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpMThuTW9kZWxOYW1lKSB7XG4gICAgICAgICAgICBpMThuUGFyYW1ldGVycy5tb2RlbE5hbWUgPSBpMThuTW9kZWxOYW1lO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpdGVtKSB7XG4gICAgICAgICAgICBpZiAoYWN0aW9uLm1vZGVsLmlkUHJvcGVydHlOYW1lICYmIGl0ZW1bYWN0aW9uLm1vZGVsLmlkUHJvcGVydHlOYW1lXSkge1xuICAgICAgICAgICAgICAgIGkxOG5QYXJhbWV0ZXJzLml0ZW1JZCA9IGl0ZW1bYWN0aW9uLm1vZGVsLmlkUHJvcGVydHlOYW1lXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChhY3Rpb24ubW9kZWwudGl0bGVQcm9wZXJ0eU5hbWUgJiYgaXRlbVthY3Rpb24ubW9kZWwudGl0bGVQcm9wZXJ0eU5hbWVdKSB7XG4gICAgICAgICAgICAgICAgaTE4blBhcmFtZXRlcnMuaXRlbVRpdGxlID0gaXRlbVthY3Rpb24ubW9kZWwudGl0bGVQcm9wZXJ0eU5hbWVdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBpMThuUGFyYW1ldGVycztcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGluc3RhbnRNb2RlbE5hbWUodHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLCBtb2RlbDogTW9kZWxEZXNjcmlwdG9yPGFueT4sIHNpbmd1bGFyPzogYm9vbGVhbik6IHN0cmluZ3xudWxsIHtcbiAgICAgICAgY29uc3Qga2V5cyA9IEkxOG5VdGlsLmdldE1vZGVsTmFtZUtleXMobW9kZWwsIHNpbmd1bGFyKTtcbiAgICAgICAgY29uc3QgaTE4biA9IHRyYW5zbGF0ZS5pbnN0YW50KGtleXMpO1xuICAgICAgICByZXR1cm4gSTE4blV0aWwuc2VsZWN0S2V5QnlQcmlvcml0eShrZXlzLCBpMThuKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldE1vZGVsTmFtZSh0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsIG1vZGVsOiBNb2RlbERlc2NyaXB0b3I8YW55Piwgb25lVGltZTogYm9vbGVhbiA9IHRydWUsIHNpbmd1bGFyPzogYm9vbGVhbik6IE9ic2VydmFibGU8c3RyaW5nfG51bGw+IHtcbiAgICAgICAgY29uc3Qga2V5cyA9IEkxOG5VdGlsLmdldE1vZGVsTmFtZUtleXMobW9kZWwsIHNpbmd1bGFyKTtcbiAgICAgICAgY29uc3Qgb2JzID0gdHJhbnNsYXRlLnN0cmVhbShrZXlzKTtcbiAgICAgICAgaWYgKG9uZVRpbWUpIHtcbiAgICAgICAgICAgIG9icy5waXBlKGZpcnN0KCkpXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG9icy5waXBlKG1hcChpMThuID0+IEkxOG5VdGlsLnNlbGVjdEtleUJ5UHJpb3JpdHkoa2V5cywgaTE4bikpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldE1vZGVsTmFtZUtleXMobW9kZWw6IE1vZGVsRGVzY3JpcHRvcjxhbnk+LCBzaW5ndWxhcj86IGJvb2xlYW4pIHtcbiAgICAgICAgbGV0IGtleXMgPSBbXTtcbiAgICAgICAgaWYgKHNpbmd1bGFyICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIGtleXMucHVzaChzaW5ndWxhciA/IGAke21vZGVsPy50eXBlTmFtZX0ubmFtZVNpbmd1bGFyYCA6IGAke21vZGVsPy50eXBlTmFtZX0ubmFtZVBsdXJhbGApO1xuICAgICAgICB9XG4gICAgICAgIGtleXMucHVzaChgJHttb2RlbD8udHlwZU5hbWV9Lm5hbWVgKTtcbiAgICAgICAgcmV0dXJuIGtleXM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgc2VsZWN0S2V5QnlQcmlvcml0eShrZXlzOiBzdHJpbmdbXSwgaTE4bjogYW55KTogc3RyaW5nfG51bGwge1xuICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBrZXlzKSB7XG4gICAgICAgICAgICBpZiAoa2V5ICE9PSBpMThuW2tleV0pIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gaTE4bltrZXldO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGdldEZ1bmN0aW9uVGl0bGUodHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLCBmdW5jdGlvblRpdGxlPzogc3RyaW5nKSB7XG4gICAgICAgIGlmIChmdW5jdGlvblRpdGxlKSB7XG4gICAgICAgICAgICBjb25zdCB0cmFuc2xhdGlvbiA9IHRyYW5zbGF0ZS5pbnN0YW50KGBtbmdBY3Rpb24uZnVuY3Rpb25zLiR7ZnVuY3Rpb25UaXRsZX0udGl0bGVgKTtcbiAgICAgICAgICAgIGlmICh0cmFuc2xhdGlvbiA9PT0gZnVuY3Rpb25UaXRsZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zbGF0aW9uO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
1
+ import { first, map, mergeMap } from 'rxjs/operators';
2
+ export class I18nUtil {
3
+ static instantModelTranslation(translate, model, keyPath, customKey, item, fallbackKey, i18nParams) {
4
+ const keys = I18nUtil.getModelKeysByPriority(model, keyPath, customKey, fallbackKey);
5
+ const i18nModelName = I18nUtil.instantModelName(translate, model, true);
6
+ const i18n = translate.instant(keys, I18nUtil.getModelI18nParams(model, item, i18nModelName ?? undefined, i18nParams));
7
+ return I18nUtil.selectKeyByPriority(keys, i18n);
8
+ }
9
+ static instantActionTranslation(translate, action, keyPath, customKey, item, fallbackKey, functionNameKey, i18nParams) {
10
+ const keys = I18nUtil.getActionKeysByPriority(action, keyPath, customKey, fallbackKey);
11
+ const i18nModelName = I18nUtil.instantModelName(translate, action?.model, true);
12
+ const i18nFunctionTitle = I18nUtil.getFunctionTitle(translate, functionNameKey);
13
+ const i18n = translate.instant(keys, I18nUtil.getActionI18nParams(action, item, i18nModelName ?? undefined, i18nParams, i18nFunctionTitle));
14
+ return I18nUtil.selectKeyByPriority(keys, i18n);
15
+ }
16
+ static streamActionTranslation(translate, action, keyPath, customKey, item, fallbackKey) {
17
+ return I18nUtil.getActionTranslation(translate, action, keyPath, customKey, item, fallbackKey, false);
18
+ }
19
+ static getActionTranslation(translate, action, keyPath, customKey, item, fallbackKey, oneTime = true) {
20
+ const keys = I18nUtil.getActionKeysByPriority(action, keyPath, customKey, fallbackKey);
21
+ return I18nUtil.getModelName(translate, action?.model, oneTime, true).pipe(mergeMap(i18nModelName => translate.get(keys, I18nUtil.getActionI18nParams(action, item, i18nModelName ?? undefined))), map(i18n => I18nUtil.selectKeyByPriority(keys, i18n)));
22
+ }
23
+ static getModelKeysByPriority(model, keyPath, customKey, fallbackKey) {
24
+ const keys = [];
25
+ if (customKey) {
26
+ keys.push(customKey);
27
+ }
28
+ const modelActionKey = `${model.typeName}.${keyPath}`;
29
+ keys.push(modelActionKey);
30
+ if (fallbackKey) {
31
+ keys.push(fallbackKey);
32
+ }
33
+ return keys;
34
+ }
35
+ static getActionKeysByPriority(action, keyPath, customKey, fallbackKey) {
36
+ const keys = [];
37
+ if (customKey) {
38
+ keys.push(customKey);
39
+ }
40
+ const modelActionKey = `${action.i18nModelActionBaseKey}.${keyPath}`;
41
+ const actionKey = `${action.actionName}.${keyPath}`;
42
+ keys.push(modelActionKey, actionKey);
43
+ if (fallbackKey) {
44
+ keys.push(fallbackKey);
45
+ }
46
+ return keys;
47
+ }
48
+ static getModelI18nParams(model, item, i18nModelName, i18nParameters = {}) {
49
+ i18nParameters.itemId = '';
50
+ i18nParameters.itemTitle = '';
51
+ if (i18nModelName) {
52
+ i18nParameters.modelName = i18nModelName;
53
+ }
54
+ if (item) {
55
+ if (model.idPropertyName && item[model.idPropertyName]) {
56
+ i18nParameters.itemId = item[model.idPropertyName];
57
+ }
58
+ if (model.titlePropertyName && item[model.titlePropertyName]) {
59
+ i18nParameters.itemTitle = item[model.titlePropertyName];
60
+ }
61
+ }
62
+ return i18nParameters;
63
+ }
64
+ static getActionI18nParams(action, item, i18nModelName, i18nParameters = {}, functionTitle) {
65
+ i18nParameters.itemId = '';
66
+ i18nParameters.itemTitle = '';
67
+ if (functionTitle) {
68
+ i18nParameters.functionTitle = functionTitle;
69
+ }
70
+ if (i18nModelName) {
71
+ i18nParameters.modelName = i18nModelName;
72
+ }
73
+ if (item) {
74
+ if (action.model.idPropertyName && item[action.model.idPropertyName]) {
75
+ i18nParameters.itemId = item[action.model.idPropertyName];
76
+ }
77
+ if (action.model.titlePropertyName && item[action.model.titlePropertyName]) {
78
+ i18nParameters.itemTitle = item[action.model.titlePropertyName];
79
+ }
80
+ }
81
+ return i18nParameters;
82
+ }
83
+ static instantModelName(translate, model, singular) {
84
+ const keys = I18nUtil.getModelNameKeys(model, singular);
85
+ const i18n = translate.instant(keys);
86
+ return I18nUtil.selectKeyByPriority(keys, i18n);
87
+ }
88
+ static getModelName(translate, model, oneTime = true, singular) {
89
+ const keys = I18nUtil.getModelNameKeys(model, singular);
90
+ const obs = translate.stream(keys);
91
+ if (oneTime) {
92
+ obs.pipe(first());
93
+ }
94
+ return obs.pipe(map(i18n => I18nUtil.selectKeyByPriority(keys, i18n)));
95
+ }
96
+ static getModelNameKeys(model, singular) {
97
+ let keys = [];
98
+ if (singular !== undefined) {
99
+ keys.push(singular ? `${model?.typeName}.nameSingular` : `${model?.typeName}.namePlural`);
100
+ }
101
+ keys.push(`${model?.typeName}.name`);
102
+ return keys;
103
+ }
104
+ static selectKeyByPriority(keys, i18n) {
105
+ for (const key of keys) {
106
+ if (key !== i18n[key]) {
107
+ return i18n[key];
108
+ }
109
+ }
110
+ return null;
111
+ }
112
+ static getFunctionTitle(translate, functionTitle) {
113
+ if (functionTitle) {
114
+ const translation = translate.instant(`mngAction.functions.${functionTitle}.title`);
115
+ if (translation === functionTitle) {
116
+ return null;
117
+ }
118
+ return translation;
119
+ }
120
+ else {
121
+ return null;
122
+ }
123
+ }
124
+ }
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaTE4bi51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi91dGlscy9pMThuLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFJcEQsTUFBTSxPQUFPLFFBQVE7SUFFVixNQUFNLENBQUMsdUJBQXVCLENBQUMsU0FBMkIsRUFBRSxLQUEyQixFQUFFLE9BQWUsRUFBRSxTQUFrQixFQUFFLElBQVUsRUFDeEcsV0FBb0IsRUFBRSxVQUFnQjtRQUN6RSxNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsc0JBQXNCLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDckYsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDeEUsTUFBTSxJQUFJLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsYUFBYSxJQUFJLFNBQVMsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQ3ZILE9BQU8sUUFBUSxDQUFDLG1CQUFtQixDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRU0sTUFBTSxDQUFDLHdCQUF3QixDQUFDLFNBQTJCLEVBQUUsTUFBNkIsRUFBRSxPQUFlLEVBQUUsU0FBa0IsRUFBRSxJQUFVLEVBQzNHLFdBQW9CLEVBQUUsZUFBd0IsRUFBRSxVQUFnQjtRQUNuRyxNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsdUJBQXVCLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDdkYsTUFBTSxhQUFhLEdBQUcsUUFBUSxD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b3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7Zmlyc3QsIG1hcCwgbWVyZ2VNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtBY3Rpb25EZXNjcmlwdG9yLCBNb2RlbERlc2NyaXB0b3J9IGZyb20gJy4uL2Rlc2NyaXB0b3JzJztcblxuZXhwb3J0IGNsYXNzIEkxOG5VdGlsIHtcblxuICAgIHB1YmxpYyBzdGF0aWMgaW5zdGFudE1vZGVsVHJhbnNsYXRpb24odHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLCBtb2RlbDogTW9kZWxEZXNjcmlwdG9yPGFueT4sIGtleVBhdGg6IHN0cmluZywgY3VzdG9tS2V5Pzogc3RyaW5nLCBpdGVtPzogYW55LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhbGxiYWNrS2V5Pzogc3RyaW5nLCBpMThuUGFyYW1zPzogYW55KTogc3RyaW5nfG51bGwge1xuICAgICAgICBjb25zdCBrZXlzID0gSTE4blV0aWwuZ2V0TW9kZWxLZXlzQnlQcmlvcml0eShtb2RlbCwga2V5UGF0aCwgY3VzdG9tS2V5LCBmYWxsYmFja0tleSk7XG4gICAgICAgIGNvbnN0IGkxOG5Nb2RlbE5hbWUgPSBJMThuVXRpbC5pbnN0YW50TW9kZWxOYW1lKHRyYW5zbGF0ZSwgbW9kZWwsIHRydWUpO1xuICAgICAgICBjb25zdCBpMThuID0gdHJhbnNsYXRlLmluc3RhbnQoa2V5cywgSTE4blV0aWwuZ2V0TW9kZWxJMThuUGFyYW1zKG1vZGVsLCBpdGVtLCBpMThuTW9kZWxOYW1lID8/IHVuZGVmaW5lZCwgaTE4blBhcmFtcykpO1xuICAgICAgICByZXR1cm4gSTE4blV0aWwuc2VsZWN0S2V5QnlQcmlvcml0eShrZXlzLCBpMThuKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGluc3RhbnRBY3Rpb25UcmFuc2xhdGlvbih0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsIGFjdGlvbjogQWN0aW9uRGVzY3JpcHRvcjxhbnk+LCBrZXlQYXRoOiBzdHJpbmcsIGN1c3RvbUtleT86IHN0cmluZywgaXRlbT86IGFueSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmYWxsYmFja0tleT86IHN0cmluZywgZnVuY3Rpb25OYW1lS2V5Pzogc3RyaW5nLCBpMThuUGFyYW1zPzogYW55KTogc3RyaW5nfG51bGwge1xuICAgICAgICBjb25zdCBrZXlzID0gSTE4blV0aWwuZ2V0QWN0aW9uS2V5c0J5UHJpb3JpdHkoYWN0aW9uLCBrZXlQYXRoLCBjdXN0b21LZXksIGZhbGxiYWNrS2V5KTtcbiAgICAgICAgY29uc3QgaTE4bk1vZGVsTmFtZSA9IEkxOG5VdGlsLmluc3RhbnRNb2RlbE5hbWUodHJhbnNsYXRlLCBhY3Rpb24/Lm1vZGVsLCB0cnVlKTtcbiAgICAgICAgY29uc3QgaTE4bkZ1bmN0aW9uVGl0bGUgPSBJMThuVXRpbC5nZXRGdW5jdGlvblRpdGxlKHRyYW5zbGF0ZSwgZnVuY3Rpb25OYW1lS2V5KTtcbiAgICAgICAgY29uc3QgaTE4biA9IHRyYW5zbGF0ZS5pbnN0YW50KGtleXMsIEkxOG5VdGlsLmdldEFjdGlvbkkxOG5QYXJhbXMoYWN0aW9uLCBpdGVtLCBpMThuTW9kZWxOYW1lID8/IHVuZGVmaW5lZCwgaTE4blBhcmFtcywgaTE4bkZ1bmN0aW9uVGl0bGUpKTtcbiAgICAgICAgcmV0dXJuIEkxOG5VdGlsLnNlbGVjdEtleUJ5UHJpb3JpdHkoa2V5cywgaTE4bik7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBzdHJlYW1BY3Rpb25UcmFuc2xhdGlvbih0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsIGFjdGlvbjogQWN0aW9uRGVzY3JpcHRvcjxhbnk+LCBrZXlQYXRoOiBzdHJpbmcsIGN1c3RvbUtleT86IHN0cmluZywgaXRlbT86IGFueSwgZmFsbGJhY2tLZXk/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPHN0cmluZ3xudWxsPiB7XG4gICAgICAgIHJldHVybiBJMThuVXRpbC5nZXRBY3Rpb25UcmFuc2xhdGlvbih0cmFuc2xhdGUsIGFjdGlvbiwga2V5UGF0aCwgY3VzdG9tS2V5LCBpdGVtLCBmYWxsYmFja0tleSwgZmFsc2UpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0QWN0aW9uVHJhbnNsYXRpb24odHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLCBhY3Rpb246IEFjdGlvbkRlc2NyaXB0b3I8YW55Piwga2V5UGF0aDogc3RyaW5nLCBjdXN0b21LZXk/OiBzdHJpbmcsIGl0ZW0/OiBhbnksIGZhbGxiYWNrS2V5Pzogc3RyaW5nLCBvbmVUaW1lOiBib29sZWFuID0gdHJ1ZSk6IE9ic2VydmFibGU8c3RyaW5nfG51bGw+IHtcbiAgICAgICAgY29uc3Qga2V5cyA9IEkxOG5VdGlsLmdldEFjdGlvbktleXNCeVByaW9yaXR5KGFjdGlvbiwga2V5UGF0aCwgY3VzdG9tS2V5LCBmYWxsYmFja0tleSk7XG4gICAgICAgIHJldHVybiBJMThuVXRpbC5nZXRNb2RlbE5hbWUodHJhbnNsYXRlLCBhY3Rpb24/Lm1vZGVsLCBvbmVUaW1lLCB0cnVlKS5waXBlKFxuICAgICAgICAgICAgbWVyZ2VNYXAoaTE4bk1vZGVsTmFtZSA9PiB0cmFuc2xhdGUuZ2V0KGtleXMsIEkxOG5VdGlsLmdldEFjdGlvbkkxOG5QYXJhbXMoYWN0aW9uLCBpdGVtLCBpMThuTW9kZWxOYW1lID8/IHVuZGVmaW5lZCkpKSxcbiAgICAgICAgICAgIG1hcChpMThuID0+IEkxOG5VdGlsLnNlbGVjdEtleUJ5UHJpb3JpdHkoa2V5cywgaTE4bikpXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgZ2V0TW9kZWxLZXlzQnlQcmlvcml0eShtb2RlbDogTW9kZWxEZXNjcmlwdG9yPGFueT4sIGtleVBhdGg6IHN0cmluZywgY3VzdG9tS2V5Pzogc3RyaW5nLCBmYWxsYmFja0tleT86IHN0cmluZykge1xuICAgICAgICBjb25zdCBrZXlzID0gW107XG4gICAgICAgIGlmIChjdXN0b21LZXkpIHtcbiAgICAgICAgICAgIGtleXMucHVzaChjdXN0b21LZXkpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG1vZGVsQWN0aW9uS2V5ID0gYCR7bW9kZWwudHlwZU5hbWV9LiR7a2V5UGF0aH1gO1xuICAgICAgICBrZXlzLnB1c2gobW9kZWxBY3Rpb25LZXkpO1xuICAgICAgICBpZiAoZmFsbGJhY2tLZXkpIHtcbiAgICAgICAgICAgIGtleXMucHVzaChmYWxsYmFja0tleSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGtleXM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgZ2V0QWN0aW9uS2V5c0J5UHJpb3JpdHkoYWN0aW9uOiBBY3Rpb25EZXNjcmlwdG9yPGFueT4sIGtleVBhdGg6IHN0cmluZywgY3VzdG9tS2V5Pzogc3RyaW5nLCBmYWxsYmFja0tleT86IHN0cmluZykge1xuICAgICAgICBjb25zdCBrZXlzID0gW107XG4gICAgICAgIGlmIChjdXN0b21LZXkpIHtcbiAgICAgICAgICAgIGtleXMucHVzaChjdXN0b21LZXkpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG1vZGVsQWN0aW9uS2V5ID0gYCR7YWN0aW9uLmkxOG5Nb2RlbEFjdGlvbkJhc2VLZXl9LiR7a2V5UGF0aH1gO1xuICAgICAgICBjb25zdCBhY3Rpb25LZXkgPSBgJHthY3Rpb24uYWN0aW9uTmFtZX0uJHtrZXlQYXRofWA7XG4gICAgICAgIGtleXMucHVzaChtb2RlbEFjdGlvbktleSwgYWN0aW9uS2V5KTtcbiAgICAgICAgaWYgKGZhbGxiYWNrS2V5KSB7XG4gICAgICAgICAgICBrZXlzLnB1c2goZmFsbGJhY2tLZXkpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBrZXlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0TW9kZWxJMThuUGFyYW1zKG1vZGVsOiBNb2RlbERlc2NyaXB0b3I8YW55PiwgaXRlbTogYW55LCBpMThuTW9kZWxOYW1lPzogc3RyaW5nLCBpMThuUGFyYW1ldGVyczogYW55ID0ge30pIHtcbiAgICAgICAgaTE4blBhcmFtZXRlcnMuaXRlbUlkID0gJydcbiAgICAgICAgaTE4blBhcmFtZXRlcnMuaXRlbVRpdGxlID0gJydcblxuICAgICAgICBpZiAoaTE4bk1vZGVsTmFtZSkge1xuICAgICAgICAgICAgaTE4blBhcmFtZXRlcnMubW9kZWxOYW1lID0gaTE4bk1vZGVsTmFtZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXRlbSkge1xuICAgICAgICAgICAgaWYgKG1vZGVsLmlkUHJvcGVydHlOYW1lICYmIGl0ZW1bbW9kZWwuaWRQcm9wZXJ0eU5hbWVdKSB7XG4gICAgICAgICAgICAgICAgaTE4blBhcmFtZXRlcnMuaXRlbUlkID0gaXRlbVttb2RlbC5pZFByb3BlcnR5TmFtZV07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAobW9kZWwudGl0bGVQcm9wZXJ0eU5hbWUgJiYgaXRlbVttb2RlbC50aXRsZVByb3BlcnR5TmFtZV0pIHtcbiAgICAgICAgICAgICAgICBpMThuUGFyYW1ldGVycy5pdGVtVGl0bGUgPSBpdGVtW21vZGVsLnRpdGxlUHJvcGVydHlOYW1lXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaTE4blBhcmFtZXRlcnM7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXRBY3Rpb25JMThuUGFyYW1zKGFjdGlvbjogQWN0aW9uRGVzY3JpcHRvcjxhbnk+LCBpdGVtOiBhbnksIGkxOG5Nb2RlbE5hbWU/OiBzdHJpbmcsIGkxOG5QYXJhbWV0ZXJzOiBhbnkgPSB7fSwgZnVuY3Rpb25UaXRsZT86IHN0cmluZykge1xuICAgICAgICBpMThuUGFyYW1ldGVycy5pdGVtSWQgPSAnJ1xuICAgICAgICBpMThuUGFyYW1ldGVycy5pdGVtVGl0bGUgPSAnJ1xuXG4gICAgICAgIGlmIChmdW5jdGlvblRpdGxlKSB7XG4gICAgICAgICAgICBpMThuUGFyYW1ldGVycy5mdW5jdGlvblRpdGxlID0gZnVuY3Rpb25UaXRsZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaTE4bk1vZGVsTmFtZSkge1xuICAgICAgICAgICAgaTE4blBhcmFtZXRlcnMubW9kZWxOYW1lID0gaTE4bk1vZGVsTmFtZTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXRlbSkge1xuICAgICAgICAgICAgaWYgKGFjdGlvbi5tb2RlbC5pZFByb3BlcnR5TmFtZSAmJiBpdGVtW2FjdGlvbi5tb2RlbC5pZFByb3BlcnR5TmFtZV0pIHtcbiAgICAgICAgICAgICAgICBpMThuUGFyYW1ldGVycy5pdGVtSWQgPSBpdGVtW2FjdGlvbi5tb2RlbC5pZFByb3BlcnR5TmFtZV07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoYWN0aW9uLm1vZGVsLnRpdGxlUHJvcGVydHlOYW1lICYmIGl0ZW1bYWN0aW9uLm1vZGVsLnRpdGxlUHJvcGVydHlOYW1lXSkge1xuICAgICAgICAgICAgICAgIGkxOG5QYXJhbWV0ZXJzLml0ZW1UaXRsZSA9IGl0ZW1bYWN0aW9uLm1vZGVsLnRpdGxlUHJvcGVydHlOYW1lXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gaTE4blBhcmFtZXRlcnM7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBpbnN0YW50TW9kZWxOYW1lKHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSwgbW9kZWw6IE1vZGVsRGVzY3JpcHRvcjxhbnk+LCBzaW5ndWxhcj86IGJvb2xlYW4pOiBzdHJpbmd8bnVsbCB7XG4gICAgICAgIGNvbnN0IGtleXMgPSBJMThuVXRpbC5nZXRNb2RlbE5hbWVLZXlzKG1vZGVsLCBzaW5ndWxhcik7XG4gICAgICAgIGNvbnN0IGkxOG4gPSB0cmFuc2xhdGUuaW5zdGFudChrZXlzKTtcbiAgICAgICAgcmV0dXJuIEkxOG5VdGlsLnNlbGVjdEtleUJ5UHJpb3JpdHkoa2V5cywgaTE4bik7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXRNb2RlbE5hbWUodHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLCBtb2RlbDogTW9kZWxEZXNjcmlwdG9yPGFueT4sIG9uZVRpbWU6IGJvb2xlYW4gPSB0cnVlLCBzaW5ndWxhcj86IGJvb2xlYW4pOiBPYnNlcnZhYmxlPHN0cmluZ3xudWxsPiB7XG4gICAgICAgIGNvbnN0IGtleXMgPSBJMThuVXRpbC5nZXRNb2RlbE5hbWVLZXlzKG1vZGVsLCBzaW5ndWxhcik7XG4gICAgICAgIGNvbnN0IG9icyA9IHRyYW5zbGF0ZS5zdHJlYW0oa2V5cyk7XG4gICAgICAgIGlmIChvbmVUaW1lKSB7XG4gICAgICAgICAgICBvYnMucGlwZShmaXJzdCgpKVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBvYnMucGlwZShtYXAoaTE4biA9PiBJMThuVXRpbC5zZWxlY3RLZXlCeVByaW9yaXR5KGtleXMsIGkxOG4pKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXRNb2RlbE5hbWVLZXlzKG1vZGVsOiBNb2RlbERlc2NyaXB0b3I8YW55Piwgc2luZ3VsYXI/OiBib29sZWFuKSB7XG4gICAgICAgIGxldCBrZXlzID0gW107XG4gICAgICAgIGlmIChzaW5ndWxhciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBrZXlzLnB1c2goc2luZ3VsYXIgPyBgJHttb2RlbD8udHlwZU5hbWV9Lm5hbWVTaW5ndWxhcmAgOiBgJHttb2RlbD8udHlwZU5hbWV9Lm5hbWVQbHVyYWxgKTtcbiAgICAgICAgfVxuICAgICAgICBrZXlzLnB1c2goYCR7bW9kZWw/LnR5cGVOYW1lfS5uYW1lYCk7XG4gICAgICAgIHJldHVybiBrZXlzO1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIHNlbGVjdEtleUJ5UHJpb3JpdHkoa2V5czogc3RyaW5nW10sIGkxOG46IGFueSk6IHN0cmluZ3xudWxsIHtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgb2Yga2V5cykge1xuICAgICAgICAgICAgaWYgKGtleSAhPT0gaTE4bltrZXldKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGkxOG5ba2V5XTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXRpYyBnZXRGdW5jdGlvblRpdGxlKHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSwgZnVuY3Rpb25UaXRsZT86IHN0cmluZykge1xuICAgICAgICBpZiAoZnVuY3Rpb25UaXRsZSkge1xuICAgICAgICAgICAgY29uc3QgdHJhbnNsYXRpb24gPSB0cmFuc2xhdGUuaW5zdGFudChgbW5nQWN0aW9uLmZ1bmN0aW9ucy4ke2Z1bmN0aW9uVGl0bGV9LnRpdGxlYCk7XG4gICAgICAgICAgICBpZiAodHJhbnNsYXRpb24gPT09IGZ1bmN0aW9uVGl0bGUpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB0cmFuc2xhdGlvbjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
@@ -1,5 +1,6 @@
1
- export * from './editor-formly.util';
2
- export * from './i18n.util';
3
- export * from './model.util';
4
- export * from './type.util';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tbmctY29tbW9ucy9zcmMvbGliL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2VkaXRvci1mb3JtbHkudXRpbCc7XG5leHBvcnQgKiBmcm9tICcuL2kxOG4udXRpbCc7XG5leHBvcnQgKiBmcm9tICcuL21vZGVsLnV0aWwnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlLnV0aWwnO1xuIl19
1
+ export * from './editor-formly.util';
2
+ export * from './i18n.util';
3
+ export * from './model.util';
4
+ export * from './toast.util';
5
+ export * from './type.util';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2VkaXRvci1mb3JtbHkudXRpbCc7XG5leHBvcnQgKiBmcm9tICcuL2kxOG4udXRpbCc7XG5leHBvcnQgKiBmcm9tICcuL21vZGVsLnV0aWwnO1xuZXhwb3J0ICogZnJvbSAnLi90b2FzdC51dGlsJztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZS51dGlsJztcbiJdfQ==
@@ -1,38 +1,57 @@
1
- import { ObjectSerializer } from '../api/utils';
2
- export class ModelUtil {
3
- static findIdAttribute(classType) {
4
- const objSerializer = ObjectSerializer.get();
5
- const attributes = objSerializer.findAttributesDefinitionByClassType(classType);
6
- if (!attributes) {
7
- return null;
8
- }
9
- let idAttribute = attributes.find(a => a.name === 'id');
10
- if (!idAttribute) {
11
- // if no id, try with code
12
- idAttribute = attributes.find(a => a.name === 'code');
13
- if (!idAttribute) {
14
- // if no id or code, take the first attribute
15
- idAttribute = attributes[0];
16
- }
17
- }
18
- return idAttribute?.name ?? null;
19
- }
20
- static findTitleAttribute(classType) {
21
- const objSerializer = ObjectSerializer.get();
22
- const attributes = objSerializer.findAttributesDefinitionByClassType(classType);
23
- if (!attributes) {
24
- return null;
25
- }
26
- let titleAttribute = attributes.find(a => a.type === 'string' && a.name === 'name');
27
- if (!titleAttribute) {
28
- // if no name, try with title
29
- titleAttribute = attributes.find(a => a.type === 'string' && a.name === 'title');
30
- if (!titleAttribute) {
31
- // if no name or title, take the first attribute
32
- titleAttribute = attributes[0];
33
- }
34
- }
35
- return titleAttribute?.name ?? null;
36
- }
37
- }
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21uZy1jb21tb25zL3NyYy9saWIvdXRpbHMvbW9kZWwudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFFOUMsTUFBTSxPQUFPLFNBQVM7SUFDWCxNQUFNLENBQUMsZUFBZSxDQUFJLFNBQXVCO1FBQ3BELE1BQU0sYUFBYSxHQUFHLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQzdDLE1BQU0sVUFBVSxHQUFHLGFBQWEsQ0FBQyxtQ0FBbUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNoRixJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2IsT0FBTyxJQUFJLENBQUM7U0FDZjtRQUVELElBQUksV0FBVyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDZCwwQkFBMEI7WUFDMUIsV0FBVyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sQ0FBQyxDQUFDO1lBQ3RELElBQUksQ0FBQyxXQUFXLEVBQUU7Z0JBQ2QsNkNBQTZDO2dCQUM3QyxXQUFXLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQy9CO1NBQ0o7UUFFRCxPQUFPLFdBQVcsRUFBRSxJQUFJLElBQUksSUFBSSxDQUFDO0lBQ3JDLENBQUM7SUFFTSxNQUFNLENBQUMsa0JBQWtCLENBQUksU0FBdUI7UUFDdkQsTUFBTSxhQUFhLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDN0MsTUFBTSxVQUFVLEdBQUcsYUFBYSxDQUFDLG1DQUFtQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hGLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDYixPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsSUFBSSxjQUFjLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssUUFBUSxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssTUFBTSxDQUFDLENBQUM7UUFDcEYsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUNqQiw2QkFBNkI7WUFDN0IsY0FBYyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLFFBQVEsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQyxDQUFDO1lBQ2pGLElBQUksQ0FBQyxjQUFjLEVBQUU7Z0JBQ2pCLGdEQUFnRDtnQkFDaEQsY0FBYyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNsQztTQUNKO1FBRUQsT0FBTyxjQUFjLEVBQUUsSUFBSSxJQUFJLElBQUksQ0FBQztJQUN4QyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NsYXNzVHlwZX0gZnJvbSAnLi4vbW9kZWxzL3R5cGVzJztcblxuaW1wb3J0IHtPYmplY3RTZXJpYWxpemVyfSBmcm9tICcuLi9hcGkvdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgTW9kZWxVdGlsIHtcbiAgICBwdWJsaWMgc3RhdGljIGZpbmRJZEF0dHJpYnV0ZTxUPihjbGFzc1R5cGU6IENsYXNzVHlwZTxUPik6IHN0cmluZ3xudWxsIHtcbiAgICAgICAgY29uc3Qgb2JqU2VyaWFsaXplciA9IE9iamVjdFNlcmlhbGl6ZXIuZ2V0KCk7XG4gICAgICAgIGNvbnN0IGF0dHJpYnV0ZXMgPSBvYmpTZXJpYWxpemVyLmZpbmRBdHRyaWJ1dGVzRGVmaW5pdGlvbkJ5Q2xhc3NUeXBlKGNsYXNzVHlwZSk7XG4gICAgICAgIGlmICghYXR0cmlidXRlcykge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgaWRBdHRyaWJ1dGUgPSBhdHRyaWJ1dGVzLmZpbmQoYSA9PiBhLm5hbWUgPT09ICdpZCcpO1xuICAgICAgICBpZiAoIWlkQXR0cmlidXRlKSB7XG4gICAgICAgICAgICAvLyBpZiBubyBpZCwgdHJ5IHdpdGggY29kZVxuICAgICAgICAgICAgaWRBdHRyaWJ1dGUgPSBhdHRyaWJ1dGVzLmZpbmQoYSA9PiBhLm5hbWUgPT09ICdjb2RlJyk7XG4gICAgICAgICAgICBpZiAoIWlkQXR0cmlidXRlKSB7XG4gICAgICAgICAgICAgICAgLy8gaWYgbm8gaWQgb3IgY29kZSwgdGFrZSB0aGUgZmlyc3QgYXR0cmlidXRlXG4gICAgICAgICAgICAgICAgaWRBdHRyaWJ1dGUgPSBhdHRyaWJ1dGVzWzBdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGlkQXR0cmlidXRlPy5uYW1lID8/IG51bGw7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBmaW5kVGl0bGVBdHRyaWJ1dGU8VD4oY2xhc3NUeXBlOiBDbGFzc1R5cGU8VD4pOiBzdHJpbmd8bnVsbCB7XG4gICAgICAgIGNvbnN0IG9ialNlcmlhbGl6ZXIgPSBPYmplY3RTZXJpYWxpemVyLmdldCgpO1xuICAgICAgICBjb25zdCBhdHRyaWJ1dGVzID0gb2JqU2VyaWFsaXplci5maW5kQXR0cmlidXRlc0RlZmluaXRpb25CeUNsYXNzVHlwZShjbGFzc1R5cGUpO1xuICAgICAgICBpZiAoIWF0dHJpYnV0ZXMpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IHRpdGxlQXR0cmlidXRlID0gYXR0cmlidXRlcy5maW5kKGEgPT4gYS50eXBlID09PSAnc3RyaW5nJyAmJiBhLm5hbWUgPT09ICduYW1lJyk7XG4gICAgICAgIGlmICghdGl0bGVBdHRyaWJ1dGUpIHtcbiAgICAgICAgICAgIC8vIGlmIG5vIG5hbWUsIHRyeSB3aXRoIHRpdGxlXG4gICAgICAgICAgICB0aXRsZUF0dHJpYnV0ZSA9IGF0dHJpYnV0ZXMuZmluZChhID0+IGEudHlwZSA9PT0gJ3N0cmluZycgJiYgYS5uYW1lID09PSAndGl0bGUnKTtcbiAgICAgICAgICAgIGlmICghdGl0bGVBdHRyaWJ1dGUpIHtcbiAgICAgICAgICAgICAgICAvLyBpZiBubyBuYW1lIG9yIHRpdGxlLCB0YWtlIHRoZSBmaXJzdCBhdHRyaWJ1dGVcbiAgICAgICAgICAgICAgICB0aXRsZUF0dHJpYnV0ZSA9IGF0dHJpYnV0ZXNbMF07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGl0bGVBdHRyaWJ1dGU/Lm5hbWUgPz8gbnVsbDtcbiAgICB9XG59XG4iXX0=
1
+ import { ObjectSerializer } from '../api/utils';
2
+ export class ModelUtil {
3
+ static findIdAttribute(classType) {
4
+ const objSerializer = ObjectSerializer.get();
5
+ const attributes = objSerializer.findAttributesDefinitionByClassType(classType);
6
+ if (!attributes) {
7
+ return null;
8
+ }
9
+ let idAttribute = attributes.find(a => a.name === 'id');
10
+ if (!idAttribute) {
11
+ // if no id, try with code
12
+ idAttribute = attributes.find(a => a.name === 'code');
13
+ if (!idAttribute) {
14
+ // if no id or code, take the first attribute
15
+ idAttribute = attributes[0];
16
+ }
17
+ }
18
+ return idAttribute?.name ?? null;
19
+ }
20
+ static findTitleAttribute(classType) {
21
+ const objSerializer = ObjectSerializer.get();
22
+ const attributes = objSerializer.findAttributesDefinitionByClassType(classType);
23
+ if (!attributes) {
24
+ return null;
25
+ }
26
+ let titleAttribute = attributes.find(a => a.type === 'string' && a.name === 'name');
27
+ if (!titleAttribute) {
28
+ // if no name, try with title
29
+ titleAttribute = attributes.find(a => a.type === 'string' && a.name === 'title');
30
+ if (!titleAttribute) {
31
+ // if no name or title, take the first attribute
32
+ titleAttribute = attributes[0];
33
+ }
34
+ }
35
+ return titleAttribute?.name ?? null;
36
+ }
37
+ static trySetLookupItemsProperties(lookup) {
38
+ if (lookup.modelType) {
39
+ if (!lookup.itemsValueProperty || !lookup.dataKeyProperty) {
40
+ const idProperty = ModelUtil.findIdAttribute(lookup.modelType) ?? undefined;
41
+ if (idProperty && !lookup.itemsValueProperty) {
42
+ lookup.withItemsValueProperty(idProperty);
43
+ }
44
+ if (idProperty && !lookup.dataKeyProperty) {
45
+ lookup.withDataKeyProperty(idProperty);
46
+ }
47
+ }
48
+ if (!lookup.itemsLabelProperty) {
49
+ const labelProperty = ModelUtil.findTitleAttribute(lookup.modelType);
50
+ if (labelProperty) {
51
+ lookup.withItemsLabelProperty(labelProperty);
52
+ }
53
+ }
54
+ }
55
+ }
56
+ }
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdXRpbHMvbW9kZWwudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFHOUMsTUFBTSxPQUFPLFNBQVM7SUFDWCxNQUFNLENBQUMsZUFBZSxDQUFJLFNBQXVCO1FBQ3BELE1BQU0sYUFBYSxHQUFHLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQzdDLE1BQU0sVUFBVSxHQUFHLGFBQWEsQ0FBQyxtQ0FBbUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNoRixJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2IsT0FBTyxJQUFJLENBQUM7U0FDZjtRQUVELElBQUksV0FBVyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDZCwwQkFBMEI7WUFDMUIsV0FBVyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sQ0FBQyxDQUFDO1lBQ3RELElBQUksQ0FBQyxXQUFXLEVBQUU7Z0JBQ2QsNkNBQTZDO2dCQUM3QyxXQUFXLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQy9CO1NBQ0o7UUFFRCxPQUFPLFdBQVcsRUFBRSxJQUFJLElBQUksSUFBSSxDQUFDO0lBQ3JDLENBQUM7SUFFTSxNQUFNLENBQUMsa0JBQWtCLENBQUksU0FBdUI7UUFDdkQsTUFBTSxhQUFhLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDN0MsTUFBTSxVQUFVLEdBQUcsYUFBYSxDQUFDLG1DQUFtQyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2hGLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDYixPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsSUFBSSxjQUFjLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssUUFBUSxJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssTUFBTSxDQUFDLENBQUM7UUFDcEYsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUNqQiw2QkFBNkI7WUFDN0IsY0FBYyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLFFBQVEsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQyxDQUFDO1lBQ2pGLElBQUksQ0FBQyxjQUFjLEVBQUU7Z0JBQ2pCLGdEQUFnRDtnQkFDaEQsY0FBYyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNsQztTQUNKO1FBRUQsT0FBTyxjQUFjLEVBQUUsSUFBSSxJQUFJLElBQUksQ0FBQztJQUN4QyxDQUFDO0lBRU0sTUFBTSxDQUFDLDJCQUEyQixDQUFJLE1BQTRCO1FBQ3JFLElBQUksTUFBTSxDQUFDLFNBQVMsRUFBRTtZQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRTtnQkFDdkQsTUFBTSxVQUFVLEdBQUcsU0FBUyxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksU0FBUyxDQUFDO2dCQUM1RSxJQUFJLFVBQVUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsRUFBRTtvQkFDMUMsTUFBTSxDQUFDLHNCQUFzQixDQUFDLFVBQVUsQ0FBQyxDQUFDO2lCQUM3QztnQkFDRCxJQUFJLFVBQVUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLEVBQUU7b0JBQ3ZDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztpQkFDMUM7YUFDSjtZQUNELElBQUksQ0FBQyxNQUFNLENBQUMsa0JBQWtCLEVBQUU7Z0JBQzVCLE1BQU0sYUFBYSxHQUFHLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBQ3JFLElBQUksYUFBYSxFQUFFO29CQUNmLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxhQUFhLENBQUMsQ0FBQztpQkFDaEQ7YUFDSjtTQUNKO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDbGFzc1R5cGV9IGZyb20gJy4uL3R5cGVzJztcblxuaW1wb3J0IHtPYmplY3RTZXJpYWxpemVyfSBmcm9tICcuLi9hcGkvdXRpbHMnO1xuaW1wb3J0IHtJTG9va3VwRGVzY3JpcHRvcn0gZnJvbSAnLi4vZGVzY3JpcHRvcnMnO1xuXG5leHBvcnQgY2xhc3MgTW9kZWxVdGlsIHtcbiAgICBwdWJsaWMgc3RhdGljIGZpbmRJZEF0dHJpYnV0ZTxUPihjbGFzc1R5cGU6IENsYXNzVHlwZTxUPik6IHN0cmluZ3xudWxsIHtcbiAgICAgICAgY29uc3Qgb2JqU2VyaWFsaXplciA9IE9iamVjdFNlcmlhbGl6ZXIuZ2V0KCk7XG4gICAgICAgIGNvbnN0IGF0dHJpYnV0ZXMgPSBvYmpTZXJpYWxpemVyLmZpbmRBdHRyaWJ1dGVzRGVmaW5pdGlvbkJ5Q2xhc3NUeXBlKGNsYXNzVHlwZSk7XG4gICAgICAgIGlmICghYXR0cmlidXRlcykge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBsZXQgaWRBdHRyaWJ1dGUgPSBhdHRyaWJ1dGVzLmZpbmQoYSA9PiBhLm5hbWUgPT09ICdpZCcpO1xuICAgICAgICBpZiAoIWlkQXR0cmlidXRlKSB7XG4gICAgICAgICAgICAvLyBpZiBubyBpZCwgdHJ5IHdpdGggY29kZVxuICAgICAgICAgICAgaWRBdHRyaWJ1dGUgPSBhdHRyaWJ1dGVzLmZpbmQoYSA9PiBhLm5hbWUgPT09ICdjb2RlJyk7XG4gICAgICAgICAgICBpZiAoIWlkQXR0cmlidXRlKSB7XG4gICAgICAgICAgICAgICAgLy8gaWYgbm8gaWQgb3IgY29kZSwgdGFrZSB0aGUgZmlyc3QgYXR0cmlidXRlXG4gICAgICAgICAgICAgICAgaWRBdHRyaWJ1dGUgPSBhdHRyaWJ1dGVzWzBdO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGlkQXR0cmlidXRlPy5uYW1lID8/IG51bGw7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBmaW5kVGl0bGVBdHRyaWJ1dGU8VD4oY2xhc3NUeXBlOiBDbGFzc1R5cGU8VD4pOiBzdHJpbmd8bnVsbCB7XG4gICAgICAgIGNvbnN0IG9ialNlcmlhbGl6ZXIgPSBPYmplY3RTZXJpYWxpemVyLmdldCgpO1xuICAgICAgICBjb25zdCBhdHRyaWJ1dGVzID0gb2JqU2VyaWFsaXplci5maW5kQXR0cmlidXRlc0RlZmluaXRpb25CeUNsYXNzVHlwZShjbGFzc1R5cGUpO1xuICAgICAgICBpZiAoIWF0dHJpYnV0ZXMpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IHRpdGxlQXR0cmlidXRlID0gYXR0cmlidXRlcy5maW5kKGEgPT4gYS50eXBlID09PSAnc3RyaW5nJyAmJiBhLm5hbWUgPT09ICduYW1lJyk7XG4gICAgICAgIGlmICghdGl0bGVBdHRyaWJ1dGUpIHtcbiAgICAgICAgICAgIC8vIGlmIG5vIG5hbWUsIHRyeSB3aXRoIHRpdGxlXG4gICAgICAgICAgICB0aXRsZUF0dHJpYnV0ZSA9IGF0dHJpYnV0ZXMuZmluZChhID0+IGEudHlwZSA9PT0gJ3N0cmluZycgJiYgYS5uYW1lID09PSAndGl0bGUnKTtcbiAgICAgICAgICAgIGlmICghdGl0bGVBdHRyaWJ1dGUpIHtcbiAgICAgICAgICAgICAgICAvLyBpZiBubyBuYW1lIG9yIHRpdGxlLCB0YWtlIHRoZSBmaXJzdCBhdHRyaWJ1dGVcbiAgICAgICAgICAgICAgICB0aXRsZUF0dHJpYnV0ZSA9IGF0dHJpYnV0ZXNbMF07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGl0bGVBdHRyaWJ1dGU/Lm5hbWUgPz8gbnVsbDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHRyeVNldExvb2t1cEl0ZW1zUHJvcGVydGllczxUPihsb29rdXA6IElMb29rdXBEZXNjcmlwdG9yPFQ+KSB7XG4gICAgICAgIGlmIChsb29rdXAubW9kZWxUeXBlKSB7XG4gICAgICAgICAgICBpZiAoIWxvb2t1cC5pdGVtc1ZhbHVlUHJvcGVydHkgfHwgIWxvb2t1cC5kYXRhS2V5UHJvcGVydHkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBpZFByb3BlcnR5ID0gTW9kZWxVdGlsLmZpbmRJZEF0dHJpYnV0ZShsb29rdXAubW9kZWxUeXBlKSA/PyB1bmRlZmluZWQ7XG4gICAgICAgICAgICAgICAgaWYgKGlkUHJvcGVydHkgJiYgIWxvb2t1cC5pdGVtc1ZhbHVlUHJvcGVydHkpIHtcbiAgICAgICAgICAgICAgICAgICAgbG9va3VwLndpdGhJdGVtc1ZhbHVlUHJvcGVydHkoaWRQcm9wZXJ0eSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChpZFByb3BlcnR5ICYmICFsb29rdXAuZGF0YUtleVByb3BlcnR5KSB7XG4gICAgICAgICAgICAgICAgICAgIGxvb2t1cC53aXRoRGF0YUtleVByb3BlcnR5KGlkUHJvcGVydHkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghbG9va3VwLml0ZW1zTGFiZWxQcm9wZXJ0eSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGxhYmVsUHJvcGVydHkgPSBNb2RlbFV0aWwuZmluZFRpdGxlQXR0cmlidXRlKGxvb2t1cC5tb2RlbFR5cGUpO1xuICAgICAgICAgICAgICAgIGlmIChsYWJlbFByb3BlcnR5KSB7XG4gICAgICAgICAgICAgICAgICAgIGxvb2t1cC53aXRoSXRlbXNMYWJlbFByb3BlcnR5KGxhYmVsUHJvcGVydHkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -1,26 +1,39 @@
1
- import { I18nUtil } from "./i18n.util";
2
- export class ToastUtil {
3
- static actionNotificationSuccess(translationService, action, functionName, customTitleKey, customMessageKey, tableview, item) {
4
- const actionSuccessTitle = I18nUtil.instantActionTranslation(translationService, action, 'success.title', customTitleKey, item, 'general.success', functionName) ?? undefined;
5
- const actionSuccessMessage = I18nUtil.instantActionTranslation(translationService, action, 'success.message', customMessageKey, item, 'general.successMessage', functionName) ?? undefined;
6
- tableview?.messageService?.add({ severity: 'success', summary: actionSuccessTitle, detail: actionSuccessMessage });
7
- }
8
- static actionNotificationError(translationService, action, error, functionName, tableview, item) {
9
- const params = {};
10
- if (error?.message) {
11
- params.errorMessage = `: ${error.message}`;
12
- }
13
- else {
14
- params.errorMessage = '.';
15
- }
16
- const actionErrorTitle = I18nUtil.instantActionTranslation(translationService, action, 'error.title', action.runNotificationErrorTitle, item, 'general.error', functionName, params) ?? undefined;
17
- const actionErrorMessage = I18nUtil.instantActionTranslation(translationService, action, 'error.message', action.runNotificationErrorMessage, item, 'general.errorMessage', functionName, params) ?? undefined;
18
- tableview?.messageService?.add({ severity: 'error', summary: actionErrorTitle, detail: actionErrorMessage });
19
- }
20
- static getFormEditorWarningMessage(translationService, title, message) {
21
- const actionErrorTitle = translationService.instant(title) ?? undefined;
22
- const actionErrorMessage = translationService.instant(message) ?? undefined;
23
- return { severity: 'warn', summary: actionErrorTitle, detail: actionErrorMessage };
24
- }
25
- }
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21uZy1jb21tb25zL3NyYy9saWIvdXRpbHMvdG9hc3QudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBRXJDLE1BQU0sT0FBTyxTQUFTO0lBQ1gsTUFBTSxDQUFDLHlCQUF5QixDQUFDLGtCQUFvQyxFQUFFLE1BQTZCLEVBQUUsWUFBb0IsRUFBRSxjQUF1QixFQUFFLGdCQUF5QixFQUFFLFNBQStDLEVBQUUsSUFBVTtRQUM5TyxNQUFNLGtCQUFrQixHQUFHLFFBQVEsQ0FBQyx3QkFBd0IsQ0FBQyxrQkFBa0IsRUFBRSxNQUFNLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxDQUFDLElBQUksU0FBUyxDQUFDO1FBQzlLLE1BQU0sb0JBQW9CLEdBQUcsUUFBUSxDQUFDLHdCQUF3QixDQUFDLGtCQUFrQixFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsd0JBQXdCLEVBQUUsWUFBWSxDQUFDLElBQUksU0FBUyxDQUFDO1FBRTNMLFNBQVMsRUFBRSxjQUFjLEVBQUUsR0FBRyxDQUFDLEVBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxFQUFFLG9CQUFvQixFQUFDLENBQUMsQ0FBQztJQUNySCxDQUFDO0lBRU0sTUFBTSxDQUFDLHVCQUF1QixDQUFDLGtCQUFvQyxFQUFFLE1BQTZCLEVBQUUsS0FBVSxFQUFFLFlBQW9CLEVBQUUsU0FBK0MsRUFBRSxJQUFVO1FBQ3BNLE1BQU0sTUFBTSxHQUFRLEVBQUUsQ0FBQTtRQUN0QixJQUFJLEtBQUssRUFBRSxPQUFPLEVBQUU7WUFDaEIsTUFBTSxDQUFDLFlBQVksR0FBRyxLQUFLLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUM5QzthQUFNO1lBQ0gsTUFBTSxDQUFDLFlBQVksR0FBRyxHQUFHLENBQUM7U0FDN0I7UUFDRCxNQUFNLGdCQUFnQixHQUFHLFFBQVEsQ0FBQyx3QkFBd0IsQ0FBQyxrQkFBa0IsRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLE1BQU0sQ0FBQyx5QkFBeUIsRUFDbEksSUFBSSxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxDQUFDLElBQUksU0FBUyxDQUFDO1FBQzlELE1BQU0sa0JBQWtCLEdBQUcsUUFBUSxDQUFDLHdCQUF3QixDQUFDLGtCQUFrQixFQUFFLE1BQU0sRUFBRSxlQUFlLEVBQUUsTUFBTSxDQUFDLDJCQUEyQixFQUN4SSxJQUFJLEVBQUUsc0JBQXNCLEVBQUUsWUFBWSxFQUFFLE1BQU0sQ0FBQyxJQUFJLFNBQVMsQ0FBQztRQUVyRSxTQUFTLEVBQUUsY0FBYyxFQUFFLEdBQUcsQ0FBQyxFQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxrQkFBa0IsRUFBQyxDQUFDLENBQUM7SUFDL0csQ0FBQztJQUVNLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxrQkFBb0MsRUFBRSxLQUFhLEVBQUUsT0FBZTtRQUMxRyxNQUFNLGdCQUFnQixHQUFHLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxTQUFTLENBQUM7UUFDeEUsTUFBTSxrQkFBa0IsR0FBRyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksU0FBUyxDQUFDO1FBQzVFLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsa0JBQWtCLEVBQUMsQ0FBQztJQUNwRixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1RyYW5zbGF0ZVNlcnZpY2V9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XG5pbXBvcnQge0FjdGlvbkRlc2NyaXB0b3J9IGZyb20gXCIuLi9tb2RlbHMvZGVzY3JpcHRvcnNcIjtcbmltcG9ydCB7VGFibGV2aWV3Q29tcG9uZW50U2VydmljZX0gZnJvbSBcIi4uL2NvbXBvbmVudHMvdGFibGV2aWV3L3RhYmxldmlldy5jb21wb25lbnQuc2VydmljZVwiO1xuaW1wb3J0IHtJMThuVXRpbH0gZnJvbSBcIi4vaTE4bi51dGlsXCI7XG5cbmV4cG9ydCBjbGFzcyBUb2FzdFV0aWwge1xuICAgIHB1YmxpYyBzdGF0aWMgYWN0aW9uTm90aWZpY2F0aW9uU3VjY2Vzcyh0cmFuc2xhdGlvblNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsIGFjdGlvbjogQWN0aW9uRGVzY3JpcHRvcjxhbnk+LCBmdW5jdGlvbk5hbWU6IHN0cmluZywgY3VzdG9tVGl0bGVLZXk/OiBzdHJpbmcsIGN1c3RvbU1lc3NhZ2VLZXk/OiBzdHJpbmcsIHRhYmxldmlldz86IFRhYmxldmlld0NvbXBvbmVudFNlcnZpY2U8YW55LCBhbnk+LCBpdGVtPzogYW55KSB7XG4gICAgICAgIGNvbnN0IGFjdGlvblN1Y2Nlc3NUaXRsZSA9IEkxOG5VdGlsLmluc3RhbnRBY3Rpb25UcmFuc2xhdGlvbih0cmFuc2xhdGlvblNlcnZpY2UsIGFjdGlvbiwgJ3N1Y2Nlc3MudGl0bGUnLCBjdXN0b21UaXRsZUtleSwgaXRlbSwgJ2dlbmVyYWwuc3VjY2VzcycsIGZ1bmN0aW9uTmFtZSkgPz8gdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBhY3Rpb25TdWNjZXNzTWVzc2FnZSA9IEkxOG5VdGlsLmluc3RhbnRBY3Rpb25UcmFuc2xhdGlvbih0cmFuc2xhdGlvblNlcnZpY2UsIGFjdGlvbiwgJ3N1Y2Nlc3MubWVzc2FnZScsIGN1c3RvbU1lc3NhZ2VLZXksIGl0ZW0sICdnZW5lcmFsLnN1Y2Nlc3NNZXNzYWdlJywgZnVuY3Rpb25OYW1lKSA/PyB1bmRlZmluZWQ7XG5cbiAgICAgICAgdGFibGV2aWV3Py5tZXNzYWdlU2VydmljZT8uYWRkKHtzZXZlcml0eTogJ3N1Y2Nlc3MnLCBzdW1tYXJ5OiBhY3Rpb25TdWNjZXNzVGl0bGUsIGRldGFpbDogYWN0aW9uU3VjY2Vzc01lc3NhZ2V9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGFjdGlvbk5vdGlmaWNhdGlvbkVycm9yKHRyYW5zbGF0aW9uU2VydmljZTogVHJhbnNsYXRlU2VydmljZSwgYWN0aW9uOiBBY3Rpb25EZXNjcmlwdG9yPGFueT4sIGVycm9yOiBhbnksIGZ1bmN0aW9uTmFtZTogc3RyaW5nLCB0YWJsZXZpZXc/OiBUYWJsZXZpZXdDb21wb25lbnRTZXJ2aWNlPGFueSwgYW55PiwgaXRlbT86IGFueSkge1xuICAgICAgICBjb25zdCBwYXJhbXM6IGFueSA9IHt9XG4gICAgICAgIGlmIChlcnJvcj8ubWVzc2FnZSkge1xuICAgICAgICAgICAgcGFyYW1zLmVycm9yTWVzc2FnZSA9IGA6ICR7ZXJyb3IubWVzc2FnZX1gO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcGFyYW1zLmVycm9yTWVzc2FnZSA9ICcuJztcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBhY3Rpb25FcnJvclRpdGxlID0gSTE4blV0aWwuaW5zdGFudEFjdGlvblRyYW5zbGF0aW9uKHRyYW5zbGF0aW9uU2VydmljZSwgYWN0aW9uLCAnZXJyb3IudGl0bGUnLCBhY3Rpb24ucnVuTm90aWZpY2F0aW9uRXJyb3JUaXRsZSxcbiAgICAgICAgICAgIGl0ZW0sICdnZW5lcmFsLmVycm9yJywgZnVuY3Rpb25OYW1lLCBwYXJhbXMpID8/IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgYWN0aW9uRXJyb3JNZXNzYWdlID0gSTE4blV0aWwuaW5zdGFudEFjdGlvblRyYW5zbGF0aW9uKHRyYW5zbGF0aW9uU2VydmljZSwgYWN0aW9uLCAnZXJyb3IubWVzc2FnZScsIGFjdGlvbi5ydW5Ob3RpZmljYXRpb25FcnJvck1lc3NhZ2UsXG4gICAgICAgICAgICBpdGVtLCAnZ2VuZXJhbC5lcnJvck1lc3NhZ2UnLCBmdW5jdGlvbk5hbWUsIHBhcmFtcykgPz8gdW5kZWZpbmVkO1xuXG4gICAgICAgIHRhYmxldmlldz8ubWVzc2FnZVNlcnZpY2U/LmFkZCh7c2V2ZXJpdHk6ICdlcnJvcicsIHN1bW1hcnk6IGFjdGlvbkVycm9yVGl0bGUsIGRldGFpbDogYWN0aW9uRXJyb3JNZXNzYWdlfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXRGb3JtRWRpdG9yV2FybmluZ01lc3NhZ2UodHJhbnNsYXRpb25TZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLCB0aXRsZTogc3RyaW5nLCBtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgYWN0aW9uRXJyb3JUaXRsZSA9IHRyYW5zbGF0aW9uU2VydmljZS5pbnN0YW50KHRpdGxlKSA/PyB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGFjdGlvbkVycm9yTWVzc2FnZSA9IHRyYW5zbGF0aW9uU2VydmljZS5pbnN0YW50KG1lc3NhZ2UpID8/IHVuZGVmaW5lZDtcbiAgICAgICAgcmV0dXJuIHtzZXZlcml0eTond2FybicsIHN1bW1hcnk6IGFjdGlvbkVycm9yVGl0bGUsIGRldGFpbDogYWN0aW9uRXJyb3JNZXNzYWdlfTtcbiAgICB9XG59XG4iXX0=
1
+ import { I18nUtil } from './i18n.util';
2
+ export class ToastUtil {
3
+ static tableNotificationError(translationService, table, error, tableview) {
4
+ const params = {};
5
+ if (error?.message) {
6
+ params.errorMessage = `: ${error.message}`;
7
+ }
8
+ else {
9
+ params.errorMessage = '.';
10
+ }
11
+ console.log(params);
12
+ const tableErrorTitle = I18nUtil.instantModelTranslation(translationService, table.model, 'table.error.title', undefined, undefined, 'general.error', params) ?? undefined;
13
+ const tableErrorMessage = I18nUtil.instantModelTranslation(translationService, table.model, 'table.error.message', undefined, undefined, 'general.errorMessage', params) ?? undefined;
14
+ tableview?.messageService?.add({ severity: 'error', summary: tableErrorTitle, detail: tableErrorMessage });
15
+ }
16
+ static actionNotificationSuccess(translationService, action, functionName, customTitleKey, customMessageKey, tableview, item) {
17
+ const actionSuccessTitle = I18nUtil.instantActionTranslation(translationService, action, 'success.title', customTitleKey, item, 'general.success', functionName) ?? undefined;
18
+ const actionSuccessMessage = I18nUtil.instantActionTranslation(translationService, action, 'success.message', customMessageKey, item, 'general.successMessage', functionName) ?? undefined;
19
+ tableview?.messageService?.add({ severity: 'success', summary: actionSuccessTitle, detail: actionSuccessMessage });
20
+ }
21
+ static actionNotificationError(translationService, action, error, functionName, tableview, item) {
22
+ const params = {};
23
+ if (error?.message) {
24
+ params.errorMessage = `: ${error.message}`;
25
+ }
26
+ else {
27
+ params.errorMessage = '.';
28
+ }
29
+ const actionErrorTitle = I18nUtil.instantActionTranslation(translationService, action, 'error.title', action.runNotificationErrorTitle, item, 'general.error', functionName, params) ?? undefined;
30
+ const actionErrorMessage = I18nUtil.instantActionTranslation(translationService, action, 'error.message', action.runNotificationErrorMessage, item, 'general.errorMessage', functionName, params) ?? undefined;
31
+ tableview?.messageService?.add({ severity: 'error', summary: actionErrorTitle, detail: actionErrorMessage });
32
+ }
33
+ static getFormEditorWarningMessage(translationService, title, message) {
34
+ const actionErrorTitle = translationService.instant(title) ?? undefined;
35
+ const actionErrorMessage = translationService.instant(message) ?? undefined;
36
+ return { severity: 'warn', summary: actionErrorTitle, detail: actionErrorMessage };
37
+ }
38
+ }
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QudXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdXRpbHMvdG9hc3QudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sYUFBYSxDQUFDO0FBRXJDLE1BQU0sT0FBTyxTQUFTO0lBRVgsTUFBTSxDQUFDLHNCQUFzQixDQUFDLGtCQUFvQyxFQUFFLEtBQTJCLEVBQUUsS0FBVSxFQUFFLFNBQStDO1FBQy9KLE1BQU0sTUFBTSxHQUFRLEVBQUUsQ0FBQTtRQUN0QixJQUFJLEtBQUssRUFBRSxPQUFPLEVBQUU7WUFDaEIsTUFBTSxDQUFDLFlBQVksR0FBRyxLQUFLLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUM5QzthQUFNO1lBQ0gsTUFBTSxDQUFDLFlBQVksR0FBRyxHQUFHLENBQUM7U0FDN0I7UUFDRCxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQ25CLE1BQU0sZUFBZSxHQUFHLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLG1CQUFtQixFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLE1BQU0sQ0FBQyxJQUFJLFNBQVMsQ0FBQztRQUMzSyxNQUFNLGlCQUFpQixHQUFHLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxrQkFBa0IsRUFBRSxLQUFLLENBQUMsS0FBSyxFQUFFLHFCQUFxQixFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxDQUFDLElBQUksU0FBUyxDQUFDO1FBRXRMLFNBQVMsRUFBRSxjQUFjLEVBQUUsR0FBRyxDQUFDLEVBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBQyxDQUFDLENBQUM7SUFDN0csQ0FBQztJQUVNLE1BQU0sQ0FBQyx5QkFBeUIsQ0FBQyxrQkFBb0MsRUFBRSxNQUE2QixFQUFFLFlBQW9CLEVBQUUsY0FBdUIsRUFBRSxnQkFBeUIsRUFBRSxTQUErQyxFQUFFLElBQVU7UUFDOU8sTUFBTSxrQkFBa0IsR0FBRyxRQUFRLENBQUMsd0JBQXdCLENBQUMsa0JBQWtCLEVBQUUsTUFBTSxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFLFlBQVksQ0FBQyxJQUFJLFNBQVMsQ0FBQztRQUM5SyxNQUFNLG9CQUFvQixHQUFHLFFBQVEsQ0FBQyx3QkFBd0IsQ0FBQyxrQkFBa0IsRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLHdCQUF3QixFQUFFLFlBQVksQ0FBQyxJQUFJLFNBQVMsQ0FBQztRQUUzTCxTQUFTLEVBQUUsY0FBYyxFQUFFLEdBQUcsQ0FBQyxFQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sRUFBRSxvQkFBb0IsRUFBQyxDQUFDLENBQUM7SUFDckgsQ0FBQztJQUVNLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxrQkFBb0MsRUFBRSxNQUE2QixFQUFFLEtBQVUsRUFBRSxZQUFvQixFQUFFLFNBQStDLEVBQUUsSUFBVTtRQUNwTSxNQUFNLE1BQU0sR0FBUSxFQUFFLENBQUE7UUFDdEIsSUFBSSxLQUFLLEVBQUUsT0FBTyxFQUFFO1lBQ2hCLE1BQU0sQ0FBQyxZQUFZLEdBQUcsS0FBSyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDOUM7YUFBTTtZQUNILE1BQU0sQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDO1NBQzdCO1FBQ0QsTUFBTSxnQkFBZ0IsR0FBRyxRQUFRLENBQUMsd0JBQXdCLENBQUMsa0JBQWtCLEVBQUUsTUFBTSxFQUFFLGFBQWEsRUFBRSxNQUFNLENBQUMseUJBQXlCLEVBQ2xJLElBQUksRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sQ0FBQyxJQUFJLFNBQVMsQ0FBQztRQUM5RCxNQUFNLGtCQUFrQixHQUFHLFFBQVEsQ0FBQyx3QkFBd0IsQ0FBQyxrQkFBa0IsRUFBRSxNQUFNLEVBQUUsZUFBZSxFQUFFLE1BQU0sQ0FBQywyQkFBMkIsRUFDeEksSUFBSSxFQUFFLHNCQUFzQixFQUFFLFlBQVksRUFBRSxNQUFNLENBQUMsSUFBSSxTQUFTLENBQUM7UUFFckUsU0FBUyxFQUFFLGNBQWMsRUFBRSxHQUFHLENBQUMsRUFBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsa0JBQWtCLEVBQUMsQ0FBQyxDQUFDO0lBQy9HLENBQUM7SUFFTSxNQUFNLENBQUMsMkJBQTJCLENBQUMsa0JBQW9DLEVBQUUsS0FBYSxFQUFFLE9BQWU7UUFDMUcsTUFBTSxnQkFBZ0IsR0FBRyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksU0FBUyxDQUFDO1FBQ3hFLE1BQU0sa0JBQWtCLEdBQUcsa0JBQWtCLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLFNBQVMsQ0FBQztRQUM1RSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLGtCQUFrQixFQUFDLENBQUM7SUFDcEYsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7QWN0aW9uRGVzY3JpcHRvciwgVGFibGVEZXNjcmlwdG9yfSBmcm9tICcuLi9kZXNjcmlwdG9ycyc7XG5pbXBvcnQge1RhYmxldmlld0NvbXBvbmVudFNlcnZpY2V9IGZyb20gJy4uL2NvbXBvbmVudHMvdGFibGV2aWV3L3NlcnZpY2VzJztcbmltcG9ydCB7STE4blV0aWx9IGZyb20gJy4vaTE4bi51dGlsJztcblxuZXhwb3J0IGNsYXNzIFRvYXN0VXRpbCB7XG5cbiAgICBwdWJsaWMgc3RhdGljIHRhYmxlTm90aWZpY2F0aW9uRXJyb3IodHJhbnNsYXRpb25TZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLCB0YWJsZTogVGFibGVEZXNjcmlwdG9yPGFueT4sIGVycm9yOiBhbnksIHRhYmxldmlldz86IFRhYmxldmlld0NvbXBvbmVudFNlcnZpY2U8YW55LCBhbnk+KSB7XG4gICAgICAgIGNvbnN0IHBhcmFtczogYW55ID0ge31cbiAgICAgICAgaWYgKGVycm9yPy5tZXNzYWdlKSB7XG4gICAgICAgICAgICBwYXJhbXMuZXJyb3JNZXNzYWdlID0gYDogJHtlcnJvci5tZXNzYWdlfWA7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXJhbXMuZXJyb3JNZXNzYWdlID0gJy4nO1xuICAgICAgICB9XG4gICAgICAgIGNvbnNvbGUubG9nKHBhcmFtcylcbiAgICAgICAgY29uc3QgdGFibGVFcnJvclRpdGxlID0gSTE4blV0aWwuaW5zdGFudE1vZGVsVHJhbnNsYXRpb24odHJhbnNsYXRpb25TZXJ2aWNlLCB0YWJsZS5tb2RlbCwgJ3RhYmxlLmVycm9yLnRpdGxlJywgdW5kZWZpbmVkLCB1bmRlZmluZWQsICdnZW5lcmFsLmVycm9yJywgcGFyYW1zKSA/PyB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IHRhYmxlRXJyb3JNZXNzYWdlID0gSTE4blV0aWwuaW5zdGFudE1vZGVsVHJhbnNsYXRpb24odHJhbnNsYXRpb25TZXJ2aWNlLCB0YWJsZS5tb2RlbCwgJ3RhYmxlLmVycm9yLm1lc3NhZ2UnLCB1bmRlZmluZWQsIHVuZGVmaW5lZCwgJ2dlbmVyYWwuZXJyb3JNZXNzYWdlJywgcGFyYW1zKSA/PyB1bmRlZmluZWQ7XG5cbiAgICAgICAgdGFibGV2aWV3Py5tZXNzYWdlU2VydmljZT8uYWRkKHtzZXZlcml0eTogJ2Vycm9yJywgc3VtbWFyeTogdGFibGVFcnJvclRpdGxlLCBkZXRhaWw6IHRhYmxlRXJyb3JNZXNzYWdlfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBhY3Rpb25Ob3RpZmljYXRpb25TdWNjZXNzKHRyYW5zbGF0aW9uU2VydmljZTogVHJhbnNsYXRlU2VydmljZSwgYWN0aW9uOiBBY3Rpb25EZXNjcmlwdG9yPGFueT4sIGZ1bmN0aW9uTmFtZTogc3RyaW5nLCBjdXN0b21UaXRsZUtleT86IHN0cmluZywgY3VzdG9tTWVzc2FnZUtleT86IHN0cmluZywgdGFibGV2aWV3PzogVGFibGV2aWV3Q29tcG9uZW50U2VydmljZTxhbnksIGFueT4sIGl0ZW0/OiBhbnkpIHtcbiAgICAgICAgY29uc3QgYWN0aW9uU3VjY2Vzc1RpdGxlID0gSTE4blV0aWwuaW5zdGFudEFjdGlvblRyYW5zbGF0aW9uKHRyYW5zbGF0aW9uU2VydmljZSwgYWN0aW9uLCAnc3VjY2Vzcy50aXRsZScsIGN1c3RvbVRpdGxlS2V5LCBpdGVtLCAnZ2VuZXJhbC5zdWNjZXNzJywgZnVuY3Rpb25OYW1lKSA/PyB1bmRlZmluZWQ7XG4gICAgICAgIGNvbnN0IGFjdGlvblN1Y2Nlc3NNZXNzYWdlID0gSTE4blV0aWwuaW5zdGFudEFjdGlvblRyYW5zbGF0aW9uKHRyYW5zbGF0aW9uU2VydmljZSwgYWN0aW9uLCAnc3VjY2Vzcy5tZXNzYWdlJywgY3VzdG9tTWVzc2FnZUtleSwgaXRlbSwgJ2dlbmVyYWwuc3VjY2Vzc01lc3NhZ2UnLCBmdW5jdGlvbk5hbWUpID8/IHVuZGVmaW5lZDtcblxuICAgICAgICB0YWJsZXZpZXc/Lm1lc3NhZ2VTZXJ2aWNlPy5hZGQoe3NldmVyaXR5OiAnc3VjY2VzcycsIHN1bW1hcnk6IGFjdGlvblN1Y2Nlc3NUaXRsZSwgZGV0YWlsOiBhY3Rpb25TdWNjZXNzTWVzc2FnZX0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgYWN0aW9uTm90aWZpY2F0aW9uRXJyb3IodHJhbnNsYXRpb25TZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLCBhY3Rpb246IEFjdGlvbkRlc2NyaXB0b3I8YW55PiwgZXJyb3I6IGFueSwgZnVuY3Rpb25OYW1lOiBzdHJpbmcsIHRhYmxldmlldz86IFRhYmxldmlld0NvbXBvbmVudFNlcnZpY2U8YW55LCBhbnk+LCBpdGVtPzogYW55KSB7XG4gICAgICAgIGNvbnN0IHBhcmFtczogYW55ID0ge31cbiAgICAgICAgaWYgKGVycm9yPy5tZXNzYWdlKSB7XG4gICAgICAgICAgICBwYXJhbXMuZXJyb3JNZXNzYWdlID0gYDogJHtlcnJvci5tZXNzYWdlfWA7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXJhbXMuZXJyb3JNZXNzYWdlID0gJy4nO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGFjdGlvbkVycm9yVGl0bGUgPSBJMThuVXRpbC5pbnN0YW50QWN0aW9uVHJhbnNsYXRpb24odHJhbnNsYXRpb25TZXJ2aWNlLCBhY3Rpb24sICdlcnJvci50aXRsZScsIGFjdGlvbi5ydW5Ob3RpZmljYXRpb25FcnJvclRpdGxlLFxuICAgICAgICAgICAgaXRlbSwgJ2dlbmVyYWwuZXJyb3InLCBmdW5jdGlvbk5hbWUsIHBhcmFtcykgPz8gdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBhY3Rpb25FcnJvck1lc3NhZ2UgPSBJMThuVXRpbC5pbnN0YW50QWN0aW9uVHJhbnNsYXRpb24odHJhbnNsYXRpb25TZXJ2aWNlLCBhY3Rpb24sICdlcnJvci5tZXNzYWdlJywgYWN0aW9uLnJ1bk5vdGlmaWNhdGlvbkVycm9yTWVzc2FnZSxcbiAgICAgICAgICAgIGl0ZW0sICdnZW5lcmFsLmVycm9yTWVzc2FnZScsIGZ1bmN0aW9uTmFtZSwgcGFyYW1zKSA/PyB1bmRlZmluZWQ7XG5cbiAgICAgICAgdGFibGV2aWV3Py5tZXNzYWdlU2VydmljZT8uYWRkKHtzZXZlcml0eTogJ2Vycm9yJywgc3VtbWFyeTogYWN0aW9uRXJyb3JUaXRsZSwgZGV0YWlsOiBhY3Rpb25FcnJvck1lc3NhZ2V9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldEZvcm1FZGl0b3JXYXJuaW5nTWVzc2FnZSh0cmFuc2xhdGlvblNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsIHRpdGxlOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZykge1xuICAgICAgICBjb25zdCBhY3Rpb25FcnJvclRpdGxlID0gdHJhbnNsYXRpb25TZXJ2aWNlLmluc3RhbnQodGl0bGUpID8/IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgYWN0aW9uRXJyb3JNZXNzYWdlID0gdHJhbnNsYXRpb25TZXJ2aWNlLmluc3RhbnQobWVzc2FnZSkgPz8gdW5kZWZpbmVkO1xuICAgICAgICByZXR1cm4ge3NldmVyaXR5Oid3YXJuJywgc3VtbWFyeTogYWN0aW9uRXJyb3JUaXRsZSwgZGV0YWlsOiBhY3Rpb25FcnJvck1lc3NhZ2V9O1xuICAgIH1cbn1cbiJdfQ==
@@ -1,39 +1,39 @@
1
- import 'reflect-metadata';
2
- import { typeNameDecoratorPropertyName } from '../models/types';
3
- export class TypeUtil {
4
- static defineReflectTypeName(targetType, typeName) {
5
- if (!typeName) {
6
- typeName = TypeUtil.getDecoratorTypeName(targetType);
7
- if (!typeName) {
8
- console.warn(`Type name not provided for target ${targetType}, nor could be retrieved from decorator. Type name was not registered to reflect.`);
9
- return;
10
- }
11
- }
12
- if (!Reflect.hasOwnMetadata(typeNameDecoratorPropertyName, targetType)) {
13
- Reflect.defineMetadata(typeNameDecoratorPropertyName, typeName, targetType);
14
- }
15
- }
16
- /**
17
- * Gets type name from either decorator or reflect metadata.
18
- * @param type Class.
19
- */
20
- static findTypeName(type) {
21
- let decoratorName = TypeUtil.getDecoratorTypeName(type);
22
- if (decoratorName) {
23
- return decoratorName;
24
- }
25
- decoratorName = Reflect.getMetadata(typeNameDecoratorPropertyName, type);
26
- if (decoratorName) {
27
- return decoratorName;
28
- }
29
- return type.name;
30
- }
31
- /**
32
- * Get value from decorator defined property name
33
- * @param type Class.
34
- */
35
- static getDecoratorTypeName(type) {
36
- return type[typeNameDecoratorPropertyName];
37
- }
38
- }
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW5nLWNvbW1vbnMvc3JjL2xpYi91dGlscy90eXBlLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxrQkFBa0IsQ0FBQztBQUUxQixPQUFPLEVBQVksNkJBQTZCLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUV6RSxNQUFNLE9BQU8sUUFBUTtJQUVWLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxVQUEwQixFQUFFLFFBQWlCO1FBQzdFLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDWCxRQUFRLEdBQUcsUUFBUSxDQUFDLG9CQUFvQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ3JELElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ1gsT0FBTyxDQUFDLElBQUksQ0FBQyxxQ0FBcUMsVUFBVSxtRkFBbUYsQ0FBQyxDQUFDO2dCQUNqSixPQUFPO2FBQ1Y7U0FDSjtRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLDZCQUE2QixFQUFFLFVBQVUsQ0FBQyxFQUFFO1lBQ3BFLE9BQU8sQ0FBQyxjQUFjLENBQUMsNkJBQTZCLEVBQUUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1NBQy9FO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBb0I7UUFDM0MsSUFBSSxhQUFhLEdBQUcsUUFBUSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hELElBQUksYUFBYSxFQUFFO1lBQ2YsT0FBTyxhQUFhLENBQUM7U0FDeEI7UUFDRCxhQUFhLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyw2QkFBNkIsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN6RSxJQUFJLGFBQWEsRUFBRTtZQUNmLE9BQU8sYUFBYSxDQUFDO1NBQ3hCO1FBQ0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsb0JBQW9CLENBQUMsSUFBYztRQUM3QyxPQUFRLElBQVksQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO0lBQ3hELENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAncmVmbGVjdC1tZXRhZGF0YSc7XG5cbmltcG9ydCB7Q2xhc3NUeXBlLCB0eXBlTmFtZURlY29yYXRvclByb3BlcnR5TmFtZX0gZnJvbSAnLi4vbW9kZWxzL3R5cGVzJztcblxuZXhwb3J0IGNsYXNzIFR5cGVVdGlsIHtcblxuICAgIHB1YmxpYyBzdGF0aWMgZGVmaW5lUmVmbGVjdFR5cGVOYW1lKHRhcmdldFR5cGU6IENsYXNzVHlwZTxhbnk+LCB0eXBlTmFtZT86IHN0cmluZykge1xuICAgICAgICBpZiAoIXR5cGVOYW1lKSB7XG4gICAgICAgICAgICB0eXBlTmFtZSA9IFR5cGVVdGlsLmdldERlY29yYXRvclR5cGVOYW1lKHRhcmdldFR5cGUpO1xuICAgICAgICAgICAgaWYgKCF0eXBlTmFtZSkge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybihgVHlwZSBuYW1lIG5vdCBwcm92aWRlZCBmb3IgdGFyZ2V0ICR7dGFyZ2V0VHlwZX0sIG5vciBjb3VsZCBiZSByZXRyaWV2ZWQgZnJvbSBkZWNvcmF0b3IuIFR5cGUgbmFtZSB3YXMgbm90IHJlZ2lzdGVyZWQgdG8gcmVmbGVjdC5gKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIVJlZmxlY3QuaGFzT3duTWV0YWRhdGEodHlwZU5hbWVEZWNvcmF0b3JQcm9wZXJ0eU5hbWUsIHRhcmdldFR5cGUpKSB7XG4gICAgICAgICAgICBSZWZsZWN0LmRlZmluZU1ldGFkYXRhKHR5cGVOYW1lRGVjb3JhdG9yUHJvcGVydHlOYW1lLCB0eXBlTmFtZSwgdGFyZ2V0VHlwZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHR5cGUgbmFtZSBmcm9tIGVpdGhlciBkZWNvcmF0b3Igb3IgcmVmbGVjdCBtZXRhZGF0YS5cbiAgICAgKiBAcGFyYW0gdHlwZSBDbGFzcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGZpbmRUeXBlTmFtZSh0eXBlOiBDbGFzc1R5cGU8YW55Pik6IHN0cmluZyB7XG4gICAgICAgIGxldCBkZWNvcmF0b3JOYW1lID0gVHlwZVV0aWwuZ2V0RGVjb3JhdG9yVHlwZU5hbWUodHlwZSk7XG4gICAgICAgIGlmIChkZWNvcmF0b3JOYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gZGVjb3JhdG9yTmFtZTtcbiAgICAgICAgfVxuICAgICAgICBkZWNvcmF0b3JOYW1lID0gUmVmbGVjdC5nZXRNZXRhZGF0YSh0eXBlTmFtZURlY29yYXRvclByb3BlcnR5TmFtZSwgdHlwZSk7XG4gICAgICAgIGlmIChkZWNvcmF0b3JOYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gZGVjb3JhdG9yTmFtZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdHlwZS5uYW1lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCB2YWx1ZSBmcm9tIGRlY29yYXRvciBkZWZpbmVkIHByb3BlcnR5IG5hbWVcbiAgICAgKiBAcGFyYW0gdHlwZSBDbGFzcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldERlY29yYXRvclR5cGVOYW1lKHR5cGU6IEZ1bmN0aW9uKTogc3RyaW5nfHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiAodHlwZSBhcyBhbnkpW3R5cGVOYW1lRGVjb3JhdG9yUHJvcGVydHlOYW1lXTtcbiAgICB9XG59XG4iXX0=
1
+ import 'reflect-metadata';
2
+ import { typeNameDecoratorPropertyName } from '../types';
3
+ export class TypeUtil {
4
+ static defineReflectTypeName(targetType, typeName) {
5
+ if (!typeName) {
6
+ typeName = TypeUtil.getDecoratorTypeName(targetType);
7
+ if (!typeName) {
8
+ console.warn(`Type name not provided for target ${targetType}, nor could be retrieved from decorator. Type name was not registered to reflect.`);
9
+ return;
10
+ }
11
+ }
12
+ if (!Reflect.hasOwnMetadata(typeNameDecoratorPropertyName, targetType)) {
13
+ Reflect.defineMetadata(typeNameDecoratorPropertyName, typeName, targetType);
14
+ }
15
+ }
16
+ /**
17
+ * Gets type name from either decorator or reflect metadata.
18
+ * @param type Class.
19
+ */
20
+ static findTypeName(type) {
21
+ let decoratorName = TypeUtil.getDecoratorTypeName(type);
22
+ if (decoratorName) {
23
+ return decoratorName;
24
+ }
25
+ decoratorName = Reflect.getMetadata(typeNameDecoratorPropertyName, type);
26
+ if (decoratorName) {
27
+ return decoratorName;
28
+ }
29
+ return type.name;
30
+ }
31
+ /**
32
+ * Get value from decorator defined property name
33
+ * @param type Class.
34
+ */
35
+ static getDecoratorTypeName(type) {
36
+ return type[typeNameDecoratorPropertyName];
37
+ }
38
+ }
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi91dGlscy90eXBlLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxrQkFBa0IsQ0FBQztBQUUxQixPQUFPLEVBQVksNkJBQTZCLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFFbEUsTUFBTSxPQUFPLFFBQVE7SUFFVixNQUFNLENBQUMscUJBQXFCLENBQUMsVUFBMEIsRUFBRSxRQUFpQjtRQUM3RSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ1gsUUFBUSxHQUFHLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNyRCxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNYLE9BQU8sQ0FBQyxJQUFJLENBQUMscUNBQXFDLFVBQVUsbUZBQW1GLENBQUMsQ0FBQztnQkFDakosT0FBTzthQUNWO1NBQ0o7UUFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyw2QkFBNkIsRUFBRSxVQUFVLENBQUMsRUFBRTtZQUNwRSxPQUFPLENBQUMsY0FBYyxDQUFDLDZCQUE2QixFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztTQUMvRTtJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsWUFBWSxDQUFDLElBQW9CO1FBQzNDLElBQUksYUFBYSxHQUFHLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4RCxJQUFJLGFBQWEsRUFBRTtZQUNmLE9BQU8sYUFBYSxDQUFDO1NBQ3hCO1FBQ0QsYUFBYSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsNkJBQTZCLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDekUsSUFBSSxhQUFhLEVBQUU7WUFDZixPQUFPLGFBQWEsQ0FBQztTQUN4QjtRQUNELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNyQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLG9CQUFvQixDQUFDLElBQWM7UUFDN0MsT0FBUSxJQUFZLENBQUMsNkJBQTZCLENBQUMsQ0FBQztJQUN4RCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ3JlZmxlY3QtbWV0YWRhdGEnO1xuXG5pbXBvcnQge0NsYXNzVHlwZSwgdHlwZU5hbWVEZWNvcmF0b3JQcm9wZXJ0eU5hbWV9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGNsYXNzIFR5cGVVdGlsIHtcblxuICAgIHB1YmxpYyBzdGF0aWMgZGVmaW5lUmVmbGVjdFR5cGVOYW1lKHRhcmdldFR5cGU6IENsYXNzVHlwZTxhbnk+LCB0eXBlTmFtZT86IHN0cmluZykge1xuICAgICAgICBpZiAoIXR5cGVOYW1lKSB7XG4gICAgICAgICAgICB0eXBlTmFtZSA9IFR5cGVVdGlsLmdldERlY29yYXRvclR5cGVOYW1lKHRhcmdldFR5cGUpO1xuICAgICAgICAgICAgaWYgKCF0eXBlTmFtZSkge1xuICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybihgVHlwZSBuYW1lIG5vdCBwcm92aWRlZCBmb3IgdGFyZ2V0ICR7dGFyZ2V0VHlwZX0sIG5vciBjb3VsZCBiZSByZXRyaWV2ZWQgZnJvbSBkZWNvcmF0b3IuIFR5cGUgbmFtZSB3YXMgbm90IHJlZ2lzdGVyZWQgdG8gcmVmbGVjdC5gKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIVJlZmxlY3QuaGFzT3duTWV0YWRhdGEodHlwZU5hbWVEZWNvcmF0b3JQcm9wZXJ0eU5hbWUsIHRhcmdldFR5cGUpKSB7XG4gICAgICAgICAgICBSZWZsZWN0LmRlZmluZU1ldGFkYXRhKHR5cGVOYW1lRGVjb3JhdG9yUHJvcGVydHlOYW1lLCB0eXBlTmFtZSwgdGFyZ2V0VHlwZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHR5cGUgbmFtZSBmcm9tIGVpdGhlciBkZWNvcmF0b3Igb3IgcmVmbGVjdCBtZXRhZGF0YS5cbiAgICAgKiBAcGFyYW0gdHlwZSBDbGFzcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGZpbmRUeXBlTmFtZSh0eXBlOiBDbGFzc1R5cGU8YW55Pik6IHN0cmluZyB7XG4gICAgICAgIGxldCBkZWNvcmF0b3JOYW1lID0gVHlwZVV0aWwuZ2V0RGVjb3JhdG9yVHlwZU5hbWUodHlwZSk7XG4gICAgICAgIGlmIChkZWNvcmF0b3JOYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gZGVjb3JhdG9yTmFtZTtcbiAgICAgICAgfVxuICAgICAgICBkZWNvcmF0b3JOYW1lID0gUmVmbGVjdC5nZXRNZXRhZGF0YSh0eXBlTmFtZURlY29yYXRvclByb3BlcnR5TmFtZSwgdHlwZSk7XG4gICAgICAgIGlmIChkZWNvcmF0b3JOYW1lKSB7XG4gICAgICAgICAgICByZXR1cm4gZGVjb3JhdG9yTmFtZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdHlwZS5uYW1lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldCB2YWx1ZSBmcm9tIGRlY29yYXRvciBkZWZpbmVkIHByb3BlcnR5IG5hbWVcbiAgICAgKiBAcGFyYW0gdHlwZSBDbGFzcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGdldERlY29yYXRvclR5cGVOYW1lKHR5cGU6IEZ1bmN0aW9uKTogc3RyaW5nfHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiAodHlwZSBhcyBhbnkpW3R5cGVOYW1lRGVjb3JhdG9yUHJvcGVydHlOYW1lXTtcbiAgICB9XG59XG4iXX0=
@@ -1,5 +1,5 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaXVzaW5jLW1uZy1jb21tb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvbW5nLWNvbW1vbnMvc3JjL21lZGl1c2luYy1tbmctY29tbW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaXVzaW5jLW1uZy1jb21tb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21lZGl1c2luYy1tbmctY29tbW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19