@mediusinc/mng-commons 5.5.0-rc.4 → 6.0.0-rc.2
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.
- package/core/action/action-parameters.model.d.ts +4 -4
- package/core/data-providers/base.data-provider.d.ts +4 -7
- package/core/data-providers/lookup.data-provider.d.ts +2 -2
- package/core/descriptors/model.descriptor.d.ts +1 -7
- package/core/descriptors/tableview.descriptor.d.ts +5 -5
- package/core/helpers/route.d.ts +0 -1
- package/core/helpers/type-helpers.d.ts +8 -0
- package/core/index.d.ts +0 -3
- package/core/models/menu.model.d.ts +0 -4
- package/core/services/commons.service.d.ts +0 -32
- package/core/services/tokens/module-config.token.d.ts +0 -28
- package/esm2022/core/action/action-parameters.model.mjs +1 -1
- package/esm2022/core/data-providers/base.data-provider.mjs +2 -4
- package/esm2022/core/data-providers/lookup.data-provider.mjs +1 -1
- package/esm2022/core/descriptors/model.descriptor.mjs +1 -1
- package/esm2022/core/descriptors/tableview.descriptor.mjs +1 -1
- package/esm2022/core/helpers/type-helpers.mjs +1 -1
- package/esm2022/core/index.mjs +1 -4
- package/esm2022/core/models/menu.model.mjs +1 -1
- package/esm2022/core/services/commons.service.mjs +1 -34
- package/esm2022/core/services/tokens/module-config.token.mjs +1 -1
- package/esm2022/filter/descriptors/filter-lookup.descriptor.mjs +5 -86
- package/esm2022/filter/descriptors/filter.descriptor.mjs +7 -29
- package/esm2022/form/api/data-providers/lookup-data-provider.factory.mjs +14 -41
- package/esm2022/form/api/data-providers/lookup.data-provider.mjs +3 -3
- package/esm2022/model/class/data-providers/base-from-class-data-provider.factory.mjs +5 -0
- package/esm2022/model/class/descriptors/model-class.descriptor.mjs +28 -0
- package/esm2022/model/class/descriptors/type-class.descriptor.mjs +6 -0
- package/esm2022/model/class/helpers/model.mjs +53 -0
- package/esm2022/model/class/index.mjs +8 -0
- package/esm2022/model/class/mediusinc-mng-commons-model-class.mjs +5 -0
- package/esm2022/model/data-providers/base-from-type-data-provider.factory.mjs +11 -6
- package/esm2022/model/descriptors/model.descriptor.mjs +11 -54
- package/esm2022/model/descriptors/type.descriptor.mjs +2 -10
- package/esm2022/model/index.mjs +1 -2
- package/esm2022/table/api/class/class-table-attribute-converter.mjs +80 -0
- package/esm2022/table/api/class/class-table-attribute.model.mjs +2 -0
- package/esm2022/table/api/class/class-table-data-provider.factory.mjs +5 -0
- package/esm2022/table/api/class/class-table-descriptor-helpers.mjs +99 -0
- package/esm2022/table/api/class/class-table-descriptor.factory.mjs +21 -0
- package/esm2022/table/api/class/index.mjs +6 -0
- package/esm2022/table/api/class/mediusinc-mng-commons-table-api-class.mjs +5 -0
- package/esm2022/table/api/data-providers/table-data-provider.factory.mjs +14 -41
- package/esm2022/table/api/data-providers/table.data-provider.mjs +3 -9
- package/esm2022/table/api/descriptors/column.descriptor.mjs +8 -3
- package/esm2022/table/api/descriptors/table-descriptor.factory.mjs +10 -77
- package/esm2022/table/api/descriptors/table.descriptor.mjs +3 -3
- package/esm2022/table/api/helpers/column-converter.mjs +25 -0
- package/esm2022/table/api/helpers/table-data-provider-descriptor-convert.mjs +4 -4
- package/esm2022/table/api/index.mjs +2 -4
- package/esm2022/table/api/models/table-columns.model.mjs +1 -1
- package/esm2022/table/components/column-value/column-value.component.mjs +4 -3
- package/esm2022/table/components/filter/filter-active-tag/filter-active-tag.component.mjs +3 -3
- package/esm2022/table/components/filter/filter-form/filter-form.component.mjs +5 -5
- package/esm2022/table/components/table/table.component.mjs +6 -8
- package/esm2022/tableview/action/components/action/action.component.mjs +1 -1
- package/esm2022/tableview/action/components/editor/injector-context/action-editor-injector-context.component.mjs +10 -6
- package/esm2022/tableview/action/helpers/action-execution.mjs +1 -1
- package/esm2022/tableview/action/models/execution/action-context.model.mjs +1 -1
- package/esm2022/tableview/action/models/execution/action-instance.model.mjs +1 -1
- package/esm2022/tableview/action/services/action-executor.service.mjs +11 -11
- package/esm2022/tableview/action/services/data-provider-executor.service.mjs +18 -3
- package/esm2022/tableview/api/action/descriptors/action-confirmation.descriptor.mjs +1 -1
- package/esm2022/tableview/api/action/descriptors/action-descriptor.factory.mjs +13 -104
- package/esm2022/tableview/api/action/descriptors/action-editor-descriptor.factory.mjs +15 -62
- package/esm2022/tableview/api/action/descriptors/action-editor.descriptor.mjs +3 -63
- package/esm2022/tableview/api/action/descriptors/action-link-descriptor.factory.mjs +17 -30
- package/esm2022/tableview/api/action/descriptors/action-link.descriptor.mjs +1 -1
- package/esm2022/tableview/api/action/descriptors/action.descriptor.mjs +6 -29
- package/esm2022/tableview/api/action/descriptors/editor-action-descriptor.factory.mjs +21 -0
- package/esm2022/tableview/api/action/descriptors/editor-action-editor-descriptor.factory.mjs +21 -0
- package/esm2022/tableview/api/action/descriptors/table-action-descriptor.factory.mjs +37 -0
- package/esm2022/tableview/api/action/descriptors/table-action-editor-descriptor.factory.mjs +40 -0
- package/esm2022/tableview/api/action/helpers/data-provider-executors.mjs +25 -5
- package/esm2022/tableview/api/action/models/action-descriptor.types.mjs +1 -1
- package/esm2022/tableview/api/action/models/action-error.model.mjs +1 -1
- package/esm2022/tableview/api/action/models/execution/action-context-validation.model.mjs +1 -1
- package/esm2022/tableview/api/action/models/execution/action-context.model.mjs +1 -1
- package/esm2022/tableview/api/action/models/execution/action-instance.model.mjs +1 -1
- package/esm2022/tableview/api/action/models/tableview-action-default-categories.model.mjs +6 -6
- package/esm2022/tableview/api/action/services/data-provider-executor.service.mjs +3 -3
- package/esm2022/tableview/api/class/editor/class-editor-attribute-converter.mjs +85 -0
- package/esm2022/tableview/api/class/editor/class-editor-attribute.model.mjs +2 -0
- package/esm2022/tableview/api/class/editor/class-editor-data-provider.factory.mjs +5 -0
- package/esm2022/tableview/api/class/editor/class-editor-descriptor-helpers.mjs +95 -0
- package/esm2022/tableview/api/class/editor/class-editor-descriptor.factory.mjs +21 -0
- package/esm2022/tableview/api/class/index.mjs +13 -0
- package/esm2022/tableview/api/class/mediusinc-mng-commons-tableview-api-class.mjs +5 -0
- package/esm2022/tableview/api/class/tableview/class-tableview-attribute-converter.mjs +35 -0
- package/esm2022/tableview/api/class/tableview/class-tableview-attribute.model.mjs +2 -0
- package/esm2022/tableview/api/class/tableview/class-tableview-data-provider.factory.mjs +5 -0
- package/esm2022/tableview/api/class/tableview/class-tableview-descriptor-helpers.mjs +111 -0
- package/esm2022/tableview/api/class/tableview/class-tableview-descriptor.factory.mjs +26 -0
- package/esm2022/tableview/api/editor/data-providers/editor-data-provider.factory.mjs +14 -32
- package/esm2022/tableview/api/editor/data-providers/editor.data-provider.mjs +40 -7
- package/esm2022/tableview/api/editor/descriptors/editor-descriptor.factory.mjs +7 -73
- package/esm2022/tableview/api/editor/descriptors/editor.descriptor.mjs +49 -134
- package/esm2022/tableview/api/editor/descriptors/field-base.descriptor.mjs +11 -2
- package/esm2022/tableview/api/editor/descriptors/field-lookup.descriptor.mjs +3 -5
- package/esm2022/tableview/api/editor/descriptors/field-many.descriptor.mjs +2 -18
- package/esm2022/tableview/api/editor/descriptors/wrappers/editor-descriptor-nested-object-wrapper.mjs +51 -0
- package/esm2022/tableview/api/editor/models/editor-fields.model.mjs +1 -1
- package/esm2022/tableview/api/editor/models/form-editor.event.mjs +1 -1
- package/esm2022/tableview/api/index.mjs +8 -8
- package/esm2022/tableview/api/tableview/data-providers/tableview-data-provider.factory.mjs +13 -51
- package/esm2022/tableview/api/tableview/data-providers/tableview.data-provider.mjs +19 -11
- package/esm2022/tableview/api/tableview/descriptors/tableview-descriptor.factory.mjs +19 -96
- package/esm2022/tableview/api/tableview/descriptors/tableview.descriptor.mjs +29 -182
- package/esm2022/tableview/api/tableview/helpers/tableview-create.mjs +8 -6
- package/esm2022/tableview/api/tableview/helpers/tableview-data-provider-descriptor-convert.mjs +4 -4
- package/esm2022/tableview/api/tableview/helpers/tableview-default-actions.mjs +117 -99
- package/esm2022/tableview/api/tableview/helpers/tableview-input-builder.mjs +164 -7
- package/esm2022/tableview/api/tableview/models/tableview-descriptor-fields-manage-helper.type.mjs +2 -0
- package/esm2022/tableview/api/tableview/models/tableview-descriptor-helper.type.mjs +2 -0
- package/esm2022/tableview/api/tableview/models/tableview-input.model.mjs +1 -1
- package/esm2022/tableview/api/tableview/models/tableview-route.model.mjs +1 -1
- package/esm2022/tableview/editor/components/formly/fields/formly-field-table-dialog-form/formly-field-table-dialog-form.component.mjs +6 -6
- package/esm2022/tableview/editor/helpers/editor-field.mjs +3 -3
- package/esm2022/tableview/editor/helpers/editor-formly.mjs +4 -4
- package/esm2022/tableview/editor/helpers/field-create.mjs +21 -0
- package/esm2022/tableview/index.mjs +3 -2
- package/esm2022/tableview/tableview/components/route/tableview-route.component.mjs +1 -1
- package/esm2022/tableview/tableview/components/tableview/tableview.component.mjs +3 -1
- package/fesm2022/mediusinc-mng-commons-core.mjs +687 -781
- package/fesm2022/mediusinc-mng-commons-core.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-filter.mjs +10 -113
- package/fesm2022/mediusinc-mng-commons-filter.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-form-api.mjs +15 -42
- package/fesm2022/mediusinc-mng-commons-form-api.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-model-class.mjs +97 -0
- package/fesm2022/mediusinc-mng-commons-model-class.mjs.map +1 -0
- package/fesm2022/mediusinc-mng-commons-model.mjs +23 -137
- package/fesm2022/mediusinc-mng-commons-model.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-table-api-class.mjs +204 -0
- package/fesm2022/mediusinc-mng-commons-table-api-class.mjs.map +1 -0
- package/fesm2022/mediusinc-mng-commons-table-api.mjs +55 -319
- package/fesm2022/mediusinc-mng-commons-table-api.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-table.mjs +14 -15
- package/fesm2022/mediusinc-mng-commons-table.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-tableview-api-class.mjs +367 -0
- package/fesm2022/mediusinc-mng-commons-tableview-api-class.mjs.map +1 -0
- package/fesm2022/mediusinc-mng-commons-tableview-api.mjs +715 -1298
- package/fesm2022/mediusinc-mng-commons-tableview-api.mjs.map +1 -1
- package/fesm2022/mediusinc-mng-commons-tableview.mjs +67 -27
- package/fesm2022/mediusinc-mng-commons-tableview.mjs.map +1 -1
- package/filter/descriptors/filter-lookup.descriptor.d.ts +1 -26
- package/filter/descriptors/filter.descriptor.d.ts +5 -12
- package/form/api/data-providers/lookup-data-provider.factory.d.ts +17 -20
- package/form/api/data-providers/lookup.data-provider.d.ts +3 -3
- package/model/class/README.md +8 -0
- package/model/class/data-providers/base-from-class-data-provider.factory.d.ts +3 -0
- package/model/class/descriptors/model-class.descriptor.d.ts +12 -0
- package/model/class/descriptors/type-class.descriptor.d.ts +3 -0
- package/model/{helpers → class/helpers}/model.d.ts +1 -2
- package/model/class/index.d.ts +4 -0
- package/model/data-providers/base-from-type-data-provider.factory.d.ts +13 -6
- package/model/descriptors/model.descriptor.d.ts +12 -27
- package/model/descriptors/type.descriptor.d.ts +0 -5
- package/model/index.d.ts +0 -1
- package/package.json +25 -7
- package/table/api/class/README.md +10 -0
- package/table/api/{helpers/class-attribute-converter.d.ts → class/class-table-attribute-converter.d.ts} +2 -9
- package/table/api/{models → class}/class-table-attribute.model.d.ts +1 -1
- package/table/api/class/class-table-data-provider.factory.d.ts +4 -0
- package/table/api/{helpers/table-descriptor-helpers.d.ts → class/class-table-descriptor-helpers.d.ts} +2 -4
- package/table/api/class/class-table-descriptor.factory.d.ts +11 -0
- package/table/api/class/index.d.ts +5 -0
- package/table/api/data-providers/table-data-provider.factory.d.ts +17 -20
- package/table/api/data-providers/table.data-provider.d.ts +4 -12
- package/table/api/descriptors/column.descriptor.d.ts +5 -2
- package/table/api/descriptors/table-descriptor.factory.d.ts +3 -39
- package/table/api/descriptors/table.descriptor.d.ts +3 -3
- package/table/api/helpers/column-converter.d.ts +7 -0
- package/table/api/helpers/table-data-provider-descriptor-convert.d.ts +3 -3
- package/table/api/index.d.ts +1 -3
- package/table/api/models/table-columns.model.d.ts +2 -2
- package/table/components/column-value/column-value.component.d.ts +1 -0
- package/table/components/filter/filter-active-tag/filter-active-tag.component.d.ts +1 -1
- package/table/components/filter/filter-form/filter-form.component.d.ts +1 -1
- package/table/components/filter/filter-overlay-with-tag/filter-overlay-with-tag.component.d.ts +1 -1
- package/table/components/table/table.component.d.ts +0 -9
- package/tableview/action/components/action/action.component.d.ts +2 -2
- package/tableview/action/components/editor/action-editor.component.d.ts +1 -1
- package/tableview/action/components/editor/injector-context/action-editor-injector-context.component.d.ts +6 -5
- package/tableview/action/components/localization/data-language-dropdown.component.d.ts +3 -3
- package/tableview/action/components/table/action-table.component.d.ts +3 -3
- package/tableview/action/helpers/action-execution.d.ts +1 -1
- package/tableview/action/models/execution/action-context.model.d.ts +3 -3
- package/tableview/action/models/execution/action-instance.model.d.ts +5 -5
- package/tableview/action/services/action-executor.service.d.ts +7 -7
- package/tableview/action/services/data-provider-executor.service.d.ts +16 -16
- package/tableview/action/services/view-container.service.d.ts +1 -1
- package/tableview/api/action/descriptors/action-confirmation.descriptor.d.ts +1 -1
- package/tableview/api/action/descriptors/action-descriptor.factory.d.ts +20 -31
- package/tableview/api/action/descriptors/action-editor-descriptor.factory.d.ts +18 -25
- package/tableview/api/action/descriptors/action-editor.descriptor.d.ts +22 -40
- package/tableview/api/action/descriptors/action-link-descriptor.factory.d.ts +21 -13
- package/tableview/api/action/descriptors/action-link.descriptor.d.ts +3 -3
- package/tableview/api/action/descriptors/action.descriptor.d.ts +31 -33
- package/tableview/api/action/descriptors/editor-action-descriptor.factory.d.ts +21 -0
- package/tableview/api/action/descriptors/editor-action-editor-descriptor.factory.d.ts +21 -0
- package/tableview/api/action/descriptors/table-action-descriptor.factory.d.ts +36 -0
- package/tableview/api/action/descriptors/table-action-editor-descriptor.factory.d.ts +40 -0
- package/tableview/api/action/helpers/data-provider-executors.d.ts +13 -8
- package/tableview/api/action/models/action-descriptor.types.d.ts +2 -2
- package/tableview/api/action/models/action-error.model.d.ts +1 -1
- package/tableview/api/action/models/execution/action-context-validation.model.d.ts +2 -2
- package/tableview/api/action/models/execution/action-context.model.d.ts +2 -2
- package/tableview/api/action/models/execution/action-instance.model.d.ts +1 -1
- package/tableview/api/action/models/tableview-action-default-categories.model.d.ts +5 -5
- package/tableview/api/action/services/data-provider-executor.service.d.ts +26 -25
- package/tableview/api/class/README.md +13 -0
- package/tableview/api/{editor/helpers/class-attribute-converter.d.ts → class/editor/class-editor-attribute-converter.d.ts} +2 -2
- package/tableview/api/{editor/models/class-tableview-attribute.model.d.ts → class/editor/class-editor-attribute.model.d.ts} +1 -1
- package/tableview/api/class/editor/class-editor-data-provider.factory.d.ts +4 -0
- package/tableview/api/{editor/helpers/editor-descriptor-helpers.d.ts → class/editor/class-editor-descriptor-helpers.d.ts} +2 -5
- package/tableview/api/class/editor/class-editor-descriptor.factory.d.ts +11 -0
- package/tableview/api/class/index.d.ts +10 -0
- package/tableview/api/{tableview/helpers/class-attribute-converter.d.ts → class/tableview/class-tableview-attribute-converter.d.ts} +1 -1
- package/tableview/api/{tableview/models → class/tableview}/class-tableview-attribute.model.d.ts +2 -2
- package/tableview/api/class/tableview/class-tableview-data-provider.factory.d.ts +4 -0
- package/tableview/api/{tableview/helpers/tableview-descriptor-helpers.d.ts → class/tableview/class-tableview-descriptor-helpers.d.ts} +1 -2
- package/tableview/api/class/tableview/class-tableview-descriptor.factory.d.ts +12 -0
- package/tableview/api/editor/data-providers/editor-data-provider.factory.d.ts +17 -16
- package/tableview/api/editor/data-providers/editor.data-provider.d.ts +64 -29
- package/tableview/api/editor/descriptors/editor-descriptor.factory.d.ts +5 -38
- package/tableview/api/editor/descriptors/editor.descriptor.d.ts +48 -112
- package/tableview/api/editor/descriptors/field-base.descriptor.d.ts +8 -1
- package/tableview/api/editor/descriptors/field-lookup.descriptor.d.ts +2 -3
- package/tableview/api/editor/descriptors/field-many.descriptor.d.ts +3 -11
- package/tableview/api/editor/descriptors/wrappers/editor-descriptor-nested-object-wrapper.d.ts +25 -0
- package/tableview/api/editor/models/editor-fields.model.d.ts +25 -21
- package/tableview/api/editor/models/form-editor.event.d.ts +0 -4
- package/tableview/api/index.d.ts +7 -6
- package/tableview/api/tableview/data-providers/tableview-data-provider.factory.d.ts +20 -25
- package/tableview/api/tableview/data-providers/tableview.data-provider.d.ts +22 -22
- package/tableview/api/tableview/descriptors/tableview-descriptor.factory.d.ts +20 -50
- package/tableview/api/tableview/descriptors/tableview.descriptor.d.ts +69 -163
- package/tableview/api/tableview/helpers/tableview-create.d.ts +18 -5
- package/tableview/api/tableview/helpers/tableview-data-provider-descriptor-convert.d.ts +2 -2
- package/tableview/api/tableview/helpers/tableview-default-actions.d.ts +73 -20
- package/tableview/api/tableview/helpers/tableview-input-builder.d.ts +87 -9
- package/tableview/api/tableview/models/tableview-descriptor-fields-manage-helper.type.d.ts +9 -0
- package/tableview/api/tableview/models/tableview-descriptor-helper.type.d.ts +2 -0
- package/tableview/api/tableview/models/tableview-input.model.d.ts +1 -1
- package/tableview/api/tableview/models/tableview-route.model.d.ts +1 -1
- package/tableview/editor/helpers/field-create.d.ts +9 -0
- package/tableview/index.d.ts +2 -1
- package/tableview/tableview/components/route/tableview-route.component.d.ts +1 -1
- package/tableview/tableview/components/tableview/tableview.component.d.ts +6 -6
- package/version-info.json +5 -5
- package/core/components/pages/error/error.page.component.d.ts +0 -11
- package/core/components/pages/not-found/not-found.page.component.d.ts +0 -11
- package/core/data-providers/base-data-provider.factory.d.ts +0 -13
- package/esm2022/core/components/pages/error/error.page.component.mjs +0 -24
- package/esm2022/core/components/pages/not-found/not-found.page.component.mjs +0 -24
- package/esm2022/core/data-providers/base-data-provider.factory.mjs +0 -28
- package/esm2022/model/helpers/model.mjs +0 -71
- package/esm2022/table/api/helpers/class-attribute-converter.mjs +0 -104
- package/esm2022/table/api/helpers/table-descriptor-helpers.mjs +0 -98
- package/esm2022/table/api/models/class-table-attribute.model.mjs +0 -2
- package/esm2022/tableview/api/editor/helpers/class-attribute-converter.mjs +0 -85
- package/esm2022/tableview/api/editor/helpers/editor-descriptor-helpers.mjs +0 -95
- package/esm2022/tableview/api/editor/models/class-tableview-attribute.model.mjs +0 -2
- package/esm2022/tableview/api/tableview/helpers/class-attribute-converter.mjs +0 -34
- package/esm2022/tableview/api/tableview/helpers/tableview-descriptor-helpers.mjs +0 -110
- package/esm2022/tableview/api/tableview/models/class-tableview-attribute.model.mjs +0 -2
|
@@ -6,6 +6,10 @@ export * from './action/descriptors/action-editor.descriptor';
|
|
|
6
6
|
export * from './action/descriptors/action-editor-descriptor.factory';
|
|
7
7
|
export * from './action/descriptors/action-link.descriptor';
|
|
8
8
|
export * from './action/descriptors/action-link-descriptor.factory';
|
|
9
|
+
export * from './action/descriptors/editor-action-descriptor.factory';
|
|
10
|
+
export * from './action/descriptors/editor-action-editor-descriptor.factory';
|
|
11
|
+
export * from './action/descriptors/table-action-descriptor.factory';
|
|
12
|
+
export * from './action/descriptors/table-action-editor-descriptor.factory';
|
|
9
13
|
// action helpers
|
|
10
14
|
export * from './action/helpers/data-provider-executors';
|
|
11
15
|
// action model execution
|
|
@@ -29,6 +33,7 @@ export * from './action/services/data-provider-executor.service';
|
|
|
29
33
|
export * from './editor/data-providers/editor.data-provider';
|
|
30
34
|
export * from './editor/data-providers/editor-data-provider.factory';
|
|
31
35
|
// editor descriptors
|
|
36
|
+
export * from './editor/descriptors/wrappers/editor-descriptor-nested-object-wrapper';
|
|
32
37
|
export * from './editor/descriptors/editor.descriptor';
|
|
33
38
|
export * from './editor/descriptors/editor-descriptor.factory';
|
|
34
39
|
export * from './editor/descriptors/field.descriptor';
|
|
@@ -38,11 +43,7 @@ export * from './editor/descriptors/field-group.descriptor';
|
|
|
38
43
|
export * from './editor/descriptors/field-lookup.descriptor';
|
|
39
44
|
export * from './editor/descriptors/field-many.descriptor';
|
|
40
45
|
export * from './editor/descriptors/field-validation.descriptor';
|
|
41
|
-
// editor helpers
|
|
42
|
-
export * from './editor/helpers/class-attribute-converter';
|
|
43
|
-
export * from './editor/helpers/editor-descriptor-helpers';
|
|
44
46
|
// editor models
|
|
45
|
-
export * from './editor/models/class-tableview-attribute.model';
|
|
46
47
|
export * from './editor/models/editor.model';
|
|
47
48
|
export * from './editor/models/editor-fields.model';
|
|
48
49
|
export * from './editor/models/field.model';
|
|
@@ -62,15 +63,14 @@ export * from './tableview/data-providers/tableview-data-provider.factory';
|
|
|
62
63
|
export * from './tableview/descriptors/tableview.descriptor';
|
|
63
64
|
export * from './tableview/descriptors/tableview-descriptor.factory';
|
|
64
65
|
// tableview helpers
|
|
65
|
-
export * from './tableview/helpers/class-attribute-converter';
|
|
66
66
|
export * from './tableview/helpers/files-export';
|
|
67
67
|
export * from './tableview/helpers/tableview-create';
|
|
68
68
|
export * from './tableview/helpers/tableview-data-provider-descriptor-convert';
|
|
69
69
|
export * from './tableview/helpers/tableview-default-actions';
|
|
70
|
-
export * from './tableview/helpers/tableview-descriptor-helpers';
|
|
71
70
|
export * from './tableview/helpers/tableview-input-builder';
|
|
72
71
|
// tableview models
|
|
73
|
-
export * from './tableview/models/
|
|
72
|
+
export * from './tableview/models/tableview-descriptor-fields-manage-helper.type';
|
|
73
|
+
export * from './tableview/models/tableview-descriptor-helper.type';
|
|
74
74
|
export * from './tableview/models/tableview-input.model';
|
|
75
75
|
export * from './tableview/models/tableview-route.model';
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90YWJsZXZpZXcvYXBpL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxxQkFBcUI7QUFDckIsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyxxREFBcUQsQ0FBQztBQUNwRSxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLDZEQUE2RCxDQUFDO0FBRTVFLGlCQUFpQjtBQUNqQixjQUFjLDBDQUEwQyxDQUFDO0FBRXpELHlCQUF5QjtBQUN6QixjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsMkRBQTJELENBQUM7QUFDMUUsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsdURBQXVELENBQUM7QUFDdEUsY0FBYyxnREFBZ0QsQ0FBQztBQUUvRCxlQUFlO0FBQ2YsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsMkRBQTJELENBQUM7QUFFMUUsa0JBQWtCO0FBQ2xCLGNBQWMsdURBQXVELENBQUM7QUFDdEUsY0FBYyxrREFBa0QsQ0FBQztBQUVqRSx3QkFBd0I7QUFDeEIsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLHNEQUFzRCxDQUFDO0FBRXJFLHFCQUFxQjtBQUNyQixjQUFjLHVFQUF1RSxDQUFDO0FBQ3RGLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLGtEQUFrRCxDQUFDO0FBRWpFLGdCQUFnQjtBQUNoQixjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYywyQ0FBMkMsQ0FBQztBQUUxRCwyQkFBMkI7QUFDM0IsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLDREQUE0RCxDQUFDO0FBRTNFLHdCQUF3QjtBQUN4QixjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsc0RBQXNELENBQUM7QUFFckUsb0JBQW9CO0FBQ3BCLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyw2Q0FBNkMsQ0FBQztBQUU1RCxtQkFBbUI7QUFDbkIsY0FBYyxtRUFBbUUsQ0FBQztBQUNsRixjQUFjLHFEQUFxRCxDQUFDO0FBQ3BFLGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYywwQ0FBMEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIGFjdGlvbiBkZXNjcmlwdG9yc1xuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb24vZGVzY3JpcHRvcnMvYWN0aW9uLmRlc2NyaXB0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb24vZGVzY3JpcHRvcnMvYWN0aW9uLWNvbmZpcm1hdGlvbi5kZXNjcmlwdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9uL2Rlc2NyaXB0b3JzL2FjdGlvbi1kZXNjcmlwdG9yLmZhY3RvcnknO1xuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb24vZGVzY3JpcHRvcnMvYWN0aW9uLWVkaXRvci5kZXNjcmlwdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9uL2Rlc2NyaXB0b3JzL2FjdGlvbi1lZGl0b3ItZGVzY3JpcHRvci5mYWN0b3J5JztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9uL2Rlc2NyaXB0b3JzL2FjdGlvbi1saW5rLmRlc2NyaXB0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb24vZGVzY3JpcHRvcnMvYWN0aW9uLWxpbmstZGVzY3JpcHRvci5mYWN0b3J5JztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9uL2Rlc2NyaXB0b3JzL2VkaXRvci1hY3Rpb24tZGVzY3JpcHRvci5mYWN0b3J5JztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9uL2Rlc2NyaXB0b3JzL2VkaXRvci1hY3Rpb24tZWRpdG9yLWRlc2NyaXB0b3IuZmFjdG9yeSc7XG5leHBvcnQgKiBmcm9tICcuL2FjdGlvbi9kZXNjcmlwdG9ycy90YWJsZS1hY3Rpb24tZGVzY3JpcHRvci5mYWN0b3J5JztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9uL2Rlc2NyaXB0b3JzL3RhYmxlLWFjdGlvbi1lZGl0b3ItZGVzY3JpcHRvci5mYWN0b3J5JztcblxuLy8gYWN0aW9uIGhlbHBlcnNcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9uL2hlbHBlcnMvZGF0YS1wcm92aWRlci1leGVjdXRvcnMnO1xuXG4vLyBhY3Rpb24gbW9kZWwgZXhlY3V0aW9uXG5leHBvcnQgKiBmcm9tICcuL2FjdGlvbi9tb2RlbHMvZXhlY3V0aW9uL2FjdGlvbi1jb250ZXh0Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9uL21vZGVscy9leGVjdXRpb24vYWN0aW9uLWNvbnRleHQtdmFsaWRhdGlvbi5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2FjdGlvbi9tb2RlbHMvZXhlY3V0aW9uL2FjdGlvbi1leGVjdXRpb24tZXJyb3IubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb24vbW9kZWxzL2V4ZWN1dGlvbi9hY3Rpb24taW5zdGFuY2UubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb24vbW9kZWxzL2V4ZWN1dGlvbi9hY3Rpb24taW5zdGFuY2Utc3RhdGUubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb24vbW9kZWxzL2V4ZWN1dGlvbi92aWV3LWNvbnRhaW5lci5tb2RlbCc7XG5cbi8vIGFjdGlvbiBtb2RlbFxuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb24vbW9kZWxzL2FjdGlvbi50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9uL21vZGVscy9hY3Rpb24tY29tcG9uZW50Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9uL21vZGVscy9hY3Rpb24tZGVzY3JpcHRvci50eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2FjdGlvbi9tb2RlbHMvYWN0aW9uLWVkaXRvci5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2FjdGlvbi9tb2RlbHMvYWN0aW9uLWVycm9yLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vYWN0aW9uL21vZGVscy90YWJsZXZpZXctYWN0aW9uLWRlZmF1bHQtY2F0ZWdvcmllcy5tb2RlbCc7XG5cbi8vIGFjdGlvbiBzZXJ2aWNlc1xuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb24vc2VydmljZXMvdG9rZW5zL2RhdGEtbGFuZ3VhZ2UtZHJvcGRvd24udG9rZW4nO1xuZXhwb3J0ICogZnJvbSAnLi9hY3Rpb24vc2VydmljZXMvZGF0YS1wcm92aWRlci1leGVjdXRvci5zZXJ2aWNlJztcblxuLy8gZWRpdG9yIGRhdGEgcHJvdmlkZXJzXG5leHBvcnQgKiBmcm9tICcuL2VkaXRvci9kYXRhLXByb3ZpZGVycy9lZGl0b3IuZGF0YS1wcm92aWRlcic7XG5leHBvcnQgKiBmcm9tICcuL2VkaXRvci9kYXRhLXByb3ZpZGVycy9lZGl0b3ItZGF0YS1wcm92aWRlci5mYWN0b3J5JztcblxuLy8gZWRpdG9yIGRlc2NyaXB0b3JzXG5leHBvcnQgKiBmcm9tICcuL2VkaXRvci9kZXNjcmlwdG9ycy93cmFwcGVycy9lZGl0b3ItZGVzY3JpcHRvci1uZXN0ZWQtb2JqZWN0LXdyYXBwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9lZGl0b3IvZGVzY3JpcHRvcnMvZWRpdG9yLmRlc2NyaXB0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9lZGl0b3IvZGVzY3JpcHRvcnMvZWRpdG9yLWRlc2NyaXB0b3IuZmFjdG9yeSc7XG5leHBvcnQgKiBmcm9tICcuL2VkaXRvci9kZXNjcmlwdG9ycy9maWVsZC5kZXNjcmlwdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vZWRpdG9yL2Rlc2NyaXB0b3JzL2ZpZWxkLWFjdGlvbi5kZXNjcmlwdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vZWRpdG9yL2Rlc2NyaXB0b3JzL2ZpZWxkLWJhc2UuZGVzY3JpcHRvcic7XG5leHBvcnQgKiBmcm9tICcuL2VkaXRvci9kZXNjcmlwdG9ycy9maWVsZC1ncm91cC5kZXNjcmlwdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vZWRpdG9yL2Rlc2NyaXB0b3JzL2ZpZWxkLWxvb2t1cC5kZXNjcmlwdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vZWRpdG9yL2Rlc2NyaXB0b3JzL2ZpZWxkLW1hbnkuZGVzY3JpcHRvcic7XG5leHBvcnQgKiBmcm9tICcuL2VkaXRvci9kZXNjcmlwdG9ycy9maWVsZC12YWxpZGF0aW9uLmRlc2NyaXB0b3InO1xuXG4vLyBlZGl0b3IgbW9kZWxzXG5leHBvcnQgKiBmcm9tICcuL2VkaXRvci9tb2RlbHMvZWRpdG9yLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZWRpdG9yL21vZGVscy9lZGl0b3ItZmllbGRzLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZWRpdG9yL21vZGVscy9maWVsZC5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2VkaXRvci9tb2RlbHMvZmllbGQtYWN0aW9uLWNvbnRleHQubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9lZGl0b3IvbW9kZWxzL2ZpZWxkLXZhbGlkYXRpb24ubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9lZGl0b3IvbW9kZWxzL2Zvcm0tZWRpdG9yLmV2ZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZWRpdG9yL21vZGVscy9mb3JtLWVkaXRvci5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9lZGl0b3IvbW9kZWxzL2Zvcm1seS1jdXN0b20tZmllbGQubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9lZGl0b3IvbW9kZWxzL2Zvcm1seS1maWVsZC5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2VkaXRvci9tb2RlbHMvZm9ybWx5LW9wdGlvbnMubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9lZGl0b3IvbW9kZWxzL3JhZGlvLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZWRpdG9yL21vZGVscy9maWVsZC1pbWFnZS1wcmV2aWV3Lm1vZGVsJztcblxuLy8gdGFibGV2aWV3IGRhdGEgcHJvdmlkZXJzXG5leHBvcnQgKiBmcm9tICcuL3RhYmxldmlldy9kYXRhLXByb3ZpZGVycy90YWJsZXZpZXcuZGF0YS1wcm92aWRlcic7XG5leHBvcnQgKiBmcm9tICcuL3RhYmxldmlldy9kYXRhLXByb3ZpZGVycy90YWJsZXZpZXctZGF0YS1wcm92aWRlci5mYWN0b3J5JztcblxuLy8gdGFibGV2aWV3IGRlc2NyaXB0b3JzXG5leHBvcnQgKiBmcm9tICcuL3RhYmxldmlldy9kZXNjcmlwdG9ycy90YWJsZXZpZXcuZGVzY3JpcHRvcic7XG5leHBvcnQgKiBmcm9tICcuL3RhYmxldmlldy9kZXNjcmlwdG9ycy90YWJsZXZpZXctZGVzY3JpcHRvci5mYWN0b3J5JztcblxuLy8gdGFibGV2aWV3IGhlbHBlcnNcbmV4cG9ydCAqIGZyb20gJy4vdGFibGV2aWV3L2hlbHBlcnMvZmlsZXMtZXhwb3J0JztcbmV4cG9ydCAqIGZyb20gJy4vdGFibGV2aWV3L2hlbHBlcnMvdGFibGV2aWV3LWNyZWF0ZSc7XG5leHBvcnQgKiBmcm9tICcuL3RhYmxldmlldy9oZWxwZXJzL3RhYmxldmlldy1kYXRhLXByb3ZpZGVyLWRlc2NyaXB0b3ItY29udmVydCc7XG5leHBvcnQgKiBmcm9tICcuL3RhYmxldmlldy9oZWxwZXJzL3RhYmxldmlldy1kZWZhdWx0LWFjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi90YWJsZXZpZXcvaGVscGVycy90YWJsZXZpZXctaW5wdXQtYnVpbGRlcic7XG5cbi8vIHRhYmxldmlldyBtb2RlbHNcbmV4cG9ydCAqIGZyb20gJy4vdGFibGV2aWV3L21vZGVscy90YWJsZXZpZXctZGVzY3JpcHRvci1maWVsZHMtbWFuYWdlLWhlbHBlci50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vdGFibGV2aWV3L21vZGVscy90YWJsZXZpZXctZGVzY3JpcHRvci1oZWxwZXIudHlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3RhYmxldmlldy9tb2RlbHMvdGFibGV2aWV3LWlucHV0Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vdGFibGV2aWV3L21vZGVscy90YWJsZXZpZXctcm91dGUubW9kZWwnO1xuIl19
|
|
@@ -1,56 +1,18 @@
|
|
|
1
1
|
import { DynamicTableviewDataProviderInst, TableviewDataProviderInst } from './tableview.data-provider';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
15
|
-
static fromService(serviceType) {
|
|
16
|
-
return tableviewDataProviderWithService(serviceType);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
export function tableviewDataProvider(type, serviceTypeOrOpts,
|
|
20
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
21
|
-
opts) {
|
|
22
|
-
if (serviceTypeOrOpts === undefined || typeof serviceTypeOrOpts === 'function') {
|
|
23
|
-
return new TableviewDataProviderInst(undefined, serviceTypeOrOpts);
|
|
24
|
-
}
|
|
25
|
-
else {
|
|
26
|
-
return new TableviewDataProviderInst(undefined, undefined);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
export function tableviewDataProviderWithService(serviceType,
|
|
30
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
31
|
-
opts) {
|
|
32
|
-
return new TableviewDataProviderInst(undefined, serviceType);
|
|
33
|
-
}
|
|
34
|
-
export function tableviewDataProviderFromClass(type, serviceType) {
|
|
35
|
-
return new TableviewDataProviderInst(type, serviceType);
|
|
36
|
-
}
|
|
37
|
-
export function tableviewDataProviderFromModel(model, serviceTypeOrOpts, opts) {
|
|
38
|
-
return typeof serviceTypeOrOpts === 'function'
|
|
39
|
-
? new TableviewDataProviderInst(model.type, serviceTypeOrOpts)
|
|
40
|
-
: new TableviewDataProviderInst(model.type, undefined);
|
|
41
|
-
}
|
|
42
|
-
export class DynamicTableviewDataProvider extends DynamicTableviewDataProviderInst {
|
|
43
|
-
constructor() {
|
|
44
|
-
super(undefined);
|
|
45
|
-
}
|
|
46
|
-
static create() {
|
|
47
|
-
return tableviewDynamicDataProvider();
|
|
48
|
-
}
|
|
49
|
-
static fromService(serviceType) {
|
|
50
|
-
return tableviewDynamicDataProvider(serviceType);
|
|
51
|
-
}
|
|
2
|
+
/**
|
|
3
|
+
* Creates and returns an instance of `TableviewDataProviderInst` with the specified options for managing tableview data.
|
|
4
|
+
*
|
|
5
|
+
* @param {Object} [opts] - The options object to configure the data provider.
|
|
6
|
+
* @param {TypeDescriptor<Model> | ModelDescriptor<Model>} [opts.type] - The descriptor defining the type of model.
|
|
7
|
+
* @param {ServiceClassType<Service>} [opts.service] - The service class type associated with the data provider.
|
|
8
|
+
* @param {TypeDescriptor<CreateModel> | ModelDescriptor<CreateModel>} [opts.filtersType] - The descriptor defining the filters type.
|
|
9
|
+
* @param {TypeDescriptor<UpdateModel> | ModelDescriptor<UpdateModel>} [opts.sortsType] - The descriptor defining the sorts type.
|
|
10
|
+
* @return {TableviewDataProviderInst<Model, Service, Sorts, Filters, ServiceClass, TableModel, CreateModel, UpdateModel>} An instance of `TableviewDataProviderInst` configured according to the provided options.
|
|
11
|
+
*/
|
|
12
|
+
export function tableviewDataProvider(opts) {
|
|
13
|
+
return new TableviewDataProviderInst(opts?.service);
|
|
52
14
|
}
|
|
53
15
|
export function tableviewDynamicDataProvider(serviceType) {
|
|
54
16
|
return new DynamicTableviewDataProviderInst(serviceType);
|
|
55
17
|
}
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGV2aWV3LWRhdGEtcHJvdmlkZXIuZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9hcGkvc3JjL3RhYmxldmlldy9kYXRhLXByb3ZpZGVycy90YWJsZXZpZXctZGF0YS1wcm92aWRlci5mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBQyxnQ0FBZ0MsRUFBRSx5QkFBeUIsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRXRHLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSx5QkFBOEI7SUFDckU7UUFDSSxLQUFLLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFTSxNQUFNLENBQUMsTUFBTTtRQUNoQixPQUFPLHFCQUFxQixFQUF5QixDQUFDO0lBQzFELENBQUM7SUFFTSxNQUFNLENBQUMsU0FBUyxDQUNuQixJQUFzQjtRQUV0QixPQUFPLDhCQUE4QixDQUF3QixJQUFJLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRU0sTUFBTSxDQUFDLG9CQUFvQixDQUM5QixJQUFzQixFQUN0QixXQUFzQztRQUV0QyxPQUFPLDhCQUE4QixDQUFpQyxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDN0YsQ0FBQztJQUVNLE1BQU0sQ0FBQyxXQUFXLENBQ3JCLFdBQXNDO1FBRXRDLE9BQU8sZ0NBQWdDLENBQWlDLFdBQVcsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7Q0FDSjtBQXdCRCxNQUFNLFVBQVUscUJBQXFCLENBQ2pDLElBQTRCLEVBQzVCLGlCQUE2RjtBQUM3Riw2REFBNkQ7QUFDN0QsSUFBaUU7SUFFakUsSUFBSSxpQkFBaUIsS0FBSyxTQUFTLElBQUksT0FBTyxpQkFBaUIsS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUM3RSxPQUFPLElBQUkseUJBQXlCLENBQTBELFNBQVMsRUFBRSxpQkFBaUMsQ0FBQyxDQUFDO0lBQ2hKLENBQUM7U0FBTSxDQUFDO1FBQ0osT0FBTyxJQUFJLHlCQUF5QixDQUEwRCxTQUFTLEVBQUUsU0FBeUIsQ0FBQyxDQUFDO0lBQ3hJLENBQUM7QUFDTCxDQUFDO0FBRUQsTUFBTSxVQUFVLGdDQUFnQyxDQUM1QyxXQUFzQztBQUN0Qyw2REFBNkQ7QUFDN0QsSUFBaUU7SUFFakUsT0FBTyxJQUFJLHlCQUF5QixDQUF1RSxTQUFTLEVBQUUsV0FBVyxDQUFDLENBQUM7QUFDdkksQ0FBQztBQVNELE1BQU0sVUFBVSw4QkFBOEIsQ0FDMUMsSUFBc0IsRUFDdEIsV0FBMEI7SUFFMUIsT0FBTyxJQUFJLHlCQUF5QixDQUFpRSxJQUFJLEVBQUUsV0FBMkIsQ0FBQyxDQUFDO0FBQzVJLENBQUM7QUFXRCxNQUFNLFVBQVUsOEJBQThCLENBUTVDLEtBQXlDLEVBQUUsaUJBQWdDLEVBQUUsSUFBaUU7SUFDNUksT0FBTyxPQUFPLGlCQUFpQixLQUFLLFVBQVU7UUFDMUMsQ0FBQyxDQUFDLElBQUkseUJBQXlCLENBQ3pCLEtBQUssQ0FBQyxJQUF3QixFQUM5QixpQkFBOEMsQ0FDakQ7UUFDSCxDQUFDLENBQUMsSUFBSSx5QkFBeUIsQ0FBZ0UsS0FBSyxDQUFDLElBQXdCLEVBQUUsU0FBUyxDQUFDLENBQUM7QUFDbEosQ0FBQztBQUVELE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxnQ0FBZ0M7SUFDOUU7UUFDSSxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxNQUFNO1FBQ2hCLE9BQU8sNEJBQTRCLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBRU0sTUFBTSxDQUFDLFdBQVcsQ0FBVSxXQUFzQztRQUNyRSxPQUFPLDRCQUE0QixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JELENBQUM7Q0FDSjtBQUlELE1BQU0sVUFBVSw0QkFBNEIsQ0FDeEMsV0FBMEI7SUFFMUIsT0FBTyxJQUFJLGdDQUFnQyxDQUF3QixXQUEyQixDQUFDLENBQUM7QUFDcEcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2xhc3NUeXBlLCBTZXJ2aWNlQ2xhc3NUeXBlfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtNb2RlbERlc2NyaXB0b3IsIFR5cGVEZXNjcmlwdG9yfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL21vZGVsJztcblxuaW1wb3J0IHtEeW5hbWljVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdCwgVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdH0gZnJvbSAnLi90YWJsZXZpZXcuZGF0YS1wcm92aWRlcic7XG5cbmV4cG9ydCBjbGFzcyBUYWJsZXZpZXdEYXRhUHJvdmlkZXIgZXh0ZW5kcyBUYWJsZXZpZXdEYXRhUHJvdmlkZXJJbnN0PGFueT4ge1xuICAgIHByb3RlY3RlZCBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIodW5kZWZpbmVkLCB1bmRlZmluZWQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgY3JlYXRlPE1vZGVsLCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWw+KCk6IFRhYmxldmlld0RhdGFQcm92aWRlckluc3Q8TW9kZWwsIHVuZGVmaW5lZCwgU29ydHMsIEZpbHRlcnMsIHVuZGVmaW5lZCwgdW5kZWZpbmVkPiB7XG4gICAgICAgIHJldHVybiB0YWJsZXZpZXdEYXRhUHJvdmlkZXI8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzPigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZnJvbUNsYXNzPE1vZGVsLCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWw+KFxuICAgICAgICB0eXBlOiBDbGFzc1R5cGU8TW9kZWw+XG4gICAgKTogVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgdW5kZWZpbmVkLCBTb3J0cywgRmlsdGVycywgQ2xhc3NUeXBlPE1vZGVsPiwgdW5kZWZpbmVkPiB7XG4gICAgICAgIHJldHVybiB0YWJsZXZpZXdEYXRhUHJvdmlkZXJGcm9tQ2xhc3M8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzPih0eXBlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZyb21DbGFzc1dpdGhTZXJ2aWNlPE1vZGVsLCBTZXJ2aWNlLCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWw+KFxuICAgICAgICB0eXBlOiBDbGFzc1R5cGU8TW9kZWw+LFxuICAgICAgICBzZXJ2aWNlVHlwZTogU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPlxuICAgICk6IFRhYmxldmlld0RhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzLCBDbGFzc1R5cGU8TW9kZWw+LCBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+PiB7XG4gICAgICAgIHJldHVybiB0YWJsZXZpZXdEYXRhUHJvdmlkZXJGcm9tQ2xhc3M8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzPih0eXBlLCBzZXJ2aWNlVHlwZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBmcm9tU2VydmljZTxTZXJ2aWNlLCBNb2RlbCwgU29ydHMgPSBrZXlvZiBNb2RlbCwgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsPihcbiAgICAgICAgc2VydmljZVR5cGU6IFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT5cbiAgICApOiBUYWJsZXZpZXdEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBTb3J0cywgRmlsdGVycywgdW5kZWZpbmVkLCBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+PiB7XG4gICAgICAgIHJldHVybiB0YWJsZXZpZXdEYXRhUHJvdmlkZXJXaXRoU2VydmljZTxTZXJ2aWNlLCBNb2RlbCwgU29ydHMsIEZpbHRlcnM+KHNlcnZpY2VUeXBlKTtcbiAgICB9XG59XG5cbmV4cG9ydCB0eXBlIFRhYmxldmlld0RhdGFQcm92aWRlckNyZWF0ZU9wdHNUeXBlPFRhYmxlTW9kZWwsIFNvcnRzID0ga2V5b2YgVGFibGVNb2RlbCwgRmlsdGVycyA9IGtleW9mIFRhYmxlTW9kZWw+ID0ge1xuICAgIGZpbHRlcnNUeXBlPzogVHlwZURlc2NyaXB0b3I8RmlsdGVycz47XG4gICAgc29ydHNUeXBlPzogVHlwZURlc2NyaXB0b3I8U29ydHM+O1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld0RhdGFQcm92aWRlcjxNb2RlbCwgU29ydHMgPSBrZXlvZiBNb2RlbCwgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsPigpOiBUYWJsZXZpZXdEYXRhUHJvdmlkZXJJbnN0PFxuICAgIE1vZGVsLFxuICAgIHVuZGVmaW5lZCxcbiAgICBTb3J0cyxcbiAgICBGaWx0ZXJzLFxuICAgIHVuZGVmaW5lZCxcbiAgICB1bmRlZmluZWRcbj47XG5leHBvcnQgZnVuY3Rpb24gdGFibGV2aWV3RGF0YVByb3ZpZGVyPE1vZGVsLCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWw+KFxuICAgIHR5cGU6IFR5cGVEZXNjcmlwdG9yPE1vZGVsPixcbiAgICBvcHRzPzogVGFibGV2aWV3RGF0YVByb3ZpZGVyQ3JlYXRlT3B0c1R5cGU8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzPlxuKTogVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgdW5kZWZpbmVkLCBTb3J0cywgRmlsdGVycywgdW5kZWZpbmVkLCB1bmRlZmluZWQ+O1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld0RhdGFQcm92aWRlcjxNb2RlbCwgU2VydmljZSA9IGFueSwgU29ydHMgPSBrZXlvZiBNb2RlbCwgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsPihcbiAgICB0eXBlOiBUeXBlRGVzY3JpcHRvcjxNb2RlbD4sXG4gICAgc2VydmljZVR5cGU6IFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4sXG4gICAgb3B0cz86IFRhYmxldmlld0RhdGFQcm92aWRlckNyZWF0ZU9wdHNUeXBlPE1vZGVsLCBTb3J0cywgRmlsdGVycz5cbik6IFRhYmxldmlld0RhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzLCB1bmRlZmluZWQsIFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4+O1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld0RhdGFQcm92aWRlcjxNb2RlbCwgU2VydmljZSA9IGFueSwgU29ydHMgPSBrZXlvZiBNb2RlbCwgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsLCBTZXJ2aWNlQ2xhc3MgPSBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+PihcbiAgICB0eXBlPzogVHlwZURlc2NyaXB0b3I8TW9kZWw+LFxuICAgIHNlcnZpY2VUeXBlT3JPcHRzPzogU2VydmljZUNsYXNzIHwgVGFibGV2aWV3RGF0YVByb3ZpZGVyQ3JlYXRlT3B0c1R5cGU8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzPixcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgb3B0cz86IFRhYmxldmlld0RhdGFQcm92aWRlckNyZWF0ZU9wdHNUeXBlPE1vZGVsLCBTb3J0cywgRmlsdGVycz5cbikge1xuICAgIGlmIChzZXJ2aWNlVHlwZU9yT3B0cyA9PT0gdW5kZWZpbmVkIHx8IHR5cGVvZiBzZXJ2aWNlVHlwZU9yT3B0cyA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICByZXR1cm4gbmV3IFRhYmxldmlld0RhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzLCB1bmRlZmluZWQsIFNlcnZpY2VDbGFzcz4odW5kZWZpbmVkLCBzZXJ2aWNlVHlwZU9yT3B0cyBhcyBTZXJ2aWNlQ2xhc3MpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBuZXcgVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIHVuZGVmaW5lZCwgU2VydmljZUNsYXNzPih1bmRlZmluZWQsIHVuZGVmaW5lZCBhcyBTZXJ2aWNlQ2xhc3MpO1xuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld0RhdGFQcm92aWRlcldpdGhTZXJ2aWNlPFNlcnZpY2UsIE1vZGVsLCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWw+KFxuICAgIHNlcnZpY2VUeXBlOiBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+LFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICBvcHRzPzogVGFibGV2aWV3RGF0YVByb3ZpZGVyQ3JlYXRlT3B0c1R5cGU8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzPlxuKTogVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIHVuZGVmaW5lZCwgU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj4ge1xuICAgIHJldHVybiBuZXcgVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIHVuZGVmaW5lZCwgU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj4odW5kZWZpbmVkLCBzZXJ2aWNlVHlwZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0YWJsZXZpZXdEYXRhUHJvdmlkZXJGcm9tQ2xhc3M8TW9kZWwsIFNvcnRzID0ga2V5b2YgTW9kZWwsIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBNb2RlbD4oXG4gICAgdHlwZTogQ2xhc3NUeXBlPE1vZGVsPlxuKTogVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgdW5kZWZpbmVkLCBTb3J0cywgRmlsdGVycywgQ2xhc3NUeXBlPE1vZGVsPiwgdW5kZWZpbmVkPjtcbmV4cG9ydCBmdW5jdGlvbiB0YWJsZXZpZXdEYXRhUHJvdmlkZXJGcm9tQ2xhc3M8TW9kZWwsIFNlcnZpY2UgPSBhbnksIFNvcnRzID0ga2V5b2YgTW9kZWwsIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBNb2RlbD4oXG4gICAgdHlwZTogQ2xhc3NUeXBlPE1vZGVsPixcbiAgICBzZXJ2aWNlVHlwZTogU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPlxuKTogVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIENsYXNzVHlwZTxNb2RlbD4sIFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4+O1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld0RhdGFQcm92aWRlckZyb21DbGFzczxNb2RlbCwgU2VydmljZSA9IGFueSwgU29ydHMgPSBrZXlvZiBNb2RlbCwgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsLCBTZXJ2aWNlQ2xhc3MgPSBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+PihcbiAgICB0eXBlOiBDbGFzc1R5cGU8TW9kZWw+LFxuICAgIHNlcnZpY2VUeXBlPzogU2VydmljZUNsYXNzXG4pIHtcbiAgICByZXR1cm4gbmV3IFRhYmxldmlld0RhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzLCBDbGFzc1R5cGU8TW9kZWw+LCBTZXJ2aWNlQ2xhc3M+KHR5cGUsIHNlcnZpY2VUeXBlIGFzIFNlcnZpY2VDbGFzcyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0YWJsZXZpZXdEYXRhUHJvdmlkZXJGcm9tTW9kZWw8TW9kZWwsIFNvcnRzID0ga2V5b2YgTW9kZWwsIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBNb2RlbCwgTW9kZWxDbGFzcyA9IENsYXNzVHlwZTxNb2RlbD4+KFxuICAgIG1vZGVsOiBNb2RlbERlc2NyaXB0b3I8TW9kZWwsIE1vZGVsQ2xhc3M+LFxuICAgIG9wdHM/OiBUYWJsZXZpZXdEYXRhUHJvdmlkZXJDcmVhdGVPcHRzVHlwZTxNb2RlbCwgU29ydHMsIEZpbHRlcnM+XG4pOiBUYWJsZXZpZXdEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCB1bmRlZmluZWQsIFNvcnRzLCBGaWx0ZXJzLCBNb2RlbENsYXNzLCB1bmRlZmluZWQ+O1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld0RhdGFQcm92aWRlckZyb21Nb2RlbDxNb2RlbCwgU2VydmljZSA9IGFueSwgU29ydHMgPSBrZXlvZiBNb2RlbCwgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsLCBNb2RlbENsYXNzID0gQ2xhc3NUeXBlPE1vZGVsPj4oXG4gICAgbW9kZWw6IE1vZGVsRGVzY3JpcHRvcjxNb2RlbCwgTW9kZWxDbGFzcz4sXG4gICAgc2VydmljZUNsYXNzOiBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+LFxuICAgIG9wdHM/OiBUYWJsZXZpZXdEYXRhUHJvdmlkZXJDcmVhdGVPcHRzVHlwZTxNb2RlbCwgU29ydHMsIEZpbHRlcnM+XG4pOiBUYWJsZXZpZXdEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBTb3J0cywgRmlsdGVycywgTW9kZWxDbGFzcywgU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj47XG5leHBvcnQgZnVuY3Rpb24gdGFibGV2aWV3RGF0YVByb3ZpZGVyRnJvbU1vZGVsPFxuICAgIE1vZGVsLFxuICAgIFNlcnZpY2UgPSBhbnksXG4gICAgU29ydHMgPSBrZXlvZiBNb2RlbCxcbiAgICBGaWx0ZXJzIGV4dGVuZHMga2V5b2YgYW55ID0ga2V5b2YgTW9kZWwsXG4gICAgTW9kZWxDbGFzcyA9IENsYXNzVHlwZTxNb2RlbD4sXG4gICAgU2VydmljZUNsYXNzID0gU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPlxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbj4obW9kZWw6IE1vZGVsRGVzY3JpcHRvcjxNb2RlbCwgTW9kZWxDbGFzcz4sIHNlcnZpY2VUeXBlT3JPcHRzPzogU2VydmljZUNsYXNzLCBvcHRzPzogVGFibGV2aWV3RGF0YVByb3ZpZGVyQ3JlYXRlT3B0c1R5cGU8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzPikge1xuICAgIHJldHVybiB0eXBlb2Ygc2VydmljZVR5cGVPck9wdHMgPT09ICdmdW5jdGlvbidcbiAgICAgICAgPyBuZXcgVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIENsYXNzVHlwZTxNb2RlbD4sIFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4+KFxuICAgICAgICAgICAgICBtb2RlbC50eXBlIGFzIENsYXNzVHlwZTxNb2RlbD4sXG4gICAgICAgICAgICAgIHNlcnZpY2VUeXBlT3JPcHRzIGFzIFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT5cbiAgICAgICAgICApXG4gICAgICAgIDogbmV3IFRhYmxldmlld0RhdGFQcm92aWRlckluc3Q8TW9kZWwsIHVuZGVmaW5lZCwgU29ydHMsIEZpbHRlcnMsIENsYXNzVHlwZTxNb2RlbD4sIHVuZGVmaW5lZD4obW9kZWwudHlwZSBhcyBDbGFzc1R5cGU8TW9kZWw+LCB1bmRlZmluZWQpO1xufVxuXG5leHBvcnQgY2xhc3MgRHluYW1pY1RhYmxldmlld0RhdGFQcm92aWRlciBleHRlbmRzIER5bmFtaWNUYWJsZXZpZXdEYXRhUHJvdmlkZXJJbnN0IHtcbiAgICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKHVuZGVmaW5lZCk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBjcmVhdGUoKTogRHluYW1pY1RhYmxldmlld0RhdGFQcm92aWRlckluc3Q8dW5kZWZpbmVkLCB1bmRlZmluZWQ+IHtcbiAgICAgICAgcmV0dXJuIHRhYmxldmlld0R5bmFtaWNEYXRhUHJvdmlkZXIoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZyb21TZXJ2aWNlPFNlcnZpY2U+KHNlcnZpY2VUeXBlOiBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+KTogRHluYW1pY1RhYmxldmlld0RhdGFQcm92aWRlckluc3Q8U2VydmljZSwgU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj4ge1xuICAgICAgICByZXR1cm4gdGFibGV2aWV3RHluYW1pY0RhdGFQcm92aWRlcihzZXJ2aWNlVHlwZSk7XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdGFibGV2aWV3RHluYW1pY0RhdGFQcm92aWRlcigpOiBEeW5hbWljVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdDx1bmRlZmluZWQsIHVuZGVmaW5lZD47XG5leHBvcnQgZnVuY3Rpb24gdGFibGV2aWV3RHluYW1pY0RhdGFQcm92aWRlcjxTZXJ2aWNlPihzZXJ2aWNlVHlwZTogU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPik6IER5bmFtaWNUYWJsZXZpZXdEYXRhUHJvdmlkZXJJbnN0PFNlcnZpY2UsIFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT4+O1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld0R5bmFtaWNEYXRhUHJvdmlkZXI8U2VydmljZSwgU2VydmljZUNsYXNzID0gU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj4oXG4gICAgc2VydmljZVR5cGU/OiBTZXJ2aWNlQ2xhc3Ncbik6IER5bmFtaWNUYWJsZXZpZXdEYXRhUHJvdmlkZXJJbnN0PFNlcnZpY2UsIFNlcnZpY2VDbGFzcz4ge1xuICAgIHJldHVybiBuZXcgRHluYW1pY1RhYmxldmlld0RhdGFQcm92aWRlckluc3Q8U2VydmljZSwgU2VydmljZUNsYXNzPihzZXJ2aWNlVHlwZSBhcyBTZXJ2aWNlQ2xhc3MpO1xufVxuIl19
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGV2aWV3LWRhdGEtcHJvdmlkZXIuZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9hcGkvc3JjL3RhYmxldmlldy9kYXRhLXByb3ZpZGVycy90YWJsZXZpZXctZGF0YS1wcm92aWRlci5mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBQyxnQ0FBZ0MsRUFBRSx5QkFBeUIsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRXRHOzs7Ozs7Ozs7R0FTRztBQUNILE1BQU0sVUFBVSxxQkFBcUIsQ0FTbkMsSUFRRDtJQUNHLE9BQU8sSUFBSSx5QkFBeUIsQ0FBcUYsSUFBSSxFQUFFLE9BQXVCLENBQUMsQ0FBQztBQUM1SixDQUFDO0FBSUQsTUFBTSxVQUFVLDRCQUE0QixDQUN4QyxXQUEwQjtJQUUxQixPQUFPLElBQUksZ0NBQWdDLENBQXdCLFdBQTJCLENBQUMsQ0FBQztBQUNwRyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtTZXJ2aWNlQ2xhc3NUeXBlfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtNb2RlbERlc2NyaXB0b3IsIFR5cGVEZXNjcmlwdG9yfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL21vZGVsJztcblxuaW1wb3J0IHtEeW5hbWljVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdCwgVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdH0gZnJvbSAnLi90YWJsZXZpZXcuZGF0YS1wcm92aWRlcic7XG5cbi8qKlxuICogQ3JlYXRlcyBhbmQgcmV0dXJucyBhbiBpbnN0YW5jZSBvZiBgVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdGAgd2l0aCB0aGUgc3BlY2lmaWVkIG9wdGlvbnMgZm9yIG1hbmFnaW5nIHRhYmxldmlldyBkYXRhLlxuICpcbiAqIEBwYXJhbSB7T2JqZWN0fSBbb3B0c10gLSBUaGUgb3B0aW9ucyBvYmplY3QgdG8gY29uZmlndXJlIHRoZSBkYXRhIHByb3ZpZGVyLlxuICogQHBhcmFtIHtUeXBlRGVzY3JpcHRvcjxNb2RlbD4gfCBNb2RlbERlc2NyaXB0b3I8TW9kZWw+fSBbb3B0cy50eXBlXSAtIFRoZSBkZXNjcmlwdG9yIGRlZmluaW5nIHRoZSB0eXBlIG9mIG1vZGVsLlxuICogQHBhcmFtIHtTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+fSBbb3B0cy5zZXJ2aWNlXSAtIFRoZSBzZXJ2aWNlIGNsYXNzIHR5cGUgYXNzb2NpYXRlZCB3aXRoIHRoZSBkYXRhIHByb3ZpZGVyLlxuICogQHBhcmFtIHtUeXBlRGVzY3JpcHRvcjxDcmVhdGVNb2RlbD4gfCBNb2RlbERlc2NyaXB0b3I8Q3JlYXRlTW9kZWw+fSBbb3B0cy5maWx0ZXJzVHlwZV0gLSBUaGUgZGVzY3JpcHRvciBkZWZpbmluZyB0aGUgZmlsdGVycyB0eXBlLlxuICogQHBhcmFtIHtUeXBlRGVzY3JpcHRvcjxVcGRhdGVNb2RlbD4gfCBNb2RlbERlc2NyaXB0b3I8VXBkYXRlTW9kZWw+fSBbb3B0cy5zb3J0c1R5cGVdIC0gVGhlIGRlc2NyaXB0b3IgZGVmaW5pbmcgdGhlIHNvcnRzIHR5cGUuXG4gKiBAcmV0dXJuIHtUYWJsZXZpZXdEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBTb3J0cywgRmlsdGVycywgU2VydmljZUNsYXNzLCBUYWJsZU1vZGVsLCBDcmVhdGVNb2RlbCwgVXBkYXRlTW9kZWw+fSBBbiBpbnN0YW5jZSBvZiBgVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdGAgY29uZmlndXJlZCBhY2NvcmRpbmcgdG8gdGhlIHByb3ZpZGVkIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0YWJsZXZpZXdEYXRhUHJvdmlkZXI8XG4gICAgTW9kZWwsXG4gICAgU2VydmljZSA9IHVuZGVmaW5lZCxcbiAgICBTb3J0cyA9IGtleW9mIE1vZGVsLFxuICAgIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBNb2RlbCxcbiAgICBUYWJsZU1vZGVsID0gTW9kZWwsXG4gICAgQ3JlYXRlTW9kZWwgPSBNb2RlbCxcbiAgICBVcGRhdGVNb2RlbCA9IE1vZGVsLFxuICAgIFNlcnZpY2VDbGFzcyA9IFNlcnZpY2UgZXh0ZW5kcyB1bmRlZmluZWQgPyB1bmRlZmluZWQgOiBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+XG4+KG9wdHM/OiB7XG4gICAgdHlwZT86IFR5cGVEZXNjcmlwdG9yPE1vZGVsPiB8IE1vZGVsRGVzY3JpcHRvcjxNb2RlbD47XG4gICAgc2VydmljZT86IFNlcnZpY2VDbGFzc1R5cGU8U2VydmljZT47XG4gICAgdGFibGVUeXBlPzogVHlwZURlc2NyaXB0b3I8VGFibGVNb2RlbD4gfCBNb2RlbERlc2NyaXB0b3I8VGFibGVNb2RlbD47XG4gICAgY3JlYXRlVHlwZT86IFR5cGVEZXNjcmlwdG9yPENyZWF0ZU1vZGVsPiB8IE1vZGVsRGVzY3JpcHRvcjxNb2RlbD47XG4gICAgdXBkYXRlVHlwZT86IFR5cGVEZXNjcmlwdG9yPFVwZGF0ZU1vZGVsPiB8IE1vZGVsRGVzY3JpcHRvcjxNb2RlbD47XG4gICAgZmlsdGVyc1R5cGU/OiBUeXBlRGVzY3JpcHRvcjxGaWx0ZXJzPiB8IE1vZGVsRGVzY3JpcHRvcjxGaWx0ZXJzPjtcbiAgICBzb3J0c1R5cGU/OiBUeXBlRGVzY3JpcHRvcjxTb3J0cz4gfCBNb2RlbERlc2NyaXB0b3I8U29ydHM+O1xufSk6IFRhYmxldmlld0RhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzLCBTZXJ2aWNlQ2xhc3MsIFRhYmxlTW9kZWwsIENyZWF0ZU1vZGVsLCBVcGRhdGVNb2RlbD4ge1xuICAgIHJldHVybiBuZXcgVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIFNlcnZpY2VDbGFzcywgVGFibGVNb2RlbCwgQ3JlYXRlTW9kZWwsIFVwZGF0ZU1vZGVsPihvcHRzPy5zZXJ2aWNlIGFzIFNlcnZpY2VDbGFzcyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB0YWJsZXZpZXdEeW5hbWljRGF0YVByb3ZpZGVyKCk6IER5bmFtaWNUYWJsZXZpZXdEYXRhUHJvdmlkZXJJbnN0PHVuZGVmaW5lZCwgdW5kZWZpbmVkPjtcbmV4cG9ydCBmdW5jdGlvbiB0YWJsZXZpZXdEeW5hbWljRGF0YVByb3ZpZGVyPFNlcnZpY2U+KHNlcnZpY2VUeXBlOiBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+KTogRHluYW1pY1RhYmxldmlld0RhdGFQcm92aWRlckluc3Q8U2VydmljZSwgU2VydmljZUNsYXNzVHlwZTxTZXJ2aWNlPj47XG5leHBvcnQgZnVuY3Rpb24gdGFibGV2aWV3RHluYW1pY0RhdGFQcm92aWRlcjxTZXJ2aWNlLCBTZXJ2aWNlQ2xhc3MgPSBTZXJ2aWNlQ2xhc3NUeXBlPFNlcnZpY2U+PihcbiAgICBzZXJ2aWNlVHlwZT86IFNlcnZpY2VDbGFzc1xuKTogRHluYW1pY1RhYmxldmlld0RhdGFQcm92aWRlckluc3Q8U2VydmljZSwgU2VydmljZUNsYXNzPiB7XG4gICAgcmV0dXJuIG5ldyBEeW5hbWljVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdDxTZXJ2aWNlLCBTZXJ2aWNlQ2xhc3M+KHNlcnZpY2VUeXBlIGFzIFNlcnZpY2VDbGFzcyk7XG59XG4iXX0=
|
|
@@ -2,10 +2,10 @@ import { DataProviderInst } from '@mediusinc/mng-commons/core';
|
|
|
2
2
|
import { TableDataProviderInst } from '@mediusinc/mng-commons/table/api';
|
|
3
3
|
import { EditorDataProviderInst } from '../../editor/data-providers/editor.data-provider';
|
|
4
4
|
export class TableviewDataProviderInst extends DataProviderInst {
|
|
5
|
-
constructor(
|
|
6
|
-
super(
|
|
7
|
-
this.editorDataProvider = new EditorDataProviderInst(
|
|
8
|
-
this.tableDataProvider = new TableDataProviderInst(
|
|
5
|
+
constructor(serviceType) {
|
|
6
|
+
super(serviceType);
|
|
7
|
+
this.editorDataProvider = new EditorDataProviderInst(serviceType);
|
|
8
|
+
this.tableDataProvider = new TableDataProviderInst(serviceType);
|
|
9
9
|
}
|
|
10
10
|
get isLazy() {
|
|
11
11
|
return this.tableDataProvider.isLazy;
|
|
@@ -31,6 +31,12 @@ export class TableviewDataProviderInst extends DataProviderInst {
|
|
|
31
31
|
get delete() {
|
|
32
32
|
return this.editorDataProvider.delete;
|
|
33
33
|
}
|
|
34
|
+
get mapFetchItemToCreateItem() {
|
|
35
|
+
return this.editorDataProvider.mapFetchItemToCreateItem;
|
|
36
|
+
}
|
|
37
|
+
get mapFetchItemToUpdateItem() {
|
|
38
|
+
return this.editorDataProvider.mapFetchItemToUpdateItem;
|
|
39
|
+
}
|
|
34
40
|
withGetAll(fn) {
|
|
35
41
|
this.tableDataProvider.withGetAll(fn);
|
|
36
42
|
return this;
|
|
@@ -55,11 +61,13 @@ export class TableviewDataProviderInst extends DataProviderInst {
|
|
|
55
61
|
this.editorDataProvider.withDelete(fn);
|
|
56
62
|
return this;
|
|
57
63
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
64
|
+
withMapFetchItemToCreateItem(fn) {
|
|
65
|
+
this.editorDataProvider.withMapFetchItemToCreateItem(fn);
|
|
66
|
+
return this;
|
|
67
|
+
}
|
|
68
|
+
withMapFetchItemToUpdateItem(fn) {
|
|
69
|
+
this.editorDataProvider.withMapFetchItemToUpdateItem(fn);
|
|
70
|
+
return this;
|
|
63
71
|
}
|
|
64
72
|
reloadTable(event) {
|
|
65
73
|
this.tableDataProvider.reloadTable(event);
|
|
@@ -70,7 +78,7 @@ export class TableviewDataProviderInst extends DataProviderInst {
|
|
|
70
78
|
}
|
|
71
79
|
export class DynamicTableviewDataProviderInst extends TableviewDataProviderInst {
|
|
72
80
|
constructor(serviceType) {
|
|
73
|
-
super(
|
|
81
|
+
super(serviceType);
|
|
74
82
|
}
|
|
75
83
|
}
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGV2aWV3LmRhdGEtcHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi90YWJsZXZpZXcvYXBpL3NyYy90YWJsZXZpZXcvZGF0YS1wcm92aWRlcnMvdGFibGV2aWV3LmRhdGEtcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUErQixnQkFBZ0IsRUFBc0IsTUFBTSw2QkFBNkIsQ0FBQztBQUNoSCxPQUFPLEVBQXdGLHFCQUFxQixFQUFtQixNQUFNLGtDQUFrQyxDQUFDO0FBRWhMLE9BQU8sRUFJSCxzQkFBc0IsRUFHekIsTUFBTSxrREFBa0QsQ0FBQztBQVkxRCxNQUFNLE9BQU8seUJBUVQsU0FBUSxnQkFBMEQ7SUFNbEUsWUFBbUIsSUFBZ0IsRUFBRSxXQUF5QjtRQUMxRCxLQUFLLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLHNCQUFzQixDQUEyQyxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDbEgsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUkscUJBQXFCLENBQTJELElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQztJQUNwSSxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDWixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLENBQUM7SUFDL0MsQ0FBQztJQUVELElBQUksWUFBWTtRQUNaLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQztJQUNoRCxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUM7SUFDekMsQ0FBQztJQUVELElBQUksTUFBTTtRQUNOLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQztJQUMxQyxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUM7SUFDMUMsQ0FBQztJQUVELFVBQVUsQ0FBQyxFQUFpRTtRQUN4RSxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxFQUFzRDtRQUNwRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDN0MsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVELFNBQVMsQ0FBQyxFQUFpRDtRQUN2RCxJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxVQUFVLENBQUMsRUFBbUQ7UUFDMUQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN2QyxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsVUFBVSxDQUFDLEVBQW1EO1FBQzFELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdkMsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVELFVBQVUsQ0FBQyxFQUFtRDtRQUMxRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7T0FFRztJQUNILFlBQVksQ0FBQyxNQUF1QztRQUNoRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxXQUFXLENBQUMsS0FBd0M7UUFDaEQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQStCO1FBQ3ZDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0MsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLGdDQUE2RixTQUFRLHlCQU9qSDtJQUNHLFlBQW1CLFdBQXlCO1FBQ3hDLEtBQUssQ0FBQyxTQUFTLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDbEMsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDbGFzc09wdFR5cGUsIERhdGFMaXN0UGFyYW1zLCBEYXRhUHJvdmlkZXJJbnN0LCBTZXJ2aWNlQ2xhc3NPcHRUeXBlfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtJVGFibGVEYXRhUHJvdmlkZXIsIFRhYmxlRGF0YVByb3ZpZGVyR2V0QWxsRWFnZXJGblR5cGUsIFRhYmxlRGF0YVByb3ZpZGVyR2V0QWxsRm5UeXBlLCBUYWJsZURhdGFQcm92aWRlckluc3QsIFRhYmxlUmVsb2FkRXZlbnR9IGZyb20gJ0BtZWRpdXNpbmMvbW5nLWNvbW1vbnMvdGFibGUvYXBpJztcblxuaW1wb3J0IHtcbiAgICBFZGl0b3JEYXRhUHJvdmlkZXJDcmVhdGVGblR5cGUsXG4gICAgRWRpdG9yRGF0YVByb3ZpZGVyRGVsZXRlRm5UeXBlLFxuICAgIEVkaXRvckRhdGFQcm92aWRlckZldGNoRm5UeXBlLFxuICAgIEVkaXRvckRhdGFQcm92aWRlckluc3QsXG4gICAgRWRpdG9yRGF0YVByb3ZpZGVyVXBkYXRlRm5UeXBlLFxuICAgIElFZGl0b3JEYXRhUHJvdmlkZXJcbn0gZnJvbSAnLi4vLi4vZWRpdG9yL2RhdGEtcHJvdmlkZXJzL2VkaXRvci5kYXRhLXByb3ZpZGVyJztcbmltcG9ydCB7RWRpdG9yUmVzZXRFdmVudH0gZnJvbSAnLi4vLi4vZWRpdG9yL21vZGVscy9mb3JtLWVkaXRvci5ldmVudCc7XG5cbmV4cG9ydCB0eXBlIElUYWJsZXZpZXdEYXRhUHJvdmlkZXI8XG4gICAgTW9kZWwgPSBhbnksXG4gICAgU2VydmljZSA9IGFueSxcbiAgICBTb3J0cyA9IGtleW9mIE1vZGVsLFxuICAgIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBNb2RlbCxcbiAgICBNb2RlbENsYXNzID0gQ2xhc3NPcHRUeXBlPE1vZGVsPixcbiAgICBTZXJ2aWNlQ2xhc3MgPSBTZXJ2aWNlQ2xhc3NPcHRUeXBlPFNlcnZpY2U+XG4+ID0gSUVkaXRvckRhdGFQcm92aWRlcjxNb2RlbCwgU2VydmljZSwgTW9kZWxDbGFzcywgU2VydmljZUNsYXNzPiAmIElUYWJsZURhdGFQcm92aWRlcjxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIE1vZGVsQ2xhc3MsIFNlcnZpY2VDbGFzcz47XG5cbmV4cG9ydCBjbGFzcyBUYWJsZXZpZXdEYXRhUHJvdmlkZXJJbnN0PFxuICAgICAgICBNb2RlbCxcbiAgICAgICAgU2VydmljZSA9IGFueSxcbiAgICAgICAgU29ydHMgPSBrZXlvZiBNb2RlbCxcbiAgICAgICAgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsLFxuICAgICAgICBNb2RlbENsYXNzID0gQ2xhc3NPcHRUeXBlPE1vZGVsPixcbiAgICAgICAgU2VydmljZUNsYXNzID0gU2VydmljZUNsYXNzT3B0VHlwZTxTZXJ2aWNlPlxuICAgID5cbiAgICBleHRlbmRzIERhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIE1vZGVsQ2xhc3MsIFNlcnZpY2VDbGFzcz5cbiAgICBpbXBsZW1lbnRzIElUYWJsZXZpZXdEYXRhUHJvdmlkZXI8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzLCBNb2RlbENsYXNzLCBTZXJ2aWNlQ2xhc3M+XG57XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGVkaXRvckRhdGFQcm92aWRlcjogRWRpdG9yRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgTW9kZWxDbGFzcywgU2VydmljZUNsYXNzPjtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdGFibGVEYXRhUHJvdmlkZXI6IFRhYmxlRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIE1vZGVsQ2xhc3MsIFNlcnZpY2VDbGFzcz47XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IodHlwZTogTW9kZWxDbGFzcywgc2VydmljZVR5cGU6IFNlcnZpY2VDbGFzcykge1xuICAgICAgICBzdXBlcih0eXBlLCBzZXJ2aWNlVHlwZSk7XG4gICAgICAgIHRoaXMuZWRpdG9yRGF0YVByb3ZpZGVyID0gbmV3IEVkaXRvckRhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIE1vZGVsQ2xhc3MsIFNlcnZpY2VDbGFzcz4odHlwZSwgc2VydmljZVR5cGUpO1xuICAgICAgICB0aGlzLnRhYmxlRGF0YVByb3ZpZGVyID0gbmV3IFRhYmxlRGF0YVByb3ZpZGVySW5zdDxNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIE1vZGVsQ2xhc3MsIFNlcnZpY2VDbGFzcz4odHlwZSwgc2VydmljZVR5cGUpO1xuICAgIH1cblxuICAgIGdldCBpc0xhenkoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnRhYmxlRGF0YVByb3ZpZGVyLmlzTGF6eTtcbiAgICB9XG5cbiAgICBnZXQgdGFibGVSZWxvYWQkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy50YWJsZURhdGFQcm92aWRlci50YWJsZVJlbG9hZCQ7XG4gICAgfVxuXG4gICAgZ2V0IGVkaXRvclJlc2V0JCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWRpdG9yRGF0YVByb3ZpZGVyLmVkaXRvclJlc2V0JDtcbiAgICB9XG5cbiAgICBnZXQgZ2V0QWxsKCkge1xuICAgICAgICByZXR1cm4gdGhpcy50YWJsZURhdGFQcm92aWRlci5nZXRBbGw7XG4gICAgfVxuXG4gICAgZ2V0IGZldGNoKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5lZGl0b3JEYXRhUHJvdmlkZXIuZmV0Y2g7XG4gICAgfVxuXG4gICAgZ2V0IGNyZWF0ZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWRpdG9yRGF0YVByb3ZpZGVyLmNyZWF0ZTtcbiAgICB9XG5cbiAgICBnZXQgdXBkYXRlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5lZGl0b3JEYXRhUHJvdmlkZXIudXBkYXRlO1xuICAgIH1cblxuICAgIGdldCBkZWxldGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmVkaXRvckRhdGFQcm92aWRlci5kZWxldGU7XG4gICAgfVxuXG4gICAgd2l0aEdldEFsbChmbjogVGFibGVEYXRhUHJvdmlkZXJHZXRBbGxGblR5cGU8TW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzPik6IHRoaXMge1xuICAgICAgICB0aGlzLnRhYmxlRGF0YVByb3ZpZGVyLndpdGhHZXRBbGwoZm4pO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICB3aXRoR2V0QWxsRWFnZXJseShmbjogVGFibGVEYXRhUHJvdmlkZXJHZXRBbGxFYWdlckZuVHlwZTxNb2RlbCwgU2VydmljZT4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy50YWJsZURhdGFQcm92aWRlci53aXRoR2V0QWxsRWFnZXJseShmbik7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHdpdGhGZXRjaChmbjogRWRpdG9yRGF0YVByb3ZpZGVyRmV0Y2hGblR5cGU8TW9kZWwsIFNlcnZpY2U+KTogdGhpcyB7XG4gICAgICAgIHRoaXMuZWRpdG9yRGF0YVByb3ZpZGVyLndpdGhGZXRjaChmbik7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHdpdGhDcmVhdGUoZm4/OiBFZGl0b3JEYXRhUHJvdmlkZXJDcmVhdGVGblR5cGU8TW9kZWwsIFNlcnZpY2U+KTogdGhpcyB7XG4gICAgICAgIHRoaXMuZWRpdG9yRGF0YVByb3ZpZGVyLndpdGhDcmVhdGUoZm4pO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICB3aXRoVXBkYXRlKGZuPzogRWRpdG9yRGF0YVByb3ZpZGVyVXBkYXRlRm5UeXBlPE1vZGVsLCBTZXJ2aWNlPik6IHRoaXMge1xuICAgICAgICB0aGlzLmVkaXRvckRhdGFQcm92aWRlci53aXRoVXBkYXRlKGZuKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgd2l0aERlbGV0ZShmbj86IEVkaXRvckRhdGFQcm92aWRlckRlbGV0ZUZuVHlwZTxNb2RlbCwgU2VydmljZT4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy5lZGl0b3JEYXRhUHJvdmlkZXIud2l0aERlbGV0ZShmbik7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkIFVzZSAke3JlbG9hZFRhYmxlfSBpbnN0ZWFkLlxuICAgICAqL1xuICAgIGdldEFsbFJlbG9hZChwYXJhbXM/OiBEYXRhTGlzdFBhcmFtczxTb3J0cywgRmlsdGVycz4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy50YWJsZURhdGFQcm92aWRlci5nZXRBbGxSZWxvYWQocGFyYW1zKTtcbiAgICB9XG5cbiAgICByZWxvYWRUYWJsZShldmVudD86IFRhYmxlUmVsb2FkRXZlbnQ8U29ydHMsIEZpbHRlcnM+KTogdm9pZCB7XG4gICAgICAgIHRoaXMudGFibGVEYXRhUHJvdmlkZXIucmVsb2FkVGFibGUoZXZlbnQpO1xuICAgIH1cblxuICAgIHJlc2V0RWRpdG9yKGV2ZW50PzogRWRpdG9yUmVzZXRFdmVudDxNb2RlbD4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5lZGl0b3JEYXRhUHJvdmlkZXIucmVzZXRFZGl0b3IoZXZlbnQpO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIER5bmFtaWNUYWJsZXZpZXdEYXRhUHJvdmlkZXJJbnN0PFNlcnZpY2UgPSBhbnksIFNlcnZpY2VDbGFzcyA9IFNlcnZpY2VDbGFzc09wdFR5cGU8U2VydmljZT4+IGV4dGVuZHMgVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdDxcbiAgICBhbnksXG4gICAgU2VydmljZSxcbiAgICBhbnksXG4gICAgYW55LFxuICAgIHVuZGVmaW5lZCxcbiAgICBTZXJ2aWNlQ2xhc3Ncbj4ge1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihzZXJ2aWNlVHlwZTogU2VydmljZUNsYXNzKSB7XG4gICAgICAgIHN1cGVyKHVuZGVmaW5lZCwgc2VydmljZVR5cGUpO1xuICAgIH1cbn1cbiJdfQ==
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGV2aWV3LmRhdGEtcHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi90YWJsZXZpZXcvYXBpL3NyYy90YWJsZXZpZXcvZGF0YS1wcm92aWRlcnMvdGFibGV2aWV3LmRhdGEtcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGdCQUFnQixFQUFzQixNQUFNLDZCQUE2QixDQUFDO0FBQ2xGLE9BQU8sRUFBd0YscUJBQXFCLEVBQW1CLE1BQU0sa0NBQWtDLENBQUM7QUFFaEwsT0FBTyxFQUtILHNCQUFzQixFQUd6QixNQUFNLGtEQUFrRCxDQUFDO0FBYzFELE1BQU0sT0FBTyx5QkFVVCxTQUFRLGdCQUE4QztJQVF0RCxZQUFtQixXQUF5QjtRQUN4QyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksc0JBQXNCLENBQXlELFdBQVcsQ0FBQyxDQUFDO1FBQzFILElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLHFCQUFxQixDQUFvRCxXQUFXLENBQUMsQ0FBQztJQUN2SCxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxJQUFJLFlBQVk7UUFDWixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLENBQUM7SUFDL0MsQ0FBQztJQUVELElBQUksWUFBWTtRQUNaLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQztJQUNoRCxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUM7SUFDekMsQ0FBQztJQUVELElBQUksTUFBTTtRQUNOLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQztJQUMxQyxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUM7SUFDMUMsQ0FBQztJQUVELElBQUksd0JBQXdCO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLHdCQUF3QixDQUFDO0lBQzVELENBQUM7SUFFRCxJQUFJLHdCQUF3QjtRQUN4QixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyx3QkFBd0IsQ0FBQztJQUM1RCxDQUFDO0lBRUQsVUFBVSxDQUFDLEVBQXNFO1FBQzdFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdEMsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQTJEO1FBQ3pFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM3QyxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsU0FBUyxDQUFDLEVBQWlEO1FBQ3ZELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdEMsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVELFVBQVUsQ0FBQyxFQUFnRTtRQUN2RSxJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxVQUFVLENBQUMsRUFBZ0U7UUFDdkUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN2QyxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsVUFBVSxDQUFtQixFQUF5RDtRQUNsRixJQUFJLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQzdDLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCw0QkFBNEIsQ0FBQyxFQUEyRDtRQUNwRixJQUFJLENBQUMsa0JBQWtCLENBQUMsNEJBQTRCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDekQsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUVELDRCQUE0QixDQUFDLEVBQTJEO1FBQ3BGLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyw0QkFBNEIsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN6RCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQXdDO1FBQ2hELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUErQjtRQUN2QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9DLENBQUM7Q0FDSjtBQUVELE1BQU0sT0FBTyxnQ0FBNkYsU0FBUSx5QkFBK0Q7SUFDN0ssWUFBbUIsV0FBeUI7UUFDeEMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGF0YVByb3ZpZGVySW5zdCwgU2VydmljZUNsYXNzT3B0VHlwZX0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9jb3JlJztcbmltcG9ydCB7SVRhYmxlRGF0YVByb3ZpZGVyLCBUYWJsZURhdGFQcm92aWRlckdldEFsbEVhZ2VyRm5UeXBlLCBUYWJsZURhdGFQcm92aWRlckdldEFsbEZuVHlwZSwgVGFibGVEYXRhUHJvdmlkZXJJbnN0LCBUYWJsZVJlbG9hZEV2ZW50fSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL3RhYmxlL2FwaSc7XG5cbmltcG9ydCB7XG4gICAgRWRpdG9yRGF0YVByb3ZpZGVyQ3JlYXRlRm5UeXBlLFxuICAgIEVkaXRvckRhdGFQcm92aWRlckRlbGV0ZUZuVHlwZSxcbiAgICBFZGl0b3JEYXRhUHJvdmlkZXJGZXRjaEZuVHlwZSxcbiAgICBFZGl0b3JEYXRhUHJvdmlkZXJGZXRjaE1hcFRvRm5UeXBlLFxuICAgIEVkaXRvckRhdGFQcm92aWRlckluc3QsXG4gICAgRWRpdG9yRGF0YVByb3ZpZGVyVXBkYXRlRm5UeXBlLFxuICAgIElFZGl0b3JEYXRhUHJvdmlkZXJcbn0gZnJvbSAnLi4vLi4vZWRpdG9yL2RhdGEtcHJvdmlkZXJzL2VkaXRvci5kYXRhLXByb3ZpZGVyJztcbmltcG9ydCB7RWRpdG9yUmVzZXRFdmVudH0gZnJvbSAnLi4vLi4vZWRpdG9yL21vZGVscy9mb3JtLWVkaXRvci5ldmVudCc7XG5cbmV4cG9ydCB0eXBlIElUYWJsZXZpZXdEYXRhUHJvdmlkZXI8XG4gICAgTW9kZWwgPSBhbnksXG4gICAgU2VydmljZSA9IGFueSxcbiAgICBTb3J0cyA9IGtleW9mIE1vZGVsLFxuICAgIEZpbHRlcnMgZXh0ZW5kcyBrZXlvZiBhbnkgPSBrZXlvZiBNb2RlbCxcbiAgICBTZXJ2aWNlQ2xhc3MgPSBTZXJ2aWNlQ2xhc3NPcHRUeXBlPFNlcnZpY2U+LFxuICAgIFRhYmxlTW9kZWwgPSBNb2RlbCxcbiAgICBDcmVhdGVNb2RlbCA9IE1vZGVsLFxuICAgIFVwZGF0ZU1vZGVsID0gTW9kZWxcbj4gPSBJRWRpdG9yRGF0YVByb3ZpZGVyPE1vZGVsLCBTZXJ2aWNlLCBTZXJ2aWNlQ2xhc3MsIENyZWF0ZU1vZGVsLCBVcGRhdGVNb2RlbD4gJiBJVGFibGVEYXRhUHJvdmlkZXI8VGFibGVNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIFNlcnZpY2VDbGFzcz47XG5cbmV4cG9ydCBjbGFzcyBUYWJsZXZpZXdEYXRhUHJvdmlkZXJJbnN0PFxuICAgICAgICBNb2RlbCxcbiAgICAgICAgU2VydmljZSA9IGFueSxcbiAgICAgICAgU29ydHMgPSBrZXlvZiBNb2RlbCxcbiAgICAgICAgRmlsdGVycyBleHRlbmRzIGtleW9mIGFueSA9IGtleW9mIE1vZGVsLFxuICAgICAgICBTZXJ2aWNlQ2xhc3MgPSBTZXJ2aWNlQ2xhc3NPcHRUeXBlPFNlcnZpY2U+LFxuICAgICAgICBUYWJsZU1vZGVsID0gTW9kZWwsXG4gICAgICAgIENyZWF0ZU1vZGVsID0gTW9kZWwsXG4gICAgICAgIFVwZGF0ZU1vZGVsID0gTW9kZWxcbiAgICA+XG4gICAgZXh0ZW5kcyBEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBTZXJ2aWNlQ2xhc3M+XG4gICAgaW1wbGVtZW50c1xuICAgICAgICBJVGFibGV2aWV3RGF0YVByb3ZpZGVyPE1vZGVsLCBTZXJ2aWNlLCBTb3J0cywgRmlsdGVycywgU2VydmljZUNsYXNzLCBUYWJsZU1vZGVsLCBDcmVhdGVNb2RlbCwgVXBkYXRlTW9kZWw+LFxuICAgICAgICBJRWRpdG9yRGF0YVByb3ZpZGVyPE1vZGVsLCBTZXJ2aWNlLCBTZXJ2aWNlQ2xhc3MsIENyZWF0ZU1vZGVsLCBVcGRhdGVNb2RlbD5cbntcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZWRpdG9yRGF0YVByb3ZpZGVyOiBFZGl0b3JEYXRhUHJvdmlkZXJJbnN0PE1vZGVsLCBTZXJ2aWNlLCBTZXJ2aWNlQ2xhc3MsIENyZWF0ZU1vZGVsLCBVcGRhdGVNb2RlbD47XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHRhYmxlRGF0YVByb3ZpZGVyOiBUYWJsZURhdGFQcm92aWRlckluc3Q8VGFibGVNb2RlbCwgU2VydmljZSwgU29ydHMsIEZpbHRlcnMsIFNlcnZpY2VDbGFzcz47XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3Ioc2VydmljZVR5cGU6IFNlcnZpY2VDbGFzcykge1xuICAgICAgICBzdXBlcihzZXJ2aWNlVHlwZSk7XG4gICAgICAgIHRoaXMuZWRpdG9yRGF0YVByb3ZpZGVyID0gbmV3IEVkaXRvckRhdGFQcm92aWRlckluc3Q8TW9kZWwsIFNlcnZpY2UsIFNlcnZpY2VDbGFzcywgQ3JlYXRlTW9kZWwsIFVwZGF0ZU1vZGVsPihzZXJ2aWNlVHlwZSk7XG4gICAgICAgIHRoaXMudGFibGVEYXRhUHJvdmlkZXIgPSBuZXcgVGFibGVEYXRhUHJvdmlkZXJJbnN0PFRhYmxlTW9kZWwsIFNlcnZpY2UsIFNvcnRzLCBGaWx0ZXJzLCBTZXJ2aWNlQ2xhc3M+KHNlcnZpY2VUeXBlKTtcbiAgICB9XG5cbiAgICBnZXQgaXNMYXp5KCkge1xuICAgICAgICByZXR1cm4gdGhpcy50YWJsZURhdGFQcm92aWRlci5pc0xhenk7XG4gICAgfVxuXG4gICAgZ2V0IHRhYmxlUmVsb2FkJCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGFibGVEYXRhUHJvdmlkZXIudGFibGVSZWxvYWQkO1xuICAgIH1cblxuICAgIGdldCBlZGl0b3JSZXNldCQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmVkaXRvckRhdGFQcm92aWRlci5lZGl0b3JSZXNldCQ7XG4gICAgfVxuXG4gICAgZ2V0IGdldEFsbCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGFibGVEYXRhUHJvdmlkZXIuZ2V0QWxsO1xuICAgIH1cblxuICAgIGdldCBmZXRjaCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWRpdG9yRGF0YVByb3ZpZGVyLmZldGNoO1xuICAgIH1cblxuICAgIGdldCBjcmVhdGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmVkaXRvckRhdGFQcm92aWRlci5jcmVhdGU7XG4gICAgfVxuXG4gICAgZ2V0IHVwZGF0ZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWRpdG9yRGF0YVByb3ZpZGVyLnVwZGF0ZTtcbiAgICB9XG5cbiAgICBnZXQgZGVsZXRlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5lZGl0b3JEYXRhUHJvdmlkZXIuZGVsZXRlO1xuICAgIH1cblxuICAgIGdldCBtYXBGZXRjaEl0ZW1Ub0NyZWF0ZUl0ZW0oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmVkaXRvckRhdGFQcm92aWRlci5tYXBGZXRjaEl0ZW1Ub0NyZWF0ZUl0ZW07XG4gICAgfVxuXG4gICAgZ2V0IG1hcEZldGNoSXRlbVRvVXBkYXRlSXRlbSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZWRpdG9yRGF0YVByb3ZpZGVyLm1hcEZldGNoSXRlbVRvVXBkYXRlSXRlbTtcbiAgICB9XG5cbiAgICB3aXRoR2V0QWxsKGZuOiBUYWJsZURhdGFQcm92aWRlckdldEFsbEZuVHlwZTxUYWJsZU1vZGVsLCBTZXJ2aWNlLCBTb3J0cywgRmlsdGVycz4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy50YWJsZURhdGFQcm92aWRlci53aXRoR2V0QWxsKGZuKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgd2l0aEdldEFsbEVhZ2VybHkoZm46IFRhYmxlRGF0YVByb3ZpZGVyR2V0QWxsRWFnZXJGblR5cGU8VGFibGVNb2RlbCwgU2VydmljZT4pOiB0aGlzIHtcbiAgICAgICAgdGhpcy50YWJsZURhdGFQcm92aWRlci53aXRoR2V0QWxsRWFnZXJseShmbik7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHdpdGhGZXRjaChmbjogRWRpdG9yRGF0YVByb3ZpZGVyRmV0Y2hGblR5cGU8TW9kZWwsIFNlcnZpY2U+KTogdGhpcyB7XG4gICAgICAgIHRoaXMuZWRpdG9yRGF0YVByb3ZpZGVyLndpdGhGZXRjaChmbik7XG4gICAgICAgIHJldHVybiB0aGlzO1xuICAgIH1cblxuICAgIHdpdGhDcmVhdGUoZm4/OiBFZGl0b3JEYXRhUHJvdmlkZXJDcmVhdGVGblR5cGU8Q3JlYXRlTW9kZWwsIE1vZGVsLCBTZXJ2aWNlPik6IHRoaXMge1xuICAgICAgICB0aGlzLmVkaXRvckRhdGFQcm92aWRlci53aXRoQ3JlYXRlKGZuKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgd2l0aFVwZGF0ZShmbj86IEVkaXRvckRhdGFQcm92aWRlclVwZGF0ZUZuVHlwZTxVcGRhdGVNb2RlbCwgTW9kZWwsIFNlcnZpY2U+KTogdGhpcyB7XG4gICAgICAgIHRoaXMuZWRpdG9yRGF0YVByb3ZpZGVyLndpdGhVcGRhdGUoZm4pO1xuICAgICAgICByZXR1cm4gdGhpcztcbiAgICB9XG5cbiAgICB3aXRoRGVsZXRlPEl0ZW0gPSB1bmRlZmluZWQ+KGZuPzogRWRpdG9yRGF0YVByb3ZpZGVyRGVsZXRlRm5UeXBlPE1vZGVsLCBTZXJ2aWNlLCBJdGVtPik6IHRoaXMge1xuICAgICAgICB0aGlzLmVkaXRvckRhdGFQcm92aWRlci53aXRoRGVsZXRlPEl0ZW0+KGZuKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgd2l0aE1hcEZldGNoSXRlbVRvQ3JlYXRlSXRlbShmbj86IEVkaXRvckRhdGFQcm92aWRlckZldGNoTWFwVG9GblR5cGU8TW9kZWwsIENyZWF0ZU1vZGVsPik6IHRoaXMge1xuICAgICAgICB0aGlzLmVkaXRvckRhdGFQcm92aWRlci53aXRoTWFwRmV0Y2hJdGVtVG9DcmVhdGVJdGVtKGZuKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgd2l0aE1hcEZldGNoSXRlbVRvVXBkYXRlSXRlbShmbj86IEVkaXRvckRhdGFQcm92aWRlckZldGNoTWFwVG9GblR5cGU8TW9kZWwsIFVwZGF0ZU1vZGVsPik6IHRoaXMge1xuICAgICAgICB0aGlzLmVkaXRvckRhdGFQcm92aWRlci53aXRoTWFwRmV0Y2hJdGVtVG9VcGRhdGVJdGVtKGZuKTtcbiAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgfVxuXG4gICAgcmVsb2FkVGFibGUoZXZlbnQ/OiBUYWJsZVJlbG9hZEV2ZW50PFNvcnRzLCBGaWx0ZXJzPik6IHZvaWQge1xuICAgICAgICB0aGlzLnRhYmxlRGF0YVByb3ZpZGVyLnJlbG9hZFRhYmxlKGV2ZW50KTtcbiAgICB9XG5cbiAgICByZXNldEVkaXRvcihldmVudD86IEVkaXRvclJlc2V0RXZlbnQ8TW9kZWw+KTogdm9pZCB7XG4gICAgICAgIHRoaXMuZWRpdG9yRGF0YVByb3ZpZGVyLnJlc2V0RWRpdG9yKGV2ZW50KTtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEeW5hbWljVGFibGV2aWV3RGF0YVByb3ZpZGVySW5zdDxTZXJ2aWNlID0gYW55LCBTZXJ2aWNlQ2xhc3MgPSBTZXJ2aWNlQ2xhc3NPcHRUeXBlPFNlcnZpY2U+PiBleHRlbmRzIFRhYmxldmlld0RhdGFQcm92aWRlckluc3Q8YW55LCBTZXJ2aWNlLCBhbnksIGFueSwgU2VydmljZUNsYXNzPiB7XG4gICAgcHVibGljIGNvbnN0cnVjdG9yKHNlcnZpY2VUeXBlOiBTZXJ2aWNlQ2xhc3MpIHtcbiAgICAgICAgc3VwZXIoc2VydmljZVR5cGUpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,111 +1,34 @@
|
|
|
1
|
-
import { ModelDescriptor,
|
|
2
|
-
import { tableDescriptorFromClassAttrsDef } from '@mediusinc/mng-commons/table/api';
|
|
3
|
-
import { editorDescriptorFromClassAttrsDef } from '../../editor/descriptors/editor-descriptor.factory';
|
|
4
|
-
import { TableviewEditorTypeEnum } from '../../editor/models/editor.model';
|
|
1
|
+
import { ModelDescriptor, model } from '@mediusinc/mng-commons/model';
|
|
5
2
|
import { TableviewDescriptorInst, TableviewDynamicDescriptorInt } from './tableview.descriptor';
|
|
6
|
-
export
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
static create(idProperty, titleProperty, i18nBaseKey) {
|
|
11
|
-
return new TableviewDescriptorInst(ModelDescriptor.create(idProperty, titleProperty, i18nBaseKey));
|
|
12
|
-
}
|
|
13
|
-
static fromClass(type, idProperty, titleProperty, i18nBaseKey) {
|
|
14
|
-
return new TableviewDescriptorInst(ModelDescriptor.fromClass(type, idProperty, titleProperty, i18nBaseKey));
|
|
15
|
-
}
|
|
16
|
-
static fromModel(model) {
|
|
17
|
-
return new TableviewDescriptorInst(model);
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* generates descriptor from attribute definition of openapi model
|
|
21
|
-
* @param type class type
|
|
22
|
-
* @param idProperty
|
|
23
|
-
* @param titleProperty
|
|
24
|
-
*/
|
|
25
|
-
static fromClassWithAutoAttrsDef(type, idProperty, titleProperty) {
|
|
26
|
-
const descriptor = tableviewDescriptor(model(type, { id: idProperty, title: titleProperty }));
|
|
27
|
-
const optsBase = { id: idProperty, title: titleProperty };
|
|
28
|
-
descriptor.withTableDescriptor(tableDescriptorFromClassAttrsDef(type, undefined, optsBase));
|
|
29
|
-
descriptor.withEditDescriptor(editorDescriptorFromClassAttrsDef(type, undefined, { ...optsBase, tableviewEditorType: TableviewEditorTypeEnum.Edit }));
|
|
30
|
-
descriptor.withDetailsDescriptor(editorDescriptorFromClassAttrsDef(type, undefined, { ...optsBase, tableviewEditorType: TableviewEditorTypeEnum.Details }).withDisabled());
|
|
31
|
-
descriptor.withAddDescriptor(editorDescriptorFromClassAttrsDef(type, undefined, { ...optsBase, tableviewEditorType: TableviewEditorTypeEnum.Add }));
|
|
32
|
-
return descriptor;
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* generates descriptor from given attribute definition
|
|
36
|
-
* @param type class type
|
|
37
|
-
* @param columnAttributes attribute definition to generate columns
|
|
38
|
-
* @param fieldAttributes attribute definition to generate fields, if undefined columnDefinition is used, if null editors are not generated
|
|
39
|
-
* @param idProperty
|
|
40
|
-
* @param titleProperty
|
|
41
|
-
*/
|
|
42
|
-
static fromClassWithCustomAttrsDef(type, columnAttributes, fieldAttributes, idProperty, titleProperty) {
|
|
43
|
-
const optsBase = { id: idProperty, title: titleProperty };
|
|
44
|
-
const descriptor = tableviewDescriptor(model(type, optsBase));
|
|
45
|
-
descriptor.withTableDescriptor(tableDescriptorFromClassAttrsDef(type, columnAttributes, optsBase));
|
|
46
|
-
if (fieldAttributes !== null) {
|
|
47
|
-
descriptor.withEditDescriptor(editorDescriptorFromClassAttrsDef(type, fieldAttributes ?? columnAttributes, { ...optsBase, tableviewEditorType: TableviewEditorTypeEnum.Edit }));
|
|
48
|
-
descriptor.withDetailsDescriptor(editorDescriptorFromClassAttrsDef(type, fieldAttributes ?? columnAttributes, { ...optsBase, tableviewEditorType: TableviewEditorTypeEnum.Details }));
|
|
49
|
-
descriptor.withAddDescriptor(editorDescriptorFromClassAttrsDef(type, fieldAttributes ?? columnAttributes, { ...optsBase, tableviewEditorType: TableviewEditorTypeEnum.Add }));
|
|
50
|
-
}
|
|
51
|
-
return descriptor;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
export function tableviewDescriptor(typeOrModelOrClassOrOpts, opts) {
|
|
55
|
-
if (typeOrModelOrClassOrOpts == null) {
|
|
3
|
+
export function tableviewDescriptor(modelOrOpts,
|
|
4
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
5
|
+
opts) {
|
|
6
|
+
if (modelOrOpts == null) {
|
|
56
7
|
return new TableviewDescriptorInst(model());
|
|
57
8
|
}
|
|
58
|
-
else if (
|
|
59
|
-
return new TableviewDescriptorInst(
|
|
60
|
-
}
|
|
61
|
-
else if (typeOrModelOrClassOrOpts instanceof ModelDescriptor) {
|
|
62
|
-
return new TableviewDescriptorInst(typeOrModelOrClassOrOpts);
|
|
9
|
+
else if (modelOrOpts instanceof ModelDescriptor) {
|
|
10
|
+
return new TableviewDescriptorInst(modelOrOpts);
|
|
63
11
|
}
|
|
64
12
|
else {
|
|
65
|
-
|
|
66
|
-
return new TableviewDescriptorInst(model(typeOrModelOrClassOrOpts));
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
export function tableviewDescriptorFromClass(type, opts) {
|
|
70
|
-
return new TableviewDescriptorInst(model(type, opts));
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* generates descriptor based on type attribute definition
|
|
74
|
-
* @param type class type
|
|
75
|
-
* @param columnAttributes
|
|
76
|
-
* @param fieldAttributes
|
|
77
|
-
* @param opts
|
|
78
|
-
*/
|
|
79
|
-
export function tableviewDescriptorFromClassAttrsDef(type, columnAttributes, fieldAttributes, opts) {
|
|
80
|
-
const model = new ModelDescriptor(type, opts?.id, opts?.title, opts?.i18nBase);
|
|
81
|
-
const descriptor = new TableviewDescriptorInst(model);
|
|
82
|
-
descriptor.withTableDescriptor(tableDescriptorFromClassAttrsDef(type, columnAttributes, opts));
|
|
83
|
-
if (fieldAttributes !== null) {
|
|
84
|
-
descriptor.withEditDescriptor(editorDescriptorFromClassAttrsDef(type, fieldAttributes ?? columnAttributes, { ...opts, tableviewEditorType: TableviewEditorTypeEnum.Edit }));
|
|
85
|
-
descriptor.withDetailsDescriptor(editorDescriptorFromClassAttrsDef(type, fieldAttributes ?? columnAttributes, { ...opts, tableviewEditorType: TableviewEditorTypeEnum.Details }).withDisabled());
|
|
86
|
-
descriptor.withAddDescriptor(editorDescriptorFromClassAttrsDef(type, fieldAttributes ?? columnAttributes, { ...opts, tableviewEditorType: TableviewEditorTypeEnum.Add }));
|
|
13
|
+
return new TableviewDescriptorInst(model(modelOrOpts));
|
|
87
14
|
}
|
|
88
|
-
return descriptor;
|
|
89
15
|
}
|
|
90
|
-
export function
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
export class TableviewDynamicDescriptor extends TableviewDynamicDescriptorInt {
|
|
96
|
-
constructor() {
|
|
97
|
-
super(ModelDescriptor.create());
|
|
16
|
+
export function tableviewDescriptorMultiModel(modelOrOpts,
|
|
17
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
18
|
+
opts) {
|
|
19
|
+
if (modelOrOpts == null) {
|
|
20
|
+
return new TableviewDescriptorInst(model());
|
|
98
21
|
}
|
|
99
|
-
|
|
100
|
-
return
|
|
22
|
+
else if (modelOrOpts instanceof ModelDescriptor) {
|
|
23
|
+
return new TableviewDescriptorInst(modelOrOpts);
|
|
101
24
|
}
|
|
102
|
-
|
|
103
|
-
return
|
|
25
|
+
else {
|
|
26
|
+
return new TableviewDescriptorInst(model(modelOrOpts));
|
|
104
27
|
}
|
|
105
28
|
}
|
|
106
29
|
export function tableviewDynamicDescriptor(modelOrOpts) {
|
|
107
30
|
return modelOrOpts instanceof ModelDescriptor
|
|
108
31
|
? new TableviewDynamicDescriptorInt(modelOrOpts)
|
|
109
|
-
: new TableviewDynamicDescriptorInt(new ModelDescriptor(
|
|
32
|
+
: new TableviewDynamicDescriptorInt(new ModelDescriptor(modelOrOpts?.id, modelOrOpts?.title, modelOrOpts?.i18nBase));
|
|
110
33
|
}
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGV2aWV3LWRlc2NyaXB0b3IuZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9hcGkvc3JjL3RhYmxldmlldy9kZXNjcmlwdG9ycy90YWJsZXZpZXctZGVzY3JpcHRvci5mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxlQUFlLEVBQTZCLGNBQWMsRUFBRSxLQUFLLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRyxPQUFPLEVBQUMsZ0NBQWdDLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUVsRixPQUFPLEVBQUMsaUNBQWlDLEVBQUMsTUFBTSxvREFBb0QsQ0FBQztBQUVyRyxPQUFPLEVBQUMsdUJBQXVCLEVBQUMsTUFBTSxrQ0FBa0MsQ0FBQztBQUV6RSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsNkJBQTZCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUU5RixNQUFNLE9BQU8sbUJBQW9CLFNBQVEsdUJBQTRCO0lBQ2pFO1FBQ0ksS0FBSyxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFTSxNQUFNLENBQUMsTUFBTSxDQUNoQixVQUFpQyxFQUNqQyxhQUFvQyxFQUNwQyxXQUF5QztRQUV6QyxPQUFPLElBQUksdUJBQXVCLENBQzlCLGVBQWUsQ0FBQyxNQUFNLENBQWlCLFVBQVUsRUFBRSxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQ2pGLENBQUM7SUFDTixDQUFDO0lBRU0sTUFBTSxDQUFDLFNBQVMsQ0FDbkIsSUFBK0IsRUFDL0IsVUFBaUMsRUFDakMsYUFBb0MsRUFDcEMsV0FBeUM7UUFFekMsT0FBTyxJQUFJLHVCQUF1QixDQUM5QixlQUFlLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLFdBQVcsQ0FBQyxDQUMxRSxDQUFDO0lBQ04sQ0FBQztJQUVNLE1BQU0sQ0FBQyxT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LEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBQyxDQUFDLENBQUM7SUFDckcsQ0FBQztJQUVNLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBMkI7UUFDL0MsT0FBTywwQkFBMEIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3QyxDQUFDO0NBQ0o7QUFFRCxNQUFNLFVBQVUsMEJBQTBCLENBQUMsV0FBMkU7SUFDbEgsT0FBTyxXQUFXLFlBQVksZUFBZTtRQUN6QyxDQUFDLENBQUMsSUFBSSw2QkFBNkIsQ0FBQyxXQUFXLENBQUM7UUFDaEQsQ0FBQyxDQUFDLElBQUksNkJBQTZCLENBQUMsSUFBSSxlQUFlLENBQU0sU0FBUyxFQUFFLFdBQVcsRUFBRSxFQUFZLEVBQUUsV0FBVyxFQUFFLEtBQWUsRUFBRSxXQUFXLEVBQUUsUUFBa0IsQ0FBQyxDQUFDLENBQUM7QUFDM0ssQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2xhc3NUeXBlfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL2NvcmUnO1xuaW1wb3J0IHtNb2RlbERlc2NyaXB0b3IsIE1vZGVsRGVzY3JpcHRvckNyZWF0ZU9wdHMsIFR5cGVEZXNjcmlwdG9yLCBtb2RlbH0gZnJvbSAnQG1lZGl1c2luYy9tbmctY29tbW9ucy9tb2RlbCc7XG5pbXBvcnQge3RhYmxlRGVzY3JpcHRvckZyb21DbGFzc0F0dHJzRGVmfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL3RhYmxlL2FwaSc7XG5cbmltcG9ydCB7ZWRpdG9yRGVzY3JpcHRvckZyb21DbGFzc0F0dHJzRGVmfSBmcm9tICcuLi8uLi9lZGl0b3IvZGVzY3JpcHRvcnMvZWRpdG9yLWRlc2NyaXB0b3IuZmFjdG9yeSc7XG5pbXBvcnQge0VkaXRvckRlc2NyaXB0b3JJbnN0fSBmcm9tICcuLi8uLi9lZGl0b3IvZGVzY3JpcHRvcnMvZWRpdG9yLmRlc2NyaXB0b3InO1xuaW1wb3J0IHtUYWJsZXZpZXdFZGl0b3JUeXBlRW51bX0gZnJvbSAnLi4vLi4vZWRpdG9yL21vZGVscy9lZGl0b3IubW9kZWwnO1xuaW1wb3J0IHtUYWJsZXZpZXdDbGFzc0F0dHJpYnV0ZURlZn0gZnJvbSAnLi4vbW9kZWxzL2NsYXNzLXRhYmxldmlldy1hdHRyaWJ1dGUubW9kZWwnO1xuaW1wb3J0IHtUYWJsZXZpZXdEZXNjcmlwdG9ySW5zdCwgVGFibGV2aWV3RHluYW1pY0Rlc2NyaXB0b3JJbnR9IGZyb20gJy4vdGFibGV2aWV3LmRlc2NyaXB0b3InO1xuXG5leHBvcnQgY2xhc3MgVGFibGV2aWV3RGVzY3JpcHRvciBleHRlbmRzIFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PGFueT4ge1xuICAgIHByb3RlY3RlZCBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoTW9kZWxEZXNjcmlwdG9yLmNyZWF0ZSgpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGNyZWF0ZTxUYWJsZXZpZXdNb2RlbCwgU29ydFByb3BlcnR5ID0ga2V5b2YgVGFibGV2aWV3TW9kZWwsIEZpbHRlclByb3BlcnR5ID0ga2V5b2YgVGFibGV2aWV3TW9kZWwsIFBhcmVudEVkaXRvck1vZGVsID0gdW5kZWZpbmVkPihcbiAgICAgICAgaWRQcm9wZXJ0eT86IGtleW9mIFRhYmxldmlld01vZGVsLFxuICAgICAgICB0aXRsZVByb3BlcnR5Pzoga2V5b2YgVGFibGV2aWV3TW9kZWwsXG4gICAgICAgIGkxOG5CYXNlS2V5Pzogc3RyaW5nIHwgQ2xhc3NUeXBlPHVua25vd24+XG4gICAgKTogVGFibGV2aWV3RGVzY3JpcHRvckluc3Q8VGFibGV2aWV3TW9kZWwsIFNvcnRQcm9wZXJ0eSwgRmlsdGVyUHJvcGVydHksIFBhcmVudEVkaXRvck1vZGVsPiB7XG4gICAgICAgIHJldHVybiBuZXcgVGFibGV2aWV3RGVzY3JpcHRvckluc3Q8VGFibGV2aWV3TW9kZWwsIFNvcnRQcm9wZXJ0eSwgRmlsdGVyUHJvcGVydHksIFBhcmVudEVkaXRvck1vZGVsPihcbiAgICAgICAgICAgIE1vZGVsRGVzY3JpcHRvci5jcmVhdGU8VGFibGV2aWV3TW9kZWw+KGlkUHJvcGVydHksIHRpdGxlUHJvcGVydHksIGkxOG5CYXNlS2V5KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZnJvbUNsYXNzPFRhYmxldmlld01vZGVsLCBTb3J0UHJvcGVydHkgPSBrZXlvZiBUYWJsZXZpZXdNb2RlbCwgRmlsdGVyUHJvcGVydHkgPSBrZXlvZiBUYWJsZXZpZXdNb2RlbCwgUGFyZW50RWRpdG9yTW9kZWwgPSB1bmRlZmluZWQ+KFxuICAgICAgICB0eXBlOiBDbGFzc1R5cGU8VGFibGV2aWV3TW9kZWw+LFxuICAgICAgICBpZFByb3BlcnR5Pzoga2V5b2YgVGFibGV2aWV3TW9kZWwsXG4gICAgICAgIHRpdGxlUHJvcGVydHk/OiBrZXlvZiBUYWJsZXZpZXdNb2RlbCxcbiAgICAgICAgaTE4bkJhc2VLZXk/OiBDbGFzc1R5cGU8dW5rbm93bj4gfCBzdHJpbmdcbiAgICApOiBUYWJsZXZpZXdEZXNjcmlwdG9ySW5zdDxUYWJsZXZpZXdNb2RlbCwgU29ydFByb3BlcnR5LCBGaWx0ZXJQcm9wZXJ0eSwgUGFyZW50RWRpdG9yTW9kZWw+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBUYWJsZXZpZXdEZXNjcmlwdG9ySW5zdDxUYWJsZXZpZXdNb2RlbCwgU29ydFByb3BlcnR5LCBGaWx0ZXJQcm9wZXJ0eSwgUGFyZW50RWRpdG9yTW9kZWw+KFxuICAgICAgICAgICAgTW9kZWxEZXNjcmlwdG9yLmZyb21DbGFzcyh0eXBlLCBpZFByb3BlcnR5LCB0aXRsZVByb3BlcnR5LCBpMThuQmFzZUtleSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZyb21Nb2RlbDxUYWJsZXZpZXdNb2RlbCwgU29ydFByb3BlcnR5ID0ga2V5b2YgVGFibGV2aWV3TW9kZWwsIEZpbHRlclByb3BlcnR5ID0ga2V5b2YgVGFibGV2aWV3TW9kZWwsIFBhcmVudEVkaXRvck1vZGVsID0gdW5kZWZpbmVkPihcbiAgICAgICAgbW9kZWw6IE1vZGVsRGVzY3JpcHRvcjxUYWJsZXZpZXdNb2RlbD5cbiAgICApOiBUYWJsZXZpZXdEZXNjcmlwdG9ySW5zdDxUYWJsZXZpZXdNb2RlbCwgU29ydFByb3BlcnR5LCBGaWx0ZXJQcm9wZXJ0eSwgUGFyZW50RWRpdG9yTW9kZWw+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBUYWJsZXZpZXdEZXNjcmlwdG9ySW5zdDxUYWJsZXZpZXdNb2RlbCwgU29ydFByb3BlcnR5LCBGaWx0ZXJQcm9wZXJ0eSwgUGFyZW50RWRpdG9yTW9kZWw+KG1vZGVsKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBnZW5lcmF0ZXMgZGVzY3JpcHRvciBmcm9tIGF0dHJpYnV0ZSBkZWZpbml0aW9uIG9mIG9wZW5hcGkgbW9kZWxcbiAgICAgKiBAcGFyYW0gdHlwZSBjbGFzcyB0eXBlXG4gICAgICogQHBhcmFtIGlkUHJvcGVydHlcbiAgICAgKiBAcGFyYW0gdGl0bGVQcm9wZXJ0eVxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgZnJvbUNsYXNzV2l0aEF1dG9BdHRyc0RlZjxUYWJsZXZpZXdNb2RlbD4oXG4gICAgICAgIHR5cGU6IENsYXNzVHlwZTxUYWJsZXZpZXdNb2RlbD4sXG4gICAgICAgIGlkUHJvcGVydHk/OiBrZXlvZiBUYWJsZXZpZXdNb2RlbCxcbiAgICAgICAgdGl0bGVQcm9wZXJ0eT86IGtleW9mIFRhYmxldmlld01vZGVsXG4gICAgKTogVGFibGV2aWV3RGVzY3JpcHRvckluc3Q8VGFibGV2aWV3TW9kZWw+IHtcbiAgICAgICAgY29uc3QgZGVzY3JpcHRvciA9IHRhYmxldmlld0Rlc2NyaXB0b3IobW9kZWwodHlwZSwge2lkOiBpZFByb3BlcnR5LCB0aXRsZTogdGl0bGVQcm9wZXJ0eX0pKTtcbiAgICAgICAgY29uc3Qgb3B0c0Jhc2UgPSB7aWQ6IGlkUHJvcGVydHksIHRpdGxlOiB0aXRsZVByb3BlcnR5fTtcbiAgICAgICAgZGVzY3JpcHRvci53aXRoVGFibGVEZXNjcmlwdG9yKHRhYmxlRGVzY3JpcHRvckZyb21DbGFzc0F0dHJzRGVmKHR5cGUsIHVuZGVmaW5lZCwgb3B0c0Jhc2UpKTtcbiAgICAgICAgZGVzY3JpcHRvci53aXRoRWRpdERlc2NyaXB0b3IoZWRpdG9yRGVzY3JpcHRvckZyb21DbGFzc0F0dHJzRGVmKHR5cGUsIHVuZGVmaW5lZCwgey4uLm9wdHNCYXNlLCB0YWJsZXZpZXdFZGl0b3JUeXBlOiBUYWJsZXZpZXdFZGl0b3JUeXBlRW51bS5FZGl0fSkpO1xuICAgICAgICBkZXNjcmlwdG9yLndpdGhEZXRhaWxzRGVzY3JpcHRvcihlZGl0b3JEZXNjcmlwdG9yRnJvbUNsYXNzQXR0cnNEZWYodHlwZSwgdW5kZWZpbmVkLCB7Li4ub3B0c0Jhc2UsIHRhYmxldmlld0VkaXRvclR5cGU6IFRhYmxldmlld0VkaXRvclR5cGVFbnVtLkRldGFpbHN9KS53aXRoRGlzYWJsZWQoKSk7XG4gICAgICAgIGRlc2NyaXB0b3Iud2l0aEFkZERlc2NyaXB0b3IoZWRpdG9yRGVzY3JpcHRvckZyb21DbGFzc0F0dHJzRGVmKHR5cGUsIHVuZGVmaW5lZCwgey4uLm9wdHNCYXNlLCB0YWJsZXZpZXdFZGl0b3JUeXBlOiBUYWJsZXZpZXdFZGl0b3JUeXBlRW51bS5BZGR9KSk7XG5cbiAgICAgICAgcmV0dXJuIGRlc2NyaXB0b3I7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogZ2VuZXJhdGVzIGRlc2NyaXB0b3IgZnJvbSBnaXZlbiBhdHRyaWJ1dGUgZGVmaW5pdGlvblxuICAgICAqIEBwYXJhbSB0eXBlIGNsYXNzIHR5cGVcbiAgICAgKiBAcGFyYW0gY29sdW1uQXR0cmlidXRlcyBhdHRyaWJ1dGUgZGVmaW5pdGlvbiB0byBnZW5lcmF0ZSBjb2x1bW5zXG4gICAgICogQHBhcmFtIGZpZWxkQXR0cmlidXRlcyBhdHRyaWJ1dGUgZGVmaW5pdGlvbiB0byBnZW5lcmF0ZSBmaWVsZHMsIGlmIHVuZGVmaW5lZCBjb2x1bW5EZWZpbml0aW9uIGlzIHVzZWQsIGlmIG51bGwgZWRpdG9ycyBhcmUgbm90IGdlbmVyYXRlZFxuICAgICAqIEBwYXJhbSBpZFByb3BlcnR5XG4gICAgICogQHBhcmFtIHRpdGxlUHJvcGVydHlcbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGZyb21DbGFzc1dpdGhDdXN0b21BdHRyc0RlZjxUYWJsZXZpZXdNb2RlbD4oXG4gICAgICAgIHR5cGU6IENsYXNzVHlwZTxUYWJsZXZpZXdNb2RlbD4sXG4gICAgICAgIGNvbHVtbkF0dHJpYnV0ZXM6IFRhYmxldmlld0NsYXNzQXR0cmlidXRlRGVmW10sXG4gICAgICAgIGZpZWxkQXR0cmlidXRlcz86IFRhYmxldmlld0NsYXNzQXR0cmlidXRlRGVmW10gfCBudWxsLFxuICAgICAgICBpZFByb3BlcnR5Pzoga2V5b2YgVGFibGV2aWV3TW9kZWwsXG4gICAgICAgIHRpdGxlUHJvcGVydHk/OiBrZXlvZiBUYWJsZXZpZXdNb2RlbFxuICAgICk6IFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PFRhYmxldmlld01vZGVsPiB7XG4gICAgICAgIGNvbnN0IG9wdHNCYXNlID0ge2lkOiBpZFByb3BlcnR5LCB0aXRsZTogdGl0bGVQcm9wZXJ0eX07XG4gICAgICAgIGNvbnN0IGRlc2NyaXB0b3IgPSB0YWJsZXZpZXdEZXNjcmlwdG9yKG1vZGVsKHR5cGUsIG9wdHNCYXNlKSk7XG4gICAgICAgIGRlc2NyaXB0b3Iud2l0aFRhYmxlRGVzY3JpcHRvcih0YWJsZURlc2NyaXB0b3JGcm9tQ2xhc3NBdHRyc0RlZih0eXBlLCBjb2x1bW5BdHRyaWJ1dGVzLCBvcHRzQmFzZSkpO1xuXG4gICAgICAgIGlmIChmaWVsZEF0dHJpYnV0ZXMgIT09IG51bGwpIHtcbiAgICAgICAgICAgIGRlc2NyaXB0b3Iud2l0aEVkaXREZXNjcmlwdG9yKFxuICAgICAgICAgICAgICAgIGVkaXRvckRlc2NyaXB0b3JGcm9tQ2xhc3NBdHRyc0RlZih0eXBlLCBmaWVsZEF0dHJpYnV0ZXMgPz8gY29sdW1uQXR0cmlidXRlcywgey4uLm9wdHNCYXNlLCB0YWJsZXZpZXdFZGl0b3JUeXBlOiBUYWJsZXZpZXdFZGl0b3JUeXBlRW51bS5FZGl0fSlcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBkZXNjcmlwdG9yLndpdGhEZXRhaWxzRGVzY3JpcHRvcihcbiAgICAgICAgICAgICAgICBlZGl0b3JEZXNjcmlwdG9yRnJvbUNsYXNzQXR0cnNEZWYodHlwZSwgZmllbGRBdHRyaWJ1dGVzID8/IGNvbHVtbkF0dHJpYnV0ZXMsIHsuLi5vcHRzQmFzZSwgdGFibGV2aWV3RWRpdG9yVHlwZTogVGFibGV2aWV3RWRpdG9yVHlwZUVudW0uRGV0YWlsc30pXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgZGVzY3JpcHRvci53aXRoQWRkRGVzY3JpcHRvcihcbiAgICAgICAgICAgICAgICBlZGl0b3JEZXNjcmlwdG9yRnJvbUNsYXNzQXR0cnNEZWYodHlwZSwgZmllbGRBdHRyaWJ1dGVzID8/IGNvbHVtbkF0dHJpYnV0ZXMsIHsuLi5vcHRzQmFzZSwgdGFibGV2aWV3RWRpdG9yVHlwZTogVGFibGV2aWV3RWRpdG9yVHlwZUVudW0uQWRkfSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZGVzY3JpcHRvcjtcbiAgICB9XG59XG5cbmV4cG9ydCB0eXBlIFRhYmxldmlld0Rlc2NyaXB0b3JTb3J0c0ZpbHRlcnNDcmVhdGVPcHRzVHlwZTxUYWJsZXZpZXdNb2RlbCwgU29ydHMgPSBrZXlvZiBUYWJsZXZpZXdNb2RlbCwgRmlsdGVycyA9IGtleW9mIFRhYmxldmlld01vZGVsPiA9IHtcbiAgICBmaWx0ZXJzVHlwZT86IFR5cGVEZXNjcmlwdG9yPEZpbHRlcnM+O1xuICAgIHNvcnRzVHlwZT86IFR5cGVEZXNjcmlwdG9yPFNvcnRzPjtcbn07XG5cbmV4cG9ydCB0eXBlIFRhYmxldmlld0Rlc2NyaXB0b3JDcmVhdGVPcHRzVHlwZTxUYWJsZXZpZXdNb2RlbCwgU29ydHMgPSBrZXlvZiBUYWJsZXZpZXdNb2RlbCwgRmlsdGVycyA9IGtleW9mIFRhYmxldmlld01vZGVsPiA9IFRhYmxldmlld0Rlc2NyaXB0b3JTb3J0c0ZpbHRlcnNDcmVhdGVPcHRzVHlwZTxcbiAgICBUYWJsZXZpZXdNb2RlbCxcbiAgICBTb3J0cyxcbiAgICBGaWx0ZXJzXG4+ICZcbiAgICBNb2RlbERlc2NyaXB0b3JDcmVhdGVPcHRzPFRhYmxldmlld01vZGVsPjtcblxuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld0Rlc2NyaXB0b3I8TW9kZWwsIFNvcnRzID0ga2V5b2YgTW9kZWwsIEZpbHRlcnMgPSBrZXlvZiBNb2RlbD4oKTogVGFibGV2aWV3RGVzY3JpcHRvckluc3Q8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzPjtcbmV4cG9ydCBmdW5jdGlvbiB0YWJsZXZpZXdEZXNjcmlwdG9yPFRhYmxldmlld01vZGVsLCBTb3J0cyA9IGtleW9mIFRhYmxldmlld01vZGVsLCBGaWx0ZXJzID0ga2V5b2YgVGFibGV2aWV3TW9kZWw+KFxuICAgIG9wdHM6IFRhYmxldmlld0Rlc2NyaXB0b3JDcmVhdGVPcHRzVHlwZTxUYWJsZXZpZXdNb2RlbD5cbik6IFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PFRhYmxldmlld01vZGVsLCBTb3J0cywgRmlsdGVycz47XG5leHBvcnQgZnVuY3Rpb24gdGFibGV2aWV3RGVzY3JpcHRvcjxUYWJsZXZpZXdNb2RlbCwgU29ydHMgPSBrZXlvZiBUYWJsZXZpZXdNb2RlbCwgRmlsdGVycyA9IGtleW9mIFRhYmxldmlld01vZGVsPihcbiAgICBtb2RlbDogTW9kZWxEZXNjcmlwdG9yPFRhYmxldmlld01vZGVsPixcbiAgICBvcHRzPzogVGFibGV2aWV3RGVzY3JpcHRvclNvcnRzRmlsdGVyc0NyZWF0ZU9wdHNUeXBlPFRhYmxldmlld01vZGVsLCBTb3J0cywgRmlsdGVycz5cbik6IFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PFRhYmxldmlld01vZGVsLCBTb3J0cywgRmlsdGVycz47XG5leHBvcnQgZnVuY3Rpb24gdGFibGV2aWV3RGVzY3JpcHRvcjxUYWJsZXZpZXdNb2RlbCwgU29ydHMgPSBrZXlvZiBUYWJsZXZpZXdNb2RlbCwgRmlsdGVycyA9IGtleW9mIFRhYmxldmlld01vZGVsPihcbiAgICB0eXBlOiBUeXBlRGVzY3JpcHRvcjxUYWJsZXZpZXdNb2RlbD4sXG4gICAgb3B0cz86IFRhYmxldmlld0Rlc2NyaXB0b3JDcmVhdGVPcHRzVHlwZTxUYWJsZXZpZXdNb2RlbD5cbik6IFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PFRhYmxldmlld01vZGVsLCBTb3J0cywgRmlsdGVycz47XG5leHBvcnQgZnVuY3Rpb24gdGFibGV2aWV3RGVzY3JpcHRvcjxUYWJsZXZpZXdNb2RlbCwgU29ydHMgPSBrZXlvZiBUYWJsZXZpZXdNb2RlbCwgRmlsdGVycyA9IGtleW9mIFRhYmxldmlld01vZGVsPihcbiAgICB0eXBlT3JNb2RlbE9yQ2xhc3NPck9wdHM/OiBUeXBlRGVzY3JpcHRvcjxUYWJsZXZpZXdNb2RlbD4gfCBNb2RlbERlc2NyaXB0b3I8VGFibGV2aWV3TW9kZWw+IHwgVGFibGV2aWV3RGVzY3JpcHRvckNyZWF0ZU9wdHNUeXBlPFRhYmxldmlld01vZGVsPixcbiAgICBvcHRzPzogVGFibGV2aWV3RGVzY3JpcHRvckNyZWF0ZU9wdHNUeXBlPFRhYmxldmlld01vZGVsPlxuKSB7XG4gICAgaWYgKHR5cGVPck1vZGVsT3JDbGFzc09yT3B0cyA9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiBuZXcgVGFibGV2aWV3RGVzY3JpcHRvckluc3Q8VGFibGV2aWV3TW9kZWwsIFNvcnRzLCBGaWx0ZXJzPihtb2RlbDxUYWJsZXZpZXdNb2RlbD4oKSk7XG4gICAgfSBlbHNlIGlmICh0eXBlT3JNb2RlbE9yQ2xhc3NPck9wdHMgaW5zdGFuY2VvZiBUeXBlRGVzY3JpcHRvcikge1xuICAgICAgICByZXR1cm4gbmV3IFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PFRhYmxldmlld01vZGVsLCBTb3J0cywgRmlsdGVycz4obW9kZWw8VGFibGV2aWV3TW9kZWw+KChvcHRzIGFzIFRhYmxldmlld0Rlc2NyaXB0b3JDcmVhdGVPcHRzVHlwZTxUYWJsZXZpZXdNb2RlbD4gfCB1bmRlZmluZWQpID8/IHt9KSk7XG4gICAgfSBlbHNlIGlmICh0eXBlT3JNb2RlbE9yQ2xhc3NPck9wdHMgaW5zdGFuY2VvZiBNb2RlbERlc2NyaXB0b3IpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBUYWJsZXZpZXdEZXNjcmlwdG9ySW5zdDxUYWJsZXZpZXdNb2RlbCwgU29ydHMsIEZpbHRlcnM+KHR5cGVPck1vZGVsT3JDbGFzc09yT3B0cyk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgLy8gdGhpcyBjb3VsZCBoYXZlIGF1dG9HZW5lcmF0ZWQgaWYgbW9kZWwgZGVzY3JpcHRvciBpcyBjbGFzc1xuICAgICAgICByZXR1cm4gbmV3IFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PFRhYmxldmlld01vZGVsLCBTb3J0cywgRmlsdGVycz4obW9kZWw8VGFibGV2aWV3TW9kZWw+KHR5cGVPck1vZGVsT3JDbGFzc09yT3B0cykpO1xuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld0Rlc2NyaXB0b3JGcm9tQ2xhc3M8VGFibGV2aWV3TW9kZWwsIFNvcnRzID0ga2V5b2YgVGFibGV2aWV3TW9kZWwsIEZpbHRlcnMgPSBrZXlvZiBUYWJsZXZpZXdNb2RlbD4oXG4gICAgdHlwZTogQ2xhc3NUeXBlPFRhYmxldmlld01vZGVsPixcbiAgICBvcHRzPzogVGFibGV2aWV3RGVzY3JpcHRvckNyZWF0ZU9wdHNUeXBlPFRhYmxldmlld01vZGVsPlxuKTogVGFibGV2aWV3RGVzY3JpcHRvckluc3Q8VGFibGV2aWV3TW9kZWwsIFNvcnRzLCBGaWx0ZXJzPiB7XG4gICAgcmV0dXJuIG5ldyBUYWJsZXZpZXdEZXNjcmlwdG9ySW5zdDxUYWJsZXZpZXdNb2RlbCwgU29ydHMsIEZpbHRlcnM+KG1vZGVsPFRhYmxldmlld01vZGVsPih0eXBlIGFzIENsYXNzVHlwZTxUYWJsZXZpZXdNb2RlbD4sIG9wdHMpKTtcbn1cblxuLyoqXG4gKiBnZW5lcmF0ZXMgZGVzY3JpcHRvciBiYXNlZCBvbiB0eXBlIGF0dHJpYnV0ZSBkZWZpbml0aW9uXG4gKiBAcGFyYW0gdHlwZSBjbGFzcyB0eXBlXG4gKiBAcGFyYW0gY29sdW1uQXR0cmlidXRlc1xuICogQHBhcmFtIGZpZWxkQXR0cmlidXRlc1xuICogQHBhcmFtIG9wdHNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld0Rlc2NyaXB0b3JGcm9tQ2xhc3NBdHRyc0RlZjxUYWJsZXZpZXdNb2RlbCwgU29ydHMgPSBrZXlvZiBUYWJsZXZpZXdNb2RlbCwgRmlsdGVycyA9IGtleW9mIFRhYmxldmlld01vZGVsPihcbiAgICB0eXBlOiBDbGFzc1R5cGU8VGFibGV2aWV3TW9kZWw+LFxuICAgIGNvbHVtbkF0dHJpYnV0ZXM/OiBUYWJsZXZpZXdDbGFzc0F0dHJpYnV0ZURlZltdLFxuICAgIGZpZWxkQXR0cmlidXRlcz86IFRhYmxldmlld0NsYXNzQXR0cmlidXRlRGVmW10gfCBudWxsLFxuICAgIG9wdHM/OiBUYWJsZXZpZXdEZXNjcmlwdG9yQ3JlYXRlT3B0c1R5cGU8VGFibGV2aWV3TW9kZWw+XG4pOiBUYWJsZXZpZXdEZXNjcmlwdG9ySW5zdDxUYWJsZXZpZXdNb2RlbCwgU29ydHMsIEZpbHRlcnM+IHtcbiAgICBjb25zdCBtb2RlbCA9IG5ldyBNb2RlbERlc2NyaXB0b3IodHlwZSwgb3B0cz8uaWQgYXMgc3RyaW5nIHwgdW5kZWZpbmVkLCBvcHRzPy50aXRsZSBhcyBzdHJpbmcgfCB1bmRlZmluZWQsIG9wdHM/LmkxOG5CYXNlIGFzIHN0cmluZyB8IHVuZGVmaW5lZCk7XG4gICAgY29uc3QgZGVzY3JpcHRvciA9IG5ldyBUYWJsZXZpZXdEZXNjcmlwdG9ySW5zdDxUYWJsZXZpZXdNb2RlbCwgU29ydHMsIEZpbHRlcnM+KG1vZGVsKTtcbiAgICBkZXNjcmlwdG9yLndpdGhUYWJsZURlc2NyaXB0b3IodGFibGVEZXNjcmlwdG9yRnJvbUNsYXNzQXR0cnNEZWY8VGFibGV2aWV3TW9kZWwsIFNvcnRzLCBGaWx0ZXJzPih0eXBlLCBjb2x1bW5BdHRyaWJ1dGVzLCBvcHRzKSk7XG5cbiAgICBpZiAoZmllbGRBdHRyaWJ1dGVzICE9PSBudWxsKSB7XG4gICAgICAgIGRlc2NyaXB0b3Iud2l0aEVkaXREZXNjcmlwdG9yKGVkaXRvckRlc2NyaXB0b3JGcm9tQ2xhc3NBdHRyc0RlZih0eXBlLCBmaWVsZEF0dHJpYnV0ZXMgPz8gY29sdW1uQXR0cmlidXRlcywgey4uLm9wdHMsIHRhYmxldmlld0VkaXRvclR5cGU6IFRhYmxldmlld0VkaXRvclR5cGVFbnVtLkVkaXR9KSk7XG4gICAgICAgIGRlc2NyaXB0b3Iud2l0aERldGFpbHNEZXNjcmlwdG9yKFxuICAgICAgICAgICAgZWRpdG9yRGVzY3JpcHRvckZyb21DbGFzc0F0dHJzRGVmKHR5cGUsIGZpZWxkQXR0cmlidXRlcyA/PyBjb2x1bW5BdHRyaWJ1dGVzLCB7Li4ub3B0cywgdGFibGV2aWV3RWRpdG9yVHlwZTogVGFibGV2aWV3RWRpdG9yVHlwZUVudW0uRGV0YWlsc30pLndpdGhEaXNhYmxlZCgpXG4gICAgICAgICk7XG4gICAgICAgIGRlc2NyaXB0b3Iud2l0aEFkZERlc2NyaXB0b3IoZWRpdG9yRGVzY3JpcHRvckZyb21DbGFzc0F0dHJzRGVmKHR5cGUsIGZpZWxkQXR0cmlidXRlcyA/PyBjb2x1bW5BdHRyaWJ1dGVzLCB7Li4ub3B0cywgdGFibGV2aWV3RWRpdG9yVHlwZTogVGFibGV2aWV3RWRpdG9yVHlwZUVudW0uQWRkfSkpO1xuICAgIH1cblxuICAgIHJldHVybiBkZXNjcmlwdG9yO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdGFibGV2aWV3RGVzY3JpcHRvckZyb21QYXJlbnQ8VGFibGV2aWV3TW9kZWwsIENoaWxkTW9kZWw+KFxuICAgIGRlc2NyaXB0b3I6IFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PFRhYmxldmlld01vZGVsLCBhbnksIGFueSwgYW55PiB8IEVkaXRvckRlc2NyaXB0b3JJbnN0PFRhYmxldmlld01vZGVsPiB8IE1vZGVsRGVzY3JpcHRvcjxUYWJsZXZpZXdNb2RlbD4sXG4gICAgbW9kZWw6IE1vZGVsRGVzY3JpcHRvcjxDaGlsZE1vZGVsPlxuKTogVGFibGV2aWV3RGVzY3JpcHRvckluc3Q8Q2hpbGRNb2RlbCwga2V5b2YgQ2hpbGRNb2RlbCwga2V5b2YgQ2hpbGRNb2RlbCwgVGFibGV2aWV3TW9kZWw+O1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld0Rlc2NyaXB0b3JGcm9tUGFyZW50PFRhYmxldmlld01vZGVsLCBDaGlsZE1vZGVsPihcbiAgICBkZXNjcmlwdG9yOiBUYWJsZXZpZXdEZXNjcmlwdG9ySW5zdDxUYWJsZXZpZXdNb2RlbCwgYW55LCBhbnksIGFueT4gfCBFZGl0b3JEZXNjcmlwdG9ySW5zdDxUYWJsZXZpZXdNb2RlbD4gfCBNb2RlbERlc2NyaXB0b3I8VGFibGV2aWV3TW9kZWw+LFxuICAgIHR5cGU6IENsYXNzVHlwZTxDaGlsZE1vZGVsPixcbiAgICBpZFByb3BlcnR5Pzoga2V5b2YgQ2hpbGRNb2RlbCxcbiAgICB0aXRsZVByb3BlcnR5Pzoga2V5b2YgQ2hpbGRNb2RlbCxcbiAgICBpMThuQmFzZUtleT86IENsYXNzVHlwZTx1bmtub3duPiB8IHN0cmluZ1xuKTogVGFibGV2aWV3RGVzY3JpcHRvckluc3Q8Q2hpbGRNb2RlbCwga2V5b2YgQ2hpbGRNb2RlbCwga2V5b2YgQ2hpbGRNb2RlbCwgVGFibGV2aWV3TW9kZWw+O1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld0Rlc2NyaXB0b3JGcm9tUGFyZW50PFRhYmxldmlld01vZGVsLCBDaGlsZE1vZGVsPihcbiAgICBkZXNjcmlwdG9yOiBUYWJsZXZpZXdEZXNjcmlwdG9ySW5zdDxUYWJsZXZpZXdNb2RlbCwgYW55LCBhbnksIGFueT4gfCBFZGl0b3JEZXNjcmlwdG9ySW5zdDxUYWJsZXZpZXdNb2RlbD4gfCBNb2RlbERlc2NyaXB0b3I8VGFibGV2aWV3TW9kZWw+LFxuICAgIGNsYXNzT3JUeXBlOiBNb2RlbERlc2NyaXB0b3I8Q2hpbGRNb2RlbD4gfCBDbGFzc1R5cGU8Q2hpbGRNb2RlbD4sXG4gICAgaWRQcm9wZXJ0eT86IGtleW9mIENoaWxkTW9kZWwsXG4gICAgdGl0bGVQcm9wZXJ0eT86IGtleW9mIENoaWxkTW9kZWwsXG4gICAgaTE4bkJhc2VLZXk/OiBDbGFzc1R5cGU8dW5rbm93bj4gfCBzdHJpbmdcbik6IFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PENoaWxkTW9kZWwsIGtleW9mIENoaWxkTW9kZWwsIGtleW9mIENoaWxkTW9kZWwsIFRhYmxldmlld01vZGVsPiB7XG4gICAgcmV0dXJuIGNsYXNzT3JUeXBlIGluc3RhbmNlb2YgTW9kZWxEZXNjcmlwdG9yXG4gICAgICAgID8gbmV3IFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PENoaWxkTW9kZWwsIGtleW9mIENoaWxkTW9kZWwsIGtleW9mIENoaWxkTW9kZWwsIFRhYmxldmlld01vZGVsPihjbGFzc09yVHlwZSlcbiAgICAgICAgOiBuZXcgVGFibGV2aWV3RGVzY3JpcHRvckluc3Q8Q2hpbGRNb2RlbCwga2V5b2YgQ2hpbGRNb2RlbCwga2V5b2YgQ2hpbGRNb2RlbCwgVGFibGV2aWV3TW9kZWw+KFxuICAgICAgICAgICAgICBtb2RlbChjbGFzc09yVHlwZSwge2lkOiBpZFByb3BlcnR5LCB0aXRsZTogdGl0bGVQcm9wZXJ0eSwgaTE4bkJhc2U6IGkxOG5CYXNlS2V5fSlcbiAgICAgICAgICApO1xufVxuXG5leHBvcnQgY2xhc3MgVGFibGV2aWV3RHluYW1pY0Rlc2NyaXB0b3IgZXh0ZW5kcyBUYWJsZXZpZXdEeW5hbWljRGVzY3JpcHRvckludCB7XG4gICAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcihNb2RlbERlc2NyaXB0b3IuY3JlYXRlKCkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgY3JlYXRlKGlkUHJvcGVydHk/OiBzdHJpbmcsIHRpdGxlUHJvcGVydHk/OiBzdHJpbmcsIGkxOG5CYXNlS2V5Pzogc3RyaW5nIHwgQ2xhc3NUeXBlPGFueT4pOiBUYWJsZXZpZXdEeW5hbWljRGVzY3JpcHRvckludCB7XG4gICAgICAgIHJldHVybiB0YWJsZXZpZXdEeW5hbWljRGVzY3JpcHRvcih7aWQ6IGlkUHJvcGVydHksIHRpdGxlOiB0aXRsZVByb3BlcnR5LCBpMThuQmFzZTogaTE4bkJhc2VLZXl9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZyb21Nb2RlbChtb2RlbDogTW9kZWxEZXNjcmlwdG9yPGFueT4pOiBUYWJsZXZpZXdEeW5hbWljRGVzY3JpcHRvckludCB7XG4gICAgICAgIHJldHVybiB0YWJsZXZpZXdEeW5hbWljRGVzY3JpcHRvcihtb2RlbCk7XG4gICAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdGFibGV2aWV3RHluYW1pY0Rlc2NyaXB0b3IobW9kZWxPck9wdHM/OiBNb2RlbERlc2NyaXB0b3I8YW55PiB8IFRhYmxldmlld0Rlc2NyaXB0b3JDcmVhdGVPcHRzVHlwZTxhbnk+KTogVGFibGV2aWV3RHluYW1pY0Rlc2NyaXB0b3JJbnQge1xuICAgIHJldHVybiBtb2RlbE9yT3B0cyBpbnN0YW5jZW9mIE1vZGVsRGVzY3JpcHRvclxuICAgICAgICA/IG5ldyBUYWJsZXZpZXdEeW5hbWljRGVzY3JpcHRvckludChtb2RlbE9yT3B0cylcbiAgICAgICAgOiBuZXcgVGFibGV2aWV3RHluYW1pY0Rlc2NyaXB0b3JJbnQobmV3IE1vZGVsRGVzY3JpcHRvcjxhbnk+KHVuZGVmaW5lZCwgbW9kZWxPck9wdHM/LmlkIGFzIHN0cmluZywgbW9kZWxPck9wdHM/LnRpdGxlIGFzIHN0cmluZywgbW9kZWxPck9wdHM/LmkxOG5CYXNlIGFzIHN0cmluZykpO1xufVxuIl19
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGV2aWV3LWRlc2NyaXB0b3IuZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RhYmxldmlldy9hcGkvc3JjL3RhYmxldmlldy9kZXNjcmlwdG9ycy90YWJsZXZpZXctZGVzY3JpcHRvci5mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxlQUFlLEVBQTZDLEtBQUssRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBSS9HLE9BQU8sRUFBQyx1QkFBdUIsRUFBMEMsNkJBQTZCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQThDdEksTUFBTSxVQUFVLG1CQUFtQixDQUMvQixXQUFxSTtBQUNySSw2REFBNkQ7QUFDN0QsSUFBcUc7SUFFckcsSUFBSSxXQUFXLElBQUksSUFBSSxFQUFFLENBQUM7UUFDdEIsT0FBTyxJQUFJLHVCQUF1QixDQUE0RSxLQUFLLEVBQVMsQ0FBQyxDQUFDO0lBQ2xJLENBQUM7U0FBTSxJQUFJLFdBQVcsWUFBWSxlQUFlLEVBQUUsQ0FBQztRQUNoRCxPQUFPLElBQUksdUJBQXVCLENBQTRFLFdBQVcsQ0FBQyxDQUFDO0lBQy9ILENBQUM7U0FBTSxDQUFDO1FBQ0osT0FBTyxJQUFJLHVCQUF1QixDQUE0RSxLQUFLLENBQVEsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUM3SSxDQUFDO0FBQ0wsQ0FBQztBQWlFRCxNQUFNLFVBQVUsNkJBQTZCLENBU3pDLFdBRStJO0FBQy9JLDZEQUE2RDtBQUM3RCxJQUFnSjtJQUVoSixJQUFJLFdBQVcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN0QixPQUFPLElBQUksdUJBQXVCLENBQTRFLEtBQUssRUFBUyxDQUFDLENBQUM7SUFDbEksQ0FBQztTQUFNLElBQUksV0FBVyxZQUFZLGVBQWUsRUFBRSxDQUFDO1FBQ2hELE9BQU8sSUFBSSx1QkFBdUIsQ0FBNEUsV0FBVyxDQUFDLENBQUM7SUFDL0gsQ0FBQztTQUFNLENBQUM7UUFDSixPQUFPLElBQUksdUJBQXVCLENBQTRFLEtBQUssQ0FBUSxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQzdJLENBQUM7QUFDTCxDQUFDO0FBRUQsTUFBTSxVQUFVLDBCQUEwQixDQUN0QyxXQUF3RztJQUV4RyxPQUFPLFdBQVcsWUFBWSxlQUFlO1FBQ3pDLENBQUMsQ0FBQyxJQUFJLDZCQUE2QixDQUFDLFdBQVcsQ0FBQztRQUNoRCxDQUFDLENBQUMsSUFBSSw2QkFBNkIsQ0FBQyxJQUFJLGVBQWUsQ0FBTSxXQUFXLEVBQUUsRUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFlLEVBQUUsV0FBVyxFQUFFLFFBQWtCLENBQUMsQ0FBQyxDQUFDO0FBQ2hLLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge01vZGVsRGVzY3JpcHRvciwgTW9kZWxEZXNjcmlwdG9yQ3JlYXRlT3B0cywgVHlwZURlc2NyaXB0b3IsIG1vZGVsfSBmcm9tICdAbWVkaXVzaW5jL21uZy1jb21tb25zL21vZGVsJztcblxuaW1wb3J0IHtFZGl0b3JEZXNjcmlwdG9ySW5zdH0gZnJvbSAnLi4vLi4vZWRpdG9yL2Rlc2NyaXB0b3JzL2VkaXRvci5kZXNjcmlwdG9yJztcbmltcG9ydCB7VGFibGV2aWV3RGVzY3JpcHRvckZpZWxkc01hbmFnZU11bHRpVHlwZX0gZnJvbSAnLi4vbW9kZWxzL3RhYmxldmlldy1kZXNjcmlwdG9yLWZpZWxkcy1tYW5hZ2UtaGVscGVyLnR5cGUnO1xuaW1wb3J0IHtUYWJsZXZpZXdEZXNjcmlwdG9ySW5zdCwgVGFibGV2aWV3RGVzY3JpcHRvckluc3RDb25zdHJ1Y3Rvck9wdHMsIFRhYmxldmlld0R5bmFtaWNEZXNjcmlwdG9ySW50fSBmcm9tICcuL3RhYmxldmlldy5kZXNjcmlwdG9yJztcblxudHlwZSBUYWJsZXZpZXdEZXNjcmlwdG9yQ3JlYXRlU29ydHNGaWx0ZXJzUGFyZW50T3B0c1R5cGU8TW9kZWwsIFNvcnRzID0ga2V5b2YgTW9kZWwsIEZpbHRlcnMgPSBrZXlvZiBNb2RlbCwgUGFyZW50RWRpdG9yTW9kZWwgPSB1bmRlZmluZWQ+ID0ge1xuICAgIGZpbHRlcnNUeXBlPzogVHlwZURlc2NyaXB0b3I8RmlsdGVycz4gfCBNb2RlbERlc2NyaXB0b3I8RmlsdGVycz47XG4gICAgc29ydHNUeXBlPzogVHlwZURlc2NyaXB0b3I8U29ydHM+IHwgTW9kZWxEZXNjcmlwdG9yPEZpbHRlcnM+O1xuICAgIHBhcmVudEVkaXRvclR5cGU/OlxuICAgICAgICB8IFR5cGVEZXNjcmlwdG9yPFBhcmVudEVkaXRvck1vZGVsPlxuICAgICAgICB8IE1vZGVsRGVzY3JpcHRvcjxQYXJlbnRFZGl0b3JNb2RlbD5cbiAgICAgICAgfCBFZGl0b3JEZXNjcmlwdG9ySW5zdDxQYXJlbnRFZGl0b3JNb2RlbCwgYW55PlxuICAgICAgICB8IFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PFBhcmVudEVkaXRvck1vZGVsLCBhbnksIGFueSwgYW55LCBhbnksIFBhcmVudEVkaXRvck1vZGVsLCBQYXJlbnRFZGl0b3JNb2RlbCwgUGFyZW50RWRpdG9yTW9kZWw+O1xufTtcblxuZXhwb3J0IHR5cGUgVGFibGV2aWV3RGVzY3JpcHRvckNyZWF0ZU9wdHNUeXBlPFxuICAgIE1vZGVsLFxuICAgIFNvcnRzID0ga2V5b2YgTW9kZWwsXG4gICAgRmlsdGVycyA9IGtleW9mIE1vZGVsLFxuICAgIFBhcmVudEVkaXRvck1vZGVsID0gdW5kZWZpbmVkXG4+ID0gVGFibGV2aWV3RGVzY3JpcHRvckNyZWF0ZVNvcnRzRmlsdGVyc1BhcmVudE9wdHNUeXBlPE1vZGVsLCBTb3J0cywgRmlsdGVycywgUGFyZW50RWRpdG9yTW9kZWw+O1xuXG5leHBvcnQgdHlwZSBUYWJsZXZpZXdEZXNjcmlwdG9yQ3JlYXRlV2l0aE1vZGVsRGVzY3JpcHRvck9wdHNUeXBlPFxuICAgIE1vZGVsLFxuICAgIFNvcnRzID0ga2V5b2YgTW9kZWwsXG4gICAgRmlsdGVycyA9IGtleW9mIE1vZGVsLFxuICAgIFBhcmVudEVkaXRvck1vZGVsID0gdW5kZWZpbmVkXG4+ID0gVGFibGV2aWV3RGVzY3JpcHRvckNyZWF0ZU9wdHNUeXBlPE1vZGVsLCBTb3J0cywgRmlsdGVycywgUGFyZW50RWRpdG9yTW9kZWw+ICYgTW9kZWxEZXNjcmlwdG9yQ3JlYXRlT3B0czxNb2RlbD47XG5cbmV4cG9ydCBmdW5jdGlvbiB0YWJsZXZpZXdEZXNjcmlwdG9yPE1vZGVsLCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzID0ga2V5b2YgTW9kZWwsIFBhcmVudEVkaXRvck1vZGVsID0gdW5kZWZpbmVkLCBUYWJsZU1vZGVsID0gTW9kZWw+KCk6IFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PFxuICAgIE1vZGVsLFxuICAgIFNvcnRzLFxuICAgIEZpbHRlcnMsXG4gICAgUGFyZW50RWRpdG9yTW9kZWwsXG4gICAgVGFibGVNb2RlbCxcbiAgICBNb2RlbCxcbiAgICBNb2RlbCxcbiAgICBNb2RlbFxuPjtcbmV4cG9ydCBmdW5jdGlvbiB0YWJsZXZpZXdEZXNjcmlwdG9yPE1vZGVsLCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzID0ga2V5b2YgTW9kZWwsIFBhcmVudEVkaXRvck1vZGVsID0gdW5kZWZpbmVkLCBUYWJsZU1vZGVsID0gTW9kZWw+KFxuICAgIG9wdHM6IFRhYmxldmlld0Rlc2NyaXB0b3JDcmVhdGVXaXRoTW9kZWxEZXNjcmlwdG9yT3B0c1R5cGU8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzLCBQYXJlbnRFZGl0b3JNb2RlbD5cbik6IFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PE1vZGVsLCBTb3J0cywgRmlsdGVycywgUGFyZW50RWRpdG9yTW9kZWwsIFRhYmxlTW9kZWwsIE1vZGVsLCBNb2RlbCwgTW9kZWw+O1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld0Rlc2NyaXB0b3I8TW9kZWwsIFNvcnRzID0ga2V5b2YgTW9kZWwsIEZpbHRlcnMgPSBrZXlvZiBNb2RlbCwgUGFyZW50RWRpdG9yTW9kZWwgPSB1bmRlZmluZWQsIFRhYmxlTW9kZWwgPSBNb2RlbD4oXG4gICAgb3B0czogVGFibGV2aWV3RGVzY3JpcHRvckNyZWF0ZVdpdGhNb2RlbERlc2NyaXB0b3JPcHRzVHlwZTxNb2RlbCwgU29ydHMsIEZpbHRlcnMsIFBhcmVudEVkaXRvck1vZGVsPlxuKTogVGFibGV2aWV3RGVzY3JpcHRvckluc3Q8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzLCBQYXJlbnRFZGl0b3JNb2RlbCwgVGFibGVNb2RlbCwgTW9kZWwsIE1vZGVsLCBNb2RlbD47XG5leHBvcnQgZnVuY3Rpb24gdGFibGV2aWV3RGVzY3JpcHRvcjxNb2RlbCwgU29ydHMgPSBrZXlvZiBNb2RlbCwgRmlsdGVycyA9IGtleW9mIE1vZGVsLCBQYXJlbnRFZGl0b3JNb2RlbCA9IHVuZGVmaW5lZCwgVGFibGVNb2RlbCA9IE1vZGVsPihcbiAgICBtb2RlbDogTW9kZWxEZXNjcmlwdG9yPE1vZGVsPixcbiAgICBvcHRzPzogVGFibGV2aWV3RGVzY3JpcHRvckNyZWF0ZU9wdHNUeXBlPE1vZGVsLCBTb3J0cywgRmlsdGVycywgUGFyZW50RWRpdG9yTW9kZWw+XG4pOiBUYWJsZXZpZXdEZXNjcmlwdG9ySW5zdDxNb2RlbCwgU29ydHMsIEZpbHRlcnMsIFBhcmVudEVkaXRvck1vZGVsLCBUYWJsZU1vZGVsLCBNb2RlbCwgTW9kZWwsIE1vZGVsPjtcbmV4cG9ydCBmdW5jdGlvbiB0YWJsZXZpZXdEZXNjcmlwdG9yPE1vZGVsLCBTb3J0cyA9IGtleW9mIE1vZGVsLCBGaWx0ZXJzID0ga2V5b2YgTW9kZWwsIFBhcmVudEVkaXRvck1vZGVsID0gdW5kZWZpbmVkLCBUYWJsZU1vZGVsID0gTW9kZWw+KFxuICAgIG1vZGVsT3JPcHRzPzogTW9kZWxEZXNjcmlwdG9yPE1vZGVsPiB8IFRhYmxldmlld0Rlc2NyaXB0b3JDcmVhdGVXaXRoTW9kZWxEZXNjcmlwdG9yT3B0c1R5cGU8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzLCBQYXJlbnRFZGl0b3JNb2RlbD4sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgIG9wdHM/OiBUYWJsZXZpZXdEZXNjcmlwdG9yQ3JlYXRlV2l0aE1vZGVsRGVzY3JpcHRvck9wdHNUeXBlPE1vZGVsLCBTb3J0cywgRmlsdGVycywgUGFyZW50RWRpdG9yTW9kZWw+XG4pIHtcbiAgICBpZiAobW9kZWxPck9wdHMgPT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gbmV3IFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PE1vZGVsLCBTb3J0cywgRmlsdGVycywgUGFyZW50RWRpdG9yTW9kZWwsIFRhYmxlTW9kZWwsIE1vZGVsLCBNb2RlbCwgTW9kZWw+KG1vZGVsPE1vZGVsPigpKTtcbiAgICB9IGVsc2UgaWYgKG1vZGVsT3JPcHRzIGluc3RhbmNlb2YgTW9kZWxEZXNjcmlwdG9yKSB7XG4gICAgICAgIHJldHVybiBuZXcgVGFibGV2aWV3RGVzY3JpcHRvckluc3Q8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzLCBQYXJlbnRFZGl0b3JNb2RlbCwgVGFibGVNb2RlbCwgTW9kZWwsIE1vZGVsLCBNb2RlbD4obW9kZWxPck9wdHMpO1xuICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBuZXcgVGFibGV2aWV3RGVzY3JpcHRvckluc3Q8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzLCBQYXJlbnRFZGl0b3JNb2RlbCwgVGFibGVNb2RlbCwgTW9kZWwsIE1vZGVsLCBNb2RlbD4obW9kZWw8TW9kZWw+KG1vZGVsT3JPcHRzKSk7XG4gICAgfVxufVxuXG5leHBvcnQgdHlwZSBUYWJsZXZpZXdEZXNjcmlwdG9yTXVsdGlNb2RlbENyZWF0ZU9wdHNUeXBlPFxuICAgIE1vZGVsLFxuICAgIFNvcnRzID0ga2V5b2YgTW9kZWwsXG4gICAgRmlsdGVycyA9IGtleW9mIE1vZGVsLFxuICAgIFBhcmVudEVkaXRvck1vZGVsID0gdW5kZWZpbmVkLFxuICAgIFRhYmxlTW9kZWwgPSBNb2RlbCxcbiAgICBBZGRNb2RlbCA9IE1vZGVsLFxuICAgIEVkaXRNb2RlbCA9IE1vZGVsXG4+ID0gVGFibGV2aWV3RGVzY3JpcHRvckNyZWF0ZVNvcnRzRmlsdGVyc1BhcmVudE9wdHNUeXBlPE1vZGVsLCBTb3J0cywgRmlsdGVycywgUGFyZW50RWRpdG9yTW9kZWw+ICYgVGFibGV2aWV3RGVzY3JpcHRvckluc3RDb25zdHJ1Y3Rvck9wdHM8VGFibGVNb2RlbCwgQWRkTW9kZWwsIEVkaXRNb2RlbD47XG5cbmV4cG9ydCB0eXBlIFRhYmxldmlld0Rlc2NyaXB0b3JDcmVhdGVNdWx0aU1vZGVsV2l0aE1vZGVsRGVzY3JpcHRvck9wdHNUeXBlPFxuICAgIE1vZGVsLFxuICAgIFNvcnRzID0ga2V5b2YgTW9kZWwsXG4gICAgRmlsdGVycyA9IGtleW9mIE1vZGVsLFxuICAgIFBhcmVudEVkaXRvck1vZGVsID0gdW5kZWZpbmVkLFxuICAgIFRhYmxlTW9kZWwgPSBNb2RlbCxcbiAgICBBZGRNb2RlbCA9IE1vZGVsLFxuICAgIEVkaXRNb2RlbCA9IE1vZGVsXG4+ID0gVGFibGV2aWV3RGVzY3JpcHRvck11bHRpTW9kZWxDcmVhdGVPcHRzVHlwZTxNb2RlbCwgU29ydHMsIEZpbHRlcnMsIFBhcmVudEVkaXRvck1vZGVsLCBUYWJsZU1vZGVsLCBBZGRNb2RlbCwgRWRpdE1vZGVsPiAmIE1vZGVsRGVzY3JpcHRvckNyZWF0ZU9wdHM8TW9kZWw+O1xuXG5leHBvcnQgZnVuY3Rpb24gdGFibGV2aWV3RGVzY3JpcHRvck11bHRpTW9kZWw8XG4gICAgTW9kZWwsXG4gICAgU29ydHMgPSBrZXlvZiBNb2RlbCxcbiAgICBGaWx0ZXJzID0ga2V5b2YgTW9kZWwsXG4gICAgUGFyZW50RWRpdG9yTW9kZWwgPSB1bmRlZmluZWQsXG4gICAgVGFibGVNb2RlbCA9IE1vZGVsLFxuICAgIEFkZE1vZGVsID0gTW9kZWwsXG4gICAgRWRpdE1vZGVsID0gTW9kZWxcbj4oKTogVGFibGV2aWV3RGVzY3JpcHRvckluc3Q8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzLCBQYXJlbnRFZGl0b3JNb2RlbCwgVGFibGVNb2RlbCwgQWRkTW9kZWwsIEVkaXRNb2RlbCwgVGFibGV2aWV3RGVzY3JpcHRvckZpZWxkc01hbmFnZU11bHRpVHlwZTxNb2RlbCwgQWRkTW9kZWwsIEVkaXRNb2RlbD4+O1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld0Rlc2NyaXB0b3JNdWx0aU1vZGVsPFxuICAgIE1vZGVsLFxuICAgIFNvcnRzID0ga2V5b2YgTW9kZWwsXG4gICAgRmlsdGVycyA9IGtleW9mIE1vZGVsLFxuICAgIFBhcmVudEVkaXRvck1vZGVsID0gdW5kZWZpbmVkLFxuICAgIFRhYmxlTW9kZWwgPSBNb2RlbCxcbiAgICBBZGRNb2RlbCA9IE1vZGVsLFxuICAgIEVkaXRNb2RlbCA9IE1vZGVsXG4+KFxuICAgIG9wdHM6IFRhYmxldmlld0Rlc2NyaXB0b3JDcmVhdGVNdWx0aU1vZGVsV2l0aE1vZGVsRGVzY3JpcHRvck9wdHNUeXBlPE1vZGVsLCBTb3J0cywgRmlsdGVycywgUGFyZW50RWRpdG9yTW9kZWwsIFRhYmxlTW9kZWwsIEFkZE1vZGVsLCBFZGl0TW9kZWw+XG4pOiBUYWJsZXZpZXdEZXNjcmlwdG9ySW5zdDxNb2RlbCwgU29ydHMsIEZpbHRlcnMsIFBhcmVudEVkaXRvck1vZGVsLCBUYWJsZU1vZGVsLCBBZGRNb2RlbCwgRWRpdE1vZGVsPjtcbmV4cG9ydCBmdW5jdGlvbiB0YWJsZXZpZXdEZXNjcmlwdG9yTXVsdGlNb2RlbDxcbiAgICBNb2RlbCxcbiAgICBTb3J0cyA9IGtleW9mIE1vZGVsLFxuICAgIEZpbHRlcnMgPSBrZXlvZiBNb2RlbCxcbiAgICBQYXJlbnRFZGl0b3JNb2RlbCA9IHVuZGVmaW5lZCxcbiAgICBUYWJsZU1vZGVsID0gTW9kZWwsXG4gICAgQWRkTW9kZWwgPSBNb2RlbCxcbiAgICBFZGl0TW9kZWwgPSBNb2RlbFxuPihcbiAgICBvcHRzOiBUYWJsZXZpZXdEZXNjcmlwdG9yQ3JlYXRlTXVsdGlNb2RlbFdpdGhNb2RlbERlc2NyaXB0b3JPcHRzVHlwZTxNb2RlbCwgU29ydHMsIEZpbHRlcnMsIFBhcmVudEVkaXRvck1vZGVsLCBUYWJsZU1vZGVsLCBBZGRNb2RlbCwgRWRpdE1vZGVsPlxuKTogVGFibGV2aWV3RGVzY3JpcHRvckluc3Q8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzLCBQYXJlbnRFZGl0b3JNb2RlbCwgVGFibGVNb2RlbCwgQWRkTW9kZWwsIEVkaXRNb2RlbD47XG5leHBvcnQgZnVuY3Rpb24gdGFibGV2aWV3RGVzY3JpcHRvck11bHRpTW9kZWw8XG4gICAgTW9kZWwsXG4gICAgU29ydHMgPSBrZXlvZiBNb2RlbCxcbiAgICBGaWx0ZXJzID0ga2V5b2YgTW9kZWwsXG4gICAgUGFyZW50RWRpdG9yTW9kZWwgPSB1bmRlZmluZWQsXG4gICAgVGFibGVNb2RlbCA9IE1vZGVsLFxuICAgIEFkZE1vZGVsID0gTW9kZWwsXG4gICAgRWRpdE1vZGVsID0gTW9kZWxcbj4oXG4gICAgbW9kZWw6IE1vZGVsRGVzY3JpcHRvcjxNb2RlbD4sXG4gICAgb3B0cz86IFRhYmxldmlld0Rlc2NyaXB0b3JNdWx0aU1vZGVsQ3JlYXRlT3B0c1R5cGU8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzLCBQYXJlbnRFZGl0b3JNb2RlbCwgVGFibGVNb2RlbCwgQWRkTW9kZWwsIEVkaXRNb2RlbD5cbik6IFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PE1vZGVsLCBTb3J0cywgRmlsdGVycywgUGFyZW50RWRpdG9yTW9kZWwsIFRhYmxlTW9kZWwsIEFkZE1vZGVsLCBFZGl0TW9kZWw+O1xuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld0Rlc2NyaXB0b3JNdWx0aU1vZGVsPFxuICAgIE1vZGVsLFxuICAgIFNvcnRzID0ga2V5b2YgTW9kZWwsXG4gICAgRmlsdGVycyA9IGtleW9mIE1vZGVsLFxuICAgIFBhcmVudEVkaXRvck1vZGVsID0gdW5kZWZpbmVkLFxuICAgIFRhYmxlTW9kZWwgPSBNb2RlbCxcbiAgICBBZGRNb2RlbCA9IE1vZGVsLFxuICAgIEVkaXRNb2RlbCA9IE1vZGVsXG4+KFxuICAgIG1vZGVsT3JPcHRzPzpcbiAgICAgICAgfCBNb2RlbERlc2NyaXB0b3I8TW9kZWw+XG4gICAgICAgIHwgVGFibGV2aWV3RGVzY3JpcHRvckNyZWF0ZU11bHRpTW9kZWxXaXRoTW9kZWxEZXNjcmlwdG9yT3B0c1R5cGU8TW9kZWwsIFNvcnRzLCBGaWx0ZXJzLCBQYXJlbnRFZGl0b3JNb2RlbCwgVGFibGVNb2RlbCwgQWRkTW9kZWwsIEVkaXRNb2RlbD4sXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgIG9wdHM/OiBUYWJsZXZpZXdEZXNjcmlwdG9yQ3JlYXRlTXVsdGlNb2RlbFdpdGhNb2RlbERlc2NyaXB0b3JPcHRzVHlwZTxNb2RlbCwgU29ydHMsIEZpbHRlcnMsIFBhcmVudEVkaXRvck1vZGVsLCBUYWJsZU1vZGVsLCBBZGRNb2RlbCwgRWRpdE1vZGVsPlxuKSB7XG4gICAgaWYgKG1vZGVsT3JPcHRzID09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBUYWJsZXZpZXdEZXNjcmlwdG9ySW5zdDxNb2RlbCwgU29ydHMsIEZpbHRlcnMsIFBhcmVudEVkaXRvck1vZGVsLCBUYWJsZU1vZGVsLCBBZGRNb2RlbCwgRWRpdE1vZGVsPihtb2RlbDxNb2RlbD4oKSk7XG4gICAgfSBlbHNlIGlmIChtb2RlbE9yT3B0cyBpbnN0YW5jZW9mIE1vZGVsRGVzY3JpcHRvcikge1xuICAgICAgICByZXR1cm4gbmV3IFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PE1vZGVsLCBTb3J0cywgRmlsdGVycywgUGFyZW50RWRpdG9yTW9kZWwsIFRhYmxlTW9kZWwsIEFkZE1vZGVsLCBFZGl0TW9kZWw+KG1vZGVsT3JPcHRzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gbmV3IFRhYmxldmlld0Rlc2NyaXB0b3JJbnN0PE1vZGVsLCBTb3J0cywgRmlsdGVycywgUGFyZW50RWRpdG9yTW9kZWwsIFRhYmxlTW9kZWwsIEFkZE1vZGVsLCBFZGl0TW9kZWw+KG1vZGVsPE1vZGVsPihtb2RlbE9yT3B0cykpO1xuICAgIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHRhYmxldmlld0R5bmFtaWNEZXNjcmlwdG9yKFxuICAgIG1vZGVsT3JPcHRzPzogTW9kZWxEZXNjcmlwdG9yPGFueT4gfCBUYWJsZXZpZXdEZXNjcmlwdG9yQ3JlYXRlTXVsdGlNb2RlbFdpdGhNb2RlbERlc2NyaXB0b3JPcHRzVHlwZTxhbnk+XG4pOiBUYWJsZXZpZXdEeW5hbWljRGVzY3JpcHRvckludCB7XG4gICAgcmV0dXJuIG1vZGVsT3JPcHRzIGluc3RhbmNlb2YgTW9kZWxEZXNjcmlwdG9yXG4gICAgICAgID8gbmV3IFRhYmxldmlld0R5bmFtaWNEZXNjcmlwdG9ySW50KG1vZGVsT3JPcHRzKVxuICAgICAgICA6IG5ldyBUYWJsZXZpZXdEeW5hbWljRGVzY3JpcHRvckludChuZXcgTW9kZWxEZXNjcmlwdG9yPGFueT4obW9kZWxPck9wdHM/LmlkIGFzIHN0cmluZywgbW9kZWxPck9wdHM/LnRpdGxlIGFzIHN0cmluZywgbW9kZWxPck9wdHM/LmkxOG5CYXNlIGFzIHN0cmluZykpO1xufVxuIl19
|