@eo-sdk/client 10.6.10 → 10.6.12
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/app/eo-client/about-state/about-state.component.d.ts.map +1 -1
- package/app/eo-client/inbox-state/inbox-state/inbox-state.component.d.ts.map +1 -1
- package/app/eo-framework/grid/extensions/filter/custom/custom-filter.component.d.ts.map +1 -1
- package/app/eo-framework/inbox-details/inbox-details.component.d.ts.map +1 -1
- package/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.d.ts +2 -0
- package/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.d.ts.map +1 -1
- package/app/eo-framework/object-form/object-form/object-form-script/object-form-script.service.d.ts.map +1 -1
- package/app/eo-framework/util/services/utilities.service.d.ts +190 -0
- package/app/eo-framework/util/services/utilities.service.d.ts.map +1 -1
- package/esm2020/app/eo-client/about-state/about-state.component.mjs +3 -3
- package/esm2020/app/eo-client/inbox-state/inbox-state/inbox-state.component.mjs +18 -1
- package/esm2020/app/eo-framework/actions/actions/custom-actions/custom-actions.component.mjs +3 -3
- package/esm2020/app/eo-framework/app-shell/app-bar/context-search/context-search.component.mjs +3 -3
- package/esm2020/app/eo-framework/grid/extensions/filter/custom/custom-filter.component.mjs +2 -1
- package/esm2020/app/eo-framework/grid/grid.component.mjs +2 -2
- package/esm2020/app/eo-framework/inbox-details/inbox-details.component.mjs +3 -1
- package/esm2020/app/eo-framework/object-form/object-form/form-element/form-element.component.mjs +3 -3
- package/esm2020/app/eo-framework/object-form/object-form/form-element-table/form-element-table.component.mjs +10 -3
- package/esm2020/app/eo-framework/object-form/object-form/object-form-script/object-form-script.service.mjs +4 -4
- package/esm2020/app/eo-framework/object-form/object-form/object-form-script/object-form-scripting-scope.mjs +7 -7
- package/esm2020/app/eo-framework/object-form/object-form/object-form.component.mjs +3 -3
- package/esm2020/app/eo-framework/quick-search/quick-search/quick-search.component.mjs +3 -3
- package/esm2020/app/eo-framework/ui/indexdata-summary/indexdata-summary-entry/indexdata-summary-entry.component.mjs +2 -2
- package/esm2020/app/eo-framework/util/services/utilities.service.mjs +4 -1
- package/fesm2015/eo-sdk-client.mjs +74 -46
- package/fesm2015/eo-sdk-client.mjs.map +1 -1
- package/fesm2020/eo-sdk-client.mjs +74 -46
- package/fesm2020/eo-sdk-client.mjs.map +1 -1
- package/misc/scripts/exclude-core-ng-package.js +11 -0
- package/misc/scripts/prebuild-about-state.js +2 -3
- package/package.json +3 -11
- package/esm2020/projects/eo-sdk/core/eo-sdk-client-projects-eo-sdk-core.mjs +0 -5
- package/esm2020/projects/eo-sdk/core/lib/config/core-config.mjs +0 -23
- package/esm2020/projects/eo-sdk/core/lib/config/core-init.service.mjs +0 -71
- package/esm2020/projects/eo-sdk/core/lib/config/core-init.tokens.mjs +0 -8
- package/esm2020/projects/eo-sdk/core/lib/config/initialize-module.mjs +0 -11
- package/esm2020/projects/eo-sdk/core/lib/config/missing-translation-handler.mjs +0 -15
- package/esm2020/projects/eo-sdk/core/lib/config/translate-json-loader.mjs +0 -130
- package/esm2020/projects/eo-sdk/core/lib/environment.enaio.mjs +0 -12
- package/esm2020/projects/eo-sdk/core/lib/eo-core-shared.module.mjs +0 -24
- package/esm2020/projects/eo-sdk/core/lib/eo-core.module.mjs +0 -117
- package/esm2020/projects/eo-sdk/core/lib/interface/change-password.interface.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/interface/event.interface.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/interface/http-options.interface.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/interface/logger.interface.mjs +0 -7
- package/esm2020/projects/eo-sdk/core/lib/interface/organization-objects.interface.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/interface/tree-node.interface.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/model/baseparams.model.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/model/bpm.model.mjs +0 -70
- package/esm2020/projects/eo-sdk/core/lib/model/custom-action.model.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/model/dms-object-history.model.mjs +0 -30
- package/esm2020/projects/eo-sdk/core/lib/model/dms-object.model.mjs +0 -138
- package/esm2020/projects/eo-sdk/core/lib/model/eo-error.model.mjs +0 -37
- package/esm2020/projects/eo-sdk/core/lib/model/eo-user.model.mjs +0 -86
- package/esm2020/projects/eo-sdk/core/lib/model/inbox-item.model.mjs +0 -36
- package/esm2020/projects/eo-sdk/core/lib/model/object-type.model.mjs +0 -39
- package/esm2020/projects/eo-sdk/core/lib/model/org.model.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/model/prepared-item.model.mjs +0 -35
- package/esm2020/projects/eo-sdk/core/lib/model/range-value.model.mjs +0 -45
- package/esm2020/projects/eo-sdk/core/lib/model/upload-file-item.model.mjs +0 -17
- package/esm2020/projects/eo-sdk/core/lib/model/upload-target.model.mjs +0 -50
- package/esm2020/projects/eo-sdk/core/lib/model/work-item-history.model.mjs +0 -54
- package/esm2020/projects/eo-sdk/core/lib/service/auth/auth-interceptor.mjs +0 -29
- package/esm2020/projects/eo-sdk/core/lib/service/auth/auth-profile.interface.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/service/auth/auth.service.mjs +0 -215
- package/esm2020/projects/eo-sdk/core/lib/service/auth/gateway-info.interface.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/service/backend/backend.service.mjs +0 -360
- package/esm2020/projects/eo-sdk/core/lib/service/bpm/bpm.service.mjs +0 -286
- package/esm2020/projects/eo-sdk/core/lib/service/cache/app-cache.service.mjs +0 -117
- package/esm2020/projects/eo-sdk/core/lib/service/capabilities/capabilities.model.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/service/capabilities/capabilities.service.mjs +0 -60
- package/esm2020/projects/eo-sdk/core/lib/service/clipboard/clipboard-action.enum.mjs +0 -6
- package/esm2020/projects/eo-sdk/core/lib/service/clipboard/clipboard.interface.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/service/clipboard/clipboard.service.mjs +0 -100
- package/esm2020/projects/eo-sdk/core/lib/service/config/config.enum.mjs +0 -6
- package/esm2020/projects/eo-sdk/core/lib/service/config/config.interface.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/service/config/config.service.mjs +0 -135
- package/esm2020/projects/eo-sdk/core/lib/service/dms/dms.service.mjs +0 -507
- package/esm2020/projects/eo-sdk/core/lib/service/dms/dmsParams.interface.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/service/events/event.service.mjs +0 -44
- package/esm2020/projects/eo-sdk/core/lib/service/events/events.mjs +0 -27
- package/esm2020/projects/eo-sdk/core/lib/service/inbox/inbox.service.mjs +0 -111
- package/esm2020/projects/eo-sdk/core/lib/service/logger/console-log.service.mjs +0 -41
- package/esm2020/projects/eo-sdk/core/lib/service/logger/logger.mjs +0 -47
- package/esm2020/projects/eo-sdk/core/lib/service/notifications/notifications.service.mjs +0 -136
- package/esm2020/projects/eo-sdk/core/lib/service/prepare/objectTypes.interface.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/service/prepare/prepare.service.mjs +0 -305
- package/esm2020/projects/eo-sdk/core/lib/service/search/search-filter-type.interface.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/service/search/search-query.model.mjs +0 -510
- package/esm2020/projects/eo-sdk/core/lib/service/search/search.service.mjs +0 -484
- package/esm2020/projects/eo-sdk/core/lib/service/signing/signing.service.mjs +0 -60
- package/esm2020/projects/eo-sdk/core/lib/service/storage/local-storage.service.mjs +0 -111
- package/esm2020/projects/eo-sdk/core/lib/service/stored-queries/stored-queries-subscription.interface.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/service/stored-queries/stored-queries.service.mjs +0 -216
- package/esm2020/projects/eo-sdk/core/lib/service/stored-queries/stored-query.model.mjs +0 -98
- package/esm2020/projects/eo-sdk/core/lib/service/system/system.service.mjs +0 -345
- package/esm2020/projects/eo-sdk/core/lib/service/system/systemdefinition.interface.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/service/system-status/system-status.service.mjs +0 -104
- package/esm2020/projects/eo-sdk/core/lib/service/system-status/system.status.enum.mjs +0 -9
- package/esm2020/projects/eo-sdk/core/lib/service/system-status/system.status.interface.mjs +0 -2
- package/esm2020/projects/eo-sdk/core/lib/service/upload/upload.service.mjs +0 -46
- package/esm2020/projects/eo-sdk/core/lib/service/upload-registry/upload-registry.service.mjs +0 -83
- package/esm2020/projects/eo-sdk/core/lib/service/user/user.service.mjs +0 -399
- package/esm2020/projects/eo-sdk/core/lib/util/utils.mjs +0 -304
- package/esm2020/projects/eo-sdk/core/public_api.mjs +0 -85
- package/fesm2015/eo-sdk-client-projects-eo-sdk-core.mjs +0 -6124
- package/fesm2015/eo-sdk-client-projects-eo-sdk-core.mjs.map +0 -1
- package/fesm2020/eo-sdk-client-projects-eo-sdk-core.mjs +0 -6139
- package/fesm2020/eo-sdk-client-projects-eo-sdk-core.mjs.map +0 -1
- package/projects/eo-sdk/core/README.md +0 -113
- package/projects/eo-sdk/core/eo-sdk-client-projects-eo-sdk-core.d.ts.map +0 -1
- package/projects/eo-sdk/core/index.d.ts +0 -6
- package/projects/eo-sdk/core/lib/config/core-config.d.ts +0 -14
- package/projects/eo-sdk/core/lib/config/core-config.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/config/core-init.service.d.ts +0 -33
- package/projects/eo-sdk/core/lib/config/core-init.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/config/core-init.tokens.d.ts +0 -8
- package/projects/eo-sdk/core/lib/config/core-init.tokens.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/config/initialize-module.d.ts +0 -7
- package/projects/eo-sdk/core/lib/config/initialize-module.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/config/missing-translation-handler.d.ts +0 -14
- package/projects/eo-sdk/core/lib/config/missing-translation-handler.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/config/translate-json-loader.d.ts +0 -21
- package/projects/eo-sdk/core/lib/config/translate-json-loader.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/environment.enaio.d.ts +0 -6
- package/projects/eo-sdk/core/lib/environment.enaio.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/eo-core-shared.module.d.ts +0 -12
- package/projects/eo-sdk/core/lib/eo-core-shared.module.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/eo-core.module.d.ts +0 -46
- package/projects/eo-sdk/core/lib/eo-core.module.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/interface/change-password.interface.d.ts +0 -8
- package/projects/eo-sdk/core/lib/interface/change-password.interface.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/interface/event.interface.d.ts +0 -14
- package/projects/eo-sdk/core/lib/interface/event.interface.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/interface/http-options.interface.d.ts +0 -17
- package/projects/eo-sdk/core/lib/interface/http-options.interface.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/interface/logger.interface.d.ts +0 -20
- package/projects/eo-sdk/core/lib/interface/logger.interface.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/interface/organization-objects.interface.d.ts +0 -20
- package/projects/eo-sdk/core/lib/interface/organization-objects.interface.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/interface/tree-node.interface.d.ts +0 -24
- package/projects/eo-sdk/core/lib/interface/tree-node.interface.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/model/baseparams.model.d.ts +0 -58
- package/projects/eo-sdk/core/lib/model/baseparams.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/model/bpm.model.d.ts +0 -253
- package/projects/eo-sdk/core/lib/model/bpm.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/model/custom-action.model.d.ts +0 -34
- package/projects/eo-sdk/core/lib/model/custom-action.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/model/dms-object-history.model.d.ts +0 -59
- package/projects/eo-sdk/core/lib/model/dms-object-history.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/model/dms-object.model.d.ts +0 -137
- package/projects/eo-sdk/core/lib/model/dms-object.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/model/eo-error.model.d.ts +0 -19
- package/projects/eo-sdk/core/lib/model/eo-error.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/model/eo-user.model.d.ts +0 -107
- package/projects/eo-sdk/core/lib/model/eo-user.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/model/inbox-item.model.d.ts +0 -71
- package/projects/eo-sdk/core/lib/model/inbox-item.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/model/object-type.model.d.ts +0 -125
- package/projects/eo-sdk/core/lib/model/object-type.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/model/org.model.d.ts +0 -94
- package/projects/eo-sdk/core/lib/model/org.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/model/prepared-item.model.d.ts +0 -190
- package/projects/eo-sdk/core/lib/model/prepared-item.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/model/range-value.model.d.ts +0 -22
- package/projects/eo-sdk/core/lib/model/range-value.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/model/upload-file-item.model.d.ts +0 -30
- package/projects/eo-sdk/core/lib/model/upload-file-item.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/model/upload-target.model.d.ts +0 -60
- package/projects/eo-sdk/core/lib/model/upload-target.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/model/work-item-history.model.d.ts +0 -52
- package/projects/eo-sdk/core/lib/model/work-item-history.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/auth/auth-interceptor.d.ts +0 -12
- package/projects/eo-sdk/core/lib/service/auth/auth-interceptor.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/auth/auth-profile.interface.d.ts +0 -23
- package/projects/eo-sdk/core/lib/service/auth/auth-profile.interface.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/auth/auth.service.d.ts +0 -104
- package/projects/eo-sdk/core/lib/service/auth/auth.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/auth/gateway-info.interface.d.ts +0 -18
- package/projects/eo-sdk/core/lib/service/auth/gateway-info.interface.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/backend/backend.service.d.ts +0 -209
- package/projects/eo-sdk/core/lib/service/backend/backend.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/bpm/bpm.service.d.ts +0 -150
- package/projects/eo-sdk/core/lib/service/bpm/bpm.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/cache/app-cache.service.d.ts +0 -59
- package/projects/eo-sdk/core/lib/service/cache/app-cache.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/capabilities/capabilities.model.d.ts +0 -54
- package/projects/eo-sdk/core/lib/service/capabilities/capabilities.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/capabilities/capabilities.service.d.ts +0 -35
- package/projects/eo-sdk/core/lib/service/capabilities/capabilities.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/clipboard/clipboard-action.enum.d.ts +0 -5
- package/projects/eo-sdk/core/lib/service/clipboard/clipboard-action.enum.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/clipboard/clipboard.interface.d.ts +0 -16
- package/projects/eo-sdk/core/lib/service/clipboard/clipboard.interface.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/clipboard/clipboard.service.d.ts +0 -49
- package/projects/eo-sdk/core/lib/service/clipboard/clipboard.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/config/config.enum.d.ts +0 -5
- package/projects/eo-sdk/core/lib/service/config/config.enum.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/config/config.interface.d.ts +0 -55
- package/projects/eo-sdk/core/lib/service/config/config.interface.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/config/config.service.d.ts +0 -80
- package/projects/eo-sdk/core/lib/service/config/config.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/dms/dms.service.d.ts +0 -286
- package/projects/eo-sdk/core/lib/service/dms/dms.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/dms/dmsParams.interface.d.ts +0 -13
- package/projects/eo-sdk/core/lib/service/dms/dmsParams.interface.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/events/event.service.d.ts +0 -31
- package/projects/eo-sdk/core/lib/service/events/event.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/events/events.d.ts +0 -27
- package/projects/eo-sdk/core/lib/service/events/events.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/inbox/inbox.service.d.ts +0 -66
- package/projects/eo-sdk/core/lib/service/inbox/inbox.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/logger/console-log.service.d.ts +0 -20
- package/projects/eo-sdk/core/lib/service/logger/console-log.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/logger/logger.d.ts +0 -25
- package/projects/eo-sdk/core/lib/service/logger/logger.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/notifications/notifications.service.d.ts +0 -78
- package/projects/eo-sdk/core/lib/service/notifications/notifications.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/prepare/objectTypes.interface.d.ts +0 -9
- package/projects/eo-sdk/core/lib/service/prepare/objectTypes.interface.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/prepare/prepare.service.d.ts +0 -189
- package/projects/eo-sdk/core/lib/service/prepare/prepare.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/search/search-filter-type.interface.d.ts +0 -10
- package/projects/eo-sdk/core/lib/service/search/search-filter-type.interface.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/search/search-query.model.d.ts +0 -327
- package/projects/eo-sdk/core/lib/service/search/search-query.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/search/search.service.d.ts +0 -173
- package/projects/eo-sdk/core/lib/service/search/search.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/signing/signing.service.d.ts +0 -52
- package/projects/eo-sdk/core/lib/service/signing/signing.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/storage/local-storage.service.d.ts +0 -53
- package/projects/eo-sdk/core/lib/service/storage/local-storage.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/stored-queries/stored-queries-subscription.interface.d.ts +0 -15
- package/projects/eo-sdk/core/lib/service/stored-queries/stored-queries-subscription.interface.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/stored-queries/stored-queries.service.d.ts +0 -108
- package/projects/eo-sdk/core/lib/service/stored-queries/stored-queries.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/stored-queries/stored-query.model.d.ts +0 -74
- package/projects/eo-sdk/core/lib/service/stored-queries/stored-query.model.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/system/system.service.d.ts +0 -125
- package/projects/eo-sdk/core/lib/service/system/system.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/system/systemdefinition.interface.d.ts +0 -53
- package/projects/eo-sdk/core/lib/service/system/systemdefinition.interface.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/system-status/system-status.service.d.ts +0 -26
- package/projects/eo-sdk/core/lib/service/system-status/system-status.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/system-status/system.status.enum.d.ts +0 -8
- package/projects/eo-sdk/core/lib/service/system-status/system.status.enum.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/system-status/system.status.interface.d.ts +0 -8
- package/projects/eo-sdk/core/lib/service/system-status/system.status.interface.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/upload/upload.service.d.ts +0 -28
- package/projects/eo-sdk/core/lib/service/upload/upload.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/upload-registry/upload-registry.service.d.ts +0 -50
- package/projects/eo-sdk/core/lib/service/upload-registry/upload-registry.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/service/user/user.service.d.ts +0 -216
- package/projects/eo-sdk/core/lib/service/user/user.service.d.ts.map +0 -1
- package/projects/eo-sdk/core/lib/util/utils.d.ts +0 -148
- package/projects/eo-sdk/core/lib/util/utils.d.ts.map +0 -1
- package/projects/eo-sdk/core/public_api.d.ts +0 -82
- package/projects/eo-sdk/core/public_api.d.ts.map +0 -1
|
@@ -1,305 +0,0 @@
|
|
|
1
|
-
import { mergeMap, map, tap } from 'rxjs/operators';
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
3
|
-
import { Utils } from '../../util/utils';
|
|
4
|
-
import { ReplaySubject } from 'rxjs';
|
|
5
|
-
import { ObjectType } from '../../model/object-type.model';
|
|
6
|
-
import { PreparedItem } from '../../model/prepared-item.model';
|
|
7
|
-
import { UploadTarget } from '../../model/upload-target.model';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "../backend/backend.service";
|
|
10
|
-
import * as i2 from "../upload/upload.service";
|
|
11
|
-
/**
|
|
12
|
-
* Collection of Prepare Services
|
|
13
|
-
*/
|
|
14
|
-
export class PrepareService {
|
|
15
|
-
constructor(backend, uploadService) {
|
|
16
|
-
this.backend = backend;
|
|
17
|
-
this.uploadService = uploadService;
|
|
18
|
-
this.preparedItemsSource = new ReplaySubject(1);
|
|
19
|
-
this.preparedItems$ = this.preparedItemsSource.asObservable();
|
|
20
|
-
this.preparedItemCountSource = new ReplaySubject(1);
|
|
21
|
-
this.preparedItemCount$ = this.preparedItemCountSource.asObservable();
|
|
22
|
-
/**
|
|
23
|
-
* Creates a prepared item on the backed side.
|
|
24
|
-
*
|
|
25
|
-
* @param parentId The ID of the parent dms object to add the prepared item to
|
|
26
|
-
* @param childType The type of object to be created
|
|
27
|
-
* @returns Observable<any>
|
|
28
|
-
*/
|
|
29
|
-
this.i = 0;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Public Fetch Prepare items
|
|
33
|
-
*/
|
|
34
|
-
refreshPreparedItemsCount() {
|
|
35
|
-
this.fetchPreparedItemsCount();
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Fetches the number of prepared items for the current user.
|
|
39
|
-
*/
|
|
40
|
-
fetchPreparedItemsCount() {
|
|
41
|
-
this.backend.getJson('/prepare/state')
|
|
42
|
-
.pipe(map((res) => res.count))
|
|
43
|
-
.subscribe((res) => {
|
|
44
|
-
this.preparedItemCount = res;
|
|
45
|
-
this.preparedItemCountSource.next(this.preparedItemCount);
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
createPreparedItem(parentId, childType) {
|
|
49
|
-
console.log('tick');
|
|
50
|
-
this.i++;
|
|
51
|
-
return this.backend
|
|
52
|
-
.post(this.createPreparedItemPostUrl({
|
|
53
|
-
parentId: parentId,
|
|
54
|
-
childType: childType ? childType : null
|
|
55
|
-
}), {})
|
|
56
|
-
.pipe(tap(() => this.getPreparedItems$()));
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
*
|
|
60
|
-
* @param preparedItemId
|
|
61
|
-
* @param data
|
|
62
|
-
* @returns Observable<any>
|
|
63
|
-
*/
|
|
64
|
-
updatePreparedItemIndexData(preparedItemId, data) {
|
|
65
|
-
return this.backend
|
|
66
|
-
.put('/prepare/' + preparedItemId, data)
|
|
67
|
-
.pipe(tap(() => this.getPreparedItems$()));
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* Creates an URL for creating a PreparedItem.
|
|
71
|
-
*
|
|
72
|
-
* @param params Params for generating appropriate uri.
|
|
73
|
-
* @returns string A POST URL for creating PreparedItems
|
|
74
|
-
*/
|
|
75
|
-
createPreparedItemPostUrl(params) {
|
|
76
|
-
let url = params.createMany ? '/prepare/createmany' : '/prepare/create';
|
|
77
|
-
if (params) {
|
|
78
|
-
url = Utils.buildUri(url, params);
|
|
79
|
-
}
|
|
80
|
-
return url;
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* Retrieves a list of the users prepared items.
|
|
84
|
-
*
|
|
85
|
-
* @param noForms If set to true the prepared items will be fetched without the form which is faster
|
|
86
|
-
* @returns Observable<PreparedItem[]> A collection of prepared item objects
|
|
87
|
-
*/
|
|
88
|
-
getPreparedItems$(noForms) {
|
|
89
|
-
this.fetchPreparedItems(noForms).subscribe();
|
|
90
|
-
return this.preparedItems$;
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Retrieve PrepareItems and form them
|
|
94
|
-
*
|
|
95
|
-
* @param boolean noForms
|
|
96
|
-
* @returns Observable<PreparedItem[]>
|
|
97
|
-
*/
|
|
98
|
-
fetchPreparedItems(noForms) {
|
|
99
|
-
let uri = (noForms) ? '/prepare' : '/prepare?form=true';
|
|
100
|
-
return this.backend
|
|
101
|
-
.getJson(uri)
|
|
102
|
-
.pipe(map((res) => res.map(i => new PreparedItem(i))), tap(() => this.fetchPreparedItemsCount()), tap((preparedItems) => this.preparedItemsSource.next(preparedItems.sort(Utils.sortValues('created', 'desc')))));
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* Removes a prepared item.
|
|
106
|
-
*
|
|
107
|
-
* @param preparedItemId ID of the item to be removed
|
|
108
|
-
* @returns Observable<any> Server response
|
|
109
|
-
*/
|
|
110
|
-
deletePreparedItem(preparedItemId) {
|
|
111
|
-
return this.backend
|
|
112
|
-
.del(`/prepare/${preparedItemId}`)
|
|
113
|
-
.pipe(tap(() => this.getPreparedItems$()));
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* Fetches a list of object types allowed to be placed directly below root.
|
|
117
|
-
*
|
|
118
|
-
* @returns Observable<ObjectType[]> A list of supported object types
|
|
119
|
-
*/
|
|
120
|
-
getPrepareRootTypes() {
|
|
121
|
-
return this.backend
|
|
122
|
-
.getViaTempCache('/prepare/types')
|
|
123
|
-
.pipe(map((res) => res.types.map((type) => new ObjectType(type))));
|
|
124
|
-
}
|
|
125
|
-
/**
|
|
126
|
-
* Fetches a list of allowed child object types for a selected parent.
|
|
127
|
-
*
|
|
128
|
-
* @param parentId The id of the parent dms object (context folder)
|
|
129
|
-
* @param withContentOnly If set to true only child types, that support content are returned.
|
|
130
|
-
* @returns Observable<IPrepareChildTypes> A list of supported object types
|
|
131
|
-
*/
|
|
132
|
-
getPrepareChildTypes(parentId, withContentOnly) {
|
|
133
|
-
const params = parentId ? { parentId, withcontent: withContentOnly } : { withcontent: withContentOnly };
|
|
134
|
-
const uri = Utils.buildUri('/prepare/types', params);
|
|
135
|
-
return this.backend
|
|
136
|
-
.getViaTempCache(uri)
|
|
137
|
-
.pipe(map(res => ({ parent: res.parent, types: res.types.map((type) => new ObjectType(type)) })));
|
|
138
|
-
}
|
|
139
|
-
/**
|
|
140
|
-
* fetch the preview uri for a prepared item
|
|
141
|
-
*
|
|
142
|
-
* @param id The id of the prepared item
|
|
143
|
-
* @param index When a prepared item contains more than one contents, the index specifies which content
|
|
144
|
-
* @param rendition Target rendition (PDF)
|
|
145
|
-
* to retrieve the preview uri for
|
|
146
|
-
* @returns string Preview uri
|
|
147
|
-
*/
|
|
148
|
-
getPreviewUri(id, index, rendition) {
|
|
149
|
-
return Utils.buildUri(`${this.backend.getServiceBase()}/prepare/${id}/content`, { rendition, index });
|
|
150
|
-
}
|
|
151
|
-
/**
|
|
152
|
-
* Updates the prepared items target object type.
|
|
153
|
-
*
|
|
154
|
-
* @param objectType The target object types name
|
|
155
|
-
* @param preparedItemId The id of the prepared item to set the type for
|
|
156
|
-
* @returns Observable<PreparedItem> The updated prepared item
|
|
157
|
-
*/
|
|
158
|
-
updateChildType(objectType, preparedItemId) {
|
|
159
|
-
return this.backend
|
|
160
|
-
.put(`/prepare/${preparedItemId}/${objectType}?form=true&contentmeta=true`)
|
|
161
|
-
.pipe(map(res => new PreparedItem(res)));
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* Add a template to a prepared item.
|
|
165
|
-
*
|
|
166
|
-
* @param preparedItemId The id of the prepared item to add the template to
|
|
167
|
-
* @param templateId The id of the template to be added
|
|
168
|
-
* @returns Observable<PreparedItem> The updated prepared item
|
|
169
|
-
*/
|
|
170
|
-
addTemplate(preparedItemId, templateId) {
|
|
171
|
-
return this.backend
|
|
172
|
-
.put(`/prepare/${preparedItemId}/template?templateid=${templateId}`)
|
|
173
|
-
.pipe(map(res => new PreparedItem(res)));
|
|
174
|
-
}
|
|
175
|
-
/**
|
|
176
|
-
* Fetches a list of available templates for a given object type.
|
|
177
|
-
*
|
|
178
|
-
* @param Observable<PreparedItemTemplate[]> objectTypeName
|
|
179
|
-
*/
|
|
180
|
-
getTemplates(objectTypeName) {
|
|
181
|
-
return this.backend
|
|
182
|
-
.getJson('/template/list?type=' + objectTypeName)
|
|
183
|
-
.pipe(map((res) => res));
|
|
184
|
-
}
|
|
185
|
-
/**
|
|
186
|
-
* Returns url of a template preview
|
|
187
|
-
*
|
|
188
|
-
* @param id Template ID
|
|
189
|
-
* @param rendition Target rendition (PDF)
|
|
190
|
-
* @returns string The template preview url.
|
|
191
|
-
*/
|
|
192
|
-
getTemplatePreviewUri(id, rendition) {
|
|
193
|
-
return Utils.buildUri(`${this.backend.getServiceBase()}/template/${id}/content`, { rendition });
|
|
194
|
-
}
|
|
195
|
-
/**
|
|
196
|
-
* Commit a prepared item. This will create an actual dms object.
|
|
197
|
-
* Updates the prepared creation object target type
|
|
198
|
-
*
|
|
199
|
-
* @param preparedItemId ID of the prepared item
|
|
200
|
-
* @param preparedItemType Name of the prepared items target object type
|
|
201
|
-
* @param preparedItemData Object holding data of the prepared item
|
|
202
|
-
* @returns The id of the created dms object
|
|
203
|
-
*/
|
|
204
|
-
commitPreparedItem(preparedItemId, preparedItemType, preparedItemData) {
|
|
205
|
-
return this.backend
|
|
206
|
-
.put(`/prepare/${preparedItemId}/${preparedItemType}`)
|
|
207
|
-
.pipe(mergeMap(() => this.backend.post(`/prepare/commit/${preparedItemId}`, preparedItemData)), tap(() => this.getPreparedItems$()), map(res => res.id));
|
|
208
|
-
}
|
|
209
|
-
/**
|
|
210
|
-
* Upload Content
|
|
211
|
-
*
|
|
212
|
-
* @param string preparedItemId
|
|
213
|
-
* @param File file
|
|
214
|
-
* @returns Observable<any>
|
|
215
|
-
*/
|
|
216
|
-
uploadContent(preparedItemId, file) {
|
|
217
|
-
const uri = `${this.backend.getBaseWithContext(this.backend.getServiceBase())}/prepare/${preparedItemId}/content.json?form=true&contentmeta=true`;
|
|
218
|
-
return this.uploadService
|
|
219
|
-
.upload(uri, [file])
|
|
220
|
-
.pipe(
|
|
221
|
-
// tap(() => this.getPreparedItems$())
|
|
222
|
-
);
|
|
223
|
-
}
|
|
224
|
-
/**
|
|
225
|
-
* Uploads files to an upload target.
|
|
226
|
-
*
|
|
227
|
-
* @param uploadTarget The upload target to upload files to
|
|
228
|
-
* @param uploadFiles Files to be uploaded
|
|
229
|
-
* @param useBatchUpload Flag indicating whether or not to use batch processing on the backend side
|
|
230
|
-
* @returns Observable<any>
|
|
231
|
-
*/
|
|
232
|
-
uploadToTarget(uploadTarget, uploadFiles, useBatchUpload) {
|
|
233
|
-
const files = uploadFiles.map(f => f._file);
|
|
234
|
-
return this.uploadService
|
|
235
|
-
.upload(this.getUploadTarget(uploadTarget, useBatchUpload), files)
|
|
236
|
-
.pipe(tap(() => this.getPreparedItems$()));
|
|
237
|
-
}
|
|
238
|
-
/**
|
|
239
|
-
* Get the uri to post files to based on the upload target.
|
|
240
|
-
*
|
|
241
|
-
* @param uploadTarget The target to upload files to
|
|
242
|
-
* @param useBatchUpload Flag indicating whether or not to upload all files in a single post
|
|
243
|
-
* @returns string the uri
|
|
244
|
-
*/
|
|
245
|
-
getUploadTarget(uploadTarget, useBatchUpload) {
|
|
246
|
-
let uri;
|
|
247
|
-
if (uploadTarget.type === UploadTarget.ROOT) {
|
|
248
|
-
/**
|
|
249
|
-
* upload to general filing location
|
|
250
|
-
*
|
|
251
|
-
* @type string
|
|
252
|
-
*/
|
|
253
|
-
uri = this.backend.getBaseWithContext(this.backend.getServiceBase()) + this.createPreparedItemPostUrl({
|
|
254
|
-
parentId: null,
|
|
255
|
-
createMany: !useBatchUpload
|
|
256
|
-
});
|
|
257
|
-
}
|
|
258
|
-
else if (uploadTarget.type === UploadTarget.OBJECT) {
|
|
259
|
-
/**
|
|
260
|
-
* upload to dms object, means adding or replacing content file
|
|
261
|
-
*/
|
|
262
|
-
const { referenceObject } = uploadTarget;
|
|
263
|
-
uri = `${this.backend.getBaseWithContext(this.backend.getServiceBase())}/dms/${referenceObject.id}/contents?type=${referenceObject.type.name}`;
|
|
264
|
-
}
|
|
265
|
-
else if (uploadTarget.type === UploadTarget.CONTEXT || uploadTarget.type === UploadTarget.CONTEXT_TREE) {
|
|
266
|
-
/**
|
|
267
|
-
* upload to context folder, means adding a new dms object to a specific
|
|
268
|
-
* context folder ...
|
|
269
|
-
* ... if we got a subFolder (node from the context tree) set up we'll add that too
|
|
270
|
-
*
|
|
271
|
-
* @type string
|
|
272
|
-
*/
|
|
273
|
-
uri = this.backend.getBaseWithContext(this.backend.getServiceBase()) + this.createPreparedItemPostUrl({
|
|
274
|
-
parentId: uploadTarget.referenceObject.id,
|
|
275
|
-
createMany: !useBatchUpload,
|
|
276
|
-
childType: uploadTarget.subFolder && uploadTarget.subFolder.data.type ? uploadTarget.subFolder.data.type : null
|
|
277
|
-
});
|
|
278
|
-
}
|
|
279
|
-
return uri;
|
|
280
|
-
}
|
|
281
|
-
/**
|
|
282
|
-
* Deletes a prepared creation object content element by index or the complete content.
|
|
283
|
-
* If you provide an index the content consists only of one element,
|
|
284
|
-
* the content is completely removed from the prepared creation object.
|
|
285
|
-
*
|
|
286
|
-
* @param preparedItemId ID of the item with the content to be removed
|
|
287
|
-
* @param index Parameter that determines which content element should be deleted.
|
|
288
|
-
* @returns Observable<PreparedItem> The updated prepared item
|
|
289
|
-
*/
|
|
290
|
-
deletePreparedItemContent(preparedItemId, index) {
|
|
291
|
-
const url = `/prepare/${preparedItemId}/content` + (index !== undefined ? `?index=${index}` : '');
|
|
292
|
-
return this.backend
|
|
293
|
-
.del(url)
|
|
294
|
-
.pipe(map(res => new PreparedItem(res)));
|
|
295
|
-
}
|
|
296
|
-
}
|
|
297
|
-
PrepareService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: PrepareService, deps: [{ token: i1.BackendService }, { token: i2.UploadService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
298
|
-
PrepareService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: PrepareService, providedIn: 'root' });
|
|
299
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.2", ngImport: i0, type: PrepareService, decorators: [{
|
|
300
|
-
type: Injectable,
|
|
301
|
-
args: [{
|
|
302
|
-
providedIn: 'root'
|
|
303
|
-
}]
|
|
304
|
-
}], ctorParameters: function () { return [{ type: i1.BackendService }, { type: i2.UploadService }]; } });
|
|
305
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlcGFyZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZW8tc2RrL2NvcmUvc3JjL2xpYi9zZXJ2aWNlL3ByZXBhcmUvcHJlcGFyZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ2xELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLEtBQUssRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBRXZDLE9BQU8sRUFBYSxhQUFhLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ3pELE9BQU8sRUFBQyxZQUFZLEVBQXVCLE1BQU0saUNBQWlDLENBQUM7QUFFbkYsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlDQUFpQyxDQUFDOzs7O0FBaUI3RDs7R0FFRztBQUlILE1BQU0sT0FBTyxjQUFjO0lBVXpCLFlBQW9CLE9BQXVCLEVBQ3ZCLGFBQTRCO1FBRDVCLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBQ3ZCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBUnhDLHdCQUFtQixHQUFHLElBQUksYUFBYSxDQUFpQixDQUFDLENBQUMsQ0FBQztRQUM1RCxtQkFBYyxHQUErQixJQUFJLENBQUMsbUJBQW1CLENBQUMsWUFBWSxFQUFFLENBQUM7UUFHcEYsNEJBQXVCLEdBQUcsSUFBSSxhQUFhLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFDeEQsdUJBQWtCLEdBQXVCLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQTJCNUY7Ozs7OztXQU1HO1FBQ0gsTUFBQyxHQUFHLENBQUMsQ0FBQztJQTlCTixDQUFDO0lBRUQ7O09BRUc7SUFD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RTtZQUN4Rzs7Ozs7O2VBTUc7WUFDSCxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDO2dCQUNwRyxRQUFRLEVBQUUsWUFBWSxDQUFDLGVBQWUsQ0FBQyxFQUFFO2dCQUN6QyxVQUFVLEVBQUUsQ0FBQyxjQUFjO2dCQUMzQixTQUFTLEVBQUUsWUFBWSxDQUFDLFNBQVMsSUFBSSxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSTthQUNoSCxDQUFDLENBQUM7U0FDSjtRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0kseUJBQXlCLENBQUMsY0FBc0IsRUFBRSxLQUFjO1FBQ3JFLE1BQU0sR0FBRyxHQUFHLFlBQVksY0FBYyxVQUFVLEdBQUcsQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxVQUFVLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsRyxPQUFPLElBQUksQ0FBQyxPQUFPO2FBQ2hCLEdBQUcsQ0FBQyxHQUFHLENBQUM7YUFDUixJQUFJLENBQ0gsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDbEMsQ0FBQztJQUNOLENBQUM7OzJHQXBWVSxjQUFjOytHQUFkLGNBQWMsY0FGYixNQUFNOzJGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHttZXJnZU1hcCwgbWFwLCB0YXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1V0aWxzfSBmcm9tICcuLi8uLi91dGlsL3V0aWxzJztcbmltcG9ydCB7QmFja2VuZFNlcnZpY2V9IGZyb20gJy4uL2JhY2tlbmQvYmFja2VuZC5zZXJ2aWNlJztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge09iamVjdFR5cGV9IGZyb20gJy4uLy4uL21vZGVsL29iamVjdC10eXBlLm1vZGVsJztcbmltcG9ydCB7UHJlcGFyZWRJdGVtLCBQcmVwYXJlZEl0ZW1UZW1wbGF0ZX0gZnJvbSAnLi4vLi4vbW9kZWwvcHJlcGFyZWQtaXRlbS5tb2RlbCc7XG5pbXBvcnQge1VwbG9hZFNlcnZpY2V9IGZyb20gJy4uL3VwbG9hZC91cGxvYWQuc2VydmljZSc7XG5pbXBvcnQge1VwbG9hZFRhcmdldH0gZnJvbSAnLi4vLi4vbW9kZWwvdXBsb2FkLXRhcmdldC5tb2RlbCc7XG5pbXBvcnQge1VwbG9hZEZpbGVJdGVtfSBmcm9tICcuLi8uLi9tb2RlbC91cGxvYWQtZmlsZS1pdGVtLm1vZGVsJztcbmltcG9ydCB7SVByZXBhcmVDaGlsZFR5cGVzfSBmcm9tICcuL29iamVjdFR5cGVzLmludGVyZmFjZSc7XG5cbi8qKlxuICogQGlnbm9yZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFByZXBhcmVkUG9zdFBhcmFtIHtcbiAgcGFyZW50SWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIGZsYWcgaW5kaWNhdGluZyB3aGV0aGVyIG9yIG5vdCB0byBjcmVhdGUgb25lIFByZXBhcmVkSXRlbSB1c2luZyBtdWx0aXBsZSBmaWxlcyB1cGxvYWRlZCAoZmFsc2UpXG4gICAqIG9yIGNyZWF0aW5nIGEgUHJlcGFyZWRJdGVtIGZvciBlYWNoIGZpbGUgcG9zdGVkIHRvIHRoZSBVUkwgKHRydWUpXG4gICAqL1xuICBjcmVhdGVNYW55PzogYm9vbGVhbjtcbiAgY2hpbGRUeXBlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbGxlY3Rpb24gb2YgUHJlcGFyZSBTZXJ2aWNlc1xuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBQcmVwYXJlU2VydmljZSB7XG5cbiAgcHJpdmF0ZSBwcmVwYXJlZEl0ZW1zOiBQcmVwYXJlZEl0ZW1bXTtcbiAgcHJpdmF0ZSBwcmVwYXJlZEl0ZW1zU291cmNlID0gbmV3IFJlcGxheVN1YmplY3Q8UHJlcGFyZWRJdGVtW10+KDEpO1xuICBwdWJsaWMgcHJlcGFyZWRJdGVtcyQ6IE9ic2VydmFibGU8UHJlcGFyZWRJdGVtW10+ID0gdGhpcy5wcmVwYXJlZEl0ZW1zU291cmNlLmFzT2JzZXJ2YWJsZSgpO1xuXG4gIHByaXZhdGUgcHJlcGFyZWRJdGVtQ291bnQ6IG51bWJlcjtcbiAgcHJpdmF0ZSBwcmVwYXJlZEl0ZW1Db3VudFNvdXJjZSA9IG5ldyBSZXBsYXlTdWJqZWN0PG51bWJlcj4oMSk7XG4gIHB1YmxpYyBwcmVwYXJlZEl0ZW1Db3VudCQ6IE9ic2VydmFibGU8bnVtYmVyPiA9IHRoaXMucHJlcGFyZWRJdGVtQ291bnRTb3VyY2UuYXNPYnNlcnZhYmxlKCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBiYWNrZW5kOiBCYWNrZW5kU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSB1cGxvYWRTZXJ2aWNlOiBVcGxvYWRTZXJ2aWNlKSB7XG4gIH1cblxuICAvKipcbiAgICogUHVibGljIEZldGNoIFByZXBhcmUgaXRlbXNcbiAgICovXG4gIHJlZnJlc2hQcmVwYXJlZEl0ZW1zQ291bnQoKSB7XG4gICAgdGhpcy5mZXRjaFByZXBhcmVkSXRlbXNDb3VudCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoZXMgdGhlIG51bWJlciBvZiBwcmVwYXJlZCBpdGVtcyBmb3IgdGhlIGN1cnJlbnQgdXNlci5cbiAgICovXG4gIHByaXZhdGUgZmV0Y2hQcmVwYXJlZEl0ZW1zQ291bnQoKSB7XG4gICAgdGhpcy5iYWNrZW5kLmdldEpzb24oJy9wcmVwYXJlL3N0YXRlJylcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlcykgPT4gcmVzLmNvdW50KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICAgIHRoaXMucHJlcGFyZWRJdGVtQ291bnQgPSByZXM7XG4gICAgICAgIHRoaXMucHJlcGFyZWRJdGVtQ291bnRTb3VyY2UubmV4dCh0aGlzLnByZXBhcmVkSXRlbUNvdW50KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBwcmVwYXJlZCBpdGVtIG9uIHRoZSBiYWNrZWQgc2lkZS5cbiAgICpcbiAgICogQHBhcmFtIHBhcmVudElkIFRoZSBJRCBvZiB0aGUgcGFyZW50IGRtcyBvYmplY3QgdG8gYWRkIHRoZSBwcmVwYXJlZCBpdGVtIHRvXG4gICAqIEBwYXJhbSBjaGlsZFR5cGUgVGhlIHR5cGUgb2Ygb2JqZWN0IHRvIGJlIGNyZWF0ZWRcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZTxhbnk+XG4gICAqL1xuICBpID0gMDtcbiAgcHVibGljIGNyZWF0ZVByZXBhcmVkSXRlbShwYXJlbnRJZDogc3RyaW5nLCBjaGlsZFR5cGU/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuY29uc29sZS5sb2coJ3RpY2snKTtcbnRoaXMuaSsrO1xuXG4gICAgcmV0dXJuIHRoaXMuYmFja2VuZFxuICAgICAgLnBvc3QodGhpcy5jcmVhdGVQcmVwYXJlZEl0ZW1Qb3N0VXJsKHtcbiAgICAgICAgcGFyZW50SWQ6IHBhcmVudElkLFxuICAgICAgICBjaGlsZFR5cGU6IGNoaWxkVHlwZSA/IGNoaWxkVHlwZSA6IG51bGxcbiAgICAgIH0pLCB7fSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKCkgPT4gdGhpcy5nZXRQcmVwYXJlZEl0ZW1zJCgpKVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBAcGFyYW0gcHJlcGFyZWRJdGVtSWRcbiAgICogQHBhcmFtIGRhdGFcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZTxhbnk+XG4gICAqL1xuICBwdWJsaWMgdXBkYXRlUHJlcGFyZWRJdGVtSW5kZXhEYXRhKHByZXBhcmVkSXRlbUlkLCBkYXRhKSB7XG4gICAgcmV0dXJuIHRoaXMuYmFja2VuZFxuICAgICAgLnB1dCgnL3ByZXBhcmUvJyArIHByZXBhcmVkSXRlbUlkLCBkYXRhKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgoKSA9PiB0aGlzLmdldFByZXBhcmVkSXRlbXMkKCkpXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYW4gVVJMIGZvciBjcmVhdGluZyBhIFByZXBhcmVkSXRlbS5cbiAgICpcbiAgICogQHBhcmFtIHBhcmFtcyBQYXJhbXMgZm9yIGdlbmVyYXRpbmcgYXBwcm9wcmlhdGUgdXJpLlxuICAgKiBAcmV0dXJucyBzdHJpbmcgQSBQT1NUIFVSTCBmb3IgY3JlYXRpbmcgUHJlcGFyZWRJdGVtc1xuICAgKi9cbiAgcHVibGljIGNyZWF0ZVByZXBhcmVkSXRlbVBvc3RVcmwocGFyYW1zOiBQcmVwYXJlZFBvc3RQYXJhbSk6IHN0cmluZyB7XG5cbiAgICBsZXQgdXJsID0gcGFyYW1zLmNyZWF0ZU1hbnkgPyAnL3ByZXBhcmUvY3JlYXRlbWFueScgOiAnL3ByZXBhcmUvY3JlYXRlJztcbiAgICBpZiAocGFyYW1zKSB7XG4gICAgICB1cmwgPSBVdGlscy5idWlsZFVyaSh1cmwsIHBhcmFtcyk7XG4gICAgfVxuICAgIHJldHVybiB1cmw7XG4gIH1cblxuICAvKipcbiAgICogUmV0cmlldmVzIGEgbGlzdCBvZiB0aGUgdXNlcnMgcHJlcGFyZWQgaXRlbXMuXG4gICAqXG4gICAqIEBwYXJhbSBub0Zvcm1zIElmIHNldCB0byB0cnVlIHRoZSBwcmVwYXJlZCBpdGVtcyB3aWxsIGJlIGZldGNoZWQgd2l0aG91dCB0aGUgZm9ybSB3aGljaCBpcyBmYXN0ZXJcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZTxQcmVwYXJlZEl0ZW1bXT4gQSBjb2xsZWN0aW9uIG9mIHByZXBhcmVkIGl0ZW0gb2JqZWN0c1xuICAgKi9cbiAgcHVibGljIGdldFByZXBhcmVkSXRlbXMkKG5vRm9ybXM/OiBib29sZWFuKTogT2JzZXJ2YWJsZTxQcmVwYXJlZEl0ZW1bXT4ge1xuICAgIHRoaXMuZmV0Y2hQcmVwYXJlZEl0ZW1zKG5vRm9ybXMpLnN1YnNjcmliZSgpO1xuICAgIHJldHVybiB0aGlzLnByZXBhcmVkSXRlbXMkO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHJpZXZlIFByZXBhcmVJdGVtcyBhbmQgZm9ybSB0aGVtXG4gICAqXG4gICAqIEBwYXJhbSBib29sZWFuIG5vRm9ybXNcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZTxQcmVwYXJlZEl0ZW1bXT5cbiAgICovXG4gIHByaXZhdGUgZmV0Y2hQcmVwYXJlZEl0ZW1zKG5vRm9ybXM/OiBib29sZWFuKTogT2JzZXJ2YWJsZTxQcmVwYXJlZEl0ZW1bXT4ge1xuICAgIGxldCB1cmkgPSAobm9Gb3JtcykgPyAnL3ByZXBhcmUnIDogJy9wcmVwYXJlP2Zvcm09dHJ1ZSc7XG4gICAgcmV0dXJuIHRoaXMuYmFja2VuZFxuICAgICAgLmdldEpzb24odXJpKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzOiBhbnkpID0+IHJlcy5tYXAoaSA9PiBuZXcgUHJlcGFyZWRJdGVtKGkpKSksXG4gICAgICAgIHRhcCgoKSA9PiB0aGlzLmZldGNoUHJlcGFyZWRJdGVtc0NvdW50KCkpLFxuICAgICAgICB0YXAoKHByZXBhcmVkSXRlbXM6IFByZXBhcmVkSXRlbVtdKSA9PiB0aGlzLnByZXBhcmVkSXRlbXNTb3VyY2UubmV4dChwcmVwYXJlZEl0ZW1zLnNvcnQoVXRpbHMuc29ydFZhbHVlcygnY3JlYXRlZCcsICdkZXNjJykpKSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyBhIHByZXBhcmVkIGl0ZW0uXG4gICAqXG4gICAqIEBwYXJhbSBwcmVwYXJlZEl0ZW1JZCBJRCBvZiB0aGUgaXRlbSB0byBiZSByZW1vdmVkXG4gICAqIEByZXR1cm5zIE9ic2VydmFibGU8YW55PiBTZXJ2ZXIgcmVzcG9uc2VcbiAgICovXG4gIGRlbGV0ZVByZXBhcmVkSXRlbShwcmVwYXJlZEl0ZW1JZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5iYWNrZW5kXG4gICAgICAuZGVsKGAvcHJlcGFyZS8ke3ByZXBhcmVkSXRlbUlkfWApXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKCgpID0+IHRoaXMuZ2V0UHJlcGFyZWRJdGVtcyQoKSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2hlcyBhIGxpc3Qgb2Ygb2JqZWN0IHR5cGVzIGFsbG93ZWQgdG8gYmUgcGxhY2VkIGRpcmVjdGx5IGJlbG93IHJvb3QuXG4gICAqXG4gICAqIEByZXR1cm5zIE9ic2VydmFibGU8T2JqZWN0VHlwZVtdPiBBIGxpc3Qgb2Ygc3VwcG9ydGVkIG9iamVjdCB0eXBlc1xuICAgKi9cbiAgcHVibGljIGdldFByZXBhcmVSb290VHlwZXMoKTogT2JzZXJ2YWJsZTxPYmplY3RUeXBlW10+IHtcbiAgICByZXR1cm4gdGhpcy5iYWNrZW5kXG4gICAgICAuZ2V0VmlhVGVtcENhY2hlKCcvcHJlcGFyZS90eXBlcycpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChyZXMpID0+IHJlcy50eXBlcy5tYXAoKHR5cGUpID0+IG5ldyBPYmplY3RUeXBlKHR5cGUpKSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2hlcyBhIGxpc3Qgb2YgYWxsb3dlZCBjaGlsZCBvYmplY3QgdHlwZXMgZm9yIGEgc2VsZWN0ZWQgcGFyZW50LlxuICAgKlxuICAgKiBAcGFyYW0gcGFyZW50SWQgVGhlIGlkIG9mIHRoZSBwYXJlbnQgZG1zIG9iamVjdCAoY29udGV4dCBmb2xkZXIpXG4gICAqIEBwYXJhbSB3aXRoQ29udGVudE9ubHkgSWYgc2V0IHRvIHRydWUgb25seSBjaGlsZCB0eXBlcywgdGhhdCBzdXBwb3J0IGNvbnRlbnQgYXJlIHJldHVybmVkLlxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlPElQcmVwYXJlQ2hpbGRUeXBlcz4gQSBsaXN0IG9mIHN1cHBvcnRlZCBvYmplY3QgdHlwZXNcbiAgICovXG4gIHB1YmxpYyBnZXRQcmVwYXJlQ2hpbGRUeXBlcyhwYXJlbnRJZDogc3RyaW5nLCB3aXRoQ29udGVudE9ubHk/OiBib29sZWFuKTogT2JzZXJ2YWJsZTxJUHJlcGFyZUNoaWxkVHlwZXM+IHtcbiAgICBjb25zdCBwYXJhbXMgPSBwYXJlbnRJZCA/IHtwYXJlbnRJZCwgd2l0aGNvbnRlbnQ6IHdpdGhDb250ZW50T25seX0gOiB7d2l0aGNvbnRlbnQ6IHdpdGhDb250ZW50T25seX1cbiAgICBjb25zdCB1cmkgPSBVdGlscy5idWlsZFVyaSgnL3ByZXBhcmUvdHlwZXMnLCBwYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmJhY2tlbmRcbiAgICAgIC5nZXRWaWFUZW1wQ2FjaGUodXJpKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcChyZXMgPT4gKHtwYXJlbnQ6IHJlcy5wYXJlbnQsIHR5cGVzOiByZXMudHlwZXMubWFwKCh0eXBlKSA9PiBuZXcgT2JqZWN0VHlwZSh0eXBlKSl9KSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogZmV0Y2ggdGhlIHByZXZpZXcgdXJpIGZvciBhIHByZXBhcmVkIGl0ZW1cbiAgICpcbiAgICogQHBhcmFtIGlkIFRoZSBpZCBvZiB0aGUgcHJlcGFyZWQgaXRlbVxuICAgKiBAcGFyYW0gaW5kZXggV2hlbiBhIHByZXBhcmVkIGl0ZW0gY29udGFpbnMgbW9yZSB0aGFuIG9uZSBjb250ZW50cywgdGhlIGluZGV4IHNwZWNpZmllcyB3aGljaCBjb250ZW50XG4gICAqIEBwYXJhbSByZW5kaXRpb24gVGFyZ2V0IHJlbmRpdGlvbiAoUERGKVxuICAgKiB0byByZXRyaWV2ZSB0aGUgcHJldmlldyB1cmkgZm9yXG4gICAqIEByZXR1cm5zIHN0cmluZyBQcmV2aWV3IHVyaVxuICAgKi9cbiAgcHVibGljIGdldFByZXZpZXdVcmkoaWQ6IHN0cmluZywgaW5kZXg/OiBudW1iZXIsIHJlbmRpdGlvbj86IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFV0aWxzLmJ1aWxkVXJpKGAke3RoaXMuYmFja2VuZC5nZXRTZXJ2aWNlQmFzZSgpfS9wcmVwYXJlLyR7aWR9L2NvbnRlbnRgLCB7cmVuZGl0aW9uLCBpbmRleH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIHByZXBhcmVkIGl0ZW1zIHRhcmdldCBvYmplY3QgdHlwZS5cbiAgICpcbiAgICogQHBhcmFtIG9iamVjdFR5cGUgVGhlIHRhcmdldCBvYmplY3QgdHlwZXMgbmFtZVxuICAgKiBAcGFyYW0gcHJlcGFyZWRJdGVtSWQgVGhlIGlkIG9mIHRoZSBwcmVwYXJlZCBpdGVtIHRvIHNldCB0aGUgdHlwZSBmb3JcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZTxQcmVwYXJlZEl0ZW0+IFRoZSB1cGRhdGVkIHByZXBhcmVkIGl0ZW1cbiAgICovXG4gIHB1YmxpYyB1cGRhdGVDaGlsZFR5cGUob2JqZWN0VHlwZTogc3RyaW5nLCBwcmVwYXJlZEl0ZW1JZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxQcmVwYXJlZEl0ZW0+IHtcbiAgICByZXR1cm4gdGhpcy5iYWNrZW5kXG4gICAgICAucHV0KGAvcHJlcGFyZS8ke3ByZXBhcmVkSXRlbUlkfS8ke29iamVjdFR5cGV9P2Zvcm09dHJ1ZSZjb250ZW50bWV0YT10cnVlYClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAocmVzID0+IG5ldyBQcmVwYXJlZEl0ZW0ocmVzKSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgdGVtcGxhdGUgdG8gYSBwcmVwYXJlZCBpdGVtLlxuICAgKlxuICAgKiBAcGFyYW0gcHJlcGFyZWRJdGVtSWQgVGhlIGlkIG9mIHRoZSBwcmVwYXJlZCBpdGVtIHRvIGFkZCB0aGUgdGVtcGxhdGUgdG9cbiAgICogQHBhcmFtIHRlbXBsYXRlSWQgVGhlIGlkIG9mIHRoZSB0ZW1wbGF0ZSB0byBiZSBhZGRlZFxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlPFByZXBhcmVkSXRlbT4gIFRoZSB1cGRhdGVkIHByZXBhcmVkIGl0ZW1cbiAgICovXG4gIHB1YmxpYyBhZGRUZW1wbGF0ZShwcmVwYXJlZEl0ZW1JZCwgdGVtcGxhdGVJZCk6IE9ic2VydmFibGU8UHJlcGFyZWRJdGVtPiB7XG4gICAgcmV0dXJuIHRoaXMuYmFja2VuZFxuICAgICAgLnB1dChgL3ByZXBhcmUvJHtwcmVwYXJlZEl0ZW1JZH0vdGVtcGxhdGU/dGVtcGxhdGVpZD0ke3RlbXBsYXRlSWR9YClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAocmVzID0+IG5ldyBQcmVwYXJlZEl0ZW0ocmVzKSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRmV0Y2hlcyBhIGxpc3Qgb2YgYXZhaWxhYmxlIHRlbXBsYXRlcyBmb3IgYSBnaXZlbiBvYmplY3QgdHlwZS5cbiAgICpcbiAgICogQHBhcmFtIE9ic2VydmFibGU8UHJlcGFyZWRJdGVtVGVtcGxhdGVbXT4gb2JqZWN0VHlwZU5hbWVcbiAgICovXG4gIHB1YmxpYyBnZXRUZW1wbGF0ZXMob2JqZWN0VHlwZU5hbWU6IHN0cmluZyk6IE9ic2VydmFibGU8UHJlcGFyZWRJdGVtVGVtcGxhdGVbXT4ge1xuICAgIHJldHVybiB0aGlzLmJhY2tlbmRcbiAgICAgIC5nZXRKc29uKCcvdGVtcGxhdGUvbGlzdD90eXBlPScgKyBvYmplY3RUeXBlTmFtZSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlczogYW55KSA9PiByZXMgYXMgUHJlcGFyZWRJdGVtVGVtcGxhdGVbXSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB1cmwgb2YgYSB0ZW1wbGF0ZSBwcmV2aWV3XG4gICAqXG4gICAqIEBwYXJhbSBpZCBUZW1wbGF0ZSBJRFxuICAgKiBAcGFyYW0gcmVuZGl0aW9uIFRhcmdldCByZW5kaXRpb24gKFBERilcbiAgICogQHJldHVybnMgc3RyaW5nIFRoZSB0ZW1wbGF0ZSBwcmV2aWV3IHVybC5cbiAgICovXG4gIHB1YmxpYyBnZXRUZW1wbGF0ZVByZXZpZXdVcmkoaWQsIHJlbmRpdGlvbj86IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFV0aWxzLmJ1aWxkVXJpKGAke3RoaXMuYmFja2VuZC5nZXRTZXJ2aWNlQmFzZSgpfS90ZW1wbGF0ZS8ke2lkfS9jb250ZW50YCwge3JlbmRpdGlvbn0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbW1pdCBhIHByZXBhcmVkIGl0ZW0uIFRoaXMgd2lsbCBjcmVhdGUgYW4gYWN0dWFsIGRtcyBvYmplY3QuXG4gICAqIFVwZGF0ZXMgdGhlIHByZXBhcmVkIGNyZWF0aW9uIG9iamVjdCB0YXJnZXQgdHlwZVxuICAgKlxuICAgKiBAcGFyYW0gcHJlcGFyZWRJdGVtSWQgSUQgb2YgdGhlIHByZXBhcmVkIGl0ZW1cbiAgICogQHBhcmFtIHByZXBhcmVkSXRlbVR5cGUgTmFtZSBvZiB0aGUgcHJlcGFyZWQgaXRlbXMgdGFyZ2V0IG9iamVjdCB0eXBlXG4gICAqIEBwYXJhbSBwcmVwYXJlZEl0ZW1EYXRhIE9iamVjdCBob2xkaW5nIGRhdGEgb2YgdGhlIHByZXBhcmVkIGl0ZW1cbiAgICogQHJldHVybnMgVGhlIGlkIG9mIHRoZSBjcmVhdGVkIGRtcyBvYmplY3RcbiAgICovXG4gIHB1YmxpYyBjb21taXRQcmVwYXJlZEl0ZW0ocHJlcGFyZWRJdGVtSWQsIHByZXBhcmVkSXRlbVR5cGUsIHByZXBhcmVkSXRlbURhdGEpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmJhY2tlbmRcbiAgICAgIC5wdXQoYC9wcmVwYXJlLyR7cHJlcGFyZWRJdGVtSWR9LyR7cHJlcGFyZWRJdGVtVHlwZX1gKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1lcmdlTWFwKCgpID0+IHRoaXMuYmFja2VuZC5wb3N0KGAvcHJlcGFyZS9jb21taXQvJHtwcmVwYXJlZEl0ZW1JZH1gLCBwcmVwYXJlZEl0ZW1EYXRhKSksXG4gICAgICAgIHRhcCgoKSA9PiB0aGlzLmdldFByZXBhcmVkSXRlbXMkKCkpLFxuICAgICAgICBtYXAocmVzID0+IHJlcy5pZClcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogVXBsb2FkIENvbnRlbnRcbiAgICpcbiAgICogQHBhcmFtIHN0cmluZyBwcmVwYXJlZEl0ZW1JZFxuICAgKiBAcGFyYW0gRmlsZSBmaWxlXG4gICAqIEByZXR1cm5zIE9ic2VydmFibGU8YW55PlxuICAgKi9cbiAgdXBsb2FkQ29udGVudChwcmVwYXJlZEl0ZW1JZDogc3RyaW5nLCBmaWxlOiBGaWxlKSB7XG4gICAgY29uc3QgdXJpID0gYCR7dGhpcy5iYWNrZW5kLmdldEJhc2VXaXRoQ29udGV4dCh0aGlzLmJhY2tlbmQuZ2V0U2VydmljZUJhc2UoKSl9L3ByZXBhcmUvJHtwcmVwYXJlZEl0ZW1JZH0vY29udGVudC5qc29uP2Zvcm09dHJ1ZSZjb250ZW50bWV0YT10cnVlYDtcbiAgICByZXR1cm4gdGhpcy51cGxvYWRTZXJ2aWNlXG4gICAgICAudXBsb2FkKHVyaSwgW2ZpbGVdKVxuICAgICAgLnBpcGUoXG4gICAgICAgIC8vIHRhcCgoKSA9PiB0aGlzLmdldFByZXBhcmVkSXRlbXMkKCkpXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwbG9hZHMgZmlsZXMgdG8gYW4gdXBsb2FkIHRhcmdldC5cbiAgICpcbiAgICogQHBhcmFtIHVwbG9hZFRhcmdldCBUaGUgdXBsb2FkIHRhcmdldCB0byB1cGxvYWQgZmlsZXMgdG9cbiAgICogQHBhcmFtIHVwbG9hZEZpbGVzIEZpbGVzIHRvIGJlIHVwbG9hZGVkXG4gICAqIEBwYXJhbSB1c2VCYXRjaFVwbG9hZCBGbGFnIGluZGljYXRpbmcgd2hldGhlciBvciBub3QgdG8gdXNlIGJhdGNoIHByb2Nlc3Npbmcgb24gdGhlIGJhY2tlbmQgc2lkZVxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlPGFueT5cbiAgICovXG4gIHVwbG9hZFRvVGFyZ2V0KHVwbG9hZFRhcmdldDogVXBsb2FkVGFyZ2V0LCB1cGxvYWRGaWxlczogVXBsb2FkRmlsZUl0ZW1bXSwgdXNlQmF0Y2hVcGxvYWQ/OiBib29sZWFuKTogT2JzZXJ2YWJsZTxhbnk+IHtcblxuICAgIGNvbnN0IGZpbGVzID0gdXBsb2FkRmlsZXMubWFwKGYgPT4gZi5fZmlsZSk7XG4gICAgcmV0dXJuIHRoaXMudXBsb2FkU2VydmljZVxuICAgICAgLnVwbG9hZCh0aGlzLmdldFVwbG9hZFRhcmdldCh1cGxvYWRUYXJnZXQsIHVzZUJhdGNoVXBsb2FkKSwgZmlsZXMpXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKCgpID0+IHRoaXMuZ2V0UHJlcGFyZWRJdGVtcyQoKSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSB1cmkgdG8gcG9zdCBmaWxlcyB0byBiYXNlZCBvbiB0aGUgdXBsb2FkIHRhcmdldC5cbiAgICpcbiAgICogQHBhcmFtIHVwbG9hZFRhcmdldCBUaGUgdGFyZ2V0IHRvIHVwbG9hZCBmaWxlcyB0b1xuICAgKiBAcGFyYW0gdXNlQmF0Y2hVcGxvYWQgRmxhZyBpbmRpY2F0aW5nIHdoZXRoZXIgb3Igbm90IHRvIHVwbG9hZCBhbGwgZmlsZXMgaW4gYSBzaW5nbGUgcG9zdFxuICAgKiBAcmV0dXJucyBzdHJpbmcgdGhlIHVyaVxuICAgKi9cbiAgcHJpdmF0ZSBnZXRVcGxvYWRUYXJnZXQodXBsb2FkVGFyZ2V0OiBVcGxvYWRUYXJnZXQsIHVzZUJhdGNoVXBsb2FkPzogYm9vbGVhbik6IHN0cmluZyB7XG4gICAgbGV0IHVyaTtcblxuICAgIGlmICh1cGxvYWRUYXJnZXQudHlwZSA9PT0gVXBsb2FkVGFyZ2V0LlJPT1QpIHtcbiAgICAgIC8qKlxuICAgICAgICogdXBsb2FkIHRvIGdlbmVyYWwgZmlsaW5nIGxvY2F0aW9uXG4gICAgICAgKlxuICAgICAgICogQHR5cGUgc3RyaW5nXG4gICAgICAgKi9cbiAgICAgIHVyaSA9IHRoaXMuYmFja2VuZC5nZXRCYXNlV2l0aENvbnRleHQodGhpcy5iYWNrZW5kLmdldFNlcnZpY2VCYXNlKCkpICsgdGhpcy5jcmVhdGVQcmVwYXJlZEl0ZW1Qb3N0VXJsKHtcbiAgICAgICAgICBwYXJlbnRJZDogbnVsbCxcbiAgICAgICAgICBjcmVhdGVNYW55OiAhdXNlQmF0Y2hVcGxvYWRcbiAgICAgICAgfVxuICAgICAgKTtcblxuICAgIH0gZWxzZSBpZiAodXBsb2FkVGFyZ2V0LnR5cGUgPT09IFVwbG9hZFRhcmdldC5PQkpFQ1QpIHtcbiAgICAgIC8qKlxuICAgICAgICogdXBsb2FkIHRvIGRtcyBvYmplY3QsIG1lYW5zIGFkZGluZyBvciByZXBsYWNpbmcgY29udGVudCBmaWxlXG4gICAgICAgKi9cbiAgICAgIGNvbnN0IHtyZWZlcmVuY2VPYmplY3R9ID0gdXBsb2FkVGFyZ2V0O1xuICAgICAgdXJpID0gYCR7dGhpcy5iYWNrZW5kLmdldEJhc2VXaXRoQ29udGV4dCh0aGlzLmJhY2tlbmQuZ2V0U2VydmljZUJhc2UoKSl9L2Rtcy8ke3JlZmVyZW5jZU9iamVjdC5pZH0vY29udGVudHM/dHlwZT0ke3JlZmVyZW5jZU9iamVjdC50eXBlLm5hbWV9YDtcblxuICAgIH0gZWxzZSBpZiAodXBsb2FkVGFyZ2V0LnR5cGUgPT09IFVwbG9hZFRhcmdldC5DT05URVhUIHx8IHVwbG9hZFRhcmdldC50eXBlID09PSBVcGxvYWRUYXJnZXQuQ09OVEVYVF9UUkVFKSB7XG4gICAgICAvKipcbiAgICAgICAqIHVwbG9hZCB0byBjb250ZXh0IGZvbGRlciwgbWVhbnMgYWRkaW5nIGEgbmV3IGRtcyBvYmplY3QgdG8gYSBzcGVjaWZpY1xuICAgICAgICogY29udGV4dCBmb2xkZXIgLi4uXG4gICAgICAgKiAuLi4gaWYgd2UgZ290IGEgc3ViRm9sZGVyIChub2RlIGZyb20gdGhlIGNvbnRleHQgdHJlZSkgc2V0IHVwIHdlJ2xsIGFkZCB0aGF0IHRvb1xuICAgICAgICpcbiAgICAgICAqIEB0eXBlIHN0cmluZ1xuICAgICAgICovXG4gICAgICB1cmkgPSB0aGlzLmJhY2tlbmQuZ2V0QmFzZVdpdGhDb250ZXh0KHRoaXMuYmFja2VuZC5nZXRTZXJ2aWNlQmFzZSgpKSArIHRoaXMuY3JlYXRlUHJlcGFyZWRJdGVtUG9zdFVybCh7XG4gICAgICAgIHBhcmVudElkOiB1cGxvYWRUYXJnZXQucmVmZXJlbmNlT2JqZWN0LmlkLFxuICAgICAgICBjcmVhdGVNYW55OiAhdXNlQmF0Y2hVcGxvYWQsXG4gICAgICAgIGNoaWxkVHlwZTogdXBsb2FkVGFyZ2V0LnN1YkZvbGRlciAmJiB1cGxvYWRUYXJnZXQuc3ViRm9sZGVyLmRhdGEudHlwZSA/IHVwbG9hZFRhcmdldC5zdWJGb2xkZXIuZGF0YS50eXBlIDogbnVsbFxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiB1cmk7XG4gIH1cblxuICAvKipcbiAgICogRGVsZXRlcyBhIHByZXBhcmVkIGNyZWF0aW9uIG9iamVjdCBjb250ZW50IGVsZW1lbnQgYnkgaW5kZXggb3IgdGhlIGNvbXBsZXRlIGNvbnRlbnQuXG4gICAqIElmIHlvdSBwcm92aWRlIGFuIGluZGV4IHRoZSBjb250ZW50IGNvbnNpc3RzIG9ubHkgb2Ygb25lIGVsZW1lbnQsXG4gICAqIHRoZSBjb250ZW50IGlzIGNvbXBsZXRlbHkgcmVtb3ZlZCBmcm9tIHRoZSBwcmVwYXJlZCBjcmVhdGlvbiBvYmplY3QuXG4gICAqXG4gICAqIEBwYXJhbSBwcmVwYXJlZEl0ZW1JZCBJRCBvZiB0aGUgaXRlbSB3aXRoIHRoZSBjb250ZW50IHRvIGJlIHJlbW92ZWRcbiAgICogQHBhcmFtIGluZGV4IFBhcmFtZXRlciB0aGF0IGRldGVybWluZXMgd2hpY2ggY29udGVudCBlbGVtZW50IHNob3VsZCBiZSBkZWxldGVkLlxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlPFByZXBhcmVkSXRlbT4gVGhlIHVwZGF0ZWQgcHJlcGFyZWQgaXRlbVxuICAgKi9cbiAgcHVibGljIGRlbGV0ZVByZXBhcmVkSXRlbUNvbnRlbnQocHJlcGFyZWRJdGVtSWQ6IHN0cmluZywgaW5kZXg/OiBudW1iZXIpOiBPYnNlcnZhYmxlPFByZXBhcmVkSXRlbT4ge1xuICAgIGNvbnN0IHVybCA9IGAvcHJlcGFyZS8ke3ByZXBhcmVkSXRlbUlkfS9jb250ZW50YCArIChpbmRleCAhPT0gdW5kZWZpbmVkID8gYD9pbmRleD0ke2luZGV4fWAgOiAnJyk7XG4gICAgcmV0dXJuIHRoaXMuYmFja2VuZFxuICAgICAgLmRlbCh1cmwpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKHJlcyA9PiBuZXcgUHJlcGFyZWRJdGVtKHJlcykpXG4gICAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpbHRlci10eXBlLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VvLXNkay9jb3JlL3NyYy9saWIvc2VydmljZS9zZWFyY2gvc2VhcmNoLWZpbHRlci10eXBlLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAaWdub3JlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VhcmNoRmlsdGVyVHlwZSB7XG4gIG11bHRpc2VsZWN0OiBib29sZWFuO1xuICB0YWJsZTogYm9vbGVhbjtcbiAgZGF0ZXRpbWU6IGJvb2xlYW47XG4gIHdpdGh0aW1lOiBib29sZWFuO1xufVxuIl19
|