@mediusinc/mng-commons 5.0.0-rc.1 → 5.0.0-rc.3

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 (245) hide show
  1. package/core/data-providers/base-data-provider.factory.d.ts +13 -0
  2. package/core/data-providers/base.data-provider.d.ts +2 -14
  3. package/core/descriptors/editor.descriptor.d.ts +1 -1
  4. package/core/descriptors/tableview.descriptor.d.ts +5 -5
  5. package/core/directives/component.directive.d.ts +2 -2
  6. package/core/index.d.ts +1 -0
  7. package/core/router/route-builder.d.ts +149 -26
  8. package/core/router/routes-builder.d.ts +28 -13
  9. package/core/security/permission.service.d.ts +1 -0
  10. package/core/services/commons-router.service.d.ts +3 -3
  11. package/core/services/commons.service.d.ts +31 -42
  12. package/core/services/tokens/module-config.token.d.ts +2 -2
  13. package/esm2022/core/components/notification/notification-wrapper.component.mjs +5 -5
  14. package/esm2022/core/components/pages/error/error.page.component.mjs +5 -5
  15. package/esm2022/core/components/pages/not-found/not-found.page.component.mjs +5 -5
  16. package/esm2022/core/data-providers/base-data-provider.factory.mjs +28 -0
  17. package/esm2022/core/data-providers/base.data-provider.mjs +1 -31
  18. package/esm2022/core/descriptors/editor.descriptor.mjs +1 -1
  19. package/esm2022/core/descriptors/tableview.descriptor.mjs +1 -1
  20. package/esm2022/core/directives/component.directive.mjs +12 -9
  21. package/esm2022/core/directives/dialog-keydown-handler.directive.mjs +3 -3
  22. package/esm2022/core/directives/template.directive.mjs +3 -3
  23. package/esm2022/core/index.mjs +2 -1
  24. package/esm2022/core/pipes/boolean.pipe.mjs +3 -3
  25. package/esm2022/core/pipes/class-map.pipe.mjs +3 -3
  26. package/esm2022/core/pipes/enum.pipe.mjs +3 -3
  27. package/esm2022/core/pipes/enumerate-async.pipe.mjs +3 -3
  28. package/esm2022/core/pipes/enumerate.pipe.mjs +3 -3
  29. package/esm2022/core/pipes/getter.pipe.mjs +3 -3
  30. package/esm2022/core/pipes/i18n-property.pipe.mjs +3 -3
  31. package/esm2022/core/pipes/json-path.pipe.mjs +3 -3
  32. package/esm2022/core/pipes/parametrize.pipe.mjs +3 -3
  33. package/esm2022/core/pipes/template.pipe.mjs +3 -3
  34. package/esm2022/core/router/route-builder.mjs +211 -84
  35. package/esm2022/core/router/routes-builder.mjs +41 -43
  36. package/esm2022/core/security/permission.service.mjs +7 -5
  37. package/esm2022/core/services/commons-init.service.mjs +5 -5
  38. package/esm2022/core/services/commons-router.service.mjs +18 -17
  39. package/esm2022/core/services/commons.service.mjs +112 -169
  40. package/esm2022/core/services/local-storage-config.service.mjs +3 -3
  41. package/esm2022/core/services/tokens/module-config.token.mjs +1 -1
  42. package/esm2022/filter/descriptors/filter-lookup.descriptor.mjs +4 -4
  43. package/esm2022/form/api/data-providers/lookup-data-provider.factory.mjs +31 -0
  44. package/esm2022/form/api/data-providers/lookup.data-provider.mjs +1 -31
  45. package/esm2022/form/api/index.mjs +2 -1
  46. package/esm2022/form/components/autocomplete/autocomplete.component.mjs +105 -102
  47. package/esm2022/form/components/date-range/date-range.component.mjs +3 -3
  48. package/esm2022/form/components/dropdown/dropdown.component.mjs +148 -90
  49. package/esm2022/form/directives/input-trim.directive.mjs +3 -3
  50. package/esm2022/model/data-providers/base-from-type-data-provider.factory.mjs +8 -0
  51. package/esm2022/model/descriptors/enum.descriptor.mjs +3 -6
  52. package/esm2022/model/descriptors/model.descriptor.mjs +22 -9
  53. package/esm2022/model/descriptors/type.descriptor.mjs +3 -9
  54. package/esm2022/model/index.mjs +3 -1
  55. package/esm2022/table/api/data-providers/table-data-provider.factory.mjs +33 -0
  56. package/esm2022/table/api/data-providers/table.data-provider.mjs +1 -31
  57. package/esm2022/table/api/descriptors/sort.descriptor.mjs +2 -2
  58. package/esm2022/table/api/descriptors/table-descriptor.factory.mjs +89 -0
  59. package/esm2022/table/api/descriptors/table.descriptor.mjs +4 -139
  60. package/esm2022/table/api/helpers/table-descriptor-helpers.mjs +97 -0
  61. package/esm2022/table/api/index.mjs +4 -1
  62. package/esm2022/table/components/column-filter-full/column-filter-full.component.mjs +8 -9
  63. package/esm2022/table/components/column-value/column-value.component.mjs +4 -4
  64. package/esm2022/table/components/table/table.component.mjs +7 -7
  65. package/esm2022/table/pipes/locale-default-row-class.pipe.mjs +5 -5
  66. package/esm2022/table/pipes/table-column-filter-class.pipe.mjs +3 -3
  67. package/esm2022/table/services/data-list.service.mjs +4 -4
  68. package/esm2022/tableview/action/components/action/action.component.mjs +142 -190
  69. package/esm2022/tableview/action/components/editor/action-editor.component.mjs +58 -68
  70. package/esm2022/tableview/action/components/editor/injector-context/action-editor-injector-context.component.mjs +133 -154
  71. package/esm2022/tableview/action/components/localization/data-language-dropdown.component.mjs +22 -40
  72. package/esm2022/tableview/action/components/route/action-route.component.mjs +21 -26
  73. package/esm2022/tableview/action/components/table/action-table.component.mjs +4 -4
  74. package/esm2022/tableview/action/models/execution/action-instance.model.mjs +1 -1
  75. package/esm2022/tableview/action/services/action-executor.service.mjs +10 -10
  76. package/esm2022/tableview/action/services/component-action-executor.service.mjs +3 -3
  77. package/esm2022/tableview/action/services/data-provider-executor.service.mjs +3 -3
  78. package/esm2022/tableview/action/services/navigation.service.mjs +6 -5
  79. package/esm2022/tableview/action/services/root-action-executor.service.mjs +3 -3
  80. package/esm2022/tableview/action/services/view-container.service.mjs +8 -24
  81. package/esm2022/tableview/api/action/descriptors/action-descriptor.factory.mjs +119 -0
  82. package/esm2022/tableview/api/action/descriptors/action-editor-descriptor.factory.mjs +77 -0
  83. package/esm2022/tableview/api/action/descriptors/action-editor.descriptor.mjs +28 -80
  84. package/esm2022/tableview/api/action/descriptors/action-link-descriptor.factory.mjs +45 -0
  85. package/esm2022/tableview/api/action/descriptors/action-link.descriptor.mjs +1 -32
  86. package/esm2022/tableview/api/action/descriptors/action.descriptor.mjs +3 -69
  87. package/esm2022/tableview/api/action/models/action-component.model.mjs +1 -1
  88. package/esm2022/tableview/api/action/models/execution/action-instance.model.mjs +1 -1
  89. package/esm2022/tableview/api/action/models/execution/view-container.model.mjs +1 -1
  90. package/esm2022/tableview/api/editor/data-providers/editor-data-provider.factory.mjs +33 -0
  91. package/esm2022/tableview/api/editor/data-providers/editor.data-provider.mjs +1 -31
  92. package/esm2022/tableview/api/editor/descriptors/editor-descriptor.factory.mjs +81 -0
  93. package/esm2022/tableview/api/editor/descriptors/editor.descriptor.mjs +24 -161
  94. package/esm2022/tableview/api/editor/descriptors/field-action.descriptor.mjs +1 -1
  95. package/esm2022/tableview/api/editor/descriptors/field-base.descriptor.mjs +13 -5
  96. package/esm2022/tableview/api/editor/descriptors/field-group.descriptor.mjs +3 -3
  97. package/esm2022/tableview/api/editor/descriptors/field-lookup.descriptor.mjs +4 -4
  98. package/esm2022/tableview/api/editor/descriptors/field-many.descriptor.mjs +3 -3
  99. package/esm2022/tableview/api/editor/descriptors/field-validation.descriptor.mjs +1 -1
  100. package/esm2022/tableview/api/editor/descriptors/field.descriptor.mjs +36 -7
  101. package/esm2022/tableview/api/editor/helpers/editor-descriptor-helpers.mjs +95 -0
  102. package/esm2022/tableview/api/editor/helpers/field-validators.mjs +17 -27
  103. package/esm2022/tableview/api/editor/models/editor-fields.model.mjs +1 -1
  104. package/esm2022/tableview/api/editor/models/field-action-context.model.mjs +1 -1
  105. package/esm2022/tableview/api/editor/models/field-validation.model.mjs +2 -0
  106. package/esm2022/tableview/api/editor/models/field.model.mjs +1 -1
  107. package/esm2022/tableview/api/editor/models/form-editor.event.mjs +1 -1
  108. package/esm2022/tableview/api/editor/models/form-editor.interface.mjs +1 -1
  109. package/esm2022/tableview/api/editor/models/formly-custom-field.model.mjs +3 -3
  110. package/esm2022/tableview/api/editor/models/formly-field.model.mjs +1 -1
  111. package/esm2022/tableview/api/index.mjs +11 -1
  112. package/esm2022/tableview/api/tableview/data-providers/tableview-data-provider.factory.mjs +47 -0
  113. package/esm2022/tableview/api/tableview/data-providers/tableview.data-provider.mjs +5 -46
  114. package/esm2022/tableview/api/tableview/descriptors/tableview-descriptor.factory.mjs +111 -0
  115. package/esm2022/tableview/api/tableview/descriptors/tableview.descriptor.mjs +26 -186
  116. package/esm2022/tableview/api/tableview/helpers/files-export.mjs +2 -2
  117. package/esm2022/tableview/api/tableview/helpers/tableview-create.mjs +5 -5
  118. package/esm2022/tableview/api/tableview/helpers/tableview-default-actions.mjs +53 -18
  119. package/esm2022/tableview/api/tableview/helpers/tableview-descriptor-helpers.mjs +110 -0
  120. package/esm2022/tableview/api/tableview/helpers/tableview-input-builder.mjs +2 -2
  121. package/esm2022/tableview/editor/components/editor/form-editor.component.mjs +163 -138
  122. package/esm2022/tableview/editor/components/formly/fields/formly-field-action/formly-field-action.component.mjs +9 -5
  123. package/esm2022/tableview/editor/components/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.mjs +13 -16
  124. package/esm2022/tableview/editor/components/formly/fields/formly-field-custom/formly-field-custom.component.mjs +3 -3
  125. package/esm2022/tableview/editor/components/formly/fields/formly-field-datepicker/formly-field-datepicker.component.mjs +103 -0
  126. package/esm2022/tableview/editor/components/formly/fields/formly-field-dropdown/formly-field-dropdown.component.mjs +12 -16
  127. package/esm2022/tableview/editor/components/formly/fields/formly-field-fieldset/formly-field-fieldset.component.mjs +3 -3
  128. package/esm2022/tableview/editor/components/formly/fields/formly-field-input/formly-field-input.component.mjs +36 -53
  129. package/esm2022/tableview/editor/components/formly/fields/formly-field-label/formly-field-label.component.mjs +3 -3
  130. package/esm2022/tableview/editor/components/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.mjs +20 -24
  131. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +24 -28
  132. package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.mjs +30 -31
  133. package/esm2022/tableview/editor/components/formly/fields/formly-field-tabs/formly-field-tabs.component.mjs +3 -3
  134. package/esm2022/tableview/editor/components/formly/wrappers/formly-field-no-label-wrapper/formly-field-no-label-wrapper.component.mjs +3 -3
  135. package/esm2022/tableview/editor/components/formly/wrappers/formly-field-wrapper/formly-field-wrapper.component.mjs +3 -3
  136. package/esm2022/tableview/editor/helpers/editor-formly.mjs +85 -56
  137. package/esm2022/tableview/editor/helpers/formly-config.mjs +5 -3
  138. package/esm2022/tableview/editor/models/formly-config.model.mjs +1 -1
  139. package/esm2022/tableview/editor/services/form-editor.service.mjs +96 -0
  140. package/esm2022/tableview/index.mjs +2 -1
  141. package/esm2022/tableview/tableview/components/route/tableview-route.component.mjs +10 -10
  142. package/esm2022/tableview/tableview/components/tableview/tableview.component.mjs +26 -43
  143. package/esm2022/tableview/tableview/router/tableview-route-builder.mjs +17 -43
  144. package/fesm2022/mediusinc-mng-commons-core.mjs +460 -390
  145. package/fesm2022/mediusinc-mng-commons-core.mjs.map +1 -1
  146. package/fesm2022/mediusinc-mng-commons-filter.mjs +3 -3
  147. package/fesm2022/mediusinc-mng-commons-filter.mjs.map +1 -1
  148. package/fesm2022/mediusinc-mng-commons-form-api.mjs +18 -18
  149. package/fesm2022/mediusinc-mng-commons-form-api.mjs.map +1 -1
  150. package/fesm2022/mediusinc-mng-commons-form.mjs +257 -195
  151. package/fesm2022/mediusinc-mng-commons-form.mjs.map +1 -1
  152. package/fesm2022/mediusinc-mng-commons-model.mjs +43 -33
  153. package/fesm2022/mediusinc-mng-commons-model.mjs.map +1 -1
  154. package/fesm2022/mediusinc-mng-commons-table-api.mjs +192 -146
  155. package/fesm2022/mediusinc-mng-commons-table-api.mjs.map +1 -1
  156. package/fesm2022/mediusinc-mng-commons-table.mjs +26 -27
  157. package/fesm2022/mediusinc-mng-commons-table.mjs.map +1 -1
  158. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs +906 -665
  159. package/fesm2022/mediusinc-mng-commons-tableview-api.mjs.map +1 -1
  160. package/fesm2022/mediusinc-mng-commons-tableview.mjs +1015 -960
  161. package/fesm2022/mediusinc-mng-commons-tableview.mjs.map +1 -1
  162. package/form/api/data-providers/lookup-data-provider.factory.d.ts +18 -0
  163. package/form/api/data-providers/lookup.data-provider.d.ts +2 -14
  164. package/form/api/index.d.ts +1 -0
  165. package/form/components/autocomplete/autocomplete.component.d.ts +33 -24
  166. package/form/components/dropdown/dropdown.component.d.ts +38 -25
  167. package/model/data-providers/base-from-type-data-provider.factory.d.ts +8 -0
  168. package/model/descriptors/enum.descriptor.d.ts +1 -2
  169. package/model/descriptors/model.descriptor.d.ts +11 -4
  170. package/model/descriptors/type.descriptor.d.ts +2 -4
  171. package/model/index.d.ts +1 -0
  172. package/package.json +1 -1
  173. package/table/api/data-providers/table-data-provider.factory.d.ts +18 -0
  174. package/table/api/data-providers/table.data-provider.d.ts +2 -14
  175. package/table/api/descriptors/table-descriptor.factory.d.ts +44 -0
  176. package/table/api/descriptors/table.descriptor.d.ts +4 -65
  177. package/table/api/helpers/table-descriptor-helpers.d.ts +44 -0
  178. package/table/api/index.d.ts +3 -0
  179. package/table/components/column-filter-full/column-filter-full.component.d.ts +5 -4
  180. package/table/components/table/table.component.d.ts +11 -11
  181. package/table/services/data-list.service.d.ts +9 -10
  182. package/tableview/action/components/action/action.component.d.ts +37 -44
  183. package/tableview/action/components/editor/action-editor.component.d.ts +20 -18
  184. package/tableview/action/components/editor/injector-context/action-editor-injector-context.component.d.ts +24 -26
  185. package/tableview/action/components/localization/data-language-dropdown.component.d.ts +11 -14
  186. package/tableview/action/components/route/action-route.component.d.ts +7 -12
  187. package/tableview/action/components/table/action-table.component.d.ts +3 -3
  188. package/tableview/action/models/execution/action-instance.model.d.ts +2 -1
  189. package/tableview/action/services/view-container.service.d.ts +3 -9
  190. package/tableview/api/action/descriptors/action-descriptor.factory.d.ts +36 -0
  191. package/tableview/api/action/descriptors/action-editor-descriptor.factory.d.ts +31 -0
  192. package/tableview/api/action/descriptors/action-editor.descriptor.d.ts +25 -37
  193. package/tableview/api/action/descriptors/action-link-descriptor.factory.d.ts +15 -0
  194. package/tableview/api/action/descriptors/action-link.descriptor.d.ts +1 -9
  195. package/tableview/api/action/descriptors/action.descriptor.d.ts +4 -27
  196. package/tableview/api/action/models/action-component.model.d.ts +8 -8
  197. package/tableview/api/action/models/execution/action-instance.model.d.ts +2 -1
  198. package/tableview/api/action/models/execution/view-container.model.d.ts +4 -3
  199. package/tableview/api/editor/data-providers/editor-data-provider.factory.d.ts +18 -0
  200. package/tableview/api/editor/data-providers/editor.data-provider.d.ts +2 -14
  201. package/tableview/api/editor/descriptors/editor-descriptor.factory.d.ts +44 -0
  202. package/tableview/api/editor/descriptors/editor.descriptor.d.ts +44 -105
  203. package/tableview/api/editor/descriptors/field-action.descriptor.d.ts +3 -3
  204. package/tableview/api/editor/descriptors/field-base.descriptor.d.ts +35 -33
  205. package/tableview/api/editor/descriptors/field-group.descriptor.d.ts +8 -7
  206. package/tableview/api/editor/descriptors/field-lookup.descriptor.d.ts +2 -2
  207. package/tableview/api/editor/descriptors/field-many.descriptor.d.ts +8 -8
  208. package/tableview/api/editor/descriptors/field-validation.descriptor.d.ts +10 -13
  209. package/tableview/api/editor/descriptors/field.descriptor.d.ts +16 -1
  210. package/tableview/api/editor/helpers/editor-descriptor-helpers.d.ts +43 -0
  211. package/tableview/api/editor/helpers/field-validators.d.ts +7 -3
  212. package/tableview/api/editor/models/editor-fields.model.d.ts +25 -21
  213. package/tableview/api/editor/models/field-action-context.model.d.ts +10 -8
  214. package/tableview/api/editor/models/field-validation.model.d.ts +26 -0
  215. package/tableview/api/editor/models/field.model.d.ts +0 -10
  216. package/tableview/api/editor/models/form-editor.event.d.ts +26 -16
  217. package/tableview/api/editor/models/form-editor.interface.d.ts +38 -8
  218. package/tableview/api/editor/models/formly-custom-field.model.d.ts +1 -1
  219. package/tableview/api/editor/models/formly-field.model.d.ts +9 -7
  220. package/tableview/api/index.d.ts +10 -0
  221. package/tableview/api/tableview/data-providers/tableview-data-provider.factory.d.ts +25 -0
  222. package/tableview/api/tableview/data-providers/tableview.data-provider.d.ts +3 -20
  223. package/tableview/api/tableview/descriptors/tableview-descriptor.factory.d.ts +49 -0
  224. package/tableview/api/tableview/descriptors/tableview.descriptor.d.ts +41 -102
  225. package/tableview/api/tableview/helpers/tableview-create.d.ts +2 -2
  226. package/tableview/api/tableview/helpers/tableview-default-actions.d.ts +4 -2
  227. package/tableview/api/tableview/helpers/tableview-descriptor-helpers.d.ts +42 -0
  228. package/tableview/api/tableview/helpers/tableview-input-builder.d.ts +1 -1
  229. package/tableview/editor/components/editor/form-editor.component.d.ts +54 -36
  230. package/tableview/editor/components/formly/fields/formly-field-action/formly-field-action.component.d.ts +5 -3
  231. package/tableview/editor/components/formly/fields/formly-field-autocomplete/formly-field-autocomplete.component.d.ts +1 -0
  232. package/tableview/editor/components/formly/fields/formly-field-datepicker/formly-field-datepicker.component.d.ts +22 -0
  233. package/tableview/editor/components/formly/fields/formly-field-dropdown/formly-field-dropdown.component.d.ts +1 -1
  234. package/tableview/editor/components/formly/fields/formly-field-input/formly-field-input.component.d.ts +5 -7
  235. package/tableview/editor/components/formly/fields/formly-field-lookup-dialog/formly-field-lookup-dialog.component.d.ts +1 -1
  236. package/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.d.ts +3 -4
  237. package/tableview/editor/components/formly/fields/formly-field-table-dialog-multiselect/formly-field-table-dialog-multiselect.component.d.ts +3 -5
  238. package/tableview/editor/helpers/editor-formly.d.ts +11 -10
  239. package/tableview/editor/models/formly-config.model.d.ts +1 -1
  240. package/tableview/editor/services/form-editor.service.d.ts +39 -0
  241. package/tableview/index.d.ts +1 -0
  242. package/tableview/tableview/components/route/tableview-route.component.d.ts +2 -2
  243. package/tableview/tableview/components/tableview/tableview.component.d.ts +11 -10
  244. package/tableview/tableview/router/tableview-route-builder.d.ts +7 -13
  245. package/version-info.json +11 -0
@@ -1,6 +1,5 @@
1
- import { Validators } from '@angular/forms';
2
1
  import { fromEnumConstantsAsValueArray, fromEnumValuesAsValueArray } from '@mediusinc/mng-commons/core';
3
- import { maxDateValidator, minDateValidator } from '../helpers/field-validators';
2
+ import { emailValidationName, emailValidator, maxDateValidationName, maxDateValidator, minDateValidationName, minDateValidator } from '../helpers/field-validators';
4
3
  import { FieldInputTypeEnum } from '../models/field.model';
5
4
  import { AFieldDescriptor } from './field-base.descriptor';
6
5
  export class FieldInputDescriptor extends AFieldDescriptor {
@@ -94,6 +93,18 @@ export class FieldInputDescriptor extends AFieldDescriptor {
94
93
  get datePickerShowSeconds() {
95
94
  return this._datePickerShowSeconds;
96
95
  }
96
+ get datePickerValueUtc() {
97
+ return this._datePickerValueUtc;
98
+ }
99
+ get datePickerValueNoTimezone() {
100
+ return this._datePickerValueNoTimezone;
101
+ }
102
+ get datePickerValueNoTime() {
103
+ return this._datePickerValueNoTime;
104
+ }
105
+ get datePickerValueAsDateObj() {
106
+ return this._datePickerValueAsDateObj;
107
+ }
97
108
  get maxLength() {
98
109
  return this._maxLength;
99
110
  }
@@ -217,11 +228,18 @@ export class FieldInputDescriptor extends AFieldDescriptor {
217
228
  this._datePickerMax = opts?.max;
218
229
  this._datePickerShowTime = opts?.showTime;
219
230
  this._datePickerShowSeconds = opts?.showSeconds;
231
+ this._datePickerValueAsDateObj = opts?.asDateObj;
232
+ this.withDateValue({
233
+ asDateObj: opts?.asDateObj,
234
+ utc: opts?.utc,
235
+ noTimeZone: opts?.noTimeZone,
236
+ noTime: opts?.noTime
237
+ });
220
238
  if (opts?.min != undefined) {
221
- this.withValidation('minDate', minDateValidator(opts.min));
239
+ this.withValidation(minDateValidationName, minDateValidator(opts.min));
222
240
  }
223
241
  if (opts?.max !== undefined) {
224
- this.withValidation('maxDate', maxDateValidator(opts.max));
242
+ this.withValidation(maxDateValidationName, maxDateValidator(opts.max));
225
243
  }
226
244
  return this;
227
245
  }
@@ -287,12 +305,19 @@ export class FieldInputDescriptor extends AFieldDescriptor {
287
305
  this._inputTrim = trimOption;
288
306
  return this;
289
307
  }
308
+ withDateValue(opts) {
309
+ this._datePickerValueAsDateObj = opts?.asDateObj;
310
+ this._datePickerValueUtc = opts?.utc;
311
+ this._datePickerValueNoTimezone = opts?.noTimeZone;
312
+ this._datePickerValueNoTime = opts?.noTime;
313
+ return this;
314
+ }
290
315
  withTextValidationEmail(email = true) {
291
316
  if (this.fieldType === FieldInputTypeEnum.Text && email) {
292
- this.withValidation('email', Validators.email);
317
+ this.withValidation(emailValidationName, emailValidator());
293
318
  }
294
319
  else if (!email) {
295
- this.removeValidation('email');
320
+ this.removeValidation(emailValidationName);
296
321
  }
297
322
  return this;
298
323
  }
@@ -318,6 +343,10 @@ export class FieldInputDescriptor extends AFieldDescriptor {
318
343
  field._datePickerMax = this._datePickerMax;
319
344
  field._datePickerShowTime = this._datePickerShowTime;
320
345
  field._datePickerShowSeconds = this._datePickerShowSeconds;
346
+ field._datePickerValueUtc = this._datePickerValueUtc;
347
+ field._datePickerValueNoTimezone = this._datePickerValueNoTimezone;
348
+ field._datePickerValueNoTime = this._datePickerValueNoTime;
349
+ field._datePickerValueAsDateObj = this._datePickerValueAsDateObj;
321
350
  field._maxLength = this._maxLength;
322
351
  field._minLength = this._minLength;
323
352
  field._pattern = this._pattern;
@@ -340,4 +369,4 @@ export class FieldInputDescriptor extends AFieldDescriptor {
340
369
  return field;
341
370
  }
342
371
  }
343
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuZGVzY3JpcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9hcGkvc3JjL2VkaXRvci9kZXNjcmlwdG9ycy9maWVsZC5kZXNjcmlwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBa0IsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0QsT0FBTyxFQUFvQiw2QkFBNkIsRUFBRSwwQkFBMEIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBSXpILE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQy9FLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBR3pELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBNkV6RCxNQUFNLE9BQU8sb0JBQWtHLFNBQVEsZ0JBQXFEO0lBd0R4SyxZQUFZLE1BQXNDLEVBQUUsUUFBZ0I7UUFDaEUsS0FBSyxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQztRQXhEcEIsZUFBVSxHQUF1QixrQkFBa0IsQ0FBQyxJQUFJLENBQUM7UUFZekQsdUJBQWtCLEdBQUcsSUFBSSxDQUFDO1FBSzFCLHFCQUFnQixHQUErQixRQUFRLENBQUM7UUFHaEUsNEJBQTRCO1FBQ3BCLGtCQUFhLEdBQXNCLEVBQUUsQ0FBQztJQW9DOUMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxNQUFNLENBQUMsU0FBNkIsRUFBRSxHQUFHLElBQVc7UUFDdkQsUUFBUSxTQUFTLEVBQUUsQ0FBQztZQUNoQixLQUFLLGtCQUFrQixDQUFDLE1BQU07Z0JBQzFCLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQzNCLEtBQUssa0JBQWtCLENBQUMsS0FBSztnQkFDekIsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDMUIsS0FBSyxrQkFBa0IsQ0FB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LGdCQUFnQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztRQUMvQyxLQUFLLENBQUMscUJBQXFCLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDO1FBQ3pELEtBQUssQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUNuQyxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRvcnN9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHtJRWRpdG9yRGVzY3JpcHRvciwgZnJvbUVudW1Db25zdGFudHNBc1ZhbHVlQXJyYXksIGZyb21FbnVtVmFsdWVzQXNWYWx1ZUFycmF5fSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtJbnB1dFRyaW1UeXBlfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2Zvcm0vYXBpJztcbmltcG9ydCB7RW51bURlc2NyaXB0b3J9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvbW9kZWwnO1xuXG5pbXBvcnQge21heERhdGVWYWxpZGF0b3IsIG1pbkRhdGVWYWxpZGF0b3J9IGZyb20gJy4uL2hlbHBlcnMvZmllbGQtdmFsaWRhdG9ycyc7XG5pbXBvcnQge0ZpZWxkSW5wdXRUeXBlRW51bX0gZnJvbSAnLi4vbW9kZWxzL2ZpZWxkLm1vZGVsJztcbmltcG9ydCB7QUZvcm1seUN1c3RvbUZpZWxkQ29tcG9uZW50fSBmcm9tICcuLi9tb2RlbHMvZm9ybWx5LWN1c3RvbS1maWVsZC5tb2RlbCc7XG5pbXBvcnQge1JhZGlvVmFsdWV9IGZyb20gJy4uL21vZGVscy9yYWRpby5tb2RlbCc7XG5pbXBvcnQge0FGaWVsZERlc2NyaXB0b3J9IGZyb20gJy4vZmllbGQtYmFzZS5kZXNjcmlwdG9yJztcblxuZXhwb3J0IHR5cGUgRmllbGRJbnB1dERlc2NyaXB0b3JUeXBlID0gc3RyaW5nIHwgc3RyaW5nW10gfCBudW1iZXIgfCBib29sZWFuIHwgRGF0ZSB8IEZpbGUgfCBGaWxlW107XG5cbmV4cG9ydCB0eXBlIEZpZWxkSW5wdXRUZXh0T3B0c1R5cGUgPSB7XG4gICAgZW1haWw/OiBib29sZWFuO1xufSAmIEZpZWxkSW5wdXRUZXh0VmFsaWRhdGlvbk9wdHNUeXBlO1xuXG5leHBvcnQgdHlwZSBGaWVsZElucHV0VGV4dGFyZWFPcHRzVHlwZSA9IHtcbiAgICByb3dzPzogbnVtYmVyO1xufSAmIEZpZWxkSW5wdXRUZXh0VmFsaWRhdGlvbk9wdHNUeXBlO1xuXG5leHBvcnQgdHlwZSBGaWVsZElucHV0VGV4dFZhbGlkYXRpb25PcHRzVHlwZSA9IHtcbiAgICBtaW5MZW5ndGg/OiBudW1iZXI7XG4gICAgbWF4TGVuZ3RoPzogbnVtYmVyO1xuICAgIHBhdHRlcm4/OiBzdHJpbmcgfCBSZWdFeHA7XG59O1xuXG5leHBvcnQgdHlwZSBGaWVsZElucHV0Q3VycmVuY3lPcHRzVHlwZTxQcm9wZXJ0eSA9IHN0cmluZz4gPSB7XG4gICAgY3VycmVuY3lQcm9wZXJ0eT86IFByb3BlcnR5O1xuICAgIGN1cnJlbmN5Pzogc3RyaW5nO1xuICAgIGN1cnJlbmN5RGlzcGxheT86ICdzeW1ib2wnIHwgJ2NvZGUnIHwgJ25hbWUnO1xufSAmIEZpZWxkSW5wdXROdW1iZXJHcm91cGluZ09wdHNUeXBlICZcbiAgICBGaWVsZElucHV0TnVtYmVyRnJhY3Rpb25PcHRzVHlwZSAmXG4gICAgRmllbGRJbnB1dE51bWJlclZhbGlkYXRpb25PcHRzVHlwZSAmXG4gICAgRmllbGRJbnB1dExvY2FsZU9wdHNUeXBlO1xuXG5leHBvcnQgdHlwZSBGaWVsZElucHV0TnVtYmVyT3B0c1R5cGUgPSBGaWVsZElucHV0TnVtYmVyR3JvdXBpbmdPcHRzVHlwZSAmIEZpZWxkSW5wdXROdW1iZXJGcmFjdGlvbk9wdHNUeXBlICYgRmllbGRJbnB1dE51bWJlclZhbGlkYXRpb25PcHRzVHlwZSAmIEZpZWxkSW5wdXRMb2NhbGVPcHRzVHlwZTtcblxuZXhwb3J0IHR5cGUgRmllbGRJbnB1dE51bWJlckdyb3VwaW5nT3B0c1R5cGUgPSB7XG4gICAgZ3JvdXBTZXBhcmF0b3I/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgRmllbGRJbnB1dE51bWJlclZhbGlkYXRpb25PcHRzVHlwZSA9IHtcbiAgICBtaW4/OiBudW1iZXI7XG4gICAgbWF4PzogbnVtYmVyO1xuICAgIHN0ZXA/OiBudW1iZXI7XG4gICAgYXV0b0NvcnJlY3Q/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgRmllbGRJbnB1dE51bWJlckZyYWN0aW9uT3B0c1R5cGUgPSB7XG4gICAgbWluRnJhY3Rpb25EaWdpdHM/OiBudW1iZXI7XG4gICAgbWF4RnJhY3Rpb25EaWdpdHM/OiBudW1iZXI7XG59O1xuXG5leHBvcnQgdHlwZSBGaWVsZElucHV0TG9jYWxlT3B0c1R5cGUgPSB7XG4gICAgbG9jYWxlPzogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgRmllbGRJbnB1dERhdGVQaWNrZXJPcHRzVHlwZSA9IHtcbiAgICBmb3JtYXQ/OiBzdHJpbmc7XG4gICAgbWluPzogRGF0ZTtcbiAgICBtYXg/OiBEYXRlO1xuICAgIHNob3dUaW1lPzogYm9vbGVhbjtcbiAgICBzaG93U2Vjb25kcz86IGJvb2xlYW47XG59O1xuXG5leHBvcnQgdHlwZSBGaWVsZElucHV0RmlsZU9wdHMgPSB7XG4gICAgbXVsdGlwbGU/OiBib29sZWFuO1xuICAgIG1heEZpbGVTaXplPzogbnVtYmVyO1xuICAgIGFjY2VwdD86IHN0cmluZztcbiAgICBvbkZpbGVTZWxlY3RIYW5kbGVyRm4/OiBGaWVsZElucHV0RmlsZU9uU2VsZWN0SGFuZGxlckZuVHlwZTtcbn07XG5cbmV4cG9ydCB0eXBlIEZpZWxkSW5wdXRJbWFnZVVybE9wdHMgPSB7XG4gICAgbXVsdGlwbGU/OiBib29sZWFuO1xuICAgIHByZXZpZXc/OiBib29sZWFuO1xuICAgIGlucHV0VmlzaWJsZU9uRGlzYWJsZWQ/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgRmllbGRJbnB1dENvbXBvbmVudE9wdHMgPSB7XG4gICAgZmllbGRXcmFwcGVycz86IHN0cmluZ1tdO1xuICAgIGlucHV0cz86IFJlY29yZDxzdHJpbmcsIGFueT47XG59O1xuXG5leHBvcnQgdHlwZSBGaWVsZElucHV0RmlsZU9uU2VsZWN0SGFuZGxlckZuVHlwZSA9IChmaWxlOiBGaWxlW10gfCBudWxsLCBjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpID0+IHZvaWQ7XG5cbmV4cG9ydCBjbGFzcyBGaWVsZElucHV0RGVzY3JpcHRvcjxFZGl0b3JNb2RlbCwgRmllbGRNb2RlbCA9IEZpZWxkSW5wdXREZXNjcmlwdG9yVHlwZSwgRmllbGRWYWx1ZSA9IEZpZWxkTW9kZWw+IGV4dGVuZHMgQUZpZWxkRGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBFZGl0b3JNb2RlbCwgRmllbGRWYWx1ZT4ge1xuICAgIHByaXZhdGUgX2ZpZWxkVHlwZTogRmllbGRJbnB1dFR5cGVFbnVtID0gRmllbGRJbnB1dFR5cGVFbnVtLlRleHQ7XG5cbiAgICAvLyB0ZXh0YXJlYSBzcGVjaWZpYyBwcm9wZXJ0aWVzXG4gICAgcHJpdmF0ZSBfcm93cz86IG51bWJlcjtcblxuICAgIC8vIG51bWJlciBzcGVjaWZpYyBwcm9wZXJ0aWVzXG4gICAgcHJpdmF0ZSBfbnVtYmVyTWluPzogbnVtYmVyO1xuICAgIHByaXZhdGUgX251bWJlck1heD86IG51bWJlcjtcbiAgICBwcml2YXRlIF9udW1iZXJTdGVwPzogbnVtYmVyO1xuICAgIHByaXZhdGUgX251bWJlckF1dG9Db3JyZWN0PzogYm9vbGVhbjtcbiAgICBwcml2YXRlIF9udW1iZXJNaW5GcmFjdGlvbkRpZ2l0cz86IG51bWJlcjtcbiAgICBwcml2YXRlIF9udW1iZXJNYXhGcmFjdGlvbkRpZ2l0cz86IG51bWJlcjtcbiAgICBwcml2YXRlIF9udW1iZXJVc2VHcm91cGluZyA9IHRydWU7XG4gICAgcHJpdmF0ZSBfbG9jYWxlPzogc3RyaW5nO1xuXG4gICAgLy8gY3VycmVuY3kgc3BlY2lmaWMgcHJvcGVydGllc1xuICAgIHByaXZhdGUgX2N1cnJlbmN5Pzogc3RyaW5nO1xuICAgIHByaXZhdGUgX2N1cnJlbmN5RGlzcGxheTogJ3N5bWJvbCcgfCAnY29kZScgfCAnbmFtZScgPSAnc3ltYm9sJztcbiAgICBwcml2YXRlIF9jdXJyZW5jeUZyb21Qcm9wZXJ0eT86IHN0cmluZztcblxuICAgIC8vIHJhZGlvIHNwZWNpZmljIHByb3BlcnRpZXNcbiAgICBwcml2YXRlIF9yYWRpb09wdGlvbnM6IEFycmF5PFJhZGlvVmFsdWU+ID0gW107XG5cbiAgICAvLyBkYXRlcGlja2VyIHNwZWNpZmljIHByb3BlcnRpZXNcbiAgICBwcml2YXRlIF9kYXRlUGlja2VyRm9ybWF0Pzogc3RyaW5nO1xuICAgIHByaXZhdGUgX2RhdGVQaWNrZXJNaW4/OiBEYXRlO1xuICAgIHByaXZhdGUgX2RhdGVQaWNrZXJNYXg/OiBEYXRlO1xuICAgIHByaXZhdGUgX2RhdGVQaWNrZXJTaG93VGltZT86IGJvb2xlYW47XG4gICAgcHJpdmF0ZSBfZGF0ZVBpY2tlclNob3dTZWNvbmRzPzogYm9vbGVhbjtcblxuICAgIC8vIGlucHV0IHNwZWNpZmljIHByb3BlcnRpZXNcbiAgICBwcml2YXRlIF9tYXhMZW5ndGg/OiBudW1iZXI7XG4gICAgcHJpdmF0ZSBfbWluTGVuZ3RoPzogbnVtYmVyO1xuICAgIHByaXZhdGUgX3BhdHRlcm4/OiBzdHJpbmcgfCBSZWdFeHA7XG4gICAgcHJpdmF0ZSBfaW5wdXRUcmltPzogSW5wdXRUcmltVHlwZTtcblxuICAgIC8vIG1hc2sgc3BlY2lmaWMgcHJvcGVydGllc1xuICAgIHByaXZhdGUgX21hc2s/OiBzdHJpbmc7XG4gICAgcHJpdmF0ZSBfc2xvdENoYXI/OiBzdHJpbmc7XG5cbiAgICAvLyBmaWxlIHNwZWNpZmljIHByb3BlcnRpZXNcbiAgICBwcml2YXRlIF9maWxlTXVsdGlwbGU/OiBib29sZWFuO1xuICAgIHByaXZhdGUgX2ZpbGVNYXhGaWxlU2l6ZT86IG51bWJlcjtcbiAgICBwcml2YXRlIF9maWxlQWNjZXB0Pzogc3RyaW5nO1xuICAgIHByaXZhdGUgX2ZpbGVPblNlbGVjdEhhbmRsZXI/OiBGaWVsZElucHV0RmlsZU9uU2VsZWN0SGFuZGxlckZuVHlwZTtcblxuICAgIC8vIGltYWdlIHNwZWNpZmljIHByb3BlcnRpZXNcbiAgICBwcml2YXRlIF9pbWFnZVByZXZpZXc/OiBib29sZWFuO1xuICAgIHByaXZhdGUgX2ltYWdlVXJsSW5wdXRIaWRkZW5PbkRpc2FibGVkPzogYm9vbGVhbjtcblxuICAgIC8vIGN1c3RvbSBjb21wb25lbnQgcHJvcGVydGllc1xuICAgIHByaXZhdGUgX2N1c3RvbUNvbXBvbmVudFR5cGU/OiBUeXBlPEFGb3JtbHlDdXN0b21GaWVsZENvbXBvbmVudD47XG4gICAgcHJpdmF0ZSBfY3VzdG9tQ29tcG9uZW50SW5wdXRzPzogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgICBwcml2YXRlIF9jdXN0b21Db21wb25lbnRXcmFwcGVycz86IHN0cmluZ1tdO1xuXG4gICAgY29uc3RydWN0b3IoZWRpdG9yOiBJRWRpdG9yRGVzY3JpcHRvcjxFZGl0b3JNb2RlbD4sIHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICAgICAgc3VwZXIoZWRpdG9yLCBwcm9wZXJ0eSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogY29udmVydHMgZmllbGQgdG8gZ2l2ZW4gdHlwZSB3aXRoIGFkZGl0aW9uYWwgYXJndW1lbnRzXG4gICAgICogQHBhcmFtIGZpZWxkVHlwZSBmaWVsZCB0eXBlIGVudW1cbiAgICAgKiBAcGFyYW0gYXJncyBhbnkgYWRkaXRpb25hbCBhcmd1bWVudHMgZm9yIGZpZWxkIChvcHRpb25hbClcbiAgICAgKi9cbiAgICBwdWJsaWMgYXNUeXBlKGZpZWxkVHlwZTogRmllbGRJbnB1dFR5cGVFbnVtLCAuLi5hcmdzOiBhbnlbXSk6IHRoaXMge1xuICAgICAgICBzd2l0Y2ggKGZpZWxkVHlwZSkge1xuICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0VHlwZUVudW0uSGlkZGVuOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmFzSGlkZGVuKCk7XG4gICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXRUeXBlRW51bS5MYWJlbDpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5hc0xhYmVsKCk7XG4gICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXRUeXBlRW51bS5UZXh0YXJlYTpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5hc1RleHRhcmVhKC4uLmFyZ3MpO1xuICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0VHlwZUVudW0uTnVtYmVyOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmFzTnVtYmVyKC4uLmFyZ3MpO1xuICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0VHlwZUVudW0uQ3VycmVuY3k6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXNDdXJyZW5jeSguLi5hcmdzKTtcbiAgICAgICAgICAgIGNhc2UgRmllbGRJbnB1dFR5cGVFbnVtLlN3aXRjaDpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5hc1N3aXRjaCgpO1xuICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0VHlwZUVudW0uUmFkaW86XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXNSYWRpbyhhcmdzWzBdLCBhcmdzWzFdKTtcbiAgICAgICAgICAgIGNhc2UgRmllbGRJbnB1dFR5cGVFbnVtLkRhdGVwaWNrZXI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXNEYXRlUGlja2VyKC4uLmFyZ3MpO1xuICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0VHlwZUVudW0uTWFzazpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5hc01hc2soYXJnc1swXSwgYXJnc1sxXSk7XG4gICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXRUeXBlRW51bS5GaWxlOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmFzRmlsZSguLi5hcmdzKTtcbiAgICAgICAgICAgIGNhc2UgRmllbGRJbnB1dFR5cGVFbnVtLkltYWdlRmlsZTpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5hc0ltYWdlRmlsZSguLi5hcmdzKTtcbiAgICAgICAgICAgIGNhc2UgRmllbGRJbnB1dFR5cGVFbnVtLkltYWdlVXJsOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmFzSW1hZ2VVcmwoLi4uYXJncyk7XG4gICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXRUeXBlRW51bS5DdXN0b206XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXNDdXN0b21Db21wb25lbnQoYXJnc1swXSwgYXJnc1sxXSk7XG4gICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXRUeXBlRW51bS5UZXh0OlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmFzVGV4dChhcmdzWzBdKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZmllbGRUeXBlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZmllbGRUeXBlO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgcm93cygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jvd3M7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBudW1iZXJNaW4oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9udW1iZXJNaW47XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBudW1iZXJNYXgoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9udW1iZXJNYXg7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBudW1iZXJTdGVwKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbnVtYmVyU3RlcDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IG51bWJlckF1dG9Db3JyZWN0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbnVtYmVyQXV0b0NvcnJlY3Q7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBudW1iZXJNaW5GcmFjdGlvbkRpZ2l0cygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX251bWJlck1pbkZyYWN0aW9uRGlnaXRzO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbnVtYmVyTWF4RnJhY3Rpb25EaWdpdHMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9udW1iZXJNYXhGcmFjdGlvbkRpZ2l0cztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IG51bWJlclVzZUdyb3VwaW5nKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbnVtYmVyVXNlR3JvdXBpbmc7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCByYWRpb09wdGlvbnMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yYWRpb09wdGlvbnM7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkYXRlUGlja2VyRm9ybWF0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0ZVBpY2tlckZvcm1hdDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGRhdGVQaWNrZXJNaW4oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRlUGlja2VyTWluO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGF0ZVBpY2tlck1heCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGVQaWNrZXJNYXg7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkYXRlUGlja2VyU2hvd1RpbWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRlUGlja2VyU2hvd1RpbWU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkYXRlUGlja2VyU2hvd1NlY29uZHMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRlUGlja2VyU2hvd1NlY29uZHM7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBtYXhMZW5ndGgoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9tYXhMZW5ndGg7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBtaW5MZW5ndGgoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9taW5MZW5ndGg7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBwYXR0ZXJuKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGF0dGVybjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHRyaW1PcHRpb24oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pbnB1dFRyaW07XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBtYXNrKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbWFzaztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHNsb3RDaGFyKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2xvdENoYXI7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBmaWxlTXVsdGlwbGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9maWxlTXVsdGlwbGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBmaWxlTWF4RmlsZVNpemUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9maWxlTWF4RmlsZVNpemU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBmaWxlQWNjZXB0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZmlsZUFjY2VwdDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGZpbGVPblNlbGVjdEhhbmRsZXIoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9maWxlT25TZWxlY3RIYW5kbGVyO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaW1hZ2VQcmV2aWV3KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5faW1hZ2VQcmV2aWV3O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaW1hZ2VVcmxJbnB1dFZpc2libGVPbkRpc2FibGVkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5faW1hZ2VVcmxJbnB1dEhpZGRlbk9uRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXN0b21Db21wb25lbnRUeXBlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY3VzdG9tQ29tcG9uZW50VHlwZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1c3RvbUNvbXBvbmVudElucHV0cygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2N1c3RvbUNvbXBvbmVudElucHV0cztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1c3RvbUNvbXBvbmVudFdyYXBwZXJzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY3VzdG9tQ29tcG9uZW50V3JhcHBlcnM7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBsb2NhbGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9sb2NhbGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXJyZW5jeSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2N1cnJlbmN5O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY3VycmVuY3lGcm9tUHJvcGVydHkoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jdXJyZW5jeUZyb21Qcm9wZXJ0eTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1cnJlbmN5RGlzcGxheSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2N1cnJlbmN5RGlzcGxheTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXNIaWRkZW4oKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2ZpZWxkVHlwZSA9IEZpZWxkSW5wdXRUeXBlRW51bS5IaWRkZW47XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc0xhYmVsKCk6IHRoaXMge1xuICAgICAgICB0aGlzLl9maWVsZFR5cGUgPSBGaWVsZElucHV0VHlwZUVudW0uTGFiZWw7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc1RleHQob3B0cz86IEZpZWxkSW5wdXRUZXh0T3B0c1R5cGUpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fZmllbGRUeXBlID0gRmllbGRJbnB1dFR5cGVFbnVtLlRleHQ7XG4gICAgICAgIHJldHVybiB0aGlzLndpdGhUZXh0VmFsaWRhdGlvbihvcHRzKS53aXRoVGV4dFZhbGlkYXRpb25FbWFpbChvcHRzPy5lbWFpbCA/PyBmYWxzZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzVGV4dGFyZWEob3B0cz86IEZpZWxkSW5wdXRUZXh0YXJlYU9wdHNUeXBlKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2ZpZWxkVHlwZSA9IEZpZWxkSW5wdXRUeXBlRW51bS5UZXh0YXJlYTtcbiAgICAgICAgdGhpcy5fcm93cyA9IG9wdHM/LnJvd3M7XG4gICAgICAgIHJldHVybiB0aGlzLndpdGhUZXh0VmFsaWRhdGlvbihvcHRzKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXNOdW1iZXIob3B0cz86IEZpZWxkSW5wdXROdW1iZXJPcHRzVHlwZSk6IHRoaXMge1xuICAgICAgICB0aGlzLl9maWVsZFR5cGUgPSBGaWVsZElucHV0VHlwZUVudW0uTnVtYmVyO1xuICAgICAgICByZXR1cm4gdGhpcy53aXRoTnVtYmVyR3JvdXBpbmcob3B0cz8uZ3JvdXBTZXBhcmF0b3IgPz8gZmFsc2UpXG4gICAgICAgICAgICAud2l0aE51bWJlckZyYWN0aW9ucyhvcHRzKVxuICAgICAgICAgICAgLndpdGhOdW1iZXJWYWxpZGF0aW9uKG9wdHMpXG4gICAgICAgICAgICAud2l0aExvY2FsZShvcHRzPy5sb2NhbGUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc0N1cnJlbmN5KG9wdHM/OiBGaWVsZElucHV0Q3VycmVuY3lPcHRzVHlwZTxrZXlvZiBFZGl0b3JNb2RlbD4pOiB0aGlzIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXNDdXJyZW5jeVVuc2FmZSg8RmllbGRJbnB1dEN1cnJlbmN5T3B0c1R5cGU+e1xuICAgICAgICAgICAgLi4ub3B0cyxcbiAgICAgICAgICAgIGN1cnJlbmN5UHJvcGVydHk6IG9wdHM/LmN1cnJlbmN5UHJvcGVydHkgPyAob3B0cy5jdXJyZW5jeVByb3BlcnR5IGFzIHN0cmluZykgOiB1bmRlZmluZWRcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzQ3VycmVuY3lVbnNhZmUob3B0cz86IEZpZWxkSW5wdXRDdXJyZW5jeU9wdHNUeXBlKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2ZpZWxkVHlwZSA9IEZpZWxkSW5wdXRUeXBlRW51bS5DdXJyZW5jeTtcbiAgICAgICAgdGhpcy5fY3VycmVuY3lGcm9tUHJvcGVydHkgPSBvcHRzPy5jdXJyZW5jeVByb3BlcnR5O1xuICAgICAgICB0aGlzLl9jdXJyZW5jeSA9IG9wdHM/LmN1cnJlbmN5ID8/IHRoaXMuX2N1cnJlbmN5O1xuICAgICAgICB0aGlzLl9jdXJyZW5jeURpc3BsYXkgPSBvcHRzPy5jdXJyZW5jeURpc3BsYXkgPz8gdGhpcy5fY3VycmVuY3lEaXNwbGF5O1xuICAgICAgICByZXR1cm4gdGhpcy53aXRoTnVtYmVyR3JvdXBpbmcob3B0cz8uZ3JvdXBTZXBhcmF0b3IgPz8gZmFsc2UpXG4gICAgICAgICAgICAud2l0aE51bWJlckZyYWN0aW9ucyh7XG4gICAgICAgICAgICAgICAgbWF4RnJhY3Rpb25EaWdpdHM6IG9wdHM/Lm1heEZyYWN0aW9uRGlnaXRzID8/IDIsXG4gICAgICAgICAgICAgICAgbWluRnJhY3Rpb25EaWdpdHM6IG9wdHM/Lm1pbkZyYWN0aW9uRGlnaXRzID8/IDJcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAud2l0aE51bWJlclZhbGlkYXRpb24ob3B0cylcbiAgICAgICAgICAgIC53aXRoTG9jYWxlKG9wdHM/LmxvY2FsZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzU3dpdGNoKCk6IHRoaXMge1xuICAgICAgICB0aGlzLl9maWVsZFR5cGUgPSBGaWVsZElucHV0VHlwZUVudW0uU3dpdGNoO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgYXNSYWRpbyhvcHRpb25zOiBBcnJheTxzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuPiwgb3B0aW9uc1RpdGxlUGF0aD86IHN0cmluZyk6IHRoaXMge1xuICAgICAgICB0aGlzLl9maWVsZFR5cGUgPSBGaWVsZElucHV0VHlwZUVudW0uUmFkaW87XG4gICAgICAgIHRoaXMuX3JhZGlvT3B0aW9ucyA9IG9wdGlvbnMubWFwKG8gPT4gPFJhZGlvVmFsdWU+e3ZhbHVlOiBvLCB0aXRsZTogYCR7b3B0aW9uc1RpdGxlUGF0aCA/IGAke29wdGlvbnNUaXRsZVBhdGh9LmAgOiAnJ30ke299YH0pO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgYXNSYWRpb0Zyb21FbnVtPEVudW0+KGVudW1Nb2RlbDogRW51bURlc2NyaXB0b3I8RW51bT4sIHZhbHVlcz86IEFycmF5PEVudW0+KTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2ZpZWxkVHlwZSA9IEZpZWxkSW5wdXRUeXBlRW51bS5SYWRpbztcbiAgICAgICAgdGhpcy5fcmFkaW9PcHRpb25zID0gQXJyYXkuaXNBcnJheSh2YWx1ZXMpXG4gICAgICAgICAgICA/IGZyb21FbnVtVmFsdWVzQXNWYWx1ZUFycmF5PEVudW0+KGVudW1Nb2RlbC50eXBlLCB2YWx1ZXMsIGVudW1Nb2RlbC5uYW1lQXNWYWx1ZSwgZW51bU1vZGVsLmkxOG5CYXNlS2V5ID8/IHVuZGVmaW5lZClcbiAgICAgICAgICAgIDogZnJvbUVudW1Db25zdGFudHNBc1ZhbHVlQXJyYXkoZW51bU1vZGVsLnR5cGUsIGVudW1Nb2RlbC5uYW1lQXNWYWx1ZSwgZW51bU1vZGVsLmkxOG5CYXNlS2V5ID8/IHVuZGVmaW5lZCk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc0RhdGVQaWNrZXIob3B0cz86IEZpZWxkSW5wdXREYXRlUGlja2VyT3B0c1R5cGUpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fZmllbGRUeXBlID0gRmllbGRJbnB1dFR5cGVFbnVtLkRhdGVwaWNrZXI7XG4gICAgICAgIHRoaXMuX2RhdGVQaWNrZXJGb3JtYXQgPSBvcHRzPy5mb3JtYXQ7XG4gICAgICAgIHRoaXMuX2RhdGVQaWNrZXJNaW4gPSBvcHRzPy5taW47XG4gICAgICAgIHRoaXMuX2RhdGVQaWNrZXJNYXggPSBvcHRzPy5tYXg7XG4gICAgICAgIHRoaXMuX2RhdGVQaWNrZXJTaG93VGltZSA9IG9wdHM/LnNob3dUaW1lO1xuICAgICAgICB0aGlzLl9kYXRlUGlja2VyU2hvd1NlY29uZHMgPSBvcHRzPy5zaG93U2Vjb25kcztcblxuICAgICAgICBpZiAob3B0cz8ubWluICE9IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy53aXRoVmFsaWRhdGlvbignbWluRGF0ZScsIG1pbkRhdGVWYWxpZGF0b3Iob3B0cy5taW4pKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAob3B0cz8ubWF4ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMud2l0aFZhbGlkYXRpb24oJ21heERhdGUnLCBtYXhEYXRlVmFsaWRhdG9yKG9wdHMubWF4KSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgYXNNYXNrKG1hc2s6IHN0cmluZywgc2xvdENoYXI6IHN0cmluZyk6IHRoaXMge1xuICAgICAgICB0aGlzLl9maWVsZFR5cGUgPSBGaWVsZElucHV0VHlwZUVudW0uTWFzaztcbiAgICAgICAgdGhpcy5fbWFzayA9IG1hc2s7XG4gICAgICAgIHRoaXMuX3Nsb3RDaGFyID0gc2xvdENoYXI7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc0ZpbGUob3B0cz86IEZpZWxkSW5wdXRGaWxlT3B0cyk6IHRoaXMge1xuICAgICAgICB0aGlzLl9maWVsZFR5cGUgPSBGaWVsZElucHV0VHlwZUVudW0uRmlsZTtcbiAgICAgICAgdGhpcy5fZmlsZU11bHRpcGxlID0gb3B0cz8ubXVsdGlwbGU7XG4gICAgICAgIHRoaXMuX2ZpbGVNYXhGaWxlU2l6ZSA9IG9wdHM/Lm1heEZpbGVTaXplO1xuICAgICAgICB0aGlzLl9maWxlQWNjZXB0ID0gb3B0cz8uYWNjZXB0O1xuICAgICAgICByZXR1cm4gdGhpcy53aXRoRmlsZU9uU2VsZWN0SGFuZGxlcihvcHRzPy5vbkZpbGVTZWxlY3RIYW5kbGVyRm4pO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc0ltYWdlRmlsZShvcHRzPzogRmllbGRJbnB1dEZpbGVPcHRzKTogdGhpcyB7XG4gICAgICAgIHRoaXMuYXNGaWxlKG9wdHMpO1xuICAgICAgICB0aGlzLl9maWVsZFR5cGUgPSBGaWVsZElucHV0VHlwZUVudW0uSW1hZ2VGaWxlO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgYXNJbWFnZVVybChvcHRzPzogRmllbGRJbnB1dEltYWdlVXJsT3B0cyk6IHRoaXMge1xuICAgICAgICB0aGlzLl9maWVsZFR5cGUgPSBGaWVsZElucHV0VHlwZUVudW0uSW1hZ2VVcmw7XG4gICAgICAgIHRoaXMuX2ZpbGVNdWx0aXBsZSA9IG9wdHM/Lm11bHRpcGxlO1xuICAgICAgICB0aGlzLl9pbWFnZVByZXZpZXcgPSBvcHRzPy5wcmV2aWV3O1xuICAgICAgICB0aGlzLl9pbWFnZVVybElucHV0SGlkZGVuT25EaXNhYmxlZCA9IG9wdHM/LmlucHV0VmlzaWJsZU9uRGlzYWJsZWQ7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc0N1c3RvbUNvbXBvbmVudChjb21wb25lbnQ6IFR5cGU8QUZvcm1seUN1c3RvbUZpZWxkQ29tcG9uZW50Piwgb3B0cz86IEZpZWxkSW5wdXRDb21wb25lbnRPcHRzKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2ZpZWxkVHlwZSA9IEZpZWxkSW5wdXRUeXBlRW51bS5DdXN0b207XG4gICAgICAgIHRoaXMuX2N1c3RvbUNvbXBvbmVudFR5cGUgPSBjb21wb25lbnQ7XG4gICAgICAgIHRoaXMuX2N1c3RvbUNvbXBvbmVudElucHV0cyA9IG9wdHM/LmlucHV0cztcbiAgICAgICAgdGhpcy5fY3VzdG9tQ29tcG9uZW50V3JhcHBlcnMgPSBvcHRzPy5maWVsZFdyYXBwZXJzO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aE51bWJlclZhbGlkYXRpb24ob3B0cz86IEZpZWxkSW5wdXROdW1iZXJWYWxpZGF0aW9uT3B0c1R5cGUpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fbnVtYmVyU3RlcCA9IG9wdHM/LnN0ZXA7XG4gICAgICAgIHRoaXMuX251bWJlckF1dG9Db3JyZWN0ID0gb3B0cz8uYXV0b0NvcnJlY3Q7XG4gICAgICAgIHRoaXMuX251bWJlck1pbiA9IG9wdHM/Lm1pbjtcbiAgICAgICAgdGhpcy5fbnVtYmVyTWF4ID0gb3B0cz8ubWF4O1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aExvY2FsZShsb2NhbGU/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fbG9jYWxlID0gbG9jYWxlO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aE51bWJlckZyYWN0aW9ucyhvcHRzPzogRmllbGRJbnB1dE51bWJlckZyYWN0aW9uT3B0c1R5cGUpIHtcbiAgICAgICAgdGhpcy5fbnVtYmVyTWluRnJhY3Rpb25EaWdpdHMgPSBvcHRzPy5taW5GcmFjdGlvbkRpZ2l0cztcbiAgICAgICAgdGhpcy5fbnVtYmVyTWF4RnJhY3Rpb25EaWdpdHMgPSBvcHRzPy5tYXhGcmFjdGlvbkRpZ2l0cztcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhOdW1iZXJHcm91cGluZyh1c2VHcm91cGluZyA9IHRydWUpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fbnVtYmVyVXNlR3JvdXBpbmcgPSB1c2VHcm91cGluZztcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhUZXh0VmFsaWRhdGlvbihvcHRzPzogRmllbGRJbnB1dFRleHRWYWxpZGF0aW9uT3B0c1R5cGUpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fbWluTGVuZ3RoID0gb3B0cz8ubWluTGVuZ3RoO1xuICAgICAgICB0aGlzLl9tYXhMZW5ndGggPSBvcHRzPy5tYXhMZW5ndGg7XG4gICAgICAgIHRoaXMuX3BhdHRlcm4gPSBvcHRzPy5wYXR0ZXJuO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aElucHV0VHJpbSh0cmltT3B0aW9uOiBJbnB1dFRyaW1UeXBlID0gJ2JvdGgnKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2lucHV0VHJpbSA9IHRyaW1PcHRpb247XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoVGV4dFZhbGlkYXRpb25FbWFpbChlbWFpbCA9IHRydWUpOiB0aGlzIHtcbiAgICAgICAgaWYgKHRoaXMuZmllbGRUeXBlID09PSBGaWVsZElucHV0VHlwZUVudW0uVGV4dCAmJiBlbWFpbCkge1xuICAgICAgICAgICAgdGhpcy53aXRoVmFsaWRhdGlvbignZW1haWwnLCBWYWxpZGF0b3JzLmVtYWlsKTtcbiAgICAgICAgfSBlbHNlIGlmICghZW1haWwpIHtcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlVmFsaWRhdGlvbignZW1haWwnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aEZpbGVPblNlbGVjdEhhbmRsZXIoZm4/OiBGaWVsZElucHV0RmlsZU9uU2VsZWN0SGFuZGxlckZuVHlwZSk6IHRoaXMge1xuICAgICAgICB0aGlzLl9maWxlT25TZWxlY3RIYW5kbGVyID0gZm47XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBjb3B5KCk6IEZpZWxkSW5wdXREZXNjcmlwdG9yPEVkaXRvck1vZGVsLCBGaWVsZE1vZGVsLCBGaWVsZFZhbHVlPiB7XG4gICAgICAgIGNvbnN0IGZpZWxkID0gbmV3IEZpZWxkSW5wdXREZXNjcmlwdG9yPEVkaXRvck1vZGVsLCBGaWVsZE1vZGVsLCBGaWVsZFZhbHVlPih0aGlzLl9lZGl0b3IsIHRoaXMuX3Byb3BlcnR5KTtcbiAgICAgICAgdGhpcy5jb3B5RmllbGRzVG8oZmllbGQpO1xuICAgICAgICBmaWVsZC5fZmllbGRUeXBlID0gdGhpcy5fZmllbGRUeXBlO1xuICAgICAgICBmaWVsZC5fcm93cyA9IHRoaXMuX3Jvd3M7XG4gICAgICAgIGZpZWxkLl9udW1iZXJNaW4gPSB0aGlzLl9udW1iZXJNaW47XG4gICAgICAgIGZpZWxkLl9udW1iZXJNYXggPSB0aGlzLl9udW1iZXJNYXg7XG4gICAgICAgIGZpZWxkLl9udW1iZXJTdGVwID0gdGhpcy5fbnVtYmVyU3RlcDtcbiAgICAgICAgZmllbGQuX251bWJlckF1dG9Db3JyZWN0ID0gdGhpcy5fbnVtYmVyQXV0b0NvcnJlY3Q7XG4gICAgICAgIGZpZWxkLl9udW1iZXJNaW5GcmFjdGlvbkRpZ2l0cyA9IHRoaXMuX251bWJlck1pbkZyYWN0aW9uRGlnaXRzO1xuICAgICAgICBmaWVsZC5fbnVtYmVyTWF4RnJhY3Rpb25EaWdpdHMgPSB0aGlzLl9udW1iZXJNYXhGcmFjdGlvbkRpZ2l0cztcbiAgICAgICAgZmllbGQuX251bWJlclVzZUdyb3VwaW5nID0gdGhpcy5fbnVtYmVyVXNlR3JvdXBpbmc7XG4gICAgICAgIGZpZWxkLl9yYWRpb09wdGlvbnMgPSBbLi4udGhpcy5fcmFkaW9PcHRpb25zXTtcbiAgICAgICAgZmllbGQuX2RhdGVQaWNrZXJGb3JtYXQgPSB0aGlzLl9kYXRlUGlja2VyRm9ybWF0O1xuICAgICAgICBmaWVsZC5fZGF0ZVBpY2tlck1pbiA9IHRoaXMuX2RhdGVQaWNrZXJNaW47XG4gICAgICAgIGZpZWxkLl9kYXRlUGlja2VyTWF4ID0gdGhpcy5fZGF0ZVBpY2tlck1heDtcbiAgICAgICAgZmllbGQuX2RhdGVQaWNrZXJTaG93VGltZSA9IHRoaXMuX2RhdGVQaWNrZXJTaG93VGltZTtcbiAgICAgICAgZmllbGQuX2RhdGVQaWNrZXJTaG93U2Vjb25kcyA9IHRoaXMuX2RhdGVQaWNrZXJTaG93U2Vjb25kcztcbiAgICAgICAgZmllbGQuX21heExlbmd0aCA9IHRoaXMuX21heExlbmd0aDtcbiAgICAgICAgZmllbGQuX21pbkxlbmd0aCA9IHRoaXMuX21pbkxlbmd0aDtcbiAgICAgICAgZmllbGQuX3BhdHRlcm4gPSB0aGlzLl9wYXR0ZXJuO1xuICAgICAgICBmaWVsZC5fbWFzayA9IHRoaXMuX21hc2s7XG4gICAgICAgIGZpZWxkLl9zbG90Q2hhciA9IHRoaXMuX3Nsb3RDaGFyO1xuICAgICAgICBmaWVsZC5fZmlsZU11bHRpcGxlID0gdGhpcy5fZmlsZU11bHRpcGxlO1xuICAgICAgICBmaWVsZC5fZmlsZU1heEZpbGVTaXplID0gdGhpcy5fZmlsZU1heEZpbGVTaXplO1xuICAgICAgICBmaWVsZC5fZmlsZUFjY2VwdCA9IHRoaXMuX2ZpbGVBY2NlcHQ7XG4gICAgICAgIGZpZWxkLl9maWxlT25TZWxlY3RIYW5kbGVyID0gdGhpcy5fZmlsZU9uU2VsZWN0SGFuZGxlcjtcbiAgICAgICAgZmllbGQuX2ltYWdlUHJldmlldyA9IHRoaXMuX2ltYWdlUHJldmlldztcbiAgICAgICAgZmllbGQuX2ltYWdlVXJsSW5wdXRIaWRkZW5PbkRpc2FibGVkID0gdGhpcy5faW1hZ2VVcmxJbnB1dEhpZGRlbk9uRGlzYWJsZWQ7XG4gICAgICAgIGZpZWxkLl9jdXN0b21Db21wb25lbnRUeXBlID0gdGhpcy5fY3VzdG9tQ29tcG9uZW50VHlwZTtcbiAgICAgICAgZmllbGQuX2N1c3RvbUNvbXBvbmVudElucHV0cyA9IHRoaXMuX2N1c3RvbUNvbXBvbmVudElucHV0cztcbiAgICAgICAgZmllbGQuX2N1c3RvbUNvbXBvbmVudFdyYXBwZXJzID0gdGhpcy5fY3VzdG9tQ29tcG9uZW50V3JhcHBlcnM7XG4gICAgICAgIGZpZWxkLl9sb2NhbGUgPSB0aGlzLl9sb2NhbGU7XG4gICAgICAgIGZpZWxkLl9jdXJyZW5jeSA9IHRoaXMuX2N1cnJlbmN5O1xuICAgICAgICBmaWVsZC5fY3VycmVuY3lEaXNwbGF5ID0gdGhpcy5fY3VycmVuY3lEaXNwbGF5O1xuICAgICAgICBmaWVsZC5fY3VycmVuY3lGcm9tUHJvcGVydHkgPSB0aGlzLl9jdXJyZW5jeUZyb21Qcm9wZXJ0eTtcbiAgICAgICAgZmllbGQuX2lucHV0VHJpbSA9IHRoaXMuX2lucHV0VHJpbTtcbiAgICAgICAgcmV0dXJuIGZpZWxkO1xuICAgIH1cbn1cbiJdfQ==
372
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQuZGVzY3JpcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9hcGkvc3JjL2VkaXRvci9kZXNjcmlwdG9ycy9maWVsZC5kZXNjcmlwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBb0IsNkJBQTZCLEVBQUUsMEJBQTBCLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUl6SCxPQUFPLEVBQUMsbUJBQW1CLEVBQUUsY0FBYyxFQUFFLHFCQUFxQixFQUFFLGdCQUFnQixFQUFFLHFCQUFxQixFQUFFLGdCQUFnQixFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDbEssT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFHekQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFvRnpELE1BQU0sT0FBTyxvQkFBaUksU0FBUSxnQkFLcko7SUE0REcsWUFBWSxNQUFzQyxFQUFFLFFBQWdCO1FBQ2hFLEtBQUssQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7UUE1RHBCLGVBQVUsR0FBdUIsa0JBQWtCLENBQUMsSUFBSSxDQUFDO1FBWXpELHVCQUFrQixHQUFHLElBQUksQ0FBQztRQUsxQixxQkFBZ0IsR0FBK0IsUUFBUSxDQUFDO1FBR2hFLDRCQUE0QjtRQUNwQixrQkFBYSxHQUFzQixFQUFFLENBQUM7SUF3QzlDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLFNBQTZCLEVBQUUsR0FBRyxJQUFXO1FBQ3ZELFFBQVEsU0FBUyxFQUFFLENBQUM7WUFDaEIsS0FBSyxrQkFBa0IsQ0FBQyxNQUFNO2dCQUMxQixPQUFPLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUMzQixLQUFLLGtCQUFrQixDQUFDLEtBQUs7Z0JBQ3pCLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzFCLEtBQUssa0JBQWtCLENB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Q0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFDL0MsS0FBSyxDQUFDLHFCQUFxQixHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQztRQUN6RCxLQUFLLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDbkMsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUeXBlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QWJzdHJhY3RDb250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7SUVkaXRvckRlc2NyaXB0b3IsIGZyb21FbnVtQ29uc3RhbnRzQXNWYWx1ZUFycmF5LCBmcm9tRW51bVZhbHVlc0FzVmFsdWVBcnJheX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9jb3JlJztcbmltcG9ydCB7SW5wdXRUcmltVHlwZX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9mb3JtL2FwaSc7XG5pbXBvcnQge0VudW1EZXNjcmlwdG9yfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL21vZGVsJztcblxuaW1wb3J0IHtlbWFpbFZhbGlkYXRpb25OYW1lLCBlbWFpbFZhbGlkYXRvciwgbWF4RGF0ZVZhbGlkYXRpb25OYW1lLCBtYXhEYXRlVmFsaWRhdG9yLCBtaW5EYXRlVmFsaWRhdGlvbk5hbWUsIG1pbkRhdGVWYWxpZGF0b3J9IGZyb20gJy4uL2hlbHBlcnMvZmllbGQtdmFsaWRhdG9ycyc7XG5pbXBvcnQge0ZpZWxkSW5wdXRUeXBlRW51bX0gZnJvbSAnLi4vbW9kZWxzL2ZpZWxkLm1vZGVsJztcbmltcG9ydCB7QUZvcm1seUN1c3RvbUZpZWxkQ29tcG9uZW50fSBmcm9tICcuLi9tb2RlbHMvZm9ybWx5LWN1c3RvbS1maWVsZC5tb2RlbCc7XG5pbXBvcnQge1JhZGlvVmFsdWV9IGZyb20gJy4uL21vZGVscy9yYWRpby5tb2RlbCc7XG5pbXBvcnQge0FGaWVsZERlc2NyaXB0b3J9IGZyb20gJy4vZmllbGQtYmFzZS5kZXNjcmlwdG9yJztcblxuZXhwb3J0IHR5cGUgRmllbGRJbnB1dERlc2NyaXB0b3JUeXBlID0gc3RyaW5nIHwgc3RyaW5nW10gfCBudW1iZXIgfCBib29sZWFuIHwgRGF0ZSB8IEZpbGUgfCBGaWxlW107XG5cbmV4cG9ydCB0eXBlIEZpZWxkSW5wdXRUZXh0T3B0c1R5cGUgPSB7XG4gICAgZW1haWw/OiBib29sZWFuO1xufSAmIEZpZWxkSW5wdXRUZXh0VmFsaWRhdGlvbk9wdHNUeXBlO1xuXG5leHBvcnQgdHlwZSBGaWVsZElucHV0VGV4dGFyZWFPcHRzVHlwZSA9IHtcbiAgICByb3dzPzogbnVtYmVyO1xufSAmIEZpZWxkSW5wdXRUZXh0VmFsaWRhdGlvbk9wdHNUeXBlO1xuXG5leHBvcnQgdHlwZSBGaWVsZElucHV0VGV4dFZhbGlkYXRpb25PcHRzVHlwZSA9IHtcbiAgICBtaW5MZW5ndGg/OiBudW1iZXI7XG4gICAgbWF4TGVuZ3RoPzogbnVtYmVyO1xuICAgIHBhdHRlcm4/OiBzdHJpbmcgfCBSZWdFeHA7XG59O1xuXG5leHBvcnQgdHlwZSBGaWVsZElucHV0Q3VycmVuY3lPcHRzVHlwZTxQcm9wZXJ0eSA9IHN0cmluZz4gPSB7XG4gICAgY3VycmVuY3lQcm9wZXJ0eT86IFByb3BlcnR5O1xuICAgIGN1cnJlbmN5Pzogc3RyaW5nO1xuICAgIGN1cnJlbmN5RGlzcGxheT86ICdzeW1ib2wnIHwgJ2NvZGUnIHwgJ25hbWUnO1xufSAmIEZpZWxkSW5wdXROdW1iZXJHcm91cGluZ09wdHNUeXBlICZcbiAgICBGaWVsZElucHV0TnVtYmVyRnJhY3Rpb25PcHRzVHlwZSAmXG4gICAgRmllbGRJbnB1dE51bWJlclZhbGlkYXRpb25PcHRzVHlwZSAmXG4gICAgRmllbGRJbnB1dExvY2FsZU9wdHNUeXBlO1xuXG5leHBvcnQgdHlwZSBGaWVsZElucHV0TnVtYmVyT3B0c1R5cGUgPSBGaWVsZElucHV0TnVtYmVyR3JvdXBpbmdPcHRzVHlwZSAmIEZpZWxkSW5wdXROdW1iZXJGcmFjdGlvbk9wdHNUeXBlICYgRmllbGRJbnB1dE51bWJlclZhbGlkYXRpb25PcHRzVHlwZSAmIEZpZWxkSW5wdXRMb2NhbGVPcHRzVHlwZTtcblxuZXhwb3J0IHR5cGUgRmllbGRJbnB1dE51bWJlckdyb3VwaW5nT3B0c1R5cGUgPSB7XG4gICAgZ3JvdXBTZXBhcmF0b3I/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgRmllbGRJbnB1dE51bWJlclZhbGlkYXRpb25PcHRzVHlwZSA9IHtcbiAgICBtaW4/OiBudW1iZXI7XG4gICAgbWF4PzogbnVtYmVyO1xuICAgIHN0ZXA/OiBudW1iZXI7XG4gICAgYXV0b0NvcnJlY3Q/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgRmllbGRJbnB1dE51bWJlckZyYWN0aW9uT3B0c1R5cGUgPSB7XG4gICAgbWluRnJhY3Rpb25EaWdpdHM/OiBudW1iZXI7XG4gICAgbWF4RnJhY3Rpb25EaWdpdHM/OiBudW1iZXI7XG59O1xuXG5leHBvcnQgdHlwZSBGaWVsZElucHV0TG9jYWxlT3B0c1R5cGUgPSB7XG4gICAgbG9jYWxlPzogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgRmllbGRJbnB1dERhdGVQaWNrZXJPcHRzVHlwZSA9IHtcbiAgICBmb3JtYXQ/OiBzdHJpbmc7XG4gICAgbWluPzogRGF0ZTtcbiAgICBtYXg/OiBEYXRlO1xuICAgIHNob3dUaW1lPzogYm9vbGVhbjtcbiAgICBzaG93U2Vjb25kcz86IGJvb2xlYW47XG59ICYgRGF0ZU9wdHNUeXBlO1xuXG5leHBvcnQgdHlwZSBEYXRlT3B0c1R5cGUgPSB7XG4gICAgYXNEYXRlT2JqPzogYm9vbGVhbjtcbiAgICB1dGM/OiBib29sZWFuO1xuICAgIG5vVGltZT86IGJvb2xlYW47XG4gICAgbm9UaW1lWm9uZT86IGJvb2xlYW47XG59O1xuXG5leHBvcnQgdHlwZSBGaWVsZElucHV0RmlsZU9wdHMgPSB7XG4gICAgbXVsdGlwbGU/OiBib29sZWFuO1xuICAgIG1heEZpbGVTaXplPzogbnVtYmVyO1xuICAgIGFjY2VwdD86IHN0cmluZztcbiAgICBvbkZpbGVTZWxlY3RIYW5kbGVyRm4/OiBGaWVsZElucHV0RmlsZU9uU2VsZWN0SGFuZGxlckZuVHlwZTtcbn07XG5cbmV4cG9ydCB0eXBlIEZpZWxkSW5wdXRJbWFnZVVybE9wdHMgPSB7XG4gICAgbXVsdGlwbGU/OiBib29sZWFuO1xuICAgIHByZXZpZXc/OiBib29sZWFuO1xuICAgIGlucHV0VmlzaWJsZU9uRGlzYWJsZWQ/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IHR5cGUgRmllbGRJbnB1dENvbXBvbmVudE9wdHMgPSB7XG4gICAgZmllbGRXcmFwcGVycz86IHN0cmluZ1tdO1xuICAgIGlucHV0cz86IFJlY29yZDxzdHJpbmcsIGFueT47XG59O1xuXG5leHBvcnQgdHlwZSBGaWVsZElucHV0RmlsZU9uU2VsZWN0SGFuZGxlckZuVHlwZSA9IChmaWxlOiBGaWxlW10gfCBudWxsLCBjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpID0+IHZvaWQ7XG5cbmV4cG9ydCBjbGFzcyBGaWVsZElucHV0RGVzY3JpcHRvcjxFZGl0b3JNb2RlbCwgRmllbGRNb2RlbCA9IEZpZWxkSW5wdXREZXNjcmlwdG9yVHlwZSwgRmllbGRWYWx1ZSA9IEZpZWxkTW9kZWwsIFBhcmVudEVkaXRvck1vZGVsID0gdW5kZWZpbmVkPiBleHRlbmRzIEFGaWVsZERlc2NyaXB0b3I8XG4gICAgRmllbGRNb2RlbCxcbiAgICBFZGl0b3JNb2RlbCxcbiAgICBGaWVsZFZhbHVlLFxuICAgIFBhcmVudEVkaXRvck1vZGVsXG4+IHtcbiAgICBwcml2YXRlIF9maWVsZFR5cGU6IEZpZWxkSW5wdXRUeXBlRW51bSA9IEZpZWxkSW5wdXRUeXBlRW51bS5UZXh0O1xuXG4gICAgLy8gdGV4dGFyZWEgc3BlY2lmaWMgcHJvcGVydGllc1xuICAgIHByaXZhdGUgX3Jvd3M/OiBudW1iZXI7XG5cbiAgICAvLyBudW1iZXIgc3BlY2lmaWMgcHJvcGVydGllc1xuICAgIHByaXZhdGUgX251bWJlck1pbj86IG51bWJlcjtcbiAgICBwcml2YXRlIF9udW1iZXJNYXg/OiBudW1iZXI7XG4gICAgcHJpdmF0ZSBfbnVtYmVyU3RlcD86IG51bWJlcjtcbiAgICBwcml2YXRlIF9udW1iZXJBdXRvQ29ycmVjdD86IGJvb2xlYW47XG4gICAgcHJpdmF0ZSBfbnVtYmVyTWluRnJhY3Rpb25EaWdpdHM/OiBudW1iZXI7XG4gICAgcHJpdmF0ZSBfbnVtYmVyTWF4RnJhY3Rpb25EaWdpdHM/OiBudW1iZXI7XG4gICAgcHJpdmF0ZSBfbnVtYmVyVXNlR3JvdXBpbmcgPSB0cnVlO1xuICAgIHByaXZhdGUgX2xvY2FsZT86IHN0cmluZztcblxuICAgIC8vIGN1cnJlbmN5IHNwZWNpZmljIHByb3BlcnRpZXNcbiAgICBwcml2YXRlIF9jdXJyZW5jeT86IHN0cmluZztcbiAgICBwcml2YXRlIF9jdXJyZW5jeURpc3BsYXk6ICdzeW1ib2wnIHwgJ2NvZGUnIHwgJ25hbWUnID0gJ3N5bWJvbCc7XG4gICAgcHJpdmF0ZSBfY3VycmVuY3lGcm9tUHJvcGVydHk/OiBzdHJpbmc7XG5cbiAgICAvLyByYWRpbyBzcGVjaWZpYyBwcm9wZXJ0aWVzXG4gICAgcHJpdmF0ZSBfcmFkaW9PcHRpb25zOiBBcnJheTxSYWRpb1ZhbHVlPiA9IFtdO1xuXG4gICAgLy8gZGF0ZXBpY2tlciBzcGVjaWZpYyBwcm9wZXJ0aWVzXG4gICAgcHJpdmF0ZSBfZGF0ZVBpY2tlckZvcm1hdD86IHN0cmluZztcbiAgICBwcml2YXRlIF9kYXRlUGlja2VyTWluPzogRGF0ZTtcbiAgICBwcml2YXRlIF9kYXRlUGlja2VyTWF4PzogRGF0ZTtcbiAgICBwcml2YXRlIF9kYXRlUGlja2VyU2hvd1RpbWU/OiBib29sZWFuO1xuICAgIHByaXZhdGUgX2RhdGVQaWNrZXJTaG93U2Vjb25kcz86IGJvb2xlYW47XG4gICAgcHJpdmF0ZSBfZGF0ZVBpY2tlclZhbHVlVXRjPzogYm9vbGVhbjtcbiAgICBwcml2YXRlIF9kYXRlUGlja2VyVmFsdWVOb1RpbWV6b25lPzogYm9vbGVhbjtcbiAgICBwcml2YXRlIF9kYXRlUGlja2VyVmFsdWVOb1RpbWU/OiBib29sZWFuO1xuICAgIHByaXZhdGUgX2RhdGVQaWNrZXJWYWx1ZUFzRGF0ZU9iaj86IGJvb2xlYW47XG5cbiAgICAvLyBpbnB1dCBzcGVjaWZpYyBwcm9wZXJ0aWVzXG4gICAgcHJpdmF0ZSBfbWF4TGVuZ3RoPzogbnVtYmVyO1xuICAgIHByaXZhdGUgX21pbkxlbmd0aD86IG51bWJlcjtcbiAgICBwcml2YXRlIF9wYXR0ZXJuPzogc3RyaW5nIHwgUmVnRXhwO1xuICAgIHByaXZhdGUgX2lucHV0VHJpbT86IElucHV0VHJpbVR5cGU7XG5cbiAgICAvLyBtYXNrIHNwZWNpZmljIHByb3BlcnRpZXNcbiAgICBwcml2YXRlIF9tYXNrPzogc3RyaW5nO1xuICAgIHByaXZhdGUgX3Nsb3RDaGFyPzogc3RyaW5nO1xuXG4gICAgLy8gZmlsZSBzcGVjaWZpYyBwcm9wZXJ0aWVzXG4gICAgcHJpdmF0ZSBfZmlsZU11bHRpcGxlPzogYm9vbGVhbjtcbiAgICBwcml2YXRlIF9maWxlTWF4RmlsZVNpemU/OiBudW1iZXI7XG4gICAgcHJpdmF0ZSBfZmlsZUFjY2VwdD86IHN0cmluZztcbiAgICBwcml2YXRlIF9maWxlT25TZWxlY3RIYW5kbGVyPzogRmllbGRJbnB1dEZpbGVPblNlbGVjdEhhbmRsZXJGblR5cGU7XG5cbiAgICAvLyBpbWFnZSBzcGVjaWZpYyBwcm9wZXJ0aWVzXG4gICAgcHJpdmF0ZSBfaW1hZ2VQcmV2aWV3PzogYm9vbGVhbjtcbiAgICBwcml2YXRlIF9pbWFnZVVybElucHV0SGlkZGVuT25EaXNhYmxlZD86IGJvb2xlYW47XG5cbiAgICAvLyBjdXN0b20gY29tcG9uZW50IHByb3BlcnRpZXNcbiAgICBwcml2YXRlIF9jdXN0b21Db21wb25lbnRUeXBlPzogVHlwZTxBRm9ybWx5Q3VzdG9tRmllbGRDb21wb25lbnQ+O1xuICAgIHByaXZhdGUgX2N1c3RvbUNvbXBvbmVudElucHV0cz86IFJlY29yZDxzdHJpbmcsIGFueT47XG4gICAgcHJpdmF0ZSBfY3VzdG9tQ29tcG9uZW50V3JhcHBlcnM/OiBzdHJpbmdbXTtcblxuICAgIGNvbnN0cnVjdG9yKGVkaXRvcjogSUVkaXRvckRlc2NyaXB0b3I8RWRpdG9yTW9kZWw+LCBwcm9wZXJ0eTogc3RyaW5nKSB7XG4gICAgICAgIHN1cGVyKGVkaXRvciwgcHJvcGVydHkpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGNvbnZlcnRzIGZpZWxkIHRvIGdpdmVuIHR5cGUgd2l0aCBhZGRpdGlvbmFsIGFyZ3VtZW50c1xuICAgICAqIEBwYXJhbSBmaWVsZFR5cGUgZmllbGQgdHlwZSBlbnVtXG4gICAgICogQHBhcmFtIGFyZ3MgYW55IGFkZGl0aW9uYWwgYXJndW1lbnRzIGZvciBmaWVsZCAob3B0aW9uYWwpXG4gICAgICovXG4gICAgcHVibGljIGFzVHlwZShmaWVsZFR5cGU6IEZpZWxkSW5wdXRUeXBlRW51bSwgLi4uYXJnczogYW55W10pOiB0aGlzIHtcbiAgICAgICAgc3dpdGNoIChmaWVsZFR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgRmllbGRJbnB1dFR5cGVFbnVtLkhpZGRlbjpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5hc0hpZGRlbigpO1xuICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0VHlwZUVudW0uTGFiZWw6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXNMYWJlbCgpO1xuICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0VHlwZUVudW0uVGV4dGFyZWE6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXNUZXh0YXJlYSguLi5hcmdzKTtcbiAgICAgICAgICAgIGNhc2UgRmllbGRJbnB1dFR5cGVFbnVtLk51bWJlcjpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5hc051bWJlciguLi5hcmdzKTtcbiAgICAgICAgICAgIGNhc2UgRmllbGRJbnB1dFR5cGVFbnVtLkN1cnJlbmN5OlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmFzQ3VycmVuY3koLi4uYXJncyk7XG4gICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXRUeXBlRW51bS5Td2l0Y2g6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXNTd2l0Y2goKTtcbiAgICAgICAgICAgIGNhc2UgRmllbGRJbnB1dFR5cGVFbnVtLlJhZGlvOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmFzUmFkaW8oYXJnc1swXSwgYXJnc1sxXSk7XG4gICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXRUeXBlRW51bS5EYXRlcGlja2VyOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmFzRGF0ZVBpY2tlciguLi5hcmdzKTtcbiAgICAgICAgICAgIGNhc2UgRmllbGRJbnB1dFR5cGVFbnVtLk1hc2s6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXNNYXNrKGFyZ3NbMF0sIGFyZ3NbMV0pO1xuICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0VHlwZUVudW0uRmlsZTpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5hc0ZpbGUoLi4uYXJncyk7XG4gICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXRUeXBlRW51bS5JbWFnZUZpbGU6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXNJbWFnZUZpbGUoLi4uYXJncyk7XG4gICAgICAgICAgICBjYXNlIEZpZWxkSW5wdXRUeXBlRW51bS5JbWFnZVVybDpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5hc0ltYWdlVXJsKC4uLmFyZ3MpO1xuICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0VHlwZUVudW0uQ3VzdG9tOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmFzQ3VzdG9tQ29tcG9uZW50KGFyZ3NbMF0sIGFyZ3NbMV0pO1xuICAgICAgICAgICAgY2FzZSBGaWVsZElucHV0VHlwZUVudW0uVGV4dDpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5hc1RleHQoYXJnc1swXSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGZpZWxkVHlwZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpZWxkVHlwZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHJvd3MoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yb3dzO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbnVtYmVyTWluKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbnVtYmVyTWluO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbnVtYmVyTWF4KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbnVtYmVyTWF4O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbnVtYmVyU3RlcCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX251bWJlclN0ZXA7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBudW1iZXJBdXRvQ29ycmVjdCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX251bWJlckF1dG9Db3JyZWN0O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgbnVtYmVyTWluRnJhY3Rpb25EaWdpdHMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9udW1iZXJNaW5GcmFjdGlvbkRpZ2l0cztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IG51bWJlck1heEZyYWN0aW9uRGlnaXRzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbnVtYmVyTWF4RnJhY3Rpb25EaWdpdHM7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBudW1iZXJVc2VHcm91cGluZygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX251bWJlclVzZUdyb3VwaW5nO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgcmFkaW9PcHRpb25zKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fcmFkaW9PcHRpb25zO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGF0ZVBpY2tlckZvcm1hdCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGVQaWNrZXJGb3JtYXQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkYXRlUGlja2VyTWluKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0ZVBpY2tlck1pbjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGRhdGVQaWNrZXJNYXgoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRlUGlja2VyTWF4O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGF0ZVBpY2tlclNob3dUaW1lKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0ZVBpY2tlclNob3dUaW1lO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGF0ZVBpY2tlclNob3dTZWNvbmRzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0ZVBpY2tlclNob3dTZWNvbmRzO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGF0ZVBpY2tlclZhbHVlVXRjKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGF0ZVBpY2tlclZhbHVlVXRjO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgZGF0ZVBpY2tlclZhbHVlTm9UaW1lem9uZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RhdGVQaWNrZXJWYWx1ZU5vVGltZXpvbmU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkYXRlUGlja2VyVmFsdWVOb1RpbWUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRlUGlja2VyVmFsdWVOb1RpbWU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBkYXRlUGlja2VyVmFsdWVBc0RhdGVPYmooKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRlUGlja2VyVmFsdWVBc0RhdGVPYmo7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBtYXhMZW5ndGgoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9tYXhMZW5ndGg7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBtaW5MZW5ndGgoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9taW5MZW5ndGg7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBwYXR0ZXJuKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGF0dGVybjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHRyaW1PcHRpb24oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pbnB1dFRyaW07XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBtYXNrKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fbWFzaztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHNsb3RDaGFyKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2xvdENoYXI7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBmaWxlTXVsdGlwbGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9maWxlTXVsdGlwbGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBmaWxlTWF4RmlsZVNpemUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9maWxlTWF4RmlsZVNpemU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBmaWxlQWNjZXB0KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fZmlsZUFjY2VwdDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGZpbGVPblNlbGVjdEhhbmRsZXIoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9maWxlT25TZWxlY3RIYW5kbGVyO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaW1hZ2VQcmV2aWV3KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5faW1hZ2VQcmV2aWV3O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaW1hZ2VVcmxJbnB1dFZpc2libGVPbkRpc2FibGVkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5faW1hZ2VVcmxJbnB1dEhpZGRlbk9uRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXN0b21Db21wb25lbnRUeXBlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY3VzdG9tQ29tcG9uZW50VHlwZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1c3RvbUNvbXBvbmVudElucHV0cygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2N1c3RvbUNvbXBvbmVudElucHV0cztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1c3RvbUNvbXBvbmVudFdyYXBwZXJzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fY3VzdG9tQ29tcG9uZW50V3JhcHBlcnM7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBsb2NhbGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9sb2NhbGU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBjdXJyZW5jeSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2N1cnJlbmN5O1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgY3VycmVuY3lGcm9tUHJvcGVydHkoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jdXJyZW5jeUZyb21Qcm9wZXJ0eTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGN1cnJlbmN5RGlzcGxheSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2N1cnJlbmN5RGlzcGxheTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXNIaWRkZW4oKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2ZpZWxkVHlwZSA9IEZpZWxkSW5wdXRUeXBlRW51bS5IaWRkZW47XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc0xhYmVsKCk6IHRoaXMge1xuICAgICAgICB0aGlzLl9maWVsZFR5cGUgPSBGaWVsZElucHV0VHlwZUVudW0uTGFiZWw7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc1RleHQob3B0cz86IEZpZWxkSW5wdXRUZXh0T3B0c1R5cGUpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fZmllbGRUeXBlID0gRmllbGRJbnB1dFR5cGVFbnVtLlRleHQ7XG4gICAgICAgIHJldHVybiB0aGlzLndpdGhUZXh0VmFsaWRhdGlvbihvcHRzKS53aXRoVGV4dFZhbGlkYXRpb25FbWFpbChvcHRzPy5lbWFpbCA/PyBmYWxzZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzVGV4dGFyZWEob3B0cz86IEZpZWxkSW5wdXRUZXh0YXJlYU9wdHNUeXBlKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2ZpZWxkVHlwZSA9IEZpZWxkSW5wdXRUeXBlRW51bS5UZXh0YXJlYTtcbiAgICAgICAgdGhpcy5fcm93cyA9IG9wdHM/LnJvd3M7XG4gICAgICAgIHJldHVybiB0aGlzLndpdGhUZXh0VmFsaWRhdGlvbihvcHRzKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXNOdW1iZXIob3B0cz86IEZpZWxkSW5wdXROdW1iZXJPcHRzVHlwZSk6IHRoaXMge1xuICAgICAgICB0aGlzLl9maWVsZFR5cGUgPSBGaWVsZElucHV0VHlwZUVudW0uTnVtYmVyO1xuICAgICAgICByZXR1cm4gdGhpcy53aXRoTnVtYmVyR3JvdXBpbmcob3B0cz8uZ3JvdXBTZXBhcmF0b3IgPz8gZmFsc2UpXG4gICAgICAgICAgICAud2l0aE51bWJlckZyYWN0aW9ucyhvcHRzKVxuICAgICAgICAgICAgLndpdGhOdW1iZXJWYWxpZGF0aW9uKG9wdHMpXG4gICAgICAgICAgICAud2l0aExvY2FsZShvcHRzPy5sb2NhbGUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc0N1cnJlbmN5KG9wdHM/OiBGaWVsZElucHV0Q3VycmVuY3lPcHRzVHlwZTxrZXlvZiBFZGl0b3JNb2RlbD4pOiB0aGlzIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYXNDdXJyZW5jeVVuc2FmZSg8RmllbGRJbnB1dEN1cnJlbmN5T3B0c1R5cGU+e1xuICAgICAgICAgICAgLi4ub3B0cyxcbiAgICAgICAgICAgIGN1cnJlbmN5UHJvcGVydHk6IG9wdHM/LmN1cnJlbmN5UHJvcGVydHkgPyAob3B0cy5jdXJyZW5jeVByb3BlcnR5IGFzIHN0cmluZykgOiB1bmRlZmluZWRcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzQ3VycmVuY3lVbnNhZmUob3B0cz86IEZpZWxkSW5wdXRDdXJyZW5jeU9wdHNUeXBlKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2ZpZWxkVHlwZSA9IEZpZWxkSW5wdXRUeXBlRW51bS5DdXJyZW5jeTtcbiAgICAgICAgdGhpcy5fY3VycmVuY3lGcm9tUHJvcGVydHkgPSBvcHRzPy5jdXJyZW5jeVByb3BlcnR5O1xuICAgICAgICB0aGlzLl9jdXJyZW5jeSA9IG9wdHM/LmN1cnJlbmN5ID8/IHRoaXMuX2N1cnJlbmN5O1xuICAgICAgICB0aGlzLl9jdXJyZW5jeURpc3BsYXkgPSBvcHRzPy5jdXJyZW5jeURpc3BsYXkgPz8gdGhpcy5fY3VycmVuY3lEaXNwbGF5O1xuICAgICAgICByZXR1cm4gdGhpcy53aXRoTnVtYmVyR3JvdXBpbmcob3B0cz8uZ3JvdXBTZXBhcmF0b3IgPz8gZmFsc2UpXG4gICAgICAgICAgICAud2l0aE51bWJlckZyYWN0aW9ucyh7XG4gICAgICAgICAgICAgICAgbWF4RnJhY3Rpb25EaWdpdHM6IG9wdHM/Lm1heEZyYWN0aW9uRGlnaXRzID8/IDIsXG4gICAgICAgICAgICAgICAgbWluRnJhY3Rpb25EaWdpdHM6IG9wdHM/Lm1pbkZyYWN0aW9uRGlnaXRzID8/IDJcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAud2l0aE51bWJlclZhbGlkYXRpb24ob3B0cylcbiAgICAgICAgICAgIC53aXRoTG9jYWxlKG9wdHM/LmxvY2FsZSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzU3dpdGNoKCk6IHRoaXMge1xuICAgICAgICB0aGlzLl9maWVsZFR5cGUgPSBGaWVsZElucHV0VHlwZUVudW0uU3dpdGNoO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgYXNSYWRpbyhvcHRpb25zOiBBcnJheTxzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuPiwgb3B0aW9uc1RpdGxlUGF0aD86IHN0cmluZyk6IHRoaXMge1xuICAgICAgICB0aGlzLl9maWVsZFR5cGUgPSBGaWVsZElucHV0VHlwZUVudW0uUmFkaW87XG4gICAgICAgIHRoaXMuX3JhZGlvT3B0aW9ucyA9IG9wdGlvbnMubWFwKG8gPT4gPFJhZGlvVmFsdWU+e3ZhbHVlOiBvLCB0aXRsZTogYCR7b3B0aW9uc1RpdGxlUGF0aCA/IGAke29wdGlvbnNUaXRsZVBhdGh9LmAgOiAnJ30ke299YH0pO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgYXNSYWRpb0Zyb21FbnVtPEVudW0+KGVudW1Nb2RlbDogRW51bURlc2NyaXB0b3I8RW51bT4sIHZhbHVlcz86IEFycmF5PEVudW0+KTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2ZpZWxkVHlwZSA9IEZpZWxkSW5wdXRUeXBlRW51bS5SYWRpbztcbiAgICAgICAgdGhpcy5fcmFkaW9PcHRpb25zID0gQXJyYXkuaXNBcnJheSh2YWx1ZXMpXG4gICAgICAgICAgICA/IGZyb21FbnVtVmFsdWVzQXNWYWx1ZUFycmF5PEVudW0+KGVudW1Nb2RlbC50eXBlLCB2YWx1ZXMsIGVudW1Nb2RlbC5uYW1lQXNWYWx1ZSwgZW51bU1vZGVsLmkxOG5CYXNlS2V5ID8/IHVuZGVmaW5lZClcbiAgICAgICAgICAgIDogZnJvbUVudW1Db25zdGFudHNBc1ZhbHVlQXJyYXkoZW51bU1vZGVsLnR5cGUsIGVudW1Nb2RlbC5uYW1lQXNWYWx1ZSwgZW51bU1vZGVsLmkxOG5CYXNlS2V5ID8/IHVuZGVmaW5lZCk7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc0RhdGVQaWNrZXIob3B0cz86IEZpZWxkSW5wdXREYXRlUGlja2VyT3B0c1R5cGUpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fZmllbGRUeXBlID0gRmllbGRJbnB1dFR5cGVFbnVtLkRhdGVwaWNrZXI7XG4gICAgICAgIHRoaXMuX2RhdGVQaWNrZXJGb3JtYXQgPSBvcHRzPy5mb3JtYXQ7XG4gICAgICAgIHRoaXMuX2RhdGVQaWNrZXJNaW4gPSBvcHRzPy5taW47XG4gICAgICAgIHRoaXMuX2RhdGVQaWNrZXJNYXggPSBvcHRzPy5tYXg7XG4gICAgICAgIHRoaXMuX2RhdGVQaWNrZXJTaG93VGltZSA9IG9wdHM/LnNob3dUaW1lO1xuICAgICAgICB0aGlzLl9kYXRlUGlja2VyU2hvd1NlY29uZHMgPSBvcHRzPy5zaG93U2Vjb25kcztcbiAgICAgICAgdGhpcy5fZGF0ZVBpY2tlclZhbHVlQXNEYXRlT2JqID0gb3B0cz8uYXNEYXRlT2JqO1xuXG4gICAgICAgIHRoaXMud2l0aERhdGVWYWx1ZSh7XG4gICAgICAgICAgICBhc0RhdGVPYmo6IG9wdHM/LmFzRGF0ZU9iaixcbiAgICAgICAgICAgIHV0Yzogb3B0cz8udXRjLFxuICAgICAgICAgICAgbm9UaW1lWm9uZTogb3B0cz8ubm9UaW1lWm9uZSxcbiAgICAgICAgICAgIG5vVGltZTogb3B0cz8ubm9UaW1lXG4gICAgICAgIH0pO1xuICAgICAgICBpZiAob3B0cz8ubWluICE9IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy53aXRoVmFsaWRhdGlvbihtaW5EYXRlVmFsaWRhdGlvbk5hbWUsIG1pbkRhdGVWYWxpZGF0b3Iob3B0cy5taW4pKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAob3B0cz8ubWF4ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMud2l0aFZhbGlkYXRpb24obWF4RGF0ZVZhbGlkYXRpb25OYW1lLCBtYXhEYXRlVmFsaWRhdG9yKG9wdHMubWF4KSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgYXNNYXNrKG1hc2s6IHN0cmluZywgc2xvdENoYXI6IHN0cmluZyk6IHRoaXMge1xuICAgICAgICB0aGlzLl9maWVsZFR5cGUgPSBGaWVsZElucHV0VHlwZUVudW0uTWFzaztcbiAgICAgICAgdGhpcy5fbWFzayA9IG1hc2s7XG4gICAgICAgIHRoaXMuX3Nsb3RDaGFyID0gc2xvdENoYXI7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc0ZpbGUob3B0cz86IEZpZWxkSW5wdXRGaWxlT3B0cyk6IHRoaXMge1xuICAgICAgICB0aGlzLl9maWVsZFR5cGUgPSBGaWVsZElucHV0VHlwZUVudW0uRmlsZTtcbiAgICAgICAgdGhpcy5fZmlsZU11bHRpcGxlID0gb3B0cz8ubXVsdGlwbGU7XG4gICAgICAgIHRoaXMuX2ZpbGVNYXhGaWxlU2l6ZSA9IG9wdHM/Lm1heEZpbGVTaXplO1xuICAgICAgICB0aGlzLl9maWxlQWNjZXB0ID0gb3B0cz8uYWNjZXB0O1xuICAgICAgICByZXR1cm4gdGhpcy53aXRoRmlsZU9uU2VsZWN0SGFuZGxlcihvcHRzPy5vbkZpbGVTZWxlY3RIYW5kbGVyRm4pO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc0ltYWdlRmlsZShvcHRzPzogRmllbGRJbnB1dEZpbGVPcHRzKTogdGhpcyB7XG4gICAgICAgIHRoaXMuYXNGaWxlKG9wdHMpO1xuICAgICAgICB0aGlzLl9maWVsZFR5cGUgPSBGaWVsZElucHV0VHlwZUVudW0uSW1hZ2VGaWxlO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgYXNJbWFnZVVybChvcHRzPzogRmllbGRJbnB1dEltYWdlVXJsT3B0cyk6IHRoaXMge1xuICAgICAgICB0aGlzLl9maWVsZFR5cGUgPSBGaWVsZElucHV0VHlwZUVudW0uSW1hZ2VVcmw7XG4gICAgICAgIHRoaXMuX2ZpbGVNdWx0aXBsZSA9IG9wdHM/Lm11bHRpcGxlO1xuICAgICAgICB0aGlzLl9pbWFnZVByZXZpZXcgPSBvcHRzPy5wcmV2aWV3O1xuICAgICAgICB0aGlzLl9pbWFnZVVybElucHV0SGlkZGVuT25EaXNhYmxlZCA9IG9wdHM/LmlucHV0VmlzaWJsZU9uRGlzYWJsZWQ7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc0N1c3RvbUNvbXBvbmVudChjb21wb25lbnQ6IFR5cGU8QUZvcm1seUN1c3RvbUZpZWxkQ29tcG9uZW50Piwgb3B0cz86IEZpZWxkSW5wdXRDb21wb25lbnRPcHRzKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2ZpZWxkVHlwZSA9IEZpZWxkSW5wdXRUeXBlRW51bS5DdXN0b207XG4gICAgICAgIHRoaXMuX2N1c3RvbUNvbXBvbmVudFR5cGUgPSBjb21wb25lbnQ7XG4gICAgICAgIHRoaXMuX2N1c3RvbUNvbXBvbmVudElucHV0cyA9IG9wdHM/LmlucHV0cztcbiAgICAgICAgdGhpcy5fY3VzdG9tQ29tcG9uZW50V3JhcHBlcnMgPSBvcHRzPy5maWVsZFdyYXBwZXJzO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aE51bWJlclZhbGlkYXRpb24ob3B0cz86IEZpZWxkSW5wdXROdW1iZXJWYWxpZGF0aW9uT3B0c1R5cGUpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fbnVtYmVyU3RlcCA9IG9wdHM/LnN0ZXA7XG4gICAgICAgIHRoaXMuX251bWJlckF1dG9Db3JyZWN0ID0gb3B0cz8uYXV0b0NvcnJlY3Q7XG4gICAgICAgIHRoaXMuX251bWJlck1pbiA9IG9wdHM/Lm1pbjtcbiAgICAgICAgdGhpcy5fbnVtYmVyTWF4ID0gb3B0cz8ubWF4O1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aExvY2FsZShsb2NhbGU/OiBzdHJpbmcpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fbG9jYWxlID0gbG9jYWxlO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aE51bWJlckZyYWN0aW9ucyhvcHRzPzogRmllbGRJbnB1dE51bWJlckZyYWN0aW9uT3B0c1R5cGUpIHtcbiAgICAgICAgdGhpcy5fbnVtYmVyTWluRnJhY3Rpb25EaWdpdHMgPSBvcHRzPy5taW5GcmFjdGlvbkRpZ2l0cztcbiAgICAgICAgdGhpcy5fbnVtYmVyTWF4RnJhY3Rpb25EaWdpdHMgPSBvcHRzPy5tYXhGcmFjdGlvbkRpZ2l0cztcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhOdW1iZXJHcm91cGluZyh1c2VHcm91cGluZyA9IHRydWUpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fbnVtYmVyVXNlR3JvdXBpbmcgPSB1c2VHcm91cGluZztcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcHVibGljIHdpdGhUZXh0VmFsaWRhdGlvbihvcHRzPzogRmllbGRJbnB1dFRleHRWYWxpZGF0aW9uT3B0c1R5cGUpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fbWluTGVuZ3RoID0gb3B0cz8ubWluTGVuZ3RoO1xuICAgICAgICB0aGlzLl9tYXhMZW5ndGggPSBvcHRzPy5tYXhMZW5ndGg7XG4gICAgICAgIHRoaXMuX3BhdHRlcm4gPSBvcHRzPy5wYXR0ZXJuO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aElucHV0VHJpbSh0cmltT3B0aW9uOiBJbnB1dFRyaW1UeXBlID0gJ2JvdGgnKTogdGhpcyB7XG4gICAgICAgIHRoaXMuX2lucHV0VHJpbSA9IHRyaW1PcHRpb247XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoRGF0ZVZhbHVlKG9wdHM/OiBEYXRlT3B0c1R5cGUpOiB0aGlzIHtcbiAgICAgICAgdGhpcy5fZGF0ZVBpY2tlclZhbHVlQXNEYXRlT2JqID0gb3B0cz8uYXNEYXRlT2JqO1xuICAgICAgICB0aGlzLl9kYXRlUGlja2VyVmFsdWVVdGMgPSBvcHRzPy51dGM7XG4gICAgICAgIHRoaXMuX2RhdGVQaWNrZXJWYWx1ZU5vVGltZXpvbmUgPSBvcHRzPy5ub1RpbWVab25lO1xuICAgICAgICB0aGlzLl9kYXRlUGlja2VyVmFsdWVOb1RpbWUgPSBvcHRzPy5ub1RpbWU7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyB3aXRoVGV4dFZhbGlkYXRpb25FbWFpbChlbWFpbCA9IHRydWUpOiB0aGlzIHtcbiAgICAgICAgaWYgKHRoaXMuZmllbGRUeXBlID09PSBGaWVsZElucHV0VHlwZUVudW0uVGV4dCAmJiBlbWFpbCkge1xuICAgICAgICAgICAgdGhpcy53aXRoVmFsaWRhdGlvbihlbWFpbFZhbGlkYXRpb25OYW1lLCBlbWFpbFZhbGlkYXRvcigpKTtcbiAgICAgICAgfSBlbHNlIGlmICghZW1haWwpIHtcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlVmFsaWRhdGlvbihlbWFpbFZhbGlkYXRpb25OYW1lKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICBwdWJsaWMgd2l0aEZpbGVPblNlbGVjdEhhbmRsZXIoZm4/OiBGaWVsZElucHV0RmlsZU9uU2VsZWN0SGFuZGxlckZuVHlwZSk6IHRoaXMge1xuICAgICAgICB0aGlzLl9maWxlT25TZWxlY3RIYW5kbGVyID0gZm47XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHB1YmxpYyBjb3B5KCk6IEZpZWxkSW5wdXREZXNjcmlwdG9yPEVkaXRvck1vZGVsLCBGaWVsZE1vZGVsLCBGaWVsZFZhbHVlPiB7XG4gICAgICAgIGNvbnN0IGZpZWxkID0gbmV3IEZpZWxkSW5wdXREZXNjcmlwdG9yPEVkaXRvck1vZGVsLCBGaWVsZE1vZGVsLCBGaWVsZFZhbHVlPih0aGlzLl9lZGl0b3IsIHRoaXMuX3Byb3BlcnR5KTtcbiAgICAgICAgdGhpcy5jb3B5RmllbGRzVG8oZmllbGQpO1xuICAgICAgICBmaWVsZC5fZmllbGRUeXBlID0gdGhpcy5fZmllbGRUeXBlO1xuICAgICAgICBmaWVsZC5fcm93cyA9IHRoaXMuX3Jvd3M7XG4gICAgICAgIGZpZWxkLl9udW1iZXJNaW4gPSB0aGlzLl9udW1iZXJNaW47XG4gICAgICAgIGZpZWxkLl9udW1iZXJNYXggPSB0aGlzLl9udW1iZXJNYXg7XG4gICAgICAgIGZpZWxkLl9udW1iZXJTdGVwID0gdGhpcy5fbnVtYmVyU3RlcDtcbiAgICAgICAgZmllbGQuX251bWJlckF1dG9Db3JyZWN0ID0gdGhpcy5fbnVtYmVyQXV0b0NvcnJlY3Q7XG4gICAgICAgIGZpZWxkLl9udW1iZXJNaW5GcmFjdGlvbkRpZ2l0cyA9IHRoaXMuX251bWJlck1pbkZyYWN0aW9uRGlnaXRzO1xuICAgICAgICBmaWVsZC5fbnVtYmVyTWF4RnJhY3Rpb25EaWdpdHMgPSB0aGlzLl9udW1iZXJNYXhGcmFjdGlvbkRpZ2l0cztcbiAgICAgICAgZmllbGQuX251bWJlclVzZUdyb3VwaW5nID0gdGhpcy5fbnVtYmVyVXNlR3JvdXBpbmc7XG4gICAgICAgIGZpZWxkLl9yYWRpb09wdGlvbnMgPSBbLi4udGhpcy5fcmFkaW9PcHRpb25zXTtcbiAgICAgICAgZmllbGQuX2RhdGVQaWNrZXJGb3JtYXQgPSB0aGlzLl9kYXRlUGlja2VyRm9ybWF0O1xuICAgICAgICBmaWVsZC5fZGF0ZVBpY2tlck1pbiA9IHRoaXMuX2RhdGVQaWNrZXJNaW47XG4gICAgICAgIGZpZWxkLl9kYXRlUGlja2VyTWF4ID0gdGhpcy5fZGF0ZVBpY2tlck1heDtcbiAgICAgICAgZmllbGQuX2RhdGVQaWNrZXJTaG93VGltZSA9IHRoaXMuX2RhdGVQaWNrZXJTaG93VGltZTtcbiAgICAgICAgZmllbGQuX2RhdGVQaWNrZXJTaG93U2Vjb25kcyA9IHRoaXMuX2RhdGVQaWNrZXJTaG93U2Vjb25kcztcbiAgICAgICAgZmllbGQuX2RhdGVQaWNrZXJWYWx1ZVV0YyA9IHRoaXMuX2RhdGVQaWNrZXJWYWx1ZVV0YztcbiAgICAgICAgZmllbGQuX2RhdGVQaWNrZXJWYWx1ZU5vVGltZXpvbmUgPSB0aGlzLl9kYXRlUGlja2VyVmFsdWVOb1RpbWV6b25lO1xuICAgICAgICBmaWVsZC5fZGF0ZVBpY2tlclZhbHVlTm9UaW1lID0gdGhpcy5fZGF0ZVBpY2tlclZhbHVlTm9UaW1lO1xuICAgICAgICBmaWVsZC5fZGF0ZVBpY2tlclZhbHVlQXNEYXRlT2JqID0gdGhpcy5fZGF0ZVBpY2tlclZhbHVlQXNEYXRlT2JqO1xuICAgICAgICBmaWVsZC5fbWF4TGVuZ3RoID0gdGhpcy5fbWF4TGVuZ3RoO1xuICAgICAgICBmaWVsZC5fbWluTGVuZ3RoID0gdGhpcy5fbWluTGVuZ3RoO1xuICAgICAgICBmaWVsZC5fcGF0dGVybiA9IHRoaXMuX3BhdHRlcm47XG4gICAgICAgIGZpZWxkLl9tYXNrID0gdGhpcy5fbWFzaztcbiAgICAgICAgZmllbGQuX3Nsb3RDaGFyID0gdGhpcy5fc2xvdENoYXI7XG4gICAgICAgIGZpZWxkLl9maWxlTXVsdGlwbGUgPSB0aGlzLl9maWxlTXVsdGlwbGU7XG4gICAgICAgIGZpZWxkLl9maWxlTWF4RmlsZVNpemUgPSB0aGlzLl9maWxlTWF4RmlsZVNpemU7XG4gICAgICAgIGZpZWxkLl9maWxlQWNjZXB0ID0gdGhpcy5fZmlsZUFjY2VwdDtcbiAgICAgICAgZmllbGQuX2ZpbGVPblNlbGVjdEhhbmRsZXIgPSB0aGlzLl9maWxlT25TZWxlY3RIYW5kbGVyO1xuICAgICAgICBmaWVsZC5faW1hZ2VQcmV2aWV3ID0gdGhpcy5faW1hZ2VQcmV2aWV3O1xuICAgICAgICBmaWVsZC5faW1hZ2VVcmxJbnB1dEhpZGRlbk9uRGlzYWJsZWQgPSB0aGlzLl9pbWFnZVVybElucHV0SGlkZGVuT25EaXNhYmxlZDtcbiAgICAgICAgZmllbGQuX2N1c3RvbUNvbXBvbmVudFR5cGUgPSB0aGlzLl9jdXN0b21Db21wb25lbnRUeXBlO1xuICAgICAgICBmaWVsZC5fY3VzdG9tQ29tcG9uZW50SW5wdXRzID0gdGhpcy5fY3VzdG9tQ29tcG9uZW50SW5wdXRzO1xuICAgICAgICBmaWVsZC5fY3VzdG9tQ29tcG9uZW50V3JhcHBlcnMgPSB0aGlzLl9jdXN0b21Db21wb25lbnRXcmFwcGVycztcbiAgICAgICAgZmllbGQuX2xvY2FsZSA9IHRoaXMuX2xvY2FsZTtcbiAgICAgICAgZmllbGQuX2N1cnJlbmN5ID0gdGhpcy5fY3VycmVuY3k7XG4gICAgICAgIGZpZWxkLl9jdXJyZW5jeURpc3BsYXkgPSB0aGlzLl9jdXJyZW5jeURpc3BsYXk7XG4gICAgICAgIGZpZWxkLl9jdXJyZW5jeUZyb21Qcm9wZXJ0eSA9IHRoaXMuX2N1cnJlbmN5RnJvbVByb3BlcnR5O1xuICAgICAgICBmaWVsZC5faW5wdXRUcmltID0gdGhpcy5faW5wdXRUcmltO1xuICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,95 @@
1
+ import { CommonsInternalError, TypeRegistry } from '@mediusinc/mng-commons/core';
2
+ import { enumModelGeneric } from '@mediusinc/mng-commons/model';
3
+ import { getColumnDisplayTypeFromColumnType, getColumnTypeFromClassAttributeDefType } from '@mediusinc/mng-commons/table/api';
4
+ import { FieldInputDescriptor } from '../descriptors/field.descriptor';
5
+ import { FieldInputTypeEnum } from '../models/field.model';
6
+ import { getEditorClassAttributeDef, getFieldInputTypeFromColumnType } from './class-attribute-converter';
7
+ /**
8
+ * Generates field based on attribute definition, used for auto model
9
+ * @param descriptor Editor descriptor instance.
10
+ * @param attribute Attribute definition.
11
+ * @param field Optional, if defined will be replaced, otherwise new will be generated.
12
+ * @param args Optional additional arguments mapped to filed type. Arguments depend on possible arguments on fields.
13
+ * @internal
14
+ */
15
+ export function upsertEditorFieldFromAttributeDef(descriptor, attribute, field, ...args) {
16
+ if (field == null) {
17
+ field = descriptor.addFieldUnsafe(attribute.name);
18
+ }
19
+ if (field instanceof FieldInputDescriptor) {
20
+ if (attribute.enumType) {
21
+ return field.asRadioFromEnum(enumModelGeneric(attribute.enumType));
22
+ }
23
+ else {
24
+ const tableColumnType = getColumnTypeFromClassAttributeDefType(attribute.type);
25
+ const tableColumnDisplayType = getColumnDisplayTypeFromColumnType(tableColumnType, attribute.type);
26
+ return field.asType(attribute.fieldType ?? getFieldInputTypeFromColumnType(tableColumnType, tableColumnDisplayType), ...args);
27
+ }
28
+ }
29
+ return field;
30
+ }
31
+ /**
32
+ * Modifies selected field by field property. For enums use {withFieldModifiedEnum} instead.
33
+ * @param descriptor Editor descriptor.
34
+ * @param property Model's property name.
35
+ * @param fieldType new field type for selected field
36
+ * @param args additional parameters for field
37
+ */
38
+ export function modifyEditorClassAttributeFieldType(descriptor, property, fieldType, ...args) {
39
+ return modifyEditorClassAttributeFieldTypeUnsafe(descriptor, property, fieldType, ...args);
40
+ }
41
+ export function modifyEditorClassAttributeFieldTypeUnsafe(descriptor, property, fieldType, ...args) {
42
+ if (!descriptor.model.type) {
43
+ throw new CommonsInternalError(`withFieldModifiedType cannot be executed for property ${property}: Model type is not defined.`);
44
+ }
45
+ const attribute = getEditorClassAttributeDef(descriptor.model.type).find(attribute => attribute.name === property);
46
+ if (attribute) {
47
+ attribute.fieldType = fieldType;
48
+ return upsertEditorFieldFromAttributeDef(descriptor, attribute, descriptor.fields.find(fi => fi.property === property), ...args);
49
+ }
50
+ return null;
51
+ }
52
+ /**
53
+ * Modifies selected field with enum type.
54
+ * @param descriptor Editor descriptor.
55
+ * @param property Model's property name.
56
+ * @param enumModel Enum descriptor.
57
+ * @param values
58
+ */
59
+ export function modifyEditorClassAttributeFieldEnum(descriptor, property, enumModel, values) {
60
+ return modifyEditorClassAttributeFieldEnumUnsafe(descriptor, property, enumModel, values);
61
+ }
62
+ export function modifyEditorClassAttributeFieldEnumUnsafe(descriptor, property, enumDesc, values) {
63
+ if (!descriptor.model.type) {
64
+ throw new CommonsInternalError(`withFieldModifiedEnum cannot be executed for property ${property}: Model type is not defined.`);
65
+ }
66
+ const attribute = getEditorClassAttributeDef(descriptor.model.type).find(a => a.name === property);
67
+ if (attribute) {
68
+ attribute.fieldType = FieldInputTypeEnum.Radio;
69
+ const field = descriptor.fields.find(f => f.property === property);
70
+ if (field && field instanceof FieldInputDescriptor) {
71
+ field.asRadioFromEnum(enumDesc ?? enumModelGeneric(TypeRegistry.get().findEnum(attribute.type)), values);
72
+ }
73
+ return field ?? null;
74
+ }
75
+ return null;
76
+ }
77
+ /**
78
+ * Modifies selected field with lookup field.
79
+ * @param descriptor Editor descriptor.
80
+ * @param property Model's property name.
81
+ * @param lookupProvider provider to be added to field
82
+ * @param titleProperty
83
+ */
84
+ export function modifyEditorFieldLookup(descriptor, property, lookupProvider, titleProperty) {
85
+ return modifyEditorFieldLookupUnsafe(descriptor, property, lookupProvider, titleProperty);
86
+ }
87
+ export function modifyEditorFieldLookupUnsafe(descriptor, property, lookupProvider, titleProperty) {
88
+ descriptor.removeFieldUnsafe(property);
89
+ const field = descriptor.addFieldLookupWithProviderUnsafe(property, lookupProvider).asAutocomplete();
90
+ if (titleProperty) {
91
+ field.withOptionsLabelPropertyUnsafe(titleProperty);
92
+ }
93
+ return field;
94
+ }
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLWRlc2NyaXB0b3ItaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9hcGkvc3JjL2VkaXRvci9oZWxwZXJzL2VkaXRvci1kZXNjcmlwdG9yLWhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLG9CQUFvQixFQUFpQyxZQUFZLEVBQUMsTUFBTSw2QkFBNkIsQ0FBQztBQUM5RyxPQUFPLEVBQWlCLGdCQUFnQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDOUUsT0FBTyxFQUFDLGtDQUFrQyxFQUFFLHNDQUFzQyxFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFLNUgsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFFckUsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFDLDBCQUEwQixFQUFFLCtCQUErQixFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFFeEc7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSxpQ0FBaUMsQ0FDN0MsVUFBd0MsRUFDeEMsU0FBa0MsRUFDbEMsS0FBZ0MsRUFDaEMsR0FBRyxJQUFXO0lBRWQsSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFLENBQUM7UUFDaEIsS0FBSyxHQUFHLFVBQVUsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxJQUFJLEtBQUssWUFBWSxvQkFBb0IsRUFBRSxDQUFDO1FBQ3hDLElBQUksU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLE9BQU8sS0FBSyxDQUFDLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUN2RSxDQUFDO2FBQU0sQ0FBQztZQUNKLE1BQU0sZUFBZSxHQUFHLHNDQUFzQyxDQUFDLFNBQVMsQ0FBQyxJQUFJ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SUFBSSxDQUFhLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN6SCxDQUFDO1FBQ0QsT0FBTyxLQUFLLElBQUksSUFBSSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNoQixDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLHVCQUF1QixDQU9uQyxVQUFrRCxFQUNsRCxRQUFrQixFQUNsQixjQUF3RCxFQUN4RCxhQUFnQztJQUVoQyxPQUFPLDZCQUE2QixDQUErQyxVQUFVLEVBQUUsUUFBa0IsRUFBRSxjQUFjLEVBQUUsYUFBdUIsQ0FBQyxDQUFDO0FBQ2hLLENBQUM7QUFFRCxNQUFNLFVBQVUsNkJBQTZCLENBQ3pDLFVBQWtELEVBQ2xELFFBQWdCLEVBQ2hCLGNBQXdELEVBQ3hELGFBQXNCO0lBRXRCLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN2QyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsZ0NBQWdDLENBQWtDLFFBQVEsRUFBRSxjQUFjLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUV0SSxJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQ2hCLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsT0FBTyxLQUFLLENBQUM7QUFDakIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tbW9uc0ludGVybmFsRXJyb3IsIEVudW1UeXBlLCBJTG9va3VwRGF0YVByb3ZpZGVyLCBUeXBlUmVnaXN0cnl9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvY29yZSc7XG5pbXBvcnQge0VudW1EZXNjcmlwdG9yLCBlbnVtTW9kZWxHZW5lcmljfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL21vZGVsJztcbmltcG9ydCB7Z2V0Q29sdW1uRGlzcGxheVR5cGVGcm9tQ29sdW1uVHlwZSwgZ2V0Q29sdW1uVHlwZUZyb21DbGFzc0F0dHJpYnV0ZURlZlR5cGV9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGUvYXBpJztcblxuaW1wb3J0IHtFZGl0b3JEZXNjcmlwdG9ySW5zdH0gZnJvbSAnLi4vZGVzY3JpcHRvcnMvZWRpdG9yLmRlc2NyaXB0b3InO1xuaW1wb3J0IHtBRmllbGREZXNjcmlwdG9yfSBmcm9tICcuLi9kZXNjcmlwdG9ycy9maWVsZC1iYXNlLmRlc2NyaXB0b3InO1xuaW1wb3J0IHtGaWVsZExvb2t1cERlc2NyaXB0b3J9IGZyb20gJy4uL2Rlc2NyaXB0b3JzL2ZpZWxkLWxvb2t1cC5kZXNjcmlwdG9yJztcbmltcG9ydCB7RmllbGRJbnB1dERlc2NyaXB0b3J9IGZyb20gJy4uL2Rlc2NyaXB0b3JzL2ZpZWxkLmRlc2NyaXB0b3InO1xuaW1wb3J0IHtFZGl0b3JDbGFzc0F0dHJpYnV0ZURlZn0gZnJvbSAnLi4vbW9kZWxzL2NsYXNzLXRhYmxldmlldy1hdHRyaWJ1dGUubW9kZWwnO1xuaW1wb3J0IHtGaWVsZElucHV0VHlwZUVudW19IGZyb20gJy4uL21vZGVscy9maWVsZC5tb2RlbCc7XG5pbXBvcnQge2dldEVkaXRvckNsYXNzQXR0cmlidXRlRGVmLCBnZXRGaWVsZElucHV0VHlwZUZyb21Db2x1bW5UeXBlfSBmcm9tICcuL2NsYXNzLWF0dHJpYnV0ZS1jb252ZXJ0ZXInO1xuXG4vKipcbiAqIEdlbmVyYXRlcyBmaWVsZCBiYXNlZCBvbiBhdHRyaWJ1dGUgZGVmaW5pdGlvbiwgdXNlZCBmb3IgYXV0byBtb2RlbFxuICogQHBhcmFtIGRlc2NyaXB0b3IgRWRpdG9yIGRlc2NyaXB0b3IgaW5zdGFuY2UuXG4gKiBAcGFyYW0gYXR0cmlidXRlIEF0dHJpYnV0ZSBkZWZpbml0aW9uLlxuICogQHBhcmFtIGZpZWxkIE9wdGlvbmFsLCBpZiBkZWZpbmVkIHdpbGwgYmUgcmVwbGFjZWQsIG90aGVyd2lzZSBuZXcgd2lsbCBiZSBnZW5lcmF0ZWQuXG4gKiBAcGFyYW0gYXJncyBPcHRpb25hbCBhZGRpdGlvbmFsIGFyZ3VtZW50cyBtYXBwZWQgdG8gZmlsZWQgdHlwZS4gQXJndW1lbnRzIGRlcGVuZCBvbiBwb3NzaWJsZSBhcmd1bWVudHMgb24gZmllbGRzLlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1cHNlcnRFZGl0b3JGaWVsZEZyb21BdHRyaWJ1dGVEZWY8VD4oXG4gICAgZGVzY3JpcHRvcjogRWRpdG9yRGVzY3JpcHRvckluc3Q8VCwgYW55PixcbiAgICBhdHRyaWJ1dGU6IEVkaXRvckNsYXNzQXR0cmlidXRlRGVmLFxuICAgIGZpZWxkPzogQUZpZWxkRGVzY3JpcHRvcjxhbnksIFQ+LFxuICAgIC4uLmFyZ3M6IGFueVtdXG4pOiBBRmllbGREZXNjcmlwdG9yPGFueSwgVD4ge1xuICAgIGlmIChmaWVsZCA9PSBudWxsKSB7XG4gICAgICAgIGZpZWxkID0gZGVzY3JpcHRvci5hZGRGaWVsZFVuc2FmZShhdHRyaWJ1dGUubmFtZSk7XG4gICAgfVxuXG4gICAgaWYgKGZpZWxkIGluc3RhbmNlb2YgRmllbGRJbnB1dERlc2NyaXB0b3IpIHtcbiAgICAgICAgaWYgKGF0dHJpYnV0ZS5lbnVtVHlwZSkge1xuICAgICAgICAgICAgcmV0dXJuIGZpZWxkLmFzUmFkaW9Gcm9tRW51bShlbnVtTW9kZWxHZW5lcmljKGF0dHJpYnV0ZS5lbnVtVHlwZSkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgdGFibGVDb2x1bW5UeXBlID0gZ2V0Q29sdW1uVHlwZUZyb21DbGFzc0F0dHJpYnV0ZURlZlR5cGUoYXR0cmlidXRlLnR5cGUpO1xuICAgICAgICAgICAgY29uc3QgdGFibGVDb2x1bW5EaXNwbGF5VHlwZSA9IGdldENvbHVtbkRpc3BsYXlUeXBlRnJvbUNvbHVtblR5cGUodGFibGVDb2x1bW5UeXBlLCBhdHRyaWJ1dGUudHlwZSk7XG4gICAgICAgICAgICByZXR1cm4gZmllbGQuYXNUeXBlKGF0dHJpYnV0ZS5maWVsZFR5cGUgPz8gZ2V0RmllbGRJbnB1dFR5cGVGcm9tQ29sdW1uVHlwZSh0YWJsZUNvbHVtblR5cGUsIHRhYmxlQ29sdW1uRGlzcGxheVR5cGUpLCAuLi5hcmdzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmaWVsZDtcbn1cblxuLyoqXG4gKiBNb2RpZmllcyBzZWxlY3RlZCBmaWVsZCBieSBmaWVsZCBwcm9wZXJ0eS4gRm9yIGVudW1zIHVzZSB7d2l0aEZpZWxkTW9kaWZpZWRFbnVtfSBpbnN0ZWFkLlxuICogQHBhcmFtIGRlc2NyaXB0b3IgRWRpdG9yIGRlc2NyaXB0b3IuXG4gKiBAcGFyYW0gcHJvcGVydHkgTW9kZWwncyBwcm9wZXJ0eSBuYW1lLlxuICogQHBhcmFtIGZpZWxkVHlwZSBuZXcgZmllbGQgdHlwZSBmb3Igc2VsZWN0ZWQgZmllbGRcbiAqIEBwYXJhbSBhcmdzIGFkZGl0aW9uYWwgcGFyYW1ldGVycyBmb3IgZmllbGRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1vZGlmeUVkaXRvckNsYXNzQXR0cmlidXRlRmllbGRUeXBlPFxuICAgIEVkaXRvck1vZGVsLFxuICAgIFByb3BlcnR5IGV4dGVuZHMga2V5b2YgRWRpdG9yTW9kZWwsXG4gICAgRmllbGRNb2RlbCA9IE5vbk51bGxhYmxlPEVkaXRvck1vZGVsW1Byb3BlcnR5XT4sXG4gICAgRmllbGRWYWx1ZSA9IEVkaXRvck1vZGVsW1Byb3BlcnR5XVxuPihcbiAgICBkZXNjcmlwdG9yOiBFZGl0b3JEZXNjcmlwdG9ySW5zdDxFZGl0b3JNb2RlbCwgYW55PixcbiAgICBwcm9wZXJ0eTogUHJvcGVydHksXG4gICAgZmllbGRUeXBlOiBGaWVsZElucHV0VHlwZUVudW0sXG4gICAgLi4uYXJnczogYW55W11cbik6IEFGaWVsZERlc2NyaXB0b3I8RmllbGRNb2RlbCwgRWRpdG9yTW9kZWwsIEZpZWxkVmFsdWU+IHwgbnVsbCB7XG4gICAgcmV0dXJuIG1vZGlmeUVkaXRvckNsYXNzQXR0cmlidXRlRmllbGRUeXBlVW5zYWZlPEVkaXRvck1vZGVsLCBGaWVsZE1vZGVsLCBGaWVsZFZhbHVlPihkZXNjcmlwdG9yLCBwcm9wZXJ0eSBhcyBzdHJpbmcsIGZpZWxkVHlwZSwgLi4uYXJncyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtb2RpZnlFZGl0b3JDbGFzc0F0dHJpYnV0ZUZpZWxkVHlwZVVuc2FmZTxFZGl0b3JNb2RlbCwgRmllbGRNb2RlbCA9IGFueSwgRmllbGRWYWx1ZSA9IEZpZWxkTW9kZWw+KFxuICAgIGRlc2NyaXB0b3I6IEVkaXRvckRlc2NyaXB0b3JJbnN0PEVkaXRvck1vZGVsLCBhbnk+LFxuICAgIHByb3BlcnR5OiBzdHJpbmcsXG4gICAgZmllbGRUeXBlOiBGaWVsZElucHV0VHlwZUVudW0sXG4gICAgLi4uYXJnczogYW55W11cbik6IEFGaWVsZERlc2NyaXB0b3I8RmllbGRNb2RlbCwgRWRpdG9yTW9kZWwsIEZpZWxkVmFsdWU+IHwgbnVsbCB7XG4gICAgaWYgKCFkZXNjcmlwdG9yLm1vZGVsLnR5cGUpIHtcbiAgICAgICAgdGhyb3cgbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKGB3aXRoRmllbGRNb2RpZmllZFR5cGUgY2Fubm90IGJlIGV4ZWN1dGVkIGZvciBwcm9wZXJ0eSAke3Byb3BlcnR5fTogTW9kZWwgdHlwZSBpcyBub3QgZGVmaW5lZC5gKTtcbiAgICB9XG5cbiAgICBjb25zdCBhdHRyaWJ1dGUgPSBnZXRFZGl0b3JDbGFzc0F0dHJpYnV0ZURlZihkZXNjcmlwdG9yLm1vZGVsLnR5cGUpLmZpbmQoYXR0cmlidXRlID0+IGF0dHJpYnV0ZS5uYW1lID09PSBwcm9wZXJ0eSk7XG4gICAgaWYgKGF0dHJpYnV0ZSkge1xuICAgICAgICBhdHRyaWJ1dGUuZmllbGRUeXBlID0gZmllbGRUeXBlO1xuICAgICAgICByZXR1cm4gdXBzZXJ0RWRpdG9yRmllbGRGcm9tQXR0cmlidXRlRGVmKFxuICAgICAgICAgICAgZGVzY3JpcHRvcixcbiAgICAgICAgICAgIGF0dHJpYnV0ZSxcbiAgICAgICAgICAgIGRlc2NyaXB0b3IuZmllbGRzLmZpbmQoZmkgPT4gZmkucHJvcGVydHkgPT09IHByb3BlcnR5KSxcbiAgICAgICAgICAgIC4uLmFyZ3NcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbn1cblxuLyoqXG4gKiBNb2RpZmllcyBzZWxlY3RlZCBmaWVsZCB3aXRoIGVudW0gdHlwZS5cbiAqIEBwYXJhbSBkZXNjcmlwdG9yIEVkaXRvciBkZXNjcmlwdG9yLlxuICogQHBhcmFtIHByb3BlcnR5IE1vZGVsJ3MgcHJvcGVydHkgbmFtZS5cbiAqIEBwYXJhbSBlbnVtTW9kZWwgRW51bSBkZXNjcmlwdG9yLlxuICogQHBhcmFtIHZhbHVlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gbW9kaWZ5RWRpdG9yQ2xhc3NBdHRyaWJ1dGVGaWVsZEVudW08XG4gICAgRWRpdG9yTW9kZWwsXG4gICAgUHJvcGVydHkgZXh0ZW5kcyBrZXlvZiBFZGl0b3JNb2RlbCxcbiAgICBFbnVtIGV4dGVuZHMgTm9uTnVsbGFibGU8RWRpdG9yTW9kZWxbUHJvcGVydHldPixcbiAgICBGaWVsZE1vZGVsID0gTm9uTnVsbGFibGU8RWRpdG9yTW9kZWxbUHJvcGVydHldPixcbiAgICBGaWVsZFZhbHVlID0gRWRpdG9yTW9kZWxbUHJvcGVydHldXG4+KFxuICAgIGRlc2NyaXB0b3I6IEVkaXRvckRlc2NyaXB0b3JJbnN0PEVkaXRvck1vZGVsLCBhbnk+LFxuICAgIHByb3BlcnR5OiBQcm9wZXJ0eSxcbiAgICBlbnVtTW9kZWw/OiBFbnVtRGVzY3JpcHRvcjxFbnVtPixcbiAgICB2YWx1ZXM/OiBBcnJheTxFbnVtPlxuKTogQUZpZWxkRGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBFZGl0b3JNb2RlbCwgRmllbGRWYWx1ZT4gfCBudWxsIHtcbiAgICByZXR1cm4gbW9kaWZ5RWRpdG9yQ2xhc3NBdHRyaWJ1dGVGaWVsZEVudW1VbnNhZmU8RWRpdG9yTW9kZWwsIEVudW0sIEZpZWxkTW9kZWwsIEZpZWxkVmFsdWU+KGRlc2NyaXB0b3IsIHByb3BlcnR5IGFzIHN0cmluZywgZW51bU1vZGVsLCB2YWx1ZXMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbW9kaWZ5RWRpdG9yQ2xhc3NBdHRyaWJ1dGVGaWVsZEVudW1VbnNhZmU8RWRpdG9yTW9kZWwsIEVudW0gPSBhbnksIEZpZWxkTW9kZWwgPSBhbnksIEZpZWxkVmFsdWUgPSBGaWVsZE1vZGVsPihcbiAgICBkZXNjcmlwdG9yOiBFZGl0b3JEZXNjcmlwdG9ySW5zdDxFZGl0b3JNb2RlbCwgYW55PixcbiAgICBwcm9wZXJ0eTogc3RyaW5nLFxuICAgIGVudW1EZXNjPzogRW51bURlc2NyaXB0b3I8RW51bT4sXG4gICAgdmFsdWVzPzogQXJyYXk8RW51bT5cbik6IEFGaWVsZERlc2NyaXB0b3I8RmllbGRNb2RlbCwgRWRpdG9yTW9kZWwsIEZpZWxkVmFsdWU+IHwgbnVsbCB7XG4gICAgaWYgKCFkZXNjcmlwdG9yLm1vZGVsLnR5cGUpIHtcbiAgICAgICAgdGhyb3cgbmV3IENvbW1vbnNJbnRlcm5hbEVycm9yKGB3aXRoRmllbGRNb2RpZmllZEVudW0gY2Fubm90IGJlIGV4ZWN1dGVkIGZvciBwcm9wZXJ0eSAke3Byb3BlcnR5fTogTW9kZWwgdHlwZSBpcyBub3QgZGVmaW5lZC5gKTtcbiAgICB9XG4gICAgY29uc3QgYXR0cmlidXRlID0gZ2V0RWRpdG9yQ2xhc3NBdHRyaWJ1dGVEZWYoZGVzY3JpcHRvci5tb2RlbC50eXBlKS5maW5kKGEgPT4gYS5uYW1lID09PSBwcm9wZXJ0eSk7XG4gICAgaWYgKGF0dHJpYnV0ZSkge1xuICAgICAgICBhdHRyaWJ1dGUuZmllbGRUeXBlID0gRmllbGRJbnB1dFR5cGVFbnVtLlJhZGlvO1xuICAgICAgICBjb25zdCBmaWVsZCA9IGRlc2NyaXB0b3IuZmllbGRzLmZpbmQoZiA9PiBmLnByb3BlcnR5ID09PSBwcm9wZXJ0eSk7XG4gICAgICAgIGlmIChmaWVsZCAmJiBmaWVsZCBpbnN0YW5jZW9mIEZpZWxkSW5wdXREZXNjcmlwdG9yKSB7XG4gICAgICAgICAgICBmaWVsZC5hc1JhZGlvRnJvbUVudW0oZW51bURlc2MgPz8gZW51bU1vZGVsR2VuZXJpYyhUeXBlUmVnaXN0cnkuZ2V0KCkuZmluZEVudW0oYXR0cmlidXRlLnR5cGUpIGFzIEVudW1UeXBlKSwgdmFsdWVzKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmllbGQgPz8gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4gbnVsbDtcbn1cblxuLyoqXG4gKiBNb2RpZmllcyBzZWxlY3RlZCBmaWVsZCB3aXRoIGxvb2t1cCBmaWVsZC5cbiAqIEBwYXJhbSBkZXNjcmlwdG9yIEVkaXRvciBkZXNjcmlwdG9yLlxuICogQHBhcmFtIHByb3BlcnR5IE1vZGVsJ3MgcHJvcGVydHkgbmFtZS5cbiAqIEBwYXJhbSBsb29rdXBQcm92aWRlciBwcm92aWRlciB0byBiZSBhZGRlZCB0byBmaWVsZFxuICogQHBhcmFtIHRpdGxlUHJvcGVydHlcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1vZGlmeUVkaXRvckZpZWxkTG9va3VwPFxuICAgIEVkaXRvck1vZGVsLFxuICAgIFByb3BlcnR5IGV4dGVuZHMga2V5b2YgRWRpdG9yTW9kZWwsXG4gICAgU2VydmljZSxcbiAgICBGaWVsZE1vZGVsID0gTm9uTnVsbGFibGU8RWRpdG9yTW9kZWxbUHJvcGVydHldPixcbiAgICBGaWVsZFZhbHVlID0gRWRpdG9yTW9kZWxbUHJvcGVydHldXG4+KFxuICAgIGRlc2NyaXB0b3I6IEVkaXRvckRlc2NyaXB0b3JJbnN0PEVkaXRvck1vZGVsLCBhbnk+LFxuICAgIHByb3BlcnR5OiBQcm9wZXJ0eSxcbiAgICBsb29rdXBQcm92aWRlcjogSUxvb2t1cERhdGFQcm92aWRlcjxGaWVsZE1vZGVsLCBTZXJ2aWNlPixcbiAgICB0aXRsZVByb3BlcnR5Pzoga2V5b2YgRmllbGRNb2RlbFxuKTogRmllbGRMb29rdXBEZXNjcmlwdG9yPEZpZWxkTW9kZWwsIEVkaXRvck1vZGVsLCBTZXJ2aWNlLCBGaWVsZFZhbHVlPiB7XG4gICAgcmV0dXJuIG1vZGlmeUVkaXRvckZpZWxkTG9va3VwVW5zYWZlPEVkaXRvck1vZGVsLCBTZXJ2aWNlLCBGaWVsZE1vZGVsLCBGaWVsZFZhbHVlPihkZXNjcmlwdG9yLCBwcm9wZXJ0eSBhcyBzdHJpbmcsIGxvb2t1cFByb3ZpZGVyLCB0aXRsZVByb3BlcnR5IGFzIHN0cmluZyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtb2RpZnlFZGl0b3JGaWVsZExvb2t1cFVuc2FmZTxFZGl0b3JNb2RlbCwgU2VydmljZSwgRmllbGRNb2RlbCA9IGFueSwgRmllbGRWYWx1ZSA9IEZpZWxkTW9kZWw+KFxuICAgIGRlc2NyaXB0b3I6IEVkaXRvckRlc2NyaXB0b3JJbnN0PEVkaXRvck1vZGVsLCBhbnk+LFxuICAgIHByb3BlcnR5OiBzdHJpbmcsXG4gICAgbG9va3VwUHJvdmlkZXI6IElMb29rdXBEYXRhUHJvdmlkZXI8RmllbGRNb2RlbCwgU2VydmljZT4sXG4gICAgdGl0bGVQcm9wZXJ0eT86IHN0cmluZ1xuKTogRmllbGRMb29rdXBEZXNjcmlwdG9yPEZpZWxkTW9kZWwsIEVkaXRvck1vZGVsLCBTZXJ2aWNlLCBGaWVsZFZhbHVlPiB7XG4gICAgZGVzY3JpcHRvci5yZW1vdmVGaWVsZFVuc2FmZShwcm9wZXJ0eSk7XG4gICAgY29uc3QgZmllbGQgPSBkZXNjcmlwdG9yLmFkZEZpZWxkTG9va3VwV2l0aFByb3ZpZGVyVW5zYWZlPEZpZWxkTW9kZWwsIFNlcnZpY2UsIEZpZWxkVmFsdWU+KHByb3BlcnR5LCBsb29rdXBQcm92aWRlcikuYXNBdXRvY29tcGxldGUoKTtcblxuICAgIGlmICh0aXRsZVByb3BlcnR5KSB7XG4gICAgICAgIGZpZWxkLndpdGhPcHRpb25zTGFiZWxQcm9wZXJ0eVVuc2FmZSh0aXRsZVByb3BlcnR5KTtcbiAgICB9XG5cbiAgICByZXR1cm4gZmllbGQ7XG59XG4iXX0=
@@ -1,33 +1,23 @@
1
+ import { Validators } from '@angular/forms';
2
+ export const minDateValidationName = 'minDate';
1
3
  export const minDateValidator = (min) => {
2
- return (c) => {
3
- const date = c?.value;
4
- const valid = !date || date >= min;
5
- if (!valid) {
6
- const newErrors = { ...c.errors, minDate: true };
7
- c?.markAsDirty();
8
- c.setErrors(newErrors);
9
- return newErrors;
10
- }
11
- if (c?.hasError('minDate')) {
12
- c.setErrors({ ...c.errors, minDate: null });
13
- }
14
- return null;
4
+ return ({ fieldFormControl }) => {
5
+ const date = fieldFormControl?.value == null ? undefined : new Date(fieldFormControl.value);
6
+ return !date || date >= min;
15
7
  };
16
8
  };
9
+ export const maxDateValidationName = 'maxDate';
17
10
  export const maxDateValidator = (max) => {
18
- return (c) => {
19
- const date = c?.value;
20
- const valid = !date || date <= max;
21
- if (!valid) {
22
- const newErrors = { ...c.errors, maxDate: true };
23
- c?.markAsDirty();
24
- c.setErrors(newErrors);
25
- return newErrors;
26
- }
27
- if (c?.hasError('maxDate')) {
28
- c.setErrors({ ...c.errors, maxDate: null });
29
- }
30
- return null;
11
+ return ({ fieldFormControl }) => {
12
+ const date = fieldFormControl?.value == null ? undefined : new Date(fieldFormControl.value);
13
+ return !date || date <= max;
31
14
  };
32
15
  };
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtdmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9hcGkvc3JjL2VkaXRvci9oZWxwZXJzL2ZpZWxkLXZhbGlkYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxHQUFTLEVBQWtCLEVBQUU7SUFDMUQsT0FBTyxDQUFDLENBQWtCLEVBQUUsRUFBRTtRQUMxQixNQUFNLElBQUksR0FBUyxDQUFDLEVBQUUsS0FBSyxDQUFDO1FBQzVCLE1BQU0sS0FBSyxHQUFHLENBQUMsSUFBSSxJQUFJLElBQUksSUFBSSxHQUFHLENBQUM7UUFFbkMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ1QsTUFBTSxTQUFTLEdBQUcsRUFBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBQyxDQUFDO1lBQy9DLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQztZQUNqQixDQUFDLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3ZCLE9BQU8sU0FBUyxDQUFDO1FBQ3JCLENBQUM7UUFFRCxJQUFJLENBQUMsRUFBRSxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUN6QixDQUFDLENBQUMsU0FBUyxDQUFDLEVBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO1FBQzlDLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDLENBQUM7QUFDTixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEdBQVMsRUFBa0IsRUFBRTtJQUMxRCxPQUFPLENBQUMsQ0FBa0IsRUFBRSxFQUFFO1FBQzFCLE1BQU0sSUFBSSxHQUFTLENBQUMsRUFBRSxLQUFLLENBQUM7UUFDNUIsTUFBTSxLQUFLLEdBQUcsQ0FBQyxJQUFJLElBQUksSUFBSSxJQUFJLEdBQUcsQ0FBQztRQUVuQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDVCxNQUFNLFNBQVMsR0FBRyxFQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFDLENBQUM7WUFDL0MsQ0FBQyxFQUFFLFdBQVcsRUFBRSxDQUFDO1lBQ2pCLENBQUMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDdkIsT0FBTyxTQUFTLENBQUM7UUFDckIsQ0FBQztRQUVELElBQUksQ0FBQyxFQUFFLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQ3pCLENBQUMsQ0FBQyxTQUFTLENBQUMsRUFBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7UUFDOUMsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUMsQ0FBQztBQUNOLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWJzdHJhY3RDb250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7RmllbGRWYWxpZGF0b3J9IGZyb20gJy4uL21vZGVscy9maWVsZC5tb2RlbCc7XG5cbmV4cG9ydCBjb25zdCBtaW5EYXRlVmFsaWRhdG9yID0gKG1pbjogRGF0ZSk6IEZpZWxkVmFsaWRhdG9yID0+IHtcbiAgICByZXR1cm4gKGM6IEFic3RyYWN0Q29udHJvbCkgPT4ge1xuICAgICAgICBjb25zdCBkYXRlOiBEYXRlID0gYz8udmFsdWU7XG4gICAgICAgIGNvbnN0IHZhbGlkID0gIWRhdGUgfHwgZGF0ZSA+PSBtaW47XG5cbiAgICAgICAgaWYgKCF2YWxpZCkge1xuICAgICAgICAgICAgY29uc3QgbmV3RXJyb3JzID0gey4uLmMuZXJyb3JzLCBtaW5EYXRlOiB0cnVlfTtcbiAgICAgICAgICAgIGM/Lm1hcmtBc0RpcnR5KCk7XG4gICAgICAgICAgICBjLnNldEVycm9ycyhuZXdFcnJvcnMpO1xuICAgICAgICAgICAgcmV0dXJuIG5ld0Vycm9ycztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjPy5oYXNFcnJvcignbWluRGF0ZScpKSB7XG4gICAgICAgICAgICBjLnNldEVycm9ycyh7Li4uYy5lcnJvcnMsIG1pbkRhdGU6IG51bGx9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH07XG59O1xuXG5leHBvcnQgY29uc3QgbWF4RGF0ZVZhbGlkYXRvciA9IChtYXg6IERhdGUpOiBGaWVsZFZhbGlkYXRvciA9PiB7XG4gICAgcmV0dXJuIChjOiBBYnN0cmFjdENvbnRyb2wpID0+IHtcbiAgICAgICAgY29uc3QgZGF0ZTogRGF0ZSA9IGM/LnZhbHVlO1xuICAgICAgICBjb25zdCB2YWxpZCA9ICFkYXRlIHx8IGRhdGUgPD0gbWF4O1xuXG4gICAgICAgIGlmICghdmFsaWQpIHtcbiAgICAgICAgICAgIGNvbnN0IG5ld0Vycm9ycyA9IHsuLi5jLmVycm9ycywgbWF4RGF0ZTogdHJ1ZX07XG4gICAgICAgICAgICBjPy5tYXJrQXNEaXJ0eSgpO1xuICAgICAgICAgICAgYy5zZXRFcnJvcnMobmV3RXJyb3JzKTtcbiAgICAgICAgICAgIHJldHVybiBuZXdFcnJvcnM7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoYz8uaGFzRXJyb3IoJ21heERhdGUnKSkge1xuICAgICAgICAgICAgYy5zZXRFcnJvcnMoey4uLmMuZXJyb3JzLCBtYXhEYXRlOiBudWxsfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9O1xufTtcbiJdfQ==
16
+ export const emailValidationName = 'email';
17
+ export const emailValidator = () => {
18
+ return ({ fieldFormControl }) => {
19
+ const error = fieldFormControl ? Validators.email(fieldFormControl) : null;
20
+ return error === null;
21
+ };
22
+ };
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtdmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9hcGkvc3JjL2VkaXRvci9oZWxwZXJzL2ZpZWxkLXZhbGlkYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBSTFDLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLFNBQVMsQ0FBQztBQUMvQyxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEdBQVMsRUFBa0UsRUFBRTtJQUMxRyxPQUFPLENBQUMsRUFBQyxnQkFBZ0IsRUFBQyxFQUFFLEVBQUU7UUFDMUIsTUFBTSxJQUFJLEdBQXFCLGdCQUFnQixFQUFFLEtBQUssSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUcsT0FBTyxDQUFDLElBQUksSUFBSSxJQUFJLElBQUksR0FBRyxDQUFDO0lBQ2hDLENBQUMsQ0FBQztBQUNOLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLFNBQVMsQ0FBQztBQUMvQyxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEdBQTJCLEVBQWtFLEVBQUU7SUFDNUgsT0FBTyxDQUFDLEVBQUMsZ0JBQWdCLEVBQUMsRUFBRSxFQUFFO1FBQzFCLE1BQU0sSUFBSSxHQUFxQixnQkFBZ0IsRUFBRSxLQUFLLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlHLE9BQU8sQ0FBQyxJQUFJLElBQUksSUFBSSxJQUFJLEdBQUcsQ0FBQztJQUNoQyxDQUFDLENBQUM7QUFDTixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxPQUFPLENBQUM7QUFDM0MsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLEdBQW1ELEVBQUU7SUFDL0UsT0FBTyxDQUFDLEVBQUMsZ0JBQWdCLEVBQUMsRUFBRSxFQUFFO1FBQzFCLE1BQU0sS0FBSyxHQUFHLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUMzRSxPQUFPLEtBQUssS0FBSyxJQUFJLENBQUM7SUFDMUIsQ0FBQyxDQUFDO0FBQ04sQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtWYWxpZGF0b3JzfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7RmllbGRWYWxpZGF0b3J9IGZyb20gJy4uL21vZGVscy9maWVsZC12YWxpZGF0aW9uLm1vZGVsJztcblxuZXhwb3J0IGNvbnN0IG1pbkRhdGVWYWxpZGF0aW9uTmFtZSA9ICdtaW5EYXRlJztcbmV4cG9ydCBjb25zdCBtaW5EYXRlVmFsaWRhdG9yID0gKG1pbjogRGF0ZSk6IEZpZWxkVmFsaWRhdG9yPERhdGUgfCBzdHJpbmcgfCBudW1iZXIgfCB1bmRlZmluZWQgfCBudWxsLCBhbnk+ID0+IHtcbiAgICByZXR1cm4gKHtmaWVsZEZvcm1Db250cm9sfSkgPT4ge1xuICAgICAgICBjb25zdCBkYXRlOiBEYXRlIHwgdW5kZWZpbmVkID0gZmllbGRGb3JtQ29udHJvbD8udmFsdWUgPT0gbnVsbCA/IHVuZGVmaW5lZCA6IG5ldyBEYXRlKGZpZWxkRm9ybUNvbnRyb2wudmFsdWUpO1xuICAgICAgICByZXR1cm4gIWRhdGUgfHwgZGF0ZSA+PSBtaW47XG4gICAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBtYXhEYXRlVmFsaWRhdGlvbk5hbWUgPSAnbWF4RGF0ZSc7XG5leHBvcnQgY29uc3QgbWF4RGF0ZVZhbGlkYXRvciA9IChtYXg6IERhdGUgfCBzdHJpbmcgfCBudW1iZXIpOiBGaWVsZFZhbGlkYXRvcjxEYXRlIHwgc3RyaW5nIHwgbnVtYmVyIHwgdW5kZWZpbmVkIHwgbnVsbCwgYW55PiA9PiB7XG4gICAgcmV0dXJuICh7ZmllbGRGb3JtQ29udHJvbH0pID0+IHtcbiAgICAgICAgY29uc3QgZGF0ZTogRGF0ZSB8IHVuZGVmaW5lZCA9IGZpZWxkRm9ybUNvbnRyb2w/LnZhbHVlID09IG51bGwgPyB1bmRlZmluZWQgOiBuZXcgRGF0ZShmaWVsZEZvcm1Db250cm9sLnZhbHVlKTtcbiAgICAgICAgcmV0dXJuICFkYXRlIHx8IGRhdGUgPD0gbWF4O1xuICAgIH07XG59O1xuXG5leHBvcnQgY29uc3QgZW1haWxWYWxpZGF0aW9uTmFtZSA9ICdlbWFpbCc7XG5leHBvcnQgY29uc3QgZW1haWxWYWxpZGF0b3IgPSAoKTogRmllbGRWYWxpZGF0b3I8c3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbCwgYW55PiA9PiB7XG4gICAgcmV0dXJuICh7ZmllbGRGb3JtQ29udHJvbH0pID0+IHtcbiAgICAgICAgY29uc3QgZXJyb3IgPSBmaWVsZEZvcm1Db250cm9sID8gVmFsaWRhdG9ycy5lbWFpbChmaWVsZEZvcm1Db250cm9sKSA6IG51bGw7XG4gICAgICAgIHJldHVybiBlcnJvciA9PT0gbnVsbDtcbiAgICB9O1xufTtcbiJdfQ==
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLWZpZWxkcy5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9hcGkvc3JjL2VkaXRvci9tb2RlbHMvZWRpdG9yLWZpZWxkcy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBcnJheUl0ZW1UeXBlLCBFbnVtQ29uc3RhbnRUeXBlLCBJVGFibGV2aWV3RGVzY3JpcHRvciwgSWRUeXBlLCBOdWxsYWJsZX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9jb3JlJztcbmltcG9ydCB7RW51bURlc2NyaXB0b3IsIFR5cGVEZXNjcmlwdG9yfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL21vZGVsJztcbmltcG9ydCB7SVRhYmxlRGF0YVByb3ZpZGVyLCBJVGFibGVEZXNjcmlwdG9ySW50ZXJuYWx9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGUvYXBpJztcblxuaW1wb3J0IHtBRmllbGREZXNjcmlwdG9yfSBmcm9tICcuLi9kZXNjcmlwdG9ycy9maWVsZC1iYXNlLmRlc2NyaXB0b3InO1xuaW1wb3J0IHtGaWVsZExvb2t1cERlc2NyaXB0b3IsIEZpZWxkTG9va3VwRW51bURlc2NyaXB0b3IsIEZpZWxkTG9va3VwUHJvdmlkZXJUeXBlfSBmcm9tICcuLi9kZXNjcmlwdG9ycy9maWVsZC1sb29rdXAuZGVzY3JpcHRvcic7XG5pbXBvcnQge0ZpZWxkTWFueUVkaXRvckRlc2NyaXB0b3IsIEZpZWxkTWFueVRvTWFueUVkaXRvckRlc2NyaXB0b3J9IGZyb20gJy4uL2Rlc2NyaXB0b3JzL2ZpZWxkLW1hbnkuZGVzY3JpcHRvcic7XG5pbXBvcnQge0ZpZWxkSW5wdXREZXNjcmlwdG9yLCBGaWVsZElucHV0RGVzY3JpcHRvclR5cGV9IGZyb20gJy4uL2Rlc2NyaXB0b3JzL2ZpZWxkLmRlc2NyaXB0b3InO1xuaW1wb3J0IHtUYWJsZXZpZXdFZGl0b3JUeXBlRW51bX0gZnJvbSAnLi9lZGl0b3IubW9kZWwnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElGaWVsZHNNYW5hZ2VJbnRlcmZhY2U8RWRpdG9yTW9kZWw+IHtcbiAgICBnZXRGaWVsZChwcm9wZXJ0eToga2V5b2YgRWRpdG9yTW9kZWwsIGVkaXRvclR5cGU6IFRhYmxldmlld0VkaXRvclR5cGVFbnVtKTogQUZpZWxkRGVzY3JpcHRvcjxhbnksIEVkaXRvck1vZGVsPiB8IG51bGw7XG5cbiAgICBnZXRGaWVsZFVuc2FmZShwcm9wZXJ0eTogc3RyaW5nLCBlZGl0b3JUeXBlOiBUYWJsZXZpZXdFZGl0b3JUeXBlRW51bSk6IEFGaWVsZERlc2NyaXB0b3I8YW55LCBFZGl0b3JNb2RlbD4gfCBudWxsO1xuXG4gICAgcmVtb3ZlRmllbGQocHJvcGVydHk6IGtleW9mIEVkaXRvck1vZGVsKTogdm9pZDtcblxuICAgIHJlbW92ZUZpZWxkVW5zYWZlKHByb3BlcnR5OiBzdHJpbmcpOiB2b2lkO1xuXG4gICAgYWRkRmllbGREZXNjcmlwdG9yPEZpZWxkTW9kZWw+KGZpZWxkOiBBRmllbGREZXNjcmlwdG9yPEZpZWxkTW9kZWwsIEVkaXRvck1vZGVsPik6IHRoaXM7XG5cbiAgICBhZGRGaWVsZDxQcm9wZXJ0eSBleHRlbmRzIGtleW9mIEVkaXRvck1vZGVsLCBGaWVsZE1vZGVsID0gTm9uTnVsbGFibGU8RWRpdG9yTW9kZWxbUHJvcGVydHldPiwgRmllbGRWYWx1ZSA9IEVkaXRvck1vZGVsW1Byb3BlcnR5XT4oXG4gICAgICAgIHByb3BlcnR5OiBQcm9wZXJ0eVxuICAgICk6IEZpZWxkSW5wdXREZXNjcmlwdG9yPEVkaXRvck1vZGVsLCBGaWVsZE1vZGVsLCBGaWVsZFZhbHVlPjtcblxuICAgIGFkZEZpZWxkVW5zYWZlPEZpZWxkTW9kZWwgPSBGaWVsZElucHV0RGVzY3JpcHRvclR5cGUsIEZpZWxkVmFsdWUgPSBGaWVsZE1vZGVsPihwcm9wZXJ0eTogc3RyaW5nKTogRmllbGRJbnB1dERlc2NyaXB0b3I8RWRpdG9yTW9kZWwsIEZpZWxkTW9kZWwsIEZpZWxkVmFsdWU+O1xuXG4gICAgYWRkRmllbGRzKC4uLnByb3BlcnRpZXM6IChrZXlvZiBFZGl0b3JNb2RlbClbXSk6IHRoaXM7XG5cbiAgICBhZGRGaWVsZExvb2t1cDxQcm9wZXJ0eSBleHRlbmRzIGtleW9mIEVkaXRvck1vZGVsLCBGaWVsZE1vZGVsID0gTm9uTnVsbGFibGU8RWRpdG9yTW9kZWxbUHJvcGVydHldPiwgRmllbGRWYWx1ZSA9IEVkaXRvck1vZGVsW1Byb3BlcnR5XT4oXG4gICAgICAgIHByb3BlcnR5OiBQcm9wZXJ0eSxcbiAgICAgICAgdHlwZT86IFR5cGVEZXNjcmlwdG9yPEZpZWxkTW9kZWw+XG4gICAgKTogRmllbGRMb29rdXBEZXNjcmlwdG9yPEZpZWxkTW9kZWwsIEVkaXRvck1vZGVsLCB1bmRlZmluZWQsIEZpZWxkVmFsdWU+O1xuXG4gICAgYWRkRmllbGRMb29rdXBVbnNhZmU8RmllbGRNb2RlbCwgRmllbGRWYWx1ZSA9IEZpZWxkTW9kZWw+KFxuICAgICAgICBwcm9wZXJ0eTogc3RyaW5nLFxuICAgICAgICB0eXBlPzogVHlwZURlc2NyaXB0b3I8RmllbGRNb2RlbD5cbiAgICApOiBGaWVsZExvb2t1cERlc2NyaXB0b3I8RmllbGRNb2RlbCwgRWRpdG9yTW9kZWwsIHVuZGVmaW5lZCwgRmllbGRWYWx1ZT47XG5cbiAgICBhZGRGaWVsZExvb2t1cFdpdGhPcHRpb25zVmFsdWVQcm9wZXJ0eTxQcm9wZXJ0eSBleHRlbmRzIGtleW9mIEVkaXRvck1vZGVsLCBGaWVsZE1vZGVsLCBGaWVsZFZhbHVlID0gRWRpdG9yTW9kZWxbUHJvcGVydHldPihcbiAgICAgICAgcHJvcGVydHk6IFByb3BlcnR5LFxuICAgICAgICB0eXBlOiBUeXBlRGVzY3JpcHRvcjxGaWVsZE1vZGVsPixcbiAgICAgICAgbG9va3VwT3B0aW9uc1ZhbHVlUHJvcGVydHk6IGFueSAvLyBTaG91bGQgbm90IGFjdHVhbGx5IGJlIGFueSwgYnV0IGV4dGVuZGluZyBLZXlvZkFuZE9mVHlwZSBjYXVzZXMgd2VpcmQgVFMgY29tcGlsZXIgcHJvYmxlbXMgd2l0aCAnVHdvIGRpZmZlcmVudCB0eXBlcyB3aXRoIHRoaXMgbmFtZSBleGlzdCwgYnV0IHRoZXkgYXJlIHVucmVsYXRlZCdcbiAgICApOiBGaWVsZExvb2t1cERlc2NyaXB0b3I8RmllbGRNb2RlbCwgRWRpdG9yTW9kZWwsIHVuZGVmaW5lZCwgRmllbGRWYWx1ZT47XG5cbiAgICBhZGRGaWVsZExvb2t1cFdpdGhPcHRpb25zVmFsdWVQcm9wZXJ0eVVuc2FmZTxGaWVsZE1vZGVsLCBGaWVsZFZhbHVlID0gTnVsbGFibGU8SWRUeXBlPj4oXG4gICAgICAgIHByb3BlcnR5OiBzdHJpbmcsXG4gICAgICAgIHR5cGU6IFR5cGVEZXNjcmlwdG9yPEZpZWxkTW9kZWw+LFxuICAgICAgICBsb29rdXBPcHRpb25zVmFsdWVQcm9wZXJ0eTogc3RyaW5nXG4gICAgKTogRmllbGRMb29rdXBEZXNjcmlwdG9yPEZpZWxkTW9kZWwsIEVkaXRvck1vZGVsLCB1bmRlZmluZWQsIEZpZWxkVmFsdWU+O1xuXG4gICAgYWRkRmllbGRMb29rdXBXaXRoUHJvdmlkZXI8UHJvcGVydHkgZXh0ZW5kcyBrZXlvZiBFZGl0b3JNb2RlbCwgU2VydmljZSwgRmllbGRNb2RlbCA9IE5vbk51bGxhYmxlPEVkaXRvck1vZGVsW1Byb3BlcnR5XT4sIEZpZWxkVmFsdWUgPSBFZGl0b3JNb2RlbFtQcm9wZXJ0eV0+KFxuICAgICAgICBwcm9wZXJ0eTogUHJvcGVydHksXG4gICAgICAgIHByb3ZpZGVyOiBGaWVsZExvb2t1cFByb3ZpZGVyVHlwZTxGaWVsZE1vZGVsLCBTZXJ2aWNlPixcbiAgICAgICAgdHlwZT86IFR5cGVEZXNjcmlwdG9yPEZpZWxkTW9kZWw+XG4gICAgKTogRmllbGRMb29rdXBEZXNjcmlwdG9yPEZpZWxkTW9kZWwsIEVkaXRvck1vZGVsLCBTZXJ2aWNlLCBGaWVsZFZhbHVlPjtcblxuICAgIGFkZEZpZWxkTG9va3VwV2l0aFByb3ZpZGVyVW5zYWZlPEZpZWxkTW9kZWwsIFNlcnZpY2UsIEZpZWxkVmFsdWUgPSBGaWVsZE1vZGVsPihcbiAgICAgICAgcHJvcGVydHk6IHN0cmluZyxcbiAgICAgICAgcHJvdmlkZXI6IEZpZWxkTG9va3VwUHJvdmlkZXJUeXBlPEZpZWxkTW9kZWwsIFNlcnZpY2U+LFxuICAgICAgICB0eXBlPzogVHlwZURlc2NyaXB0b3I8RmllbGRNb2RlbD5cbiAgICApOiBGaWVsZExvb2t1cERlc2NyaXB0b3I8RmllbGRNb2RlbCwgRWRpdG9yTW9kZWwsIFNlcnZpY2UsIEZpZWxkVmFsdWU+O1xuXG4gICAgYWRkRmllbGRMb29rdXBXaXRoUHJvdmlkZXJBbmRPcHRpb25zVmFsdWVQcm9wZXJ0eTxQcm9wZXJ0eSBleHRlbmRzIGtleW9mIEVkaXRvck1vZGVsLCBTZXJ2aWNlLCBGaWVsZE1vZGVsLCBGaWVsZFZhbHVlID0gRWRpdG9yTW9kZWxbUHJvcGVydHldPihcbiAgICAgICAgcHJvcGVydHk6IFByb3BlcnR5LFxuICAgICAgICBwcm92aWRlcjogRmllbGRMb29rdXBQcm92aWRlclR5cGU8RmllbGRNb2RlbCwgU2VydmljZT4sXG4gICAgICAgIHR5cGU6IFR5cGVEZXNjcmlwdG9yPEZpZWxkTW9kZWw+LFxuICAgICAgICBsb29rdXBPcHRpb25zVmFsdWVQcm9wZXJ0eTogYW55IC8vIFNob3VsZCBub3QgYWN0dWFsbHkgYmUgYW55LCBidXQgZXh0ZW5kaW5nIEtleW9mQW5kT2ZUeXBlIGNhdXNlcyB3ZWlyZCBUUyBjb21waWxlciBwcm9ibGVtcyB3aXRoICdUd28gZGlmZmVyZW50IHR5cGVzIHdpdGggdGhpcyBuYW1lIGV4aXN0LCBidXQgdGhleSBhcmUgdW5yZWxhdGVkJ1xuICAgICk6IEZpZWxkTG9va3VwRGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBFZGl0b3JNb2RlbCwgU2VydmljZSwgRmllbGRWYWx1ZT47XG5cbiAgICBhZGRGaWVsZExvb2t1cFdpdGhQcm92aWRlckFuZE9wdGlvbnNWYWx1ZVByb3BlcnR5VW5zYWZlPFNlcnZpY2UsIEZpZWxkTW9kZWwsIEZpZWxkVmFsdWUgPSBGaWVsZE1vZGVsPihcbiAgICAgICAgcHJvcGVydHk6IHN0cmluZyxcbiAgICAgICAgcHJvdmlkZXI6IEZpZWxkTG9va3VwUHJvdmlkZXJUeXBlPEZpZWxkTW9kZWwsIFNlcnZpY2U+LFxuICAgICAgICB0eXBlOiBUeXBlRGVzY3JpcHRvcjxGaWVsZE1vZGVsPixcbiAgICAgICAgbG9va3VwT3B0aW9uc1ZhbHVlUHJvcGVydHk6IHN0cmluZ1xuICAgICk6IEZpZWxkTG9va3VwRGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBFZGl0b3JNb2RlbCwgU2VydmljZSwgRmllbGRWYWx1ZT47XG5cbiAgICBhZGRGaWVsZExvb2t1cEVudW08UHJvcGVydHkgZXh0ZW5kcyBrZXlvZiBFZGl0b3JNb2RlbCwgRW51bSBleHRlbmRzIE5vbk51bGxhYmxlPEVkaXRvck1vZGVsW1Byb3BlcnR5XT4+KFxuICAgICAgICBwcm9wZXJ0eToga2V5b2YgRWRpdG9yTW9kZWwsXG4gICAgICAgIGVudW1Nb2RlbDogRW51bURlc2NyaXB0b3I8RW51bT4sXG4gICAgICAgIG9wdGlvbnM/OiBBcnJheTxFbnVtPlxuICAgICk6IEZpZWxkTG9va3VwRW51bURlc2NyaXB0b3I8RW51bSwgRWRpdG9yTW9kZWw+O1xuXG4gICAgYWRkRmllbGRMb29rdXBFbnVtVW5zYWZlPEVudW0gPSBFbnVtQ29uc3RhbnRUeXBlPihwcm9wZXJ0eTogc3RyaW5nLCBlbnVtTW9kZWw6IEVudW1EZXNjcmlwdG9yPEVudW0+LCBvcHRpb25zPzogQXJyYXk8RW51bT4pOiBGaWVsZExvb2t1cEVudW1EZXNjcmlwdG9yPEVudW0sIEVkaXRvck1vZGVsPjtcblxuICAgIGFkZEZpZWxkTWFueUVkaXRvcjxQcm9wZXJ0eSBleHRlbmRzIGtleW9mIEVkaXRvck1vZGVsLCBGaWVsZE1vZGVsID0gQXJyYXlJdGVtVHlwZTxFZGl0b3JNb2RlbFtQcm9wZXJ0eV0+LCBGaWVsZFZhbHVlID0gRWRpdG9yTW9kZWxbUHJvcGVydHldPihcbiAgICAgICAgcHJvcGVydHk6IFByb3BlcnR5LFxuICAgICAgICB0YWJsZXZpZXdEZXNjcmlwdG9yOiBJVGFibGV2aWV3RGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBhbnksIGFueT5cbiAgICApOiBGaWVsZE1hbnlFZGl0b3JEZXNjcmlwdG9yPEZpZWxkTW9kZWwsIEVkaXRvck1vZGVsLCBGaWVsZFZhbHVlPjtcblxuICAgIGFkZEZpZWxkTWFueUVkaXRvclVuc2FmZTxGaWVsZE1vZGVsLCBGaWVsZFZhbHVlID0gRmllbGRNb2RlbFtdPihcbiAgICAgICAgcHJvcGVydHk6IHN0cmluZyxcbiAgICAgICAgdGFibGV2aWV3RGVzY3JpcHRvcjogSVRhYmxldmlld0Rlc2NyaXB0b3I8RmllbGRNb2RlbCwgYW55LCBhbnk+XG4gICAgKTogRmllbGRNYW55RWRpdG9yRGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBFZGl0b3JNb2RlbCwgRmllbGRWYWx1ZT47XG5cbiAgICBhZGRGaWVsZE1hbnlUb01hbnlFZGl0b3I8UHJvcGVydHkgZXh0ZW5kcyBrZXlvZiBFZGl0b3JNb2RlbCwgRmllbGRNb2RlbCA9IEFycmF5SXRlbVR5cGU8RWRpdG9yTW9kZWxbUHJvcGVydHldPiwgRmllbGRWYWx1ZSA9IEVkaXRvck1vZGVsW1Byb3BlcnR5XT4oXG4gICAgICAgIHByb3BlcnR5OiBQcm9wZXJ0eSxcbiAgICAgICAgbWFpblRhYmxlRGVzY3JpcHRvcjogSVRhYmxlRGVzY3JpcHRvckludGVybmFsPEZpZWxkTW9kZWw+LFxuICAgICAgICBsb29rdXBUYWJsZURlc2NyaXB0b3I6IElUYWJsZURlc2NyaXB0b3JJbnRlcm5hbDxGaWVsZE1vZGVsPlxuICAgICk6IEZpZWxkTWFueVRvTWFueUVkaXRvckRlc2NyaXB0b3I8RmllbGRNb2RlbCwgRWRpdG9yTW9kZWwsIHVuZGVmaW5lZCwgRmllbGRWYWx1ZT47XG5cbiAgICBhZGRGaWVsZE1hbnlUb01hbnlFZGl0b3JVbnNhZmU8RmllbGRNb2RlbCwgRmllbGRWYWx1ZSA9IEZpZWxkTW9kZWxbXT4oXG4gICAgICAgIHByb3BlcnR5OiBzdHJpbmcsXG4gICAgICAgIG1haW5UYWJsZURlc2NyaXB0b3I6IElUYWJsZURlc2NyaXB0b3JJbnRlcm5hbDxGaWVsZE1vZGVsPixcbiAgICAgICAgbG9va3VwVGFibGVEZXNjcmlwdG9yOiBJVGFibGVEZXNjcmlwdG9ySW50ZXJuYWw8RmllbGRNb2RlbD5cbiAgICApOiBGaWVsZE1hbnlUb01hbnlFZGl0b3JEZXNjcmlwdG9yPEZpZWxkTW9kZWwsIEVkaXRvck1vZGVsLCB1bmRlZmluZWQsIEZpZWxkVmFsdWU+O1xuXG4gICAgYWRkRmllbGRNYW55VG9NYW55RWRpdG9yV2l0aFByb3ZpZGVyPFByb3BlcnR5IGV4dGVuZHMga2V5b2YgRWRpdG9yTW9kZWwsIFNlcnZpY2UsIEZpZWxkTW9kZWwgPSBBcnJheUl0ZW1UeXBlPEVkaXRvck1vZGVsW1Byb3BlcnR5XT4sIEZpZWxkVmFsdWUgPSBFZGl0b3JNb2RlbFtQcm9wZXJ0eV0+KFxuICAgICAgICBwcm9wZXJ0eTogUHJvcGVydHksXG4gICAgICAgIG1haW5UYWJsZURlc2NyaXB0b3I6IElUYWJsZURlc2NyaXB0b3JJbnRlcm5hbDxGaWVsZE1vZGVsPixcbiAgICAgICAgbG9va3VwVGFibGVEZXNjcmlwdG9yOiBJVGFibGVEZXNjcmlwdG9ySW50ZXJuYWw8RmllbGRNb2RlbD4sXG4gICAgICAgIGxvb2t1cERhdGFQcm92aWRlcjogSVRhYmxlRGF0YVByb3ZpZGVyPEZpZWxkTW9kZWwsIFNlcnZpY2U+XG4gICAgKTogRmllbGRNYW55VG9NYW55RWRpdG9yRGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBFZGl0b3JNb2RlbCwgU2VydmljZSwgRmllbGRWYWx1ZT47XG5cbiAgICBhZGRGaWVsZE1hbnlUb01hbnlFZGl0b3JXaXRoUHJvdmlkZXJVbnNhZmU8RmllbGRNb2RlbCwgU2VydmljZSwgRmllbGRWYWx1ZSA9IEZpZWxkTW9kZWxbXT4oXG4gICAgICAgIHByb3BlcnR5OiBzdHJpbmcsXG4gICAgICAgIG1haW5UYWJsZURlc2NyaXB0b3I6IElUYWJsZURlc2NyaXB0b3JJbnRlcm5hbDxGaWVsZE1vZGVsPixcbiAgICAgICAgbG9va3VwVGFibGVEZXNjcmlwdG9yOiBJVGFibGVEZXNjcmlwdG9ySW50ZXJuYWw8RmllbGRNb2RlbD4sXG4gICAgICAgIGxvb2t1cERhdGFQcm92aWRlcjogSVRhYmxlRGF0YVByb3ZpZGVyPEZpZWxkTW9kZWwsIFNlcnZpY2U+XG4gICAgKTogRmllbGRNYW55VG9NYW55RWRpdG9yRGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBFZGl0b3JNb2RlbCwgU2VydmljZSwgRmllbGRWYWx1ZT47XG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLWZpZWxkcy5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9hcGkvc3JjL2VkaXRvci9tb2RlbHMvZWRpdG9yLWZpZWxkcy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBcnJheUl0ZW1UeXBlLCBFbnVtQ29uc3RhbnRUeXBlLCBJVGFibGV2aWV3RGVzY3JpcHRvciwgSWRUeXBlLCBOdWxsYWJsZX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9jb3JlJztcbmltcG9ydCB7RW51bURlc2NyaXB0b3IsIFR5cGVEZXNjcmlwdG9yfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL21vZGVsJztcbmltcG9ydCB7SVRhYmxlRGF0YVByb3ZpZGVyLCBJVGFibGVEZXNjcmlwdG9ySW50ZXJuYWx9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGUvYXBpJztcblxuaW1wb3J0IHtGaWVsZEFjdGlvbkRlc2NyaXB0b3J9IGZyb20gJy4uL2Rlc2NyaXB0b3JzL2ZpZWxkLWFjdGlvbi5kZXNjcmlwdG9yJztcbmltcG9ydCB7QUZpZWxkRGVzY3JpcHRvcn0gZnJvbSAnLi4vZGVzY3JpcHRvcnMvZmllbGQtYmFzZS5kZXNjcmlwdG9yJztcbmltcG9ydCB7RmllbGRMb29rdXBEZXNjcmlwdG9yLCBGaWVsZExvb2t1cEVudW1EZXNjcmlwdG9yLCBGaWVsZExvb2t1cFByb3ZpZGVyVHlwZX0gZnJvbSAnLi4vZGVzY3JpcHRvcnMvZmllbGQtbG9va3VwLmRlc2NyaXB0b3InO1xuaW1wb3J0IHtGaWVsZE1hbnlFZGl0b3JEZXNjcmlwdG9yLCBGaWVsZE1hbnlUb01hbnlFZGl0b3JEZXNjcmlwdG9yfSBmcm9tICcuLi9kZXNjcmlwdG9ycy9maWVsZC1tYW55LmRlc2NyaXB0b3InO1xuaW1wb3J0IHtGaWVsZFZhbGlkYXRpb25EZXNjcmlwdG9yT3B0c1R5cGV9IGZyb20gJy4uL2Rlc2NyaXB0b3JzL2ZpZWxkLXZhbGlkYXRpb24uZGVzY3JpcHRvcic7XG5pbXBvcnQge0ZpZWxkSW5wdXREZXNjcmlwdG9yLCBGaWVsZElucHV0RGVzY3JpcHRvclR5cGV9IGZyb20gJy4uL2Rlc2NyaXB0b3JzL2ZpZWxkLmRlc2NyaXB0b3InO1xuaW1wb3J0IHtUYWJsZXZpZXdFZGl0b3JUeXBlRW51bX0gZnJvbSAnLi9lZGl0b3IubW9kZWwnO1xuaW1wb3J0IHtGb3JtVmFsaWRhdGlvbk1lc3NhZ2UsIEZvcm1WYWxpZGF0b3J9IGZyb20gJy4vZmllbGQtdmFsaWRhdGlvbi5tb2RlbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUZpZWxkc01hbmFnZUludGVyZmFjZTxFZGl0b3JNb2RlbCwgUGFyZW50RWRpdG9yTW9kZWw+IHtcbiAgICBnZXRGaWVsZChwcm9wZXJ0eToga2V5b2YgRWRpdG9yTW9kZWwsIGVkaXRvclR5cGU6IFRhYmxldmlld0VkaXRvclR5cGVFbnVtKTogQUZpZWxkRGVzY3JpcHRvcjxhbnksIEVkaXRvck1vZGVsLCBQYXJlbnRFZGl0b3JNb2RlbD4gfCBudWxsO1xuXG4gICAgZ2V0RmllbGRVbnNhZmUocHJvcGVydHk6IHN0cmluZywgZWRpdG9yVHlwZTogVGFibGV2aWV3RWRpdG9yVHlwZUVudW0pOiBBRmllbGREZXNjcmlwdG9yPGFueSwgRWRpdG9yTW9kZWw+IHwgbnVsbDtcblxuICAgIHJlbW92ZUZpZWxkKHByb3BlcnR5OiBrZXlvZiBFZGl0b3JNb2RlbCk6IHZvaWQ7XG5cbiAgICByZW1vdmVGaWVsZFVuc2FmZShwcm9wZXJ0eTogc3RyaW5nKTogdm9pZDtcblxuICAgIGFkZEZpZWxkRGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBGaWVsZFZhbHVlID0gRmllbGRNb2RlbD4oZmllbGQ6IEFGaWVsZERlc2NyaXB0b3I8RmllbGRNb2RlbCwgRWRpdG9yTW9kZWwsIEZpZWxkVmFsdWUsIFBhcmVudEVkaXRvck1vZGVsPik6IHRoaXM7XG5cbiAgICBhZGRGaWVsZDxQcm9wZXJ0eSBleHRlbmRzIGtleW9mIEVkaXRvck1vZGVsLCBGaWVsZE1vZGVsID0gTm9uTnVsbGFibGU8RWRpdG9yTW9kZWxbUHJvcGVydHldPiwgRmllbGRWYWx1ZSA9IEVkaXRvck1vZGVsW1Byb3BlcnR5XT4oXG4gICAgICAgIHByb3BlcnR5OiBQcm9wZXJ0eVxuICAgICk6IEZpZWxkSW5wdXREZXNjcmlwdG9yPEVkaXRvck1vZGVsLCBGaWVsZE1vZGVsLCBGaWVsZFZhbHVlLCBQYXJlbnRFZGl0b3JNb2RlbD47XG5cbiAgICBhZGRGaWVsZFVuc2FmZTxGaWVsZE1vZGVsID0gRmllbGRJbnB1dERlc2NyaXB0b3JUeXBlLCBGaWVsZFZhbHVlID0gRmllbGRNb2RlbD4ocHJvcGVydHk6IHN0cmluZyk6IEZpZWxkSW5wdXREZXNjcmlwdG9yPEVkaXRvck1vZGVsLCBGaWVsZE1vZGVsLCBGaWVsZFZhbHVlLCBQYXJlbnRFZGl0b3JNb2RlbD47XG5cbiAgICBhZGRGaWVsZHMoLi4ucHJvcGVydGllczogKGtleW9mIEVkaXRvck1vZGVsKVtdKTogdGhpcztcblxuICAgIGFkZEZpZWxkQWN0aW9uKGFjdGlvbk5hbWU6IHN0cmluZyk6IEZpZWxkQWN0aW9uRGVzY3JpcHRvcjxFZGl0b3JNb2RlbCwgUGFyZW50RWRpdG9yTW9kZWw+O1xuXG4gICAgYWRkRmllbGRMb29rdXA8UHJvcGVydHkgZXh0ZW5kcyBrZXlvZiBFZGl0b3JNb2RlbCwgRmllbGRNb2RlbCA9IE5vbk51bGxhYmxlPEVkaXRvck1vZGVsW1Byb3BlcnR5XT4sIEZpZWxkVmFsdWUgPSBFZGl0b3JNb2RlbFtQcm9wZXJ0eV0+KFxuICAgICAgICBwcm9wZXJ0eTogUHJvcGVydHksXG4gICAgICAgIHR5cGU/OiBUeXBlRGVzY3JpcHRvcjxGaWVsZE1vZGVsPlxuICAgICk6IEZpZWxkTG9va3VwRGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBFZGl0b3JNb2RlbCwgdW5kZWZpbmVkLCBGaWVsZFZhbHVlLCBQYXJlbnRFZGl0b3JNb2RlbD47XG5cbiAgICBhZGRGaWVsZExvb2t1cFVuc2FmZTxGaWVsZE1vZGVsLCBGaWVsZFZhbHVlID0gRmllbGRNb2RlbD4oXG4gICAgICAgIHByb3BlcnR5OiBzdHJpbmcsXG4gICAgICAgIHR5cGU/OiBUeXBlRGVzY3JpcHRvcjxGaWVsZE1vZGVsPlxuICAgICk6IEZpZWxkTG9va3VwRGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBFZGl0b3JNb2RlbCwgdW5kZWZpbmVkLCBGaWVsZFZhbHVlLCBQYXJlbnRFZGl0b3JNb2RlbD47XG5cbiAgICBhZGRGaWVsZExvb2t1cFdpdGhPcHRpb25zVmFsdWVQcm9wZXJ0eTxQcm9wZXJ0eSBleHRlbmRzIGtleW9mIEVkaXRvck1vZGVsLCBGaWVsZE1vZGVsLCBGaWVsZFZhbHVlID0gRWRpdG9yTW9kZWxbUHJvcGVydHldPihcbiAgICAgICAgcHJvcGVydHk6IFByb3BlcnR5LFxuICAgICAgICB0eXBlOiBUeXBlRGVzY3JpcHRvcjxGaWVsZE1vZGVsPixcbiAgICAgICAgbG9va3VwT3B0aW9uc1ZhbHVlUHJvcGVydHk6IGFueSAvLyBTaG91bGQgbm90IGFjdHVhbGx5IGJlIGFueSwgYnV0IGV4dGVuZGluZyBLZXlvZkFuZE9mVHlwZSBjYXVzZXMgd2VpcmQgVFMgY29tcGlsZXIgcHJvYmxlbXMgd2l0aCAnVHdvIGRpZmZlcmVudCB0eXBlcyB3aXRoIHRoaXMgbmFtZSBleGlzdCwgYnV0IHRoZXkgYXJlIHVucmVsYXRlZCdcbiAgICApOiBGaWVsZExvb2t1cERlc2NyaXB0b3I8RmllbGRNb2RlbCwgRWRpdG9yTW9kZWwsIHVuZGVmaW5lZCwgRmllbGRWYWx1ZSwgUGFyZW50RWRpdG9yTW9kZWw+O1xuXG4gICAgYWRkRmllbGRMb29rdXBXaXRoT3B0aW9uc1ZhbHVlUHJvcGVydHlVbnNhZmU8RmllbGRNb2RlbCwgRmllbGRWYWx1ZSA9IE51bGxhYmxlPElkVHlwZT4+KFxuICAgICAgICBwcm9wZXJ0eTogc3RyaW5nLFxuICAgICAgICB0eXBlOiBUeXBlRGVzY3JpcHRvcjxGaWVsZE1vZGVsPixcbiAgICAgICAgbG9va3VwT3B0aW9uc1ZhbHVlUHJvcGVydHk6IHN0cmluZ1xuICAgICk6IEZpZWxkTG9va3VwRGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBFZGl0b3JNb2RlbCwgdW5kZWZpbmVkLCBGaWVsZFZhbHVlLCBQYXJlbnRFZGl0b3JNb2RlbD47XG5cbiAgICBhZGRGaWVsZExvb2t1cFdpdGhQcm92aWRlcjxQcm9wZXJ0eSBleHRlbmRzIGtleW9mIEVkaXRvck1vZGVsLCBTZXJ2aWNlLCBGaWVsZE1vZGVsID0gTm9uTnVsbGFibGU8RWRpdG9yTW9kZWxbUHJvcGVydHldPiwgRmllbGRWYWx1ZSA9IEVkaXRvck1vZGVsW1Byb3BlcnR5XT4oXG4gICAgICAgIHByb3BlcnR5OiBQcm9wZXJ0eSxcbiAgICAgICAgcHJvdmlkZXI6IEZpZWxkTG9va3VwUHJvdmlkZXJUeXBlPEZpZWxkTW9kZWwsIFNlcnZpY2U+LFxuICAgICAgICB0eXBlPzogVHlwZURlc2NyaXB0b3I8RmllbGRNb2RlbD5cbiAgICApOiBGaWVsZExvb2t1cERlc2NyaXB0b3I8RmllbGRNb2RlbCwgRWRpdG9yTW9kZWwsIFNlcnZpY2UsIEZpZWxkVmFsdWUsIFBhcmVudEVkaXRvck1vZGVsPjtcblxuICAgIGFkZEZpZWxkTG9va3VwV2l0aFByb3ZpZGVyVW5zYWZlPEZpZWxkTW9kZWwsIFNlcnZpY2UsIEZpZWxkVmFsdWUgPSBGaWVsZE1vZGVsPihcbiAgICAgICAgcHJvcGVydHk6IHN0cmluZyxcbiAgICAgICAgcHJvdmlkZXI6IEZpZWxkTG9va3VwUHJvdmlkZXJUeXBlPEZpZWxkTW9kZWwsIFNlcnZpY2U+LFxuICAgICAgICB0eXBlPzogVHlwZURlc2NyaXB0b3I8RmllbGRNb2RlbD5cbiAgICApOiBGaWVsZExvb2t1cERlc2NyaXB0b3I8RmllbGRNb2RlbCwgRWRpdG9yTW9kZWwsIFNlcnZpY2UsIEZpZWxkVmFsdWUsIFBhcmVudEVkaXRvck1vZGVsPjtcblxuICAgIGFkZEZpZWxkTG9va3VwV2l0aFByb3ZpZGVyQW5kT3B0aW9uc1ZhbHVlUHJvcGVydHk8UHJvcGVydHkgZXh0ZW5kcyBrZXlvZiBFZGl0b3JNb2RlbCwgU2VydmljZSwgRmllbGRNb2RlbCwgRmllbGRWYWx1ZSA9IEVkaXRvck1vZGVsW1Byb3BlcnR5XT4oXG4gICAgICAgIHByb3BlcnR5OiBQcm9wZXJ0eSxcbiAgICAgICAgcHJvdmlkZXI6IEZpZWxkTG9va3VwUHJvdmlkZXJUeXBlPEZpZWxkTW9kZWwsIFNlcnZpY2U+LFxuICAgICAgICB0eXBlOiBUeXBlRGVzY3JpcHRvcjxGaWVsZE1vZGVsPixcbiAgICAgICAgbG9va3VwT3B0aW9uc1ZhbHVlUHJvcGVydHk6IGFueSAvLyBTaG91bGQgbm90IGFjdHVhbGx5IGJlIGFueSwgYnV0IGV4dGVuZGluZyBLZXlvZkFuZE9mVHlwZSBjYXVzZXMgd2VpcmQgVFMgY29tcGlsZXIgcHJvYmxlbXMgd2l0aCAnVHdvIGRpZmZlcmVudCB0eXBlcyB3aXRoIHRoaXMgbmFtZSBleGlzdCwgYnV0IHRoZXkgYXJlIHVucmVsYXRlZCdcbiAgICApOiBGaWVsZExvb2t1cERlc2NyaXB0b3I8RmllbGRNb2RlbCwgRWRpdG9yTW9kZWwsIFNlcnZpY2UsIEZpZWxkVmFsdWUsIFBhcmVudEVkaXRvck1vZGVsPjtcblxuICAgIGFkZEZpZWxkTG9va3VwV2l0aFByb3ZpZGVyQW5kT3B0aW9uc1ZhbHVlUHJvcGVydHlVbnNhZmU8U2VydmljZSwgRmllbGRNb2RlbCwgRmllbGRWYWx1ZSA9IEZpZWxkTW9kZWw+KFxuICAgICAgICBwcm9wZXJ0eTogc3RyaW5nLFxuICAgICAgICBwcm92aWRlcjogRmllbGRMb29rdXBQcm92aWRlclR5cGU8RmllbGRNb2RlbCwgU2VydmljZT4sXG4gICAgICAgIHR5cGU6IFR5cGVEZXNjcmlwdG9yPEZpZWxkTW9kZWw+LFxuICAgICAgICBsb29rdXBPcHRpb25zVmFsdWVQcm9wZXJ0eTogc3RyaW5nXG4gICAgKTogRmllbGRMb29rdXBEZXNjcmlwdG9yPEZpZWxkTW9kZWwsIEVkaXRvck1vZGVsLCBTZXJ2aWNlLCBGaWVsZFZhbHVlLCBQYXJlbnRFZGl0b3JNb2RlbD47XG5cbiAgICBhZGRGaWVsZExvb2t1cEVudW08UHJvcGVydHkgZXh0ZW5kcyBrZXlvZiBFZGl0b3JNb2RlbCwgRW51bSBleHRlbmRzIE5vbk51bGxhYmxlPEVkaXRvck1vZGVsW1Byb3BlcnR5XT4+KFxuICAgICAgICBwcm9wZXJ0eToga2V5b2YgRWRpdG9yTW9kZWwsXG4gICAgICAgIGVudW1Nb2RlbDogRW51bURlc2NyaXB0b3I8RW51bT4sXG4gICAgICAgIG9wdGlvbnM/OiBBcnJheTxFbnVtPlxuICAgICk6IEZpZWxkTG9va3VwRW51bURlc2NyaXB0b3I8RW51bSwgRWRpdG9yTW9kZWwsIFBhcmVudEVkaXRvck1vZGVsPjtcblxuICAgIGFkZEZpZWxkTG9va3VwRW51bVVuc2FmZTxFbnVtID0gRW51bUNvbnN0YW50VHlwZT4oXG4gICAgICAgIHByb3BlcnR5OiBzdHJpbmcsXG4gICAgICAgIGVudW1Nb2RlbDogRW51bURlc2NyaXB0b3I8RW51bT4sXG4gICAgICAgIG9wdGlvbnM/OiBBcnJheTxFbnVtPlxuICAgICk6IEZpZWxkTG9va3VwRW51bURlc2NyaXB0b3I8RW51bSwgRWRpdG9yTW9kZWwsIFBhcmVudEVkaXRvck1vZGVsPjtcblxuICAgIGFkZEZpZWxkTWFueUVkaXRvcjxQcm9wZXJ0eSBleHRlbmRzIGtleW9mIEVkaXRvck1vZGVsLCBGaWVsZE1vZGVsID0gQXJyYXlJdGVtVHlwZTxFZGl0b3JNb2RlbFtQcm9wZXJ0eV0+LCBGaWVsZFZhbHVlID0gRWRpdG9yTW9kZWxbUHJvcGVydHldPihcbiAgICAgICAgcHJvcGVydHk6IFByb3BlcnR5LFxuICAgICAgICB0YWJsZXZpZXdEZXNjcmlwdG9yOiBJVGFibGV2aWV3RGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBhbnksIGFueSwgRWRpdG9yTW9kZWw+XG4gICAgKTogRmllbGRNYW55RWRpdG9yRGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBFZGl0b3JNb2RlbCwgRmllbGRWYWx1ZSwgUGFyZW50RWRpdG9yTW9kZWw+O1xuXG4gICAgYWRkRmllbGRNYW55RWRpdG9yVW5zYWZlPEZpZWxkTW9kZWwsIEZpZWxkVmFsdWUgPSBGaWVsZE1vZGVsW10+KFxuICAgICAgICBwcm9wZXJ0eTogc3RyaW5nLFxuICAgICAgICB0YWJsZXZpZXdEZXNjcmlwdG9yOiBJVGFibGV2aWV3RGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBhbnksIGFueSwgRWRpdG9yTW9kZWw+XG4gICAgKTogRmllbGRNYW55RWRpdG9yRGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBFZGl0b3JNb2RlbCwgRmllbGRWYWx1ZSwgUGFyZW50RWRpdG9yTW9kZWw+O1xuXG4gICAgYWRkRmllbGRNYW55VG9NYW55RWRpdG9yPFByb3BlcnR5IGV4dGVuZHMga2V5b2YgRWRpdG9yTW9kZWwsIFNlcnZpY2UsIEZpZWxkTW9kZWwgPSBBcnJheUl0ZW1UeXBlPEVkaXRvck1vZGVsW1Byb3BlcnR5XT4sIEZpZWxkVmFsdWUgPSBFZGl0b3JNb2RlbFtQcm9wZXJ0eV0+KFxuICAgICAgICBwcm9wZXJ0eTogUHJvcGVydHksXG4gICAgICAgIG1haW5UYWJsZURlc2NyaXB0b3I6IElUYWJsZURlc2NyaXB0b3JJbnRlcm5hbDxGaWVsZE1vZGVsPixcbiAgICAgICAgbG9va3VwVGFibGVEZXNjcmlwdG9yOiBJVGFibGVEZXNjcmlwdG9ySW50ZXJuYWw8RmllbGRNb2RlbD4sXG4gICAgICAgIGxvb2t1cERhdGFQcm92aWRlcjogSVRhYmxlRGF0YVByb3ZpZGVyPEZpZWxkTW9kZWwsIFNlcnZpY2U+XG4gICAgKTogRmllbGRNYW55VG9NYW55RWRpdG9yRGVzY3JpcHRvcjxGaWVsZE1vZGVsLCBFZGl0b3JNb2RlbCwgU2VydmljZSwgRmllbGRWYWx1ZSwgUGFyZW50RWRpdG9yTW9kZWw+O1xuXG4gICAgYWRkRmllbGRNYW55VG9NYW55RWRpdG9yVW5zYWZlPEZpZWxkTW9kZWwsIFNlcnZpY2UsIEZpZWxkVmFsdWUgPSBGaWVsZE1vZGVsW10+KFxuICAgICAgICBwcm9wZXJ0eTogc3RyaW5nLFxuICAgICAgICBtYWluVGFibGVEZXNjcmlwdG9yOiBJVGFibGVEZXNjcmlwdG9ySW50ZXJuYWw8RmllbGRNb2RlbD4sXG4gICAgICAgIGxvb2t1cFRhYmxlRGVzY3JpcHRvcjogSVRhYmxlRGVzY3JpcHRvckludGVybmFsPEZpZWxkTW9kZWw+LFxuICAgICAgICBsb29rdXBEYXRhUHJvdmlkZXI6IElUYWJsZURhdGFQcm92aWRlcjxGaWVsZE1vZGVsLCBTZXJ2aWNlPlxuICAgICk6IEZpZWxkTWFueVRvTWFueUVkaXRvckRlc2NyaXB0b3I8RmllbGRNb2RlbCwgRWRpdG9yTW9kZWwsIFNlcnZpY2UsIEZpZWxkVmFsdWUsIFBhcmVudEVkaXRvck1vZGVsPjtcblxuICAgIHdpdGhWYWxpZGF0aW9uPFZhbHVlID0gRWRpdG9yTW9kZWw+KFxuICAgICAgICBuYW1lOiBzdHJpbmcsXG4gICAgICAgIHZhbGlkYXRvcj86IEZvcm1WYWxpZGF0b3I8VmFsdWUsIFBhcmVudEVkaXRvck1vZGVsPixcbiAgICAgICAgbWVzc2FnZT86IEZvcm1WYWxpZGF0aW9uTWVzc2FnZTxWYWx1ZSwgUGFyZW50RWRpdG9yTW9kZWw+LFxuICAgICAgICBvcHRzPzogRmllbGRWYWxpZGF0aW9uRGVzY3JpcHRvck9wdHNUeXBlPGtleW9mIEVkaXRvck1vZGVsPlxuICAgICk6IHRoaXM7XG5cbiAgICB3aXRoVmFsaWRhdGlvblVuc2FmZTxWYWx1ZSA9IEVkaXRvck1vZGVsPihcbiAgICAgICAgbmFtZTogc3RyaW5nLFxuICAgICAgICB2YWxpZGF0b3I/OiBGb3JtVmFsaWRhdG9yPFZhbHVlLCBQYXJlbnRFZGl0b3JNb2RlbD4sXG4gICAgICAgIG1lc3NhZ2U/OiBGb3JtVmFsaWRhdGlvbk1lc3NhZ2U8VmFsdWUsIFBhcmVudEVkaXRvck1vZGVsPixcbiAgICAgICAgb3B0cz86IEZpZWxkVmFsaWRhdGlvbkRlc2NyaXB0b3JPcHRzVHlwZVxuICAgICk6IHRoaXM7XG59XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtYWN0aW9uLWNvbnRleHQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi90YWJsZXZpZXcvYXBpL3NyYy9lZGl0b3IvbW9kZWxzL2ZpZWxkLWFjdGlvbi1jb250ZXh0Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0Fic3RyYWN0Q29udHJvbCwgRm9ybUFycmF5LCBGb3JtR3JvdXB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHtGb3JtbHlGb3JtT3B0aW9uc30gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5cbmltcG9ydCB7RmllbGRBY3Rpb25EZXNjcmlwdG9yfSBmcm9tICcuLi9kZXNjcmlwdG9ycy9maWVsZC1hY3Rpb24uZGVzY3JpcHRvcic7XG5pbXBvcnQge0lGb3JtRWRpdG9yQ29tcG9uZW50fSBmcm9tICcuL2Zvcm0tZWRpdG9yLmludGVyZmFjZSc7XG5pbXBvcnQge0NvbW1vbnNGb3JtbHlGaWVsZFByb3BzfSBmcm9tICcuL2Zvcm1seS1maWVsZC5tb2RlbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmllbGRBY3Rpb25Db250ZXh0PEVUPiB7XG4gICAgZGVzY3JpcHRvcjogRmllbGRBY3Rpb25EZXNjcmlwdG9yPEVUPjtcbiAgICBmb3JtRWRpdG9yQ29tcG9uZW50OiBJRm9ybUVkaXRvckNvbXBvbmVudDxFVD47XG4gICAgZm9ybWx5OiB7XG4gICAgICAgIG1vZGVsOiBFVDtcbiAgICAgICAgZm9ybUNvbnRyb2w6IEFic3RyYWN0Q29udHJvbDtcbiAgICAgICAgZm9ybTogRm9ybUdyb3VwIHwgRm9ybUFycmF5O1xuICAgICAgICBvcHRpb25zOiBGb3JtbHlGb3JtT3B0aW9ucztcbiAgICAgICAgcHJvcHM6IENvbW1vbnNGb3JtbHlGaWVsZFByb3BzO1xuICAgICAgICBmb3JtU3RhdGU6IGFueTtcbiAgICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZpZWxkQWN0aW9uUmVzdWx0IHtcbiAgICBtZXNzYWdlPzogRmllbGRBY3Rpb25SZXN1bHRNZXNzYWdlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZpZWxkQWN0aW9uUmVzdWx0TWVzc2FnZSB7XG4gICAgY29udGVudDogc3RyaW5nO1xuICAgIHNldmVyaXR5PzogJ3N1Y2Nlc3MnIHwgJ3dhcm4nIHwgJ2Vycm9yJztcbn1cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtYWN0aW9uLWNvbnRleHQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi90YWJsZXZpZXcvYXBpL3NyYy9lZGl0b3IvbW9kZWxzL2ZpZWxkLWFjdGlvbi1jb250ZXh0Lm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0Fic3RyYWN0Q29udHJvbCwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQge0Zvcm1seUZvcm1PcHRpb25zfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcblxuaW1wb3J0IHtGaWVsZEFjdGlvbkRlc2NyaXB0b3J9IGZyb20gJy4uL2Rlc2NyaXB0b3JzL2ZpZWxkLWFjdGlvbi5kZXNjcmlwdG9yJztcbmltcG9ydCB7SUZvcm1FZGl0b3JDb21wb25lbnR9IGZyb20gJy4vZm9ybS1lZGl0b3IuaW50ZXJmYWNlJztcbmltcG9ydCB7Q29tbW9uc0Zvcm1seUZpZWxkUHJvcHN9IGZyb20gJy4vZm9ybWx5LWZpZWxkLm1vZGVsJztcblxuZXhwb3J0IGludGVyZmFjZSBGaWVsZEFjdGlvbkNvbnRleHQ8RWRpdG9yTW9kZWwsIFBhcmVudEVkaXRvck1vZGVsID0gdW5kZWZpbmVkPiB7XG4gICAgZGVzY3JpcHRvcjogRmllbGRBY3Rpb25EZXNjcmlwdG9yPEVkaXRvck1vZGVsPjtcbiAgICBmb3JtRWRpdG9yQ29tcG9uZW50OiBJRm9ybUVkaXRvckNvbXBvbmVudDxFZGl0b3JNb2RlbCwgUGFyZW50RWRpdG9yTW9kZWw+O1xuICAgIGZvcm1seToge1xuICAgICAgICBtb2RlbDogRWRpdG9yTW9kZWw7XG4gICAgICAgIGZvcm1Db250cm9sOiBGb3JtQ29udHJvbDx2b2lkPjtcbiAgICAgICAgZm9ybTogRm9ybUdyb3VwPHtbSyBpbiBrZXlvZiBFZGl0b3JNb2RlbF06IEFic3RyYWN0Q29udHJvbDxFZGl0b3JNb2RlbFtLXT59PjtcbiAgICAgICAgb3B0aW9uczogRm9ybWx5Rm9ybU9wdGlvbnM7XG4gICAgICAgIHByb3BzOiBDb21tb25zRm9ybWx5RmllbGRQcm9wczx2b2lkLCBFZGl0b3JNb2RlbCwgUGFyZW50RWRpdG9yTW9kZWw+O1xuICAgICAgICBmb3JtU3RhdGU6IGFueTtcbiAgICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZpZWxkQWN0aW9uUmVzdWx0IHtcbiAgICBtZXNzYWdlPzogRmllbGRBY3Rpb25SZXN1bHRNZXNzYWdlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZpZWxkQWN0aW9uUmVzdWx0TWVzc2FnZSB7XG4gICAgY29udGVudDogc3RyaW5nO1xuICAgIHNldmVyaXR5PzogJ3N1Y2Nlc3MnIHwgJ3dhcm4nIHwgJ2Vycm9yJztcbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtdmFsaWRhdGlvbi5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9hcGkvc3JjL2VkaXRvci9tb2RlbHMvZmllbGQtdmFsaWRhdGlvbi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBYnN0cmFjdENvbnRyb2wsIEZvcm1Db250cm9sLCBGb3JtR3JvdXB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHtGaWVsZFR5cGV9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtJRm9ybUVkaXRvckNvbXBvbmVudH0gZnJvbSAnLi9mb3JtLWVkaXRvci5pbnRlcmZhY2UnO1xuaW1wb3J0IHtDb21tb25zRm9ybWx5RmllbGRDb25maWd9IGZyb20gJy4vZm9ybWx5LWZpZWxkLm1vZGVsJztcblxuZXhwb3J0IHR5cGUgRmllbGRWYWxpZGF0aW9uUGFyYW1zVHlwZTxWYWx1ZSwgRm9ybVZhbHVlLCBQYXJlbnRGb3JtVmFsdWUgPSB1bmRlZmluZWQsIENvbnRyb2wgZXh0ZW5kcyBBYnN0cmFjdENvbnRyb2wgPSBBYnN0cmFjdENvbnRyb2w+ID0ge1xuICAgIGZpZWxkRm9ybUNvbnRyb2w6IFZhbHVlIGV4dGVuZHMgbmV2ZXIgPyB1bmRlZmluZWQgOiBDb250cm9sO1xuICAgIGZvcm06IEZvcm1Hcm91cDx7W0sgaW4ga2V5b2YgRm9ybVZhbHVlXTogQWJzdHJhY3RDb250cm9sPEZvcm1WYWx1ZVtLXT59PjtcbiAgICBmaWVsZENvbXBvbmVudD86IFZhbHVlIGV4dGVuZHMgbmV2ZXIgPyB1bmRlZmluZWQgOiBGaWVsZFR5cGU8Q29tbW9uc0Zvcm1seUZpZWxkQ29uZmlnPFZhbHVlLCBGb3JtVmFsdWU+PjtcbiAgICBmb3JtQ29tcG9uZW50PzogSUZvcm1FZGl0b3JDb21wb25lbnQ8Rm9ybVZhbHVlLCBQYXJlbnRGb3JtVmFsdWU+O1xuICAgIGZpZWxkRm9ybWx5Q29uZmlnOiBWYWx1ZSBleHRlbmRzIG5ldmVyID8gdW5kZWZpbmVkIDogQ29tbW9uc0Zvcm1seUZpZWxkQ29uZmlnPFZhbHVlLCBGb3JtVmFsdWUsIFBhcmVudEZvcm1WYWx1ZT47XG59O1xuXG5leHBvcnQgdHlwZSBGaWVsZEJhc2VWYWxpZGF0b3I8VmFsdWUsIEZvcm1WYWx1ZSwgUGFyZW50Rm9ybVZhbHVlID0gdW5kZWZpbmVkLCBDb250cm9sIGV4dGVuZHMgQWJzdHJhY3RDb250cm9sID0gQWJzdHJhY3RDb250cm9sPiA9IChcbiAgICBwYXJhbXM6IEZpZWxkVmFsaWRhdGlvblBhcmFtc1R5cGU8VmFsdWUsIEZvcm1WYWx1ZSwgUGFyZW50Rm9ybVZhbHVlLCBDb250cm9sPlxuKSA9PiBib29sZWFuO1xuZXhwb3J0IHR5cGUgRmllbGRWYWxpZGF0b3I8VmFsdWUsIEZvcm1WYWx1ZSwgUGFyZW50Rm9ybVZhbHVlID0gdW5kZWZpbmVkLCBDb250cm9sIGV4dGVuZHMgQWJzdHJhY3RDb250cm9sID0gRm9ybUNvbnRyb2w8VmFsdWU+PiA9IEZpZWxkQmFzZVZhbGlkYXRvcjxcbiAgICBWYWx1ZSxcbiAgICBGb3JtVmFsdWUsXG4gICAgUGFyZW50Rm9ybVZhbHVlLFxuICAgIENvbnRyb2xcbj47XG5leHBvcnQgdHlwZSBGb3JtVmFsaWRhdG9yPFZhbHVlLCBQYXJlbnRWYWx1ZSA9IHVuZGVmaW5lZCwgQ29udHJvbCBleHRlbmRzIEFic3RyYWN0Q29udHJvbCA9IEZvcm1Hcm91cDx7W0sgaW4ga2V5b2YgVmFsdWVdOiBBYnN0cmFjdENvbnRyb2w8VmFsdWVbS10+fT4+ID0gRmllbGRCYXNlVmFsaWRhdG9yPFxuICAgIG5ldmVyLFxuICAgIFZhbHVlLFxuICAgIFBhcmVudFZhbHVlLFxuICAgIENvbnRyb2xcbj47XG5cbmV4cG9ydCB0eXBlIEZpZWxkQXN5bmNCYXNlVmFsaWRhdG9yPFZhbHVlLCBGb3JtVmFsdWUsIFBhcmVudEZvcm1WYWx1ZSA9IHVuZGVmaW5lZCwgQ29udHJvbCBleHRlbmRzIEFic3RyYWN0Q29udHJvbCA9IEFic3RyYWN0Q29udHJvbD4gPSAoXG4gICAgcGFyYW1zOiBGaWVsZFZhbGlkYXRpb25QYXJhbXNUeXBlPFZhbHVlLCBGb3JtVmFsdWUsIFBhcmVudEZvcm1WYWx1ZSwgQ29udHJvbD5cbikgPT4gT2JzZXJ2YWJsZTxib29sZWFuPjtcbmV4cG9ydCB0eXBlIEZpZWxkQXN5bmNWYWxpZGF0b3I8VmFsdWUsIEZvcm1WYWx1ZSwgUGFyZW50Rm9ybVZhbHVlID0gdW5kZWZpbmVkLCBDb250cm9sIGV4dGVuZHMgQWJzdHJhY3RDb250cm9sID0gRm9ybUNvbnRyb2w8VmFsdWU+PiA9IEZpZWxkQXN5bmNCYXNlVmFsaWRhdG9yPFxuICAgIFZhbHVlLFxuICAgIEZvcm1WYWx1ZSxcbiAgICBQYXJlbnRGb3JtVmFsdWUsXG4gICAgQ29udHJvbFxuPjtcbmV4cG9ydCB0eXBlIEZvcm1Bc3luY1ZhbGlkYXRvcjxWYWx1ZSwgUGFyZW50Rm9ybVZhbHVlID0gdW5kZWZpbmVkLCBDb250cm9sIGV4dGVuZHMgQWJzdHJhY3RDb250cm9sID0gRm9ybUdyb3VwPHtbSyBpbiBrZXlvZiBWYWx1ZV06IEFic3RyYWN0Q29udHJvbH0+PiA9IEZpZWxkQXN5bmNCYXNlVmFsaWRhdG9yPFxuICAgIG5ldmVyLFxuICAgIFZhbHVlLFxuICAgIFBhcmVudEZvcm1WYWx1ZSxcbiAgICBDb250cm9sXG4+O1xuXG5leHBvcnQgdHlwZSBGaWVsZFZhbGlkYXRpb25NZXNzYWdlPFZhbHVlLCBGb3JtVmFsdWUsIFBhcmVudEZvcm1WYWx1ZSA9IHVuZGVmaW5lZD4gPVxuICAgIHwgc3RyaW5nXG4gICAgfCAoKGVycm9yOiBhbnksIGZpZWxkOiBDb21tb25zRm9ybWx5RmllbGRDb25maWc8VmFsdWUsIEZvcm1WYWx1ZSwgUGFyZW50Rm9ybVZhbHVlPikgPT4gc3RyaW5nIHwgT2JzZXJ2YWJsZTxzdHJpbmc+KTtcbmV4cG9ydCB0eXBlIEZvcm1WYWxpZGF0aW9uTWVzc2FnZTxWYWx1ZSwgUGFyZW50Rm9ybVZhbHVlID0gdW5kZWZpbmVkPiA9IEZpZWxkVmFsaWRhdGlvbk1lc3NhZ2U8VmFsdWUsIFZhbHVlLCBQYXJlbnRGb3JtVmFsdWU+O1xuIl19
@@ -53,4 +53,4 @@ export var FieldGroupTypeEnum;
53
53
  FieldGroupTypeEnum[FieldGroupTypeEnum["Fieldset"] = 0] = "Fieldset";
54
54
  FieldGroupTypeEnum[FieldGroupTypeEnum["Logical"] = 1] = "Logical";
55
55
  })(FieldGroupTypeEnum || (FieldGroupTypeEnum = {}));
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi90YWJsZXZpZXcvYXBpL3NyYy9lZGl0b3IvbW9kZWxzL2ZpZWxkLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU1BLE1BQU0sQ0FBTixJQUFZLGFBSVg7QUFKRCxXQUFZLGFBQWE7SUFDckIsbURBQUssQ0FBQTtJQUNMLHFEQUFNLENBQUE7SUFDTixtREFBSyxDQUFBO0FBQ1QsQ0FBQyxFQUpXLGFBQWEsS0FBYixhQUFhLFFBSXhCO0FBRUQsTUFBTSxDQUFOLElBQVksa0JBZVg7QUFmRCxXQUFZLGtCQUFrQjtJQUMxQiwrREFBTSxDQUFBO0lBQ04sNkRBQUssQ0FBQTtJQUNMLDJEQUFJLENBQUE7SUFDSixtRUFBUSxDQUFBO0lBQ1IsK0RBQU0sQ0FBQTtJQUNOLG1FQUFRLENBQUE7SUFDUiwrREFBTSxDQUFBO0lBQ04sNkRBQUssQ0FBQTtJQUNMLHVFQUFVLENBQUE7SUFDViwyREFBSSxDQUFBO0lBQ0osNERBQUksQ0FBQTtJQUNKLHNFQUFTLENBQUE7SUFDVCxvRUFBUSxDQUFBO0lBQ1IsZ0VBQU0sQ0FBQTtBQUNWLENBQUMsRUFmVyxrQkFBa0IsS0FBbEIsa0JBQWtCLFFBZTdCO0FBRUQsTUFBTSxDQUFOLElBQVksbUJBS1g7QUFMRCxXQUFZLG1CQUFtQjtJQUMzQixxRUFBUSxDQUFBO0lBQ1IsNkVBQVksQ0FBQTtJQUNaLGlFQUFNLENBQUE7SUFDTixpRUFBTSxDQUFBO0FBQ1YsQ0FBQyxFQUxXLG1CQUFtQixLQUFuQixtQkFBbUIsUUFLOUI7QUFFRCxNQUFNLENBQU4sSUFBWSw2QkFFWDtBQUZELFdBQVksNkJBQTZCO0lBQ3JDLHFIQUFzQixDQUFBO0FBQzFCLENBQUMsRUFGVyw2QkFBNkIsS0FBN0IsNkJBQTZCLFFBRXhDO0FBRUQsTUFBTSxDQUFOLElBQVksK0JBR1g7QUFIRCxXQUFZLCtCQUErQjtJQUN2QyxtRkFBRyxDQUFBO0lBQ0gseUZBQU0sQ0FBQTtBQUNWLENBQUMsRUFIVywrQkFBK0IsS0FBL0IsK0JBQStCLFFBRzFDO0FBRUQsTUFBTSxDQUFOLElBQVksdUJBRVg7QUFGRCxXQUFZLHVCQUF1QjtJQUMvQixxRkFBWSxDQUFBO0FBQ2hCLENBQUMsRUFGVyx1QkFBdUIsS0FBdkIsdUJBQXVCLFFBRWxDO0FBRUQsTUFBTSxDQUFOLElBQVkseUJBS1g7QUFMRCxXQUFZLHlCQUF5QjtJQUNqQyx5RUFBSSxDQUFBO0lBQ0osdUVBQUcsQ0FBQTtJQUNILHlFQUFJLENBQUE7SUFDSiw2RUFBTSxDQUFBO0FBQ1YsQ0FBQyxFQUxXLHlCQUF5QixLQUF6Qix5QkFBeUIsUUFLcEM7QUFFRCxNQUFNLENBQU4sSUFBWSxrQkFHWDtBQUhELFdBQVksa0JBQWtCO0lBQzFCLG1FQUFRLENBQUE7SUFDUixpRUFBTyxDQUFBO0FBQ1gsQ0FBQyxFQUhXLGtCQUFrQixLQUFsQixrQkFBa0IsUUFHN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnN9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHtGb3JtbHlGaWVsZENvbmZpZ30gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgZW51bSBGaWVsZFNpemVFbnVtIHtcbiAgICBTbWFsbCxcbiAgICBOb3JtYWwsXG4gICAgTGFyZ2Vcbn1cblxuZXhwb3J0IGVudW0gRmllbGRJbnB1dFR5cGVFbnVtIHtcbiAgICBIaWRkZW4sXG4gICAgTGFiZWwsXG4gICAgVGV4dCxcbiAgICBUZXh0YXJlYSxcbiAgICBOdW1iZXIsXG4gICAgQ3VycmVuY3ksXG4gICAgU3dpdGNoLFxuICAgIFJhZGlvLFxuICAgIERhdGVwaWNrZXIsXG4gICAgTWFzayxcbiAgICBGaWxlLFxuICAgIEltYWdlRmlsZSxcbiAgICBJbWFnZVVybCxcbiAgICBDdXN0b21cbn1cblxuZXhwb3J0IGVudW0gRmllbGRMb29rdXBUeXBlRW51bSB7XG4gICAgRHJvcGRvd24sXG4gICAgQXV0b2NvbXBsZXRlLFxuICAgIERpYWxvZyxcbiAgICBDdXN0b21cbn1cblxuZXhwb3J0IGVudW0gRmllbGRNYW55VG9NYW55RWRpdG9yVHlwZUVudW0ge1xuICAgIERpYWxvZ1RhYmxlTXVsdGlzZWxlY3Rcbn1cblxuZXhwb3J0IGVudW0gRmllbGRNYW55VG9NYW55RWRpdG9yQWN0aW9uRW51bSB7XG4gICAgQWRkLFxuICAgIERlbGV0ZVxufVxuXG5leHBvcnQgZW51bSBGaWVsZE1hbnlFZGl0b3JUeXBlRW51bSB7XG4gICAgRGlhbG9nRWRpdG9yXG59XG5cbmV4cG9ydCBlbnVtIEZpZWxkTWFueUVkaXRvckFjdGlvbkVudW0ge1xuICAgIFZpZXcsXG4gICAgQWRkLFxuICAgIEVkaXQsXG4gICAgRGVsZXRlXG59XG5cbmV4cG9ydCBlbnVtIEZpZWxkR3JvdXBUeXBlRW51bSB7XG4gICAgRmllbGRzZXQsXG4gICAgTG9naWNhbFxufVxuXG4vLyBmaWVsZCB2YWxpZGF0aW9uXG5leHBvcnQgdHlwZSBGaWVsZFZhbGlkYXRvciA9IChcbiAgICBjb250cm9sOiBBYnN0cmFjdENvbnRyb2wsXG4gICAgZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnLFxuICAgIG9wdGlvbnM/OiB7XG4gICAgICAgIFtpZDogc3RyaW5nXTogYW55O1xuICAgIH1cbikgPT4gVmFsaWRhdGlvbkVycm9ycyB8IGJvb2xlYW4gfCBudWxsO1xuXG5leHBvcnQgdHlwZSBGaWVsZEFzeW5jVmFsaWRhdG9yID0gKFxuICAgIGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCxcbiAgICBmaWVsZDogRm9ybWx5RmllbGRDb25maWcsXG4gICAgb3B0aW9ucz86IHtcbiAgICAgICAgW2lkOiBzdHJpbmddOiBhbnk7XG4gICAgfVxuKSA9PiBPYnNlcnZhYmxlPFZhbGlkYXRpb25FcnJvcnMgfCBib29sZWFuIHwgbnVsbD47XG5cbmV4cG9ydCB0eXBlIEZpZWxkVmFsaWRhdGlvbk1lc3NhZ2UgPSBzdHJpbmcgfCAoKGVycm9yOiBhbnksIGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZykgPT4gc3RyaW5nIHwgT2JzZXJ2YWJsZTxzdHJpbmc+KTtcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1pbnRlcmZhY2VcbmV4cG9ydCBpbnRlcmZhY2UgRmllbGRDb25maWcge31cblxuZXhwb3J0IGludGVyZmFjZSBGaWVsZExvb2t1cENvbmZpZyBleHRlbmRzIEZpZWxkQ29uZmlnIHtcbiAgICB0YWJsZT86IHtcbiAgICAgICAgY2FwdGlvbkNvbXBvbmVudD86IFR5cGU8YW55PjtcbiAgICAgICAgY29sdW1uQWN0aW9uQ29tcG9uZW50PzogVHlwZTxhbnk+O1xuICAgIH07XG59XG4iXX0=
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi90YWJsZXZpZXcvYXBpL3NyYy9lZGl0b3IvbW9kZWxzL2ZpZWxkLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBTixJQUFZLGFBSVg7QUFKRCxXQUFZLGFBQWE7SUFDckIsbURBQUssQ0FBQTtJQUNMLHFEQUFNLENBQUE7SUFDTixtREFBSyxDQUFBO0FBQ1QsQ0FBQyxFQUpXLGFBQWEsS0FBYixhQUFhLFFBSXhCO0FBRUQsTUFBTSxDQUFOLElBQVksa0JBZVg7QUFmRCxXQUFZLGtCQUFrQjtJQUMxQiwrREFBTSxDQUFBO0lBQ04sNkRBQUssQ0FBQTtJQUNMLDJEQUFJLENBQUE7SUFDSixtRUFBUSxDQUFBO0lBQ1IsK0RBQU0sQ0FBQTtJQUNOLG1FQUFRLENBQUE7SUFDUiwrREFBTSxDQUFBO0lBQ04sNkRBQUssQ0FBQTtJQUNMLHVFQUFVLENBQUE7SUFDViwyREFBSSxDQUFBO0lBQ0osNERBQUksQ0FBQTtJQUNKLHNFQUFTLENBQUE7SUFDVCxvRUFBUSxDQUFBO0lBQ1IsZ0VBQU0sQ0FBQTtBQUNWLENBQUMsRUFmVyxrQkFBa0IsS0FBbEIsa0JBQWtCLFFBZTdCO0FBRUQsTUFBTSxDQUFOLElBQVksbUJBS1g7QUFMRCxXQUFZLG1CQUFtQjtJQUMzQixxRUFBUSxDQUFBO0lBQ1IsNkVBQVksQ0FBQTtJQUNaLGlFQUFNLENBQUE7SUFDTixpRUFBTSxDQUFBO0FBQ1YsQ0FBQyxFQUxXLG1CQUFtQixLQUFuQixtQkFBbUIsUUFLOUI7QUFFRCxNQUFNLENBQU4sSUFBWSw2QkFFWDtBQUZELFdBQVksNkJBQTZCO0lBQ3JDLHFIQUFzQixDQUFBO0FBQzFCLENBQUMsRUFGVyw2QkFBNkIsS0FBN0IsNkJBQTZCLFFBRXhDO0FBRUQsTUFBTSxDQUFOLElBQVksK0JBR1g7QUFIRCxXQUFZLCtCQUErQjtJQUN2QyxtRkFBRyxDQUFBO0lBQ0gseUZBQU0sQ0FBQTtBQUNWLENBQUMsRUFIVywrQkFBK0IsS0FBL0IsK0JBQStCLFFBRzFDO0FBRUQsTUFBTSxDQUFOLElBQVksdUJBRVg7QUFGRCxXQUFZLHVCQUF1QjtJQUMvQixxRkFBWSxDQUFBO0FBQ2hCLENBQUMsRUFGVyx1QkFBdUIsS0FBdkIsdUJBQXVCLFFBRWxDO0FBRUQsTUFBTSxDQUFOLElBQVkseUJBS1g7QUFMRCxXQUFZLHlCQUF5QjtJQUNqQyx5RUFBSSxDQUFBO0lBQ0osdUVBQUcsQ0FBQTtJQUNILHlFQUFJLENBQUE7SUFDSiw2RUFBTSxDQUFBO0FBQ1YsQ0FBQyxFQUxXLHlCQUF5QixLQUF6Qix5QkFBeUIsUUFLcEM7QUFFRCxNQUFNLENBQU4sSUFBWSxrQkFHWDtBQUhELFdBQVksa0JBQWtCO0lBQzFCLG1FQUFRLENBQUE7SUFDUixpRUFBTyxDQUFBO0FBQ1gsQ0FBQyxFQUhXLGtCQUFrQixLQUFsQixrQkFBa0IsUUFHN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgZW51bSBGaWVsZFNpemVFbnVtIHtcbiAgICBTbWFsbCxcbiAgICBOb3JtYWwsXG4gICAgTGFyZ2Vcbn1cblxuZXhwb3J0IGVudW0gRmllbGRJbnB1dFR5cGVFbnVtIHtcbiAgICBIaWRkZW4sXG4gICAgTGFiZWwsXG4gICAgVGV4dCxcbiAgICBUZXh0YXJlYSxcbiAgICBOdW1iZXIsXG4gICAgQ3VycmVuY3ksXG4gICAgU3dpdGNoLFxuICAgIFJhZGlvLFxuICAgIERhdGVwaWNrZXIsXG4gICAgTWFzayxcbiAgICBGaWxlLFxuICAgIEltYWdlRmlsZSxcbiAgICBJbWFnZVVybCxcbiAgICBDdXN0b21cbn1cblxuZXhwb3J0IGVudW0gRmllbGRMb29rdXBUeXBlRW51bSB7XG4gICAgRHJvcGRvd24sXG4gICAgQXV0b2NvbXBsZXRlLFxuICAgIERpYWxvZyxcbiAgICBDdXN0b21cbn1cblxuZXhwb3J0IGVudW0gRmllbGRNYW55VG9NYW55RWRpdG9yVHlwZUVudW0ge1xuICAgIERpYWxvZ1RhYmxlTXVsdGlzZWxlY3Rcbn1cblxuZXhwb3J0IGVudW0gRmllbGRNYW55VG9NYW55RWRpdG9yQWN0aW9uRW51bSB7XG4gICAgQWRkLFxuICAgIERlbGV0ZVxufVxuXG5leHBvcnQgZW51bSBGaWVsZE1hbnlFZGl0b3JUeXBlRW51bSB7XG4gICAgRGlhbG9nRWRpdG9yXG59XG5cbmV4cG9ydCBlbnVtIEZpZWxkTWFueUVkaXRvckFjdGlvbkVudW0ge1xuICAgIFZpZXcsXG4gICAgQWRkLFxuICAgIEVkaXQsXG4gICAgRGVsZXRlXG59XG5cbmV4cG9ydCBlbnVtIEZpZWxkR3JvdXBUeXBlRW51bSB7XG4gICAgRmllbGRzZXQsXG4gICAgTG9naWNhbFxufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWludGVyZmFjZVxuZXhwb3J0IGludGVyZmFjZSBGaWVsZENvbmZpZyB7fVxuXG5leHBvcnQgaW50ZXJmYWNlIEZpZWxkTG9va3VwQ29uZmlnIGV4dGVuZHMgRmllbGRDb25maWcge1xuICAgIHRhYmxlPzoge1xuICAgICAgICBjYXB0aW9uQ29tcG9uZW50PzogVHlwZTxhbnk+O1xuICAgICAgICBjb2x1bW5BY3Rpb25Db21wb25lbnQ/OiBUeXBlPGFueT47XG4gICAgfTtcbn1cbiJdfQ==
@@ -24,4 +24,4 @@ export class FormFieldEventDialogSubtype {
24
24
  static { this.TABLE_CAPTION_COMPONENT_INSTANCE = 'Dialog.MngTable.CaptionComponentInstance'; }
25
25
  static { this.TABLE_COLUMN_ACTIONS_COMPONENT_INSTANCE = 'Dialog.MngTable.ColumnActionsComponentInstance'; }
26
26
  }
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1lZGl0b3IuZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi90YWJsZXZpZXcvYXBpL3NyYy9lZGl0b3IvbW9kZWxzL2Zvcm0tZWRpdG9yLmV2ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE1BQU0sQ0FBTixJQUFZLHNCQU1YO0FBTkQsV0FBWSxzQkFBc0I7SUFDOUIsbUVBQXlDLENBQUE7SUFDekMscURBQTJCLENBQUE7SUFDM0IsdURBQTZCLENBQUE7SUFDN0IsNkRBQW1DLENBQUE7SUFDbkMseUNBQWUsQ0FBQTtBQUNuQixDQUFDLEVBTlcsc0JBQXNCLEtBQXRCLHNCQUFzQixRQU1qQztBQUVELE1BQU0sQ0FBTixJQUFZLGlCQUtYO0FBTEQsV0FBWSxpQkFBaUI7SUFDekIsOERBQXlDLENBQUE7SUFDekMsZ0RBQTJCLENBQUE7SUFDM0Isc0NBQWlCLENBQUE7SUFDakIsb0NBQWUsQ0FBQTtBQUNuQixDQUFDLEVBTFcsaUJBQWlCLEtBQWpCLGlCQUFpQixRQUs1QjtBQUVELE1BQU0sT0FBTyw4QkFBOEI7YUFDaEIsWUFBTyxHQUFHLGtCQUFrQixDQUFDO2FBQzdCLGlCQUFZLEdBQUcsc0JBQXNCLENBQUM7YUFDdEMsb0JBQWUsR0FBRyx5QkFBeUIsQ0FBQzthQUM1QyxlQUFVLEdBQUcscUJBQXFCLENBQUM7O0FBRzlELE1BQU0sT0FBTywyQkFBMkI7YUFDYixlQUFVLEdBQUcsbUJBQW1CLENBQUM7YUFDakMscUNBQWdDLEdBQUcsMENBQTBDLENBQUM7YUFDOUUsNENBQXVDLEdBQUcsZ0RBQWdELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1R5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1FZGl0b3JTdWJtaXRFdmVudDxJdGVtPiB7XG4gICAgZm9ybUl0ZW06IEl0ZW07XG4gICAgc3VjY2VzczogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGVudW0gRm9ybUZpZWxkRXZlbnRUeXBlRW51bSB7XG4gICAgQ29tcG9uZW50TGlmZWN5Y2xlID0gJ0NvbXBvbmVudExpZmVjeWNsZScsXG4gICAgVmFsdWVDaGFuZ2UgPSAnVmFsdWVDaGFuZ2UnLFxuICAgIERhdGFQcm92aWRlciA9ICdEYXRhUHJvdmlkZXInLFxuICAgIERpYWxvZ0xpZmVjeWNsZSA9ICdEaWFsb2dMaWZlY3ljbGUnLFxuICAgIE90aGVyID0gJ090aGVyJ1xufVxuXG5leHBvcnQgZW51bSBGb3JtRXZlbnRUeXBlRW51bSB7XG4gICAgQ29tcG9uZW50TGlmZWN5Y2xlID0gJ0NvbXBvbmVudExpZmVjeWNsZScsXG4gICAgVmFsdWVDaGFuZ2UgPSAnVmFsdWVDaGFuZ2UnLFxuICAgIFN1Ym1pdCA9ICdTdWJtaXQnLFxuICAgIE90aGVyID0gJ090aGVyJ1xufVxuXG5leHBvcnQgY2xhc3MgRm9ybUZpZWxkRXZlbnRDb21wb25lbnRTdWJ0eXBlIHtcbiAgICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE9OX0lOSVQgPSAnQ29tcG9uZW50Lk9uSW5pdCc7XG4gICAgcHVibGljIHN0YXRpYyByZWFkb25seSBPTl9WSUVXX0lOSVQgPSAnQ29tcG9uZW50Lk9uVmlld0luaXQnO1xuICAgIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgT05fQ09OVEVOVF9JTklUID0gJ0NvbXBvbmVudC5PbkNvbnRlbnRJbml0JztcbiAgICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE9OX0RFU1RST1kgPSAnQ29tcG9uZW50Lk9uRGVzdHJveSc7XG59XG5cbmV4cG9ydCBjbGFzcyBGb3JtRmllbGRFdmVudERpYWxvZ1N1YnR5cGUge1xuICAgIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgVklTSUJJTElUWSA9ICdEaWFsb2cuVmlzaWJpbGl0eSc7XG4gICAgcHVibGljIHN0YXRpYyByZWFkb25seSBUQUJMRV9DQVBUSU9OX0NPTVBPTkVOVF9JTlNUQU5DRSA9ICdEaWFsb2cuTW5nVGFibGUuQ2FwdGlvbkNvbXBvbmVudEluc3RhbmNlJztcbiAgICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFRBQkxFX0NPTFVNTl9BQ1RJT05TX0NPTVBPTkVOVF9JTlNUQU5DRSA9ICdEaWFsb2cuTW5nVGFibGUuQ29sdW1uQWN0aW9uc0NvbXBvbmVudEluc3RhbmNlJztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGb3JtRmllbGRFdmVudERhdGE8VCwgRVQ+IHtcbiAgICBldmVudFN1YnR5cGU/OiBzdHJpbmc7XG4gICAgdmFsdWU/OiBUO1xuICAgIGZvcm1WYWx1ZT86IEVUO1xuICAgIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGaWVsZEV2ZW50RGF0YTxFVD4ge1xuICAgIGV2ZW50U3VidHlwZT86IHN0cmluZztcbiAgICB2YWx1ZT86IGFueTsgLy8gZGlyZWN0IHZhbHVlIGZyb20gZm9ybS52YWx1ZUNoYW5nZXMsIGRpc2FibGVkIGZpZWxkIHZhbHVlcyBhbmQgc2V0dGVycyBhcmUgbm90IGluY2x1ZGVkXG4gICAgZm9ybVZhbHVlPzogKCkgPT4gRVQ7IC8vIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBjYWxjdWxhdGVkIGZvcm0gdmFsdWVcbiAgICBzdWJtaXRWYWxpZD86IGJvb2xlYW47IC8vIHRydWUgaWYgZm9ybSBpcyB2YWxpZFxuICAgIHN1Ym1pdFZhbHVlPzogRVQ7IC8vIHZhbHVlIG9uIHN1Ym1pdFxuICAgIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGb3JtRmllbGRFdmVudDxULCBFVD4ge1xuICAgIHR5cGU6IEZvcm1GaWVsZEV2ZW50VHlwZUVudW07XG4gICAgY29tcG9uZW50VHlwZTogVHlwZTxhbnk+O1xuICAgIGNvbXBvbmVudEluc3RhbmNlOiBhbnk7XG4gICAgZGF0YT86IEZvcm1GaWVsZEV2ZW50RGF0YTxULCBFVD47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybUV2ZW50PEVUPiB7XG4gICAgdHlwZTogRm9ybUV2ZW50VHlwZUVudW07XG4gICAgY29tcG9uZW50VHlwZTogVHlwZTxhbnk+O1xuICAgIGNvbXBvbmVudEluc3RhbmNlOiBhbnk7XG4gICAgZGF0YT86IEZpZWxkRXZlbnREYXRhPEVUPjtcbn1cbiJdfQ==
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1lZGl0b3IuZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi90YWJsZXZpZXcvYXBpL3NyYy9lZGl0b3IvbW9kZWxzL2Zvcm0tZWRpdG9yLmV2ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVlBLE1BQU0sQ0FBTixJQUFZLHNCQU1YO0FBTkQsV0FBWSxzQkFBc0I7SUFDOUIsbUVBQXlDLENBQUE7SUFDekMscURBQTJCLENBQUE7SUFDM0IsdURBQTZCLENBQUE7SUFDN0IsNkRBQW1DLENBQUE7SUFDbkMseUNBQWUsQ0FBQTtBQUNuQixDQUFDLEVBTlcsc0JBQXNCLEtBQXRCLHNCQUFzQixRQU1qQztBQUVELE1BQU0sQ0FBTixJQUFZLGlCQUtYO0FBTEQsV0FBWSxpQkFBaUI7SUFDekIsOERBQXlDLENBQUE7SUFDekMsZ0RBQTJCLENBQUE7SUFDM0Isc0NBQWlCLENBQUE7SUFDakIsb0NBQWUsQ0FBQTtBQUNuQixDQUFDLEVBTFcsaUJBQWlCLEtBQWpCLGlCQUFpQixRQUs1QjtBQUVELE1BQU0sT0FBTyw4QkFBOEI7YUFDaEIsWUFBTyxHQUFHLGtCQUFrQixDQUFDO2FBQzdCLGlCQUFZLEdBQUcsc0JBQXNCLENBQUM7YUFDdEMsb0JBQWUsR0FBRyx5QkFBeUIsQ0FBQzthQUM1QyxlQUFVLEdBQUcscUJBQXFCLENBQUM7O0FBRzlELE1BQU0sT0FBTywyQkFBMkI7YUFDYixlQUFVLEdBQUcsbUJBQW1CLENBQUM7YUFDakMscUNBQWdDLEdBQUcsMENBQTBDLENBQUM7YUFDOUUsNENBQXVDLEdBQUcsZ0RBQWdELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0Fic3RyYWN0Q29udHJvbCwgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQge0ZpZWxkVHlwZX0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5cbmltcG9ydCB7SUZvcm1FZGl0b3JDb21wb25lbnR9IGZyb20gJy4vZm9ybS1lZGl0b3IuaW50ZXJmYWNlJztcbmltcG9ydCB7Q29tbW9uc0Zvcm1seUZpZWxkQ29uZmlnfSBmcm9tICcuL2Zvcm1seS1maWVsZC5tb2RlbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybUVkaXRvclN1Ym1pdEV2ZW50PEl0ZW0+IHtcbiAgICBmb3JtSXRlbTogSXRlbTtcbiAgICBzdWNjZXNzOiBib29sZWFuO1xufVxuXG5leHBvcnQgZW51bSBGb3JtRmllbGRFdmVudFR5cGVFbnVtIHtcbiAgICBDb21wb25lbnRMaWZlY3ljbGUgPSAnQ29tcG9uZW50TGlmZWN5Y2xlJyxcbiAgICBWYWx1ZUNoYW5nZSA9ICdWYWx1ZUNoYW5nZScsXG4gICAgRGF0YVByb3ZpZGVyID0gJ0RhdGFQcm92aWRlcicsXG4gICAgRGlhbG9nTGlmZWN5Y2xlID0gJ0RpYWxvZ0xpZmVjeWNsZScsXG4gICAgT3RoZXIgPSAnT3RoZXInXG59XG5cbmV4cG9ydCBlbnVtIEZvcm1FdmVudFR5cGVFbnVtIHtcbiAgICBDb21wb25lbnRMaWZlY3ljbGUgPSAnQ29tcG9uZW50TGlmZWN5Y2xlJyxcbiAgICBWYWx1ZUNoYW5nZSA9ICdWYWx1ZUNoYW5nZScsXG4gICAgU3VibWl0ID0gJ1N1Ym1pdCcsXG4gICAgT3RoZXIgPSAnT3RoZXInXG59XG5cbmV4cG9ydCBjbGFzcyBGb3JtRmllbGRFdmVudENvbXBvbmVudFN1YnR5cGUge1xuICAgIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgT05fSU5JVCA9ICdDb21wb25lbnQuT25Jbml0JztcbiAgICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IE9OX1ZJRVdfSU5JVCA9ICdDb21wb25lbnQuT25WaWV3SW5pdCc7XG4gICAgcHVibGljIHN0YXRpYyByZWFkb25seSBPTl9DT05URU5UX0lOSVQgPSAnQ29tcG9uZW50Lk9uQ29udGVudEluaXQnO1xuICAgIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgT05fREVTVFJPWSA9ICdDb21wb25lbnQuT25EZXN0cm95Jztcbn1cblxuZXhwb3J0IGNsYXNzIEZvcm1GaWVsZEV2ZW50RGlhbG9nU3VidHlwZSB7XG4gICAgcHVibGljIHN0YXRpYyByZWFkb25seSBWSVNJQklMSVRZID0gJ0RpYWxvZy5WaXNpYmlsaXR5JztcbiAgICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFRBQkxFX0NBUFRJT05fQ09NUE9ORU5UX0lOU1RBTkNFID0gJ0RpYWxvZy5NbmdUYWJsZS5DYXB0aW9uQ29tcG9uZW50SW5zdGFuY2UnO1xuICAgIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgVEFCTEVfQ09MVU1OX0FDVElPTlNfQ09NUE9ORU5UX0lOU1RBTkNFID0gJ0RpYWxvZy5NbmdUYWJsZS5Db2x1bW5BY3Rpb25zQ29tcG9uZW50SW5zdGFuY2UnO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1GaWVsZEV2ZW50RGF0YTxGaWVsZE1vZGVsLCBFZGl0b3JNb2RlbD4ge1xuICAgIGV2ZW50U3VidHlwZT86IHN0cmluZztcbiAgICB2YWx1ZT86IEZpZWxkTW9kZWw7XG4gICAgZm9ybVZhbHVlPzogRWRpdG9yTW9kZWw7XG4gICAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1FdmVudERhdGE8RWRpdG9yTW9kZWw+IHtcbiAgICBldmVudFN1YnR5cGU/OiBzdHJpbmc7XG4gICAgdmFsdWU/OiBFZGl0b3JNb2RlbDsgLy8gZGlyZWN0IHZhbHVlIGZyb20gZm9ybS52YWx1ZUNoYW5nZXMsIGRpc2FibGVkIGZpZWxkIHZhbHVlcyBhbmQgc2V0dGVycyBhcmUgbm90IGluY2x1ZGVkXG4gICAgZm9ybVZhbHVlPzogKCkgPT4gRWRpdG9yTW9kZWw7IC8vIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBjYWxjdWxhdGVkIGZvcm0gdmFsdWVcbiAgICBzdWJtaXRWYWxpZD86IGJvb2xlYW47IC8vIHRydWUgaWYgZm9ybSBpcyB2YWxpZFxuICAgIHN1Ym1pdFZhbHVlPzogRWRpdG9yTW9kZWw7IC8vIHZhbHVlIG9uIHN1Ym1pdFxuICAgIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGb3JtRmllbGRFdmVudDxGaWVsZFZhbHVlLCBGb3JtVmFsdWUsIFBhcmVudEZvcm1WYWx1ZSA9IHVuZGVmaW5lZD4ge1xuICAgIHR5cGU6IEZvcm1GaWVsZEV2ZW50VHlwZUVudW07XG4gICAgZmllbGRDb21wb25lbnQ/OiBGaWVsZFR5cGU8Q29tbW9uc0Zvcm1seUZpZWxkQ29uZmlnPEZpZWxkVmFsdWUsIEZvcm1WYWx1ZSwgUGFyZW50Rm9ybVZhbHVlPj47XG4gICAgZm9ybUNvbXBvbmVudD86IElGb3JtRWRpdG9yQ29tcG9uZW50PEZvcm1WYWx1ZSwgUGFyZW50Rm9ybVZhbHVlPjtcbiAgICBmaWVsZEZvcm1Db250cm9sOiBGb3JtQ29udHJvbDxGaWVsZFZhbHVlPjtcbiAgICBmb3JtOiBGb3JtR3JvdXA8e1tLIGluIGtleW9mIEZvcm1WYWx1ZV06IEFic3RyYWN0Q29udHJvbDxGb3JtVmFsdWVbS10+fT47XG4gICAgZmllbGRGb3JtbHlDb25maWc6IENvbW1vbnNGb3JtbHlGaWVsZENvbmZpZzxGaWVsZFZhbHVlLCBGb3JtVmFsdWUsIFBhcmVudEZvcm1WYWx1ZT47XG4gICAgZGF0YT86IEZvcm1GaWVsZEV2ZW50RGF0YTxGaWVsZFZhbHVlLCBGb3JtVmFsdWU+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1FdmVudDxGb3JtVmFsdWUsIFBhcmVudEZvcm1WYWx1ZSA9IHVuZGVmaW5lZD4ge1xuICAgIHR5cGU6IEZvcm1FdmVudFR5cGVFbnVtO1xuICAgIGZvcm1Db21wb25lbnQ/OiBJRm9ybUVkaXRvckNvbXBvbmVudDxGb3JtVmFsdWUsIFBhcmVudEZvcm1WYWx1ZT47XG4gICAgZm9ybTogRm9ybUdyb3VwPHtbSyBpbiBrZXlvZiBGb3JtVmFsdWVdOiBBYnN0cmFjdENvbnRyb2w8Rm9ybVZhbHVlW0tdPn0+O1xuICAgIGRhdGE/OiBGb3JtRXZlbnREYXRhPEZvcm1WYWx1ZT47XG59XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1lZGl0b3IuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vdGFibGV2aWV3L2FwaS9zcmMvZWRpdG9yL21vZGVscy9mb3JtLWVkaXRvci5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWJzdHJhY3RDb250cm9sfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUZvcm1FZGl0b3JDb21wb25lbnQ8VD4ge1xuICAgIHN1Ym1pdCgpOiB2b2lkO1xuICAgIGdldEZvcm1WYWx1ZSgpOiBUO1xuICAgIHJlc2V0Rm9ybU1vZGVsKGl0ZW0/OiBUKTogdm9pZDtcbiAgICBnZXRGb3JtRmllbGQoa2V5OiBzdHJpbmcpOiBBYnN0cmFjdENvbnRyb2wgfCBudWxsO1xuICAgIHNldEZvcm1GaWVsZFZhbHVlKGtleTogc3RyaW5nLCB2YWx1ZTogYW55KTogYm9vbGVhbjtcbiAgICBwYXRjaEZvcm1GaWVsZFZhbHVlKGtleTogc3RyaW5nLCB2YWx1ZTogYW55KTogYm9vbGVhbjtcbiAgICByZXNldEZvcm1GaWVsZFZhbHVlKGtleTogc3RyaW5nLCB2YWx1ZT86IGFueSk6IGJvb2xlYW47XG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1lZGl0b3IuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vdGFibGV2aWV3L2FwaS9zcmMvZWRpdG9yL21vZGVscy9mb3JtLWVkaXRvci5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5wdXRTaWduYWwsIFdyaXRhYmxlU2lnbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QWJzdHJhY3RDb250cm9sLCBGb3JtR3JvdXAsIFVudHlwZWRGb3JtR3JvdXB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHtGb3JtbHlGaWVsZENvbmZpZywgRm9ybWx5Rm9ybU9wdGlvbnN9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHtNZXNzYWdlfSBmcm9tICdwcmltZW5nL2FwaSc7XG5cbmltcG9ydCB7RWRpdG9yRGVzY3JpcHRvckluc3R9IGZyb20gJy4uL2Rlc2NyaXB0b3JzL2VkaXRvci5kZXNjcmlwdG9yJztcblxuZXhwb3J0IGludGVyZmFjZSBDb21tb25zRm9ybWx5Rm9ybU9wdGlvbnM8SXRlbT4ge1xuICAgIGZvcm1TdGF0ZT86IHtcbiAgICAgICAgZGVzY3JpcHRvcj86IEVkaXRvckRlc2NyaXB0b3JJbnN0PEl0ZW0+O1xuICAgICAgICBhZGQ6IGJvb2xlYW47XG4gICAgICAgIGVkaXQ6IGJvb2xlYW47XG4gICAgICAgIGRpc2FibGVkOiBib29sZWFuO1xuICAgIH07XG59XG5cbmV4cG9ydCB0eXBlIEZvcm1FZGl0b3JSZXNldEZvcm1Nb2RlbE9wdHMgPSB7XG4gICAgbWFya0FzUHJpc3RpbmU/OiBib29sZWFuO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBJRm9ybUVkaXRvckNvbXBvbmVudDxJdGVtLCBQYXJlbnRJdGVtID0gYW55PiB7XG4gICAgZGVzY3JpcHRvcjogSW5wdXRTaWduYWw8RWRpdG9yRGVzY3JpcHRvckluc3Q8SXRlbT4+O1xuICAgIGlzRm9ybURpc2FibGVkOiBJbnB1dFNpZ25hbDxib29sZWFuPjtcbiAgICBmb3JtTWVzc2FnZXM6IFdyaXRhYmxlU2lnbmFsPE1lc3NhZ2VbXT47XG5cbiAgICBnZXQgZm9ybSgpOiBGb3JtR3JvdXA8e1tLIGluIGtleW9mIEl0ZW1dOiBBYnN0cmFjdENvbnRyb2w8SXRlbVtLXT59PjtcbiAgICBnZXQgZm9ybVVuc2FmZSgpOiBVbnR5cGVkRm9ybUdyb3VwO1xuICAgIGdldCBmb3JtbHlPcHRpb25zKCk6IEZvcm1seUZvcm1PcHRpb25zICYgQ29tbW9uc0Zvcm1seUZvcm1PcHRpb25zPEl0ZW0+O1xuICAgIGdldCBmb3JtbHlGaWVsZHMoKTogRm9ybWx5RmllbGRDb25maWdbXTtcbiAgICBnZXQgZm9ybWx5SW5pdGlhbEl0ZW0oKTogYW55O1xuICAgIGdldCBwYXJlbnQoKTogSUZvcm1FZGl0b3JDb21wb25lbnQ8UGFyZW50SXRlbT4gfCB1bmRlZmluZWQ7XG5cbiAgICBzdWJtaXQoKTogdm9pZDtcbiAgICBnZXRGb3JtVmFsdWUoKTogSXRlbTtcbiAgICByZXNldEZvcm1Nb2RlbChpdGVtPzogSXRlbSwgb3B0cz86IEZvcm1FZGl0b3JSZXNldEZvcm1Nb2RlbE9wdHMpOiB2b2lkO1xuICAgIGdldEZpZWxkKGtleToga2V5b2YgSXRlbSk6IEFic3RyYWN0Q29udHJvbCB8IG51bGw7XG4gICAgZ2V0RmllbGRVbnNhZmUoa2V5OiBzdHJpbmcpOiBBYnN0cmFjdENvbnRyb2wgfCBudWxsO1xuICAgIHNldEZpZWxkVmFsdWU8UHJvcGVydHkgZXh0ZW5kcyBrZXlvZiBJdGVtPihrZXk6IFByb3BlcnR5LCB2YWx1ZTogSXRlbVtQcm9wZXJ0eV0pOiBib29sZWFuO1xuICAgIHNldEZpZWxkVmFsdWVVbnNhZmUoa2V5OiBzdHJpbmcsIHZhbHVlOiBhbnkpOiBib29sZWFuO1xuICAgIHBhdGNoRmllbGRWYWx1ZTxQcm9wZXJ0eSBleHRlbmRzIGtleW9mIEl0ZW0+KGtleTogUHJvcGVydHksIHZhbHVlOiBJdGVtW1Byb3BlcnR5XSk6IGJvb2xlYW47XG4gICAgcGF0Y2hGaWVsZFZhbHVlVW5zYWZlKGtleTogc3RyaW5nLCB2YWx1ZTogYW55KTogYm9vbGVhbjtcbiAgICByZXNldEZpZWxkVmFsdWU8UHJvcGVydHkgZXh0ZW5kcyBrZXlvZiBJdGVtPihrZXk6IFByb3BlcnR5LCB2YWx1ZT86IEl0ZW1bUHJvcGVydHldKTogYm9vbGVhbjtcbiAgICByZXNldEZpZWxkVmFsdWVVbnNhZmUoa2V5OiBzdHJpbmcsIHZhbHVlPzogYW55KTogYm9vbGVhbjtcbn1cbiJdfQ==