@tilde-nlp/ngx-common 6.1.93 → 7.0.1
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/fesm2022/tilde-nlp-ngx-common.mjs +153 -146
- package/fesm2022/tilde-nlp-ngx-common.mjs.map +1 -1
- package/package.json +5 -7
- package/styles/tilde-theme.scss +2 -1
- package/web-components/3rdpartylicenses.txt +22 -22
- package/web-components/index.html +2 -2
- package/web-components/main.js +31 -14
- package/web-components/polyfills.js +3 -3
- package/web-components/prerendered-routes.json +3 -0
- package/web-components/styles.css +1 -1
- package/esm2022/lib/close-button/close-button.component.mjs +0 -53
- package/esm2022/lib/close-button/close-button.module.mjs +0 -37
- package/esm2022/lib/close-button/index.mjs +0 -3
- package/esm2022/lib/company-product/company-product.component.mjs +0 -34
- package/esm2022/lib/company-product/company-product.module.mjs +0 -23
- package/esm2022/lib/company-product/index.mjs +0 -3
- package/esm2022/lib/confirmation-modal/confirmation-modal.component.mjs +0 -78
- package/esm2022/lib/confirmation-modal/confirmation-modal.module.mjs +0 -22
- package/esm2022/lib/confirmation-modal/index.mjs +0 -6
- package/esm2022/lib/confirmation-modal/models/confirmation-body.model.mjs +0 -2
- package/esm2022/lib/confirmation-modal/models/confirmation.enum.mjs +0 -6
- package/esm2022/lib/confirmation-modal/services/confirmation.service.mjs +0 -25
- package/esm2022/lib/confirmation-modal/services/index.mjs +0 -2
- package/esm2022/lib/constants/error-codes.const.mjs +0 -5
- package/esm2022/lib/constants/index.mjs +0 -4
- package/esm2022/lib/constants/last-used-system-local-storage-key.const.mjs +0 -6
- package/esm2022/lib/constants/screen-size.const.mjs +0 -11
- package/esm2022/lib/core/auth/addon.model.mjs +0 -2
- package/esm2022/lib/core/auth/auth-subscription.model.mjs +0 -2
- package/esm2022/lib/core/auth/index.mjs +0 -5
- package/esm2022/lib/core/auth/jwt-token.model.mjs +0 -2
- package/esm2022/lib/core/auth/subscription-plan.enum.mjs +0 -18
- package/esm2022/lib/core/index.mjs +0 -4
- package/esm2022/lib/core/localization/index.mjs +0 -3
- package/esm2022/lib/core/localization/missing-translation-handler.service.mjs +0 -21
- package/esm2022/lib/core/localization/select-language-dialog-component/index.mjs +0 -2
- package/esm2022/lib/core/localization/select-language-dialog-component/select-language-dialog.component.mjs +0 -109
- package/esm2022/lib/core/title-strategy/custom-title-strategy.provider.mjs +0 -9
- package/esm2022/lib/core/title-strategy/custom-title-strategy.service.mjs +0 -41
- package/esm2022/lib/core/title-strategy/index.mjs +0 -3
- package/esm2022/lib/directives/click-outside/click-outside.directive.mjs +0 -31
- package/esm2022/lib/directives/click-outside/click-outside.module.mjs +0 -25
- package/esm2022/lib/directives/click-outside/index.mjs +0 -3
- package/esm2022/lib/directives/drag-and-drop/drag-and-drop.directive.mjs +0 -66
- package/esm2022/lib/directives/drag-and-drop/drag-and-drop.module.mjs +0 -25
- package/esm2022/lib/directives/drag-and-drop/index.mjs +0 -3
- package/esm2022/lib/directives/index.mjs +0 -4
- package/esm2022/lib/directives/mat-button-loading/index.mjs +0 -3
- package/esm2022/lib/directives/mat-button-loading/mat-button-loading.directive.mjs +0 -65
- package/esm2022/lib/directives/mat-button-loading/mat-button-loading.module.mjs +0 -21
- package/esm2022/lib/extension-dialog/components/index.mjs +0 -2
- package/esm2022/lib/extension-dialog/components/open-extension-dialog/open-extension-dialog.component.mjs +0 -32
- package/esm2022/lib/extension-dialog/extension-dialog.component.mjs +0 -231
- package/esm2022/lib/extension-dialog/extension-dialog.module.mjs +0 -52
- package/esm2022/lib/extension-dialog/icons/file-types/excel.icon.mjs +0 -22
- package/esm2022/lib/extension-dialog/icons/file-types/index.mjs +0 -10
- package/esm2022/lib/extension-dialog/icons/file-types/interchange.icon.mjs +0 -6
- package/esm2022/lib/extension-dialog/icons/file-types/office-other.icon.mjs +0 -6
- package/esm2022/lib/extension-dialog/icons/file-types/other.icon.mjs +0 -6
- package/esm2022/lib/extension-dialog/icons/file-types/pdf.icon.mjs +0 -12
- package/esm2022/lib/extension-dialog/icons/file-types/powerpoint.icon.mjs +0 -10
- package/esm2022/lib/extension-dialog/icons/file-types/scanned.icon.mjs +0 -6
- package/esm2022/lib/extension-dialog/icons/file-types/web.icon.mjs +0 -6
- package/esm2022/lib/extension-dialog/icons/file-types/word.icon.mjs +0 -11
- package/esm2022/lib/extension-dialog/icons/index.mjs +0 -2
- package/esm2022/lib/extension-dialog/index.mjs +0 -6
- package/esm2022/lib/extension-dialog/models/enums/file-categories.enum.mjs +0 -9
- package/esm2022/lib/extension-dialog/models/enums/file-extensions.enum.mjs +0 -36
- package/esm2022/lib/extension-dialog/models/enums/file-type-icons.enum.mjs +0 -13
- package/esm2022/lib/extension-dialog/models/enums/file-types.enum.mjs +0 -13
- package/esm2022/lib/extension-dialog/models/enums/index.mjs +0 -5
- package/esm2022/lib/extension-dialog/models/index.mjs +0 -3
- package/esm2022/lib/extension-dialog/models/interfaces/config.mjs +0 -2
- package/esm2022/lib/extension-dialog/models/interfaces/dialog-data.model.mjs +0 -2
- package/esm2022/lib/extension-dialog/models/interfaces/index.mjs +0 -3
- package/esm2022/lib/extension-dialog/services/extension-dialog.service.mjs +0 -22
- package/esm2022/lib/extension-dialog/services/index.mjs +0 -2
- package/esm2022/lib/file-upload/file-upload.component.mjs +0 -254
- package/esm2022/lib/file-upload/file-upload.module.mjs +0 -51
- package/esm2022/lib/file-upload/index.mjs +0 -4
- package/esm2022/lib/file-upload/models/file-upload-error-type.enum.mjs +0 -8
- package/esm2022/lib/file-upload/models/file-upload-error.model.mjs +0 -2
- package/esm2022/lib/file-upload/models/file-upload.icon.mjs +0 -2
- package/esm2022/lib/file-upload/models/index.mjs +0 -3
- package/esm2022/lib/filter-bar/filter-bar.component.mjs +0 -409
- package/esm2022/lib/filter-bar/filter-bar.module.mjs +0 -72
- package/esm2022/lib/filter-bar/index.mjs +0 -4
- package/esm2022/lib/filter-bar/models/filter-bar-change-event.model.mjs +0 -2
- package/esm2022/lib/filter-bar/models/filter-bar-filter-item.model.mjs +0 -2
- package/esm2022/lib/filter-bar/models/filter-bar-filter-search.model.mjs +0 -2
- package/esm2022/lib/filter-bar/models/filter-bar-filter-single-selection.model.mjs +0 -2
- package/esm2022/lib/filter-bar/models/filter-bar-filter.model.mjs +0 -2
- package/esm2022/lib/filter-bar/models/filter-bar-settings.model.mjs +0 -2
- package/esm2022/lib/filter-bar/models/index.mjs +0 -5
- package/esm2022/lib/footer/footer.component.mjs +0 -143
- package/esm2022/lib/footer/footer.module.mjs +0 -35
- package/esm2022/lib/footer/index.mjs +0 -3
- package/esm2022/lib/global-message/global-message.component.mjs +0 -51
- package/esm2022/lib/global-message/index.mjs +0 -2
- package/esm2022/lib/helpers/auth-headers.helper.mjs +0 -19
- package/esm2022/lib/helpers/conversion.helper.mjs +0 -11
- package/esm2022/lib/helpers/custom-paginator-internatioinalization.helper.mjs +0 -56
- package/esm2022/lib/helpers/file-extension.helper.mjs +0 -6
- package/esm2022/lib/helpers/file-size-label.helper.mjs +0 -27
- package/esm2022/lib/helpers/hash.helper.mjs +0 -14
- package/esm2022/lib/helpers/html-element-parse.helper.mjs +0 -15
- package/esm2022/lib/helpers/html.helper.mjs +0 -57
- package/esm2022/lib/helpers/index.mjs +0 -13
- package/esm2022/lib/helpers/missing-translation.helper.mjs +0 -7
- package/esm2022/lib/helpers/resolution.helper.mjs +0 -7
- package/esm2022/lib/helpers/save-file.helper.mjs +0 -14
- package/esm2022/lib/helpers/sort.helper.mjs +0 -73
- package/esm2022/lib/inline-message/index.mjs +0 -4
- package/esm2022/lib/inline-message/inline-message.component.mjs +0 -71
- package/esm2022/lib/inline-message/inline-message.module.mjs +0 -33
- package/esm2022/lib/inline-message/models/index.mjs +0 -4
- package/esm2022/lib/inline-message/models/inline-message-icon-position.enum.mjs +0 -6
- package/esm2022/lib/inline-message/models/inline-message-type.enum.mjs +0 -7
- package/esm2022/lib/inline-message/models/inline-message.model.mjs +0 -2
- package/esm2022/lib/llm/components/llm-rephrase/llm-rephrase.component.mjs +0 -48
- package/esm2022/lib/llm/components/llm-summary/llm-summary.component.mjs +0 -48
- package/esm2022/lib/llm/components/llm-textarea-with-actions/llm-textarea-with-actions.component.mjs +0 -337
- package/esm2022/lib/llm/icons/index.mjs +0 -2
- package/esm2022/lib/llm/icons/llm-menu.icon.mjs +0 -14
- package/esm2022/lib/llm/index.mjs +0 -4
- package/esm2022/lib/llm/llm.component.mjs +0 -122
- package/esm2022/lib/llm/llm.module.mjs +0 -86
- package/esm2022/lib/llm/models/index.mjs +0 -4
- package/esm2022/lib/llm/models/llm-actions.enum.mjs +0 -6
- package/esm2022/lib/llm/models/llm-configuration.model.mjs +0 -2
- package/esm2022/lib/llm/models/llm-configuration.token.mjs +0 -3
- package/esm2022/lib/llm/models/llm-data.model.mjs +0 -2
- package/esm2022/lib/llm/models/llm-writing-style.enum.mjs +0 -7
- package/esm2022/lib/llm/services/llm-helper.service.mjs +0 -102
- package/esm2022/lib/llm/shared/llm-textarea/llm-textarea.component.mjs +0 -111
- package/esm2022/lib/multi-functional-table/constants/disable-export-attribute-name.const.mjs +0 -2
- package/esm2022/lib/multi-functional-table/constants/index.mjs +0 -2
- package/esm2022/lib/multi-functional-table/index.mjs +0 -5
- package/esm2022/lib/multi-functional-table/models/batch-config.model.mjs +0 -2
- package/esm2022/lib/multi-functional-table/models/column-config.model.mjs +0 -2
- package/esm2022/lib/multi-functional-table/models/column-select-config.model.mjs +0 -2
- package/esm2022/lib/multi-functional-table/models/export-config.model.mjs +0 -2
- package/esm2022/lib/multi-functional-table/models/export-format.enum.mjs +0 -5
- package/esm2022/lib/multi-functional-table/models/filter-config.model.mjs +0 -2
- package/esm2022/lib/multi-functional-table/models/index.mjs +0 -8
- package/esm2022/lib/multi-functional-table/models/multi-functional-table-config.model.mjs +0 -2
- package/esm2022/lib/multi-functional-table/models/paginator-config.model.mjs +0 -2
- package/esm2022/lib/multi-functional-table/models/selected-column-local-storage-config.model.mjs +0 -2
- package/esm2022/lib/multi-functional-table/multi-functional-table.component.mjs +0 -691
- package/esm2022/lib/multi-functional-table/multi-functional-table.module.mjs +0 -93
- package/esm2022/lib/new-feature-dialog/index.mjs +0 -3
- package/esm2022/lib/new-feature-dialog/models/index.mjs +0 -2
- package/esm2022/lib/new-feature-dialog/models/mobile-screen-custom-position.model.mjs +0 -2
- package/esm2022/lib/new-feature-dialog/new-feature-dialog-wrapper/new-feature-dialog-wrapper.component.mjs +0 -105
- package/esm2022/lib/new-feature-dialog/new-feature-dialog-wrapper/new-feature-dialog.service.mjs +0 -37
- package/esm2022/lib/new-feature-dialog/new-feature-dialog.component.mjs +0 -40
- package/esm2022/lib/notification-message/enums/index.mjs +0 -2
- package/esm2022/lib/notification-message/enums/notification-message-type.enum.mjs +0 -9
- package/esm2022/lib/notification-message/index.mjs +0 -5
- package/esm2022/lib/notification-message/interfaces/index.mjs +0 -2
- package/esm2022/lib/notification-message/interfaces/notification-message.model.mjs +0 -2
- package/esm2022/lib/notification-message/notification-message.component.mjs +0 -195
- package/esm2022/lib/notification-message/notification-message.module.mjs +0 -49
- package/esm2022/lib/open-close-button/index.mjs +0 -5
- package/esm2022/lib/open-close-button/injection-tokens/index.mjs +0 -2
- package/esm2022/lib/open-close-button/injection-tokens/open-close-btn-icons.token.mjs +0 -2
- package/esm2022/lib/open-close-button/models/index.mjs +0 -2
- package/esm2022/lib/open-close-button/models/open-close-btn-icons.model.mjs +0 -2
- package/esm2022/lib/open-close-button/open-close-button.component.mjs +0 -114
- package/esm2022/lib/open-close-button/open-close-button.module.mjs +0 -22
- package/esm2022/lib/pipes/date-ago/date-ago.module.mjs +0 -29
- package/esm2022/lib/pipes/date-ago/date-ago.pipe.mjs +0 -114
- package/esm2022/lib/pipes/date-ago/index.mjs +0 -3
- package/esm2022/lib/pipes/date-ago/models/date-ago-interval.model.mjs +0 -2
- package/esm2022/lib/pipes/date-ago/models/date-ago-settings.model.mjs +0 -2
- package/esm2022/lib/pipes/date-ago/models/date-ago-settings.token.mjs +0 -2
- package/esm2022/lib/pipes/date-ago/models/date-ago.model.mjs +0 -2
- package/esm2022/lib/pipes/date-ago/models/index.mjs +0 -5
- package/esm2022/lib/pipes/domain-translate/domain-translate.pipe.mjs +0 -30
- package/esm2022/lib/pipes/domain-translate/index.mjs +0 -2
- package/esm2022/lib/pipes/file-size-label/enums/file-size-unit.enum.mjs +0 -8
- package/esm2022/lib/pipes/file-size-label/enums/index.mjs +0 -2
- package/esm2022/lib/pipes/file-size-label/file-size-label.pipe.mjs +0 -22
- package/esm2022/lib/pipes/file-size-label/index.mjs +0 -3
- package/esm2022/lib/pipes/filter-with-highlight/filter-with-highlight.module.mjs +0 -25
- package/esm2022/lib/pipes/filter-with-highlight/filter-with-highlight.pipe.mjs +0 -43
- package/esm2022/lib/pipes/filter-with-highlight/index.mjs +0 -3
- package/esm2022/lib/pipes/index.mjs +0 -13
- package/esm2022/lib/pipes/language-translate/index.mjs +0 -3
- package/esm2022/lib/pipes/language-translate/language-translate.module.mjs +0 -19
- package/esm2022/lib/pipes/language-translate/language-translate.pipe.mjs +0 -126
- package/esm2022/lib/pipes/object-length/index.mjs +0 -3
- package/esm2022/lib/pipes/object-length/object-length.module.mjs +0 -19
- package/esm2022/lib/pipes/object-length/object-length.pipe.mjs +0 -23
- package/esm2022/lib/pipes/sort-alphabetically/index.mjs +0 -3
- package/esm2022/lib/pipes/sort-alphabetically/sort-alphabetically.module.mjs +0 -19
- package/esm2022/lib/pipes/sort-alphabetically/sort-alphabetically.pipe.mjs +0 -21
- package/esm2022/lib/pipes/sort-by-number/index.mjs +0 -2
- package/esm2022/lib/pipes/sort-by-number/sort-by-number.pipe.mjs +0 -23
- package/esm2022/lib/pipes/sort-domains/index.mjs +0 -2
- package/esm2022/lib/pipes/sort-domains/sort-domains.pipe.mjs +0 -51
- package/esm2022/lib/pipes/sort-language-list/index.mjs +0 -3
- package/esm2022/lib/pipes/sort-language-list/models/index.mjs +0 -2
- package/esm2022/lib/pipes/sort-language-list/models/translated-language.model.mjs +0 -2
- package/esm2022/lib/pipes/sort-language-list/sort-language-list.pipe.mjs +0 -58
- package/esm2022/lib/pipes/sort-translations/index.mjs +0 -3
- package/esm2022/lib/pipes/sort-translations/sort-translations.module.mjs +0 -23
- package/esm2022/lib/pipes/sort-translations/sort-translations.pipe.mjs +0 -60
- package/esm2022/lib/pipes/sort-translations-by-property/index.mjs +0 -3
- package/esm2022/lib/pipes/sort-translations-by-property/sort-translations-by-property.module.mjs +0 -19
- package/esm2022/lib/pipes/sort-translations-by-property/sort-translations-by-property.pipe.mjs +0 -43
- package/esm2022/lib/plausible/index.mjs +0 -5
- package/esm2022/lib/plausible/models/index.mjs +0 -2
- package/esm2022/lib/plausible/models/plausible-event.model.mjs +0 -2
- package/esm2022/lib/plausible/plausible-event.directive.mjs +0 -42
- package/esm2022/lib/plausible/plausible.helper.mjs +0 -37
- package/esm2022/lib/plausible/plausible.module.mjs +0 -25
- package/esm2022/lib/services/alert/alert.service.mjs +0 -172
- package/esm2022/lib/services/alert/index.mjs +0 -4
- package/esm2022/lib/services/alert/injection-tokens/alert-configuration.token.mjs +0 -2
- package/esm2022/lib/services/alert/injection-tokens/index.mjs +0 -2
- package/esm2022/lib/services/alert/models/alert-configuration.model.mjs +0 -2
- package/esm2022/lib/services/alert/models/index.mjs +0 -2
- package/esm2022/lib/services/dom/dom.service.mjs +0 -21
- package/esm2022/lib/services/dom/index.mjs +0 -2
- package/esm2022/lib/services/icon/icon.service.mjs +0 -35
- package/esm2022/lib/services/icon/index.mjs +0 -2
- package/esm2022/lib/services/index.mjs +0 -7
- package/esm2022/lib/services/language-translate/index.mjs +0 -2
- package/esm2022/lib/services/language-translate/language-translate.service.mjs +0 -25
- package/esm2022/lib/services/notification/index.mjs +0 -3
- package/esm2022/lib/services/notification/models/index.mjs +0 -3
- package/esm2022/lib/services/notification/models/notification.model.mjs +0 -2
- package/esm2022/lib/services/notification/models/operations.enum.mjs +0 -6
- package/esm2022/lib/services/notification/notification.service.mjs +0 -35
- package/esm2022/lib/services/system/index.mjs +0 -2
- package/esm2022/lib/services/system/system.service.mjs +0 -20
- package/esm2022/lib/sidebar/index.mjs +0 -3
- package/esm2022/lib/sidebar/services/index.mjs +0 -2
- package/esm2022/lib/sidebar/services/sidebar.service.mjs +0 -24
- package/esm2022/lib/sidebar/sidebar.component.mjs +0 -30
- package/esm2022/lib/status-display/index.mjs +0 -4
- package/esm2022/lib/status-display/models/index.mjs +0 -2
- package/esm2022/lib/status-display/models/status-display-config.model.mjs +0 -2
- package/esm2022/lib/status-display/status-display.component.mjs +0 -71
- package/esm2022/lib/status-display/status-display.module.mjs +0 -22
- package/esm2022/lib/subscription/chargebee-mount.service.mjs +0 -16
- package/esm2022/lib/subscription/index.mjs +0 -3
- package/esm2022/lib/subscription/models/chargebee-settings.model.mjs +0 -2
- package/esm2022/lib/subscription/models/index.mjs +0 -2
- package/esm2022/lib/subscription/models/subscription-quota-display.model.mjs +0 -2
- package/esm2022/lib/subscription/models/subscription-state.enum.mjs +0 -8
- package/esm2022/lib/subscription/subscription.component.mjs +0 -392
- package/esm2022/lib/terminology/components/terminology-panel/terminology-collection-list/terminology-collection-card/terminology-collection-card.component.mjs +0 -279
- package/esm2022/lib/terminology/components/terminology-panel/terminology-collection-list/terminology-collection-list.component.mjs +0 -161
- package/esm2022/lib/terminology/components/terminology-panel/terminology-create-collection/terminology-create-collection-dialog/terminology-create-collection-dialog.component.mjs +0 -121
- package/esm2022/lib/terminology/components/terminology-panel/terminology-create-collection/terminology-create-collection.component.mjs +0 -72
- package/esm2022/lib/terminology/components/terminology-panel/terminology-panel.component.mjs +0 -151
- package/esm2022/lib/terminology/config/models/index.mjs +0 -2
- package/esm2022/lib/terminology/config/models/terminology-config.model.mjs +0 -2
- package/esm2022/lib/terminology/config/services/index.mjs +0 -2
- package/esm2022/lib/terminology/config/services/terminology-config/terminology-config.service.mjs +0 -47
- package/esm2022/lib/terminology/enums/combined-collection-tooltip-key.enum.mjs +0 -6
- package/esm2022/lib/terminology/enums/engine-term-collection-scope.enum.mjs +0 -6
- package/esm2022/lib/terminology/enums/engine-term-collection-source.enum.mjs +0 -6
- package/esm2022/lib/terminology/enums/engine-term-collection-status.enum.mjs +0 -8
- package/esm2022/lib/terminology/enums/engine-term-collection-sub-status.enum.mjs +0 -14
- package/esm2022/lib/terminology/enums/index.mjs +0 -7
- package/esm2022/lib/terminology/enums/mt-collection-status.enum.mjs +0 -11
- package/esm2022/lib/terminology/icons/collections-menu.icon.mjs +0 -18
- package/esm2022/lib/terminology/icons/index.mjs +0 -2
- package/esm2022/lib/terminology/index.mjs +0 -10
- package/esm2022/lib/terminology/models/active-data.model.mjs +0 -2
- package/esm2022/lib/terminology/models/add-engine-terms-request-params.model.mjs +0 -2
- package/esm2022/lib/terminology/models/combined-collection.model.mjs +0 -181
- package/esm2022/lib/terminology/models/default-term-collection-order-update.model.mjs +0 -2
- package/esm2022/lib/terminology/models/domain.model.mjs +0 -2
- package/esm2022/lib/terminology/models/engine-term-collection-access-scope-update.model.mjs +0 -2
- package/esm2022/lib/terminology/models/engine-term-collection-access-scope.model.mjs +0 -2
- package/esm2022/lib/terminology/models/engine-term-collection-access-update.model.mjs +0 -2
- package/esm2022/lib/terminology/models/engine-term-collection-access.model.mjs +0 -2
- package/esm2022/lib/terminology/models/engine-term-collection-list.model.mjs +0 -2
- package/esm2022/lib/terminology/models/engine-term-collection.model.mjs +0 -2
- package/esm2022/lib/terminology/models/index.mjs +0 -19
- package/esm2022/lib/terminology/models/lang-list-item.model.mjs +0 -2
- package/esm2022/lib/terminology/models/mt-collection.model.mjs +0 -2
- package/esm2022/lib/terminology/models/system.model.mjs +0 -2
- package/esm2022/lib/terminology/models/terminology-engine.model.mjs +0 -2
- package/esm2022/lib/terminology/models/tld-term-collection-languages.model.mjs +0 -2
- package/esm2022/lib/terminology/models/tld-term-collection.model.mjs +0 -2
- package/esm2022/lib/terminology/models/update-engine-terms-request-params.model.mjs +0 -2
- package/esm2022/lib/terminology/models/vendor.model.mjs +0 -2
- package/esm2022/lib/terminology/services/engine-term-api/engine-term-api.service.mjs +0 -48
- package/esm2022/lib/terminology/services/engine-term-api/index.mjs +0 -2
- package/esm2022/lib/terminology/services/index.mjs +0 -5
- package/esm2022/lib/terminology/services/system-api-v2/models/engine-deployment.model.mjs +0 -2
- package/esm2022/lib/terminology/services/system-api-v2/models/engine-domain-list.model.mjs +0 -2
- package/esm2022/lib/terminology/services/system-api-v2/models/engine-domain.model.mjs +0 -2
- package/esm2022/lib/terminology/services/system-api-v2/models/engine-list.model.mjs +0 -2
- package/esm2022/lib/terminology/services/system-api-v2/models/engine-status.enum.mjs +0 -11
- package/esm2022/lib/terminology/services/system-api-v2/models/engine-sub-status.enum.mjs +0 -18
- package/esm2022/lib/terminology/services/system-api-v2/models/engine.model.mjs +0 -2
- package/esm2022/lib/terminology/services/system-api-v2/models/index.mjs +0 -9
- package/esm2022/lib/terminology/services/system-api-v2/models/revision.model.mjs +0 -2
- package/esm2022/lib/terminology/services/system-api-v2/models/tilde-vendor.const.mjs +0 -2
- package/esm2022/lib/terminology/services/system-api-v2/models/worker-status.model.mjs +0 -2
- package/esm2022/lib/terminology/services/system-api-v2/system-api.service.mjs +0 -109
- package/esm2022/lib/terminology/services/terminology/terminology.service.mjs +0 -323
- package/esm2022/lib/terminology/services/terminology-api/terminology-api.service.mjs +0 -86
- package/esm2022/lib/terminology/services/terminology-collection/index.mjs +0 -2
- package/esm2022/lib/terminology/services/terminology-collection/terminology-collection.service.mjs +0 -54
- package/esm2022/lib/terminology/terminology.component.mjs +0 -241
- package/esm2022/lib/terminology/terminology.module.mjs +0 -102
- package/esm2022/lib/text-to-speech/index.mjs +0 -3
- package/esm2022/lib/text-to-speech/models/index.mjs +0 -2
- package/esm2022/lib/text-to-speech/models/voice.model.mjs +0 -2
- package/esm2022/lib/text-to-speech/services/tts-api.service.mjs +0 -18
- package/esm2022/lib/text-to-speech/text-to-speech.component.mjs +0 -172
- package/esm2022/lib/tld-loader/index.mjs +0 -3
- package/esm2022/lib/tld-loader/tld-loader.component.mjs +0 -16
- package/esm2022/lib/tld-loader/tld-loader.module.mjs +0 -21
- package/esm2022/lib/toast/index.mjs +0 -3
- package/esm2022/lib/toast/models/toast.model.mjs +0 -2
- package/esm2022/lib/toast/toast-service/index.mjs +0 -2
- package/esm2022/lib/toast/toast-service/toast-service.service.mjs +0 -42
- package/esm2022/lib/toast/toast.component.mjs +0 -57
- package/esm2022/public-api.mjs +0 -32
- package/esm2022/tilde-nlp-ngx-common.mjs +0 -5
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
import { Injectable } from "@angular/core";
|
|
2
|
-
import { map } from "rxjs";
|
|
3
|
-
import { AuthHeadersHelper } from "../../../helpers";
|
|
4
|
-
import { EngineStatus, EngineSubStatus } from "./models";
|
|
5
|
-
import { TILDE_VENDOR } from "./models/tilde-vendor.const";
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@angular/common/http";
|
|
8
|
-
import * as i2 from "../../config/services";
|
|
9
|
-
export class SystemApiService {
|
|
10
|
-
constructor(http, config) {
|
|
11
|
-
this.http = http;
|
|
12
|
-
this.config = config;
|
|
13
|
-
}
|
|
14
|
-
// Note that this api call is duplicate from Website engine service. Might need some refactoring and using common engine service ?
|
|
15
|
-
getSystemList(showDisabledEngines) {
|
|
16
|
-
const headers = AuthHeadersHelper.getAppIdAuthHeaders(this.config.termConfig.appId ?? '');
|
|
17
|
-
return this.http.get(`${this.config.termConfig.systemListUrl}?apiVersion=v2`, { headers }).pipe(map((engineList) => {
|
|
18
|
-
const convertedEngines = [];
|
|
19
|
-
const unavailableStatuses = [EngineStatus.IMPORTING];
|
|
20
|
-
const unavailableSubStatuses = [EngineSubStatus.ErrorImportingFailed, EngineSubStatus.ErrorDeletingFailed];
|
|
21
|
-
if (!showDisabledEngines) {
|
|
22
|
-
unavailableStatuses.push(EngineStatus.OFF);
|
|
23
|
-
}
|
|
24
|
-
const engineMap = {};
|
|
25
|
-
engineList.engines.forEach((engine) => {
|
|
26
|
-
engine.domain = engine.domain?.toLowerCase();
|
|
27
|
-
if (unavailableStatuses.includes(engine.status) || unavailableSubStatuses.includes(engine.subStatus)) {
|
|
28
|
-
return;
|
|
29
|
-
}
|
|
30
|
-
if (engine.domains && Object.keys(engine.domains).length) {
|
|
31
|
-
convertedEngines.push(...this.generateSystemsFromDomains(engine, convertedEngines, engineMap));
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
convertedEngines.push(...this.generateSystemsFromLanguages(engine, convertedEngines, engineMap));
|
|
35
|
-
}
|
|
36
|
-
});
|
|
37
|
-
return convertedEngines;
|
|
38
|
-
}));
|
|
39
|
-
}
|
|
40
|
-
generateSystemsFromLanguages(engine, convertedEngines, engineMap) {
|
|
41
|
-
const systems = [];
|
|
42
|
-
engine.sourceLanguages.forEach((sourceLanguage) => {
|
|
43
|
-
engine.targetLanguages.forEach((targetLanguage) => {
|
|
44
|
-
if (sourceLanguage !== targetLanguage) {
|
|
45
|
-
const newSystem = this.createSystemObject(engine.id, sourceLanguage, targetLanguage, engine.domain, engine.vendor, engine.supportsTermCollections);
|
|
46
|
-
if (this.isLanguageDirectionAdded(newSystem, convertedEngines, engineMap, engine.vendor)) {
|
|
47
|
-
systems.push(newSystem);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
});
|
|
51
|
-
});
|
|
52
|
-
return systems;
|
|
53
|
-
}
|
|
54
|
-
generateSystemsFromDomains(engine, convertedEngines, engineMap) {
|
|
55
|
-
const domains = engine.domains;
|
|
56
|
-
const systems = [];
|
|
57
|
-
for (const domainKey in domains) {
|
|
58
|
-
const domain = domains[domainKey];
|
|
59
|
-
// Loop through each language property
|
|
60
|
-
const languages = domain.languages;
|
|
61
|
-
for (const sourceLanguage in languages) {
|
|
62
|
-
const targetLanguages = languages[sourceLanguage];
|
|
63
|
-
// Loop through each key within the language
|
|
64
|
-
targetLanguages.forEach((targetLanguage) => {
|
|
65
|
-
const newSystem = this.createSystemObject(engine.id, sourceLanguage, targetLanguage, domainKey, engine.vendor, engine.supportsTermCollections);
|
|
66
|
-
if (sourceLanguage !== targetLanguage) {
|
|
67
|
-
if (this.isLanguageDirectionAdded(newSystem, convertedEngines, engineMap, engine.vendor)) {
|
|
68
|
-
systems.push(newSystem);
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
return systems;
|
|
75
|
-
}
|
|
76
|
-
isLanguageDirectionAdded(newSystem, convertedEngines, engineMap, vendor) {
|
|
77
|
-
const languageDirectionKey = `${newSystem.sourceLanguage}${newSystem.targetLanguage}${newSystem.domain}`;
|
|
78
|
-
if (engineMap[languageDirectionKey]) {
|
|
79
|
-
if (vendor === TILDE_VENDOR) {
|
|
80
|
-
const existingSystemIx = convertedEngines.findIndex((e) => e.sourceLanguage === newSystem.sourceLanguage && e.targetLanguage === newSystem.targetLanguage && e.domain === newSystem.domain);
|
|
81
|
-
convertedEngines[existingSystemIx] = newSystem;
|
|
82
|
-
}
|
|
83
|
-
return false;
|
|
84
|
-
}
|
|
85
|
-
engineMap[languageDirectionKey] = true;
|
|
86
|
-
return true;
|
|
87
|
-
}
|
|
88
|
-
createSystemObject(id, sourceLanguage, targetLanguage, domain, vendor, includesTerminology) {
|
|
89
|
-
const systemBase = {
|
|
90
|
-
sourceLanguage,
|
|
91
|
-
targetLanguage,
|
|
92
|
-
domain: domain.toLowerCase(),
|
|
93
|
-
languageId: `${sourceLanguage}-${targetLanguage}-${domain}-${vendor}-${id}`,
|
|
94
|
-
id,
|
|
95
|
-
vendor,
|
|
96
|
-
includesTerminology
|
|
97
|
-
};
|
|
98
|
-
return systemBase;
|
|
99
|
-
}
|
|
100
|
-
static { this.ɵfac = function SystemApiService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SystemApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.TerminologyConfigService)); }; }
|
|
101
|
-
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: SystemApiService, factory: SystemApiService.ɵfac, providedIn: "root" }); }
|
|
102
|
-
}
|
|
103
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SystemApiService, [{
|
|
104
|
-
type: Injectable,
|
|
105
|
-
args: [{
|
|
106
|
-
providedIn: "root",
|
|
107
|
-
}]
|
|
108
|
-
}], () => [{ type: i1.HttpClient }, { type: i2.TerminologyConfigService }], null); })();
|
|
109
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3lzdGVtLWFwaS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbW1vbi9zcmMvbGliL3Rlcm1pbm9sb2d5L3NlcnZpY2VzL3N5c3RlbS1hcGktdjIvc3lzdGVtLWFwaS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUdyRCxPQUFPLEVBQVUsWUFBWSxFQUFFLGVBQWUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVqRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7QUFLM0QsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQixZQUE2QixJQUFnQixFQUFtQixNQUFnQztRQUFuRSxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQW1CLFdBQU0sR0FBTixNQUFNLENBQTBCO0lBQ2hHLENBQUM7SUFDRCxrSUFBa0k7SUFDbEksYUFBYSxDQUFDLG1CQUE2QjtRQUN6QyxNQUFNLE9BQU8sR0FBRyxpQkFBaUIsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDLENBQUM7UUFDMUYsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBYSxHQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLGFBQXdCLGdCQUFnQixFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQ3JILEdBQUcsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ2pCLE1BQU0sZ0JBQWdCLEdBQWEsRUFBRSxDQUFDO1lBQ3RDLE1BQU0sbUJBQW1CLEdBQW1CLENBQUMs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TSxLQUFLLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDNUwsZ0JBQWdCLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxTQUFTLENBQUM7WUFDakQsQ0FBQztZQUNELE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztRQUVELFNBQVMsQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLElBQUksQ0FBQztRQUV2QyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxFQUFVLEVBQUUsY0FBc0IsRUFBRSxjQUFzQixFQUFFLE1BQWMsRUFBRSxNQUFjLEVBQUUsbUJBQTRCO1FBQ2pKLE1BQU0sVUFBVSxHQUFXO1lBQ3pCLGNBQWM7WUFDZCxjQUFjO1lBQ2QsTUFBTSxFQUFFLE1BQU0sQ0FBQyxXQUFXLEVBQUU7WUFDNUIsVUFBVSxFQUFFLEdBQUcsY0FBYyxJQUFJLGNBQWMsSUFBSSxNQUFNLElBQUksTUFBTSxJQUFJLEVBQUUsRUFBRTtZQUMzRSxFQUFFO1lBQ0YsTUFBTTtZQUNOLG1CQUFtQjtTQUNwQixDQUFDO1FBRUYsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztpSEExR1UsZ0JBQWdCO3VFQUFoQixnQkFBZ0IsV0FBaEIsZ0JBQWdCLG1CQUZmLE1BQU07O2lGQUVQLGdCQUFnQjtjQUg1QixVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBtYXAsIE9ic2VydmFibGUgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBBdXRoSGVhZGVyc0hlbHBlciB9IGZyb20gXCIuLi8uLi8uLi9oZWxwZXJzXCI7XHJcbmltcG9ydCB7IFRlcm1pbm9sb2d5Q29uZmlnU2VydmljZSB9IGZyb20gXCIuLi8uLi9jb25maWcvc2VydmljZXNcIjtcclxuaW1wb3J0IHsgU3lzdGVtIH0gZnJvbSBcIi4uLy4uL21vZGVscy9zeXN0ZW0ubW9kZWxcIjtcclxuaW1wb3J0IHsgRW5naW5lLCBFbmdpbmVTdGF0dXMsIEVuZ2luZVN1YlN0YXR1cyB9IGZyb20gXCIuL21vZGVsc1wiO1xyXG5pbXBvcnQgeyBFbmdpbmVMaXN0IH0gZnJvbSBcIi4vbW9kZWxzL2VuZ2luZS1saXN0Lm1vZGVsXCI7XHJcbmltcG9ydCB7IFRJTERFX1ZFTkRPUiB9IGZyb20gXCIuL21vZGVscy90aWxkZS12ZW5kb3IuY29uc3RcIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiBcInJvb3RcIixcclxufSlcclxuZXhwb3J0IGNsYXNzIFN5c3RlbUFwaVNlcnZpY2Uge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSByZWFkb25seSBjb25maWc6IFRlcm1pbm9sb2d5Q29uZmlnU2VydmljZSkge1xyXG4gIH1cclxuICAvLyBOb3RlIHRoYXQgdGhpcyBhcGkgY2FsbCBpcyBkdXBsaWNhdGUgZnJvbSBXZWJzaXRlIGVuZ2luZSBzZXJ2aWNlLiBNaWdodCBuZWVkIHNvbWUgcmVmYWN0b3JpbmcgYW5kIHVzaW5nIGNvbW1vbiBlbmdpbmUgc2VydmljZSA/XHJcbiAgZ2V0U3lzdGVtTGlzdChzaG93RGlzYWJsZWRFbmdpbmVzPzogYm9vbGVhbik6IE9ic2VydmFibGU8U3lzdGVtW10+IHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBBdXRoSGVhZGVyc0hlbHBlci5nZXRBcHBJZEF1dGhIZWFkZXJzKHRoaXMuY29uZmlnLnRlcm1Db25maWcuYXBwSWQgPz8gJycpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQ8RW5naW5lTGlzdD4oYCR7KHRoaXMuY29uZmlnLnRlcm1Db25maWcuc3lzdGVtTGlzdFVybCBhcyBzdHJpbmcpfT9hcGlWZXJzaW9uPXYyYCwgeyBoZWFkZXJzIH0pLnBpcGUoXHJcbiAgICAgIG1hcCgoZW5naW5lTGlzdCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGNvbnZlcnRlZEVuZ2luZXM6IFN5c3RlbVtdID0gW107XHJcbiAgICAgICAgY29uc3QgdW5hdmFpbGFibGVTdGF0dXNlczogRW5naW5lU3RhdHVzW10gPSBbRW5naW5lU3RhdHVzLklNUE9SVElOR107XHJcbiAgICAgICAgY29uc3QgdW5hdmFpbGFibGVTdWJTdGF0dXNlczogRW5naW5lU3ViU3RhdHVzW10gPSBbRW5naW5lU3ViU3RhdHVzLkVycm9ySW1wb3J0aW5nRmFpbGVkLCBFbmdpbmVTdWJTdGF0dXMuRXJyb3JEZWxldGluZ0ZhaWxlZF07XHJcblxyXG4gICAgICAgIGlmICghc2hvd0Rpc2FibGVkRW5naW5lcykge1xyXG4gICAgICAgICAgdW5hdmFpbGFibGVTdGF0dXNlcy5wdXNoKEVuZ2luZVN0YXR1cy5PRkYpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgZW5naW5lTWFwID0ge307XHJcblxyXG4gICAgICAgIGVuZ2luZUxpc3QuZW5naW5lcy5mb3JFYWNoKChlbmdpbmUpID0+IHtcclxuICAgICAgICAgIGVuZ2luZS5kb21haW4gPSBlbmdpbmUuZG9tYWluPy50b0xvd2VyQ2FzZSgpO1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgICBpZiAodW5hdmFpbGFibGVTdGF0dXNlcy5pbmNsdWRlcyhlbmdpbmUuc3RhdHVzKSB8fCB1bmF2YWlsYWJsZVN1YlN0YXR1c2VzLmluY2x1ZGVzKGVuZ2luZS5zdWJTdGF0dXMpKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBpZiAoZW5naW5lLmRvbWFpbnMgJiYgT2JqZWN0LmtleXMoZW5naW5lLmRvbWFpbnMpLmxlbmd0aCkge1xyXG4gICAgICAgICAgICBjb252ZXJ0ZWRFbmdpbmVzLnB1c2goLi4udGhpcy5nZW5lcmF0ZVN5c3RlbXNGcm9tRG9tYWlucyhlbmdpbmUsIGNvbnZlcnRlZEVuZ2luZXMsIGVuZ2luZU1hcCkpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29udmVydGVkRW5naW5lcy5wdXNoKC4uLnRoaXMuZ2VuZXJhdGVTeXN0ZW1zRnJvbUxhbmd1YWdlcyhlbmdpbmUsIGNvbnZlcnRlZEVuZ2luZXMsIGVuZ2luZU1hcCkpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgcmV0dXJuIGNvbnZlcnRlZEVuZ2luZXM7XHJcbiAgICAgIH0pXHJcbiAgICApXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdlbmVyYXRlU3lzdGVtc0Zyb21MYW5ndWFnZXMoZW5naW5lOiBFbmdpbmUsIGNvbnZlcnRlZEVuZ2luZXM6IFN5c3RlbVtdLCBlbmdpbmVNYXA6IHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9KTogU3lzdGVtW10ge1xyXG4gICAgY29uc3Qgc3lzdGVtczogU3lzdGVtW10gPSBbXTtcclxuICAgIGVuZ2luZS5zb3VyY2VMYW5ndWFnZXMuZm9yRWFjaCgoc291cmNlTGFuZ3VhZ2UpID0+IHtcclxuICAgICAgZW5naW5lLnRhcmdldExhbmd1YWdlcy5mb3JFYWNoKCh0YXJnZXRMYW5ndWFnZSkgPT4ge1xyXG4gICAgICAgIGlmIChzb3VyY2VMYW5ndWFnZSAhPT0gdGFyZ2V0TGFuZ3VhZ2UpIHtcclxuICAgICAgICAgIGNvbnN0IG5ld1N5c3RlbSA9IHRoaXMuY3JlYXRlU3lzdGVtT2JqZWN0KGVuZ2luZS5pZCwgc291cmNlTGFuZ3VhZ2UsIHRhcmdldExhbmd1YWdlLCBlbmdpbmUuZG9tYWluLCBlbmdpbmUudmVuZG9yLCBlbmdpbmUuc3VwcG9ydHNUZXJtQ29sbGVjdGlvbnMpO1xyXG5cclxuICAgICAgICAgIGlmICh0aGlzLmlzTGFuZ3VhZ2VEaXJlY3Rpb25BZGRlZChuZXdTeXN0ZW0sIGNvbnZlcnRlZEVuZ2luZXMsIGVuZ2luZU1hcCwgZW5naW5lLnZlbmRvcikpIHtcclxuICAgICAgICAgICAgc3lzdGVtcy5wdXNoKG5ld1N5c3RlbSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgfSlcclxuICAgIHJldHVybiBzeXN0ZW1zO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZW5lcmF0ZVN5c3RlbXNGcm9tRG9tYWlucyhlbmdpbmU6IEVuZ2luZSwgY29udmVydGVkRW5naW5lczogU3lzdGVtW10sIGVuZ2luZU1hcDogeyBba2V5OiBzdHJpbmddOiBib29sZWFuIH0pOiBTeXN0ZW1bXSB7ICAgIFxyXG4gICAgY29uc3QgZG9tYWlucyA9IGVuZ2luZS5kb21haW5zO1xyXG4gICAgY29uc3Qgc3lzdGVtczogU3lzdGVtW10gPSBbXTtcclxuXHJcbiAgICBmb3IgKGNvbnN0IGRvbWFpbktleSBpbiBkb21haW5zKSB7XHJcbiAgICAgIGNvbnN0IGRvbWFpbiA9IGRvbWFpbnNbZG9tYWluS2V5XTtcclxuXHJcbiAgICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGxhbmd1YWdlIHByb3BlcnR5XHJcbiAgICAgIGNvbnN0IGxhbmd1YWdlcyA9IGRvbWFpbi5sYW5ndWFnZXM7XHJcbiAgICAgIGZvciAoY29uc3Qgc291cmNlTGFuZ3VhZ2UgaW4gbGFuZ3VhZ2VzKSB7XHJcbiAgICAgICAgY29uc3QgdGFyZ2V0TGFuZ3VhZ2VzID0gbGFuZ3VhZ2VzW3NvdXJjZUxhbmd1YWdlXTtcclxuICAgICAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBrZXkgd2l0aGluIHRoZSBsYW5ndWFnZVxyXG4gICAgICAgIHRhcmdldExhbmd1YWdlcy5mb3JFYWNoKCh0YXJnZXRMYW5ndWFnZSkgPT4ge1xyXG4gICAgICAgICAgY29uc3QgbmV3U3lzdGVtID0gdGhpcy5jcmVhdGVTeXN0ZW1PYmplY3QoZW5naW5lLmlkLCBzb3VyY2VMYW5ndWFnZSwgdGFyZ2V0TGFuZ3VhZ2UsIGRvbWFpbktleSwgZW5naW5lLnZlbmRvciwgZW5naW5lLnN1cHBvcnRzVGVybUNvbGxlY3Rpb25zKTtcclxuICAgICAgICAgIFxyXG4gICAgICAgICAgaWYgKHNvdXJjZUxhbmd1YWdlICE9PSB0YXJnZXRMYW5ndWFnZSkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5pc0xhbmd1YWdlRGlyZWN0aW9uQWRkZWQobmV3U3lzdGVtLCBjb252ZXJ0ZWRFbmdpbmVzLCBlbmdpbmVNYXAsIGVuZ2luZS52ZW5kb3IpKSB7XHJcbiAgICAgICAgICAgICAgc3lzdGVtcy5wdXNoKG5ld1N5c3RlbSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHN5c3RlbXM7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGlzTGFuZ3VhZ2VEaXJlY3Rpb25BZGRlZChuZXdTeXN0ZW06IFN5c3RlbSwgY29udmVydGVkRW5naW5lczogU3lzdGVtW10sIGVuZ2luZU1hcDogeyBba2V5OiBzdHJpbmddOiBib29sZWFuIH0sIHZlbmRvcjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBsYW5ndWFnZURpcmVjdGlvbktleSA9IGAke25ld1N5c3RlbS5zb3VyY2VMYW5ndWFnZX0ke25ld1N5c3RlbS50YXJnZXRMYW5ndWFnZX0ke25ld1N5c3RlbS5kb21haW59YDtcclxuICAgIFxyXG4gICAgaWYgKGVuZ2luZU1hcFtsYW5ndWFnZURpcmVjdGlvbktleV0pIHtcclxuICAgICAgaWYgKHZlbmRvciA9PT0gVElMREVfVkVORE9SKSB7XHJcbiAgICAgICAgY29uc3QgZXhpc3RpbmdTeXN0ZW1JeCA9IGNvbnZlcnRlZEVuZ2luZXMuZmluZEluZGV4KChlKSA9PiBlLnNvdXJjZUxhbmd1YWdlID09PSBuZXdTeXN0ZW0uc291cmNlTGFuZ3VhZ2UgJiYgZS50YXJnZXRMYW5ndWFnZSA9PT0gbmV3U3lzdGVtLnRhcmdldExhbmd1YWdlICYmIGUuZG9tYWluID09PSBuZXdTeXN0ZW0uZG9tYWluKTtcclxuICAgICAgICBjb252ZXJ0ZWRFbmdpbmVzW2V4aXN0aW5nU3lzdGVtSXhdID0gbmV3U3lzdGVtO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICBcclxuICAgIGVuZ2luZU1hcFtsYW5ndWFnZURpcmVjdGlvbktleV0gPSB0cnVlO1xyXG4gICAgXHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlU3lzdGVtT2JqZWN0KGlkOiBzdHJpbmcsIHNvdXJjZUxhbmd1YWdlOiBzdHJpbmcsIHRhcmdldExhbmd1YWdlOiBzdHJpbmcsIGRvbWFpbjogc3RyaW5nLCB2ZW5kb3I6IHN0cmluZywgaW5jbHVkZXNUZXJtaW5vbG9neTogYm9vbGVhbikge1xyXG4gICAgY29uc3Qgc3lzdGVtQmFzZTogU3lzdGVtID0ge1xyXG4gICAgICBzb3VyY2VMYW5ndWFnZSxcclxuICAgICAgdGFyZ2V0TGFuZ3VhZ2UsXHJcbiAgICAgIGRvbWFpbjogZG9tYWluLnRvTG93ZXJDYXNlKCksXHJcbiAgICAgIGxhbmd1YWdlSWQ6IGAke3NvdXJjZUxhbmd1YWdlfS0ke3RhcmdldExhbmd1YWdlfS0ke2RvbWFpbn0tJHt2ZW5kb3J9LSR7aWR9YCxcclxuICAgICAgaWQsXHJcbiAgICAgIHZlbmRvcixcclxuICAgICAgaW5jbHVkZXNUZXJtaW5vbG9neVxyXG4gICAgfTtcclxuXHJcbiAgICByZXR1cm4gc3lzdGVtQmFzZTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,323 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject, Subject, forkJoin, of, tap } from 'rxjs';
|
|
3
|
-
import { EngineTermCollectionSource, MtCollectionStatus } from '../../enums';
|
|
4
|
-
import { CombinedCollection } from '../../models';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "../../config/services";
|
|
7
|
-
import * as i2 from "../../../services";
|
|
8
|
-
import * as i3 from "../terminology-collection/terminology-collection.service";
|
|
9
|
-
import * as i4 from "../terminology-api/terminology-api.service";
|
|
10
|
-
export class TerminologyService {
|
|
11
|
-
get isAuthenticated() { return this.config.termConfig.isAuth; }
|
|
12
|
-
get canCreateCollections() { return this.config.termConfig.canCreateCollection; }
|
|
13
|
-
get hasEditPermissions() {
|
|
14
|
-
return (this.config?.termConfig.isAuth &&
|
|
15
|
-
this.canCreateCollections &&
|
|
16
|
-
this.config.termConfig.isTermPortalSupported);
|
|
17
|
-
}
|
|
18
|
-
constructor(config, alert, termCollectionApi, mtApi) {
|
|
19
|
-
this.config = config;
|
|
20
|
-
this.alert = alert;
|
|
21
|
-
this.termCollectionApi = termCollectionApi;
|
|
22
|
-
this.mtApi = mtApi;
|
|
23
|
-
this.engines = {};
|
|
24
|
-
this.retranslateSubject = new Subject();
|
|
25
|
-
this.engineSubject = new BehaviorSubject(this.engines);
|
|
26
|
-
this.updatedEnginesSubject = new Subject();
|
|
27
|
-
this.LOCAL_STORAGE_KEY = 'systemLastCollections';
|
|
28
|
-
}
|
|
29
|
-
getRetranslateSignal() {
|
|
30
|
-
return this.retranslateSubject.asObservable();
|
|
31
|
-
}
|
|
32
|
-
resetEngines() {
|
|
33
|
-
this.engines = {};
|
|
34
|
-
}
|
|
35
|
-
hasAnyCollections(systemId) { return this.engines[systemId]?.collections.size > 0; }
|
|
36
|
-
getEnginesWithSelectedCollectionChange() {
|
|
37
|
-
return this.updatedEnginesSubject.asObservable();
|
|
38
|
-
}
|
|
39
|
-
setEngine(engineId, languages = null, setSelectedFromLocalStorage = false, termCollections = true, mtCollections = true, selectedCollection, autoRefresh) {
|
|
40
|
-
const engineExists = this.engines[engineId] ?? null;
|
|
41
|
-
if (!engineExists) {
|
|
42
|
-
const newEngine = {
|
|
43
|
-
selected: selectedCollection || null,
|
|
44
|
-
isImporting: false,
|
|
45
|
-
isAnyImporting: false,
|
|
46
|
-
hasAnyCollections: false,
|
|
47
|
-
isRefreshingCollections: false,
|
|
48
|
-
collections: new Set,
|
|
49
|
-
refreshMtCollections: mtCollections,
|
|
50
|
-
refreshTermCollections: termCollections,
|
|
51
|
-
engineLanguages: languages || [],
|
|
52
|
-
isSoftAutoRefreshOn: false,
|
|
53
|
-
hardAutoRefresh: autoRefresh ?? false,
|
|
54
|
-
refreshTimeout: 0
|
|
55
|
-
};
|
|
56
|
-
this.engines[engineId] = newEngine;
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
engineExists.hardAutoRefresh = autoRefresh ?? false;
|
|
60
|
-
}
|
|
61
|
-
return this.loadCollections(engineId, setSelectedFromLocalStorage);
|
|
62
|
-
}
|
|
63
|
-
setSelectedCollection(engineId, collection, storeSelectedInLocalStorage) {
|
|
64
|
-
if (this.engines[engineId]) {
|
|
65
|
-
this.engines[engineId].selected = collection;
|
|
66
|
-
}
|
|
67
|
-
if (storeSelectedInLocalStorage) {
|
|
68
|
-
this.storeSelectedInLocalStorage(engineId);
|
|
69
|
-
}
|
|
70
|
-
this.retranslateSubject.next(true);
|
|
71
|
-
}
|
|
72
|
-
loadCollections(engineId, setSelectedFromLocalStorage) {
|
|
73
|
-
// clear timeout since this refresh replaces scheduled
|
|
74
|
-
this.clearTimeout(engineId);
|
|
75
|
-
this.engines[engineId] = { ...this.engines[engineId], isRefreshingCollections: true };
|
|
76
|
-
let termResponse;
|
|
77
|
-
let mtApiResponse;
|
|
78
|
-
const observables = [];
|
|
79
|
-
if (this.engines[engineId].refreshTermCollections) {
|
|
80
|
-
observables.push(this.termCollectionApi
|
|
81
|
-
.getCollectionList()
|
|
82
|
-
.pipe(tap((response) => (termResponse = response))));
|
|
83
|
-
}
|
|
84
|
-
if (this.engines[engineId].refreshMtCollections) {
|
|
85
|
-
observables.push(this.mtApi
|
|
86
|
-
.getList(engineId)
|
|
87
|
-
.pipe(tap((response) => (mtApiResponse = response))));
|
|
88
|
-
}
|
|
89
|
-
forkJoin(observables).subscribe({
|
|
90
|
-
// do not need response becaue responses are saved in pipe methods
|
|
91
|
-
next: () => {
|
|
92
|
-
this.engines[engineId].isAnyImporting = false;
|
|
93
|
-
// note that termResponse and mtapiresponse gets changed during remove method
|
|
94
|
-
this.removeDeleted(termResponse, mtApiResponse, engineId);
|
|
95
|
-
const joined = [];
|
|
96
|
-
if (mtApiResponse) {
|
|
97
|
-
joined.push(...mtApiResponse);
|
|
98
|
-
}
|
|
99
|
-
if (termResponse) {
|
|
100
|
-
joined.push(...termResponse);
|
|
101
|
-
}
|
|
102
|
-
this.addCollections(joined, engineId);
|
|
103
|
-
if (setSelectedFromLocalStorage) {
|
|
104
|
-
this.setSelectedFromLocalStorage(engineId);
|
|
105
|
-
}
|
|
106
|
-
this.engines[engineId].isRefreshingCollections = false;
|
|
107
|
-
this.scheduleRefresh(engineId, null);
|
|
108
|
-
},
|
|
109
|
-
error: (error) => {
|
|
110
|
-
this.engines[engineId].isRefreshingCollections = false;
|
|
111
|
-
// it is enough to show error only in console. No special thing is necessary.
|
|
112
|
-
console.error(error);
|
|
113
|
-
},
|
|
114
|
-
});
|
|
115
|
-
return this.engineSubject.asObservable();
|
|
116
|
-
}
|
|
117
|
-
getCollections() {
|
|
118
|
-
return this.engineSubject.asObservable();
|
|
119
|
-
}
|
|
120
|
-
startAutoRefresh(engineId, languages = null, setSelectedFromLocalStorage = false, termCollections = true, mtCollections = true) {
|
|
121
|
-
return this.setEngine(engineId, languages ?? this.engines[engineId]?.engineLanguages, setSelectedFromLocalStorage, termCollections, mtCollections, undefined, true);
|
|
122
|
-
}
|
|
123
|
-
stopAutoRefresh(engineId) {
|
|
124
|
-
this.clearTimeout(engineId);
|
|
125
|
-
if (this.engines[engineId]) {
|
|
126
|
-
this.engines[engineId].isSoftAutoRefreshOn = false;
|
|
127
|
-
this.engines[engineId].hardAutoRefresh = false;
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
create(sourceLanguage, targetLanguage, collectionName, engineId, redirectToEdit = true) {
|
|
131
|
-
return this.termCollectionApi
|
|
132
|
-
.createCollection([sourceLanguage, targetLanguage], collectionName)
|
|
133
|
-
.pipe(tap((collection) => {
|
|
134
|
-
if (redirectToEdit) {
|
|
135
|
-
window.open(this.termCollectionApi.getEditLink(collection.termCollection?.id ?? '', sourceLanguage, targetLanguage), '_blank');
|
|
136
|
-
}
|
|
137
|
-
this.engines[engineId]?.collections?.add(collection);
|
|
138
|
-
this.loadCollections(engineId);
|
|
139
|
-
}));
|
|
140
|
-
}
|
|
141
|
-
selectedIdForTranslation(engineId) {
|
|
142
|
-
const selected = this.engines[engineId]?.selected;
|
|
143
|
-
if (selected?.mtCollection &&
|
|
144
|
-
(selected.mtCollection.lastUpdated ||
|
|
145
|
-
selected.mtCollection.status === MtCollectionStatus.READY)) {
|
|
146
|
-
return selected.mtCollection.id;
|
|
147
|
-
}
|
|
148
|
-
return null;
|
|
149
|
-
}
|
|
150
|
-
updateIfNecessary(collection, engineId, isEdited = false) {
|
|
151
|
-
// collection is not imported and should be attached to engine
|
|
152
|
-
if (collection.isEdited() || isEdited) {
|
|
153
|
-
return this.mtApi.add(engineId, collection).pipe(tap((updatedCollection) => {
|
|
154
|
-
collection.update(updatedCollection);
|
|
155
|
-
}));
|
|
156
|
-
}
|
|
157
|
-
else {
|
|
158
|
-
return of(collection);
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
162
|
-
handleAddToEngineError(error, engineId) {
|
|
163
|
-
this.alert.unhandeledError(error);
|
|
164
|
-
this.engines[engineId].selected = null;
|
|
165
|
-
}
|
|
166
|
-
sync(collection, engineId) {
|
|
167
|
-
return this.mtApi.sync(engineId, collection).pipe(tap((updatedCollection) => {
|
|
168
|
-
collection.update(updatedCollection);
|
|
169
|
-
}));
|
|
170
|
-
}
|
|
171
|
-
removeMtCollection(collection, engineId) {
|
|
172
|
-
return this.mtApi.remove(engineId, collection).pipe(tap((response) => {
|
|
173
|
-
collection.update(response);
|
|
174
|
-
}));
|
|
175
|
-
}
|
|
176
|
-
addToEngineValidation(collection) {
|
|
177
|
-
if (!collection || !collection.termCollection) {
|
|
178
|
-
console.error("Trying to attach collection that has no tilde term id.");
|
|
179
|
-
return false;
|
|
180
|
-
}
|
|
181
|
-
return true;
|
|
182
|
-
}
|
|
183
|
-
clearTimeout(engineId) {
|
|
184
|
-
if (this.engines[engineId]?.refreshTimeout) {
|
|
185
|
-
clearTimeout(this.engines[engineId].refreshTimeout);
|
|
186
|
-
this.engines[engineId].refreshTimeout = null;
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
setSelectedFromLocalStorage(engineId) {
|
|
190
|
-
// If no collections or selected is already set, it should not be changed from localstorage value. (Usually, localstorage should have the same value).
|
|
191
|
-
if (this.engines[engineId].collections?.size === 0 || this.engines[engineId].selected) {
|
|
192
|
-
this.updateSelectedCollectionOutsideService();
|
|
193
|
-
return;
|
|
194
|
-
}
|
|
195
|
-
const storedId = this.readLocalStorage()?.[engineId];
|
|
196
|
-
if (!storedId) {
|
|
197
|
-
this.engines[engineId].selected = null;
|
|
198
|
-
this.updateSelectedCollectionOutsideService();
|
|
199
|
-
return;
|
|
200
|
-
}
|
|
201
|
-
const existing = Array.from(this.engines[engineId].collections).find((item) => item.mtCollection?.id === storedId || item.termCollection?.id === storedId);
|
|
202
|
-
this.engines[engineId].selected = existing;
|
|
203
|
-
this.updateSelectedCollectionOutsideService();
|
|
204
|
-
}
|
|
205
|
-
removeDeleted(termResponse, mtResponse, engineId) {
|
|
206
|
-
for (const collection of this.engines[engineId].collections) {
|
|
207
|
-
const termExistingIx = CombinedCollection.findExistingIndexFromList(termResponse, collection);
|
|
208
|
-
const mtExistingIx = CombinedCollection.findExistingIndexFromList(mtResponse, collection);
|
|
209
|
-
if (termExistingIx === null && mtExistingIx === null) {
|
|
210
|
-
this.engines[engineId]?.collections.delete(collection);
|
|
211
|
-
if (this.engines[engineId]?.selected === collection) {
|
|
212
|
-
this.engines[engineId].selected = null;
|
|
213
|
-
this.updateSelectedCollectionOutsideService();
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
else {
|
|
217
|
-
if (termExistingIx !== null) {
|
|
218
|
-
const existingTerm = termResponse[termExistingIx];
|
|
219
|
-
collection.update(existingTerm);
|
|
220
|
-
termResponse.splice(termExistingIx, 1);
|
|
221
|
-
}
|
|
222
|
-
else {
|
|
223
|
-
collection.deleteTerms();
|
|
224
|
-
}
|
|
225
|
-
if (mtExistingIx !== null) {
|
|
226
|
-
const existingMt = mtResponse[mtExistingIx];
|
|
227
|
-
collection.update(existingMt);
|
|
228
|
-
mtResponse.splice(mtExistingIx, 1);
|
|
229
|
-
}
|
|
230
|
-
else {
|
|
231
|
-
collection.deleteMT();
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
addCollections(newCollections, engineId) {
|
|
237
|
-
// sets collection list to this value at the end, so deleted collections are not in the list.
|
|
238
|
-
for (const collection of newCollections) {
|
|
239
|
-
// User shouldn't see failed collections if he can't retry to import them.
|
|
240
|
-
if (!this.hasEditPermissions && collection.mtStatus === MtCollectionStatus.ERROR || collection.mtStatus === MtCollectionStatus.DELETING) {
|
|
241
|
-
continue;
|
|
242
|
-
}
|
|
243
|
-
if (collection.isImporting) {
|
|
244
|
-
this.engines[engineId].isAnyImporting = true;
|
|
245
|
-
}
|
|
246
|
-
const existing = CombinedCollection.findExistingCollectionFromList(this.engines[engineId].collections, collection);
|
|
247
|
-
// Displaying collection if one of the engine languages is included.
|
|
248
|
-
if (!existing && collection.source === EngineTermCollectionSource.TILDE_TERM) {
|
|
249
|
-
let hasLanguages = true;
|
|
250
|
-
for (let i = 0; i < this.engines[engineId].engineLanguages.length; i++) {
|
|
251
|
-
if (!collection.termCollection?.languages?.find((lang) => this.engines[engineId].engineLanguages.includes(lang.id))) {
|
|
252
|
-
hasLanguages = false;
|
|
253
|
-
break;
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
if (!hasLanguages) {
|
|
257
|
-
continue;
|
|
258
|
-
}
|
|
259
|
-
}
|
|
260
|
-
if (!existing) {
|
|
261
|
-
this.engines[engineId].collections.add(collection);
|
|
262
|
-
}
|
|
263
|
-
else {
|
|
264
|
-
existing.update(collection);
|
|
265
|
-
}
|
|
266
|
-
}
|
|
267
|
-
this.engines[engineId].hasAnyCollections = this.engines[engineId].collections.size > 0;
|
|
268
|
-
this.engineSubject.next(this.engines);
|
|
269
|
-
}
|
|
270
|
-
scheduleRefresh(engineId, timeout) {
|
|
271
|
-
// if menu is closed and selected collection is not importing anymore - auto refreshing should be cancelled.
|
|
272
|
-
if (!this.engines[engineId].hardAutoRefresh &&
|
|
273
|
-
!this.engines[engineId]?.isImporting &&
|
|
274
|
-
this.engines[engineId].isSoftAutoRefreshOn) {
|
|
275
|
-
this.stopAutoRefresh(engineId);
|
|
276
|
-
return;
|
|
277
|
-
}
|
|
278
|
-
// if hard auto refresho on, auto refresh should be on. If hard autoreferesh is off , refresh needs to be done only if selected is importing.
|
|
279
|
-
if (this.engines[engineId].hardAutoRefresh ||
|
|
280
|
-
(this.engines[engineId] &&
|
|
281
|
-
(this.engines[engineId].isSoftAutoRefreshOn || this.engines[engineId].selected?.isImporting))) {
|
|
282
|
-
const timeoutMs = timeout ??
|
|
283
|
-
(this.engines[engineId].isAnyImporting
|
|
284
|
-
? this.config.termConfig.refreshTimeoutMsWhenImporting
|
|
285
|
-
: this.config.termConfig.refreshTimeoutMs);
|
|
286
|
-
this.engines[engineId].refreshTimeout = setTimeout(() => {
|
|
287
|
-
this.engines[engineId].refreshTimeout = null;
|
|
288
|
-
this.loadCollections(engineId);
|
|
289
|
-
}, timeoutMs);
|
|
290
|
-
}
|
|
291
|
-
}
|
|
292
|
-
storeSelectedInLocalStorage(engineId) {
|
|
293
|
-
let localStorageObject = this.readLocalStorage();
|
|
294
|
-
if (!localStorageObject) {
|
|
295
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
296
|
-
localStorageObject = {};
|
|
297
|
-
}
|
|
298
|
-
localStorageObject[engineId] = this.engines[engineId].selected ? this.engines[engineId]?.selected?.mtCollection?.id : null;
|
|
299
|
-
localStorage.setItem(this.LOCAL_STORAGE_KEY, JSON.stringify(localStorageObject));
|
|
300
|
-
}
|
|
301
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
302
|
-
readLocalStorage() {
|
|
303
|
-
const data = localStorage.getItem(this.LOCAL_STORAGE_KEY);
|
|
304
|
-
try {
|
|
305
|
-
return JSON.parse(data);
|
|
306
|
-
}
|
|
307
|
-
catch {
|
|
308
|
-
return null;
|
|
309
|
-
}
|
|
310
|
-
}
|
|
311
|
-
updateSelectedCollectionOutsideService() {
|
|
312
|
-
this.updatedEnginesSubject.next(this.engines);
|
|
313
|
-
}
|
|
314
|
-
static { this.ɵfac = function TerminologyService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || TerminologyService)(i0.ɵɵinject(i1.TerminologyConfigService), i0.ɵɵinject(i2.AlertService), i0.ɵɵinject(i3.TerminologyCollectionService), i0.ɵɵinject(i4.TerminologyApiService)); }; }
|
|
315
|
-
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: TerminologyService, factory: TerminologyService.ɵfac, providedIn: 'root' }); }
|
|
316
|
-
}
|
|
317
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TerminologyService, [{
|
|
318
|
-
type: Injectable,
|
|
319
|
-
args: [{
|
|
320
|
-
providedIn: 'root',
|
|
321
|
-
}]
|
|
322
|
-
}], () => [{ type: i1.TerminologyConfigService }, { type: i2.AlertService }, { type: i3.TerminologyCollectionService }, { type: i4.TerminologyApiService }], null); })();
|
|
323
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybWlub2xvZ3kuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb21tb24vc3JjL2xpYi90ZXJtaW5vbG9neS9zZXJ2aWNlcy90ZXJtaW5vbG9neS90ZXJtaW5vbG9neS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxPQUFPLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHL0UsT0FBTyxFQUFFLDBCQUEwQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzdFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7O0FBUWxELE1BQU0sT0FBTyxrQkFBa0I7SUFPN0IsSUFBSSxlQUFlLEtBQUssT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUEsQ0FBQyxDQUFDO0lBQzlELElBQUksb0JBQW9CLEtBQUssT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxtQkFBbUIsQ0FBQSxDQUFDLENBQUM7SUFJaEYsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxDQUNMLElBQUksQ0FBQyxNQUFNLEVBQUUsVUFBVSxDQUFDLE1BQU07WUFDOUIsSUFBSSxDQUFDLG9CQUFvQjtZQUN6QixJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxxQkFBcUIsQ0FDN0MsQ0FBQztJQUNKLENBQUM7SUFFRCxZQUNtQixNQUFnQyxFQUNoQyxLQUFtQixFQUNuQixpQkFBK0MsRUFDL0MsS0FBNEI7UUFINUIsV0FBTSxHQUFOLE1BQU0sQ0FBMEI7UUFDaEMsVUFBSyxHQUFMLEtBQUssQ0FBYztRQUNuQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQThC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QUM7WUFDSCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUIsQ0FBQztRQUFDLE1BQU0sQ0FBQztZQUNQLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7SUFFTyxzQ0FBc0M7UUFDNUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEQsQ0FBQzttSEEvWlUsa0JBQWtCO3VFQUFsQixrQkFBa0IsV0FBbEIsa0JBQWtCLG1CQUZqQixNQUFNOztpRkFFUCxrQkFBa0I7Y0FIOUIsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QsIGZvcmtKb2luLCBvZiwgdGFwIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEFsZXJ0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgVGVybWlub2xvZ3lDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29uZmlnL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgRW5naW5lVGVybUNvbGxlY3Rpb25Tb3VyY2UsIE10Q29sbGVjdGlvblN0YXR1cyB9IGZyb20gJy4uLy4uL2VudW1zJztcclxuaW1wb3J0IHsgQ29tYmluZWRDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcclxuaW1wb3J0IHsgVGVybWlub2xvZ3lFbmdpbmUgfSBmcm9tICcuLi8uLi9tb2RlbHMvdGVybWlub2xvZ3ktZW5naW5lLm1vZGVsJztcclxuaW1wb3J0IHsgVGVybWlub2xvZ3lBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vdGVybWlub2xvZ3ktYXBpL3Rlcm1pbm9sb2d5LWFwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVGVybWlub2xvZ3lDb2xsZWN0aW9uU2VydmljZSB9IGZyb20gJy4uL3Rlcm1pbm9sb2d5LWNvbGxlY3Rpb24vdGVybWlub2xvZ3ktY29sbGVjdGlvbi5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUZXJtaW5vbG9neVNlcnZpY2Uge1xyXG4gIHB1YmxpYyBlbmdpbmVzOiB7IFtlbmdpbmVJZDogc3RyaW5nXTogVGVybWlub2xvZ3lFbmdpbmUgfSA9IHt9O1xyXG5cclxuICBwcml2YXRlIHJldHJhbnNsYXRlU3ViamVjdCA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XHJcbiAgcHJpdmF0ZSBlbmdpbmVTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdCh0aGlzLmVuZ2luZXMpO1xyXG4gIHByaXZhdGUgdXBkYXRlZEVuZ2luZXNTdWJqZWN0ID0gbmV3IFN1YmplY3Q8eyBbZW5naW5lSWQ6IHN0cmluZ106IFRlcm1pbm9sb2d5RW5naW5lIH0+KCk7XHJcblxyXG4gIGdldCBpc0F1dGhlbnRpY2F0ZWQoKSB7IHJldHVybiB0aGlzLmNvbmZpZy50ZXJtQ29uZmlnLmlzQXV0aCB9XHJcbiAgZ2V0IGNhbkNyZWF0ZUNvbGxlY3Rpb25zKCkgeyByZXR1cm4gdGhpcy5jb25maWcudGVybUNvbmZpZy5jYW5DcmVhdGVDb2xsZWN0aW9uIH1cclxuXHJcbiAgcHVibGljIHJlYWRvbmx5IExPQ0FMX1NUT1JBR0VfS0VZID0gJ3N5c3RlbUxhc3RDb2xsZWN0aW9ucyc7XHJcblxyXG4gIGdldCBoYXNFZGl0UGVybWlzc2lvbnMoKSB7XHJcbiAgICByZXR1cm4gKFxyXG4gICAgICB0aGlzLmNvbmZpZz8udGVybUNvbmZpZy5pc0F1dGggJiZcclxuICAgICAgdGhpcy5jYW5DcmVhdGVDb2xsZWN0aW9ucyAmJlxyXG4gICAgICB0aGlzLmNvbmZpZy50ZXJtQ29uZmlnLmlzVGVybVBvcnRhbFN1cHBvcnRlZFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maWc6IFRlcm1pbm9sb2d5Q29uZmlnU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgYWxlcnQ6IEFsZXJ0U2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGVybUNvbGxlY3Rpb25BcGk6IFRlcm1pbm9sb2d5Q29sbGVjdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IG10QXBpOiBUZXJtaW5vbG9neUFwaVNlcnZpY2VcclxuICApIHsgfVxyXG5cclxuICBnZXRSZXRyYW5zbGF0ZVNpZ25hbCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcclxuICAgIHJldHVybiB0aGlzLnJldHJhbnNsYXRlU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIHJlc2V0RW5naW5lcygpOiB2b2lkIHtcclxuICAgIHRoaXMuZW5naW5lcyA9IHt9O1xyXG4gIH1cclxuXHJcbiAgaGFzQW55Q29sbGVjdGlvbnMoc3lzdGVtSWQ6IHN0cmluZyk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5lbmdpbmVzW3N5c3RlbUlkXT8uY29sbGVjdGlvbnMuc2l6ZSA+IDAgfVxyXG5cclxuICBnZXRFbmdpbmVzV2l0aFNlbGVjdGVkQ29sbGVjdGlvbkNoYW5nZSgpOiBPYnNlcnZhYmxlPHsgW2VuZ2luZUlkOiBzdHJpbmddOiBUZXJtaW5vbG9neUVuZ2luZSB9PiB7XHJcbiAgICByZXR1cm4gdGhpcy51cGRhdGVkRW5naW5lc1N1YmplY3QuYXNPYnNlcnZhYmxlKCk7XHJcbiAgfVxyXG5cclxuICBzZXRFbmdpbmUoXHJcbiAgICBlbmdpbmVJZDogc3RyaW5nLFxyXG4gICAgbGFuZ3VhZ2VzOiBzdHJpbmdbXSB8IG51bGwgPSBudWxsLFxyXG4gICAgc2V0U2VsZWN0ZWRGcm9tTG9jYWxTdG9yYWdlID0gZmFsc2UsXHJcbiAgICB0ZXJtQ29sbGVjdGlvbnMgPSB0cnVlLFxyXG4gICAgbXRDb2xsZWN0aW9ucyA9IHRydWUsXHJcbiAgICBzZWxlY3RlZENvbGxlY3Rpb24/OiBDb21iaW5lZENvbGxlY3Rpb24sXHJcbiAgICBhdXRvUmVmcmVzaD86IGJvb2xlYW5cclxuICApIHtcclxuICAgIGNvbnN0IGVuZ2luZUV4aXN0cyA9IHRoaXMuZW5naW5lc1tlbmdpbmVJZF0gPz8gbnVsbDtcclxuXHJcbiAgICBpZiAoIWVuZ2luZUV4aXN0cykge1xyXG4gICAgICBjb25zdCBuZXdFbmdpbmU6IFRlcm1pbm9sb2d5RW5naW5lID0ge1xyXG4gICAgICAgIHNlbGVjdGVkOiBzZWxlY3RlZENvbGxlY3Rpb24gfHwgbnVsbCxcclxuICAgICAgICBpc0ltcG9ydGluZzogZmFsc2UsXHJcbiAgICAgICAgaXNBbnlJbXBvcnRpbmc6IGZhbHNlLFxyXG4gICAgICAgIGhhc0FueUNvbGxlY3Rpb25zOiBmYWxzZSxcclxuICAgICAgICBpc1JlZnJlc2hpbmdDb2xsZWN0aW9uczogZmFsc2UsXHJcbiAgICAgICAgY29sbGVjdGlvbnM6IG5ldyBTZXQ8Q29tYmluZWRDb2xsZWN0aW9uPixcclxuICAgICAgICByZWZyZXNoTXRDb2xsZWN0aW9uczogbXRDb2xsZWN0aW9ucyxcclxuICAgICAgICByZWZyZXNoVGVybUNvbGxlY3Rpb25zOiB0ZXJtQ29sbGVjdGlvbnMsXHJcbiAgICAgICAgZW5naW5lTGFuZ3VhZ2VzOiBsYW5ndWFnZXMgfHwgW10sXHJcbiAgICAgICAgaXNTb2Z0QXV0b1JlZnJlc2hPbjogZmFsc2UsXHJcbiAgICAgICAgaGFyZEF1dG9SZWZyZXNoOiBhdXRvUmVmcmVzaCA/PyBmYWxzZSxcclxuICAgICAgICByZWZyZXNoVGltZW91dDogMFxyXG4gICAgICB9O1xyXG5cclxuICAgICAgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXSA9IG5ld0VuZ2luZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGVuZ2luZUV4aXN0cy5oYXJkQXV0b1JlZnJlc2ggPSBhdXRvUmVmcmVzaCA/PyBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGhpcy5sb2FkQ29sbGVjdGlvbnMoZW5naW5lSWQsIHNldFNlbGVjdGVkRnJvbUxvY2FsU3RvcmFnZSk7XHJcbiAgfVxyXG5cclxuICBzZXRTZWxlY3RlZENvbGxlY3Rpb24oZW5naW5lSWQ6IHN0cmluZywgY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uIHwgbnVsbCwgc3RvcmVTZWxlY3RlZEluTG9jYWxTdG9yYWdlOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5lbmdpbmVzW2VuZ2luZUlkXSkge1xyXG4gICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLnNlbGVjdGVkID0gY29sbGVjdGlvbjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoc3RvcmVTZWxlY3RlZEluTG9jYWxTdG9yYWdlKSB7XHJcbiAgICAgIHRoaXMuc3RvcmVTZWxlY3RlZEluTG9jYWxTdG9yYWdlKGVuZ2luZUlkKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnJldHJhbnNsYXRlU3ViamVjdC5uZXh0KHRydWUpO1xyXG4gIH1cclxuXHJcbiAgbG9hZENvbGxlY3Rpb25zKGVuZ2luZUlkOiBzdHJpbmcsIHNldFNlbGVjdGVkRnJvbUxvY2FsU3RvcmFnZT86IGJvb2xlYW4pOiBPYnNlcnZhYmxlPHsgW2VuZ2luZUlkOiBzdHJpbmddOiBUZXJtaW5vbG9neUVuZ2luZTsgfT4ge1xyXG4gICAgLy8gY2xlYXIgdGltZW91dCBzaW5jZSB0aGlzIHJlZnJlc2ggcmVwbGFjZXMgc2NoZWR1bGVkXHJcbiAgICB0aGlzLmNsZWFyVGltZW91dChlbmdpbmVJZCk7XHJcblxyXG4gICAgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXSA9IHsgLi4udGhpcy5lbmdpbmVzW2VuZ2luZUlkXSwgaXNSZWZyZXNoaW5nQ29sbGVjdGlvbnM6IHRydWUgfVxyXG5cclxuICAgIGxldCB0ZXJtUmVzcG9uc2U6IENvbWJpbmVkQ29sbGVjdGlvbltdO1xyXG4gICAgbGV0IG10QXBpUmVzcG9uc2U6IENvbWJpbmVkQ29sbGVjdGlvbltdO1xyXG5cclxuICAgIGNvbnN0IG9ic2VydmFibGVzOiBPYnNlcnZhYmxlPENvbWJpbmVkQ29sbGVjdGlvbltdPltdID0gW107XHJcblxyXG4gICAgaWYgKHRoaXMuZW5naW5lc1tlbmdpbmVJZF0ucmVmcmVzaFRlcm1Db2xsZWN0aW9ucykge1xyXG4gICAgICBvYnNlcnZhYmxlcy5wdXNoKFxyXG4gICAgICAgIHRoaXMudGVybUNvbGxlY3Rpb25BcGlcclxuICAgICAgICAgIC5nZXRDb2xsZWN0aW9uTGlzdCgpXHJcbiAgICAgICAgICAucGlwZSh0YXAoKHJlc3BvbnNlKSA9PiAodGVybVJlc3BvbnNlID0gcmVzcG9uc2UpKSlcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLmVuZ2luZXNbZW5naW5lSWRdLnJlZnJlc2hNdENvbGxlY3Rpb25zKSB7XHJcbiAgICAgIG9ic2VydmFibGVzLnB1c2goXHJcbiAgICAgICAgdGhpcy5tdEFwaVxyXG4gICAgICAgICAgLmdldExpc3QoZW5naW5lSWQpXHJcbiAgICAgICAgICAucGlwZSh0YXAoKHJlc3BvbnNlKSA9PiAobXRBcGlSZXNwb25zZSA9IHJlc3BvbnNlKSkpXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICBmb3JrSm9pbihvYnNlcnZhYmxlcykuc3Vic2NyaWJlKHtcclxuICAgICAgLy8gZG8gbm90IG5lZWQgcmVzcG9uc2UgYmVjYXVlIHJlc3BvbnNlcyBhcmUgc2F2ZWQgaW4gcGlwZSBtZXRob2RzXHJcbiAgICAgIG5leHQ6ICgpID0+IHtcclxuICAgICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmlzQW55SW1wb3J0aW5nID0gZmFsc2U7XHJcbiAgICAgICAgLy8gbm90ZSB0aGF0IHRlcm1SZXNwb25zZSBhbmQgbXRhcGlyZXNwb25zZSBnZXRzIGNoYW5nZWQgZHVyaW5nIHJlbW92ZSBtZXRob2RcclxuICAgICAgICB0aGlzLnJlbW92ZURlbGV0ZWQodGVybVJlc3BvbnNlLCBtdEFwaVJlc3BvbnNlLCBlbmdpbmVJZCk7XHJcblxyXG4gICAgICAgIGNvbnN0IGpvaW5lZCA9IFtdO1xyXG4gICAgICAgIGlmIChtdEFwaVJlc3BvbnNlKSB7XHJcbiAgICAgICAgICBqb2luZWQucHVzaCguLi5tdEFwaVJlc3BvbnNlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRlcm1SZXNwb25zZSkge1xyXG4gICAgICAgICAgam9pbmVkLnB1c2goLi4udGVybVJlc3BvbnNlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuYWRkQ29sbGVjdGlvbnMoam9pbmVkLCBlbmdpbmVJZCk7XHJcbiAgICAgICAgaWYgKHNldFNlbGVjdGVkRnJvbUxvY2FsU3RvcmFnZSkge1xyXG4gICAgICAgICAgdGhpcy5zZXRTZWxlY3RlZEZyb21Mb2NhbFN0b3JhZ2UoZW5naW5lSWQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmlzUmVmcmVzaGluZ0NvbGxlY3Rpb25zID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5zY2hlZHVsZVJlZnJlc2goZW5naW5lSWQsIG51bGwpO1xyXG4gICAgICB9LFxyXG4gICAgICBlcnJvcjogKGVycm9yKSA9PiB7XHJcbiAgICAgICAgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5pc1JlZnJlc2hpbmdDb2xsZWN0aW9ucyA9IGZhbHNlO1xyXG4gICAgICAgIC8vIGl0IGlzIGVub3VnaCB0byBzaG93IGVycm9yIG9ubHkgaW4gY29uc29sZS4gTm8gc3BlY2lhbCB0aGluZyBpcyBuZWNlc3NhcnkuXHJcbiAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XHJcbiAgICAgIH0sXHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5lbmdpbmVTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q29sbGVjdGlvbnMoKTogT2JzZXJ2YWJsZTx7IFtlbmdpbmVJZDogc3RyaW5nXTogVGVybWlub2xvZ3lFbmdpbmUgfT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuZW5naW5lU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIHN0YXJ0QXV0b1JlZnJlc2goZW5naW5lSWQ6IHN0cmluZywgbGFuZ3VhZ2VzOiBzdHJpbmdbXSB8IG51bGwgPSBudWxsLCBzZXRTZWxlY3RlZEZyb21Mb2NhbFN0b3JhZ2UgPSBmYWxzZSwgdGVybUNvbGxlY3Rpb25zID0gdHJ1ZSwgbXRDb2xsZWN0aW9ucyA9IHRydWUpIHtcclxuICAgIHJldHVybiB0aGlzLnNldEVuZ2luZShlbmdpbmVJZCwgbGFuZ3VhZ2VzID8/IHRoaXMuZW5naW5lc1tlbmdpbmVJZF0/LmVuZ2luZUxhbmd1YWdlcywgc2V0U2VsZWN0ZWRGcm9tTG9jYWxTdG9yYWdlLCB0ZXJtQ29sbGVjdGlvbnMsIG10Q29sbGVjdGlvbnMsIHVuZGVmaW5lZCwgdHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBzdG9wQXV0b1JlZnJlc2goZW5naW5lSWQ6IHN0cmluZykge1xyXG4gICAgdGhpcy5jbGVhclRpbWVvdXQoZW5naW5lSWQpO1xyXG5cclxuICAgIGlmICh0aGlzLmVuZ2luZXNbZW5naW5lSWRdKSB7XHJcbiAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uaXNTb2Z0QXV0b1JlZnJlc2hPbiA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmhhcmRBdXRvUmVmcmVzaCA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY3JlYXRlKFxyXG4gICAgc291cmNlTGFuZ3VhZ2U6IHN0cmluZyxcclxuICAgIHRhcmdldExhbmd1YWdlOiBzdHJpbmcsXHJcbiAgICBjb2xsZWN0aW9uTmFtZTogc3RyaW5nLFxyXG4gICAgZW5naW5lSWQ6IHN0cmluZyxcclxuICAgIHJlZGlyZWN0VG9FZGl0ID0gdHJ1ZVxyXG4gICkge1xyXG4gICAgcmV0dXJuIHRoaXMudGVybUNvbGxlY3Rpb25BcGlcclxuICAgICAgLmNyZWF0ZUNvbGxlY3Rpb24oW3NvdXJjZUxhbmd1YWdlLCB0YXJnZXRMYW5ndWFnZV0sIGNvbGxlY3Rpb25OYW1lKVxyXG4gICAgICAucGlwZShcclxuICAgICAgICB0YXAoKGNvbGxlY3Rpb24pID0+IHtcclxuICAgICAgICAgIGlmIChyZWRpcmVjdFRvRWRpdCkge1xyXG4gICAgICAgICAgICB3aW5kb3cub3BlbihcclxuICAgICAgICAgICAgICB0aGlzLnRlcm1Db2xsZWN0aW9uQXBpLmdldEVkaXRMaW5rKFxyXG4gICAgICAgICAgICAgICAgY29sbGVjdGlvbi50ZXJtQ29sbGVjdGlvbj8uaWQgPz8gJycsXHJcbiAgICAgICAgICAgICAgICBzb3VyY2VMYW5ndWFnZSxcclxuICAgICAgICAgICAgICAgIHRhcmdldExhbmd1YWdlXHJcbiAgICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgICAnX2JsYW5rJ1xyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0/LmNvbGxlY3Rpb25zPy5hZGQoY29sbGVjdGlvbik7XHJcblxyXG4gICAgICAgICAgdGhpcy5sb2FkQ29sbGVjdGlvbnMoZW5naW5lSWQpO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcbiAgfVxyXG5cclxuICBzZWxlY3RlZElkRm9yVHJhbnNsYXRpb24oZW5naW5lSWQ6IHN0cmluZyk6IHN0cmluZyB8IG51bGwge1xyXG4gICAgY29uc3Qgc2VsZWN0ZWQgPSB0aGlzLmVuZ2luZXNbZW5naW5lSWRdPy5zZWxlY3RlZDtcclxuICAgIGlmIChcclxuICAgICAgc2VsZWN0ZWQ/Lm10Q29sbGVjdGlvbiAmJlxyXG4gICAgICAoc2VsZWN0ZWQubXRDb2xsZWN0aW9uLmxhc3RVcGRhdGVkIHx8XHJcbiAgICAgICAgc2VsZWN0ZWQubXRDb2xsZWN0aW9uLnN0YXR1cyA9PT0gTXRDb2xsZWN0aW9uU3RhdHVzLlJFQURZKVxyXG4gICAgKSB7XHJcbiAgICAgIHJldHVybiBzZWxlY3RlZC5tdENvbGxlY3Rpb24uaWQ7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIHVwZGF0ZUlmTmVjZXNzYXJ5KFxyXG4gICAgY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uLFxyXG4gICAgZW5naW5lSWQ6IHN0cmluZyxcclxuICAgIGlzRWRpdGVkID0gZmFsc2VcclxuICApOiBPYnNlcnZhYmxlPENvbWJpbmVkQ29sbGVjdGlvbj4ge1xyXG4gICAgLy8gY29sbGVjdGlvbiBpcyBub3QgaW1wb3J0ZWQgYW5kIHNob3VsZCBiZSBhdHRhY2hlZCB0byBlbmdpbmVcclxuICAgIGlmIChjb2xsZWN0aW9uLmlzRWRpdGVkKCkgfHwgaXNFZGl0ZWQpIHtcclxuICAgICAgcmV0dXJuIHRoaXMubXRBcGkuYWRkKGVuZ2luZUlkLCBjb2xsZWN0aW9uKS5waXBlKFxyXG4gICAgICAgIHRhcCgodXBkYXRlZENvbGxlY3Rpb24pID0+IHtcclxuICAgICAgICAgIGNvbGxlY3Rpb24udXBkYXRlKHVwZGF0ZWRDb2xsZWN0aW9uKTtcclxuICAgICAgICB9KVxyXG4gICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG9mKGNvbGxlY3Rpb24pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcclxuICBoYW5kbGVBZGRUb0VuZ2luZUVycm9yKGVycm9yOiBhbnksIGVuZ2luZUlkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIHRoaXMuYWxlcnQudW5oYW5kZWxlZEVycm9yKGVycm9yKTtcclxuICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uc2VsZWN0ZWQgPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgc3luYyhcclxuICAgIGNvbGxlY3Rpb246IENvbWJpbmVkQ29sbGVjdGlvbixcclxuICAgIGVuZ2luZUlkOiBzdHJpbmdcclxuICApOiBPYnNlcnZhYmxlPENvbWJpbmVkQ29sbGVjdGlvbj4ge1xyXG4gICAgcmV0dXJuIHRoaXMubXRBcGkuc3luYyhlbmdpbmVJZCwgY29sbGVjdGlvbikucGlwZShcclxuICAgICAgdGFwKCh1cGRhdGVkQ29sbGVjdGlvbikgPT4ge1xyXG4gICAgICAgIGNvbGxlY3Rpb24udXBkYXRlKHVwZGF0ZWRDb2xsZWN0aW9uKTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICByZW1vdmVNdENvbGxlY3Rpb24oY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uLCBlbmdpbmVJZDogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5tdEFwaS5yZW1vdmUoZW5naW5lSWQsIGNvbGxlY3Rpb24pLnBpcGUoXHJcbiAgICAgIHRhcCgocmVzcG9uc2UpID0+IHtcclxuICAgICAgICBjb2xsZWN0aW9uLnVwZGF0ZShyZXNwb25zZSk7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgYWRkVG9FbmdpbmVWYWxpZGF0aW9uKGNvbGxlY3Rpb246IENvbWJpbmVkQ29sbGVjdGlvbik6IGJvb2xlYW4ge1xyXG4gICAgaWYgKCFjb2xsZWN0aW9uIHx8ICFjb2xsZWN0aW9uLnRlcm1Db2xsZWN0aW9uKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoXCJUcnlpbmcgdG8gYXR0YWNoIGNvbGxlY3Rpb24gdGhhdCBoYXMgbm8gdGlsZGUgdGVybSBpZC5cIik7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY2xlYXJUaW1lb3V0KGVuZ2luZUlkOiBzdHJpbmcpIHtcclxuICAgIGlmICh0aGlzLmVuZ2luZXNbZW5naW5lSWRdPy5yZWZyZXNoVGltZW91dCkge1xyXG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5yZWZyZXNoVGltZW91dCk7XHJcbiAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0ucmVmcmVzaFRpbWVvdXQgPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRTZWxlY3RlZEZyb21Mb2NhbFN0b3JhZ2UoZW5naW5lSWQ6IHN0cmluZykge1xyXG4gICAgLy8gSWYgbm8gY29sbGVjdGlvbnMgb3Igc2VsZWN0ZWQgaXMgYWxyZWFkeSBzZXQsIGl0IHNob3VsZCBub3QgYmUgY2hhbmdlZCBmcm9tIGxvY2Fsc3RvcmFnZSB2YWx1ZS4gKFVzdWFsbHksIGxvY2Fsc3RvcmFnZSBzaG91bGQgaGF2ZSB0aGUgc2FtZSB2YWx1ZSkuXHJcbiAgICBpZiAodGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5jb2xsZWN0aW9ucz8uc2l6ZSA9PT0gMCB8fCB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLnNlbGVjdGVkKSB7XHJcbiAgICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRDb2xsZWN0aW9uT3V0c2lkZVNlcnZpY2UoKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHN0b3JlZElkID0gdGhpcy5yZWFkTG9jYWxTdG9yYWdlKCk/LltlbmdpbmVJZF07XHJcblxyXG4gICAgaWYgKCFzdG9yZWRJZCkge1xyXG4gICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLnNlbGVjdGVkID0gbnVsbDtcclxuICAgICAgdGhpcy51cGRhdGVTZWxlY3RlZENvbGxlY3Rpb25PdXRzaWRlU2VydmljZSgpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZXhpc3RpbmcgPSBBcnJheS5mcm9tKHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uY29sbGVjdGlvbnMpLmZpbmQoXHJcbiAgICAgIChpdGVtKSA9PiBpdGVtLm10Q29sbGVjdGlvbj8uaWQgPT09IHN0b3JlZElkIHx8IGl0ZW0udGVybUNvbGxlY3Rpb24/LmlkID09PSBzdG9yZWRJZCk7XHJcbiAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLnNlbGVjdGVkID0gZXhpc3RpbmcgYXMgQ29tYmluZWRDb2xsZWN0aW9uO1xyXG5cclxuICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRDb2xsZWN0aW9uT3V0c2lkZVNlcnZpY2UoKTtcclxuICB9XHJcblxyXG5cclxuICBwcml2YXRlIHJlbW92ZURlbGV0ZWQodGVybVJlc3BvbnNlOiBDb21iaW5lZENvbGxlY3Rpb25bXSwgbXRSZXNwb25zZTogQ29tYmluZWRDb2xsZWN0aW9uW10sIGVuZ2luZUlkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGZvciAoY29uc3QgY29sbGVjdGlvbiBvZiB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmNvbGxlY3Rpb25zKSB7XHJcbiAgICAgIGNvbnN0IHRlcm1FeGlzdGluZ0l4ID0gQ29tYmluZWRDb2xsZWN0aW9uLmZpbmRFeGlzdGluZ0luZGV4RnJvbUxpc3QodGVybVJlc3BvbnNlLCBjb2xsZWN0aW9uKTtcclxuICAgICAgY29uc3QgbXRFeGlzdGluZ0l4ID0gQ29tYmluZWRDb2xsZWN0aW9uLmZpbmRFeGlzdGluZ0luZGV4RnJvbUxpc3QobXRSZXNwb25zZSwgY29sbGVjdGlvbik7XHJcblxyXG4gICAgICBpZiAodGVybUV4aXN0aW5nSXggPT09IG51bGwgJiYgbXRFeGlzdGluZ0l4ID09PSBudWxsKSB7XHJcbiAgICAgICAgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXT8uY29sbGVjdGlvbnMuZGVsZXRlKGNvbGxlY3Rpb24pO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5lbmdpbmVzW2VuZ2luZUlkXT8uc2VsZWN0ZWQgPT09IGNvbGxlY3Rpb24pIHtcclxuICAgICAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uc2VsZWN0ZWQgPSBudWxsO1xyXG4gICAgICAgICAgdGhpcy51cGRhdGVTZWxlY3RlZENvbGxlY3Rpb25PdXRzaWRlU2VydmljZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAodGVybUV4aXN0aW5nSXggIT09IG51bGwpIHtcclxuICAgICAgICAgIGNvbnN0IGV4aXN0aW5nVGVybSA9IHRlcm1SZXNwb25zZVt0ZXJtRXhpc3RpbmdJeF07XHJcbiAgICAgICAgICBjb2xsZWN0aW9uLnVwZGF0ZShleGlzdGluZ1Rlcm0pO1xyXG4gICAgICAgICAgdGVybVJlc3BvbnNlLnNwbGljZSh0ZXJtRXhpc3RpbmdJeCwgMSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNvbGxlY3Rpb24uZGVsZXRlVGVybXMoKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChtdEV4aXN0aW5nSXggIT09IG51bGwpIHtcclxuICAgICAgICAgIGNvbnN0IGV4aXN0aW5nTXQgPSBtdFJlc3BvbnNlW210RXhpc3RpbmdJeF07XHJcbiAgICAgICAgICBjb2xsZWN0aW9uLnVwZGF0ZShleGlzdGluZ010KTtcclxuICAgICAgICAgIG10UmVzcG9uc2Uuc3BsaWNlKG10RXhpc3RpbmdJeCwgMSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNvbGxlY3Rpb24uZGVsZXRlTVQoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRkQ29sbGVjdGlvbnMobmV3Q29sbGVjdGlvbnM6IEl0ZXJhYmxlPENvbWJpbmVkQ29sbGVjdGlvbj4sIGVuZ2luZUlkOiBzdHJpbmcpIHtcclxuICAgIC8vIHNldHMgY29sbGVjdGlvbiBsaXN0IHRvIHRoaXMgdmFsdWUgYXQgdGhlIGVuZCwgc28gZGVsZXRlZCBjb2xsZWN0aW9ucyBhcmUgbm90IGluIHRoZSBsaXN0LlxyXG4gICAgZm9yIChjb25zdCBjb2xsZWN0aW9uIG9mIG5ld0NvbGxlY3Rpb25zKSB7XHJcbiAgICAgIC8vIFVzZXIgc2hvdWxkbid0IHNlZSBmYWlsZWQgY29sbGVjdGlvbnMgaWYgaGUgY2FuJ3QgcmV0cnkgdG8gaW1wb3J0IHRoZW0uXHJcbiAgICAgIGlmICghdGhpcy5oYXNFZGl0UGVybWlzc2lvbnMgJiYgY29sbGVjdGlvbi5tdFN0YXR1cyA9PT0gTXRDb2xsZWN0aW9uU3RhdHVzLkVSUk9SIHx8IGNvbGxlY3Rpb24ubXRTdGF0dXMgPT09IE10Q29sbGVjdGlvblN0YXR1cy5ERUxFVElORykge1xyXG4gICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoY29sbGVjdGlvbi5pc0ltcG9ydGluZykge1xyXG4gICAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uaXNBbnlJbXBvcnRpbmcgPSB0cnVlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBjb25zdCBleGlzdGluZzogQ29tYmluZWRDb2xsZWN0aW9uIHwgbnVsbCA9IENvbWJpbmVkQ29sbGVjdGlvbi5maW5kRXhpc3RpbmdDb2xsZWN0aW9uRnJvbUxpc3QodGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5jb2xsZWN0aW9ucywgY29sbGVjdGlvbik7XHJcblxyXG4gICAgICAvLyBEaXNwbGF5aW5nIGNvbGxlY3Rpb24gaWYgb25lIG9mIHRoZSBlbmdpbmUgbGFuZ3VhZ2VzIGlzIGluY2x1ZGVkLlxyXG4gICAgICBpZiAoIWV4aXN0aW5nICYmIGNvbGxlY3Rpb24uc291cmNlID09PSBFbmdpbmVUZXJtQ29sbGVjdGlvblNvdXJjZS5USUxERV9URVJNKSB7XHJcbiAgICAgICAgbGV0IGhhc0xhbmd1YWdlcyA9IHRydWU7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmVuZ2luZUxhbmd1YWdlcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICAhY29sbGVjdGlvbi50ZXJtQ29sbGVjdGlvbj8ubGFuZ3VhZ2VzPy5maW5kKFxyXG4gICAgICAgICAgICAgIChsYW5nKSA9PiB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmVuZ2luZUxhbmd1YWdlcy5pbmNsdWRlcyhsYW5nLmlkKVxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgICApIHtcclxuICAgICAgICAgICAgaGFzTGFuZ3VhZ2VzID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCFoYXNMYW5ndWFnZXMpIHtcclxuICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKCFleGlzdGluZykge1xyXG4gICAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uY29sbGVjdGlvbnMuYWRkKGNvbGxlY3Rpb24pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGV4aXN0aW5nLnVwZGF0ZShjb2xsZWN0aW9uKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uaGFzQW55Q29sbGVjdGlvbnMgPSB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmNvbGxlY3Rpb25zLnNpemUgPiAwO1xyXG5cclxuICAgIHRoaXMuZW5naW5lU3ViamVjdC5uZXh0KHRoaXMuZW5naW5lcyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNjaGVkdWxlUmVmcmVzaChlbmdpbmVJZDogc3RyaW5nLCB0aW1lb3V0PzogbnVtYmVyIHwgbnVsbCwpIHtcclxuICAgIC8vIGlmIG1lbnUgaXMgY2xvc2VkIGFuZCBzZWxlY3RlZCBjb2xsZWN0aW9uIGlzIG5vdCBpbXBvcnRpbmcgYW55bW9yZSAtIGF1dG8gcmVmcmVzaGluZyBzaG91bGQgYmUgY2FuY2VsbGVkLlxyXG4gICAgaWYgKFxyXG4gICAgICAhdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5oYXJkQXV0b1JlZnJlc2ggJiZcclxuICAgICAgIXRoaXMuZW5naW5lc1tlbmdpbmVJZF0/LmlzSW1wb3J0aW5nICYmXHJcbiAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0uaXNTb2Z0QXV0b1JlZnJlc2hPblxyXG4gICAgKSB7XHJcbiAgICAgIHRoaXMuc3RvcEF1dG9SZWZyZXNoKGVuZ2luZUlkKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGlmIGhhcmQgYXV0byByZWZyZXNobyBvbiwgYXV0byByZWZyZXNoIHNob3VsZCBiZSBvbi4gSWYgaGFyZCBhdXRvcmVmZXJlc2ggaXMgb2ZmICwgcmVmcmVzaCBuZWVkcyB0byBiZSBkb25lIG9ubHkgaWYgc2VsZWN0ZWQgaXMgaW1wb3J0aW5nLlxyXG4gICAgaWYgKFxyXG4gICAgICB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmhhcmRBdXRvUmVmcmVzaCB8fFxyXG4gICAgICAodGhpcy5lbmdpbmVzW2VuZ2luZUlkXSAmJlxyXG4gICAgICAgICh0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmlzU29mdEF1dG9SZWZyZXNoT24gfHwgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5zZWxlY3RlZD8uaXNJbXBvcnRpbmcpKVxyXG4gICAgKSB7XHJcbiAgICAgIGNvbnN0IHRpbWVvdXRNcyA9XHJcbiAgICAgICAgdGltZW91dCA/P1xyXG4gICAgICAgICh0aGlzLmVuZ2luZXNbZW5naW5lSWRdLmlzQW55SW1wb3J0aW5nXHJcbiAgICAgICAgICA/IHRoaXMuY29uZmlnLnRlcm1Db25maWcucmVmcmVzaFRpbWVvdXRNc1doZW5JbXBvcnRpbmdcclxuICAgICAgICAgIDogdGhpcy5jb25maWcudGVybUNvbmZpZy5yZWZyZXNoVGltZW91dE1zKTtcclxuICAgICAgdGhpcy5lbmdpbmVzW2VuZ2luZUlkXS5yZWZyZXNoVGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuZW5naW5lc1tlbmdpbmVJZF0ucmVmcmVzaFRpbWVvdXQgPSBudWxsO1xyXG4gICAgICAgIHRoaXMubG9hZENvbGxlY3Rpb25zKGVuZ2luZUlkKTtcclxuICAgICAgfSwgdGltZW91dE1zKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3RvcmVTZWxlY3RlZEluTG9jYWxTdG9yYWdlKGVuZ2luZUlkOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgIGxldCBsb2NhbFN0b3JhZ2VPYmplY3QgPSB0aGlzLnJlYWRMb2NhbFN0b3JhZ2UoKTtcclxuXHJcbiAgICBpZiAoIWxvY2FsU3RvcmFnZU9iamVjdCkge1xyXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gICAgICBsb2NhbFN0b3JhZ2VPYmplY3QgPSB7fSBhcyBhbnk7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIGxvY2FsU3RvcmFnZU9iamVjdFtlbmdpbmVJZF0gPSB0aGlzLmVuZ2luZXNbZW5naW5lSWRdLnNlbGVjdGVkID8gdGhpcy5lbmdpbmVzW2VuZ2luZUlkXT8uc2VsZWN0ZWQ/Lm10Q29sbGVjdGlvbj8uaWQgOiBudWxsO1xyXG4gICAgXHJcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLkxPQ0FMX1NUT1JBR0VfS0VZLCBKU09OLnN0cmluZ2lmeShsb2NhbFN0b3JhZ2VPYmplY3QpKTtcclxuICB9XHJcblxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XHJcbiAgcHJpdmF0ZSByZWFkTG9jYWxTdG9yYWdlKCk6IGFueSB7XHJcbiAgICBjb25zdCBkYXRhID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5MT0NBTF9TVE9SQUdFX0tFWSkgYXMgc3RyaW5nO1xyXG4gICAgdHJ5IHtcclxuICAgICAgcmV0dXJuIEpTT04ucGFyc2UoZGF0YSk7XHJcbiAgICB9IGNhdGNoIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVNlbGVjdGVkQ29sbGVjdGlvbk91dHNpZGVTZXJ2aWNlKCk6IHZvaWQge1xyXG4gICAgdGhpcy51cGRhdGVkRW5naW5lc1N1YmplY3QubmV4dCh0aGlzLmVuZ2luZXMpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import { Injectable } from "@angular/core";
|
|
2
|
-
import { map, of } from "rxjs";
|
|
3
|
-
import { CombinedCollection } from "../../models";
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "../../config/services";
|
|
6
|
-
import * as i2 from "../engine-term-api/engine-term-api.service";
|
|
7
|
-
export class TerminologyApiService {
|
|
8
|
-
constructor(config, engineTermApi) {
|
|
9
|
-
this.config = config;
|
|
10
|
-
this.engineTermApi = engineTermApi;
|
|
11
|
-
this.baseUrl = this.config?.termConfig?.engineTermUrl;
|
|
12
|
-
}
|
|
13
|
-
add(engineId, collection) {
|
|
14
|
-
const access = {
|
|
15
|
-
group: { default: collection.editables.groupDefault },
|
|
16
|
-
};
|
|
17
|
-
if (collection.editables.globalDefault !== undefined) {
|
|
18
|
-
access.global = { default: collection.editables.globalDefault };
|
|
19
|
-
}
|
|
20
|
-
if (!access.group.default && !access.global?.default) {
|
|
21
|
-
access.group.default = false;
|
|
22
|
-
}
|
|
23
|
-
if (!collection.mtCollection) {
|
|
24
|
-
const params = {
|
|
25
|
-
collectionId: collection.termId,
|
|
26
|
-
collectionSource: collection.source,
|
|
27
|
-
access,
|
|
28
|
-
};
|
|
29
|
-
return this.engineTermApi.add(engineId, params).pipe(map((collection) => this.convertToCombinedCollection(collection)));
|
|
30
|
-
}
|
|
31
|
-
else {
|
|
32
|
-
const params = {
|
|
33
|
-
access,
|
|
34
|
-
};
|
|
35
|
-
return this.engineTermApi.update(engineId, collection.mtCollection.id, params).pipe(map((collection) => this.convertToCombinedCollection(collection)));
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
getList(engineId) {
|
|
39
|
-
return this.engineTermApi.getList(engineId).pipe(map((collections) => {
|
|
40
|
-
const converted = [];
|
|
41
|
-
collections?.termCollections?.forEach((collection) => {
|
|
42
|
-
converted.push(this.convertToCombinedCollection(collection));
|
|
43
|
-
});
|
|
44
|
-
return converted;
|
|
45
|
-
}));
|
|
46
|
-
}
|
|
47
|
-
remove(engineId, collection) {
|
|
48
|
-
if (!collection?.mtCollection?.id) {
|
|
49
|
-
return of();
|
|
50
|
-
}
|
|
51
|
-
return this.engineTermApi.remove(engineId, collection.mtCollection.id).pipe(map((collection) => this.convertToCombinedCollection(collection)));
|
|
52
|
-
}
|
|
53
|
-
sync(engineId, collection) {
|
|
54
|
-
if (!collection?.mtCollection?.id) {
|
|
55
|
-
return of();
|
|
56
|
-
}
|
|
57
|
-
return this.engineTermApi.sync(engineId, collection.mtCollection.id).pipe(map((updatedCollection) => {
|
|
58
|
-
return updatedCollection ? this.convertToCombinedCollection(updatedCollection) : collection;
|
|
59
|
-
}));
|
|
60
|
-
}
|
|
61
|
-
convertToCombinedCollection(collection) {
|
|
62
|
-
const convertedMtCollection = {
|
|
63
|
-
id: collection.id,
|
|
64
|
-
lastUpdated: collection.externalCollection?.updatedAt ? new Date(collection.externalCollection.updatedAt) : null,
|
|
65
|
-
name: collection.name,
|
|
66
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
67
|
-
status: collection.status,
|
|
68
|
-
subStatus: collection.subStatus,
|
|
69
|
-
termId: collection.externalCollection.id,
|
|
70
|
-
termCount: collection.externalCollection.termCount,
|
|
71
|
-
progress: collection.progress,
|
|
72
|
-
collectionSource: collection.collectionSource,
|
|
73
|
-
access: collection.access,
|
|
74
|
-
};
|
|
75
|
-
return new CombinedCollection(null, convertedMtCollection);
|
|
76
|
-
}
|
|
77
|
-
static { this.ɵfac = function TerminologyApiService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || TerminologyApiService)(i0.ɵɵinject(i1.TerminologyConfigService), i0.ɵɵinject(i2.EngineTermApiService)); }; }
|
|
78
|
-
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: TerminologyApiService, factory: TerminologyApiService.ɵfac, providedIn: "root" }); }
|
|
79
|
-
}
|
|
80
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TerminologyApiService, [{
|
|
81
|
-
type: Injectable,
|
|
82
|
-
args: [{
|
|
83
|
-
providedIn: "root",
|
|
84
|
-
}]
|
|
85
|
-
}], () => [{ type: i1.TerminologyConfigService }, { type: i2.EngineTermApiService }], null); })();
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybWlub2xvZ3ktYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY29tbW9uL3NyYy9saWIvdGVybWlub2xvZ3kvc2VydmljZXMvdGVybWlub2xvZ3ktYXBpL3Rlcm1pbm9sb2d5LWFwaS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLEdBQUcsRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFM0MsT0FBTyxFQUErQixrQkFBa0IsRUFBd0csTUFBTSxjQUFjLENBQUM7Ozs7QUFNckwsTUFBTSxPQUFPLHFCQUFxQjtJQUdoQyxZQUE2QixNQUFnQyxFQUFtQixhQUFtQztRQUF0RixXQUFNLEdBQU4sTUFBTSxDQUEwQjtRQUFtQixrQkFBYSxHQUFiLGFBQWEsQ0FBc0I7UUFDakgsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxhQUF1QixDQUFDO0lBQ2xFLENBQUM7SUFFRCxHQUFHLENBQUMsUUFBZ0IsRUFBRSxVQUE4QjtRQUNsRCxNQUFNLE1BQU0sR0FBcUM7WUFDL0MsS0FBSyxFQUFFLEVBQUUsT0FBTyxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUMsWUFBdUIsRUFBRTtTQUNqRSxDQUFDO1FBRUYsSUFBSSxVQUFVLENBQUMsU0FBUyxDQUFDLGFBQWEsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNyRCxNQUFNLENBQUMsTUFBTSxHQUFHLEVBQUUsT0FBTyxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLENBQUE7UUFDakUsQ0FBQztRQUVELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUM7WUFDckQs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SUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJO1lBQ2hILElBQUksRUFBRSxVQUFVLENBQUMsSUFBSTtZQUNyQiw4REFBOEQ7WUFDOUQsTUFBTSxFQUFFLFVBQVUsQ0FBQyxNQUFhO1lBQ2hDLFNBQVMsRUFBRSxVQUFVLENBQUMsU0FBUztZQUMvQixNQUFNLEVBQUUsVUFBVSxDQUFDLGtCQUFrQixDQUFDLEVBQUU7WUFDeEMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTO1lBQ2xELFFBQVEsRUFBRSxVQUFVLENBQUMsUUFBUTtZQUM3QixnQkFBZ0IsRUFBRSxVQUFVLENBQUMsZ0JBQWdCO1lBQzdDLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBTTtTQUMxQixDQUFDO1FBQ0YsT0FBTyxJQUFJLGtCQUFrQixDQUFDLElBQUksRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO0lBQzdELENBQUM7c0hBbEZVLHFCQUFxQjt1RUFBckIscUJBQXFCLFdBQXJCLHFCQUFxQixtQkFGcEIsTUFBTTs7aUZBRVAscUJBQXFCO2NBSGpDLFVBQVU7ZUFBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBtYXAsIG9mIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgVGVybWlub2xvZ3lDb25maWdTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2NvbmZpZy9zZXJ2aWNlc1wiO1xyXG5pbXBvcnQgeyBBZGRFbmdpbmVUZXJtc1JlcXVlc3RQYXJhbXMsIENvbWJpbmVkQ29sbGVjdGlvbiwgRW5naW5lVGVybUNvbGxlY3Rpb24sIEVuZ2luZVRlcm1Db2xsZWN0aW9uQWNjZXNzVXBkYXRlLCBNdENvbGxlY3Rpb24sIFVwZGF0ZUVuZ2luZVRlcm1zUmVxdWVzdFBhcmFtcyB9IGZyb20gXCIuLi8uLi9tb2RlbHNcIjtcclxuaW1wb3J0IHsgRW5naW5lVGVybUFwaVNlcnZpY2UgfSBmcm9tIFwiLi4vZW5naW5lLXRlcm0tYXBpL2VuZ2luZS10ZXJtLWFwaS5zZXJ2aWNlXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogXCJyb290XCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUZXJtaW5vbG9neUFwaVNlcnZpY2Uge1xyXG4gIGJhc2VVcmwhOiBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY29uZmlnOiBUZXJtaW5vbG9neUNvbmZpZ1NlcnZpY2UsIHByaXZhdGUgcmVhZG9ubHkgZW5naW5lVGVybUFwaTogRW5naW5lVGVybUFwaVNlcnZpY2UpIHtcclxuICAgIHRoaXMuYmFzZVVybCA9IHRoaXMuY29uZmlnPy50ZXJtQ29uZmlnPy5lbmdpbmVUZXJtVXJsIGFzIHN0cmluZztcclxuICB9XHJcblxyXG4gIGFkZChlbmdpbmVJZDogc3RyaW5nLCBjb2xsZWN0aW9uOiBDb21iaW5lZENvbGxlY3Rpb24pOiBPYnNlcnZhYmxlPENvbWJpbmVkQ29sbGVjdGlvbj4ge1xyXG4gICAgY29uc3QgYWNjZXNzOiBFbmdpbmVUZXJtQ29sbGVjdGlvbkFjY2Vzc1VwZGF0ZSA9IHtcclxuICAgICAgZ3JvdXA6IHsgZGVmYXVsdDogY29sbGVjdGlvbi5lZGl0YWJsZXMuZ3JvdXBEZWZhdWx0IGFzIGJvb2xlYW4gfSxcclxuICAgIH07XHJcblxyXG4gICAgaWYgKGNvbGxlY3Rpb24uZWRpdGFibGVzLmdsb2JhbERlZmF1bHQgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICBhY2Nlc3MuZ2xvYmFsID0geyBkZWZhdWx0OiBjb2xsZWN0aW9uLmVkaXRhYmxlcy5nbG9iYWxEZWZhdWx0IH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAoIWFjY2Vzcy5ncm91cC5kZWZhdWx0ICYmICFhY2Nlc3MuZ2xvYmFsPy5kZWZhdWx0KSB7XHJcbiAgICAgIGFjY2Vzcy5ncm91cC5kZWZhdWx0ID0gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCFjb2xsZWN0aW9uLm10Q29sbGVjdGlvbikge1xyXG4gICAgICBjb25zdCBwYXJhbXM6IEFkZEVuZ2luZVRlcm1zUmVxdWVzdFBhcmFtcyA9IHtcclxuICAgICAgICBjb2xsZWN0aW9uSWQ6IGNvbGxlY3Rpb24udGVybUlkLFxyXG4gICAgICAgIGNvbGxlY3Rpb25Tb3VyY2U6IGNvbGxlY3Rpb24uc291cmNlLFxyXG4gICAgICAgIGFjY2VzcyxcclxuICAgICAgfTtcclxuICAgICAgcmV0dXJuIHRoaXMuZW5naW5lVGVybUFwaS5hZGQoZW5naW5lSWQsIHBhcmFtcykucGlwZShtYXAoKGNvbGxlY3Rpb24pID0+IHRoaXMuY29udmVydFRvQ29tYmluZWRDb2xsZWN0aW9uKGNvbGxlY3Rpb24pKSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zdCBwYXJhbXM6IFVwZGF0ZUVuZ2luZVRlcm1zUmVxdWVzdFBhcmFtcyA9IHtcclxuICAgICAgICBhY2Nlc3MsXHJcbiAgICAgIH07XHJcbiAgICAgIHJldHVybiB0aGlzLmVuZ2luZVRlcm1BcGkudXBkYXRlKGVuZ2luZUlkLCBjb2xsZWN0aW9uLm10Q29sbGVjdGlvbi5pZCwgcGFyYW1zKS5waXBlKG1hcCgoY29sbGVjdGlvbikgPT4gdGhpcy5jb252ZXJ0VG9Db21iaW5lZENvbGxlY3Rpb24oY29sbGVjdGlvbikpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldExpc3QoZW5naW5lSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8Q29tYmluZWRDb2xsZWN0aW9uW10+IHtcclxuICAgIHJldHVybiB0aGlzLmVuZ2luZVRlcm1BcGkuZ2V0TGlzdChlbmdpbmVJZCkucGlwZShcclxuICAgICAgbWFwKChjb2xsZWN0aW9ucykgPT4ge1xyXG4gICAgICAgIGNvbnN0IGNvbnZlcnRlZDogQ29tYmluZWRDb2xsZWN0aW9uW10gPSBbXTtcclxuICAgICAgICBjb2xsZWN0aW9ucz8udGVybUNvbGxlY3Rpb25zPy5mb3JFYWNoKChjb2xsZWN0aW9uKSA9PiB7XHJcbiAgICAgICAgICBjb252ZXJ0ZWQucHVzaCh0aGlzLmNvbnZlcnRUb0NvbWJpbmVkQ29sbGVjdGlvbihjb2xsZWN0aW9uKSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIGNvbnZlcnRlZDtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICByZW1vdmUoZW5naW5lSWQ6IHN0cmluZywgY29sbGVjdGlvbjogQ29tYmluZWRDb2xsZWN0aW9uKTogT2JzZXJ2YWJsZTxDb21iaW5lZENvbGxlY3Rpb24+IHtcclxuICAgIGlmICghY29sbGVjdGlvbj8ubXRDb2xsZWN0aW9uPy5pZCkge1xyXG4gICAgICByZXR1cm4gb2YoKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGhpcy5lbmdpbmVUZXJtQXBpLnJlbW92ZShlbmdpbmVJZCwgY29sbGVjdGlvbi5tdENvbGxlY3Rpb24uaWQpLnBpcGUobWFwKChjb2xsZWN0aW9uKSA9PiB0aGlzLmNvbnZlcnRUb0NvbWJpbmVkQ29sbGVjdGlvbihjb2xsZWN0aW9uKSkpO1xyXG4gIH1cclxuXHJcbiAgc3luYyhlbmdpbmVJZDogc3RyaW5nLCBjb2xsZWN0aW9uOiBDb21iaW5lZENvbGxlY3Rpb24pOiBPYnNlcnZhYmxlPENvbWJpbmVkQ29sbGVjdGlvbj4ge1xyXG4gICAgaWYgKCFjb2xsZWN0aW9uPy5tdENvbGxlY3Rpb24/LmlkKSB7XHJcbiAgICAgIHJldHVybiBvZigpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0aGlzLmVuZ2luZVRlcm1BcGkuc3luYyhlbmdpbmVJZCwgY29sbGVjdGlvbi5tdENvbGxlY3Rpb24uaWQpLnBpcGUoXHJcbiAgICAgIG1hcCgodXBkYXRlZENvbGxlY3Rpb24pID0+IHtcclxuICAgICAgICByZXR1cm4gdXBkYXRlZENvbGxlY3Rpb24gPyB0aGlzLmNvbnZlcnRUb0NvbWJpbmVkQ29sbGVjdGlvbih1cGRhdGVkQ29sbGVjdGlvbikgOiBjb2xsZWN0aW9uO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY29udmVydFRvQ29tYmluZWRDb2xsZWN0aW9uKGNvbGxlY3Rpb246IEVuZ2luZVRlcm1Db2xsZWN0aW9uKTogQ29tYmluZWRDb2xsZWN0aW9uIHtcclxuICAgIGNvbnN0IGNvbnZlcnRlZE10Q29sbGVjdGlvbjogTXRDb2xsZWN0aW9uID0ge1xyXG4gICAgICBpZDogY29sbGVjdGlvbi5pZCxcclxuICAgICAgbGFzdFVwZGF0ZWQ6IGNvbGxlY3Rpb24uZXh0ZXJuYWxDb2xsZWN0aW9uPy51cGRhdGVkQXQgPyBuZXcgRGF0ZShjb2xsZWN0aW9uLmV4dGVybmFsQ29sbGVjdGlvbi51cGRhdGVkQXQpIDogbnVsbCxcclxuICAgICAgbmFtZTogY29sbGVjdGlvbi5uYW1lLFxyXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxyXG4gICAgICBzdGF0dXM6IGNvbGxlY3Rpb24uc3RhdHVzIGFzIGFueSxcclxuICAgICAgc3ViU3RhdHVzOiBjb2xsZWN0aW9uLnN1YlN0YXR1cyxcclxuICAgICAgdGVybUlkOiBjb2xsZWN0aW9uLmV4dGVybmFsQ29sbGVjdGlvbi5pZCxcclxuICAgICAgdGVybUNvdW50OiBjb2xsZWN0aW9uLmV4dGVybmFsQ29sbGVjdGlvbi50ZXJtQ291bnQsXHJcbiAgICAgIHByb2dyZXNzOiBjb2xsZWN0aW9uLnByb2dyZXNzLFxyXG4gICAgICBjb2xsZWN0aW9uU291cmNlOiBjb2xsZWN0aW9uLmNvbGxlY3Rpb25Tb3VyY2UsXHJcbiAgICAgIGFjY2VzczogY29sbGVjdGlvbi5hY2Nlc3MsXHJcbiAgICB9O1xyXG4gICAgcmV0dXJuIG5ldyBDb21iaW5lZENvbGxlY3Rpb24obnVsbCwgY29udmVydGVkTXRDb2xsZWN0aW9uKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './terminology-collection.service';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY29tbW9uL3NyYy9saWIvdGVybWlub2xvZ3kvc2VydmljZXMvdGVybWlub2xvZ3ktY29sbGVjdGlvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGtDQUFrQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi90ZXJtaW5vbG9neS1jb2xsZWN0aW9uLnNlcnZpY2UnOyJdfQ==
|