@mediusinc/mng-commons 0.10.1 → 0.10.3-rc

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 (319) hide show
  1. package/esm2020/lib/api/models/builders/query-param.builder.mjs +58 -58
  2. package/esm2020/lib/api/models/filter-match-type.model.mjs +24 -24
  3. package/esm2020/lib/api/models/filter-param.model.mjs +32 -32
  4. package/esm2020/lib/api/models/index.mjs +8 -8
  5. package/esm2020/lib/api/models/mappers.mjs +12 -12
  6. package/esm2020/lib/api/models/query-mode.model.mjs +17 -17
  7. package/esm2020/lib/api/models/query-param.model.mjs +67 -67
  8. package/esm2020/lib/api/models/query-result.model.mjs +17 -17
  9. package/esm2020/lib/api/models/serialization.model.mjs +1 -1
  10. package/esm2020/lib/api/services/api.abstract.service.mjs +55 -55
  11. package/esm2020/lib/api/services/crud-api.abstract.service.mjs +67 -67
  12. package/esm2020/lib/api/services/get-all-api.abstract.service.mjs +22 -22
  13. package/esm2020/lib/api/services/index.mjs +3 -3
  14. package/esm2020/lib/api/utils/index.mjs +2 -2
  15. package/esm2020/lib/api/utils/medius-rest.util.mjs +151 -151
  16. package/esm2020/lib/api/utils/object-serializer.util.mjs +243 -243
  17. package/esm2020/lib/components/action/action.component.mjs +199 -199
  18. package/esm2020/lib/components/action/editor/action-editor.component.mjs +247 -247
  19. package/esm2020/lib/components/action/index.mjs +3 -3
  20. package/esm2020/lib/components/action/models/action-confirmation-service.model.mjs +1 -1
  21. package/esm2020/lib/components/action/models/action-execution.model.mjs +235 -235
  22. package/esm2020/lib/components/action/models/index.mjs +2 -2
  23. package/esm2020/lib/components/action/route/action-route.component.mjs +124 -124
  24. package/esm2020/lib/components/form/autocomplete/autocomplete.component.mjs +277 -277
  25. package/esm2020/lib/components/form/dropdown/dropdown.component.mjs +168 -168
  26. package/esm2020/lib/components/form/editor/form-editor.component.mjs +211 -211
  27. package/esm2020/lib/components/form/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +48 -48
  28. package/esm2020/lib/components/form/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +43 -43
  29. package/esm2020/lib/components/form/formly/fields/formly-field-fieldset/formly-field-fieldset.component.mjs +24 -24
  30. package/esm2020/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.mjs +101 -101
  31. package/esm2020/lib/components/form/formly/fields/formly-field-label/formly-field-label.component.mjs +22 -22
  32. package/esm2020/lib/components/form/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +179 -179
  33. package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +173 -173
  34. package/esm2020/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +155 -155
  35. package/esm2020/lib/components/form/formly/fields/formly-field-tabs/formly-field-tabs.component.mjs +16 -16
  36. package/esm2020/lib/components/form/formly/fields/index.mjs +9 -9
  37. package/esm2020/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +14 -14
  38. package/esm2020/lib/components/form/formly/wrappers/formly-table-wrapper/formly-table-wrapper.component.mjs +14 -14
  39. package/esm2020/lib/components/form/formly/wrappers/index.mjs +2 -2
  40. package/esm2020/lib/components/form/index.mjs +3 -3
  41. package/esm2020/lib/components/form/models/form-editor.event.mjs +33 -33
  42. package/esm2020/lib/components/form/models/index.mjs +1 -1
  43. package/esm2020/lib/components/layout/breadcrumb.component.mjs +16 -16
  44. package/esm2020/lib/components/layout/footer.component.mjs +16 -16
  45. package/esm2020/lib/components/layout/index.mjs +7 -7
  46. package/esm2020/lib/components/layout/main-layout.component.mjs +51 -51
  47. package/esm2020/lib/components/layout/menu-item.component.mjs +238 -238
  48. package/esm2020/lib/components/layout/menu.component.mjs +20 -20
  49. package/esm2020/lib/components/layout/services/index.mjs +1 -1
  50. package/esm2020/lib/components/layout/services/main-layout.component.service.mjs +192 -192
  51. package/esm2020/lib/components/layout/topbar.component.mjs +57 -57
  52. package/esm2020/lib/components/layout/version.component.mjs +57 -57
  53. package/esm2020/lib/components/tableview/index.mjs +6 -6
  54. package/esm2020/lib/components/tableview/models/index.mjs +1 -1
  55. package/esm2020/lib/components/tableview/models/table.event.mjs +15 -15
  56. package/esm2020/lib/components/tableview/route/tableview-route.abstract.component.mjs +57 -57
  57. package/esm2020/lib/components/tableview/route/tableview-route.component.mjs +60 -60
  58. package/esm2020/lib/components/tableview/table/column-filter/column-filter.component.mjs +101 -101
  59. package/esm2020/lib/components/tableview/table/column-value/column-value.component.mjs +70 -70
  60. package/esm2020/lib/components/tableview/table/table.component.mjs +497 -497
  61. package/esm2020/lib/components/tableview/tableview.component.mjs +91 -91
  62. package/esm2020/lib/config/formly.config.mjs +180 -180
  63. package/esm2020/lib/config/index.mjs +1 -1
  64. package/esm2020/lib/config/models/index.mjs +1 -1
  65. package/esm2020/lib/config/models/mng-config.model.mjs +1 -1
  66. package/esm2020/lib/data-providers/base.data-provider.mjs +16 -16
  67. package/esm2020/lib/data-providers/editor.data-provider.mjs +36 -36
  68. package/esm2020/lib/data-providers/index.mjs +5 -5
  69. package/esm2020/lib/data-providers/lookup.data-provider.mjs +15 -15
  70. package/esm2020/lib/data-providers/table.data-provider.mjs +16 -16
  71. package/esm2020/lib/data-providers/tableview.data-provider.mjs +16 -16
  72. package/esm2020/lib/descriptors/action.descriptor.mjs +587 -587
  73. package/esm2020/lib/descriptors/column.descriptor.mjs +264 -264
  74. package/esm2020/lib/descriptors/editor.descriptor.mjs +146 -146
  75. package/esm2020/lib/descriptors/field-validation.descriptor.mjs +20 -20
  76. package/esm2020/lib/descriptors/field.descriptor.mjs +819 -819
  77. package/esm2020/lib/descriptors/filter.descriptor.mjs +288 -288
  78. package/esm2020/lib/descriptors/index.mjs +9 -9
  79. package/esm2020/lib/descriptors/interfaces/field-config.interface.mjs +1 -1
  80. package/esm2020/lib/descriptors/interfaces/index.mjs +2 -2
  81. package/esm2020/lib/descriptors/interfaces/lookup-descriptor.interface.mjs +1 -1
  82. package/esm2020/lib/descriptors/model.descriptor.mjs +33 -33
  83. package/esm2020/lib/descriptors/table.descriptor.mjs +197 -197
  84. package/esm2020/lib/descriptors/tableview.descriptor.mjs +134 -134
  85. package/esm2020/lib/descriptors/types/action.type.mjs +52 -52
  86. package/esm2020/lib/descriptors/types/column.type.mjs +10 -10
  87. package/esm2020/lib/descriptors/types/editor.type.mjs +7 -7
  88. package/esm2020/lib/descriptors/types/field.type.mjs +52 -52
  89. package/esm2020/lib/descriptors/types/filter.type.mjs +30 -30
  90. package/esm2020/lib/descriptors/types/index.mjs +6 -6
  91. package/esm2020/lib/descriptors/types/table.type.mjs +16 -16
  92. package/esm2020/lib/directives/component.directive.mjs +43 -43
  93. package/esm2020/lib/directives/index.mjs +2 -2
  94. package/esm2020/lib/directives/template.directive.mjs +27 -27
  95. package/esm2020/lib/mng-commons.module.mjs +441 -441
  96. package/esm2020/lib/models/column-value.model.mjs +1 -1
  97. package/esm2020/lib/models/enum.model.mjs +1 -1
  98. package/esm2020/lib/models/error.model.mjs +1 -1
  99. package/esm2020/lib/models/index.mjs +7 -7
  100. package/esm2020/lib/models/menu.model.mjs +1 -1
  101. package/esm2020/lib/models/user.model.mjs +1 -1
  102. package/esm2020/lib/models/version.model.mjs +1 -1
  103. package/esm2020/lib/models/view-container.model.mjs +1 -1
  104. package/esm2020/lib/pipes/boolean.pipe.mjs +26 -26
  105. package/esm2020/lib/pipes/enum.pipe.mjs +24 -24
  106. package/esm2020/lib/pipes/i18n-property.pipe.mjs +17 -17
  107. package/esm2020/lib/pipes/index.mjs +5 -5
  108. package/esm2020/lib/pipes/json-path.pipe.mjs +79 -79
  109. package/esm2020/lib/pipes/link-formatter.pipe.mjs +38 -38
  110. package/esm2020/lib/router/index.mjs +2 -2
  111. package/esm2020/lib/router/models/index.mjs +1 -1
  112. package/esm2020/lib/router/models/router.model.mjs +1 -1
  113. package/esm2020/lib/router/route-builder.mjs +425 -425
  114. package/esm2020/lib/router/tableview-route-builder.mjs +159 -159
  115. package/esm2020/lib/security/authorization.guard.mjs +25 -25
  116. package/esm2020/lib/security/authorization.service.mjs +46 -46
  117. package/esm2020/lib/security/authorization.util.mjs +15 -15
  118. package/esm2020/lib/security/index.mjs +3 -3
  119. package/esm2020/lib/security/model/authorization.type.mjs +7 -7
  120. package/esm2020/lib/security/model/index.mjs +3 -3
  121. package/esm2020/lib/security/model/permission-service.interface.mjs +1 -1
  122. package/esm2020/lib/security/model/permissions.model.mjs +94 -94
  123. package/esm2020/lib/services/action-executor.service.mjs +535 -535
  124. package/esm2020/lib/services/commons.service.mjs +342 -342
  125. package/esm2020/lib/services/configuration.service.mjs +110 -110
  126. package/esm2020/lib/services/error-mapper.service.mjs +13 -13
  127. package/esm2020/lib/services/index.mjs +6 -6
  128. package/esm2020/lib/services/internal/commons-init.provider.mjs +3 -3
  129. package/esm2020/lib/services/internal/commons-init.service.mjs +43 -43
  130. package/esm2020/lib/services/internal/index.mjs +2 -2
  131. package/esm2020/lib/services/navigation.service.mjs +47 -47
  132. package/esm2020/lib/services/providers/config-service.provider.mjs +29 -29
  133. package/esm2020/lib/services/providers/formly-config.provider.mjs +30 -30
  134. package/esm2020/lib/services/providers/index.mjs +2 -2
  135. package/esm2020/lib/services/tokens/browser-storage.token.mjs +5 -5
  136. package/esm2020/lib/services/tokens/commons-init.token.mjs +2 -2
  137. package/esm2020/lib/services/tokens/default-setting.token.mjs +2 -2
  138. package/esm2020/lib/services/tokens/index.mjs +4 -4
  139. package/esm2020/lib/services/tokens/module-config.token.mjs +2 -2
  140. package/esm2020/lib/services/version.service.mjs +38 -38
  141. package/esm2020/lib/services/view-container.component.service.mjs +34 -34
  142. package/esm2020/lib/types/index.mjs +2 -2
  143. package/esm2020/lib/types/type.decorator.mjs +12 -12
  144. package/esm2020/lib/types/type.model.mjs +1 -1
  145. package/esm2020/lib/utils/action-data-provider.util.mjs +144 -144
  146. package/esm2020/lib/utils/editor-formly.util.mjs +242 -242
  147. package/esm2020/lib/utils/enum.util.mjs +81 -81
  148. package/esm2020/lib/utils/i18n.util.mjs +232 -232
  149. package/esm2020/lib/utils/index.mjs +7 -7
  150. package/esm2020/lib/utils/model.util.mjs +59 -59
  151. package/esm2020/lib/utils/notification.util.mjs +45 -45
  152. package/esm2020/lib/utils/route.util.mjs +23 -23
  153. package/esm2020/lib/utils/styles.util.mjs +40 -40
  154. package/esm2020/lib/utils/type.util.mjs +76 -76
  155. package/esm2020/mediusinc-mng-commons.mjs +4 -4
  156. package/esm2020/public-api.mjs +51 -51
  157. package/fesm2015/mediusinc-mng-commons.mjs +10637 -10637
  158. package/fesm2015/mediusinc-mng-commons.mjs.map +1 -1
  159. package/fesm2020/mediusinc-mng-commons.mjs +10486 -10486
  160. package/fesm2020/mediusinc-mng-commons.mjs.map +1 -1
  161. package/lib/api/models/builders/query-param.builder.d.ts +13 -13
  162. package/lib/api/models/filter-match-type.model.d.ts +23 -23
  163. package/lib/api/models/filter-param.model.d.ts +23 -23
  164. package/lib/api/models/index.d.ts +8 -8
  165. package/lib/api/models/mappers.d.ts +6 -6
  166. package/lib/api/models/query-mode.model.d.ts +16 -16
  167. package/lib/api/models/query-param.model.d.ts +31 -31
  168. package/lib/api/models/query-result.model.d.ts +23 -23
  169. package/lib/api/models/serialization.model.d.ts +8 -8
  170. package/lib/api/services/api.abstract.service.d.ts +24 -24
  171. package/lib/api/services/crud-api.abstract.service.d.ts +22 -22
  172. package/lib/api/services/get-all-api.abstract.service.d.ts +14 -14
  173. package/lib/api/services/index.d.ts +3 -3
  174. package/lib/api/utils/index.d.ts +2 -2
  175. package/lib/api/utils/medius-rest.util.d.ts +15 -15
  176. package/lib/api/utils/object-serializer.util.d.ts +33 -33
  177. package/lib/components/action/action.component.d.ts +75 -75
  178. package/lib/components/action/editor/action-editor.component.d.ts +64 -64
  179. package/lib/components/action/index.d.ts +3 -3
  180. package/lib/components/action/models/action-confirmation-service.model.d.ts +6 -6
  181. package/lib/components/action/models/action-execution.model.d.ts +129 -129
  182. package/lib/components/action/models/index.d.ts +2 -2
  183. package/lib/components/action/route/action-route.component.d.ts +31 -31
  184. package/lib/components/form/autocomplete/autocomplete.component.d.ts +56 -56
  185. package/lib/components/form/dropdown/dropdown.component.d.ts +47 -47
  186. package/lib/components/form/editor/form-editor.component.d.ts +45 -45
  187. package/lib/components/form/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.d.ts +15 -15
  188. package/lib/components/form/formly/fields/formly-field-dropdown/formly-field-dropdown.component.d.ts +14 -14
  189. package/lib/components/form/formly/fields/formly-field-fieldset/formly-field-fieldset.component.d.ts +13 -13
  190. package/lib/components/form/formly/fields/formly-field-input/formly-field-input.component.d.ts +23 -23
  191. package/lib/components/form/formly/fields/formly-field-label/formly-field-label.component.d.ts +10 -10
  192. package/lib/components/form/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.d.ts +45 -45
  193. package/lib/components/form/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.d.ts +23 -23
  194. package/lib/components/form/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.d.ts +38 -38
  195. package/lib/components/form/formly/fields/formly-field-tabs/formly-field-tabs.component.d.ts +6 -6
  196. package/lib/components/form/formly/fields/index.d.ts +9 -9
  197. package/lib/components/form/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.d.ts +6 -6
  198. package/lib/components/form/formly/wrappers/formly-table-wrapper/formly-table-wrapper.component.d.ts +6 -6
  199. package/lib/components/form/formly/wrappers/index.d.ts +2 -2
  200. package/lib/components/form/index.d.ts +3 -3
  201. package/lib/components/form/models/form-editor.event.d.ts +37 -37
  202. package/lib/components/form/models/index.d.ts +1 -1
  203. package/lib/components/layout/breadcrumb.component.d.ts +8 -8
  204. package/lib/components/layout/footer.component.d.ts +9 -9
  205. package/lib/components/layout/index.d.ts +7 -7
  206. package/lib/components/layout/main-layout.component.d.ts +20 -20
  207. package/lib/components/layout/menu-item.component.d.ts +44 -44
  208. package/lib/components/layout/menu.component.d.ts +10 -10
  209. package/lib/components/layout/services/index.d.ts +1 -1
  210. package/lib/components/layout/services/main-layout.component.service.d.ts +65 -65
  211. package/lib/components/layout/topbar.component.d.ts +24 -24
  212. package/lib/components/layout/version.component.d.ts +19 -19
  213. package/lib/components/tableview/index.d.ts +6 -6
  214. package/lib/components/tableview/models/index.d.ts +1 -1
  215. package/lib/components/tableview/models/table.event.d.ts +17 -17
  216. package/lib/components/tableview/route/tableview-route.abstract.component.d.ts +20 -20
  217. package/lib/components/tableview/route/tableview-route.component.d.ts +23 -23
  218. package/lib/components/tableview/table/column-filter/column-filter.component.d.ts +32 -32
  219. package/lib/components/tableview/table/column-value/column-value.component.d.ts +29 -29
  220. package/lib/components/tableview/table/table.component.d.ts +108 -108
  221. package/lib/components/tableview/tableview.component.d.ts +41 -41
  222. package/lib/config/formly.config.d.ts +15 -15
  223. package/lib/config/index.d.ts +1 -1
  224. package/lib/config/models/index.d.ts +1 -1
  225. package/lib/config/models/mng-config.model.d.ts +36 -36
  226. package/lib/data-providers/base.data-provider.d.ts +14 -14
  227. package/lib/data-providers/editor.data-provider.d.ts +25 -25
  228. package/lib/data-providers/index.d.ts +5 -5
  229. package/lib/data-providers/lookup.data-provider.d.ts +14 -14
  230. package/lib/data-providers/table.data-provider.d.ts +14 -14
  231. package/lib/data-providers/tableview.data-provider.d.ts +15 -15
  232. package/lib/descriptors/action.descriptor.d.ts +234 -234
  233. package/lib/descriptors/column.descriptor.d.ts +82 -82
  234. package/lib/descriptors/editor.descriptor.d.ts +37 -37
  235. package/lib/descriptors/field-validation.descriptor.d.ts +18 -18
  236. package/lib/descriptors/field.descriptor.d.ts +294 -294
  237. package/lib/descriptors/filter.descriptor.d.ts +106 -106
  238. package/lib/descriptors/index.d.ts +9 -9
  239. package/lib/descriptors/interfaces/field-config.interface.d.ts +9 -9
  240. package/lib/descriptors/interfaces/index.d.ts +2 -2
  241. package/lib/descriptors/interfaces/lookup-descriptor.interface.d.ts +17 -17
  242. package/lib/descriptors/model.descriptor.d.ts +15 -15
  243. package/lib/descriptors/table.descriptor.d.ts +66 -66
  244. package/lib/descriptors/tableview.descriptor.d.ts +42 -42
  245. package/lib/descriptors/types/action.type.d.ts +45 -45
  246. package/lib/descriptors/types/column.type.d.ts +9 -9
  247. package/lib/descriptors/types/editor.type.d.ts +6 -6
  248. package/lib/descriptors/types/field.type.d.ts +44 -44
  249. package/lib/descriptors/types/filter.type.d.ts +27 -27
  250. package/lib/descriptors/types/index.d.ts +6 -6
  251. package/lib/descriptors/types/table.type.d.ts +13 -13
  252. package/lib/directives/component.directive.d.ts +16 -16
  253. package/lib/directives/index.d.ts +2 -2
  254. package/lib/directives/template.directive.d.ts +13 -13
  255. package/lib/mng-commons.module.d.ts +87 -87
  256. package/lib/models/column-value.model.d.ts +4 -4
  257. package/lib/models/enum.model.d.ts +6 -6
  258. package/lib/models/error.model.d.ts +14 -14
  259. package/lib/models/index.d.ts +7 -7
  260. package/lib/models/menu.model.d.ts +27 -27
  261. package/lib/models/user.model.d.ts +8 -8
  262. package/lib/models/version.model.d.ts +18 -18
  263. package/lib/models/view-container.model.d.ts +6 -6
  264. package/lib/pipes/boolean.pipe.d.ts +7 -7
  265. package/lib/pipes/enum.pipe.d.ts +8 -8
  266. package/lib/pipes/i18n-property.pipe.d.ts +8 -8
  267. package/lib/pipes/index.d.ts +5 -5
  268. package/lib/pipes/json-path.pipe.d.ts +13 -13
  269. package/lib/pipes/link-formatter.pipe.d.ts +11 -11
  270. package/lib/router/index.d.ts +2 -2
  271. package/lib/router/models/index.d.ts +1 -1
  272. package/lib/router/models/router.model.d.ts +27 -27
  273. package/lib/router/route-builder.d.ts +98 -98
  274. package/lib/router/tableview-route-builder.d.ts +34 -34
  275. package/lib/security/authorization.guard.d.ts +11 -11
  276. package/lib/security/authorization.service.d.ts +19 -19
  277. package/lib/security/authorization.util.d.ts +5 -5
  278. package/lib/security/index.d.ts +3 -3
  279. package/lib/security/model/authorization.type.d.ts +6 -6
  280. package/lib/security/model/index.d.ts +3 -3
  281. package/lib/security/model/permission-service.interface.d.ts +6 -6
  282. package/lib/security/model/permissions.model.d.ts +44 -44
  283. package/lib/services/action-executor.service.d.ts +149 -149
  284. package/lib/services/commons.service.d.ts +78 -78
  285. package/lib/services/configuration.service.d.ts +36 -36
  286. package/lib/services/error-mapper.service.d.ts +7 -7
  287. package/lib/services/index.d.ts +6 -6
  288. package/lib/services/internal/commons-init.provider.d.ts +3 -3
  289. package/lib/services/internal/commons-init.service.d.ts +16 -16
  290. package/lib/services/internal/index.d.ts +2 -2
  291. package/lib/services/navigation.service.d.ts +14 -14
  292. package/lib/services/providers/config-service.provider.d.ts +6 -6
  293. package/lib/services/providers/formly-config.provider.d.ts +4 -4
  294. package/lib/services/providers/index.d.ts +2 -2
  295. package/lib/services/tokens/browser-storage.token.d.ts +2 -2
  296. package/lib/services/tokens/commons-init.token.d.ts +3 -3
  297. package/lib/services/tokens/default-setting.token.d.ts +2 -2
  298. package/lib/services/tokens/index.d.ts +4 -4
  299. package/lib/services/tokens/module-config.token.d.ts +3 -3
  300. package/lib/services/version.service.d.ts +13 -13
  301. package/lib/services/view-container.component.service.d.ts +22 -22
  302. package/lib/types/index.d.ts +2 -2
  303. package/lib/types/type.decorator.d.ts +4 -4
  304. package/lib/types/type.model.d.ts +23 -23
  305. package/lib/utils/action-data-provider.util.d.ts +20 -20
  306. package/lib/utils/editor-formly.util.d.ts +11 -11
  307. package/lib/utils/enum.util.d.ts +50 -50
  308. package/lib/utils/i18n.util.d.ts +56 -56
  309. package/lib/utils/index.d.ts +7 -7
  310. package/lib/utils/model.util.d.ts +8 -8
  311. package/lib/utils/notification.util.d.ts +11 -11
  312. package/lib/utils/route.util.d.ts +4 -4
  313. package/lib/utils/styles.util.d.ts +14 -14
  314. package/lib/utils/type.util.d.ts +36 -36
  315. package/mediusinc-mng-commons-0.10.3-rc.tgz +0 -0
  316. package/mediusinc-mng-commons.d.ts +5 -5
  317. package/package.json +1 -1
  318. package/public-api.d.ts +32 -32
  319. package/version-info.json +6 -6
@@ -1,289 +1,289 @@
1
- import { of } from 'rxjs';
2
- import { LookupDataProvider } from '../data-providers';
3
- import { EnumUtil, ModelUtil, TypeUtil } from '../utils';
4
- import { FilterLookupTypeEnum, FilterMatchModeEnum, FilterTypeEnum } from './types';
5
- export class FilterDescriptor {
6
- constructor(property) {
7
- this._filterType = FilterTypeEnum.String;
8
- this._hasDefaultValue = false;
9
- this._defaultFilterMatchMode = FilterMatchModeEnum.Equals;
10
- this._matchModes = null;
11
- this._numberUseGrouping = true;
12
- this._datePickerShowTime = false;
13
- this._className = '';
14
- this._columnClassName = '';
15
- this._columnWidth = null;
16
- this._columnMinWidth = null;
17
- this._property = property;
18
- }
19
- get filterType() {
20
- return this._filterType;
21
- }
22
- get hasDefaultValue() {
23
- return this._hasDefaultValue;
24
- }
25
- get defaultValue() {
26
- return this._defaultValue;
27
- }
28
- get defaultValueTo() {
29
- return this._defaultValueTo;
30
- }
31
- get defaultFilterMatchMode() {
32
- return this._defaultFilterMatchMode;
33
- }
34
- get filterProperty() {
35
- return this._filterProperty;
36
- }
37
- get matchModes() {
38
- return this._matchModes;
39
- }
40
- get numberMinFractionDigits() {
41
- return this._numberMinFractionDigits;
42
- }
43
- get numberMaxFractionDigits() {
44
- return this._numberMaxFractionDigits;
45
- }
46
- get numberUseGrouping() {
47
- return this._numberUseGrouping;
48
- }
49
- get datePickerFormat() {
50
- return this._datePickerFormat;
51
- }
52
- get datePickerShowTime() {
53
- return this._datePickerShowTime;
54
- }
55
- get placeholder() {
56
- return this._placeholder;
57
- }
58
- get className() {
59
- return this._className;
60
- }
61
- get columnClassName() {
62
- return this._columnClassName;
63
- }
64
- get columnWidth() {
65
- return this._columnWidth;
66
- }
67
- get columnMinWidth() {
68
- return this._columnMinWidth;
69
- }
70
- get property() {
71
- return this._property;
72
- }
73
- asFilterType(filterType) {
74
- this._filterType = filterType;
75
- return this;
76
- }
77
- /**
78
- * Sets different filter property name instead of default property. Use this if API requires different property provided to perform correct filter.
79
- * @param filterProperty
80
- */
81
- withFilterProperty(filterProperty) {
82
- this._filterProperty = filterProperty;
83
- return this;
84
- }
85
- withDefaultFilter(filterValue, filterValueTo, filterMatchMode = FilterMatchModeEnum.Equals) {
86
- this._hasDefaultValue = true;
87
- this._defaultValue = filterValue;
88
- this._defaultValueTo = filterValueTo;
89
- if (filterMatchMode) {
90
- this._defaultFilterMatchMode = filterMatchMode;
91
- }
92
- return this;
93
- }
94
- withNumberFractions(min, max) {
95
- this._numberMinFractionDigits = min;
96
- this._numberMaxFractionDigits = max;
97
- return this;
98
- }
99
- withNumberGrouping(useGrouping = true) {
100
- this._numberUseGrouping = useGrouping;
101
- return this;
102
- }
103
- withDateFormat(format, showTime = false) {
104
- this._datePickerFormat = format;
105
- this._datePickerShowTime = showTime;
106
- return this;
107
- }
108
- withPlaceholder(placeholder) {
109
- this._placeholder = placeholder;
110
- return this;
111
- }
112
- withClassName(className) {
113
- this._className = className;
114
- return this;
115
- }
116
- withColumnClassName(className) {
117
- this._columnClassName = className;
118
- return this;
119
- }
120
- withColumnWidth(width, minWidth) {
121
- this._columnWidth = width ?? null;
122
- this._columnMinWidth = minWidth ?? null;
123
- return this;
124
- }
125
- withMatchModes(matchModes) {
126
- this._matchModes = matchModes;
127
- return this;
128
- }
129
- copy() {
130
- const descriptor = new FilterDescriptor(this._property);
131
- this.copyFieldsTo(descriptor);
132
- return descriptor;
133
- }
134
- copyFieldsTo(descriptor) {
135
- descriptor._filterType = this._filterType;
136
- descriptor._filterProperty = this._filterProperty;
137
- descriptor._hasDefaultValue = this._hasDefaultValue;
138
- descriptor._defaultValue = this._defaultValue;
139
- descriptor._defaultValueTo = this._defaultValueTo;
140
- descriptor._defaultFilterMatchMode = this._defaultFilterMatchMode;
141
- descriptor._numberMinFractionDigits = this._numberMinFractionDigits;
142
- descriptor._numberMaxFractionDigits = this._numberMaxFractionDigits;
143
- descriptor._numberUseGrouping = this._numberUseGrouping;
144
- descriptor._datePickerFormat = this._datePickerFormat;
145
- descriptor._datePickerShowTime = this._datePickerShowTime;
146
- descriptor._placeholder = this._placeholder;
147
- descriptor._className = this._className;
148
- descriptor._columnWidth = this._columnWidth;
149
- descriptor._columnMinWidth = this._columnMinWidth;
150
- descriptor._columnClassName = this._columnClassName;
151
- }
152
- }
153
- export class FilterLookupDescriptor extends FilterDescriptor {
154
- constructor(property, modelType) {
155
- super(property);
156
- this._modelType = null;
157
- this._lookupType = FilterLookupTypeEnum.Dropdown;
158
- this._itemsLabelTranslate = false;
159
- this._multiselect = false;
160
- this._dropdownClassName = 'mng-filter-lookup-dropdown';
161
- this._autocompleteOpenOnFocus = false;
162
- this._autocompleteInlineSearch = false;
163
- this._modelType = modelType;
164
- this._filterType = FilterTypeEnum.Lookup;
165
- ModelUtil.trySetLookupItemsProperties(this);
166
- }
167
- get lookupType() {
168
- return this._lookupType;
169
- }
170
- get dataProvider() {
171
- return this._dataProvider;
172
- }
173
- get itemsLabelProperty() {
174
- return this._itemsLabelProperty;
175
- }
176
- get itemsLabelTranslate() {
177
- return this._itemsLabelTranslate;
178
- }
179
- get itemsValueProperty() {
180
- return this._itemsValueProperty;
181
- }
182
- get dataKeyProperty() {
183
- return this._dataKeyProperty;
184
- }
185
- get multiselect() {
186
- return this._multiselect;
187
- }
188
- get autocompleteOpenOnFocus() {
189
- return this._autocompleteOpenOnFocus;
190
- }
191
- get autocompleteInlineSearch() {
192
- return this._autocompleteInlineSearch;
193
- }
194
- get dropdownClassName() {
195
- return this._dropdownClassName;
196
- }
197
- get modelType() {
198
- return this._modelType;
199
- }
200
- withItemsLabelProperty(itemsLabelProperty, translate = false) {
201
- this._itemsLabelProperty = itemsLabelProperty;
202
- this._itemsLabelTranslate = translate;
203
- return this;
204
- }
205
- withItemsValueProperty(itemsValueProperty) {
206
- this._itemsValueProperty = itemsValueProperty;
207
- this._dataKeyProperty = itemsValueProperty;
208
- return this;
209
- }
210
- withDataKeyProperty(dataKeyProperty) {
211
- this._dataKeyProperty = dataKeyProperty;
212
- this._itemsValueProperty = dataKeyProperty;
213
- return this;
214
- }
215
- withLookup(lookup, serviceType) {
216
- const dataProvider = new LookupDataProvider(this._modelType);
217
- if (serviceType) {
218
- dataProvider.withServiceType(serviceType);
219
- }
220
- dataProvider.withLookup(lookup);
221
- this._dataProvider = dataProvider;
222
- return this;
223
- }
224
- withLookupDataProvider(dataProvider) {
225
- this._dataProvider = dataProvider;
226
- return this;
227
- }
228
- withMultiselect(multiselect = true) {
229
- this._multiselect = multiselect;
230
- return this;
231
- }
232
- withDropdownClassName(dropdownClassName) {
233
- this._dropdownClassName = dropdownClassName;
234
- return this;
235
- }
236
- asAutocomplete(openOnFocus = false, inlineSearch = false) {
237
- this._lookupType = FilterLookupTypeEnum.Autocomplete;
238
- this._autocompleteOpenOnFocus = openOnFocus;
239
- this._autocompleteInlineSearch = inlineSearch;
240
- return this;
241
- }
242
- copy() {
243
- const descriptor = new FilterLookupDescriptor(this._property, this._modelType);
244
- this.copyFieldsTo(descriptor);
245
- return descriptor;
246
- }
247
- copyFieldsTo(filter) {
248
- super.copyFieldsTo(filter);
249
- filter._dataProvider = this._dataProvider;
250
- filter._lookupType = this._lookupType;
251
- filter._itemsLabelProperty = this._itemsLabelProperty;
252
- filter._itemsLabelTranslate = this._itemsLabelTranslate;
253
- filter._itemsValueProperty = this._itemsValueProperty;
254
- filter._dataKeyProperty = this._dataKeyProperty;
255
- filter._multiselect = this._multiselect;
256
- filter._dropdownClassName = this._dropdownClassName;
257
- filter._autocompleteOpenOnFocus = this._autocompleteOpenOnFocus;
258
- filter._autocompleteInlineSearch = this._autocompleteInlineSearch;
259
- }
260
- }
261
- export class FilterLookupEnumDescriptor extends FilterLookupDescriptor {
262
- constructor(property, enumType, options, nameAsValue = false, optionsTitlePath) {
263
- super(property, null);
264
- this._enumType = enumType;
265
- if (typeof optionsTitlePath === 'undefined') {
266
- optionsTitlePath = TypeUtil.findEnumName(enumType);
267
- }
268
- const optionEnumValues = Array.isArray(options)
269
- ? EnumUtil.fromValuesAsEnumValueArray(enumType, options, nameAsValue, optionsTitlePath ?? undefined)
270
- : EnumUtil.fromConstantsAsEnumValueArray(enumType, nameAsValue, optionsTitlePath ?? undefined);
271
- const dataProvider = new LookupDataProvider(null).withLookup(() => of(optionEnumValues));
272
- this.withLookupDataProvider(dataProvider);
273
- this.withItemsLabelProperty('title', optionsTitlePath !== null);
274
- this.withItemsValueProperty('value');
275
- }
276
- get enumType() {
277
- return this._enumType;
278
- }
279
- asAutocomplete(openOnFocus = true) {
280
- super.asAutocomplete(openOnFocus, true);
281
- return this;
282
- }
283
- copy() {
284
- const field = new FilterLookupEnumDescriptor(this._property, this._enumType, []);
285
- this.copyFieldsTo(field);
286
- return field;
287
- }
288
- }
1
+ import { of } from 'rxjs';
2
+ import { LookupDataProvider } from '../data-providers';
3
+ import { EnumUtil, ModelUtil, TypeUtil } from '../utils';
4
+ import { FilterLookupTypeEnum, FilterMatchModeEnum, FilterTypeEnum } from './types';
5
+ export class FilterDescriptor {
6
+ constructor(property) {
7
+ this._filterType = FilterTypeEnum.String;
8
+ this._hasDefaultValue = false;
9
+ this._defaultFilterMatchMode = FilterMatchModeEnum.Equals;
10
+ this._matchModes = null;
11
+ this._numberUseGrouping = true;
12
+ this._datePickerShowTime = false;
13
+ this._className = '';
14
+ this._columnClassName = '';
15
+ this._columnWidth = null;
16
+ this._columnMinWidth = null;
17
+ this._property = property;
18
+ }
19
+ get filterType() {
20
+ return this._filterType;
21
+ }
22
+ get hasDefaultValue() {
23
+ return this._hasDefaultValue;
24
+ }
25
+ get defaultValue() {
26
+ return this._defaultValue;
27
+ }
28
+ get defaultValueTo() {
29
+ return this._defaultValueTo;
30
+ }
31
+ get defaultFilterMatchMode() {
32
+ return this._defaultFilterMatchMode;
33
+ }
34
+ get filterProperty() {
35
+ return this._filterProperty;
36
+ }
37
+ get matchModes() {
38
+ return this._matchModes;
39
+ }
40
+ get numberMinFractionDigits() {
41
+ return this._numberMinFractionDigits;
42
+ }
43
+ get numberMaxFractionDigits() {
44
+ return this._numberMaxFractionDigits;
45
+ }
46
+ get numberUseGrouping() {
47
+ return this._numberUseGrouping;
48
+ }
49
+ get datePickerFormat() {
50
+ return this._datePickerFormat;
51
+ }
52
+ get datePickerShowTime() {
53
+ return this._datePickerShowTime;
54
+ }
55
+ get placeholder() {
56
+ return this._placeholder;
57
+ }
58
+ get className() {
59
+ return this._className;
60
+ }
61
+ get columnClassName() {
62
+ return this._columnClassName;
63
+ }
64
+ get columnWidth() {
65
+ return this._columnWidth;
66
+ }
67
+ get columnMinWidth() {
68
+ return this._columnMinWidth;
69
+ }
70
+ get property() {
71
+ return this._property;
72
+ }
73
+ asFilterType(filterType) {
74
+ this._filterType = filterType;
75
+ return this;
76
+ }
77
+ /**
78
+ * Sets different filter property name instead of default property. Use this if API requires different property provided to perform correct filter.
79
+ * @param filterProperty
80
+ */
81
+ withFilterProperty(filterProperty) {
82
+ this._filterProperty = filterProperty;
83
+ return this;
84
+ }
85
+ withDefaultFilter(filterValue, filterValueTo, filterMatchMode = FilterMatchModeEnum.Equals) {
86
+ this._hasDefaultValue = true;
87
+ this._defaultValue = filterValue;
88
+ this._defaultValueTo = filterValueTo;
89
+ if (filterMatchMode) {
90
+ this._defaultFilterMatchMode = filterMatchMode;
91
+ }
92
+ return this;
93
+ }
94
+ withNumberFractions(min, max) {
95
+ this._numberMinFractionDigits = min;
96
+ this._numberMaxFractionDigits = max;
97
+ return this;
98
+ }
99
+ withNumberGrouping(useGrouping = true) {
100
+ this._numberUseGrouping = useGrouping;
101
+ return this;
102
+ }
103
+ withDateFormat(format, showTime = false) {
104
+ this._datePickerFormat = format;
105
+ this._datePickerShowTime = showTime;
106
+ return this;
107
+ }
108
+ withPlaceholder(placeholder) {
109
+ this._placeholder = placeholder;
110
+ return this;
111
+ }
112
+ withClassName(className) {
113
+ this._className = className;
114
+ return this;
115
+ }
116
+ withColumnClassName(className) {
117
+ this._columnClassName = className;
118
+ return this;
119
+ }
120
+ withColumnWidth(width, minWidth) {
121
+ this._columnWidth = width ?? null;
122
+ this._columnMinWidth = minWidth ?? null;
123
+ return this;
124
+ }
125
+ withMatchModes(matchModes) {
126
+ this._matchModes = matchModes;
127
+ return this;
128
+ }
129
+ copy() {
130
+ const descriptor = new FilterDescriptor(this._property);
131
+ this.copyFieldsTo(descriptor);
132
+ return descriptor;
133
+ }
134
+ copyFieldsTo(descriptor) {
135
+ descriptor._filterType = this._filterType;
136
+ descriptor._filterProperty = this._filterProperty;
137
+ descriptor._hasDefaultValue = this._hasDefaultValue;
138
+ descriptor._defaultValue = this._defaultValue;
139
+ descriptor._defaultValueTo = this._defaultValueTo;
140
+ descriptor._defaultFilterMatchMode = this._defaultFilterMatchMode;
141
+ descriptor._numberMinFractionDigits = this._numberMinFractionDigits;
142
+ descriptor._numberMaxFractionDigits = this._numberMaxFractionDigits;
143
+ descriptor._numberUseGrouping = this._numberUseGrouping;
144
+ descriptor._datePickerFormat = this._datePickerFormat;
145
+ descriptor._datePickerShowTime = this._datePickerShowTime;
146
+ descriptor._placeholder = this._placeholder;
147
+ descriptor._className = this._className;
148
+ descriptor._columnWidth = this._columnWidth;
149
+ descriptor._columnMinWidth = this._columnMinWidth;
150
+ descriptor._columnClassName = this._columnClassName;
151
+ }
152
+ }
153
+ export class FilterLookupDescriptor extends FilterDescriptor {
154
+ constructor(property, modelType) {
155
+ super(property);
156
+ this._modelType = null;
157
+ this._lookupType = FilterLookupTypeEnum.Dropdown;
158
+ this._itemsLabelTranslate = false;
159
+ this._multiselect = false;
160
+ this._dropdownClassName = 'mng-filter-lookup-dropdown';
161
+ this._autocompleteOpenOnFocus = false;
162
+ this._autocompleteInlineSearch = false;
163
+ this._modelType = modelType;
164
+ this._filterType = FilterTypeEnum.Lookup;
165
+ ModelUtil.trySetLookupItemsProperties(this);
166
+ }
167
+ get lookupType() {
168
+ return this._lookupType;
169
+ }
170
+ get dataProvider() {
171
+ return this._dataProvider;
172
+ }
173
+ get itemsLabelProperty() {
174
+ return this._itemsLabelProperty;
175
+ }
176
+ get itemsLabelTranslate() {
177
+ return this._itemsLabelTranslate;
178
+ }
179
+ get itemsValueProperty() {
180
+ return this._itemsValueProperty;
181
+ }
182
+ get dataKeyProperty() {
183
+ return this._dataKeyProperty;
184
+ }
185
+ get multiselect() {
186
+ return this._multiselect;
187
+ }
188
+ get autocompleteOpenOnFocus() {
189
+ return this._autocompleteOpenOnFocus;
190
+ }
191
+ get autocompleteInlineSearch() {
192
+ return this._autocompleteInlineSearch;
193
+ }
194
+ get dropdownClassName() {
195
+ return this._dropdownClassName;
196
+ }
197
+ get modelType() {
198
+ return this._modelType;
199
+ }
200
+ withItemsLabelProperty(itemsLabelProperty, translate = false) {
201
+ this._itemsLabelProperty = itemsLabelProperty;
202
+ this._itemsLabelTranslate = translate;
203
+ return this;
204
+ }
205
+ withItemsValueProperty(itemsValueProperty) {
206
+ this._itemsValueProperty = itemsValueProperty;
207
+ this._dataKeyProperty = itemsValueProperty;
208
+ return this;
209
+ }
210
+ withDataKeyProperty(dataKeyProperty) {
211
+ this._dataKeyProperty = dataKeyProperty;
212
+ this._itemsValueProperty = dataKeyProperty;
213
+ return this;
214
+ }
215
+ withLookup(lookup, serviceType) {
216
+ const dataProvider = new LookupDataProvider(this._modelType);
217
+ if (serviceType) {
218
+ dataProvider.withServiceType(serviceType);
219
+ }
220
+ dataProvider.withLookup(lookup);
221
+ this._dataProvider = dataProvider;
222
+ return this;
223
+ }
224
+ withLookupDataProvider(dataProvider) {
225
+ this._dataProvider = dataProvider;
226
+ return this;
227
+ }
228
+ withMultiselect(multiselect = true) {
229
+ this._multiselect = multiselect;
230
+ return this;
231
+ }
232
+ withDropdownClassName(dropdownClassName) {
233
+ this._dropdownClassName = dropdownClassName;
234
+ return this;
235
+ }
236
+ asAutocomplete(openOnFocus = false, inlineSearch = false) {
237
+ this._lookupType = FilterLookupTypeEnum.Autocomplete;
238
+ this._autocompleteOpenOnFocus = openOnFocus;
239
+ this._autocompleteInlineSearch = inlineSearch;
240
+ return this;
241
+ }
242
+ copy() {
243
+ const descriptor = new FilterLookupDescriptor(this._property, this._modelType);
244
+ this.copyFieldsTo(descriptor);
245
+ return descriptor;
246
+ }
247
+ copyFieldsTo(filter) {
248
+ super.copyFieldsTo(filter);
249
+ filter._dataProvider = this._dataProvider;
250
+ filter._lookupType = this._lookupType;
251
+ filter._itemsLabelProperty = this._itemsLabelProperty;
252
+ filter._itemsLabelTranslate = this._itemsLabelTranslate;
253
+ filter._itemsValueProperty = this._itemsValueProperty;
254
+ filter._dataKeyProperty = this._dataKeyProperty;
255
+ filter._multiselect = this._multiselect;
256
+ filter._dropdownClassName = this._dropdownClassName;
257
+ filter._autocompleteOpenOnFocus = this._autocompleteOpenOnFocus;
258
+ filter._autocompleteInlineSearch = this._autocompleteInlineSearch;
259
+ }
260
+ }
261
+ export class FilterLookupEnumDescriptor extends FilterLookupDescriptor {
262
+ constructor(property, enumType, options, nameAsValue = false, optionsTitlePath) {
263
+ super(property, null);
264
+ this._enumType = enumType;
265
+ if (typeof optionsTitlePath === 'undefined') {
266
+ optionsTitlePath = TypeUtil.findEnumName(enumType);
267
+ }
268
+ const optionEnumValues = Array.isArray(options)
269
+ ? EnumUtil.fromValuesAsEnumValueArray(enumType, options, nameAsValue, optionsTitlePath ?? undefined)
270
+ : EnumUtil.fromConstantsAsEnumValueArray(enumType, nameAsValue, optionsTitlePath ?? undefined);
271
+ const dataProvider = new LookupDataProvider(null).withLookup(() => of(optionEnumValues));
272
+ this.withLookupDataProvider(dataProvider);
273
+ this.withItemsLabelProperty('title', optionsTitlePath !== null);
274
+ this.withItemsValueProperty('value');
275
+ }
276
+ get enumType() {
277
+ return this._enumType;
278
+ }
279
+ asAutocomplete(openOnFocus = true) {
280
+ super.asAutocomplete(openOnFocus, true);
281
+ return this;
282
+ }
283
+ copy() {
284
+ const field = new FilterLookupEnumDescriptor(this._property, this._enumType, []);
285
+ this.copyFieldsTo(field);
286
+ return field;
287
+ }
288
+ }
289
289
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmRlc2NyaXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2Rlc2NyaXB0b3JzL2ZpbHRlci5kZXNjcmlwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBYSxFQUFFLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFHcEMsT0FBTyxFQUFzQixrQkFBa0IsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBRzFFLE9BQU8sRUFBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUV2RCxPQUFPLEVBQUMsb0JBQW9CLEVBQUUsbUJBQW1CLEVBQUUsY0FBYyxFQUFDLE1BQU0sU0FBUyxDQUFDO0FBRWxGLE1BQU0sT0FBTyxnQkFBZ0I7SUEwQnpCLFlBQVksUUFBZ0I7UUF4QmxCLGdCQUFXLEdBQUcsY0FBYyxDQUFDLE1BQU0sQ0FBQztRQUV0QyxxQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDdkIsNEJBQXVCLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxDQUFDO1FBSXJELGdCQUFXLEdBQW9CLElBQUksQ0FBQztRQUtwQyx1QkFBa0IsR0FBRyxJQUFJLENBQUM7UUFJMUIsd0JBQW1CLEdBQUcsS0FBSyxDQUFDO1FBRzVCLGVBQVUsR0FBRyxFQUFFLENBQUM7UUFDaEIscUJBQWdCLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLGlCQUFZLEdBQWtCLElBQUksQ0FBQztRQUNuQyxvQkFBZSxHQUFrQixJQUFJLENBQUM7UUFHNUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7SUFDOUIsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQVcsZUFBZTtRQUN0QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFBVyxZQUFZO1FBQ25CLE9BQU8sSUFBSSxDQUFD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LEdBQUcsSUFBSSwwQkFBMEIsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakYsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN6QixPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge09ic2VydmFibGUsIG9mfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtNZWRpdXNRdWVyeVBhcmFtfSBmcm9tICcuLi9hcGkvbW9kZWxzJztcbmltcG9ydCB7SUxvb2t1cERhdGFQcm92aWRlciwgTG9va3VwRGF0YVByb3ZpZGVyfSBmcm9tICcuLi9kYXRhLXByb3ZpZGVycyc7XG5pbXBvcnQge0VudW1WYWx1ZX0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCB7Q2xhc3NUeXBlLCBFbnVtQ29uc3RhbnRUeXBlLCBFbnVtVHlwZX0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHtFbnVtVXRpbCwgTW9kZWxVdGlsLCBUeXBlVXRpbH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHtJTG9va3VwRGVzY3JpcHRvcn0gZnJvbSAnLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7RmlsdGVyTG9va3VwVHlwZUVudW0sIEZpbHRlck1hdGNoTW9kZUVudW0sIEZpbHRlclR5cGVFbnVtfSBmcm9tICcuL3R5cGVzJztcblxuZXhwb3J0IGNsYXNzIEZpbHRlckRlc2NyaXB0b3I8VD4ge1xuICAgIHByb3RlY3RlZCByZWFkb25seSBfcHJvcGVydHk6IHN0cmluZztcbiAgICBwcm90ZWN0ZWQgX2ZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlRW51bS5TdHJpbmc7XG4gICAgcHJvdGVjdGVkIF9maWx0ZXJQcm9wZXJ0eT86IHN0cmluZztcbiAgICBwcml2YXRlIF9oYXNEZWZhdWx0VmFsdWUgPSBmYWxzZTtcbiAgICBwcm90ZWN0ZWQgX2RlZmF1bHRGaWx0ZXJNYXRjaE1vZGUgPSBGaWx0ZXJNYXRjaE1vZGVFbnVtLkVxdWFscztcbiAgICBwcm90ZWN0ZWQgX2RlZmF1bHRWYWx1ZT86IHN0cmluZztcbiAgICBwcml2YXRlIF9kZWZhdWx0VmFsdWVUbz86IHN0cmluZztcblxuICAgIHByb3RlY3RlZCBfbWF0Y2hNb2Rlczogc3RyaW5nW10gfCBudWxsID0gbnVsbDtcblxuICAgIC8vIG51bWJlciBmaWx0ZXIgc3BlY2lmaWMgcHJvcGVydGllc1xuICAgIHByb3RlY3RlZCBfbnVtYmVyTWluRnJhY3Rpb25EaWdpdHM/OiBudW1iZXI7XG4gICAgcHJvdGVjdGVkIF9udW1iZXJNYXhGcmFjdGlvbkRpZ2l0cz86IG51bWJlcjtcbiAgICBwcm90ZWN0ZWQgX251bWJlclVzZUdyb3VwaW5nID0gdHJ1ZTtcblxuICAgIC8vIGRhdGUgZmlsdGVyIHNwZWNpZmljIHByb3BlcnRpZXNcbiAgICBwcm90ZWN0ZWQgX2RhdGVQaWNrZXJGb3JtYXQ/OiBzdHJpbmc7XG4gICAgcHJvdGVjdGVkIF9kYXRlUGlja2VyU2hvd1RpbWUgPSBmYWxzZTtcblxuICAgIHByb3RlY3RlZCBfcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gICAgcHJvdGVjdGVkIF9jbGFzc05hbWUgPSAnJztcbiAgICBwcm90ZWN0ZWQgX2NvbHVtbkNsYXNzTmFtZSA9ICcnO1xuICAgIHByb3RlY3RlZCBfY29sdW1uV2lkdGg6IG51bWJlciB8IG51bGwgPSBudWxsO1xuICAgIHByb3RlY3RlZCBfY29sdW1uTWluV2lkdGg6IG51bWJlciB8IG51bGwgPSBudWxsO1xuXG4gICAgY29uc3RydWN0b3IocHJvcGVydHk6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9wcm9wZXJ0eSA9IHByb3BlcnR5O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZmlsdGVyVHlwZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbHRlclR5cGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBoYXNEZWZhdWx0VmFsdWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9oYXNEZWZhdWx0VmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkZWZhdWx0VmFsdWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kZWZhdWx0VmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkZWZhdWx0VmFsdWVUbygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RlZmF1bHRWYWx1ZVRvO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGVmYXVsdEZpbHRlck1hdGNoTW9kZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RlZmF1bHRGaWx0ZXJNYXRjaE1vZGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBmaWx0ZXJQcm9wZXJ0eSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbHRlclByb3BlcnR5O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbWF0Y2hNb2RlcygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX21hdGNoTW9kZXM7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBudW1iZXJNaW5GcmFjdGlvbkRpZ2l0cygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX251bWJlck1pbkZyYWN0aW9uRGlnaXRzO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbnVtYmVyTWF4RnJhY3Rpb25EaWdpdHMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9udW1iZXJNYXhGcmFjdGlvbkRpZ2l0cztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IG51bWJlclVzZUdyb3VwaW5nKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbnVtYmVyVXNlR3JvdXBpbmc7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkYXRlUGlja2VyRm9ybWF0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0ZVBpY2tlckZvcm1hdDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGRhdGVQaWNrZXJTaG93VGltZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGVQaWNrZXJTaG93VGltZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHBsYWNlaG9sZGVyKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGxhY2Vob2xkZXI7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjbGFzc05hbWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jbGFzc05hbWU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjb2x1bW5DbGFzc05hbWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb2x1bW5DbGFzc05hbWU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjb2x1bW5XaWR0aCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbHVtbldpZHRoO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY29sdW1uTWluV2lkdGgoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb2x1bW5NaW5XaWR0aDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHByb3BlcnR5KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fcHJvcGVydHk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzRmlsdGVyVHlwZShmaWx0ZXJUeXBlOiBGaWx0ZXJUeXBlRW51bSkge1xuICAgICAgICB0aGlzLl9maWx0ZXJUeXBlID0gZmlsdGVyVHlwZTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0cyBkaWZmZXJlbnQgZmlsdGVyIHByb3BlcnR5IG5hbWUgaW5zdGVhZCBvZiBkZWZhdWx0IHByb3BlcnR5LiBVc2UgdGhpcyBpZiBBUEkgcmVxdWlyZXMgZGlmZmVyZW50IHByb3BlcnR5IHByb3ZpZGVkIHRvIHBlcmZvcm0gY29ycmVjdCBmaWx0ZXIuXG4gICAgICogQHBhcmFtIGZpbHRlclByb3BlcnR5XG4gICAgICovXG4gICAgcHVibGljIHdpdGhGaWx0ZXJQcm9wZXJ0eShmaWx0ZXJQcm9wZXJ0eTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2ZpbHRlclByb3BlcnR5ID0gZmlsdGVyUHJvcGVydHk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoRGVmYXVsdEZpbHRlcihmaWx0ZXJWYWx1ZTogc3RyaW5nLCBmaWx0ZXJWYWx1ZVRvPzogc3RyaW5nLCBmaWx0ZXJNYXRjaE1vZGUgPSBGaWx0ZXJNYXRjaE1vZGVFbnVtLkVxdWFscyk6IHRoaXMge1xuICAgICAgICB0aGlzLl9oYXNEZWZhdWx0VmFsdWUgPSB0cnVlO1xuICAgICAgICB0aGlzLl9kZWZhdWx0VmFsdWUgPSBmaWx0ZXJWYWx1ZTtcbiAgICAgICAgdGhpcy5fZGVmYXVsdFZhbHVlVG8gPSBmaWx0ZXJWYWx1ZVRvO1xuICAgICAgICBpZiAoZmlsdGVyTWF0Y2hNb2RlKSB7XG4gICAgICAgICAgICB0aGlzLl9kZWZhdWx0RmlsdGVyTWF0Y2hNb2RlID0gZmlsdGVyTWF0Y2hNb2RlO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoTnVtYmVyRnJhY3Rpb25zKG1pbj86IG51bWJlciwgbWF4PzogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuX251bWJlck1pbkZyYWN0aW9uRGlnaXRzID0gbWluO1xuICAgICAgICB0aGlzLl9udW1iZXJNYXhGcmFjdGlvbkRpZ2l0cyA9IG1heDtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhOdW1iZXJHcm91cGluZyh1c2VHcm91cGluZyA9IHRydWUpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fbnVtYmVyVXNlR3JvdXBpbmcgPSB1c2VHcm91cGluZztcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhEYXRlRm9ybWF0KGZvcm1hdD86IHN0cmluZywgc2hvd1RpbWUgPSBmYWxzZSk6IHRoaXMge1xuICAgICAgICB0aGlzLl9kYXRlUGlja2VyRm9ybWF0ID0gZm9ybWF0O1xuICAgICAgICB0aGlzLl9kYXRlUGlja2VyU2hvd1RpbWUgPSBzaG93VGltZTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhQbGFjZWhvbGRlcihwbGFjZWhvbGRlcjogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX3BsYWNlaG9sZGVyID0gcGxhY2Vob2xkZXI7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoQ2xhc3NOYW1lKGNsYXNzTmFtZTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2NsYXNzTmFtZSA9IGNsYXNzTmFtZTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhDb2x1bW5DbGFzc05hbWUoY2xhc3NOYW1lOiBzdHJpbmcpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fY29sdW1uQ2xhc3NOYW1lID0gY2xhc3NOYW1lO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aENvbHVtbldpZHRoKHdpZHRoPzogbnVtYmVyLCBtaW5XaWR0aD86IG51bWJlcik6IHRoaXMge1xuICAgICAgICB0aGlzLl9jb2x1bW5XaWR0aCA9IHdpZHRoID8/IG51bGw7XG4gICAgICAgIHRoaXMuX2NvbHVtbk1pbldpZHRoID0gbWluV2lkdGggPz8gbnVsbDtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhNYXRjaE1vZGVzKG1hdGNoTW9kZXM6IEFycmF5PEZpbHRlck1hdGNoTW9kZUVudW0+KTogdGhpcyB7XG4gICAgICAgIHRoaXMuX21hdGNoTW9kZXMgPSBtYXRjaE1vZGVzO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgY29weSgpOiBGaWx0ZXJEZXNjcmlwdG9yPFQ+IHtcbiAgICAgICAgY29uc3QgZGVzY3JpcHRvciA9IG5ldyBGaWx0ZXJEZXNjcmlwdG9yPFQ+KHRoaXMuX3Byb3BlcnR5KTtcbiAgICAgICAgdGhpcy5jb3B5RmllbGRzVG8oZGVzY3JpcHRvcik7XG4gICAgICAgIHJldHVybiBkZXNjcmlwdG9yO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBjb3B5RmllbGRzVG8oZGVzY3JpcHRvcjogRmlsdGVyRGVzY3JpcHRvcjxUPikge1xuICAgICAgICBkZXNjcmlwdG9yLl9maWx0ZXJUeXBlID0gdGhpcy5fZmlsdGVyVHlwZTtcbiAgICAgICAgZGVzY3JpcHRvci5fZmlsdGVyUHJvcGVydHkgPSB0aGlzLl9maWx0ZXJQcm9wZXJ0eTtcbiAgICAgICAgZGVzY3JpcHRvci5faGFzRGVmYXVsdFZhbHVlID0gdGhpcy5faGFzRGVmYXVsdFZhbHVlO1xuICAgICAgICBkZXNjcmlwdG9yLl9kZWZhdWx0VmFsdWUgPSB0aGlzLl9kZWZhdWx0VmFsdWU7XG4gICAgICAgIGRlc2NyaXB0b3IuX2RlZmF1bHRWYWx1ZVRvID0gdGhpcy5fZGVmYXVsdFZhbHVlVG87XG4gICAgICAgIGRlc2NyaXB0b3IuX2RlZmF1bHRGaWx0ZXJNYXRjaE1vZGUgPSB0aGlzLl9kZWZhdWx0RmlsdGVyTWF0Y2hNb2RlO1xuICAgICAgICBkZXNjcmlwdG9yLl9udW1iZXJNaW5GcmFjdGlvbkRpZ2l0cyA9IHRoaXMuX251bWJlck1pbkZyYWN0aW9uRGlnaXRzO1xuICAgICAgICBkZXNjcmlwdG9yLl9udW1iZXJNYXhGcmFjdGlvbkRpZ2l0cyA9IHRoaXMuX251bWJlck1heEZyYWN0aW9uRGlnaXRzO1xuICAgICAgICBkZXNjcmlwdG9yLl9udW1iZXJVc2VHcm91cGluZyA9IHRoaXMuX251bWJlclVzZUdyb3VwaW5nO1xuICAgICAgICBkZXNjcmlwdG9yLl9kYXRlUGlja2VyRm9ybWF0ID0gdGhpcy5fZGF0ZVBpY2tlckZvcm1hdDtcbiAgICAgICAgZGVzY3JpcHRvci5fZGF0ZVBpY2tlclNob3dUaW1lID0gdGhpcy5fZGF0ZVBpY2tlclNob3dUaW1lO1xuICAgICAgICBkZXNjcmlwdG9yLl9wbGFjZWhvbGRlciA9IHRoaXMuX3BsYWNlaG9sZGVyO1xuICAgICAgICBkZXNjcmlwdG9yLl9jbGFzc05hbWUgPSB0aGlzLl9jbGFzc05hbWU7XG4gICAgICAgIGRlc2NyaXB0b3IuX2NvbHVtbldpZHRoID0gdGhpcy5fY29sdW1uV2lkdGg7XG4gICAgICAgIGRlc2NyaXB0b3IuX2NvbHVtbk1pbldpZHRoID0gdGhpcy5fY29sdW1uTWluV2lkdGg7XG4gICAgICAgIGRlc2NyaXB0b3IuX2NvbHVtbkNsYXNzTmFtZSA9IHRoaXMuX2NvbHVtbkNsYXNzTmFtZTtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBGaWx0ZXJMb29rdXBEZXNjcmlwdG9yPFQ+IGV4dGVuZHMgRmlsdGVyRGVzY3JpcHRvcjxUPiBpbXBsZW1lbnRzIElMb29rdXBEZXNjcmlwdG9yPFQ+IHtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgX21vZGVsVHlwZTogQ2xhc3NUeXBlPFQ+IHwgbnVsbCA9IG51bGw7XG4gICAgcHJvdGVjdGVkIF9sb29rdXBUeXBlPzogRmlsdGVyTG9va3VwVHlwZUVudW0gPSBGaWx0ZXJMb29rdXBUeXBlRW51bS5Ecm9wZG93bjtcblxuICAgIHByb3RlY3RlZCBfZGF0YVByb3ZpZGVyPzogSUxvb2t1cERhdGFQcm92aWRlcjxULCBhbnk+O1xuICAgIHByb3RlY3RlZCBfaXRlbXNMYWJlbFByb3BlcnR5Pzogc3RyaW5nO1xuICAgIHByb3RlY3RlZCBfaXRlbXNMYWJlbFRyYW5zbGF0ZSA9IGZhbHNlO1xuICAgIHByb3RlY3RlZCBfaXRlbXNWYWx1ZVByb3BlcnR5Pzogc3RyaW5nO1xuICAgIHByb3RlY3RlZCBfZGF0YUtleVByb3BlcnR5Pzogc3RyaW5nO1xuICAgIHByb3RlY3RlZCBfbXVsdGlzZWxlY3QgPSBmYWxzZTtcblxuICAgIHByb3RlY3RlZCBfZHJvcGRvd25DbGFzc05hbWUgPSAnbW5nLWZpbHRlci1sb29rdXAtZHJvcGRvd24nO1xuXG4gICAgcHJvdGVjdGVkIF9hdXRvY29tcGxldGVPcGVuT25Gb2N1cyA9IGZhbHNlO1xuICAgIHByb3RlY3RlZCBfYXV0b2NvbXBsZXRlSW5saW5lU2VhcmNoID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm9wZXJ0eTogc3RyaW5nLCBtb2RlbFR5cGU6IENsYXNzVHlwZTxUPiB8IG51bGwpIHtcbiAgICAgICAgc3VwZXIocHJvcGVydHkpO1xuICAgICAgICB0aGlzLl9tb2RlbFR5cGUgPSBtb2RlbFR5cGU7XG4gICAgICAgIHRoaXMuX2ZpbHRlclR5cGUgPSBGaWx0ZXJUeXBlRW51bS5Mb29rdXA7XG4gICAgICAgIE1vZGVsVXRpbC50cnlTZXRMb29rdXBJdGVtc1Byb3BlcnRpZXModGhpcyk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBsb29rdXBUeXBlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbG9va3VwVHlwZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGRhdGFQcm92aWRlcigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGFQcm92aWRlcjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGl0ZW1zTGFiZWxQcm9wZXJ0eSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2l0ZW1zTGFiZWxQcm9wZXJ0eTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGl0ZW1zTGFiZWxUcmFuc2xhdGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pdGVtc0xhYmVsVHJhbnNsYXRlO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaXRlbXNWYWx1ZVByb3BlcnR5KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5faXRlbXNWYWx1ZVByb3BlcnR5O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGF0YUtleVByb3BlcnR5KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0YUtleVByb3BlcnR5O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbXVsdGlzZWxlY3QoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9tdWx0aXNlbGVjdDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGF1dG9jb21wbGV0ZU9wZW5PbkZvY3VzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fYXV0b2NvbXBsZXRlT3Blbk9uRm9jdXM7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBhdXRvY29tcGxldGVJbmxpbmVTZWFyY2goKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hdXRvY29tcGxldGVJbmxpbmVTZWFyY2g7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkcm9wZG93bkNsYXNzTmFtZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Ryb3Bkb3duQ2xhc3NOYW1lO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbW9kZWxUeXBlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbW9kZWxUeXBlO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoSXRlbXNMYWJlbFByb3BlcnR5KGl0ZW1zTGFiZWxQcm9wZXJ0eTogc3RyaW5nLCB0cmFuc2xhdGUgPSBmYWxzZSk6IHRoaXMge1xuICAgICAgICB0aGlzLl9pdGVtc0xhYmVsUHJvcGVydHkgPSBpdGVtc0xhYmVsUHJvcGVydHk7XG4gICAgICAgIHRoaXMuX2l0ZW1zTGFiZWxUcmFuc2xhdGUgPSB0cmFuc2xhdGU7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoSXRlbXNWYWx1ZVByb3BlcnR5KGl0ZW1zVmFsdWVQcm9wZXJ0eTogc3RyaW5nKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2l0ZW1zVmFsdWVQcm9wZXJ0eSA9IGl0ZW1zVmFsdWVQcm9wZXJ0eTtcbiAgICAgICAgdGhpcy5fZGF0YUtleVByb3BlcnR5ID0gaXRlbXNWYWx1ZVByb3BlcnR5O1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aERhdGFLZXlQcm9wZXJ0eShkYXRhS2V5UHJvcGVydHk6IHN0cmluZyk6IHRoaXMge1xuICAgICAgICB0aGlzLl9kYXRhS2V5UHJvcGVydHkgPSBkYXRhS2V5UHJvcGVydHk7XG4gICAgICAgIHRoaXMuX2l0ZW1zVmFsdWVQcm9wZXJ0eSA9IGRhdGFLZXlQcm9wZXJ0eTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhMb29rdXA8Uz4obG9va3VwOiAocXVlcnlQYXJhbT86IE1lZGl1c1F1ZXJ5UGFyYW0sIHNlcnZpY2U/OiBTLCBzZWFyY2g/OiBzdHJpbmcpID0+IE9ic2VydmFibGU8QXJyYXk8VD4+LCBzZXJ2aWNlVHlwZT86IFR5cGU8Uz4pOiB0aGlzIHtcbiAgICAgICAgY29uc3QgZGF0YVByb3ZpZGVyID0gbmV3IExvb2t1cERhdGFQcm92aWRlcjxULCBTPih0aGlzLl9tb2RlbFR5cGUpO1xuICAgICAgICBpZiAoc2VydmljZVR5cGUpIHtcbiAgICAgICAgICAgIGRhdGFQcm92aWRlci53aXRoU2VydmljZVR5cGUoc2VydmljZVR5cGUpO1xuICAgICAgICB9XG4gICAgICAgIGRhdGFQcm92aWRlci53aXRoTG9va3VwKGxvb2t1cCk7XG4gICAgICAgIHRoaXMuX2RhdGFQcm92aWRlciA9IGRhdGFQcm92aWRlcjtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhMb29rdXBEYXRhUHJvdmlkZXIoZGF0YVByb3ZpZGVyOiBJTG9va3VwRGF0YVByb3ZpZGVyPFQsIGFueT4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fZGF0YVByb3ZpZGVyID0gZGF0YVByb3ZpZGVyO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aE11bHRpc2VsZWN0KG11bHRpc2VsZWN0ID0gdHJ1ZSkge1xuICAgICAgICB0aGlzLl9tdWx0aXNlbGVjdCA9IG11bHRpc2VsZWN0O1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aERyb3Bkb3duQ2xhc3NOYW1lKGRyb3Bkb3duQ2xhc3NOYW1lOiBzdHJpbmcpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fZHJvcGRvd25DbGFzc05hbWUgPSBkcm9wZG93bkNsYXNzTmFtZTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIGFzQXV0b2NvbXBsZXRlKG9wZW5PbkZvY3VzID0gZmFsc2UsIGlubGluZVNlYXJjaCA9IGZhbHNlKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2xvb2t1cFR5cGUgPSBGaWx0ZXJMb29rdXBUeXBlRW51bS5BdXRvY29tcGxldGU7XG4gICAgICAgIHRoaXMuX2F1dG9jb21wbGV0ZU9wZW5PbkZvY3VzID0gb3Blbk9uRm9jdXM7XG4gICAgICAgIHRoaXMuX2F1dG9jb21wbGV0ZUlubGluZVNlYXJjaCA9IGlubGluZVNlYXJjaDtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIGNvcHkoKTogRmlsdGVyTG9va3VwRGVzY3JpcHRvcjxUPiB7XG4gICAgICAgIGNvbnN0IGRlc2NyaXB0b3IgPSBuZXcgRmlsdGVyTG9va3VwRGVzY3JpcHRvcjxUPih0aGlzLl9wcm9wZXJ0eSwgdGhpcy5fbW9kZWxUeXBlKTtcbiAgICAgICAgdGhpcy5jb3B5RmllbGRzVG8oZGVzY3JpcHRvcik7XG4gICAgICAgIHJldHVybiBkZXNjcmlwdG9yO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvdmVycmlkZSBjb3B5RmllbGRzVG8oZmlsdGVyOiBGaWx0ZXJMb29rdXBEZXNjcmlwdG9yPFQ+KSB7XG4gICAgICAgIHN1cGVyLmNvcHlGaWVsZHNUbyhmaWx0ZXIpO1xuICAgICAgICBmaWx0ZXIuX2RhdGFQcm92aWRlciA9IHRoaXMuX2RhdGFQcm92aWRlcjtcbiAgICAgICAgZmlsdGVyLl9sb29rdXBUeXBlID0gdGhpcy5fbG9va3VwVHlwZTtcbiAgICAgICAgZmlsdGVyLl9pdGVtc0xhYmVsUHJvcGVydHkgPSB0aGlzLl9pdGVtc0xhYmVsUHJvcGVydHk7XG4gICAgICAgIGZpbHRlci5faXRlbXNMYWJlbFRyYW5zbGF0ZSA9IHRoaXMuX2l0ZW1zTGFiZWxUcmFuc2xhdGU7XG4gICAgICAgIGZpbHRlci5faXRlbXNWYWx1ZVByb3BlcnR5ID0gdGhpcy5faXRlbXNWYWx1ZVByb3BlcnR5O1xuICAgICAgICBmaWx0ZXIuX2RhdGFLZXlQcm9wZXJ0eSA9IHRoaXMuX2RhdGFLZXlQcm9wZXJ0eTtcbiAgICAgICAgZmlsdGVyLl9tdWx0aXNlbGVjdCA9IHRoaXMuX211bHRpc2VsZWN0O1xuICAgICAgICBmaWx0ZXIuX2Ryb3Bkb3duQ2xhc3NOYW1lID0gdGhpcy5fZHJvcGRvd25DbGFzc05hbWU7XG4gICAgICAgIGZpbHRlci5fYXV0b2NvbXBsZXRlT3Blbk9uRm9jdXMgPSB0aGlzLl9hdXRvY29tcGxldGVPcGVuT25Gb2N1cztcbiAgICAgICAgZmlsdGVyLl9hdXRvY29tcGxldGVJbmxpbmVTZWFyY2ggPSB0aGlzLl9hdXRvY29tcGxldGVJbmxpbmVTZWFyY2g7XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgRmlsdGVyTG9va3VwRW51bURlc2NyaXB0b3IgZXh0ZW5kcyBGaWx0ZXJMb29rdXBEZXNjcmlwdG9yPEVudW1WYWx1ZTxzdHJpbmcgfCBudW1iZXI+PiB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBfZW51bVR5cGU6IEVudW1UeXBlO1xuXG4gICAgY29uc3RydWN0b3IocHJvcGVydHk6IHN0cmluZywgZW51bVR5cGU6IEVudW1UeXBlLCBvcHRpb25zPzogQXJyYXk8RW51bUNvbnN0YW50VHlwZT4sIG5hbWVBc1ZhbHVlID0gZmFsc2UsIG9wdGlvbnNUaXRsZVBhdGg/OiBzdHJpbmcgfCBudWxsKSB7XG4gICAgICAgIHN1cGVyKHByb3BlcnR5LCBudWxsKTtcbiAgICAgICAgdGhpcy5fZW51bVR5cGUgPSBlbnVtVHlwZTtcbiAgICAgICAgaWYgKHR5cGVvZiBvcHRpb25zVGl0bGVQYXRoID09PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgb3B0aW9uc1RpdGxlUGF0aCA9IFR5cGVVdGlsLmZpbmRFbnVtTmFtZShlbnVtVHlwZSk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3Qgb3B0aW9uRW51bVZhbHVlcyA9IEFycmF5LmlzQXJyYXkob3B0aW9ucylcbiAgICAgICAgICAgID8gRW51bVV0aWwuZnJvbVZhbHVlc0FzRW51bVZhbHVlQXJyYXkoZW51bVR5cGUsIG9wdGlvbnMsIG5hbWVBc1ZhbHVlLCBvcHRpb25zVGl0bGVQYXRoID8/IHVuZGVmaW5lZClcbiAgICAgICAgICAgIDogRW51bVV0aWwuZnJvbUNvbnN0YW50c0FzRW51bVZhbHVlQXJyYXkoZW51bVR5cGUsIG5hbWVBc1ZhbHVlLCBvcHRpb25zVGl0bGVQYXRoID8/IHVuZGVmaW5lZCk7XG4gICAgICAgIGNvbnN0IGRhdGFQcm92aWRlciA9IG5ldyBMb29rdXBEYXRhUHJvdmlkZXI8RW51bVZhbHVlPHN0cmluZyB8IG51bWJlcj4sIGFueT4obnVsbCkud2l0aExvb2t1cCgoKSA9PiBvZihvcHRpb25FbnVtVmFsdWVzKSk7XG4gICAgICAgIHRoaXMud2l0aExvb2t1cERhdGFQcm92aWRlcihkYXRhUHJvdmlkZXIpO1xuICAgICAgICB0aGlzLndpdGhJdGVtc0xhYmVsUHJvcGVydHkoJ3RpdGxlJywgb3B0aW9uc1RpdGxlUGF0aCAhPT0gbnVsbCk7XG4gICAgICAgIHRoaXMud2l0aEl0ZW1zVmFsdWVQcm9wZXJ0eSgndmFsdWUnKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGVudW1UeXBlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZW51bVR5cGU7XG4gICAgfVxuXG4gICAgcHVibGljIG92ZXJyaWRlIGFzQXV0b2NvbXBsZXRlKG9wZW5PbkZvY3VzID0gdHJ1ZSk6IHRoaXMge1xuICAgICAgICBzdXBlci5hc0F1dG9jb21wbGV0ZShvcGVuT25Gb2N1cywgdHJ1ZSk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBvdmVycmlkZSBjb3B5KCk6IEZpbHRlckxvb2t1cEVudW1EZXNjcmlwdG9yIHtcbiAgICAgICAgY29uc3QgZmllbGQgPSBuZXcgRmlsdGVyTG9va3VwRW51bURlc2NyaXB0b3IodGhpcy5fcHJvcGVydHksIHRoaXMuX2VudW1UeXBlLCBbXSk7XG4gICAgICAgIHRoaXMuY29weUZpZWxkc1RvKGZpZWxkKTtcbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,10 +1,10 @@
1
- export * from './action.descriptor';
2
- export * from './column.descriptor';
3
- export * from './editor.descriptor';
4
- export * from './field.descriptor';
5
- export * from './field-validation.descriptor';
6
- export * from './filter.descriptor';
7
- export * from './model.descriptor';
8
- export * from './table.descriptor';
9
- export * from './tableview.descriptor';
1
+ export * from './action.descriptor';
2
+ export * from './column.descriptor';
3
+ export * from './editor.descriptor';
4
+ export * from './field.descriptor';
5
+ export * from './field-validation.descriptor';
6
+ export * from './filter.descriptor';
7
+ export * from './model.descriptor';
8
+ export * from './table.descriptor';
9
+ export * from './tableview.descriptor';
10
10
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2Rlc2NyaXB0b3JzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY3Rpb24uZGVzY3JpcHRvcic7XG5leHBvcnQgKiBmcm9tICcuL2NvbHVtbi5kZXNjcmlwdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vZWRpdG9yLmRlc2NyaXB0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9maWVsZC5kZXNjcmlwdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vZmllbGQtdmFsaWRhdGlvbi5kZXNjcmlwdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vZmlsdGVyLmRlc2NyaXB0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9tb2RlbC5kZXNjcmlwdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vdGFibGUuZGVzY3JpcHRvcic7XG5leHBvcnQgKiBmcm9tICcuL3RhYmxldmlldy5kZXNjcmlwdG9yJztcbiJdfQ==