@mediusinc/mng-commons 0.21.1 → 1.0.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 (381) hide show
  1. package/assets/i18n/en.json +20 -2
  2. package/assets/i18n/sl.json +18 -1
  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 +75 -68
  14. package/esm2020/lib/api/services/get-all-api.abstract.service.mjs +30 -23
  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 +225 -221
  20. package/esm2020/lib/components/action/editor/action-editor.component.mjs +303 -284
  21. package/esm2020/lib/components/action/index.mjs +5 -4
  22. package/esm2020/lib/components/action/localization/data-language-dropdown.component.mjs +45 -0
  23. package/esm2020/lib/components/action/models/action-component.model.mjs +2 -0
  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 +249 -245
  26. package/esm2020/lib/components/action/models/index.mjs +5 -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 +243 -219
  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 +180 -180
  40. package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +178 -168
  41. package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +148 -148
  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 +83 -15
  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 +122 -115
  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 -83
  74. package/esm2020/lib/components/tableview/table/table.component.mjs +594 -590
  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 +37 -37
  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 +38 -38
  81. package/esm2020/lib/data-providers/tableview-crud.data-provider.mjs +24 -24
  82. package/esm2020/lib/data-providers/tableview.data-provider.mjs +45 -59
  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 +560 -548
  86. package/esm2020/lib/descriptors/column.descriptor.mjs +405 -386
  87. package/esm2020/lib/descriptors/editor.descriptor.mjs +290 -251
  88. package/esm2020/lib/descriptors/field-validation.descriptor.mjs +24 -24
  89. package/esm2020/lib/descriptors/field.descriptor.mjs +979 -937
  90. package/esm2020/lib/descriptors/filter.descriptor.mjs +320 -320
  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 +482 -464
  97. package/esm2020/lib/descriptors/tableview.descriptor.mjs +344 -324
  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 +54 -54
  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 +44 -44
  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 +475 -468
  109. package/esm2020/lib/models/column-value.model.mjs +1 -1
  110. package/esm2020/lib/models/config.model.mjs +2 -2
  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 +12 -11
  127. package/esm2020/lib/pipes/json-path.pipe.mjs +78 -78
  128. package/esm2020/lib/pipes/locale-default-row-class.pipe.mjs +26 -0
  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 +552 -552
  147. package/esm2020/lib/services/commons.service.mjs +446 -420
  148. package/esm2020/lib/services/configuration.service.mjs +134 -134
  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 +145 -145
  175. package/esm2020/lib/utils/date.util.mjs +117 -117
  176. package/esm2020/lib/utils/editor-formly.util.mjs +277 -268
  177. package/esm2020/lib/utils/enum.util.mjs +81 -81
  178. package/esm2020/lib/utils/i18n.util.mjs +233 -233
  179. package/esm2020/lib/utils/index.mjs +9 -9
  180. package/esm2020/lib/utils/model.util.mjs +68 -68
  181. package/esm2020/lib/utils/notification.util.mjs +51 -46
  182. package/esm2020/lib/utils/route.util.mjs +23 -23
  183. package/esm2020/lib/utils/string.util.mjs +26 -26
  184. package/esm2020/lib/utils/tableview.util.mjs +159 -159
  185. package/esm2020/lib/utils/type.util.mjs +92 -92
  186. package/esm2020/mediusinc-mng-commons.mjs +4 -4
  187. package/esm2020/public-api.mjs +54 -54
  188. package/fesm2015/mediusinc-mng-commons.mjs +13634 -13246
  189. package/fesm2015/mediusinc-mng-commons.mjs.map +1 -1
  190. package/fesm2020/mediusinc-mng-commons.mjs +13472 -13090
  191. package/fesm2020/mediusinc-mng-commons.mjs.map +1 -1
  192. package/index.d.ts +5 -5
  193. package/lib/api/models/builders/query-param.builder.d.ts +13 -13
  194. package/lib/api/models/filter-match-type.model.d.ts +23 -23
  195. package/lib/api/models/filter-param.model.d.ts +23 -23
  196. package/lib/api/models/index.d.ts +8 -8
  197. package/lib/api/models/mappers.d.ts +6 -6
  198. package/lib/api/models/query-mode.model.d.ts +16 -16
  199. package/lib/api/models/query-param.model.d.ts +31 -31
  200. package/lib/api/models/query-result.model.d.ts +24 -24
  201. package/lib/api/models/serialization.model.d.ts +8 -8
  202. package/lib/api/services/api.abstract.service.d.ts +24 -24
  203. package/lib/api/services/crud-api.abstract.service.d.ts +22 -22
  204. package/lib/api/services/get-all-api.abstract.service.d.ts +14 -14
  205. package/lib/api/services/index.d.ts +3 -3
  206. package/lib/api/utils/index.d.ts +2 -2
  207. package/lib/api/utils/medius-rest.util.d.ts +16 -16
  208. package/lib/api/utils/object-serializer.util.d.ts +33 -33
  209. package/lib/components/action/action.component.d.ts +74 -72
  210. package/lib/components/action/editor/action-editor.component.d.ts +69 -69
  211. package/lib/components/action/index.d.ts +4 -3
  212. package/lib/components/action/localization/data-language-dropdown.component.d.ts +25 -0
  213. package/lib/components/action/models/action-component.model.d.ts +15 -0
  214. package/lib/components/action/models/action-confirmation-service.model.d.ts +6 -6
  215. package/lib/components/action/models/action-execution.model.d.ts +135 -133
  216. package/lib/components/action/models/index.d.ts +4 -3
  217. package/lib/components/action/models/tableview-action-default-categories.model.d.ts +10 -10
  218. package/lib/components/action/route/action-route.component.d.ts +31 -31
  219. package/lib/components/form/autocomplete/autocomplete.component.d.ts +61 -61
  220. package/lib/components/form/date-range/date-range.component.d.ts +28 -28
  221. package/lib/components/form/dropdown/dropdown.component.d.ts +52 -52
  222. package/lib/components/form/editor/form-editor.component.d.ts +52 -45
  223. package/lib/components/form/formly/fields/formly-field-action/formly-field-action.component.d.ts +13 -13
  224. package/lib/components/form/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.d.ts +16 -16
  225. package/lib/components/form/formly/fields/formly-field-dropdown/formly-field-dropdown.component.d.ts +15 -15
  226. package/lib/components/form/formly/fields/formly-field-fieldset/formly-field-fieldset.component.d.ts +14 -14
  227. package/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.d.ts +29 -29
  228. package/lib/components/form/formly/fields/formly-field-label/formly-field-label.component.d.ts +11 -11
  229. package/lib/components/form/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.d.ts +46 -46
  230. package/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.d.ts +24 -21
  231. package/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.d.ts +37 -37
  232. package/lib/components/form/formly/fields/formly-field-tabs/formly-field-tabs.component.d.ts +7 -7
  233. package/lib/components/form/formly/fields/index.d.ts +10 -10
  234. package/lib/components/form/formly/formly.config.d.ts +14 -14
  235. package/lib/components/form/formly/index.d.ts +1 -1
  236. package/lib/components/form/formly/models/formly-config.model.d.ts +11 -11
  237. package/lib/components/form/formly/models/formly-field.model.d.ts +16 -16
  238. package/lib/components/form/formly/models/index.d.ts +2 -2
  239. package/lib/components/form/formly/wrappers/formly-field-no-label-wrapper/formly-field-no-label-wrapper.component.d.ts +6 -6
  240. package/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.d.ts +11 -6
  241. package/lib/components/form/formly/wrappers/index.d.ts +2 -2
  242. package/lib/components/form/index.d.ts +4 -4
  243. package/lib/components/form/models/field-action-context.model.d.ts +17 -17
  244. package/lib/components/form/models/form-editor.event.d.ts +37 -37
  245. package/lib/components/form/models/form-editor.interface.d.ts +10 -10
  246. package/lib/components/form/models/index.d.ts +2 -2
  247. package/lib/components/layout/breadcrumb.component.d.ts +8 -8
  248. package/lib/components/layout/footer.component.d.ts +9 -9
  249. package/lib/components/layout/index.d.ts +7 -7
  250. package/lib/components/layout/main-layout.component.d.ts +20 -20
  251. package/lib/components/layout/menu-item.component.d.ts +52 -52
  252. package/lib/components/layout/menu.component.d.ts +10 -10
  253. package/lib/components/layout/services/index.d.ts +1 -1
  254. package/lib/components/layout/services/main-layout.component.service.d.ts +65 -65
  255. package/lib/components/layout/topbar.component.d.ts +28 -28
  256. package/lib/components/layout/version.component.d.ts +19 -19
  257. package/lib/components/tableview/index.d.ts +6 -6
  258. package/lib/components/tableview/models/index.d.ts +1 -1
  259. package/lib/components/tableview/models/table.event.d.ts +17 -17
  260. package/lib/components/tableview/route/tableview-route.abstract.component.d.ts +29 -28
  261. package/lib/components/tableview/route/tableview-route.component.d.ts +18 -18
  262. package/lib/components/tableview/table/column-filter/column-filter.component.d.ts +38 -38
  263. package/lib/components/tableview/table/column-value/column-value.component.d.ts +35 -35
  264. package/lib/components/tableview/table/table.component.d.ts +115 -114
  265. package/lib/components/tableview/tableview.component.d.ts +48 -48
  266. package/lib/data-providers/base.data-provider.d.ts +14 -14
  267. package/lib/data-providers/editor.data-provider.d.ts +25 -25
  268. package/lib/data-providers/index.d.ts +6 -6
  269. package/lib/data-providers/lookup.data-provider.d.ts +14 -14
  270. package/lib/data-providers/table.data-provider.d.ts +27 -27
  271. package/lib/data-providers/tableview-crud.data-provider.d.ts +8 -8
  272. package/lib/data-providers/tableview.data-provider.d.ts +33 -37
  273. package/lib/descriptors/action/action-confirmation.descriptor.d.ts +36 -36
  274. package/lib/descriptors/action-button.descriptor.d.ts +22 -22
  275. package/lib/descriptors/action.descriptor.d.ts +217 -212
  276. package/lib/descriptors/column.descriptor.d.ts +130 -125
  277. package/lib/descriptors/editor.descriptor.d.ts +116 -95
  278. package/lib/descriptors/field-validation.descriptor.d.ts +19 -19
  279. package/lib/descriptors/field.descriptor.d.ts +342 -332
  280. package/lib/descriptors/filter.descriptor.d.ts +112 -112
  281. package/lib/descriptors/index.d.ts +11 -11
  282. package/lib/descriptors/interfaces/field-config.interface.d.ts +9 -9
  283. package/lib/descriptors/interfaces/index.d.ts +2 -2
  284. package/lib/descriptors/interfaces/lookup-descriptor.interface.d.ts +17 -17
  285. package/lib/descriptors/model.descriptor.d.ts +18 -18
  286. package/lib/descriptors/table.descriptor.d.ts +188 -182
  287. package/lib/descriptors/tableview.descriptor.d.ts +129 -122
  288. package/lib/descriptors/types/action.type.d.ts +21 -21
  289. package/lib/descriptors/types/column.type.d.ts +18 -18
  290. package/lib/descriptors/types/editor.type.d.ts +6 -6
  291. package/lib/descriptors/types/field.type.d.ts +46 -46
  292. package/lib/descriptors/types/filter.type.d.ts +27 -27
  293. package/lib/descriptors/types/index.d.ts +6 -6
  294. package/lib/descriptors/types/table.type.d.ts +22 -22
  295. package/lib/directives/component.directive.d.ts +16 -16
  296. package/lib/directives/index.d.ts +2 -2
  297. package/lib/directives/template.directive.d.ts +13 -13
  298. package/lib/mng-commons.module.d.ts +97 -95
  299. package/lib/models/column-value.model.d.ts +4 -4
  300. package/lib/models/config.model.d.ts +40 -39
  301. package/lib/models/enum.model.d.ts +6 -6
  302. package/lib/models/error.model.d.ts +14 -14
  303. package/lib/models/index.d.ts +9 -9
  304. package/lib/models/menu.model.d.ts +30 -30
  305. package/lib/models/tableview-attr.model.d.ts +10 -10
  306. package/lib/models/user.model.d.ts +8 -8
  307. package/lib/models/version.model.d.ts +18 -18
  308. package/lib/models/view-container.model.d.ts +43 -43
  309. package/lib/pipes/boolean.pipe.d.ts +7 -7
  310. package/lib/pipes/class-map.pipe.d.ts +7 -7
  311. package/lib/pipes/enum.pipe.d.ts +8 -8
  312. package/lib/pipes/enumerate-async.pipe.d.ts +14 -14
  313. package/lib/pipes/enumerate.pipe.d.ts +21 -21
  314. package/lib/pipes/getter.pipe.d.ts +7 -7
  315. package/lib/pipes/i18n-property.pipe.d.ts +8 -8
  316. package/lib/pipes/index.d.ts +11 -10
  317. package/lib/pipes/json-path.pipe.d.ts +13 -13
  318. package/lib/pipes/locale-default-row-class.pipe.d.ts +10 -0
  319. package/lib/pipes/models/internal/enumrate-pipe-i18n.model.d.ts +5 -5
  320. package/lib/pipes/models/internal/index.d.ts +1 -1
  321. package/lib/pipes/parametrize.pipe.d.ts +13 -13
  322. package/lib/pipes/template.pipe.d.ts +10 -10
  323. package/lib/router/index.d.ts +2 -2
  324. package/lib/router/models/index.d.ts +1 -1
  325. package/lib/router/models/router.model.d.ts +33 -33
  326. package/lib/router/route-builder.d.ts +98 -98
  327. package/lib/router/tableview-route-builder.d.ts +37 -37
  328. package/lib/security/authorization.guard.d.ts +11 -11
  329. package/lib/security/authorization.service.d.ts +19 -19
  330. package/lib/security/authorization.util.d.ts +5 -5
  331. package/lib/security/index.d.ts +3 -3
  332. package/lib/security/model/authorization.type.d.ts +6 -6
  333. package/lib/security/model/index.d.ts +3 -3
  334. package/lib/security/model/permission-service.interface.d.ts +6 -6
  335. package/lib/security/model/permissions.model.d.ts +37 -37
  336. package/lib/services/action-executor.service.d.ts +149 -149
  337. package/lib/services/commons.service.d.ts +89 -84
  338. package/lib/services/configuration.service.d.ts +52 -52
  339. package/lib/services/error-mapper.service.d.ts +7 -7
  340. package/lib/services/index.d.ts +6 -6
  341. package/lib/services/internal/commons-init.provider.d.ts +3 -3
  342. package/lib/services/internal/commons-init.service.d.ts +16 -16
  343. package/lib/services/internal/index.d.ts +2 -2
  344. package/lib/services/navigation.service.d.ts +14 -14
  345. package/lib/services/providers/config-service.provider.d.ts +6 -6
  346. package/lib/services/providers/formly-config.provider.d.ts +4 -4
  347. package/lib/services/providers/index.d.ts +2 -2
  348. package/lib/services/tokens/browser-storage.token.d.ts +2 -2
  349. package/lib/services/tokens/commons-init.token.d.ts +3 -3
  350. package/lib/services/tokens/default-setting.token.d.ts +2 -2
  351. package/lib/services/tokens/index.d.ts +4 -4
  352. package/lib/services/tokens/module-config.token.d.ts +3 -3
  353. package/lib/services/version.service.d.ts +13 -13
  354. package/lib/services/view-container.component.service.d.ts +31 -31
  355. package/lib/styles/button-style.builder.d.ts +67 -67
  356. package/lib/styles/index.d.ts +2 -2
  357. package/lib/styles/models/index.d.ts +2 -2
  358. package/lib/styles/models/style-level.enum.d.ts +10 -10
  359. package/lib/styles/models/style-size.enum.d.ts +7 -7
  360. package/lib/styles/styles.util.d.ts +14 -14
  361. package/lib/types/index.d.ts +2 -2
  362. package/lib/types/type.decorator.d.ts +4 -4
  363. package/lib/types/type.model.d.ts +23 -23
  364. package/lib/utils/action-data-provider.util.d.ts +20 -20
  365. package/lib/utils/date.util.d.ts +7 -7
  366. package/lib/utils/editor-formly.util.d.ts +12 -12
  367. package/lib/utils/enum.util.d.ts +50 -50
  368. package/lib/utils/i18n.util.d.ts +56 -56
  369. package/lib/utils/index.d.ts +9 -9
  370. package/lib/utils/model.util.d.ts +8 -8
  371. package/lib/utils/notification.util.d.ts +12 -11
  372. package/lib/utils/route.util.d.ts +4 -4
  373. package/lib/utils/string.util.d.ts +4 -4
  374. package/lib/utils/tableview.util.d.ts +40 -40
  375. package/lib/utils/type.util.d.ts +57 -57
  376. package/package.json +1 -1
  377. package/public-api.d.ts +34 -34
  378. package/scss/mng-overrides/_theme_datatable.scss +6 -0
  379. package/scss/mng-overrides/_theme_forms.scss +8 -0
  380. package/version-info.json +7 -7
  381. package/mediusinc-mng-commons-0.21.1.tgz +0 -0
@@ -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