@mediusinc/mng-commons 1.2.0 → 1.4.0

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 (383) hide show
  1. package/assets/i18n/en.json +9 -0
  2. package/assets/i18n/sl.json +9 -0
  3. package/esm2020/lib/api/models/builders/query-param.builder.mjs +58 -58
  4. package/esm2020/lib/api/models/filter-match-type.model.mjs +24 -24
  5. package/esm2020/lib/api/models/filter-param.model.mjs +32 -32
  6. package/esm2020/lib/api/models/index.mjs +8 -8
  7. package/esm2020/lib/api/models/mappers.mjs +12 -12
  8. package/esm2020/lib/api/models/query-mode.model.mjs +17 -17
  9. package/esm2020/lib/api/models/query-param.model.mjs +67 -67
  10. package/esm2020/lib/api/models/query-result.model.mjs +23 -23
  11. package/esm2020/lib/api/models/serialization.model.mjs +1 -1
  12. package/esm2020/lib/api/services/api.abstract.service.mjs +57 -57
  13. package/esm2020/lib/api/services/crud-api.abstract.service.mjs +74 -74
  14. package/esm2020/lib/api/services/get-all-api.abstract.service.mjs +29 -29
  15. package/esm2020/lib/api/services/index.mjs +3 -3
  16. package/esm2020/lib/api/utils/index.mjs +2 -2
  17. package/esm2020/lib/api/utils/medius-rest.util.mjs +212 -212
  18. package/esm2020/lib/api/utils/object-serializer.util.mjs +247 -247
  19. package/esm2020/lib/components/action/action.component.mjs +275 -225
  20. package/esm2020/lib/components/action/editor/action-editor.component.mjs +302 -302
  21. package/esm2020/lib/components/action/index.mjs +4 -4
  22. package/esm2020/lib/components/action/localization/data-language-dropdown.component.mjs +44 -44
  23. package/esm2020/lib/components/action/models/action-component.model.mjs +1 -1
  24. package/esm2020/lib/components/action/models/action-confirmation-service.model.mjs +1 -1
  25. package/esm2020/lib/components/action/models/action-execution.model.mjs +248 -248
  26. package/esm2020/lib/components/action/models/index.mjs +4 -4
  27. package/esm2020/lib/components/action/models/tableview-action-default-categories.model.mjs +10 -10
  28. package/esm2020/lib/components/action/route/action-route.component.mjs +129 -129
  29. package/esm2020/lib/components/form/autocomplete/autocomplete.component.mjs +299 -299
  30. package/esm2020/lib/components/form/date-range/date-range.component.mjs +108 -108
  31. package/esm2020/lib/components/form/dropdown/dropdown.component.mjs +193 -193
  32. package/esm2020/lib/components/form/editor/form-editor.component.mjs +242 -242
  33. package/esm2020/lib/components/form/formly/fields/formly-field-action/formly-field-action.component.mjs +38 -38
  34. package/esm2020/lib/components/form/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +49 -49
  35. package/esm2020/lib/components/form/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +44 -44
  36. package/esm2020/lib/components/form/formly/fields/formly-field-fieldset/formly-field-fieldset.component.mjs +25 -25
  37. package/esm2020/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.mjs +149 -149
  38. package/esm2020/lib/components/form/formly/fields/formly-field-label/formly-field-label.component.mjs +23 -23
  39. package/esm2020/lib/components/form/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +186 -181
  40. package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +197 -178
  41. package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +154 -149
  42. package/esm2020/lib/components/form/formly/fields/formly-field-tabs/formly-field-tabs.component.mjs +16 -16
  43. package/esm2020/lib/components/form/formly/fields/index.mjs +10 -10
  44. package/esm2020/lib/components/form/formly/formly.config.mjs +211 -211
  45. package/esm2020/lib/components/form/formly/index.mjs +1 -1
  46. package/esm2020/lib/components/form/formly/models/formly-config.model.mjs +1 -1
  47. package/esm2020/lib/components/form/formly/models/formly-field.model.mjs +1 -1
  48. package/esm2020/lib/components/form/formly/models/index.mjs +2 -2
  49. package/esm2020/lib/components/form/formly/wrappers/formly-field-no-label-wrapper/formly-field-no-label-wrapper.component.mjs +14 -14
  50. package/esm2020/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +82 -82
  51. package/esm2020/lib/components/form/formly/wrappers/index.mjs +2 -2
  52. package/esm2020/lib/components/form/index.mjs +4 -4
  53. package/esm2020/lib/components/form/models/field-action-context.model.mjs +1 -1
  54. package/esm2020/lib/components/form/models/form-editor.event.mjs +33 -33
  55. package/esm2020/lib/components/form/models/form-editor.interface.mjs +1 -1
  56. package/esm2020/lib/components/form/models/index.mjs +2 -2
  57. package/esm2020/lib/components/layout/breadcrumb.component.mjs +16 -16
  58. package/esm2020/lib/components/layout/footer.component.mjs +16 -16
  59. package/esm2020/lib/components/layout/index.mjs +7 -7
  60. package/esm2020/lib/components/layout/main-layout.component.mjs +51 -51
  61. package/esm2020/lib/components/layout/menu-item.component.mjs +271 -271
  62. package/esm2020/lib/components/layout/menu.component.mjs +20 -20
  63. package/esm2020/lib/components/layout/services/index.mjs +1 -1
  64. package/esm2020/lib/components/layout/services/main-layout.component.service.mjs +194 -194
  65. package/esm2020/lib/components/layout/topbar.component.mjs +64 -64
  66. package/esm2020/lib/components/layout/version.component.mjs +57 -57
  67. package/esm2020/lib/components/tableview/index.mjs +6 -6
  68. package/esm2020/lib/components/tableview/models/index.mjs +1 -1
  69. package/esm2020/lib/components/tableview/models/table.event.mjs +15 -15
  70. package/esm2020/lib/components/tableview/route/tableview-route.abstract.component.mjs +147 -122
  71. package/esm2020/lib/components/tableview/route/tableview-route.component.mjs +52 -52
  72. package/esm2020/lib/components/tableview/table/column-filter/column-filter.component.mjs +119 -119
  73. package/esm2020/lib/components/tableview/table/column-value/column-value.component.mjs +84 -84
  74. package/esm2020/lib/components/tableview/table/table.component.mjs +595 -594
  75. package/esm2020/lib/components/tableview/tableview.component.mjs +112 -112
  76. package/esm2020/lib/data-providers/base.data-provider.mjs +16 -16
  77. package/esm2020/lib/data-providers/editor.data-provider.mjs +36 -36
  78. package/esm2020/lib/data-providers/index.mjs +6 -6
  79. package/esm2020/lib/data-providers/lookup.data-provider.mjs +15 -15
  80. package/esm2020/lib/data-providers/table.data-provider.mjs +37 -37
  81. package/esm2020/lib/data-providers/tableview-crud.data-provider.mjs +23 -23
  82. package/esm2020/lib/data-providers/tableview.data-provider.mjs +44 -44
  83. package/esm2020/lib/descriptors/action/action-confirmation.descriptor.mjs +76 -76
  84. package/esm2020/lib/descriptors/action-button.descriptor.mjs +59 -59
  85. package/esm2020/lib/descriptors/action.descriptor.mjs +577 -560
  86. package/esm2020/lib/descriptors/column.descriptor.mjs +405 -405
  87. package/esm2020/lib/descriptors/editor.descriptor.mjs +289 -289
  88. package/esm2020/lib/descriptors/field-validation.descriptor.mjs +24 -24
  89. package/esm2020/lib/descriptors/field.descriptor.mjs +986 -986
  90. package/esm2020/lib/descriptors/filter.descriptor.mjs +368 -321
  91. package/esm2020/lib/descriptors/index.mjs +11 -11
  92. package/esm2020/lib/descriptors/interfaces/field-config.interface.mjs +1 -1
  93. package/esm2020/lib/descriptors/interfaces/index.mjs +2 -2
  94. package/esm2020/lib/descriptors/interfaces/lookup-descriptor.interface.mjs +1 -1
  95. package/esm2020/lib/descriptors/model.descriptor.mjs +44 -44
  96. package/esm2020/lib/descriptors/table.descriptor.mjs +497 -482
  97. package/esm2020/lib/descriptors/tableview.descriptor.mjs +343 -343
  98. package/esm2020/lib/descriptors/types/action.type.mjs +25 -25
  99. package/esm2020/lib/descriptors/types/column.type.mjs +20 -20
  100. package/esm2020/lib/descriptors/types/editor.type.mjs +7 -7
  101. package/esm2020/lib/descriptors/types/field.type.mjs +55 -55
  102. package/esm2020/lib/descriptors/types/filter.type.mjs +30 -30
  103. package/esm2020/lib/descriptors/types/index.mjs +6 -6
  104. package/esm2020/lib/descriptors/types/table.type.mjs +26 -26
  105. package/esm2020/lib/directives/component.directive.mjs +43 -43
  106. package/esm2020/lib/directives/index.mjs +2 -2
  107. package/esm2020/lib/directives/template.directive.mjs +27 -27
  108. package/esm2020/lib/mng-commons.module.mjs +485 -475
  109. package/esm2020/lib/models/column-value.model.mjs +1 -1
  110. package/esm2020/lib/models/config.model.mjs +1 -1
  111. package/esm2020/lib/models/enum.model.mjs +1 -1
  112. package/esm2020/lib/models/error.model.mjs +1 -1
  113. package/esm2020/lib/models/index.mjs +9 -9
  114. package/esm2020/lib/models/menu.model.mjs +1 -1
  115. package/esm2020/lib/models/tableview-attr.model.mjs +1 -1
  116. package/esm2020/lib/models/user.model.mjs +1 -1
  117. package/esm2020/lib/models/version.model.mjs +1 -1
  118. package/esm2020/lib/models/view-container.model.mjs +1 -1
  119. package/esm2020/lib/pipes/boolean.pipe.mjs +26 -26
  120. package/esm2020/lib/pipes/class-map.pipe.mjs +21 -21
  121. package/esm2020/lib/pipes/enum.pipe.mjs +24 -24
  122. package/esm2020/lib/pipes/enumerate-async.pipe.mjs +37 -37
  123. package/esm2020/lib/pipes/enumerate.pipe.mjs +54 -54
  124. package/esm2020/lib/pipes/getter.pipe.mjs +19 -19
  125. package/esm2020/lib/pipes/i18n-property.pipe.mjs +17 -17
  126. package/esm2020/lib/pipes/index.mjs +11 -11
  127. package/esm2020/lib/pipes/json-path.pipe.mjs +78 -78
  128. package/esm2020/lib/pipes/locale-default-row-class.pipe.mjs +25 -25
  129. package/esm2020/lib/pipes/models/internal/enumrate-pipe-i18n.model.mjs +1 -1
  130. package/esm2020/lib/pipes/models/internal/index.mjs +1 -1
  131. package/esm2020/lib/pipes/parametrize.pipe.mjs +84 -84
  132. package/esm2020/lib/pipes/template.pipe.mjs +23 -23
  133. package/esm2020/lib/router/index.mjs +2 -2
  134. package/esm2020/lib/router/models/index.mjs +1 -1
  135. package/esm2020/lib/router/models/router.model.mjs +1 -1
  136. package/esm2020/lib/router/route-builder.mjs +425 -425
  137. package/esm2020/lib/router/tableview-route-builder.mjs +186 -186
  138. package/esm2020/lib/security/authorization.guard.mjs +25 -25
  139. package/esm2020/lib/security/authorization.service.mjs +46 -46
  140. package/esm2020/lib/security/authorization.util.mjs +15 -15
  141. package/esm2020/lib/security/index.mjs +3 -3
  142. package/esm2020/lib/security/model/authorization.type.mjs +7 -7
  143. package/esm2020/lib/security/model/index.mjs +3 -3
  144. package/esm2020/lib/security/model/permission-service.interface.mjs +1 -1
  145. package/esm2020/lib/security/model/permissions.model.mjs +86 -86
  146. package/esm2020/lib/services/action-executor.service.mjs +555 -552
  147. package/esm2020/lib/services/commons.service.mjs +461 -446
  148. package/esm2020/lib/services/configuration.service.mjs +141 -141
  149. package/esm2020/lib/services/error-mapper.service.mjs +13 -13
  150. package/esm2020/lib/services/index.mjs +6 -6
  151. package/esm2020/lib/services/internal/commons-init.provider.mjs +3 -3
  152. package/esm2020/lib/services/internal/commons-init.service.mjs +43 -43
  153. package/esm2020/lib/services/internal/index.mjs +2 -2
  154. package/esm2020/lib/services/navigation.service.mjs +47 -47
  155. package/esm2020/lib/services/providers/config-service.provider.mjs +29 -29
  156. package/esm2020/lib/services/providers/formly-config.provider.mjs +30 -30
  157. package/esm2020/lib/services/providers/index.mjs +2 -2
  158. package/esm2020/lib/services/tokens/browser-storage.token.mjs +5 -5
  159. package/esm2020/lib/services/tokens/commons-init.token.mjs +2 -2
  160. package/esm2020/lib/services/tokens/default-setting.token.mjs +2 -2
  161. package/esm2020/lib/services/tokens/index.mjs +4 -4
  162. package/esm2020/lib/services/tokens/module-config.token.mjs +2 -2
  163. package/esm2020/lib/services/version.service.mjs +38 -38
  164. package/esm2020/lib/services/view-container.component.service.mjs +54 -54
  165. package/esm2020/lib/styles/button-style.builder.mjs +164 -164
  166. package/esm2020/lib/styles/index.mjs +2 -2
  167. package/esm2020/lib/styles/models/index.mjs +2 -2
  168. package/esm2020/lib/styles/models/style-level.enum.mjs +11 -11
  169. package/esm2020/lib/styles/models/style-size.enum.mjs +8 -8
  170. package/esm2020/lib/styles/styles.util.mjs +41 -41
  171. package/esm2020/lib/types/index.mjs +2 -2
  172. package/esm2020/lib/types/type.decorator.mjs +21 -21
  173. package/esm2020/lib/types/type.model.mjs +1 -1
  174. package/esm2020/lib/utils/action-data-provider.util.mjs +144 -144
  175. package/esm2020/lib/utils/date.util.mjs +117 -117
  176. package/esm2020/lib/utils/editor-formly.util.mjs +287 -287
  177. package/esm2020/lib/utils/enum.util.mjs +81 -81
  178. package/esm2020/lib/utils/export.util.mjs +20 -0
  179. package/esm2020/lib/utils/i18n.util.mjs +232 -232
  180. package/esm2020/lib/utils/index.mjs +11 -10
  181. package/esm2020/lib/utils/model.util.mjs +68 -68
  182. package/esm2020/lib/utils/notification.util.mjs +50 -50
  183. package/esm2020/lib/utils/route.util.mjs +23 -23
  184. package/esm2020/lib/utils/string.util.mjs +26 -26
  185. package/esm2020/lib/utils/tableview.util.mjs +159 -159
  186. package/esm2020/lib/utils/type.util.mjs +92 -92
  187. package/esm2020/mediusinc-mng-commons.mjs +4 -4
  188. package/esm2020/public-api.mjs +54 -54
  189. package/fesm2015/mediusinc-mng-commons.mjs +13871 -13639
  190. package/fesm2015/mediusinc-mng-commons.mjs.map +1 -1
  191. package/fesm2020/mediusinc-mng-commons.mjs +13708 -13477
  192. package/fesm2020/mediusinc-mng-commons.mjs.map +1 -1
  193. package/index.d.ts +5 -5
  194. package/lib/api/models/builders/query-param.builder.d.ts +13 -13
  195. package/lib/api/models/filter-match-type.model.d.ts +23 -23
  196. package/lib/api/models/filter-param.model.d.ts +23 -23
  197. package/lib/api/models/index.d.ts +8 -8
  198. package/lib/api/models/mappers.d.ts +6 -6
  199. package/lib/api/models/query-mode.model.d.ts +16 -16
  200. package/lib/api/models/query-param.model.d.ts +31 -31
  201. package/lib/api/models/query-result.model.d.ts +24 -24
  202. package/lib/api/models/serialization.model.d.ts +8 -8
  203. package/lib/api/services/api.abstract.service.d.ts +24 -24
  204. package/lib/api/services/crud-api.abstract.service.d.ts +22 -22
  205. package/lib/api/services/get-all-api.abstract.service.d.ts +14 -14
  206. package/lib/api/services/index.d.ts +3 -3
  207. package/lib/api/utils/index.d.ts +2 -2
  208. package/lib/api/utils/medius-rest.util.d.ts +16 -16
  209. package/lib/api/utils/object-serializer.util.d.ts +33 -33
  210. package/lib/components/action/action.component.d.ts +79 -74
  211. package/lib/components/action/editor/action-editor.component.d.ts +69 -69
  212. package/lib/components/action/index.d.ts +4 -4
  213. package/lib/components/action/localization/data-language-dropdown.component.d.ts +25 -25
  214. package/lib/components/action/models/action-component.model.d.ts +15 -15
  215. package/lib/components/action/models/action-confirmation-service.model.d.ts +6 -6
  216. package/lib/components/action/models/action-execution.model.d.ts +135 -135
  217. package/lib/components/action/models/index.d.ts +4 -4
  218. package/lib/components/action/models/tableview-action-default-categories.model.d.ts +10 -10
  219. package/lib/components/action/route/action-route.component.d.ts +31 -31
  220. package/lib/components/form/autocomplete/autocomplete.component.d.ts +61 -61
  221. package/lib/components/form/date-range/date-range.component.d.ts +28 -28
  222. package/lib/components/form/dropdown/dropdown.component.d.ts +52 -52
  223. package/lib/components/form/editor/form-editor.component.d.ts +52 -52
  224. package/lib/components/form/formly/fields/formly-field-action/formly-field-action.component.d.ts +13 -13
  225. package/lib/components/form/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.d.ts +16 -16
  226. package/lib/components/form/formly/fields/formly-field-dropdown/formly-field-dropdown.component.d.ts +15 -15
  227. package/lib/components/form/formly/fields/formly-field-fieldset/formly-field-fieldset.component.d.ts +14 -14
  228. package/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.d.ts +29 -29
  229. package/lib/components/form/formly/fields/formly-field-label/formly-field-label.component.d.ts +11 -11
  230. package/lib/components/form/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.d.ts +46 -46
  231. package/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.d.ts +24 -24
  232. package/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.d.ts +37 -37
  233. package/lib/components/form/formly/fields/formly-field-tabs/formly-field-tabs.component.d.ts +7 -7
  234. package/lib/components/form/formly/fields/index.d.ts +10 -10
  235. package/lib/components/form/formly/formly.config.d.ts +14 -14
  236. package/lib/components/form/formly/index.d.ts +1 -1
  237. package/lib/components/form/formly/models/formly-config.model.d.ts +11 -11
  238. package/lib/components/form/formly/models/formly-field.model.d.ts +16 -16
  239. package/lib/components/form/formly/models/index.d.ts +2 -2
  240. package/lib/components/form/formly/wrappers/formly-field-no-label-wrapper/formly-field-no-label-wrapper.component.d.ts +6 -6
  241. package/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.d.ts +11 -11
  242. package/lib/components/form/formly/wrappers/index.d.ts +2 -2
  243. package/lib/components/form/index.d.ts +4 -4
  244. package/lib/components/form/models/field-action-context.model.d.ts +17 -17
  245. package/lib/components/form/models/form-editor.event.d.ts +37 -37
  246. package/lib/components/form/models/form-editor.interface.d.ts +10 -10
  247. package/lib/components/form/models/index.d.ts +2 -2
  248. package/lib/components/layout/breadcrumb.component.d.ts +8 -8
  249. package/lib/components/layout/footer.component.d.ts +9 -9
  250. package/lib/components/layout/index.d.ts +7 -7
  251. package/lib/components/layout/main-layout.component.d.ts +20 -20
  252. package/lib/components/layout/menu-item.component.d.ts +52 -52
  253. package/lib/components/layout/menu.component.d.ts +10 -10
  254. package/lib/components/layout/services/index.d.ts +1 -1
  255. package/lib/components/layout/services/main-layout.component.service.d.ts +65 -65
  256. package/lib/components/layout/topbar.component.d.ts +28 -28
  257. package/lib/components/layout/version.component.d.ts +19 -19
  258. package/lib/components/tableview/index.d.ts +6 -6
  259. package/lib/components/tableview/models/index.d.ts +1 -1
  260. package/lib/components/tableview/models/table.event.d.ts +17 -17
  261. package/lib/components/tableview/route/tableview-route.abstract.component.d.ts +33 -29
  262. package/lib/components/tableview/route/tableview-route.component.d.ts +18 -18
  263. package/lib/components/tableview/table/column-filter/column-filter.component.d.ts +38 -38
  264. package/lib/components/tableview/table/column-value/column-value.component.d.ts +35 -35
  265. package/lib/components/tableview/table/table.component.d.ts +115 -115
  266. package/lib/components/tableview/tableview.component.d.ts +48 -48
  267. package/lib/data-providers/base.data-provider.d.ts +14 -14
  268. package/lib/data-providers/editor.data-provider.d.ts +25 -25
  269. package/lib/data-providers/index.d.ts +6 -6
  270. package/lib/data-providers/lookup.data-provider.d.ts +14 -14
  271. package/lib/data-providers/table.data-provider.d.ts +27 -27
  272. package/lib/data-providers/tableview-crud.data-provider.d.ts +8 -8
  273. package/lib/data-providers/tableview.data-provider.d.ts +33 -33
  274. package/lib/descriptors/action/action-confirmation.descriptor.d.ts +36 -36
  275. package/lib/descriptors/action-button.descriptor.d.ts +22 -22
  276. package/lib/descriptors/action.descriptor.d.ts +223 -217
  277. package/lib/descriptors/column.descriptor.d.ts +130 -130
  278. package/lib/descriptors/editor.descriptor.d.ts +116 -116
  279. package/lib/descriptors/field-validation.descriptor.d.ts +19 -19
  280. package/lib/descriptors/field.descriptor.d.ts +345 -345
  281. package/lib/descriptors/filter.descriptor.d.ts +118 -113
  282. package/lib/descriptors/index.d.ts +11 -11
  283. package/lib/descriptors/interfaces/field-config.interface.d.ts +9 -9
  284. package/lib/descriptors/interfaces/index.d.ts +2 -2
  285. package/lib/descriptors/interfaces/lookup-descriptor.interface.d.ts +17 -17
  286. package/lib/descriptors/model.descriptor.d.ts +18 -18
  287. package/lib/descriptors/table.descriptor.d.ts +193 -188
  288. package/lib/descriptors/tableview.descriptor.d.ts +129 -129
  289. package/lib/descriptors/types/action.type.d.ts +21 -21
  290. package/lib/descriptors/types/column.type.d.ts +18 -18
  291. package/lib/descriptors/types/editor.type.d.ts +6 -6
  292. package/lib/descriptors/types/field.type.d.ts +47 -47
  293. package/lib/descriptors/types/filter.type.d.ts +27 -27
  294. package/lib/descriptors/types/index.d.ts +6 -6
  295. package/lib/descriptors/types/table.type.d.ts +22 -22
  296. package/lib/directives/component.directive.d.ts +16 -16
  297. package/lib/directives/index.d.ts +2 -2
  298. package/lib/directives/template.directive.d.ts +13 -13
  299. package/lib/mng-commons.module.d.ts +99 -97
  300. package/lib/models/column-value.model.d.ts +4 -4
  301. package/lib/models/config.model.d.ts +40 -40
  302. package/lib/models/enum.model.d.ts +6 -6
  303. package/lib/models/error.model.d.ts +14 -14
  304. package/lib/models/index.d.ts +9 -9
  305. package/lib/models/menu.model.d.ts +30 -30
  306. package/lib/models/tableview-attr.model.d.ts +10 -10
  307. package/lib/models/user.model.d.ts +8 -8
  308. package/lib/models/version.model.d.ts +18 -18
  309. package/lib/models/view-container.model.d.ts +43 -43
  310. package/lib/pipes/boolean.pipe.d.ts +7 -7
  311. package/lib/pipes/class-map.pipe.d.ts +7 -7
  312. package/lib/pipes/enum.pipe.d.ts +8 -8
  313. package/lib/pipes/enumerate-async.pipe.d.ts +14 -14
  314. package/lib/pipes/enumerate.pipe.d.ts +21 -21
  315. package/lib/pipes/getter.pipe.d.ts +7 -7
  316. package/lib/pipes/i18n-property.pipe.d.ts +8 -8
  317. package/lib/pipes/index.d.ts +11 -11
  318. package/lib/pipes/json-path.pipe.d.ts +13 -13
  319. package/lib/pipes/locale-default-row-class.pipe.d.ts +10 -10
  320. package/lib/pipes/models/internal/enumrate-pipe-i18n.model.d.ts +5 -5
  321. package/lib/pipes/models/internal/index.d.ts +1 -1
  322. package/lib/pipes/parametrize.pipe.d.ts +13 -13
  323. package/lib/pipes/template.pipe.d.ts +10 -10
  324. package/lib/router/index.d.ts +2 -2
  325. package/lib/router/models/index.d.ts +1 -1
  326. package/lib/router/models/router.model.d.ts +33 -33
  327. package/lib/router/route-builder.d.ts +98 -98
  328. package/lib/router/tableview-route-builder.d.ts +37 -37
  329. package/lib/security/authorization.guard.d.ts +11 -11
  330. package/lib/security/authorization.service.d.ts +19 -19
  331. package/lib/security/authorization.util.d.ts +5 -5
  332. package/lib/security/index.d.ts +3 -3
  333. package/lib/security/model/authorization.type.d.ts +6 -6
  334. package/lib/security/model/index.d.ts +3 -3
  335. package/lib/security/model/permission-service.interface.d.ts +6 -6
  336. package/lib/security/model/permissions.model.d.ts +37 -37
  337. package/lib/services/action-executor.service.d.ts +149 -149
  338. package/lib/services/commons.service.d.ts +93 -89
  339. package/lib/services/configuration.service.d.ts +57 -57
  340. package/lib/services/error-mapper.service.d.ts +7 -7
  341. package/lib/services/index.d.ts +6 -6
  342. package/lib/services/internal/commons-init.provider.d.ts +3 -3
  343. package/lib/services/internal/commons-init.service.d.ts +16 -16
  344. package/lib/services/internal/index.d.ts +2 -2
  345. package/lib/services/navigation.service.d.ts +14 -14
  346. package/lib/services/providers/config-service.provider.d.ts +6 -6
  347. package/lib/services/providers/formly-config.provider.d.ts +4 -4
  348. package/lib/services/providers/index.d.ts +2 -2
  349. package/lib/services/tokens/browser-storage.token.d.ts +2 -2
  350. package/lib/services/tokens/commons-init.token.d.ts +3 -3
  351. package/lib/services/tokens/default-setting.token.d.ts +2 -2
  352. package/lib/services/tokens/index.d.ts +4 -4
  353. package/lib/services/tokens/module-config.token.d.ts +3 -3
  354. package/lib/services/version.service.d.ts +13 -13
  355. package/lib/services/view-container.component.service.d.ts +31 -31
  356. package/lib/styles/button-style.builder.d.ts +67 -67
  357. package/lib/styles/index.d.ts +2 -2
  358. package/lib/styles/models/index.d.ts +2 -2
  359. package/lib/styles/models/style-level.enum.d.ts +10 -10
  360. package/lib/styles/models/style-size.enum.d.ts +7 -7
  361. package/lib/styles/styles.util.d.ts +14 -14
  362. package/lib/types/index.d.ts +2 -2
  363. package/lib/types/type.decorator.d.ts +4 -4
  364. package/lib/types/type.model.d.ts +23 -23
  365. package/lib/utils/action-data-provider.util.d.ts +20 -20
  366. package/lib/utils/date.util.d.ts +7 -7
  367. package/lib/utils/editor-formly.util.d.ts +12 -12
  368. package/lib/utils/enum.util.d.ts +50 -50
  369. package/lib/utils/export.util.d.ts +5 -0
  370. package/lib/utils/i18n.util.d.ts +56 -56
  371. package/lib/utils/index.d.ts +10 -9
  372. package/lib/utils/model.util.d.ts +8 -8
  373. package/lib/utils/notification.util.d.ts +12 -12
  374. package/lib/utils/route.util.d.ts +4 -4
  375. package/lib/utils/string.util.d.ts +4 -4
  376. package/lib/utils/tableview.util.d.ts +40 -40
  377. package/lib/utils/type.util.d.ts +57 -57
  378. package/mediusinc-mng-commons-1.4.0.tgz +0 -0
  379. package/package.json +1 -1
  380. package/public-api.d.ts +34 -34
  381. package/scss/common/theme/designer/_components.scss +4 -4
  382. package/scss/mng-overrides/_layout_menu.scss +4 -0
  383. package/version-info.json +5 -5
@@ -1,160 +1,160 @@
1
- import { ObjectSerializer } from '../api/utils';
2
- import { ColumnDisplayTypeEnum, ColumnTypeEnum, FieldInputTypeEnum } from '../descriptors/types';
3
- export class TableviewUtil {
4
- /**
5
- * returns attributes from class type and extends to typed def with column and field enum type
6
- * @param modelType class type
7
- */
8
- static getAttributeDefMap(modelType) {
9
- return TableviewUtil.expandAttributeDefWithTableviewTypes(ObjectSerializer.get().findAttributesDefinitionByClassType(modelType));
10
- }
11
- /**
12
- * expands AttributeDef to TableviewAttributeDef with defined input and column enum type
13
- * @param attributes open api specification model
14
- */
15
- static expandAttributeDefWithTableviewTypes(attributes) {
16
- if (attributes == null) {
17
- throw new Error('AttributeDef is null, problem with ObjectSerializer::findAttributesDefinitionByClassType?');
18
- }
19
- const objectSerializer = ObjectSerializer.get();
20
- const tableviewAttributeDef = [];
21
- for (const attribute of attributes) {
22
- const enumType = objectSerializer.findEnum(attribute.type);
23
- const columnType = enumType ? ColumnTypeEnum.Enum : TableviewUtil.toColumnType(attribute.type);
24
- tableviewAttributeDef.push({
25
- name: attribute.name,
26
- baseName: attribute.baseName,
27
- type: attribute.type,
28
- columnType: enumType ? ColumnTypeEnum.Enum : TableviewUtil.toColumnType(attribute.type),
29
- columnDisplayType: TableviewUtil.toColumnDisplayType(columnType, attribute.type),
30
- fieldType: TableviewUtil.toFieldInputType(attribute.type),
31
- enumType: objectSerializer.findEnum(attribute.type),
32
- classType: objectSerializer.findType(attribute.type)
33
- });
34
- }
35
- return tableviewAttributeDef;
36
- }
37
- /**
38
- * converts column to number or date on value based
39
- * @param column column to be transformed
40
- * @param value value to check if applicable
41
- */
42
- static stringColumnConverter(column, value) {
43
- if (typeof value === 'boolean') {
44
- return column.asBoolean();
45
- }
46
- else if (!isNaN(value) && typeof value === 'number') {
47
- return column.asNumber();
48
- }
49
- else if (this._dateRegex.test(value)) {
50
- return column.asDate();
51
- }
52
- else {
53
- return column;
54
- }
55
- }
56
- /**
57
- * converts string type to column type enum, default is string
58
- * @param propertyType
59
- */
60
- static toColumnType(propertyType) {
61
- const os = ObjectSerializer.get();
62
- if (os.findEnum(propertyType)) {
63
- propertyType = 'enum';
64
- }
65
- else if (os.findType(propertyType)) {
66
- propertyType = 'class';
67
- }
68
- switch (propertyType.toLowerCase()) {
69
- case 'number':
70
- case 'currency':
71
- return ColumnTypeEnum.Number;
72
- case 'boolean':
73
- return ColumnTypeEnum.Boolean;
74
- case 'date':
75
- return ColumnTypeEnum.Date;
76
- case 'enum':
77
- return ColumnTypeEnum.Enum;
78
- case 'custom':
79
- return ColumnTypeEnum.Custom;
80
- case 'class':
81
- return ColumnTypeEnum.String;
82
- case 'string':
83
- default:
84
- return ColumnTypeEnum.String;
85
- }
86
- }
87
- static toColumnDisplayType(columnType, propertyType) {
88
- switch (columnType) {
89
- case ColumnTypeEnum.Number:
90
- return propertyType === 'currency' ? ColumnDisplayTypeEnum.Currency : ColumnDisplayTypeEnum.Number;
91
- case ColumnTypeEnum.Boolean:
92
- return ColumnDisplayTypeEnum.Boolean;
93
- case ColumnTypeEnum.Date:
94
- return ColumnDisplayTypeEnum.Date;
95
- case ColumnTypeEnum.Enum:
96
- return ColumnDisplayTypeEnum.Enum;
97
- case ColumnTypeEnum.Custom:
98
- return ColumnDisplayTypeEnum.Component;
99
- case ColumnTypeEnum.String:
100
- default:
101
- return ColumnDisplayTypeEnum.String;
102
- }
103
- }
104
- /**
105
- * converts string type to type enum, default is text
106
- * @param property
107
- */
108
- static toFieldInputType(property) {
109
- switch (property) {
110
- case 'hidden':
111
- return FieldInputTypeEnum.Hidden;
112
- case 'label':
113
- return FieldInputTypeEnum.Label;
114
- case 'textarea':
115
- return FieldInputTypeEnum.Textarea;
116
- case 'number':
117
- return FieldInputTypeEnum.Number;
118
- case 'currency':
119
- return FieldInputTypeEnum.Currency;
120
- case 'switch':
121
- case 'boolean':
122
- return FieldInputTypeEnum.Switch;
123
- case 'radio':
124
- return FieldInputTypeEnum.Radio;
125
- case 'datepicker':
126
- return FieldInputTypeEnum.Datepicker;
127
- case 'mask':
128
- return FieldInputTypeEnum.Mask;
129
- case 'file':
130
- return FieldInputTypeEnum.File;
131
- case 'custom':
132
- return FieldInputTypeEnum.Custom;
133
- case 'text':
134
- default:
135
- return FieldInputTypeEnum.Text;
136
- }
137
- }
138
- /**
139
- * convert column type to equivalent field input type
140
- * @param type column type
141
- */
142
- static toFieldInputTypeFromColumnType(type, displayType) {
143
- switch (type) {
144
- case ColumnTypeEnum.Number:
145
- return displayType === ColumnDisplayTypeEnum.Currency ? FieldInputTypeEnum.Currency : FieldInputTypeEnum.Number;
146
- case ColumnTypeEnum.Boolean:
147
- return FieldInputTypeEnum.Switch;
148
- case ColumnTypeEnum.Date:
149
- return FieldInputTypeEnum.Datepicker;
150
- case ColumnTypeEnum.Custom:
151
- return FieldInputTypeEnum.Custom;
152
- case ColumnTypeEnum.String:
153
- case ColumnTypeEnum.Enum:
154
- default:
155
- return FieldInputTypeEnum.Text;
156
- }
157
- }
158
- }
159
- TableviewUtil._dateRegex = /\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/;
1
+ import { ObjectSerializer } from '../api/utils';
2
+ import { ColumnDisplayTypeEnum, ColumnTypeEnum, FieldInputTypeEnum } from '../descriptors/types';
3
+ export class TableviewUtil {
4
+ /**
5
+ * returns attributes from class type and extends to typed def with column and field enum type
6
+ * @param modelType class type
7
+ */
8
+ static getAttributeDefMap(modelType) {
9
+ return TableviewUtil.expandAttributeDefWithTableviewTypes(ObjectSerializer.get().findAttributesDefinitionByClassType(modelType));
10
+ }
11
+ /**
12
+ * expands AttributeDef to TableviewAttributeDef with defined input and column enum type
13
+ * @param attributes open api specification model
14
+ */
15
+ static expandAttributeDefWithTableviewTypes(attributes) {
16
+ if (attributes == null) {
17
+ throw new Error('AttributeDef is null, problem with ObjectSerializer::findAttributesDefinitionByClassType?');
18
+ }
19
+ const objectSerializer = ObjectSerializer.get();
20
+ const tableviewAttributeDef = [];
21
+ for (const attribute of attributes) {
22
+ const enumType = objectSerializer.findEnum(attribute.type);
23
+ const columnType = enumType ? ColumnTypeEnum.Enum : TableviewUtil.toColumnType(attribute.type);
24
+ tableviewAttributeDef.push({
25
+ name: attribute.name,
26
+ baseName: attribute.baseName,
27
+ type: attribute.type,
28
+ columnType: enumType ? ColumnTypeEnum.Enum : TableviewUtil.toColumnType(attribute.type),
29
+ columnDisplayType: TableviewUtil.toColumnDisplayType(columnType, attribute.type),
30
+ fieldType: TableviewUtil.toFieldInputType(attribute.type),
31
+ enumType: objectSerializer.findEnum(attribute.type),
32
+ classType: objectSerializer.findType(attribute.type)
33
+ });
34
+ }
35
+ return tableviewAttributeDef;
36
+ }
37
+ /**
38
+ * converts column to number or date on value based
39
+ * @param column column to be transformed
40
+ * @param value value to check if applicable
41
+ */
42
+ static stringColumnConverter(column, value) {
43
+ if (typeof value === 'boolean') {
44
+ return column.asBoolean();
45
+ }
46
+ else if (!isNaN(value) && typeof value === 'number') {
47
+ return column.asNumber();
48
+ }
49
+ else if (this._dateRegex.test(value)) {
50
+ return column.asDate();
51
+ }
52
+ else {
53
+ return column;
54
+ }
55
+ }
56
+ /**
57
+ * converts string type to column type enum, default is string
58
+ * @param propertyType
59
+ */
60
+ static toColumnType(propertyType) {
61
+ const os = ObjectSerializer.get();
62
+ if (os.findEnum(propertyType)) {
63
+ propertyType = 'enum';
64
+ }
65
+ else if (os.findType(propertyType)) {
66
+ propertyType = 'class';
67
+ }
68
+ switch (propertyType.toLowerCase()) {
69
+ case 'number':
70
+ case 'currency':
71
+ return ColumnTypeEnum.Number;
72
+ case 'boolean':
73
+ return ColumnTypeEnum.Boolean;
74
+ case 'date':
75
+ return ColumnTypeEnum.Date;
76
+ case 'enum':
77
+ return ColumnTypeEnum.Enum;
78
+ case 'custom':
79
+ return ColumnTypeEnum.Custom;
80
+ case 'class':
81
+ return ColumnTypeEnum.String;
82
+ case 'string':
83
+ default:
84
+ return ColumnTypeEnum.String;
85
+ }
86
+ }
87
+ static toColumnDisplayType(columnType, propertyType) {
88
+ switch (columnType) {
89
+ case ColumnTypeEnum.Number:
90
+ return propertyType === 'currency' ? ColumnDisplayTypeEnum.Currency : ColumnDisplayTypeEnum.Number;
91
+ case ColumnTypeEnum.Boolean:
92
+ return ColumnDisplayTypeEnum.Boolean;
93
+ case ColumnTypeEnum.Date:
94
+ return ColumnDisplayTypeEnum.Date;
95
+ case ColumnTypeEnum.Enum:
96
+ return ColumnDisplayTypeEnum.Enum;
97
+ case ColumnTypeEnum.Custom:
98
+ return ColumnDisplayTypeEnum.Component;
99
+ case ColumnTypeEnum.String:
100
+ default:
101
+ return ColumnDisplayTypeEnum.String;
102
+ }
103
+ }
104
+ /**
105
+ * converts string type to type enum, default is text
106
+ * @param property
107
+ */
108
+ static toFieldInputType(property) {
109
+ switch (property) {
110
+ case 'hidden':
111
+ return FieldInputTypeEnum.Hidden;
112
+ case 'label':
113
+ return FieldInputTypeEnum.Label;
114
+ case 'textarea':
115
+ return FieldInputTypeEnum.Textarea;
116
+ case 'number':
117
+ return FieldInputTypeEnum.Number;
118
+ case 'currency':
119
+ return FieldInputTypeEnum.Currency;
120
+ case 'switch':
121
+ case 'boolean':
122
+ return FieldInputTypeEnum.Switch;
123
+ case 'radio':
124
+ return FieldInputTypeEnum.Radio;
125
+ case 'datepicker':
126
+ return FieldInputTypeEnum.Datepicker;
127
+ case 'mask':
128
+ return FieldInputTypeEnum.Mask;
129
+ case 'file':
130
+ return FieldInputTypeEnum.File;
131
+ case 'custom':
132
+ return FieldInputTypeEnum.Custom;
133
+ case 'text':
134
+ default:
135
+ return FieldInputTypeEnum.Text;
136
+ }
137
+ }
138
+ /**
139
+ * convert column type to equivalent field input type
140
+ * @param type column type
141
+ */
142
+ static toFieldInputTypeFromColumnType(type, displayType) {
143
+ switch (type) {
144
+ case ColumnTypeEnum.Number:
145
+ return displayType === ColumnDisplayTypeEnum.Currency ? FieldInputTypeEnum.Currency : FieldInputTypeEnum.Number;
146
+ case ColumnTypeEnum.Boolean:
147
+ return FieldInputTypeEnum.Switch;
148
+ case ColumnTypeEnum.Date:
149
+ return FieldInputTypeEnum.Datepicker;
150
+ case ColumnTypeEnum.Custom:
151
+ return FieldInputTypeEnum.Custom;
152
+ case ColumnTypeEnum.String:
153
+ case ColumnTypeEnum.Enum:
154
+ default:
155
+ return FieldInputTypeEnum.Text;
156
+ }
157
+ }
158
+ }
159
+ TableviewUtil._dateRegex = /\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)/;
160
160
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGV2aWV3LnV0aWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3V0aWxzL3RhYmxldmlldy51dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGNBQWMsQ0FBQztBQUU5QyxPQUFPLEVBQUMscUJBQXFCLEVBQUUsY0FBYyxFQUFFLGtCQUFrQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFJL0YsTUFBTSxPQUFPLGFBQWE7SUFHdEI7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLGtCQUFrQixDQUFJLFNBQXVCO1FBQ3ZELE9BQU8sYUFBYSxDQUFDLG9DQUFvQyxDQUFDLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxDQUFDLG1DQUFtQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDckksQ0FBQztJQUVEOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxvQ0FBb0MsQ0FBQyxVQUF1QztRQUN0RixJQUFJLFVBQVUsSUFBSSxJQUFJLEVBQUU7WUFDcEIsTUFBTSxJQUFJLEtBQUssQ0FBQywyRkFBMkYsQ0FBQyxDQUFDO1NBQ2hIO1FBQ0QsTUFBTSxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUVoRCxNQUFNLHFCQUFxQixHQUE0QixFQUFFLENBQUM7UUFFMUQsS0FBSyxNQUFNLFNBQVMsSUFBSSxVQUFVLEVBQUU7WUFDaEMsTUFBTSxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUMzRCxNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQy9GLHFCQUFxQixDQUFDLElBQUksQ0FBQztnQkFDdkIsSUFBSSxFQUFFLFNBQVMsQ0FBQyxJ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SUFBSSxDQUFDO1NBQ3RDO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyw4QkFBOEIsQ0FBQyxJQUFvQixFQUFFLFdBQW1DO1FBQ2xHLFFBQVEsSUFBSSxFQUFFO1lBQ1YsS0FBSyxjQUFjLENBQUMsTUFBTTtnQkFDdEIsT0FBTyxXQUFXLEtBQUsscUJBQXFCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQztZQUNwSCxLQUFLLGNBQWMsQ0FBQyxPQUFPO2dCQUN2QixPQUFPLGtCQUFrQixDQUFDLE1BQU0sQ0FBQztZQUNyQyxLQUFLLGNBQWMsQ0FBQyxJQUFJO2dCQUNwQixPQUFPLGtCQUFrQixDQUFDLFVBQVUsQ0FBQztZQUN6QyxLQUFLLGNBQWMsQ0FBQyxNQUFNO2dCQUN0QixPQUFPLGtCQUFrQixDQUFDLE1BQU0sQ0FBQztZQUNyQyxLQUFLLGNBQWMsQ0FBQyxNQUFNLENBQUM7WUFDM0IsS0FBSyxjQUFjLENBQUMsSUFBSSxDQUFDO1lBQ3pCO2dCQUNJLE9BQU8sa0JBQWtCLENBQUMsSUFBSSxDQUFDO1NBQ3RDO0lBQ0wsQ0FBQzs7QUFqS2Msd0JBQVUsR0FBRywwRUFBMEUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QXR0cmlidXRlRGVmfSBmcm9tICcuLi9hcGkvbW9kZWxzJztcbmltcG9ydCB7T2JqZWN0U2VyaWFsaXplcn0gZnJvbSAnLi4vYXBpL3V0aWxzJztcbmltcG9ydCB7Q29sdW1uRGVzY3JpcHRvcn0gZnJvbSAnLi4vZGVzY3JpcHRvcnMnO1xuaW1wb3J0IHtDb2x1bW5EaXNwbGF5VHlwZUVudW0sIENvbHVtblR5cGVFbnVtLCBGaWVsZElucHV0VHlwZUVudW19IGZyb20gJy4uL2Rlc2NyaXB0b3JzL3R5cGVzJztcbmltcG9ydCB7VGFibGV2aWV3QXR0cmlidXRlRGVmfSBmcm9tICcuLi9tb2RlbHMvdGFibGV2aWV3LWF0dHIubW9kZWwnO1xuaW1wb3J0IHtDbGFzc1R5cGUsIEVudW1UeXBlfSBmcm9tICcuLi90eXBlcyc7XG5cbmV4cG9ydCBjbGFzcyBUYWJsZXZpZXdVdGlsIHtcbiAgICBwcml2YXRlIHN0YXRpYyBfZGF0ZVJlZ2V4ID0gL1xcZHs0fS1bMDFdXFxkLVswLTNdXFxkVFswLTJdXFxkOlswLTVdXFxkOlswLTVdXFxkXFwuXFxkKyhbKy1dWzAtMl1cXGQ6WzAtNV1cXGR8WikvO1xuXG4gICAgLyoqXG4gICAgICogcmV0dXJucyBhdHRyaWJ1dGVzIGZyb20gY2xhc3MgdHlwZSBhbmQgZXh0ZW5kcyB0byB0eXBlZCBkZWYgd2l0aCBjb2x1bW4gYW5kIGZpZWxkIGVudW0gdHlwZVxuICAgICAqIEBwYXJhbSBtb2RlbFR5cGUgY2xhc3MgdHlwZVxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZ2V0QXR0cmlidXRlRGVmTWFwPFQ+KG1vZGVsVHlwZTogQ2xhc3NUeXBlPFQ+KTogVGFibGV2aWV3QXR0cmlidXRlRGVmW10ge1xuICAgICAgICByZXR1cm4gVGFibGV2aWV3VXRpbC5leHBhbmRBdHRyaWJ1dGVEZWZXaXRoVGFibGV2aWV3VHlwZXMoT2JqZWN0U2VyaWFsaXplci5nZXQoKS5maW5kQXR0cmlidXRlc0RlZmluaXRpb25CeUNsYXNzVHlwZShtb2RlbFR5cGUpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBleHBhbmRzIEF0dHJpYnV0ZURlZiB0byBUYWJsZXZpZXdBdHRyaWJ1dGVEZWYgd2l0aCBkZWZpbmVkIGlucHV0IGFuZCBjb2x1bW4gZW51bSB0eXBlXG4gICAgICogQHBhcmFtIGF0dHJpYnV0ZXMgb3BlbiBhcGkgc3BlY2lmaWNhdGlvbiBtb2RlbFxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZXhwYW5kQXR0cmlidXRlRGVmV2l0aFRhYmxldmlld1R5cGVzKGF0dHJpYnV0ZXM/OiBBcnJheTxBdHRyaWJ1dGVEZWY+IHwgbnVsbCk6IFRhYmxldmlld0F0dHJpYnV0ZURlZltdIHtcbiAgICAgICAgaWYgKGF0dHJpYnV0ZXMgPT0gbnVsbCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdBdHRyaWJ1dGVEZWYgaXMgbnVsbCwgcHJvYmxlbSB3aXRoIE9iamVjdFNlcmlhbGl6ZXI6OmZpbmRBdHRyaWJ1dGVzRGVmaW5pdGlvbkJ5Q2xhc3NUeXBlPycpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG9iamVjdFNlcmlhbGl6ZXIgPSBPYmplY3RTZXJpYWxpemVyLmdldCgpO1xuXG4gICAgICAgIGNvbnN0IHRhYmxldmlld0F0dHJpYnV0ZURlZjogVGFibGV2aWV3QXR0cmlidXRlRGVmW10gPSBbXTtcblxuICAgICAgICBmb3IgKGNvbnN0IGF0dHJpYnV0ZSBvZiBhdHRyaWJ1dGVzKSB7XG4gICAgICAgICAgICBjb25zdCBlbnVtVHlwZSA9IG9iamVjdFNlcmlhbGl6ZXIuZmluZEVudW0oYXR0cmlidXRlLnR5cGUpO1xuICAgICAgICAgICAgY29uc3QgY29sdW1uVHlwZSA9IGVudW1UeXBlID8gQ29sdW1uVHlwZUVudW0uRW51bSA6IFRhYmxldmlld1V0aWwudG9Db2x1bW5UeXBlKGF0dHJpYnV0ZS50eXBlKTtcbiAgICAgICAgICAgIHRhYmxldmlld0F0dHJpYnV0ZURlZi5wdXNoKHtcbiAgICAgICAgICAgICAgICBuYW1lOiBhdHRyaWJ1dGUubmFtZSxcbiAgICAgICAgICAgICAgICBiYXNlTmFtZTogYXR0cmlidXRlLmJhc2VOYW1lLFxuICAgICAgICAgICAgICAgIHR5cGU6IGF0dHJpYnV0ZS50eXBlLFxuICAgICAgICAgICAgICAgIGNvbHVtblR5cGU6IGVudW1UeXBlID8gQ29sdW1uVHlwZUVudW0uRW51bSA6IFRhYmxldmlld1V0aWwudG9Db2x1bW5UeXBlKGF0dHJpYnV0ZS50eXBlKSxcbiAgICAgICAgICAgICAgICBjb2x1bW5EaXNwbGF5VHlwZTogVGFibGV2aWV3VXRpbC50b0NvbHVtbkRpc3BsYXlUeXBlKGNvbHVtblR5cGUsIGF0dHJpYnV0ZS50eXBlKSxcbiAgICAgICAgICAgICAgICBmaWVsZFR5cGU6IFRhYmxldmlld1V0aWwudG9GaWVsZElucHV0VHlwZShhdHRyaWJ1dGUudHlwZSksXG4gICAgICAgICAgICAgICAgZW51bVR5cGU6IG9iamVjdFNlcmlhbGl6ZXIuZmluZEVudW0oYXR0cmlidXRlLnR5cGUpIGFzIEVudW1UeXBlLFxuICAgICAgICAgICAgICAgIGNsYXNzVHlwZTogb2JqZWN0U2VyaWFsaXplci5maW5kVHlwZShhdHRyaWJ1dGUudHlwZSkgYXMgQ2xhc3NUeXBlPGFueT5cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRhYmxldmlld0F0dHJpYnV0ZURlZjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBjb252ZXJ0cyBjb2x1bW4gdG8gbnVtYmVyIG9yIGRhdGUgb24gdmFsdWUgYmFzZWRcbiAgICAgKiBAcGFyYW0gY29sdW1uIGNvbHVtbiB0byBiZSB0cmFuc2Zvcm1lZFxuICAgICAqIEBwYXJhbSB2YWx1ZSB2YWx1ZSB0byBjaGVjayBpZiBhcHBsaWNhYmxlXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBzdHJpbmdDb2x1bW5Db252ZXJ0ZXIoY29sdW1uOiBDb2x1bW5EZXNjcmlwdG9yPGFueSwgYW55PiwgdmFsdWU6IGFueSk6IENvbHVtbkRlc2NyaXB0b3I8YW55LCBhbnk+IHtcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ2Jvb2xlYW4nKSB7XG4gICAgICAgICAgICByZXR1cm4gY29sdW1uLmFzQm9vbGVhbigpO1xuICAgICAgICB9IGVsc2UgaWYgKCFpc05hTih2YWx1ZSkgJiYgdHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgcmV0dXJuIGNvbHVtbi5hc051bWJlcigpO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX2RhdGVSZWdleC50ZXN0KHZhbHVlKSkge1xuICAgICAgICAgICAgcmV0dXJuIGNvbHVtbi5hc0RhdGUoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiBjb2x1bW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBjb252ZXJ0cyBzdHJpbmcgdHlwZSB0byBjb2x1bW4gdHlwZSBlbnVtLCBkZWZhdWx0IGlzIHN0cmluZ1xuICAgICAqIEBwYXJhbSBwcm9wZXJ0eVR5cGVcbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIHRvQ29sdW1uVHlwZShwcm9wZXJ0eVR5cGU6IHN0cmluZyk6IENvbHVtblR5cGVFbnVtIHtcbiAgICAgICAgY29uc3Qgb3MgPSBPYmplY3RTZXJpYWxpemVyLmdldCgpO1xuICAgICAgICBpZiAob3MuZmluZEVudW0ocHJvcGVydHlUeXBlKSBhcyBFbnVtVHlwZSkge1xuICAgICAgICAgICAgcHJvcGVydHlUeXBlID0gJ2VudW0nO1xuICAgICAgICB9IGVsc2UgaWYgKG9zLmZpbmRUeXBlKHByb3BlcnR5VHlwZSkgYXMgQ2xhc3NUeXBlPGFueT4pIHtcbiAgICAgICAgICAgIHByb3BlcnR5VHlwZSA9ICdjbGFzcyc7XG4gICAgICAgIH1cblxuICAgICAgICBzd2l0Y2ggKHByb3BlcnR5VHlwZS50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICAgICAgICBjYXNlICdudW1iZXInOlxuICAgICAgICAgICAgY2FzZSAnY3VycmVuY3knOlxuICAgICAgICAgICAgICAgIHJldHVybiBDb2x1bW5UeXBlRW51bS5OdW1iZXI7XG4gICAgICAgICAgICBjYXNlICdib29sZWFuJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gQ29sdW1uVHlwZUVudW0uQm9vbGVhbjtcbiAgICAgICAgICAgIGNhc2UgJ2RhdGUnOlxuICAgICAgICAgICAgICAgIHJldHVybiBDb2x1bW5UeXBlRW51bS5EYXRlO1xuICAgICAgICAgICAgY2FzZSAnZW51bSc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIENvbHVtblR5cGVFbnVtLkVudW07XG4gICAgICAgICAgICBjYXNlICdjdXN0b20nOlxuICAgICAgICAgICAgICAgIHJldHVybiBDb2x1bW5UeXBlRW51bS5DdXN0b207XG4gICAgICAgICAgICBjYXNlICdjbGFzcyc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIENvbHVtblR5cGVFbnVtLlN0cmluZztcbiAgICAgICAgICAgIGNhc2UgJ3N0cmluZyc6XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBDb2x1bW5UeXBlRW51bS5TdHJpbmc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHRvQ29sdW1uRGlzcGxheVR5cGUoY29sdW1uVHlwZTogQ29sdW1uVHlwZUVudW0sIHByb3BlcnR5VHlwZTogc3RyaW5nKTogQ29sdW1uRGlzcGxheVR5cGVFbnVtIHtcbiAgICAgICAgc3dpdGNoIChjb2x1bW5UeXBlKSB7XG4gICAgICAgICAgICBjYXNlIENvbHVtblR5cGVFbnVtLk51bWJlcjpcbiAgICAgICAgICAgICAgICByZXR1cm4gcHJvcGVydHlUeXBlID09PSAnY3VycmVuY3knID8gQ29sdW1uRGlzcGxheVR5cGVFbnVtLkN1cnJlbmN5IDogQ29sdW1uRGlzcGxheVR5cGVFbnVtLk51bWJlcjtcbiAgICAgICAgICAgIGNhc2UgQ29sdW1uVHlwZUVudW0uQm9vbGVhbjpcbiAgICAgICAgICAgICAgICByZXR1cm4gQ29sdW1uRGlzcGxheVR5cGVFbnVtLkJvb2xlYW47XG4gICAgICAgICAgICBjYXNlIENvbHVtblR5cGVFbnVtLkRhdGU6XG4gICAgICAgICAgICAgICAgcmV0dXJuIENvbHVtbkRpc3BsYXlUeXBlRW51bS5EYXRlO1xuICAgICAgICAgICAgY2FzZSBDb2x1bW5UeXBlRW51bS5FbnVtOlxuICAgICAgICAgICAgICAgIHJldHVybiBDb2x1bW5EaXNwbGF5VHlwZUVudW0uRW51bTtcbiAgICAgICAgICAgIGNhc2UgQ29sdW1uVHlwZUVudW0uQ3VzdG9tOlxuICAgICAgICAgICAgICAgIHJldHVybiBDb2x1bW5EaXNwbGF5VHlwZUVudW0uQ29tcG9uZW50O1xuICAgICAgICAgICAgY2FzZSBDb2x1bW5UeXBlRW51bS5TdHJpbmc6XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBDb2x1bW5EaXNwbGF5VHlwZUVudW0uU3RyaW5nO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogY29udmVydHMgc3RyaW5nIHR5cGUgdG8gdHlwZSBlbnVtLCBkZWZhdWx0IGlzIHRleHRcbiAgICAgKiBAcGFyYW0gcHJvcGVydHlcbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIHRvRmllbGRJbnB1dFR5cGUocHJvcGVydHk6IHN0cmluZyk6IEZpZWxkSW5wdXRUeXBlRW51bSB7XG4gICAgICAgIHN3aXRjaCAocHJvcGVydHkpIHtcbiAgICAgICAgICAgIGNhc2UgJ2hpZGRlbic6XG4gICAgICAgICAgICAgICAgcmV0dXJuIEZpZWxkSW5wdXRUeXBlRW51bS5IaWRkZW47XG4gICAgICAgICAgICBjYXNlICdsYWJlbCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIEZpZWxkSW5wdXRUeXBlRW51bS5MYWJlbDtcbiAgICAgICAgICAgIGNhc2UgJ3RleHRhcmVhJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gRmllbGRJbnB1dFR5cGVFbnVtLlRleHRhcmVhO1xuICAgICAgICAgICAgY2FzZSAnbnVtYmVyJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gRmllbGRJbnB1dFR5cGVFbnVtLk51bWJlcjtcbiAgICAgICAgICAgIGNhc2UgJ2N1cnJlbmN5JzpcbiAgICAgICAgICAgICAgICByZXR1cm4gRmllbGRJbnB1dFR5cGVFbnVtLkN1cnJlbmN5O1xuICAgICAgICAgICAgY2FzZSAnc3dpdGNoJzpcbiAgICAgICAgICAgIGNhc2UgJ2Jvb2xlYW4nOlxuICAgICAgICAgICAgICAgIHJldHVybiBGaWVsZElucHV0VHlwZUVudW0uU3dpdGNoO1xuICAgICAgICAgICAgY2FzZSAncmFkaW8nOlxuICAgICAgICAgICAgICAgIHJldHVybiBGaWVsZElucHV0VHlwZUVudW0uUmFkaW87XG4gICAgICAgICAgICBjYXNlICdkYXRlcGlja2VyJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gRmllbGRJbnB1dFR5cGVFbnVtLkRhdGVwaWNrZXI7XG4gICAgICAgICAgICBjYXNlICdtYXNrJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gRmllbGRJbnB1dFR5cGVFbnVtLk1hc2s7XG4gICAgICAgICAgICBjYXNlICdmaWxlJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gRmllbGRJbnB1dFR5cGVFbnVtLkZpbGU7XG4gICAgICAgICAgICBjYXNlICdjdXN0b20nOlxuICAgICAgICAgICAgICAgIHJldHVybiBGaWVsZElucHV0VHlwZUVudW0uQ3VzdG9tO1xuICAgICAgICAgICAgY2FzZSAndGV4dCc6XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHJldHVybiBGaWVsZElucHV0VHlwZUVudW0uVGV4dDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGNvbnZlcnQgY29sdW1uIHR5cGUgdG8gZXF1aXZhbGVudCBmaWVsZCBpbnB1dCB0eXBlXG4gICAgICogQHBhcmFtIHR5cGUgY29sdW1uIHR5cGVcbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIHRvRmllbGRJbnB1dFR5cGVGcm9tQ29sdW1uVHlwZSh0eXBlOiBDb2x1bW5UeXBlRW51bSwgZGlzcGxheVR5cGU/OiBDb2x1bW5EaXNwbGF5VHlwZUVudW0pOiBGaWVsZElucHV0VHlwZUVudW0ge1xuICAgICAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgQ29sdW1uVHlwZUVudW0uTnVtYmVyOlxuICAgICAgICAgICAgICAgIHJldHVybiBkaXNwbGF5VHlwZSA9PT0gQ29sdW1uRGlzcGxheVR5cGVFbnVtLkN1cnJlbmN5ID8gRmllbGRJbnB1dFR5cGVFbnVtLkN1cnJlbmN5IDogRmllbGRJbnB1dFR5cGVFbnVtLk51bWJlcjtcbiAgICAgICAgICAgIGNhc2UgQ29sdW1uVHlwZUVudW0uQm9vbGVhbjpcbiAgICAgICAgICAgICAgICByZXR1cm4gRmllbGRJbnB1dFR5cGVFbnVtLlN3aXRjaDtcbiAgICAgICAgICAgIGNhc2UgQ29sdW1uVHlwZUVudW0uRGF0ZTpcbiAgICAgICAgICAgICAgICByZXR1cm4gRmllbGRJbnB1dFR5cGVFbnVtLkRhdGVwaWNrZXI7XG4gICAgICAgICAgICBjYXNlIENvbHVtblR5cGVFbnVtLkN1c3RvbTpcbiAgICAgICAgICAgICAgICByZXR1cm4gRmllbGRJbnB1dFR5cGVFbnVtLkN1c3RvbTtcbiAgICAgICAgICAgIGNhc2UgQ29sdW1uVHlwZUVudW0uU3RyaW5nOlxuICAgICAgICAgICAgY2FzZSBDb2x1bW5UeXBlRW51bS5FbnVtOlxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICByZXR1cm4gRmllbGRJbnB1dFR5cGVFbnVtLlRleHQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
@@ -1,93 +1,93 @@
1
- import 'reflect-metadata';
2
- export class TypeUtil {
3
- /**
4
- * Defines type name decorator.
5
- * @param targetType class.
6
- * @param typeName Name of the type.
7
- */
8
- static defineReflectTypeName(targetType, typeName) {
9
- if (!Reflect.hasOwnMetadata(TypeUtil.reflectTypeNameKey, targetType)) {
10
- Reflect.defineMetadata(TypeUtil.reflectTypeNameKey, typeName, targetType);
11
- }
12
- }
13
- /**
14
- * Defines enum name decorator.
15
- * @param targetType enum object.
16
- * @param enumName Name of the enum.
17
- */
18
- static defineReflectEnumName(targetType, enumName) {
19
- if (!Reflect.hasOwnMetadata(TypeUtil.reflectEnumNameKey, targetType)) {
20
- Reflect.defineMetadata(TypeUtil.reflectEnumNameKey, enumName, targetType);
21
- }
22
- }
23
- /**
24
- * Defines type's id property.
25
- * @param targetType class.
26
- * @param typeName Name of the type.
27
- */
28
- static defineReflectTypeIdProperty(targetType, idProperty) {
29
- if (!Reflect.hasOwnMetadata(TypeUtil.reflectTypeIdPropertyKey, targetType)) {
30
- Reflect.defineMetadata(TypeUtil.reflectTypeIdPropertyKey, idProperty, targetType);
31
- }
32
- }
33
- /**
34
- * Defines type's id property.
35
- * @param targetType class.
36
- * @param typeName Name of the type.
37
- */
38
- static defineReflectTypeTitleProperty(targetType, titleProperty) {
39
- if (!Reflect.hasOwnMetadata(TypeUtil.reflectTypeTitlePropertyKey, targetType)) {
40
- Reflect.defineMetadata(TypeUtil.reflectTypeTitlePropertyKey, titleProperty, targetType);
41
- }
42
- }
43
- /**
44
- * Gets type name from reflect metadata.
45
- * @param type Class.
46
- */
47
- static findTypeName(type) {
48
- const typeName = Reflect.getMetadata(TypeUtil.reflectTypeNameKey, type);
49
- if (typeName) {
50
- return typeName;
51
- }
52
- console.warn('Reflect metadata could not be found for type, you might experience some issues in production build.', type);
53
- return type.name;
54
- }
55
- /**
56
- * Gets type name from either decorator or reflect metadata.
57
- * @param type Class.
58
- */
59
- static typeNameExists(type) {
60
- return Reflect.hasOwnMetadata(TypeUtil.reflectTypeNameKey, type);
61
- }
62
- /**
63
- * Gets enum name from either decorator or reflect metadata.
64
- * @param enumType Class.
65
- */
66
- static findEnumName(enumType) {
67
- const enumName = Reflect.getMetadata(TypeUtil.reflectEnumNameKey, enumType);
68
- if (enumName) {
69
- return enumName;
70
- }
71
- console.warn('Reflect metadata could not be found for enum, you might experience some issues in production build.', enumType);
72
- throw new Error('Could not fined enum name');
73
- }
74
- /**
75
- * Gets type's id property from reflect metadata.
76
- * @param type Class.
77
- */
78
- static findTypeIdProperty(type) {
79
- return Reflect.getMetadata(TypeUtil.reflectTypeIdPropertyKey, type);
80
- }
81
- /**
82
- * Gets type's title property from reflect metadata.
83
- * @param type Class.
84
- */
85
- static findTypeTitleProperty(type) {
86
- return Reflect.getMetadata(TypeUtil.reflectTypeTitlePropertyKey, type);
87
- }
88
- }
89
- TypeUtil.reflectTypeNameKey = 'typeName';
90
- TypeUtil.reflectTypeIdPropertyKey = 'typeIdProperty';
91
- TypeUtil.reflectTypeTitlePropertyKey = 'typeTitleProperty';
92
- TypeUtil.reflectEnumNameKey = 'enumName';
1
+ import 'reflect-metadata';
2
+ export class TypeUtil {
3
+ /**
4
+ * Defines type name decorator.
5
+ * @param targetType class.
6
+ * @param typeName Name of the type.
7
+ */
8
+ static defineReflectTypeName(targetType, typeName) {
9
+ if (!Reflect.hasOwnMetadata(TypeUtil.reflectTypeNameKey, targetType)) {
10
+ Reflect.defineMetadata(TypeUtil.reflectTypeNameKey, typeName, targetType);
11
+ }
12
+ }
13
+ /**
14
+ * Defines enum name decorator.
15
+ * @param targetType enum object.
16
+ * @param enumName Name of the enum.
17
+ */
18
+ static defineReflectEnumName(targetType, enumName) {
19
+ if (!Reflect.hasOwnMetadata(TypeUtil.reflectEnumNameKey, targetType)) {
20
+ Reflect.defineMetadata(TypeUtil.reflectEnumNameKey, enumName, targetType);
21
+ }
22
+ }
23
+ /**
24
+ * Defines type's id property.
25
+ * @param targetType class.
26
+ * @param typeName Name of the type.
27
+ */
28
+ static defineReflectTypeIdProperty(targetType, idProperty) {
29
+ if (!Reflect.hasOwnMetadata(TypeUtil.reflectTypeIdPropertyKey, targetType)) {
30
+ Reflect.defineMetadata(TypeUtil.reflectTypeIdPropertyKey, idProperty, targetType);
31
+ }
32
+ }
33
+ /**
34
+ * Defines type's id property.
35
+ * @param targetType class.
36
+ * @param typeName Name of the type.
37
+ */
38
+ static defineReflectTypeTitleProperty(targetType, titleProperty) {
39
+ if (!Reflect.hasOwnMetadata(TypeUtil.reflectTypeTitlePropertyKey, targetType)) {
40
+ Reflect.defineMetadata(TypeUtil.reflectTypeTitlePropertyKey, titleProperty, targetType);
41
+ }
42
+ }
43
+ /**
44
+ * Gets type name from reflect metadata.
45
+ * @param type Class.
46
+ */
47
+ static findTypeName(type) {
48
+ const typeName = Reflect.getMetadata(TypeUtil.reflectTypeNameKey, type);
49
+ if (typeName) {
50
+ return typeName;
51
+ }
52
+ console.warn('Reflect metadata could not be found for type, you might experience some issues in production build.', type);
53
+ return type.name;
54
+ }
55
+ /**
56
+ * Gets type name from either decorator or reflect metadata.
57
+ * @param type Class.
58
+ */
59
+ static typeNameExists(type) {
60
+ return Reflect.hasOwnMetadata(TypeUtil.reflectTypeNameKey, type);
61
+ }
62
+ /**
63
+ * Gets enum name from either decorator or reflect metadata.
64
+ * @param enumType Class.
65
+ */
66
+ static findEnumName(enumType) {
67
+ const enumName = Reflect.getMetadata(TypeUtil.reflectEnumNameKey, enumType);
68
+ if (enumName) {
69
+ return enumName;
70
+ }
71
+ console.warn('Reflect metadata could not be found for enum, you might experience some issues in production build.', enumType);
72
+ throw new Error('Could not fined enum name');
73
+ }
74
+ /**
75
+ * Gets type's id property from reflect metadata.
76
+ * @param type Class.
77
+ */
78
+ static findTypeIdProperty(type) {
79
+ return Reflect.getMetadata(TypeUtil.reflectTypeIdPropertyKey, type);
80
+ }
81
+ /**
82
+ * Gets type's title property from reflect metadata.
83
+ * @param type Class.
84
+ */
85
+ static findTypeTitleProperty(type) {
86
+ return Reflect.getMetadata(TypeUtil.reflectTypeTitlePropertyKey, type);
87
+ }
88
+ }
89
+ TypeUtil.reflectTypeNameKey = 'typeName';
90
+ TypeUtil.reflectTypeIdPropertyKey = 'typeIdProperty';
91
+ TypeUtil.reflectTypeTitlePropertyKey = 'typeTitleProperty';
92
+ TypeUtil.reflectEnumNameKey = 'enumName';
93
93
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS51dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi91dGlscy90eXBlLnV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxrQkFBa0IsQ0FBQztBQUkxQixNQUFNLE9BQU8sUUFBUTtJQU1qQjs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLHFCQUFxQixDQUFDLFVBQTBCLEVBQUUsUUFBZ0I7UUFDNUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLFVBQVUsQ0FBQyxFQUFFO1lBQ2xFLE9BQU8sQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztTQUM3RTtJQUNMLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLHFCQUFxQixDQUFDLFVBQW9CLEVBQUUsUUFBZ0I7UUFDdEUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLFVBQVUsQ0FBQyxFQUFFO1lBQ2xFLE9BQU8sQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQztTQUM3RTtJQUNMLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLDJCQUEyQixDQUFDLFVBQTBCLEVBQUUsVUFBMkI7UUFDN0YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLHdCQUF3QixFQUFFLFVBQVUsQ0FBQyxFQUFFO1lBQ3hFLE9BQU8sQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLHdCQUF3QixFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztTQUNyRjtJQUNMLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLDhCQUE4QixDQUFDLFVBQTBCLEVBQUUsYUFBOEI7UUFDbkcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLDJCQUEyQixFQUFFLFVBQVUsQ0FBQyxFQUFFO1lBQzNFLE9BQU8sQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLDJCQUEyQixFQUFFLGFBQWEsRUFBRSxVQUFVLENBQUMsQ0FBQztTQUMzRjtJQUNMLENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsWUFBWSxDQUFDLElBQW9CO1FBQzNDLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3hFLElBQUksUUFBUSxFQUFFO1lBQ1YsT0FBTyxRQUFRLENBQUM7U0FDbkI7UUFDRCxPQUFPLENBQUMsSUFBSSxDQUFDLHFHQUFxRyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzFILE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNyQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFvQjtRQUM3QyxPQUFPLE9BQU8sQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsWUFBWSxDQUFDLFFBQWtCO1FBQ3pDLE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLGtCQUFrQixFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzVFLElBQUksUUFBUSxFQUFFO1lBQ1YsT0FBTyxRQUFRLENBQUM7U0FDbkI7UUFDRCxPQUFPLENBQUMsSUFBSSxDQUFDLHFHQUFxRyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzlILE1BQU0sSUFBSSxLQUFLLENBQUMsMkJBQTJCLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLGtCQUFrQixDQUFDLElBQW9CO1FBQ2pELE9BQU8sT0FBTyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsd0JBQXdCLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVEOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxJQUFvQjtRQUNwRCxPQUFPLE9BQU8sQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLDJCQUEyQixFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzNFLENBQUM7O0FBakdzQiwyQkFBa0IsR0FBRyxVQUFVLENBQUM7QUFDaEMsaUNBQXdCLEdBQUcsZ0JBQWdCLENBQUM7QUFDNUMsb0NBQTJCLEdBQUcsbUJBQW1CLENBQUM7QUFDbEQsMkJBQWtCLEdBQUcsVUFBVSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICdyZWZsZWN0LW1ldGFkYXRhJztcblxuaW1wb3J0IHtDbGFzc1R5cGUsIEVudW1UeXBlfSBmcm9tICcuLi90eXBlcyc7XG5cbmV4cG9ydCBjbGFzcyBUeXBlVXRpbCB7XG4gICAgcHVibGljIHN0YXRpYyByZWFkb25seSByZWZsZWN0VHlwZU5hbWVLZXkgPSAndHlwZU5hbWUnO1xuICAgIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgcmVmbGVjdFR5cGVJZFByb3BlcnR5S2V5ID0gJ3R5cGVJZFByb3BlcnR5JztcbiAgICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IHJlZmxlY3RUeXBlVGl0bGVQcm9wZXJ0eUtleSA9ICd0eXBlVGl0bGVQcm9wZXJ0eSc7XG4gICAgcHVibGljIHN0YXRpYyByZWFkb25seSByZWZsZWN0RW51bU5hbWVLZXkgPSAnZW51bU5hbWUnO1xuXG4gICAgLyoqXG4gICAgICogRGVmaW5lcyB0eXBlIG5hbWUgZGVjb3JhdG9yLlxuICAgICAqIEBwYXJhbSB0YXJnZXRUeXBlIGNsYXNzLlxuICAgICAqIEBwYXJhbSB0eXBlTmFtZSBOYW1lIG9mIHRoZSB0eXBlLlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZGVmaW5lUmVmbGVjdFR5cGVOYW1lKHRhcmdldFR5cGU6IENsYXNzVHlwZTxhbnk+LCB0eXBlTmFtZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICghUmVmbGVjdC5oYXNPd25NZXRhZGF0YShUeXBlVXRpbC5yZWZsZWN0VHlwZU5hbWVLZXksIHRhcmdldFR5cGUpKSB7XG4gICAgICAgICAgICBSZWZsZWN0LmRlZmluZU1ldGFkYXRhKFR5cGVVdGlsLnJlZmxlY3RUeXBlTmFtZUtleSwgdHlwZU5hbWUsIHRhcmdldFR5cGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGVmaW5lcyBlbnVtIG5hbWUgZGVjb3JhdG9yLlxuICAgICAqIEBwYXJhbSB0YXJnZXRUeXBlIGVudW0gb2JqZWN0LlxuICAgICAqIEBwYXJhbSBlbnVtTmFtZSBOYW1lIG9mIHRoZSBlbnVtLlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZGVmaW5lUmVmbGVjdEVudW1OYW1lKHRhcmdldFR5cGU6IEVudW1UeXBlLCBlbnVtTmFtZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICghUmVmbGVjdC5oYXNPd25NZXRhZGF0YShUeXBlVXRpbC5yZWZsZWN0RW51bU5hbWVLZXksIHRhcmdldFR5cGUpKSB7XG4gICAgICAgICAgICBSZWZsZWN0LmRlZmluZU1ldGFkYXRhKFR5cGVVdGlsLnJlZmxlY3RFbnVtTmFtZUtleSwgZW51bU5hbWUsIHRhcmdldFR5cGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGVmaW5lcyB0eXBlJ3MgaWQgcHJvcGVydHkuXG4gICAgICogQHBhcmFtIHRhcmdldFR5cGUgY2xhc3MuXG4gICAgICogQHBhcmFtIHR5cGVOYW1lIE5hbWUgb2YgdGhlIHR5cGUuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBkZWZpbmVSZWZsZWN0VHlwZUlkUHJvcGVydHkodGFyZ2V0VHlwZTogQ2xhc3NUeXBlPGFueT4sIGlkUHJvcGVydHk6IHN0cmluZyB8IHN5bWJvbCkge1xuICAgICAgICBpZiAoIVJlZmxlY3QuaGFzT3duTWV0YWRhdGEoVHlwZVV0aWwucmVmbGVjdFR5cGVJZFByb3BlcnR5S2V5LCB0YXJnZXRUeXBlKSkge1xuICAgICAgICAgICAgUmVmbGVjdC5kZWZpbmVNZXRhZGF0YShUeXBlVXRpbC5yZWZsZWN0VHlwZUlkUHJvcGVydHlLZXksIGlkUHJvcGVydHksIHRhcmdldFR5cGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGVmaW5lcyB0eXBlJ3MgaWQgcHJvcGVydHkuXG4gICAgICogQHBhcmFtIHRhcmdldFR5cGUgY2xhc3MuXG4gICAgICogQHBhcmFtIHR5cGVOYW1lIE5hbWUgb2YgdGhlIHR5cGUuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBkZWZpbmVSZWZsZWN0VHlwZVRpdGxlUHJvcGVydHkodGFyZ2V0VHlwZTogQ2xhc3NUeXBlPGFueT4sIHRpdGxlUHJvcGVydHk6IHN0cmluZyB8IHN5bWJvbCkge1xuICAgICAgICBpZiAoIVJlZmxlY3QuaGFzT3duTWV0YWRhdGEoVHlwZVV0aWwucmVmbGVjdFR5cGVUaXRsZVByb3BlcnR5S2V5LCB0YXJnZXRUeXBlKSkge1xuICAgICAgICAgICAgUmVmbGVjdC5kZWZpbmVNZXRhZGF0YShUeXBlVXRpbC5yZWZsZWN0VHlwZVRpdGxlUHJvcGVydHlLZXksIHRpdGxlUHJvcGVydHksIHRhcmdldFR5cGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0eXBlIG5hbWUgZnJvbSByZWZsZWN0IG1ldGFkYXRhLlxuICAgICAqIEBwYXJhbSB0eXBlIENsYXNzLlxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZmluZFR5cGVOYW1lKHR5cGU6IENsYXNzVHlwZTxhbnk+KTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgdHlwZU5hbWUgPSBSZWZsZWN0LmdldE1ldGFkYXRhKFR5cGVVdGlsLnJlZmxlY3RUeXBlTmFtZUtleSwgdHlwZSk7XG4gICAgICAgIGlmICh0eXBlTmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIHR5cGVOYW1lO1xuICAgICAgICB9XG4gICAgICAgIGNvbnNvbGUud2FybignUmVmbGVjdCBtZXRhZGF0YSBjb3VsZCBub3QgYmUgZm91bmQgZm9yIHR5cGUsIHlvdSBtaWdodCBleHBlcmllbmNlIHNvbWUgaXNzdWVzIGluIHByb2R1Y3Rpb24gYnVpbGQuJywgdHlwZSk7XG4gICAgICAgIHJldHVybiB0eXBlLm5hbWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0eXBlIG5hbWUgZnJvbSBlaXRoZXIgZGVjb3JhdG9yIG9yIHJlZmxlY3QgbWV0YWRhdGEuXG4gICAgICogQHBhcmFtIHR5cGUgQ2xhc3MuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyB0eXBlTmFtZUV4aXN0cyh0eXBlOiBDbGFzc1R5cGU8YW55Pik6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gUmVmbGVjdC5oYXNPd25NZXRhZGF0YShUeXBlVXRpbC5yZWZsZWN0VHlwZU5hbWVLZXksIHR5cGUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgZW51bSBuYW1lIGZyb20gZWl0aGVyIGRlY29yYXRvciBvciByZWZsZWN0IG1ldGFkYXRhLlxuICAgICAqIEBwYXJhbSBlbnVtVHlwZSBDbGFzcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGZpbmRFbnVtTmFtZShlbnVtVHlwZTogRW51bVR5cGUpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBlbnVtTmFtZSA9IFJlZmxlY3QuZ2V0TWV0YWRhdGEoVHlwZVV0aWwucmVmbGVjdEVudW1OYW1lS2V5LCBlbnVtVHlwZSk7XG4gICAgICAgIGlmIChlbnVtTmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIGVudW1OYW1lO1xuICAgICAgICB9XG4gICAgICAgIGNvbnNvbGUud2FybignUmVmbGVjdCBtZXRhZGF0YSBjb3VsZCBub3QgYmUgZm91bmQgZm9yIGVudW0sIHlvdSBtaWdodCBleHBlcmllbmNlIHNvbWUgaXNzdWVzIGluIHByb2R1Y3Rpb24gYnVpbGQuJywgZW51bVR5cGUpO1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0NvdWxkIG5vdCBmaW5lZCBlbnVtIG5hbWUnKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHR5cGUncyBpZCBwcm9wZXJ0eSBmcm9tIHJlZmxlY3QgbWV0YWRhdGEuXG4gICAgICogQHBhcmFtIHR5cGUgQ2xhc3MuXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBmaW5kVHlwZUlkUHJvcGVydHkodHlwZTogQ2xhc3NUeXBlPGFueT4pOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gUmVmbGVjdC5nZXRNZXRhZGF0YShUeXBlVXRpbC5yZWZsZWN0VHlwZUlkUHJvcGVydHlLZXksIHR5cGUpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgdHlwZSdzIHRpdGxlIHByb3BlcnR5IGZyb20gcmVmbGVjdCBtZXRhZGF0YS5cbiAgICAgKiBAcGFyYW0gdHlwZSBDbGFzcy5cbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGZpbmRUeXBlVGl0bGVQcm9wZXJ0eSh0eXBlOiBDbGFzc1R5cGU8YW55Pik6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBSZWZsZWN0LmdldE1ldGFkYXRhKFR5cGVVdGlsLnJlZmxlY3RUeXBlVGl0bGVQcm9wZXJ0eUtleSwgdHlwZSk7XG4gICAgfVxufVxuIl19
@@ -1,5 +1,5 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
5
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaXVzaW5jLW1uZy1jb21tb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21lZGl1c2luYy1tbmctY29tbW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19