@tilde-nlp/ngx-translate 4.0.39 → 4.0.40
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/esm2022/lib/modules/tld-tooltip/tld-translate-switcher/tld-translate-switcher.component.mjs +1 -1
- package/esm2022/lib/modules/tld-tooltip/translation-system-picker/translation-system-picker.component.mjs +1 -1
- package/esm2022/lib/tld-translate.component.mjs +7 -2
- package/fesm2022/tilde-nlp-ngx-translate.mjs +8 -3
- package/fesm2022/tilde-nlp-ngx-translate.mjs.map +1 -1
- package/package.json +1 -1
- package/src/assets/webcomponent/tld-translate.js +1 -1
package/esm2022/lib/modules/tld-tooltip/tld-translate-switcher/tld-translate-switcher.component.mjs
CHANGED
|
@@ -143,7 +143,7 @@ export class TldTranslateSwitcherComponent {
|
|
|
143
143
|
});
|
|
144
144
|
}
|
|
145
145
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TldTranslateSwitcherComponent, deps: [{ token: i1.TldTranslateConfigService }, { token: i1.TldTranslateSystemManagementService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
146
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TldTranslateSwitcherComponent, selector: "tld-translate-switcher", inputs: { buttonDisabled: "buttonDisabled", showTranslateButton: "showTranslateButton", hideOnSmallScreens: "hideOnSmallScreens", disabled: "disabled", hideLangMenuLabels: "hideLangMenuLabels", maxDisplayedLanguages: "maxDisplayedLanguages", collections: "collections", showDomainsWithLanguageName: "showDomainsWithLanguageName", isCollectionsActivated: "isCollectionsActivated", useParentWidth: "useParentWidth", loader: "loader", settings: "settings" }, outputs: { onDomainChange: "onDomainChange", onActionClick: "onActionClick", onSourceLanguageChange: "onSourceLanguageChange", onTargetLanguageChange: "onTargetLanguageChange", onLanguageSwap: "onLanguageSwap", onVendorChange: "onVendorChange" }, host: { listeners: { "window:resize": "onResize()" } }, viewQueries: [{ propertyName: "wrapper", first: true, predicate: ["wrapper"], descendants: true }, { propertyName: "fromLabel", first: true, predicate: ["fromLabel"], descendants: true }, { propertyName: "sourceAside", first: true, predicate: ["sourceAside"], descendants: true }, { propertyName: "toLabel", first: true, predicate: ["toLabel"], descendants: true }, { propertyName: "domainWrapper", first: true, predicate: ["domainWrapper"], descendants: true }, { propertyName: "vendorWrapper", first: true, predicate: ["vendorWrapper"], descendants: true }, { propertyName: "collectionWrapper", first: true, predicate: ["collectionWrapper"], descendants: true }], ngImport: i0, template: "<div fxLayout=\"row\" fxLayoutAlign=\"center center\" class=\"tld-translate-switcher-container\" #wrapper\r\n [ngClass.lt-md]=\"'tld-translate-switcher-container-tablet'\"\r\n [ngClass.lt-sm]=\"'tld-translate-switcher-container-mobile'\"\r\n [class.tld-switcher-with-collections]='collectionsVisible'>\r\n\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\">\r\n <div fxHide.lt-md *ngIf=\"!hideLangMenuLabels\" #fromLabel>{{'TLD_TRANSLATE.FROM' | translate}}</div>\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\">\r\n <tld-lang-list id=\"tld-source-language-list\" [disabled]=\"disabled\" [testId]=\"srcLangTestId\"\r\n [languages]=\"settings.sourceLanguageList\" (onLanguageChange)=\"sourceLangChange($event)\"\r\n [selected]=\"settings.source\" [maxDisplayedLanguages]=\"visibleLanguageCount\"></tld-lang-list>\r\n <ng-container *ngIf=\"domainSide==='src'\">\r\n <ng-container *ngTemplateOutlet=\"domainTemplate;\">\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n <div #sourceAside *ngIf=\"swapIconPosition==='src'\">\r\n <ng-container *ngTemplateOutlet=\"swapButtonTemplate;\"></ng-container>\r\n </div>\r\n </div>\r\n <div *ngIf=\"swapIconPosition==='center'\">\r\n <ng-container *ngTemplateOutlet=\"swapButtonTemplate;\"></ng-container>\r\n </div>\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\" fxLayoutAlign.lt-sm=\"end center\">\r\n <div fxHide.lt-md *ngIf=\"!hideLangMenuLabels\" #toLabel>{{'TLD_TRANSLATE.TO' | translate}}</div>\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\">\r\n <tld-lang-list [disabled]=\"disabled\" id=\"tld-target-language-list\" [languages]=\"settings.targetLanguageList\"\r\n (onLanguageChange)=\"targetLangChange($event)\" [selected]=\"settings.target\"\r\n [maxDisplayedLanguages]=\"visibleLanguageCount\" [testId]=\"trgLangTestId\" (onDomainChange)=\"domainChange($event)\"\r\n [showDomainsWithLanguageName]=\"showDomainsWithLanguageName\">\r\n <ng-container *ngIf=\"domainSide==='trg'\">\r\n <ng-container *ngTemplateOutlet=\"domainTemplate;\">\r\n </ng-container>\r\n </ng-container>\r\n <div class=\"tld-translate-vendor-selection\" fxLayoutAlign=\"center center\" *ngIf=\"showVendors\" #vendorWrapper>\r\n <tld-list-menu (selectionChange)=\"domainChange($event)\" [list]=\"settings.vendors\" [titleKey]=\"'title'\"\r\n [valueKey]=\"'systemId'\" testId=\"tld-vendor-list\" [disabled]=\"disabled\" [showContent]=\"false\"\r\n [ariaLabel]=\"'TLD_TRANSLATE.VENDORS_ARIA_LABEL' | translate\" [selectedValue]=\"settings.systemId\">\r\n </tld-list-menu>\r\n </div>\r\n </tld-lang-list>\r\n </div>\r\n <div fxLayout=\"row\" fxLayoutGap.gt-xs=\"16px\">\r\n <div *ngIf=\"collectionsVisible\" #collectionWrapper>\r\n <lib-terminology [system]=\"system\" [disabled]=\"buttonDisabled\"></lib-terminology>\r\n </div>\r\n <tld-loader *ngIf=\"loader\" fxHide.lt-sm></tld-loader>\r\n <tld-translate-button [enablePulseAnimation]=\"true\" *ngIf=\"showTranslateButton && !loader\" class=\"switcher-translate-button\"\r\n [fxHide.lt-sm]=\"hideOnSmallScreens\" [disabled]=\"buttonDisabled\"></tld-translate-button>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #swapButtonTemplate>\r\n <button [disabled]=\"isSwapLanguagesDisabled\" class=\"swap-languages-button\" mat-icon-button\r\n (click)=\"swapSourceAndTarget()\" aria-label=\"swap languages\" color=\"primary\"\r\n matTooltip=\"{{'TOOLTIPS.SWAP_LANGUAGES' | translate}}\">\r\n <span class=\"material-icons\" aria-hidden=\"false\"\r\n [attr.aria-label]=\"'ARIA_LABELS.SWAP_LANGUAGES' | translate\">swap_horiz</span>\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template #domainTemplate>\r\n <div class=\"tld-translate-domain-selection\" fxLayoutAlign=\"center center\" *ngIf=\"showDomains\" #domainWrapper>\r\n <tld-domain-list fxLayoutAlign=\"center center\" (selectionChange)=\"domainChange($event)\"\r\n [list]=\"settings.domains.domains\" [selected]=\"settings.domains.active\" [selected]=\"settings.domains.active\"\r\n [disabled]=\"disabled\"></tld-domain-list>\r\n </div>\r\n</ng-template>\r\n", styles: [".tld-translate-switcher-container:not(.tld-translate-switcher-container-tablet,.tld-translate-switcher-container-mobile) tld-lang-list{margin:0 10px}.tld-translate-switcher-container-mobile :host ::ng-deep button{padding:0!important}.swap-icon{color:#5a6672}.switcher-translate-button{min-width:100px}mat-select{min-width:75px;max-width:125px}.swap-languages-button[disabled]{cursor:not-allowed}.tld-translate-domain-selection,tld-translate-vendor-selection{height:100%}tld-loader{margin:auto}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i3.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i4.DefaultShowHideDirective, selector: " [fxShow], [fxShow.print], [fxShow.xs], [fxShow.sm], [fxShow.md], [fxShow.lg], [fxShow.xl], [fxShow.lt-sm], [fxShow.lt-md], [fxShow.lt-lg], [fxShow.lt-xl], [fxShow.gt-xs], [fxShow.gt-sm], [fxShow.gt-md], [fxShow.gt-lg], [fxHide], [fxHide.print], [fxHide.xs], [fxHide.sm], [fxHide.md], [fxHide.lg], [fxHide.xl], [fxHide.lt-sm], [fxHide.lt-md], [fxHide.lt-lg], [fxHide.lt-xl], [fxHide.gt-xs], [fxHide.gt-sm], [fxHide.gt-md], [fxHide.gt-lg]", inputs: ["fxShow", "fxShow.print", "fxShow.xs", "fxShow.sm", "fxShow.md", "fxShow.lg", "fxShow.xl", "fxShow.lt-sm", "fxShow.lt-md", "fxShow.lt-lg", "fxShow.lt-xl", "fxShow.gt-xs", "fxShow.gt-sm", "fxShow.gt-md", "fxShow.gt-lg", "fxHide", "fxHide.print", "fxHide.xs", "fxHide.sm", "fxHide.md", "fxHide.lg", "fxHide.xl", "fxHide.lt-sm", "fxHide.lt-md", "fxHide.lt-lg", "fxHide.lt-xl", "fxHide.gt-xs", "fxHide.gt-sm", "fxHide.gt-md", "fxHide.gt-lg"] }, { kind: "directive", type: i4.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: i5.TldLangListComponent, selector: "tld-lang-list", inputs: ["disabled", "pxPerLanguage", "languages", "testId", "selected", "maxDisplayedLanguages", "showDomainsWithLanguageName"], outputs: ["onLanguageChange", "onDomainChange"] }, { kind: "component", type: i6.TldLoaderComponent, selector: "tld-loader" }, { kind: "component", type: i7.TldTranslateButtonComponent, selector: "tld-translate-button", inputs: ["disabled", "enablePulseAnimation"], outputs: ["clicked"] }, { kind: "component", type: i8.TldListMenuComponent, selector: "tld-list-menu", inputs: ["titleKey", "list", "showContent", "selectedValue", "disabled", "ariaLabel", "valueKey", "testId"], outputs: ["selectionChange"] }, { kind: "component", type: i9.TerminologyComponent, selector: "lib-terminology", inputs: ["selectedCollectionId", "system", "disabled", "storeSelectedInLocalStorage", "showMenuIconOnMobile"], outputs: ["glossarySelectEvent", "menuToggleEvent"] }, { kind: "directive", type: i10.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i11.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i12.TldDomainListComponent, selector: "tld-domain-list", inputs: ["list", "selected", "disabled"], outputs: ["selectionChange"] }, { kind: "pipe", type: i13.TranslatePipe, name: "translate" }] });
|
|
146
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TldTranslateSwitcherComponent, selector: "tld-translate-switcher", inputs: { buttonDisabled: "buttonDisabled", showTranslateButton: "showTranslateButton", hideOnSmallScreens: "hideOnSmallScreens", disabled: "disabled", hideLangMenuLabels: "hideLangMenuLabels", maxDisplayedLanguages: "maxDisplayedLanguages", collections: "collections", showDomainsWithLanguageName: "showDomainsWithLanguageName", isCollectionsActivated: "isCollectionsActivated", useParentWidth: "useParentWidth", loader: "loader", settings: "settings" }, outputs: { onDomainChange: "onDomainChange", onActionClick: "onActionClick", onSourceLanguageChange: "onSourceLanguageChange", onTargetLanguageChange: "onTargetLanguageChange", onLanguageSwap: "onLanguageSwap", onVendorChange: "onVendorChange" }, host: { listeners: { "window:resize": "onResize()" } }, viewQueries: [{ propertyName: "wrapper", first: true, predicate: ["wrapper"], descendants: true }, { propertyName: "fromLabel", first: true, predicate: ["fromLabel"], descendants: true }, { propertyName: "sourceAside", first: true, predicate: ["sourceAside"], descendants: true }, { propertyName: "toLabel", first: true, predicate: ["toLabel"], descendants: true }, { propertyName: "domainWrapper", first: true, predicate: ["domainWrapper"], descendants: true }, { propertyName: "vendorWrapper", first: true, predicate: ["vendorWrapper"], descendants: true }, { propertyName: "collectionWrapper", first: true, predicate: ["collectionWrapper"], descendants: true }], ngImport: i0, template: "<div fxLayout=\"row\" fxLayoutAlign=\"center center\" class=\"tld-translate-switcher-container\" #wrapper\r\n [ngClass.lt-md]=\"'tld-translate-switcher-container-tablet'\"\r\n [ngClass.lt-sm]=\"'tld-translate-switcher-container-mobile'\"\r\n [class.tld-switcher-with-collections]='collectionsVisible'>\r\n\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\">\r\n <div fxHide.lt-md *ngIf=\"!hideLangMenuLabels\" #fromLabel>{{'TLD_TRANSLATE.FROM' | translate}}</div>\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\">\r\n <tld-lang-list id=\"tld-source-language-list\" [disabled]=\"disabled\" [testId]=\"srcLangTestId\"\r\n [languages]=\"settings.sourceLanguageList\" (onLanguageChange)=\"sourceLangChange($event)\"\r\n [selected]=\"settings.source\" [maxDisplayedLanguages]=\"visibleLanguageCount\"></tld-lang-list>\r\n <ng-container *ngIf=\"domainSide==='src'\">\r\n <ng-container *ngTemplateOutlet=\"domainTemplate;\">\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n <div #sourceAside *ngIf=\"swapIconPosition==='src'\">\r\n <ng-container *ngTemplateOutlet=\"swapButtonTemplate;\"></ng-container>\r\n </div>\r\n </div>\r\n <div *ngIf=\"swapIconPosition==='center'\">\r\n <ng-container *ngTemplateOutlet=\"swapButtonTemplate;\"></ng-container>\r\n </div>\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\" fxLayoutAlign.lt-sm=\"end center\">\r\n <div fxHide.lt-md *ngIf=\"!hideLangMenuLabels\" #toLabel>{{'TLD_TRANSLATE.TO' | translate}}</div>\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\">\r\n <tld-lang-list [disabled]=\"disabled\" id=\"tld-target-language-list\" [languages]=\"settings.targetLanguageList\"\r\n (onLanguageChange)=\"targetLangChange($event)\" [selected]=\"settings.target\"\r\n [maxDisplayedLanguages]=\"visibleLanguageCount\" [testId]=\"trgLangTestId\" (onDomainChange)=\"domainChange($event)\"\r\n [showDomainsWithLanguageName]=\"showDomainsWithLanguageName\">\r\n <ng-container *ngIf=\"domainSide==='trg'\">\r\n <ng-container *ngTemplateOutlet=\"domainTemplate;\">\r\n </ng-container>\r\n </ng-container>\r\n <div class=\"tld-translate-vendor-selection\" fxLayoutAlign=\"center center\" *ngIf=\"showVendors\" #vendorWrapper>\r\n <tld-list-menu (selectionChange)=\"domainChange($event)\" [list]=\"settings.vendors\" [titleKey]=\"'title'\"\r\n [valueKey]=\"'systemId'\" testId=\"tld-vendor-list\" [disabled]=\"disabled\" [showContent]=\"false\"\r\n [ariaLabel]=\"'TLD_TRANSLATE.VENDORS_ARIA_LABEL' | translate\" [selectedValue]=\"settings.systemId\">\r\n </tld-list-menu>\r\n </div>\r\n </tld-lang-list>\r\n </div>\r\n <div fxLayout=\"row\" fxLayoutGap.gt-xs=\"16px\">\r\n <div *ngIf=\"collectionsVisible\" #collectionWrapper>\r\n <lib-terminology [system]=\"system\" [disabled]=\"buttonDisabled\"></lib-terminology>\r\n </div>\r\n <tld-loader *ngIf=\"loader\" fxHide.lt-sm></tld-loader>\r\n <tld-translate-button [enablePulseAnimation]=\"true\" *ngIf=\"showTranslateButton && !loader\" class=\"switcher-translate-button\"\r\n [fxHide.lt-sm]=\"hideOnSmallScreens\" [disabled]=\"buttonDisabled\"></tld-translate-button>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #swapButtonTemplate>\r\n <button [disabled]=\"isSwapLanguagesDisabled\" class=\"swap-languages-button\" mat-icon-button\r\n (click)=\"swapSourceAndTarget()\" aria-label=\"swap languages\" color=\"primary\"\r\n matTooltip=\"{{'TOOLTIPS.SWAP_LANGUAGES' | translate}}\">\r\n <span class=\"material-icons\" aria-hidden=\"false\"\r\n [attr.aria-label]=\"'ARIA_LABELS.SWAP_LANGUAGES' | translate\">swap_horiz</span>\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template #domainTemplate>\r\n <div class=\"tld-translate-domain-selection\" fxLayoutAlign=\"center center\" *ngIf=\"showDomains\" #domainWrapper>\r\n <tld-domain-list fxLayoutAlign=\"center center\" (selectionChange)=\"domainChange($event)\"\r\n [list]=\"settings.domains.domains\" [selected]=\"settings.domains.active\" [selected]=\"settings.domains.active\"\r\n [disabled]=\"disabled\"></tld-domain-list>\r\n </div>\r\n</ng-template>\r\n", styles: [".tld-translate-switcher-container:not(.tld-translate-switcher-container-tablet,.tld-translate-switcher-container-mobile) tld-lang-list{margin:0 10px}.tld-translate-switcher-container-mobile :host ::ng-deep button{padding:0!important}.swap-icon{color:#5a6672}.switcher-translate-button{min-width:100px}mat-select{min-width:75px;max-width:125px}.swap-languages-button[disabled]{cursor:not-allowed}.tld-translate-domain-selection,tld-translate-vendor-selection{height:100%}tld-loader{margin:auto}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i3.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i4.DefaultShowHideDirective, selector: " [fxShow], [fxShow.print], [fxShow.xs], [fxShow.sm], [fxShow.md], [fxShow.lg], [fxShow.xl], [fxShow.lt-sm], [fxShow.lt-md], [fxShow.lt-lg], [fxShow.lt-xl], [fxShow.gt-xs], [fxShow.gt-sm], [fxShow.gt-md], [fxShow.gt-lg], [fxHide], [fxHide.print], [fxHide.xs], [fxHide.sm], [fxHide.md], [fxHide.lg], [fxHide.xl], [fxHide.lt-sm], [fxHide.lt-md], [fxHide.lt-lg], [fxHide.lt-xl], [fxHide.gt-xs], [fxHide.gt-sm], [fxHide.gt-md], [fxHide.gt-lg]", inputs: ["fxShow", "fxShow.print", "fxShow.xs", "fxShow.sm", "fxShow.md", "fxShow.lg", "fxShow.xl", "fxShow.lt-sm", "fxShow.lt-md", "fxShow.lt-lg", "fxShow.lt-xl", "fxShow.gt-xs", "fxShow.gt-sm", "fxShow.gt-md", "fxShow.gt-lg", "fxHide", "fxHide.print", "fxHide.xs", "fxHide.sm", "fxHide.md", "fxHide.lg", "fxHide.xl", "fxHide.lt-sm", "fxHide.lt-md", "fxHide.lt-lg", "fxHide.lt-xl", "fxHide.gt-xs", "fxHide.gt-sm", "fxHide.gt-md", "fxHide.gt-lg"] }, { kind: "directive", type: i4.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: i5.TldLangListComponent, selector: "tld-lang-list", inputs: ["disabled", "pxPerLanguage", "languages", "testId", "selected", "maxDisplayedLanguages", "showDomainsWithLanguageName"], outputs: ["onLanguageChange", "onDomainChange"] }, { kind: "component", type: i6.TldLoaderComponent, selector: "tld-loader" }, { kind: "component", type: i7.TldTranslateButtonComponent, selector: "tld-translate-button", inputs: ["disabled", "enablePulseAnimation"], outputs: ["clicked"] }, { kind: "component", type: i8.TldListMenuComponent, selector: "tld-list-menu", inputs: ["titleKey", "list", "showContent", "selectedValue", "disabled", "ariaLabel", "valueKey", "testId"], outputs: ["selectionChange"] }, { kind: "component", type: i9.TerminologyComponent, selector: "lib-terminology", inputs: ["selectedCollectionId", "system", "disabled", "storeSelectedInLocalStorage", "setSelectedFromLocalStorage", "showMenuIconOnMobile"], outputs: ["glossarySelectEvent", "menuToggleEvent"] }, { kind: "directive", type: i10.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i11.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i12.TldDomainListComponent, selector: "tld-domain-list", inputs: ["list", "selected", "disabled"], outputs: ["selectionChange"] }, { kind: "pipe", type: i13.TranslatePipe, name: "translate" }] });
|
|
147
147
|
}
|
|
148
148
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TldTranslateSwitcherComponent, decorators: [{
|
|
149
149
|
type: Component,
|
|
@@ -75,7 +75,7 @@ export class TranslationSystemPickerComponent {
|
|
|
75
75
|
});
|
|
76
76
|
}
|
|
77
77
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TranslationSystemPickerComponent, deps: [{ token: i1.TranslationSystemPickerService }, { token: i2.TldTranslateSystemManagementService }], target: i0.ɵɵFactoryTarget.Component });
|
|
78
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TranslationSystemPickerComponent, selector: "tld-translation-system-picker", inputs: { isCollectionsActivated: "isCollectionsActivated" }, ngImport: i0, template: "<div fxFlex fxLayout=\"row\">\r\n <ng-container *ngIf=\"isDataLoaded\">\r\n <div fxFlex fxLayoutAlign=\"space-between center\">\r\n <ng-container\r\n *ngTemplateOutlet=\"languageDropdownTrigger; context: { language: sourceLanguage, localizationKey: 'SYSTEM_PICKER.SOURCE', isOpened: isSourceOpened, isSource: true, ariaLabelCode: sourceAriaLabel }\">\r\n </ng-container>\r\n <button [disabled]=\"!canSwap\" class=\"swap-languages-button\" mat-icon-button (click)=\"swap()\"\r\n aria-label=\"swap languages\" color=\"primary\" matTooltip=\"{{'TOOLTIPS.SWAP_LANGUAGES' | translate}}\">\r\n <span class=\"material-icons\" aria-hidden=\"false\"\r\n [attr.aria-label]=\"'ARIA_LABELS.SWAP_LANGUAGES' | translate\">swap_horiz</span>\r\n </button>\r\n </div>\r\n <div fxFlex fxLayoutAlign=\"space-between center\">\r\n <ng-container\r\n *ngTemplateOutlet=\"languageDropdownTrigger; context: { language: targetLanguage, localizationKey: 'SYSTEM_PICKER.TARGET', isOpened: isTargetOpened, isSource: false, ariaLabelCode: targetAriaLabel}\">\r\n </ng-container>\r\n\r\n <div *ngIf=\"collectionsVisible\" #collectionWrapper>\r\n <lib-terminology [system]=\"system\"></lib-terminology>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #languageName let-language=\"language\" let-showDomain=\"showDomain\" let-detectedLanguage=\"detectedLanguage\">\r\n <span>{{ language.lang | languageTranslate }}</span>\r\n <span *ngIf=\"detectedLanguage && !showDomain\"> - {{'SYSTEM_PICKER.DETECTED' | translate}}</span>\r\n <ng-container *ngIf=\"showDomain && domainLength>1\">\r\n <span>(</span>\r\n <span class=\"domain\">{{('DOMAINS.'+(activeDomainKey | uppercase)) | translate: {default: activeDomainKey} }}</span>\r\n <span>)</span>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #openedDropdown let-localizationKey=\"localizationKey\">\r\n {{localizationKey | translate}}\r\n</ng-template>\r\n\r\n<!--Template for language dropdown trigger. Same as for target and source with different params-->\r\n<ng-template #languageDropdownTrigger let-language=\"language\" let-isOpened=\"isOpened\" let-placeholder=\"localizationKey\"\r\n let-isSource=\"isSource\" let-ariaLabelCode=\"ariaLabelCode\">\r\n <lib-open-close-button class=\"system-picker-button\" [ngClass]=\"isSource? 'source': 'target'\"\r\n [ngClass.lt-sm]=\"'mobile'\" (click)=\"isSource? sourceClick($event): targetClick($event)\"\r\n [disableFocusOnAction]=\"true\" [isOpened]=\"isOpened\" [class.opened]=\"isOpened\" [ariaLabelCode]=\"ariaLabelCode\">\r\n <span [ngClass.lt-md]=\"'text-l-semi-bold'\" [ngClass.lt-sm]=\"'text-m-semi-bold mobile-domain-container'\">\r\n <ng-container\r\n *ngTemplateOutlet=\"isOpened ? openedDropdown:languageName; context: { language: language, localizationKey: placeholder, showDomain: !isSource, detectedLanguage: system.detectedLanguage }\">\r\n </ng-container>\r\n </span>\r\n </lib-open-close-button>\r\n</ng-template>\r\n", styles: [":host{display:flex}.swap-languages-button{color:var(--base-40)!important}.target{margin-left:3.25em}.system-picker-button.mobile{margin-left:1.25rem}.mobile-domain-container{display:flex}.mobile-domain-container .domain{text-overflow:ellipsis;overflow:hidden;max-width:3.5rem;white-space:nowrap;display:inline-block}:host ::ng-deep .opened button{color:var(--accent)}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i4.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i5.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: i6.OpenCloseButtonComponent, selector: "lib-open-close-button", inputs: ["disableFocusOnAction", "disabled", "isIcon", "ariaLabelCode", "isOpened"] }, { kind: "component", type: i6.TerminologyComponent, selector: "lib-terminology", inputs: ["selectedCollectionId", "system", "disabled", "storeSelectedInLocalStorage", "showMenuIconOnMobile"], outputs: ["glossarySelectEvent", "menuToggleEvent"] }, { kind: "directive", type: i7.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "pipe", type: i3.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }, { kind: "pipe", type: i6.LanguageTranslatePipe, name: "languageTranslate" }] });
|
|
78
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TranslationSystemPickerComponent, selector: "tld-translation-system-picker", inputs: { isCollectionsActivated: "isCollectionsActivated" }, ngImport: i0, template: "<div fxFlex fxLayout=\"row\">\r\n <ng-container *ngIf=\"isDataLoaded\">\r\n <div fxFlex fxLayoutAlign=\"space-between center\">\r\n <ng-container\r\n *ngTemplateOutlet=\"languageDropdownTrigger; context: { language: sourceLanguage, localizationKey: 'SYSTEM_PICKER.SOURCE', isOpened: isSourceOpened, isSource: true, ariaLabelCode: sourceAriaLabel }\">\r\n </ng-container>\r\n <button [disabled]=\"!canSwap\" class=\"swap-languages-button\" mat-icon-button (click)=\"swap()\"\r\n aria-label=\"swap languages\" color=\"primary\" matTooltip=\"{{'TOOLTIPS.SWAP_LANGUAGES' | translate}}\">\r\n <span class=\"material-icons\" aria-hidden=\"false\"\r\n [attr.aria-label]=\"'ARIA_LABELS.SWAP_LANGUAGES' | translate\">swap_horiz</span>\r\n </button>\r\n </div>\r\n <div fxFlex fxLayoutAlign=\"space-between center\">\r\n <ng-container\r\n *ngTemplateOutlet=\"languageDropdownTrigger; context: { language: targetLanguage, localizationKey: 'SYSTEM_PICKER.TARGET', isOpened: isTargetOpened, isSource: false, ariaLabelCode: targetAriaLabel}\">\r\n </ng-container>\r\n\r\n <div *ngIf=\"collectionsVisible\" #collectionWrapper>\r\n <lib-terminology [system]=\"system\"></lib-terminology>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #languageName let-language=\"language\" let-showDomain=\"showDomain\" let-detectedLanguage=\"detectedLanguage\">\r\n <span>{{ language.lang | languageTranslate }}</span>\r\n <span *ngIf=\"detectedLanguage && !showDomain\"> - {{'SYSTEM_PICKER.DETECTED' | translate}}</span>\r\n <ng-container *ngIf=\"showDomain && domainLength>1\">\r\n <span>(</span>\r\n <span class=\"domain\">{{('DOMAINS.'+(activeDomainKey | uppercase)) | translate: {default: activeDomainKey} }}</span>\r\n <span>)</span>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #openedDropdown let-localizationKey=\"localizationKey\">\r\n {{localizationKey | translate}}\r\n</ng-template>\r\n\r\n<!--Template for language dropdown trigger. Same as for target and source with different params-->\r\n<ng-template #languageDropdownTrigger let-language=\"language\" let-isOpened=\"isOpened\" let-placeholder=\"localizationKey\"\r\n let-isSource=\"isSource\" let-ariaLabelCode=\"ariaLabelCode\">\r\n <lib-open-close-button class=\"system-picker-button\" [ngClass]=\"isSource? 'source': 'target'\"\r\n [ngClass.lt-sm]=\"'mobile'\" (click)=\"isSource? sourceClick($event): targetClick($event)\"\r\n [disableFocusOnAction]=\"true\" [isOpened]=\"isOpened\" [class.opened]=\"isOpened\" [ariaLabelCode]=\"ariaLabelCode\">\r\n <span [ngClass.lt-md]=\"'text-l-semi-bold'\" [ngClass.lt-sm]=\"'text-m-semi-bold mobile-domain-container'\">\r\n <ng-container\r\n *ngTemplateOutlet=\"isOpened ? openedDropdown:languageName; context: { language: language, localizationKey: placeholder, showDomain: !isSource, detectedLanguage: system.detectedLanguage }\">\r\n </ng-container>\r\n </span>\r\n </lib-open-close-button>\r\n</ng-template>\r\n", styles: [":host{display:flex}.swap-languages-button{color:var(--base-40)!important}.target{margin-left:3.25em}.system-picker-button.mobile{margin-left:1.25rem}.mobile-domain-container{display:flex}.mobile-domain-container .domain{text-overflow:ellipsis;overflow:hidden;max-width:3.5rem;white-space:nowrap;display:inline-block}:host ::ng-deep .opened button{color:var(--accent)}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i4.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i5.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: i6.OpenCloseButtonComponent, selector: "lib-open-close-button", inputs: ["disableFocusOnAction", "disabled", "isIcon", "ariaLabelCode", "isOpened"] }, { kind: "component", type: i6.TerminologyComponent, selector: "lib-terminology", inputs: ["selectedCollectionId", "system", "disabled", "storeSelectedInLocalStorage", "setSelectedFromLocalStorage", "showMenuIconOnMobile"], outputs: ["glossarySelectEvent", "menuToggleEvent"] }, { kind: "directive", type: i7.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "pipe", type: i3.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }, { kind: "pipe", type: i6.LanguageTranslatePipe, name: "languageTranslate" }] });
|
|
79
79
|
}
|
|
80
80
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TranslationSystemPickerComponent, decorators: [{
|
|
81
81
|
type: Component,
|
|
@@ -172,7 +172,12 @@ export class TldTranslateComponent {
|
|
|
172
172
|
.subscribe((translations) => {
|
|
173
173
|
this.configService.coreConfig.appName = translations[appNameKey];
|
|
174
174
|
});
|
|
175
|
-
this.terminologyService.getRetranslateSignal().pipe(takeUntil(this.destroy$)).subscribe(() =>
|
|
175
|
+
this.terminologyService.getRetranslateSignal().pipe(takeUntil(this.destroy$)).subscribe(() => {
|
|
176
|
+
if (this.translateFileService.fileNames.length) {
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
179
|
+
this.translateButtonClick();
|
|
180
|
+
});
|
|
176
181
|
}
|
|
177
182
|
removeMessage(ix) {
|
|
178
183
|
this.messages.splice(ix, 1);
|
|
@@ -264,4 +269,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
264
269
|
type: ViewChild,
|
|
265
270
|
args: [TldTranslateBodyComponent]
|
|
266
271
|
}] } });
|
|
267
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGxkLXRyYW5zbGF0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy90bGQtdHJhbnNsYXRlL3NyYy9saWIvdGxkLXRyYW5zbGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy90bGQtdHJhbnNsYXRlL3NyYy9saWIvdGxkLXRyYW5zbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQXFCLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUYsT0FBTyxFQUFpRCx1QkFBdUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQy9HLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBR2hFLE9BQU8sRUFBZ0IsbUJBQW1CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQU1oRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0VBQW9FLENBQUM7QUFFaEcsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW9COUYsTUFBTSxPQUFPLHFCQUFxQjtJQW9FSDtJQUNWO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUE5RVQsT0FBTyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0lBQ3JELGNBQWMsR0FBNkIsSUFBSSxZQUFZLEVBQWMsQ0FBQztJQUU5QyxnQkFBZ0Is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LEVBQUUsQ0FBQyxFQUFFLENBQUM7b0JBQ3BCLE9BQU8sQ0FBQyxHQUFHLENBQUM7aUJBQ2IsQ0FBQztnQkFFRixVQUFVLENBQUMsUUFBUSxFQUNqQixPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7YUFDdEMsQ0FBQztTQUNIOzs0RkFFVSxxQkFBcUI7a0JBakJqQyxTQUFTOytCQUNFLGVBQWUsY0FHYjt3QkFDVixPQUFPLENBQUMsb0JBQW9CLEVBQUU7NEJBRTVCLFVBQVUsQ0FBQyxRQUFRLEVBQUU7Z0NBQ25CLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQztnQ0FDcEIsT0FBTyxDQUFDLEdBQUcsQ0FBQzs2QkFDYixDQUFDOzRCQUVGLFVBQVUsQ0FBQyxRQUFRLEVBQ2pCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzt5QkFDdEMsQ0FBQztxQkFDSDtxZ0JBR1MsT0FBTztzQkFBaEIsTUFBTTtnQkFDRyxjQUFjO3NCQUF2QixNQUFNO2dCQUUrQixnQkFBZ0I7c0JBQXJELFNBQVM7dUJBQUMseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IEFjdGl2ZURhdGEsIEFsZXJ0U2VydmljZSwgTm90aWZpY2F0aW9uTWVzc2FnZSwgTm90aWZpY2F0aW9uTWVzc2FnZVR5cGUgfSBmcm9tICdAdGlsZGUtbmxwL25neC1jb21tb24nO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IGF2YWlsYWJsZUxhbmd1YWdlcyB9IGZyb20gJy4vaTE4bi9hdmFpbGFibGUtbGFuZ3VhZ2VzJztcclxuaW1wb3J0IHsgQXVkaW9SZWNvcmRTZXJ2aWNlLCBUbGRWb2ljZUlucHV0U2VydmljZSB9IGZyb20gJy4vbW9kdWxlcy90bGQtYXVkaW8vc2VydmljZXMnO1xyXG5pbXBvcnQgeyBUbGRUcmFuc2xhdGVCdXR0b25TZXJ2aWNlIH0gZnJvbSAnLi9tb2R1bGVzL3RsZC1jb21tb24vY29tcG9uZW50cy90cmFuc2xhdGUtYnV0dG9uL3RsZC10cmFuc2xhdGUtYnV0dG9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJQXV0aE9wdGlvbnMsIGxhbmd1YWdlTWVudVZlcnNpb24gfSBmcm9tICcuL21vZHVsZXMvdGxkLWNvbW1vbi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBUbGRUcmFuc2xhdGVTeXN0ZW1NYW5hZ2VtZW50U2VydmljZSwgVGxkVHJhbnNsYXRlQ29uZmlnU2VydmljZSB9IGZyb20gJy4vbW9kdWxlcy90bGQtY29tbW9uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgV3R3TGlua1BhcmFtc1NlcnZpY2UgfSBmcm9tICcuL21vZHVsZXMvdGxkLWNvbW1vbi9zZXJ2aWNlcy93dHctbGluay1wYXJhbXMuc2VydmljZSc7XHJcbmltcG9ydCB7IFRsZFRyYW5zbGF0ZUZpbGVTZXJ2aWNlIH0gZnJvbSAnLi9tb2R1bGVzL3RsZC1kb2N1bWVudC9zZXJ2aWNlcy90bGQtdHJhbnNsYXRlLWZpbGUuc2VydmljZSc7XHJcbmltcG9ydCB7IFRsZFRyYW5zbGF0ZVRleHRTZXJ2aWNlIH0gZnJvbSAnLi9tb2R1bGVzL3RsZC10ZXh0L3NlcnZpY2VzL3RsZC10cmFuc2xhdGUtdGV4dC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSVN3aXRjaGVyVHJhbnNsYXRpb25PcHRpb25zIH0gZnJvbSAnLi9tb2R1bGVzL3RsZC10b29sdGlwL21vZGVscy9zd2l0Y2hlci1vcHRpb25zLm1vZGVsJztcclxuaW1wb3J0IHsgT3BlbmVkTWVudSB9IGZyb20gJy4vbW9kdWxlcy90bGQtdG9vbHRpcC90cmFuc2xhdGlvbi1zeXN0ZW0tcGlja2VyL21vZGVscy9vcGVuZWQtbWVudSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0aW9uU3lzdGVtUGlja2VyU2VydmljZSB9IGZyb20gJy4vbW9kdWxlcy90bGQtdG9vbHRpcC90cmFuc2xhdGlvbi1zeXN0ZW0tcGlja2VyL3NlcnZpY2VzL3RyYW5zbGF0aW9uLXN5c3RlbS1waWNrZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IFRsZFRyYW5zbGF0ZUJvZHlDb21wb25lbnQgfSBmcm9tICcuL3RsZC10cmFuc2xhdGUtYm9keS90bGQtdHJhbnNsYXRlLWJvZHkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGVybWlub2xvZ3lTZXJ2aWNlIH0gZnJvbSAnQHRpbGRlLW5scC9uZ3gtY29tbW9uJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndGxkLXRyYW5zbGF0ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RsZC10cmFuc2xhdGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RsZC10cmFuc2xhdGUuY29tcG9uZW50LnNjc3MnXSxcclxuICBhbmltYXRpb25zOiBbXHJcbiAgICB0cmlnZ2VyKCdvcGVuQ2xvc2VBbmltYXRpb24nLCBbXHJcblxyXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXHJcbiAgICAgICAgc3R5bGUoeyBoZWlnaHQ6IDAgfSksXHJcbiAgICAgICAgYW5pbWF0ZSg1MDApXHJcbiAgICAgIF0pLFxyXG5cclxuICAgICAgdHJhbnNpdGlvbignOmxlYXZlJyxcclxuICAgICAgICBhbmltYXRlKDUwMCwgc3R5bGUoeyBoZWlnaHQ6IDAgfSkpKVxyXG4gICAgXSlcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUbGRUcmFuc2xhdGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQE91dHB1dCgpIG9uRXJyb3I6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIG9uU3lzdGVtQ2hhbmdlOiBFdmVudEVtaXR0ZXI8QWN0aXZlRGF0YT4gPSBuZXcgRXZlbnRFbWl0dGVyPEFjdGl2ZURhdGE+KCk7XHJcblxyXG4gIEBWaWV3Q2hpbGQoVGxkVHJhbnNsYXRlQm9keUNvbXBvbmVudCkgdGxkVHJhbnNsYXRlQm9keTogVGxkVHJhbnNsYXRlQm9keUNvbXBvbmVudDtcclxuXHJcbiAgYWN0aXZlU3lzdGVtT2JqOiBBY3RpdmVEYXRhO1xyXG4gIG1lc3NhZ2VzOiBOb3RpZmljYXRpb25NZXNzYWdlW10gPSBbXTtcclxuXHJcbiAgc3dpdGNoZXJPcHRpb25zOiBJU3dpdGNoZXJUcmFuc2xhdGlvbk9wdGlvbnM7XHJcblxyXG4gIGdldCBhY3Rpb25CdXR0b25Mb2FkZXIoKSB7IHJldHVybiB0aGlzLnRyYW5zbGF0ZVRleHRTZXJ2aWNlLmlzVHJhbnNsYXRpbmc7IH1cclxuXHJcbiAgZ2V0IHNob3dEb21haW5zV2l0aExhbmd1YWdlTmFtZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ1NlcnZpY2UuY29yZUNvbmZpZy5zaG93RG9tYWluc1dpdGhMYW5ndWFnZU5hbWU7XHJcbiAgfVxyXG5cclxuICBnZXQgbWF4RGlzcGxheWVkTGFuZ3VhZ2VzKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maWdTZXJ2aWNlLmNvcmVDb25maWcubWF4RGlzcGxheWVkTGFuZ3VhZ2VzO1xyXG4gIH1cclxuXHJcbiAgcmVhZG9ubHkgbm9TeXN0ZW1zRXJyb3I6IE5vdGlmaWNhdGlvbk1lc3NhZ2UgPSB7IGJvZHk6IFwiVExEX1RSQU5TTEFURS5FUlJPUl9OT19TWVNURU1TX0xPQURFRFwiLCB0eXBlOiBOb3RpZmljYXRpb25NZXNzYWdlVHlwZS5FUlJPUiwgaGlkZUNsb3NlOiB0cnVlIH07XHJcblxyXG4gIGdldCBhY3Rpb25CdXR0b25EaXNhYmxlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZUZpbGVTZXJ2aWNlLmRpc2FibGVUcmFuc2xhdGVCdXR0b25cclxuICAgICAgfHwgdGhpcy5hdWRpb1NlcnZpY2UuaXNSZWNvcmRpbmdcclxuICAgICAgfHwgdGhpcy52b2ljZVByb2Nlc3NpbmdTZXJ2aWNlLmlzUHJvY2Vzc2luZ1xyXG4gICAgICB8fCB0aGlzLnRyYW5zbGF0ZVRleHRTZXJ2aWNlLmlzRGljdGF0aW5nXHJcbiAgfVxyXG5cclxuICBnZXQgc2hvd1RyYW5zbGF0ZUJ1dHRvbigpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ1NlcnZpY2UudGV4dENvbmZpZy5zaG93VHJhbnNsYXRlQnV0dG9uICYmICF0aGlzLnRyYW5zbGF0ZUZpbGVTZXJ2aWNlLm11bHRpcGxlRmlsZVVwbG9hZEFjdGl2ZTtcclxuICB9XHJcblxyXG4gIC8vIHRoaXMgcGFyYW0gaXMgbmVjZXNzYXJ5IHRvIHJlbW92ZSBtYXggaGVpZ2h0IGlmIG11bHRpcGxlIGZpbGUgY29tcG9uZW50IGlzIGFjdGl2ZSwgc2luY2UgdGhlcmUgc2hvdWxkbid0IGJlIG1heCBoZWlnaHQgaW4gdGhhdCBjYXNlLlxyXG4gIGdldCBpc011bHRpcGxlRmlsZXNBY3RpdmUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy50bGRUcmFuc2xhdGVCb2R5Py5tdWx0aXBsZUZpbGVzVXBsb2FkZWQ7XHJcbiAgfVxyXG5cclxuICBnZXQgaGlkZUxhbmdNZW51TGFiZWxzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29uZmlnU2VydmljZT8uY29yZUNvbmZpZy5oaWRlTGFuZ01lbnVMYWJlbHM7XHJcbiAgfVxyXG5cclxuICBnZXQgaXNDb2xsZWN0aW9uc0FjdGl2YXRlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ1NlcnZpY2U/LnRlcm1Db25maWc/LmlzQ29sbGVjdGlvbnNBY3RpdmF0ZWQ7XHJcbiAgfVxyXG5cclxuICBnZXQgc291cmNlTGFuZ3VhZ2UoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5hY3RpdmVTeXN0ZW1PYmo/LnNvdXJjZUxhbmcubGFuZztcclxuICB9XHJcblxyXG4gIGdldCB0YXJnZXRMYW5ndWFnZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmFjdGl2ZVN5c3RlbU9iaj8udGFyZ2V0TGFuZy5sYW5nO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHN5c3RlbVBpY2tlckRyb3Bkb3duVmlzaWJsZSgpIHtcclxuICAgIHJldHVybiB0aGlzLnN5c3RlbVBpY2tlclNlcnZpY2Uub3BlbmVkTWVudSAhPT0gT3BlbmVkTWVudS5OT05FO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGxhbmd1YWdlTWVudVZlcnNpb24oKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maWdTZXJ2aWNlLmNvcmVDb25maWc/Lmxhbmd1YWdlTWVudVZlcnNpb247XHJcbiAgfVxyXG5cclxuICByZWFkb25seSBsYW5ndWFnZU1lbnVWMSA9IGxhbmd1YWdlTWVudVZlcnNpb24uVjE7XHJcbiAgcmVhZG9ubHkgbGFuZ3VhZ2VNZW51VjIgPSBsYW5ndWFnZU1lbnVWZXJzaW9uLlYyO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZUZpbGVTZXJ2aWNlOiBUbGRUcmFuc2xhdGVGaWxlU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlVGV4dFNlcnZpY2U6IFRsZFRyYW5zbGF0ZVRleHRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maWdTZXJ2aWNlOiBUbGRUcmFuc2xhdGVDb25maWdTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBhbGVydHM6IEFsZXJ0U2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlQnV0dG9uU2VydmljZTogVGxkVHJhbnNsYXRlQnV0dG9uU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGxkU3lzdGVtOiBUbGRUcmFuc2xhdGVTeXN0ZW1NYW5hZ2VtZW50U2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXVkaW9TZXJ2aWNlOiBBdWRpb1JlY29yZFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHZvaWNlUHJvY2Vzc2luZ1NlcnZpY2U6IFRsZFZvaWNlSW5wdXRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSB3dHdRdWVyeVNlcnZpY2U6IFd0d0xpbmtQYXJhbXNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBzeXN0ZW1QaWNrZXJTZXJ2aWNlOiBUcmFuc2xhdGlvblN5c3RlbVBpY2tlclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRlcm1pbm9sb2d5U2VydmljZTogVGVybWlub2xvZ3lTZXJ2aWNlXHJcbiAgKSB7fVxyXG5cclxuICBjaGFuZ2VBdXRoKGF1dGhPcHRpb25zOiBJQXV0aE9wdGlvbnMpIHtcclxuICAgIHRoaXMuY29uZmlnU2VydmljZS5jb3JlQ29uZmlnLmlzQXV0aCA9IGF1dGhPcHRpb25zLmlzQXV0aDtcclxuICAgIHRoaXMuY29uZmlnU2VydmljZS50ZXJtQ29uZmlnLmNhbkNyZWF0ZUNvbGxlY3Rpb24gPSBhdXRoT3B0aW9ucy5jYW5DcmVhdGVUZXJtQ29sbGVjdGlvbjtcclxuICAgIHRoaXMudHJhbnNsYXRlRmlsZVNlcnZpY2UuY2xlYXIoKTtcclxuICAgIHRoaXMuaW5pdGlhbGl6ZVdpZGdldCgpO1xyXG4gIH1cclxuXHJcbiAgaW5pdGlhbGl6ZVdpZGdldCgpOiB2b2lkIHtcclxuICAgIHRoaXMudGxkU3lzdGVtLmluaXQodGhpcy50bGRTeXN0ZW0uZ2V0TGFzdFVzZWRTeXN0ZW0oKSA/PyB0aGlzLmNvbmZpZ1NlcnZpY2UuY29yZUNvbmZpZy5kZWZhdWx0U3lzdGVtSWQpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnJlbW92ZU1lc3NhZ2VzT25DbGVhcigpO1xyXG5cclxuICAgIHRoaXMudGxkU3lzdGVtLmdldExvYWRlZFN5c3RlbXMoKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgaWYgKCFyZXMubGVuZ3RoKSB7XHJcbiAgICAgICAgdGhpcy5tZXNzYWdlcy5wdXNoKHRoaXMubm9TeXN0ZW1zRXJyb3IpO1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG5cclxuICAgIGlmICh0aGlzLmNvbmZpZ1NlcnZpY2UuY29yZUNvbmZpZy5kZWJ1Zykge1xyXG4gICAgICBmb3IgKGNvbnN0IGtleSBpbiBhdmFpbGFibGVMYW5ndWFnZXMpIHtcclxuICAgICAgICB0aGlzLnRyYW5zbGF0ZS5zZXRUcmFuc2xhdGlvbihrZXksIGF2YWlsYWJsZUxhbmd1YWdlc1trZXldLCB0cnVlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuaW5pdGlhbGl6ZVdpZGdldCgpO1xyXG5cclxuICAgIHRoaXMudGxkU3lzdGVtLmdldEFjdGl2ZURhdGEoKS5waXBlKFxyXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxyXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHZhbDogQWN0aXZlRGF0YSkgPT4ge1xyXG4gICAgICAgIHRoaXMuYWN0aXZlU3lzdGVtT2JqID0gdmFsO1xyXG4gICAgICAgIGlmICghdmFsKSB7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLm9uU3lzdGVtQ2hhbmdlLmVtaXQodmFsKTtcclxuXHJcbiAgICAgICAgdGhpcy5zd2l0Y2hlck9wdGlvbnMgPSB7XHJcbiAgICAgICAgICBkb21haW5zOiB2YWwuZG9tYWlucyxcclxuICAgICAgICAgIHNvdXJjZTogeyBjb2RlOiB2YWwuc291cmNlTGFuZy5sYW5nLCBzeXN0ZW1JZDogdmFsLnN5c3RlbUlkIH0sXHJcbiAgICAgICAgICBzb3VyY2VMYW5ndWFnZUxpc3Q6IHZhbC5zb3VyY2VMYW5nTGlzdCxcclxuICAgICAgICAgIHN5c3RlbUlkOiB2YWwuc3lzdGVtSWQsXHJcbiAgICAgICAgICBzd2FwQWN0aXZlOiB2YWwuc3dhcExhbmdBY3RpdmUsXHJcbiAgICAgICAgICB0YXJnZXQ6IHsgY29kZTogdmFsLnRhcmdldExhbmcubGFuZywgc3lzdGVtSWQ6IHZhbC5zeXN0ZW1JZCB9LFxyXG4gICAgICAgICAgdGFyZ2V0TGFuZ3VhZ2VMaXN0OiB2YWwudGFyZ2V0TGFuZ0xpc3QsXHJcbiAgICAgICAgICB2ZW5kb3JzOiB2YWwudmVuZG9yc1xyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIHRoaXMudHJhbnNsYXRlVGV4dFNlcnZpY2Uuc291cmNlQ2hhbmdlLnBpcGUoXHJcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcclxuICAgICAgICBpZiAoZXZlbnQuc3dhcFN5c3RlbXMpIHtcclxuICAgICAgICAgIHRoaXMuc3dhcExhbmd1YWdlcygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG4gICAgdGhpcy50cmFuc2xhdGVCdXR0b25TZXJ2aWNlLmdldEFjdGlvbkNsaWNrKCkucGlwZShcclxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLnRyYW5zbGF0ZUJ1dHRvbkNsaWNrKCk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIHRoaXMud3R3UXVlcnlTZXJ2aWNlLnF1ZXJ5KCkucGlwZShcclxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChxdWVyeTogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgdGhpcy5tZXNzYWdlcy5mb3JFYWNoKG1zZyA9PiB7XHJcbiAgICAgICAgICBtc2cubG9jYWxpemF0aW9uUGFyYW1zLnF1ZXJ5U3RyaW5nID0gcXVlcnlcclxuICAgICAgICB9KTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgdGhpcy5hbGVydHMuZ2V0TWVzc2FnZXMoKS5waXBlKFxyXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKG1lc3NhZ2U6IE5vdGlmaWNhdGlvbk1lc3NhZ2UpID0+IHtcclxuICAgICAgICBtZXNzYWdlLmxvY2FsaXphdGlvblBhcmFtcy5xdWVyeVN0cmluZyA9IHRoaXMud3R3UXVlcnlTZXJ2aWNlLmRlZmF1bHRRdWVyeVN0cmluZztcclxuICAgICAgICBpZiAobWVzc2FnZT8uZGVsZXRlKSB7XHJcbiAgICAgICAgICB0aGlzLnJlbW92ZUV4aXN0aW5nTWVzc2FnZShtZXNzYWdlKTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChtZXNzYWdlLnR5cGUgPT09IE5vdGlmaWNhdGlvbk1lc3NhZ2VUeXBlLkVSUk9SKSB7XHJcbiAgICAgICAgICB0aGlzLm9uRXJyb3IuZW1pdChtZXNzYWdlLmVycm9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICBcclxuICAgICAgICB0aGlzLmFkZE1lc3NhZ2UobWVzc2FnZSk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIGNvbnN0IGFwcE5hbWVLZXkgPSBcIkFQUF9OQU1FXCI7XHJcbiAgICB0aGlzLnRyYW5zbGF0ZS5zdHJlYW0oW2FwcE5hbWVLZXldKS5waXBlKFxyXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHRyYW5zbGF0aW9ucykgPT4ge1xyXG4gICAgICAgIHRoaXMuY29uZmlnU2VydmljZS5jb3JlQ29uZmlnLmFwcE5hbWUgPSB0cmFuc2xhdGlvbnNbYXBwTmFtZUtleV07XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIHRoaXMudGVybWlub2xvZ3lTZXJ2aWNlLmdldFJldHJhbnNsYXRlU2lnbmFsKCkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiBcclxuICAgICAgdGhpcy50cmFuc2xhdGVCdXR0b25DbGljaygpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlTWVzc2FnZShpeDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLm1lc3NhZ2VzLnNwbGljZShpeCwgMSk7XHJcbiAgfVxyXG5cclxuICBzd2FwTGFuZ3VhZ2VzKCkge1xyXG4gICAgdGhpcy50bGRTeXN0ZW0uc3dhcFN5c3RlbUxhbmd1YWdlcygpO1xyXG4gIH1cclxuXHJcbiAgc291cmNlTGFuZ3VhZ2VDaGFuZ2UobGFuZ3VhZ2U6IHN0cmluZykge1xyXG4gICAgdGhpcy50bGRTeXN0ZW0uY2hhbmdlTGFuZ3VhZ2UobGFuZ3VhZ2UsIHRoaXMuc3dpdGNoZXJPcHRpb25zLnRhcmdldC5jb2RlKTtcclxuICB9XHJcblxyXG4gIHN5c3RlbUNoYW5nZShzeXN0ZW1JZDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnRsZFN5c3RlbS5jaGFuZ2VTeXN0ZW0oc3lzdGVtSWQpO1xyXG4gIH1cclxuXHJcbiAgdGFyZ2V0TGFuZ3VhZ2VDaGFuZ2UobGFuZ3VhZ2U6IHN0cmluZykge1xyXG4gICAgdGhpcy50bGRTeXN0ZW0uY2hhbmdlTGFuZ3VhZ2UodGhpcy5zd2l0Y2hlck9wdGlvbnMuc291cmNlLmNvZGUsIGxhbmd1YWdlKTtcclxuICB9XHJcblxyXG4gIHRyYW5zbGF0ZUJ1dHRvbkNsaWNrKCkge1xyXG4gICAgaWYgKHRoaXMudHJhbnNsYXRlRmlsZVNlcnZpY2UudHJhbnNsYXRpb25GaWxlcz8ubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLnRyYW5zbGF0ZUZpbGVTZXJ2aWNlLnRyYW5zbGF0ZUJ1dHRvbkNsaWNrKHRoaXMuYWN0aXZlU3lzdGVtT2JqKTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLnRyYW5zbGF0ZVRleHRTZXJ2aWNlLm9uVHJhbnNsYXRlQnV0dG9uQ2xpY2soKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlbW92ZU1lc3NhZ2VzT25DbGVhcigpIHtcclxuICAgIHRoaXMudHJhbnNsYXRlRmlsZVNlcnZpY2Uub25DbGVhcigpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5tZXNzYWdlcyA9IFtdO1xyXG4gICAgICB9KVxyXG5cclxuICAgIHRoaXMudHJhbnNsYXRlVGV4dFNlcnZpY2Uub25DbGVhcigpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5tZXNzYWdlcyA9IFtdO1xyXG4gICAgICB9KVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQobnVsbClcclxuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVtb3ZlRXhpc3RpbmdNZXNzYWdlKG1lc3NhZ2U6IE5vdGlmaWNhdGlvbk1lc3NhZ2UpOiB2b2lkIHtcclxuICAgIGRlbGV0ZSBtZXNzYWdlLmRlbGV0ZTtcclxuICAgIGNvbnN0IGRlbGV0ZU1zZ1N0cmluZyA9IEpTT04uc3RyaW5naWZ5KG1lc3NhZ2UpO1xyXG4gICAgY29uc3QgbXNnID0gdGhpcy5tZXNzYWdlcy5maW5kKChleGlzdGluZ01zZykgPT4gXHJcbiAgICAgIEpTT04uc3RyaW5naWZ5KGV4aXN0aW5nTXNnKSA9PT0gZGVsZXRlTXNnU3RyaW5nKTtcclxuICAgICAgXHJcbiAgICBjb25zdCBpbmRleCA9IHRoaXMubWVzc2FnZXMuaW5kZXhPZihtc2cpO1xyXG5cclxuICAgIGlmIChpbmRleCA8IDApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMucmVtb3ZlTWVzc2FnZShpbmRleCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFkZE1lc3NhZ2UobWVzc2FnZTogTm90aWZpY2F0aW9uTWVzc2FnZSk6IHZvaWQge1xyXG4gICAgLy8gcHVzaGluZyBvbmx5IFwib25lIG9mXCIgbWVzc2FnZSBpbiBhcnJheSwgc28gc2NyZWVuIGlzIG5vdCBzcGFtbWVkIHdpdGggbWVzc2FnZXNcclxuICAgIGNvbnN0IGRlbGV0ZU1zZ1N0cmluZyA9IEpTT04uc3RyaW5naWZ5KG1lc3NhZ2UubG9jYWxpemF0aW9uUGFyYW1zKTtcclxuICAgIGNvbnN0IGV4aXN0aW5nTWVzc2FnZSA9IHRoaXMubWVzc2FnZXMuZmluZChtc2cgPT4gbXNnLnRpdGxlID09PSBtZXNzYWdlLnRpdGxlXHJcbiAgICAgICYmIG1zZy50eXBlID09PSBtZXNzYWdlLnR5cGVcclxuICAgICAgJiYgbWVzc2FnZS5ib2R5ID09PSBtc2cuYm9keVxyXG4gICAgICAmJiBKU09OLnN0cmluZ2lmeShtc2cubG9jYWxpemF0aW9uUGFyYW1zKSA9PT0gZGVsZXRlTXNnU3RyaW5nKTtcclxuICAgIGlmICghZXhpc3RpbmdNZXNzYWdlKSB7XHJcbiAgICAgIHRoaXMubWVzc2FnZXMucHVzaChtZXNzYWdlKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdiBmeExheW91dD1cImNvbHVtblwiIGNsYXNzPVwiaC0xMDAgdGxkLXRyYW5zbGF0ZVwiXHJcbiAgW25nQ2xhc3MubHQtbWRdPVwiJ3RsZC10cmFuc2xhdGUtdGFibGV0IHRsZC1kZWZhdWx0LWJvcmRlci1ib3R0b20nXCJcclxuICBbbmdDbGFzcy5sdC1zbV09XCIndGxkLXRyYW5zbGF0ZS1tb2JpbGUgdGxkLWRlZmF1bHQtYm9yZGVyLWJvdHRvbSdcIlxyXG4gIFtjbGFzcy50bGQtdHJhbnNsYXRlLW11bHRpcGxlLWZpbGVzLWFjdGl2ZV09XCJpc011bHRpcGxlRmlsZXNBY3RpdmVcIj5cclxuICA8ZGl2IGNsYXNzPVwidGxkLXRyYW5zbGF0ZS13cmFwcGVyIHRsZC1kZWZhdWx0LWJvcmRlclwiIGZ4TGF5b3V0PVwiY29sdW1uXCIgZnhGbGV4PlxyXG4gICAgPGRpdiBjbGFzcz1cInRsZC10cmFuc2xhdGUtc3dpdGNoZXItd3JhcHBlciB0bGQtZGVmYXVsdC1ib3JkZXItYm90dG9tXCI+XHJcbiAgICAgIDx0bGQtdHJhbnNsYXRlLXN3aXRjaGVyICpuZ0lmPVwic3dpdGNoZXJPcHRpb25zICYmIGxhbmd1YWdlTWVudVZlcnNpb24gPT09IGxhbmd1YWdlTWVudVYxXCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiYWN0aW9uQnV0dG9uRGlzYWJsZWRcIiBbaXNDb2xsZWN0aW9uc0FjdGl2YXRlZF09XCJpc0NvbGxlY3Rpb25zQWN0aXZhdGVkXCIgW3NldHRpbmdzXT1cInN3aXRjaGVyT3B0aW9uc1wiXHJcbiAgICAgICAgW21heERpc3BsYXllZExhbmd1YWdlc109XCJtYXhEaXNwbGF5ZWRMYW5ndWFnZXNcIiBbc2hvd0RvbWFpbnNXaXRoTGFuZ3VhZ2VOYW1lXT1cInNob3dEb21haW5zV2l0aExhbmd1YWdlTmFtZVwiXHJcbiAgICAgICAgW2J1dHRvbkRpc2FibGVkXT1cImFjdGlvbkJ1dHRvbkRpc2FibGVkXCIgW2hpZGVMYW5nTWVudUxhYmVsc109XCJoaWRlTGFuZ01lbnVMYWJlbHNcIlxyXG4gICAgICAgIChvbkRvbWFpbkNoYW5nZSk9XCJzeXN0ZW1DaGFuZ2UoJGV2ZW50KVwiIChvbkFjdGlvbkNsaWNrKT1cInRyYW5zbGF0ZUJ1dHRvbkNsaWNrKClcIlxyXG4gICAgICAgIChvbkxhbmd1YWdlU3dhcCk9XCJzd2FwTGFuZ3VhZ2VzKClcIiAob25Tb3VyY2VMYW5ndWFnZUNoYW5nZSk9XCJzb3VyY2VMYW5ndWFnZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAob25UYXJnZXRMYW5ndWFnZUNoYW5nZSk9XCJ0YXJnZXRMYW5ndWFnZUNoYW5nZSgkZXZlbnQpXCIgW2xvYWRlcl09XCJhY3Rpb25CdXR0b25Mb2FkZXJcIiBbc2hvd1RyYW5zbGF0ZUJ1dHRvbl09XCJzaG93VHJhbnNsYXRlQnV0dG9uXCI+XHJcbiAgICAgIDwvdGxkLXRyYW5zbGF0ZS1zd2l0Y2hlcj5cclxuICAgICAgPHRsZC10cmFuc2xhdGlvbi1zeXN0ZW0tcGlja2VyICpuZ0lmPVwibGFuZ3VhZ2VNZW51VmVyc2lvbj09PWxhbmd1YWdlTWVudVYyXCJcclxuICAgICAgICBbaXNDb2xsZWN0aW9uc0FjdGl2YXRlZF09XCJpc0NvbGxlY3Rpb25zQWN0aXZhdGVkXCI+PC90bGQtdHJhbnNsYXRpb24tc3lzdGVtLXBpY2tlcj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiAqbmdJZj1cIm1lc3NhZ2VzLmxlbmd0aFwiIGNsYXNzPVwibWVzc2FnZS13cmFwcGVyXCI+XHJcbiAgICAgIDxsaWItdGxkLW5vdGlmaWNhdGlvbi1tZXNzYWdlIFtpbmxpbmVdPVwidHJ1ZVwiICpuZ0Zvcj1cImxldCBtZXNzYWdlIG9mIG1lc3NhZ2VzOyBsZXQgaXggPSBpbmRleFwiIFttZXNzYWdlXT1cIm1lc3NhZ2VcIlxyXG4gICAgICAgIChjbG9zZUNsaWNrZWQpPVwicmVtb3ZlTWVzc2FnZShpeClcIj5cclxuICAgICAgPC9saWItdGxkLW5vdGlmaWNhdGlvbi1tZXNzYWdlPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGZ4RmxleCBzdHlsZT1cInBvc2l0aW9uOiByZWxhdGl2ZTtcIj5cclxuICAgICAgPHRsZC10cmFuc2xhdGUtYm9keSBmeEZsZXggZnhMYXlvdXRBbGlnbj1cImNvbHVtblwiIFthdHRyLnNvdXJjZS1sYW5ndWFnZV09XCJzb3VyY2VMYW5ndWFnZVwiXHJcbiAgICAgICAgW2F0dHIudGFyZ2V0LWxhbmd1YWdlXT1cInRhcmdldExhbmd1YWdlXCI+PC90bGQtdHJhbnNsYXRlLWJvZHk+XHJcbiAgICAgIDx0bGQtdHJhbnNsYXRpb24tc3lzdGVtLXBpY2tlci1kcm9wZG93biBbbmdDbGFzcy54c109XCInbW9iaWxlJ1wiICpuZ0lmPVwic3lzdGVtUGlja2VyRHJvcGRvd25WaXNpYmxlXCI+XHJcbiAgICAgIDwvdGxkLXRyYW5zbGF0aW9uLXN5c3RlbS1waWNrZXItZHJvcGRvd24+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+Il19
|
|
272
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGxkLXRyYW5zbGF0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy90bGQtdHJhbnNsYXRlL3NyYy9saWIvdGxkLXRyYW5zbGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy90bGQtdHJhbnNsYXRlL3NyYy9saWIvdGxkLXRyYW5zbGF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQXFCLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUYsT0FBTyxFQUFpRCx1QkFBdUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQy9HLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBR2hFLE9BQU8sRUFBZ0IsbUJBQW1CLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQU1oRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0VBQW9FLENBQUM7QUFFaEcsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sbURBQW1ELENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW9COUYsTUFBTSxPQUFPLHFCQUFxQjtJQW9FSDtJQUNWO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUE5RVQsT0FBTyxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0lBQ3JELGNBQWMsR0FBNkIsSUFBSSxZQUFZLEVBQWMsQ0FBQztJQUU5QyxnQkFBZ0Is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RExRO1lBQ1YsT0FBTyxDQUFDLG9CQUFvQixFQUFFO2dCQUU1QixVQUFVLENBQUMsUUFBUSxFQUFFO29CQUNuQixLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7b0JBQ3BCLE9BQU8sQ0FBQyxHQUFHLENBQUM7aUJBQ2IsQ0FBQztnQkFFRixVQUFVLENBQUMsUUFBUSxFQUNqQixPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7YUFDdEMsQ0FBQztTQUNIOzs0RkFFVSxxQkFBcUI7a0JBakJqQyxTQUFTOytCQUNFLGVBQWUsY0FHYjt3QkFDVixPQUFPLENBQUMsb0JBQW9CLEVBQUU7NEJBRTVCLFVBQVUsQ0FBQyxRQUFRLEVBQUU7Z0NBQ25CLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQztnQ0FDcEIsT0FBTyxDQUFDLEdBQUcsQ0FBQzs2QkFDYixDQUFDOzRCQUVGLFVBQVUsQ0FBQyxRQUFRLEVBQ2pCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzt5QkFDdEMsQ0FBQztxQkFDSDtxZ0JBR1MsT0FBTztzQkFBaEIsTUFBTTtnQkFDRyxjQUFjO3NCQUF2QixNQUFNO2dCQUUrQixnQkFBZ0I7c0JBQXJELFNBQVM7dUJBQUMseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IEFjdGl2ZURhdGEsIEFsZXJ0U2VydmljZSwgTm90aWZpY2F0aW9uTWVzc2FnZSwgTm90aWZpY2F0aW9uTWVzc2FnZVR5cGUgfSBmcm9tICdAdGlsZGUtbmxwL25neC1jb21tb24nO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IGF2YWlsYWJsZUxhbmd1YWdlcyB9IGZyb20gJy4vaTE4bi9hdmFpbGFibGUtbGFuZ3VhZ2VzJztcclxuaW1wb3J0IHsgQXVkaW9SZWNvcmRTZXJ2aWNlLCBUbGRWb2ljZUlucHV0U2VydmljZSB9IGZyb20gJy4vbW9kdWxlcy90bGQtYXVkaW8vc2VydmljZXMnO1xyXG5pbXBvcnQgeyBUbGRUcmFuc2xhdGVCdXR0b25TZXJ2aWNlIH0gZnJvbSAnLi9tb2R1bGVzL3RsZC1jb21tb24vY29tcG9uZW50cy90cmFuc2xhdGUtYnV0dG9uL3RsZC10cmFuc2xhdGUtYnV0dG9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBJQXV0aE9wdGlvbnMsIGxhbmd1YWdlTWVudVZlcnNpb24gfSBmcm9tICcuL21vZHVsZXMvdGxkLWNvbW1vbi9tb2RlbHMnO1xyXG5pbXBvcnQgeyBUbGRUcmFuc2xhdGVTeXN0ZW1NYW5hZ2VtZW50U2VydmljZSwgVGxkVHJhbnNsYXRlQ29uZmlnU2VydmljZSB9IGZyb20gJy4vbW9kdWxlcy90bGQtY29tbW9uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgV3R3TGlua1BhcmFtc1NlcnZpY2UgfSBmcm9tICcuL21vZHVsZXMvdGxkLWNvbW1vbi9zZXJ2aWNlcy93dHctbGluay1wYXJhbXMuc2VydmljZSc7XHJcbmltcG9ydCB7IFRsZFRyYW5zbGF0ZUZpbGVTZXJ2aWNlIH0gZnJvbSAnLi9tb2R1bGVzL3RsZC1kb2N1bWVudC9zZXJ2aWNlcy90bGQtdHJhbnNsYXRlLWZpbGUuc2VydmljZSc7XHJcbmltcG9ydCB7IFRsZFRyYW5zbGF0ZVRleHRTZXJ2aWNlIH0gZnJvbSAnLi9tb2R1bGVzL3RsZC10ZXh0L3NlcnZpY2VzL3RsZC10cmFuc2xhdGUtdGV4dC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSVN3aXRjaGVyVHJhbnNsYXRpb25PcHRpb25zIH0gZnJvbSAnLi9tb2R1bGVzL3RsZC10b29sdGlwL21vZGVscy9zd2l0Y2hlci1vcHRpb25zLm1vZGVsJztcclxuaW1wb3J0IHsgT3BlbmVkTWVudSB9IGZyb20gJy4vbW9kdWxlcy90bGQtdG9vbHRpcC90cmFuc2xhdGlvbi1zeXN0ZW0tcGlja2VyL21vZGVscy9vcGVuZWQtbWVudSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0aW9uU3lzdGVtUGlja2VyU2VydmljZSB9IGZyb20gJy4vbW9kdWxlcy90bGQtdG9vbHRpcC90cmFuc2xhdGlvbi1zeXN0ZW0tcGlja2VyL3NlcnZpY2VzL3RyYW5zbGF0aW9uLXN5c3RlbS1waWNrZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IFRsZFRyYW5zbGF0ZUJvZHlDb21wb25lbnQgfSBmcm9tICcuL3RsZC10cmFuc2xhdGUtYm9keS90bGQtdHJhbnNsYXRlLWJvZHkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGVybWlub2xvZ3lTZXJ2aWNlIH0gZnJvbSAnQHRpbGRlLW5scC9uZ3gtY29tbW9uJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndGxkLXRyYW5zbGF0ZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RsZC10cmFuc2xhdGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RsZC10cmFuc2xhdGUuY29tcG9uZW50LnNjc3MnXSxcclxuICBhbmltYXRpb25zOiBbXHJcbiAgICB0cmlnZ2VyKCdvcGVuQ2xvc2VBbmltYXRpb24nLCBbXHJcblxyXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXHJcbiAgICAgICAgc3R5bGUoeyBoZWlnaHQ6IDAgfSksXHJcbiAgICAgICAgYW5pbWF0ZSg1MDApXHJcbiAgICAgIF0pLFxyXG5cclxuICAgICAgdHJhbnNpdGlvbignOmxlYXZlJyxcclxuICAgICAgICBhbmltYXRlKDUwMCwgc3R5bGUoeyBoZWlnaHQ6IDAgfSkpKVxyXG4gICAgXSlcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUbGRUcmFuc2xhdGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQE91dHB1dCgpIG9uRXJyb3I6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIG9uU3lzdGVtQ2hhbmdlOiBFdmVudEVtaXR0ZXI8QWN0aXZlRGF0YT4gPSBuZXcgRXZlbnRFbWl0dGVyPEFjdGl2ZURhdGE+KCk7XHJcblxyXG4gIEBWaWV3Q2hpbGQoVGxkVHJhbnNsYXRlQm9keUNvbXBvbmVudCkgdGxkVHJhbnNsYXRlQm9keTogVGxkVHJhbnNsYXRlQm9keUNvbXBvbmVudDtcclxuXHJcbiAgYWN0aXZlU3lzdGVtT2JqOiBBY3RpdmVEYXRhO1xyXG4gIG1lc3NhZ2VzOiBOb3RpZmljYXRpb25NZXNzYWdlW10gPSBbXTtcclxuXHJcbiAgc3dpdGNoZXJPcHRpb25zOiBJU3dpdGNoZXJUcmFuc2xhdGlvbk9wdGlvbnM7XHJcblxyXG4gIGdldCBhY3Rpb25CdXR0b25Mb2FkZXIoKSB7IHJldHVybiB0aGlzLnRyYW5zbGF0ZVRleHRTZXJ2aWNlLmlzVHJhbnNsYXRpbmc7IH1cclxuXHJcbiAgZ2V0IHNob3dEb21haW5zV2l0aExhbmd1YWdlTmFtZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ1NlcnZpY2UuY29yZUNvbmZpZy5zaG93RG9tYWluc1dpdGhMYW5ndWFnZU5hbWU7XHJcbiAgfVxyXG5cclxuICBnZXQgbWF4RGlzcGxheWVkTGFuZ3VhZ2VzKCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maWdTZXJ2aWNlLmNvcmVDb25maWcubWF4RGlzcGxheWVkTGFuZ3VhZ2VzO1xyXG4gIH1cclxuXHJcbiAgcmVhZG9ubHkgbm9TeXN0ZW1zRXJyb3I6IE5vdGlmaWNhdGlvbk1lc3NhZ2UgPSB7IGJvZHk6IFwiVExEX1RSQU5TTEFURS5FUlJPUl9OT19TWVNURU1TX0xPQURFRFwiLCB0eXBlOiBOb3RpZmljYXRpb25NZXNzYWdlVHlwZS5FUlJPUiwgaGlkZUNsb3NlOiB0cnVlIH07XHJcblxyXG4gIGdldCBhY3Rpb25CdXR0b25EaXNhYmxlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZUZpbGVTZXJ2aWNlLmRpc2FibGVUcmFuc2xhdGVCdXR0b25cclxuICAgICAgfHwgdGhpcy5hdWRpb1NlcnZpY2UuaXNSZWNvcmRpbmdcclxuICAgICAgfHwgdGhpcy52b2ljZVByb2Nlc3NpbmdTZXJ2aWNlLmlzUHJvY2Vzc2luZ1xyXG4gICAgICB8fCB0aGlzLnRyYW5zbGF0ZVRleHRTZXJ2aWNlLmlzRGljdGF0aW5nXHJcbiAgfVxyXG5cclxuICBnZXQgc2hvd1RyYW5zbGF0ZUJ1dHRvbigpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ1NlcnZpY2UudGV4dENvbmZpZy5zaG93VHJhbnNsYXRlQnV0dG9uICYmICF0aGlzLnRyYW5zbGF0ZUZpbGVTZXJ2aWNlLm11bHRpcGxlRmlsZVVwbG9hZEFjdGl2ZTtcclxuICB9XHJcblxyXG4gIC8vIHRoaXMgcGFyYW0gaXMgbmVjZXNzYXJ5IHRvIHJlbW92ZSBtYXggaGVpZ2h0IGlmIG11bHRpcGxlIGZpbGUgY29tcG9uZW50IGlzIGFjdGl2ZSwgc2luY2UgdGhlcmUgc2hvdWxkbid0IGJlIG1heCBoZWlnaHQgaW4gdGhhdCBjYXNlLlxyXG4gIGdldCBpc011bHRpcGxlRmlsZXNBY3RpdmUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy50bGRUcmFuc2xhdGVCb2R5Py5tdWx0aXBsZUZpbGVzVXBsb2FkZWQ7XHJcbiAgfVxyXG5cclxuICBnZXQgaGlkZUxhbmdNZW51TGFiZWxzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29uZmlnU2VydmljZT8uY29yZUNvbmZpZy5oaWRlTGFuZ01lbnVMYWJlbHM7XHJcbiAgfVxyXG5cclxuICBnZXQgaXNDb2xsZWN0aW9uc0FjdGl2YXRlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZ1NlcnZpY2U/LnRlcm1Db25maWc/LmlzQ29sbGVjdGlvbnNBY3RpdmF0ZWQ7XHJcbiAgfVxyXG5cclxuICBnZXQgc291cmNlTGFuZ3VhZ2UoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5hY3RpdmVTeXN0ZW1PYmo/LnNvdXJjZUxhbmcubGFuZztcclxuICB9XHJcblxyXG4gIGdldCB0YXJnZXRMYW5ndWFnZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmFjdGl2ZVN5c3RlbU9iaj8udGFyZ2V0TGFuZy5sYW5nO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHN5c3RlbVBpY2tlckRyb3Bkb3duVmlzaWJsZSgpIHtcclxuICAgIHJldHVybiB0aGlzLnN5c3RlbVBpY2tlclNlcnZpY2Uub3BlbmVkTWVudSAhPT0gT3BlbmVkTWVudS5OT05FO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGxhbmd1YWdlTWVudVZlcnNpb24oKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maWdTZXJ2aWNlLmNvcmVDb25maWc/Lmxhbmd1YWdlTWVudVZlcnNpb247XHJcbiAgfVxyXG5cclxuICByZWFkb25seSBsYW5ndWFnZU1lbnVWMSA9IGxhbmd1YWdlTWVudVZlcnNpb24uVjE7XHJcbiAgcmVhZG9ubHkgbGFuZ3VhZ2VNZW51VjIgPSBsYW5ndWFnZU1lbnVWZXJzaW9uLlYyO1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRyYW5zbGF0ZUZpbGVTZXJ2aWNlOiBUbGRUcmFuc2xhdGVGaWxlU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlVGV4dFNlcnZpY2U6IFRsZFRyYW5zbGF0ZVRleHRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maWdTZXJ2aWNlOiBUbGRUcmFuc2xhdGVDb25maWdTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBhbGVydHM6IEFsZXJ0U2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNsYXRlQnV0dG9uU2VydmljZTogVGxkVHJhbnNsYXRlQnV0dG9uU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgdGxkU3lzdGVtOiBUbGRUcmFuc2xhdGVTeXN0ZW1NYW5hZ2VtZW50U2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgYXVkaW9TZXJ2aWNlOiBBdWRpb1JlY29yZFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHZvaWNlUHJvY2Vzc2luZ1NlcnZpY2U6IFRsZFZvaWNlSW5wdXRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSB3dHdRdWVyeVNlcnZpY2U6IFd0d0xpbmtQYXJhbXNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBzeXN0ZW1QaWNrZXJTZXJ2aWNlOiBUcmFuc2xhdGlvblN5c3RlbVBpY2tlclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRlcm1pbm9sb2d5U2VydmljZTogVGVybWlub2xvZ3lTZXJ2aWNlXHJcbiAgKSB7fVxyXG5cclxuICBjaGFuZ2VBdXRoKGF1dGhPcHRpb25zOiBJQXV0aE9wdGlvbnMpIHtcclxuICAgIHRoaXMuY29uZmlnU2VydmljZS5jb3JlQ29uZmlnLmlzQXV0aCA9IGF1dGhPcHRpb25zLmlzQXV0aDtcclxuICAgIHRoaXMuY29uZmlnU2VydmljZS50ZXJtQ29uZmlnLmNhbkNyZWF0ZUNvbGxlY3Rpb24gPSBhdXRoT3B0aW9ucy5jYW5DcmVhdGVUZXJtQ29sbGVjdGlvbjtcclxuICAgIHRoaXMudHJhbnNsYXRlRmlsZVNlcnZpY2UuY2xlYXIoKTtcclxuICAgIHRoaXMuaW5pdGlhbGl6ZVdpZGdldCgpO1xyXG4gIH1cclxuXHJcbiAgaW5pdGlhbGl6ZVdpZGdldCgpOiB2b2lkIHtcclxuICAgIHRoaXMudGxkU3lzdGVtLmluaXQodGhpcy50bGRTeXN0ZW0uZ2V0TGFzdFVzZWRTeXN0ZW0oKSA/PyB0aGlzLmNvbmZpZ1NlcnZpY2UuY29yZUNvbmZpZy5kZWZhdWx0U3lzdGVtSWQpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnJlbW92ZU1lc3NhZ2VzT25DbGVhcigpO1xyXG5cclxuICAgIHRoaXMudGxkU3lzdGVtLmdldExvYWRlZFN5c3RlbXMoKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgaWYgKCFyZXMubGVuZ3RoKSB7XHJcbiAgICAgICAgdGhpcy5tZXNzYWdlcy5wdXNoKHRoaXMubm9TeXN0ZW1zRXJyb3IpO1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG5cclxuICAgIGlmICh0aGlzLmNvbmZpZ1NlcnZpY2UuY29yZUNvbmZpZy5kZWJ1Zykge1xyXG4gICAgICBmb3IgKGNvbnN0IGtleSBpbiBhdmFpbGFibGVMYW5ndWFnZXMpIHtcclxuICAgICAgICB0aGlzLnRyYW5zbGF0ZS5zZXRUcmFuc2xhdGlvbihrZXksIGF2YWlsYWJsZUxhbmd1YWdlc1trZXldLCB0cnVlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuaW5pdGlhbGl6ZVdpZGdldCgpO1xyXG5cclxuICAgIHRoaXMudGxkU3lzdGVtLmdldEFjdGl2ZURhdGEoKS5waXBlKFxyXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxyXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHZhbDogQWN0aXZlRGF0YSkgPT4ge1xyXG4gICAgICAgIHRoaXMuYWN0aXZlU3lzdGVtT2JqID0gdmFsO1xyXG4gICAgICAgIGlmICghdmFsKSB7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLm9uU3lzdGVtQ2hhbmdlLmVtaXQodmFsKTtcclxuXHJcbiAgICAgICAgdGhpcy5zd2l0Y2hlck9wdGlvbnMgPSB7XHJcbiAgICAgICAgICBkb21haW5zOiB2YWwuZG9tYWlucyxcclxuICAgICAgICAgIHNvdXJjZTogeyBjb2RlOiB2YWwuc291cmNlTGFuZy5sYW5nLCBzeXN0ZW1JZDogdmFsLnN5c3RlbUlkIH0sXHJcbiAgICAgICAgICBzb3VyY2VMYW5ndWFnZUxpc3Q6IHZhbC5zb3VyY2VMYW5nTGlzdCxcclxuICAgICAgICAgIHN5c3RlbUlkOiB2YWwuc3lzdGVtSWQsXHJcbiAgICAgICAgICBzd2FwQWN0aXZlOiB2YWwuc3dhcExhbmdBY3RpdmUsXHJcbiAgICAgICAgICB0YXJnZXQ6IHsgY29kZTogdmFsLnRhcmdldExhbmcubGFuZywgc3lzdGVtSWQ6IHZhbC5zeXN0ZW1JZCB9LFxyXG4gICAgICAgICAgdGFyZ2V0TGFuZ3VhZ2VMaXN0OiB2YWwudGFyZ2V0TGFuZ0xpc3QsXHJcbiAgICAgICAgICB2ZW5kb3JzOiB2YWwudmVuZG9yc1xyXG4gICAgICAgIH07XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIHRoaXMudHJhbnNsYXRlVGV4dFNlcnZpY2Uuc291cmNlQ2hhbmdlLnBpcGUoXHJcbiAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcclxuICAgICAgICBpZiAoZXZlbnQuc3dhcFN5c3RlbXMpIHtcclxuICAgICAgICAgIHRoaXMuc3dhcExhbmd1YWdlcygpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG4gICAgdGhpcy50cmFuc2xhdGVCdXR0b25TZXJ2aWNlLmdldEFjdGlvbkNsaWNrKCkucGlwZShcclxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLnRyYW5zbGF0ZUJ1dHRvbkNsaWNrKCk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIHRoaXMud3R3UXVlcnlTZXJ2aWNlLnF1ZXJ5KCkucGlwZShcclxuICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKChxdWVyeTogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgdGhpcy5tZXNzYWdlcy5mb3JFYWNoKG1zZyA9PiB7XHJcbiAgICAgICAgICBtc2cubG9jYWxpemF0aW9uUGFyYW1zLnF1ZXJ5U3RyaW5nID0gcXVlcnlcclxuICAgICAgICB9KTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgdGhpcy5hbGVydHMuZ2V0TWVzc2FnZXMoKS5waXBlKFxyXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKG1lc3NhZ2U6IE5vdGlmaWNhdGlvbk1lc3NhZ2UpID0+IHtcclxuICAgICAgICBtZXNzYWdlLmxvY2FsaXphdGlvblBhcmFtcy5xdWVyeVN0cmluZyA9IHRoaXMud3R3UXVlcnlTZXJ2aWNlLmRlZmF1bHRRdWVyeVN0cmluZztcclxuICAgICAgICBpZiAobWVzc2FnZT8uZGVsZXRlKSB7XHJcbiAgICAgICAgICB0aGlzLnJlbW92ZUV4aXN0aW5nTWVzc2FnZShtZXNzYWdlKTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChtZXNzYWdlLnR5cGUgPT09IE5vdGlmaWNhdGlvbk1lc3NhZ2VUeXBlLkVSUk9SKSB7XHJcbiAgICAgICAgICB0aGlzLm9uRXJyb3IuZW1pdChtZXNzYWdlLmVycm9yKTtcclxuICAgICAgICB9XHJcbiAgICAgICBcclxuICAgICAgICB0aGlzLmFkZE1lc3NhZ2UobWVzc2FnZSk7XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIGNvbnN0IGFwcE5hbWVLZXkgPSBcIkFQUF9OQU1FXCI7XHJcbiAgICB0aGlzLnRyYW5zbGF0ZS5zdHJlYW0oW2FwcE5hbWVLZXldKS5waXBlKFxyXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHRyYW5zbGF0aW9ucykgPT4ge1xyXG4gICAgICAgIHRoaXMuY29uZmlnU2VydmljZS5jb3JlQ29uZmlnLmFwcE5hbWUgPSB0cmFuc2xhdGlvbnNbYXBwTmFtZUtleV07XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIHRoaXMudGVybWlub2xvZ3lTZXJ2aWNlLmdldFJldHJhbnNsYXRlU2lnbmFsKCkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLnRyYW5zbGF0ZUZpbGVTZXJ2aWNlLmZpbGVOYW1lcy5sZW5ndGgpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMudHJhbnNsYXRlQnV0dG9uQ2xpY2soKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlTWVzc2FnZShpeDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLm1lc3NhZ2VzLnNwbGljZShpeCwgMSk7XHJcbiAgfVxyXG5cclxuICBzd2FwTGFuZ3VhZ2VzKCkge1xyXG4gICAgdGhpcy50bGRTeXN0ZW0uc3dhcFN5c3RlbUxhbmd1YWdlcygpO1xyXG4gIH1cclxuXHJcbiAgc291cmNlTGFuZ3VhZ2VDaGFuZ2UobGFuZ3VhZ2U6IHN0cmluZykge1xyXG4gICAgdGhpcy50bGRTeXN0ZW0uY2hhbmdlTGFuZ3VhZ2UobGFuZ3VhZ2UsIHRoaXMuc3dpdGNoZXJPcHRpb25zLnRhcmdldC5jb2RlKTtcclxuICB9XHJcblxyXG4gIHN5c3RlbUNoYW5nZShzeXN0ZW1JZDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnRsZFN5c3RlbS5jaGFuZ2VTeXN0ZW0oc3lzdGVtSWQpO1xyXG4gIH1cclxuXHJcbiAgdGFyZ2V0TGFuZ3VhZ2VDaGFuZ2UobGFuZ3VhZ2U6IHN0cmluZykge1xyXG4gICAgdGhpcy50bGRTeXN0ZW0uY2hhbmdlTGFuZ3VhZ2UodGhpcy5zd2l0Y2hlck9wdGlvbnMuc291cmNlLmNvZGUsIGxhbmd1YWdlKTtcclxuICB9XHJcblxyXG4gIHRyYW5zbGF0ZUJ1dHRvbkNsaWNrKCkge1xyXG4gICAgaWYgKHRoaXMudHJhbnNsYXRlRmlsZVNlcnZpY2UudHJhbnNsYXRpb25GaWxlcz8ubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLnRyYW5zbGF0ZUZpbGVTZXJ2aWNlLnRyYW5zbGF0ZUJ1dHRvbkNsaWNrKHRoaXMuYWN0aXZlU3lzdGVtT2JqKTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLnRyYW5zbGF0ZVRleHRTZXJ2aWNlLm9uVHJhbnNsYXRlQnV0dG9uQ2xpY2soKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlbW92ZU1lc3NhZ2VzT25DbGVhcigpIHtcclxuICAgIHRoaXMudHJhbnNsYXRlRmlsZVNlcnZpY2Uub25DbGVhcigpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5tZXNzYWdlcyA9IFtdO1xyXG4gICAgICB9KVxyXG5cclxuICAgIHRoaXMudHJhbnNsYXRlVGV4dFNlcnZpY2Uub25DbGVhcigpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5tZXNzYWdlcyA9IFtdO1xyXG4gICAgICB9KVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQobnVsbClcclxuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgcmVtb3ZlRXhpc3RpbmdNZXNzYWdlKG1lc3NhZ2U6IE5vdGlmaWNhdGlvbk1lc3NhZ2UpOiB2b2lkIHtcclxuICAgIGRlbGV0ZSBtZXNzYWdlLmRlbGV0ZTtcclxuICAgIGNvbnN0IGRlbGV0ZU1zZ1N0cmluZyA9IEpTT04uc3RyaW5naWZ5KG1lc3NhZ2UpO1xyXG4gICAgY29uc3QgbXNnID0gdGhpcy5tZXNzYWdlcy5maW5kKChleGlzdGluZ01zZykgPT4gXHJcbiAgICAgIEpTT04uc3RyaW5naWZ5KGV4aXN0aW5nTXNnKSA9PT0gZGVsZXRlTXNnU3RyaW5nKTtcclxuICAgICAgXHJcbiAgICBjb25zdCBpbmRleCA9IHRoaXMubWVzc2FnZXMuaW5kZXhPZihtc2cpO1xyXG5cclxuICAgIGlmIChpbmRleCA8IDApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMucmVtb3ZlTWVzc2FnZShpbmRleCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFkZE1lc3NhZ2UobWVzc2FnZTogTm90aWZpY2F0aW9uTWVzc2FnZSk6IHZvaWQge1xyXG4gICAgLy8gcHVzaGluZyBvbmx5IFwib25lIG9mXCIgbWVzc2FnZSBpbiBhcnJheSwgc28gc2NyZWVuIGlzIG5vdCBzcGFtbWVkIHdpdGggbWVzc2FnZXNcclxuICAgIGNvbnN0IGRlbGV0ZU1zZ1N0cmluZyA9IEpTT04uc3RyaW5naWZ5KG1lc3NhZ2UubG9jYWxpemF0aW9uUGFyYW1zKTtcclxuICAgIGNvbnN0IGV4aXN0aW5nTWVzc2FnZSA9IHRoaXMubWVzc2FnZXMuZmluZChtc2cgPT4gbXNnLnRpdGxlID09PSBtZXNzYWdlLnRpdGxlXHJcbiAgICAgICYmIG1zZy50eXBlID09PSBtZXNzYWdlLnR5cGVcclxuICAgICAgJiYgbWVzc2FnZS5ib2R5ID09PSBtc2cuYm9keVxyXG4gICAgICAmJiBKU09OLnN0cmluZ2lmeShtc2cubG9jYWxpemF0aW9uUGFyYW1zKSA9PT0gZGVsZXRlTXNnU3RyaW5nKTtcclxuICAgIGlmICghZXhpc3RpbmdNZXNzYWdlKSB7XHJcbiAgICAgIHRoaXMubWVzc2FnZXMucHVzaChtZXNzYWdlKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdiBmeExheW91dD1cImNvbHVtblwiIGNsYXNzPVwiaC0xMDAgdGxkLXRyYW5zbGF0ZVwiXHJcbiAgW25nQ2xhc3MubHQtbWRdPVwiJ3RsZC10cmFuc2xhdGUtdGFibGV0IHRsZC1kZWZhdWx0LWJvcmRlci1ib3R0b20nXCJcclxuICBbbmdDbGFzcy5sdC1zbV09XCIndGxkLXRyYW5zbGF0ZS1tb2JpbGUgdGxkLWRlZmF1bHQtYm9yZGVyLWJvdHRvbSdcIlxyXG4gIFtjbGFzcy50bGQtdHJhbnNsYXRlLW11bHRpcGxlLWZpbGVzLWFjdGl2ZV09XCJpc011bHRpcGxlRmlsZXNBY3RpdmVcIj5cclxuICA8ZGl2IGNsYXNzPVwidGxkLXRyYW5zbGF0ZS13cmFwcGVyIHRsZC1kZWZhdWx0LWJvcmRlclwiIGZ4TGF5b3V0PVwiY29sdW1uXCIgZnhGbGV4PlxyXG4gICAgPGRpdiBjbGFzcz1cInRsZC10cmFuc2xhdGUtc3dpdGNoZXItd3JhcHBlciB0bGQtZGVmYXVsdC1ib3JkZXItYm90dG9tXCI+XHJcbiAgICAgIDx0bGQtdHJhbnNsYXRlLXN3aXRjaGVyICpuZ0lmPVwic3dpdGNoZXJPcHRpb25zICYmIGxhbmd1YWdlTWVudVZlcnNpb24gPT09IGxhbmd1YWdlTWVudVYxXCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiYWN0aW9uQnV0dG9uRGlzYWJsZWRcIiBbaXNDb2xsZWN0aW9uc0FjdGl2YXRlZF09XCJpc0NvbGxlY3Rpb25zQWN0aXZhdGVkXCIgW3NldHRpbmdzXT1cInN3aXRjaGVyT3B0aW9uc1wiXHJcbiAgICAgICAgW21heERpc3BsYXllZExhbmd1YWdlc109XCJtYXhEaXNwbGF5ZWRMYW5ndWFnZXNcIiBbc2hvd0RvbWFpbnNXaXRoTGFuZ3VhZ2VOYW1lXT1cInNob3dEb21haW5zV2l0aExhbmd1YWdlTmFtZVwiXHJcbiAgICAgICAgW2J1dHRvbkRpc2FibGVkXT1cImFjdGlvbkJ1dHRvbkRpc2FibGVkXCIgW2hpZGVMYW5nTWVudUxhYmVsc109XCJoaWRlTGFuZ01lbnVMYWJlbHNcIlxyXG4gICAgICAgIChvbkRvbWFpbkNoYW5nZSk9XCJzeXN0ZW1DaGFuZ2UoJGV2ZW50KVwiIChvbkFjdGlvbkNsaWNrKT1cInRyYW5zbGF0ZUJ1dHRvbkNsaWNrKClcIlxyXG4gICAgICAgIChvbkxhbmd1YWdlU3dhcCk9XCJzd2FwTGFuZ3VhZ2VzKClcIiAob25Tb3VyY2VMYW5ndWFnZUNoYW5nZSk9XCJzb3VyY2VMYW5ndWFnZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAob25UYXJnZXRMYW5ndWFnZUNoYW5nZSk9XCJ0YXJnZXRMYW5ndWFnZUNoYW5nZSgkZXZlbnQpXCIgW2xvYWRlcl09XCJhY3Rpb25CdXR0b25Mb2FkZXJcIiBbc2hvd1RyYW5zbGF0ZUJ1dHRvbl09XCJzaG93VHJhbnNsYXRlQnV0dG9uXCI+XHJcbiAgICAgIDwvdGxkLXRyYW5zbGF0ZS1zd2l0Y2hlcj5cclxuICAgICAgPHRsZC10cmFuc2xhdGlvbi1zeXN0ZW0tcGlja2VyICpuZ0lmPVwibGFuZ3VhZ2VNZW51VmVyc2lvbj09PWxhbmd1YWdlTWVudVYyXCJcclxuICAgICAgICBbaXNDb2xsZWN0aW9uc0FjdGl2YXRlZF09XCJpc0NvbGxlY3Rpb25zQWN0aXZhdGVkXCI+PC90bGQtdHJhbnNsYXRpb24tc3lzdGVtLXBpY2tlcj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiAqbmdJZj1cIm1lc3NhZ2VzLmxlbmd0aFwiIGNsYXNzPVwibWVzc2FnZS13cmFwcGVyXCI+XHJcbiAgICAgIDxsaWItdGxkLW5vdGlmaWNhdGlvbi1tZXNzYWdlIFtpbmxpbmVdPVwidHJ1ZVwiICpuZ0Zvcj1cImxldCBtZXNzYWdlIG9mIG1lc3NhZ2VzOyBsZXQgaXggPSBpbmRleFwiIFttZXNzYWdlXT1cIm1lc3NhZ2VcIlxyXG4gICAgICAgIChjbG9zZUNsaWNrZWQpPVwicmVtb3ZlTWVzc2FnZShpeClcIj5cclxuICAgICAgPC9saWItdGxkLW5vdGlmaWNhdGlvbi1tZXNzYWdlPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGZ4RmxleCBzdHlsZT1cInBvc2l0aW9uOiByZWxhdGl2ZTtcIj5cclxuICAgICAgPHRsZC10cmFuc2xhdGUtYm9keSBmeEZsZXggZnhMYXlvdXRBbGlnbj1cImNvbHVtblwiIFthdHRyLnNvdXJjZS1sYW5ndWFnZV09XCJzb3VyY2VMYW5ndWFnZVwiXHJcbiAgICAgICAgW2F0dHIudGFyZ2V0LWxhbmd1YWdlXT1cInRhcmdldExhbmd1YWdlXCI+PC90bGQtdHJhbnNsYXRlLWJvZHk+XHJcbiAgICAgIDx0bGQtdHJhbnNsYXRpb24tc3lzdGVtLXBpY2tlci1kcm9wZG93biBbbmdDbGFzcy54c109XCInbW9iaWxlJ1wiICpuZ0lmPVwic3lzdGVtUGlja2VyRHJvcGRvd25WaXNpYmxlXCI+XHJcbiAgICAgIDwvdGxkLXRyYW5zbGF0aW9uLXN5c3RlbS1waWNrZXItZHJvcGRvd24+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+Il19
|
|
@@ -7620,7 +7620,7 @@ class TldTranslateSwitcherComponent {
|
|
|
7620
7620
|
});
|
|
7621
7621
|
}
|
|
7622
7622
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TldTranslateSwitcherComponent, deps: [{ token: TldTranslateConfigService }, { token: TldTranslateSystemManagementService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
7623
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TldTranslateSwitcherComponent, selector: "tld-translate-switcher", inputs: { buttonDisabled: "buttonDisabled", showTranslateButton: "showTranslateButton", hideOnSmallScreens: "hideOnSmallScreens", disabled: "disabled", hideLangMenuLabels: "hideLangMenuLabels", maxDisplayedLanguages: "maxDisplayedLanguages", collections: "collections", showDomainsWithLanguageName: "showDomainsWithLanguageName", isCollectionsActivated: "isCollectionsActivated", useParentWidth: "useParentWidth", loader: "loader", settings: "settings" }, outputs: { onDomainChange: "onDomainChange", onActionClick: "onActionClick", onSourceLanguageChange: "onSourceLanguageChange", onTargetLanguageChange: "onTargetLanguageChange", onLanguageSwap: "onLanguageSwap", onVendorChange: "onVendorChange" }, host: { listeners: { "window:resize": "onResize()" } }, viewQueries: [{ propertyName: "wrapper", first: true, predicate: ["wrapper"], descendants: true }, { propertyName: "fromLabel", first: true, predicate: ["fromLabel"], descendants: true }, { propertyName: "sourceAside", first: true, predicate: ["sourceAside"], descendants: true }, { propertyName: "toLabel", first: true, predicate: ["toLabel"], descendants: true }, { propertyName: "domainWrapper", first: true, predicate: ["domainWrapper"], descendants: true }, { propertyName: "vendorWrapper", first: true, predicate: ["vendorWrapper"], descendants: true }, { propertyName: "collectionWrapper", first: true, predicate: ["collectionWrapper"], descendants: true }], ngImport: i0, template: "<div fxLayout=\"row\" fxLayoutAlign=\"center center\" class=\"tld-translate-switcher-container\" #wrapper\r\n [ngClass.lt-md]=\"'tld-translate-switcher-container-tablet'\"\r\n [ngClass.lt-sm]=\"'tld-translate-switcher-container-mobile'\"\r\n [class.tld-switcher-with-collections]='collectionsVisible'>\r\n\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\">\r\n <div fxHide.lt-md *ngIf=\"!hideLangMenuLabels\" #fromLabel>{{'TLD_TRANSLATE.FROM' | translate}}</div>\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\">\r\n <tld-lang-list id=\"tld-source-language-list\" [disabled]=\"disabled\" [testId]=\"srcLangTestId\"\r\n [languages]=\"settings.sourceLanguageList\" (onLanguageChange)=\"sourceLangChange($event)\"\r\n [selected]=\"settings.source\" [maxDisplayedLanguages]=\"visibleLanguageCount\"></tld-lang-list>\r\n <ng-container *ngIf=\"domainSide==='src'\">\r\n <ng-container *ngTemplateOutlet=\"domainTemplate;\">\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n <div #sourceAside *ngIf=\"swapIconPosition==='src'\">\r\n <ng-container *ngTemplateOutlet=\"swapButtonTemplate;\"></ng-container>\r\n </div>\r\n </div>\r\n <div *ngIf=\"swapIconPosition==='center'\">\r\n <ng-container *ngTemplateOutlet=\"swapButtonTemplate;\"></ng-container>\r\n </div>\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\" fxLayoutAlign.lt-sm=\"end center\">\r\n <div fxHide.lt-md *ngIf=\"!hideLangMenuLabels\" #toLabel>{{'TLD_TRANSLATE.TO' | translate}}</div>\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\">\r\n <tld-lang-list [disabled]=\"disabled\" id=\"tld-target-language-list\" [languages]=\"settings.targetLanguageList\"\r\n (onLanguageChange)=\"targetLangChange($event)\" [selected]=\"settings.target\"\r\n [maxDisplayedLanguages]=\"visibleLanguageCount\" [testId]=\"trgLangTestId\" (onDomainChange)=\"domainChange($event)\"\r\n [showDomainsWithLanguageName]=\"showDomainsWithLanguageName\">\r\n <ng-container *ngIf=\"domainSide==='trg'\">\r\n <ng-container *ngTemplateOutlet=\"domainTemplate;\">\r\n </ng-container>\r\n </ng-container>\r\n <div class=\"tld-translate-vendor-selection\" fxLayoutAlign=\"center center\" *ngIf=\"showVendors\" #vendorWrapper>\r\n <tld-list-menu (selectionChange)=\"domainChange($event)\" [list]=\"settings.vendors\" [titleKey]=\"'title'\"\r\n [valueKey]=\"'systemId'\" testId=\"tld-vendor-list\" [disabled]=\"disabled\" [showContent]=\"false\"\r\n [ariaLabel]=\"'TLD_TRANSLATE.VENDORS_ARIA_LABEL' | translate\" [selectedValue]=\"settings.systemId\">\r\n </tld-list-menu>\r\n </div>\r\n </tld-lang-list>\r\n </div>\r\n <div fxLayout=\"row\" fxLayoutGap.gt-xs=\"16px\">\r\n <div *ngIf=\"collectionsVisible\" #collectionWrapper>\r\n <lib-terminology [system]=\"system\" [disabled]=\"buttonDisabled\"></lib-terminology>\r\n </div>\r\n <tld-loader *ngIf=\"loader\" fxHide.lt-sm></tld-loader>\r\n <tld-translate-button [enablePulseAnimation]=\"true\" *ngIf=\"showTranslateButton && !loader\" class=\"switcher-translate-button\"\r\n [fxHide.lt-sm]=\"hideOnSmallScreens\" [disabled]=\"buttonDisabled\"></tld-translate-button>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #swapButtonTemplate>\r\n <button [disabled]=\"isSwapLanguagesDisabled\" class=\"swap-languages-button\" mat-icon-button\r\n (click)=\"swapSourceAndTarget()\" aria-label=\"swap languages\" color=\"primary\"\r\n matTooltip=\"{{'TOOLTIPS.SWAP_LANGUAGES' | translate}}\">\r\n <span class=\"material-icons\" aria-hidden=\"false\"\r\n [attr.aria-label]=\"'ARIA_LABELS.SWAP_LANGUAGES' | translate\">swap_horiz</span>\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template #domainTemplate>\r\n <div class=\"tld-translate-domain-selection\" fxLayoutAlign=\"center center\" *ngIf=\"showDomains\" #domainWrapper>\r\n <tld-domain-list fxLayoutAlign=\"center center\" (selectionChange)=\"domainChange($event)\"\r\n [list]=\"settings.domains.domains\" [selected]=\"settings.domains.active\" [selected]=\"settings.domains.active\"\r\n [disabled]=\"disabled\"></tld-domain-list>\r\n </div>\r\n</ng-template>\r\n", styles: [".tld-translate-switcher-container:not(.tld-translate-switcher-container-tablet,.tld-translate-switcher-container-mobile) tld-lang-list{margin:0 10px}.tld-translate-switcher-container-mobile :host ::ng-deep button{padding:0!important}.swap-icon{color:#5a6672}.switcher-translate-button{min-width:100px}mat-select{min-width:75px;max-width:125px}.swap-languages-button[disabled]{cursor:not-allowed}.tld-translate-domain-selection,tld-translate-vendor-selection{height:100%}tld-loader{margin:auto}\n"], dependencies: [{ kind: "directive", type: i3$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i3.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i5.DefaultShowHideDirective, selector: " [fxShow], [fxShow.print], [fxShow.xs], [fxShow.sm], [fxShow.md], [fxShow.lg], [fxShow.xl], [fxShow.lt-sm], [fxShow.lt-md], [fxShow.lt-lg], [fxShow.lt-xl], [fxShow.gt-xs], [fxShow.gt-sm], [fxShow.gt-md], [fxShow.gt-lg], [fxHide], [fxHide.print], [fxHide.xs], [fxHide.sm], [fxHide.md], [fxHide.lg], [fxHide.xl], [fxHide.lt-sm], [fxHide.lt-md], [fxHide.lt-lg], [fxHide.lt-xl], [fxHide.gt-xs], [fxHide.gt-sm], [fxHide.gt-md], [fxHide.gt-lg]", inputs: ["fxShow", "fxShow.print", "fxShow.xs", "fxShow.sm", "fxShow.md", "fxShow.lg", "fxShow.xl", "fxShow.lt-sm", "fxShow.lt-md", "fxShow.lt-lg", "fxShow.lt-xl", "fxShow.gt-xs", "fxShow.gt-sm", "fxShow.gt-md", "fxShow.gt-lg", "fxHide", "fxHide.print", "fxHide.xs", "fxHide.sm", "fxHide.md", "fxHide.lg", "fxHide.xl", "fxHide.lt-sm", "fxHide.lt-md", "fxHide.lt-lg", "fxHide.lt-xl", "fxHide.gt-xs", "fxHide.gt-sm", "fxHide.gt-md", "fxHide.gt-lg"] }, { kind: "directive", type: i5.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: TldLangListComponent, selector: "tld-lang-list", inputs: ["disabled", "pxPerLanguage", "languages", "testId", "selected", "maxDisplayedLanguages", "showDomainsWithLanguageName"], outputs: ["onLanguageChange", "onDomainChange"] }, { kind: "component", type: TldLoaderComponent, selector: "tld-loader" }, { kind: "component", type: TldTranslateButtonComponent, selector: "tld-translate-button", inputs: ["disabled", "enablePulseAnimation"], outputs: ["clicked"] }, { kind: "component", type: TldListMenuComponent, selector: "tld-list-menu", inputs: ["titleKey", "list", "showContent", "selectedValue", "disabled", "ariaLabel", "valueKey", "testId"], outputs: ["selectionChange"] }, { kind: "component", type: i4.TerminologyComponent, selector: "lib-terminology", inputs: ["selectedCollectionId", "system", "disabled", "storeSelectedInLocalStorage", "showMenuIconOnMobile"], outputs: ["glossarySelectEvent", "menuToggleEvent"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: TldDomainListComponent, selector: "tld-domain-list", inputs: ["list", "selected", "disabled"], outputs: ["selectionChange"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
7623
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TldTranslateSwitcherComponent, selector: "tld-translate-switcher", inputs: { buttonDisabled: "buttonDisabled", showTranslateButton: "showTranslateButton", hideOnSmallScreens: "hideOnSmallScreens", disabled: "disabled", hideLangMenuLabels: "hideLangMenuLabels", maxDisplayedLanguages: "maxDisplayedLanguages", collections: "collections", showDomainsWithLanguageName: "showDomainsWithLanguageName", isCollectionsActivated: "isCollectionsActivated", useParentWidth: "useParentWidth", loader: "loader", settings: "settings" }, outputs: { onDomainChange: "onDomainChange", onActionClick: "onActionClick", onSourceLanguageChange: "onSourceLanguageChange", onTargetLanguageChange: "onTargetLanguageChange", onLanguageSwap: "onLanguageSwap", onVendorChange: "onVendorChange" }, host: { listeners: { "window:resize": "onResize()" } }, viewQueries: [{ propertyName: "wrapper", first: true, predicate: ["wrapper"], descendants: true }, { propertyName: "fromLabel", first: true, predicate: ["fromLabel"], descendants: true }, { propertyName: "sourceAside", first: true, predicate: ["sourceAside"], descendants: true }, { propertyName: "toLabel", first: true, predicate: ["toLabel"], descendants: true }, { propertyName: "domainWrapper", first: true, predicate: ["domainWrapper"], descendants: true }, { propertyName: "vendorWrapper", first: true, predicate: ["vendorWrapper"], descendants: true }, { propertyName: "collectionWrapper", first: true, predicate: ["collectionWrapper"], descendants: true }], ngImport: i0, template: "<div fxLayout=\"row\" fxLayoutAlign=\"center center\" class=\"tld-translate-switcher-container\" #wrapper\r\n [ngClass.lt-md]=\"'tld-translate-switcher-container-tablet'\"\r\n [ngClass.lt-sm]=\"'tld-translate-switcher-container-mobile'\"\r\n [class.tld-switcher-with-collections]='collectionsVisible'>\r\n\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\">\r\n <div fxHide.lt-md *ngIf=\"!hideLangMenuLabels\" #fromLabel>{{'TLD_TRANSLATE.FROM' | translate}}</div>\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\">\r\n <tld-lang-list id=\"tld-source-language-list\" [disabled]=\"disabled\" [testId]=\"srcLangTestId\"\r\n [languages]=\"settings.sourceLanguageList\" (onLanguageChange)=\"sourceLangChange($event)\"\r\n [selected]=\"settings.source\" [maxDisplayedLanguages]=\"visibleLanguageCount\"></tld-lang-list>\r\n <ng-container *ngIf=\"domainSide==='src'\">\r\n <ng-container *ngTemplateOutlet=\"domainTemplate;\">\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n <div #sourceAside *ngIf=\"swapIconPosition==='src'\">\r\n <ng-container *ngTemplateOutlet=\"swapButtonTemplate;\"></ng-container>\r\n </div>\r\n </div>\r\n <div *ngIf=\"swapIconPosition==='center'\">\r\n <ng-container *ngTemplateOutlet=\"swapButtonTemplate;\"></ng-container>\r\n </div>\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\" fxLayoutAlign.lt-sm=\"end center\">\r\n <div fxHide.lt-md *ngIf=\"!hideLangMenuLabels\" #toLabel>{{'TLD_TRANSLATE.TO' | translate}}</div>\r\n <div fxFlex fxLayout=\"row\" fxLayoutAlign=\"start center\">\r\n <tld-lang-list [disabled]=\"disabled\" id=\"tld-target-language-list\" [languages]=\"settings.targetLanguageList\"\r\n (onLanguageChange)=\"targetLangChange($event)\" [selected]=\"settings.target\"\r\n [maxDisplayedLanguages]=\"visibleLanguageCount\" [testId]=\"trgLangTestId\" (onDomainChange)=\"domainChange($event)\"\r\n [showDomainsWithLanguageName]=\"showDomainsWithLanguageName\">\r\n <ng-container *ngIf=\"domainSide==='trg'\">\r\n <ng-container *ngTemplateOutlet=\"domainTemplate;\">\r\n </ng-container>\r\n </ng-container>\r\n <div class=\"tld-translate-vendor-selection\" fxLayoutAlign=\"center center\" *ngIf=\"showVendors\" #vendorWrapper>\r\n <tld-list-menu (selectionChange)=\"domainChange($event)\" [list]=\"settings.vendors\" [titleKey]=\"'title'\"\r\n [valueKey]=\"'systemId'\" testId=\"tld-vendor-list\" [disabled]=\"disabled\" [showContent]=\"false\"\r\n [ariaLabel]=\"'TLD_TRANSLATE.VENDORS_ARIA_LABEL' | translate\" [selectedValue]=\"settings.systemId\">\r\n </tld-list-menu>\r\n </div>\r\n </tld-lang-list>\r\n </div>\r\n <div fxLayout=\"row\" fxLayoutGap.gt-xs=\"16px\">\r\n <div *ngIf=\"collectionsVisible\" #collectionWrapper>\r\n <lib-terminology [system]=\"system\" [disabled]=\"buttonDisabled\"></lib-terminology>\r\n </div>\r\n <tld-loader *ngIf=\"loader\" fxHide.lt-sm></tld-loader>\r\n <tld-translate-button [enablePulseAnimation]=\"true\" *ngIf=\"showTranslateButton && !loader\" class=\"switcher-translate-button\"\r\n [fxHide.lt-sm]=\"hideOnSmallScreens\" [disabled]=\"buttonDisabled\"></tld-translate-button>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<ng-template #swapButtonTemplate>\r\n <button [disabled]=\"isSwapLanguagesDisabled\" class=\"swap-languages-button\" mat-icon-button\r\n (click)=\"swapSourceAndTarget()\" aria-label=\"swap languages\" color=\"primary\"\r\n matTooltip=\"{{'TOOLTIPS.SWAP_LANGUAGES' | translate}}\">\r\n <span class=\"material-icons\" aria-hidden=\"false\"\r\n [attr.aria-label]=\"'ARIA_LABELS.SWAP_LANGUAGES' | translate\">swap_horiz</span>\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template #domainTemplate>\r\n <div class=\"tld-translate-domain-selection\" fxLayoutAlign=\"center center\" *ngIf=\"showDomains\" #domainWrapper>\r\n <tld-domain-list fxLayoutAlign=\"center center\" (selectionChange)=\"domainChange($event)\"\r\n [list]=\"settings.domains.domains\" [selected]=\"settings.domains.active\" [selected]=\"settings.domains.active\"\r\n [disabled]=\"disabled\"></tld-domain-list>\r\n </div>\r\n</ng-template>\r\n", styles: [".tld-translate-switcher-container:not(.tld-translate-switcher-container-tablet,.tld-translate-switcher-container-mobile) tld-lang-list{margin:0 10px}.tld-translate-switcher-container-mobile :host ::ng-deep button{padding:0!important}.swap-icon{color:#5a6672}.switcher-translate-button{min-width:100px}mat-select{min-width:75px;max-width:125px}.swap-languages-button[disabled]{cursor:not-allowed}.tld-translate-domain-selection,tld-translate-vendor-selection{height:100%}tld-loader{margin:auto}\n"], dependencies: [{ kind: "directive", type: i3$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i3.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i5.DefaultShowHideDirective, selector: " [fxShow], [fxShow.print], [fxShow.xs], [fxShow.sm], [fxShow.md], [fxShow.lg], [fxShow.xl], [fxShow.lt-sm], [fxShow.lt-md], [fxShow.lt-lg], [fxShow.lt-xl], [fxShow.gt-xs], [fxShow.gt-sm], [fxShow.gt-md], [fxShow.gt-lg], [fxHide], [fxHide.print], [fxHide.xs], [fxHide.sm], [fxHide.md], [fxHide.lg], [fxHide.xl], [fxHide.lt-sm], [fxHide.lt-md], [fxHide.lt-lg], [fxHide.lt-xl], [fxHide.gt-xs], [fxHide.gt-sm], [fxHide.gt-md], [fxHide.gt-lg]", inputs: ["fxShow", "fxShow.print", "fxShow.xs", "fxShow.sm", "fxShow.md", "fxShow.lg", "fxShow.xl", "fxShow.lt-sm", "fxShow.lt-md", "fxShow.lt-lg", "fxShow.lt-xl", "fxShow.gt-xs", "fxShow.gt-sm", "fxShow.gt-md", "fxShow.gt-lg", "fxHide", "fxHide.print", "fxHide.xs", "fxHide.sm", "fxHide.md", "fxHide.lg", "fxHide.xl", "fxHide.lt-sm", "fxHide.lt-md", "fxHide.lt-lg", "fxHide.lt-xl", "fxHide.gt-xs", "fxHide.gt-sm", "fxHide.gt-md", "fxHide.gt-lg"] }, { kind: "directive", type: i5.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: TldLangListComponent, selector: "tld-lang-list", inputs: ["disabled", "pxPerLanguage", "languages", "testId", "selected", "maxDisplayedLanguages", "showDomainsWithLanguageName"], outputs: ["onLanguageChange", "onDomainChange"] }, { kind: "component", type: TldLoaderComponent, selector: "tld-loader" }, { kind: "component", type: TldTranslateButtonComponent, selector: "tld-translate-button", inputs: ["disabled", "enablePulseAnimation"], outputs: ["clicked"] }, { kind: "component", type: TldListMenuComponent, selector: "tld-list-menu", inputs: ["titleKey", "list", "showContent", "selectedValue", "disabled", "ariaLabel", "valueKey", "testId"], outputs: ["selectionChange"] }, { kind: "component", type: i4.TerminologyComponent, selector: "lib-terminology", inputs: ["selectedCollectionId", "system", "disabled", "storeSelectedInLocalStorage", "setSelectedFromLocalStorage", "showMenuIconOnMobile"], outputs: ["glossarySelectEvent", "menuToggleEvent"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: TldDomainListComponent, selector: "tld-domain-list", inputs: ["list", "selected", "disabled"], outputs: ["selectionChange"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
7624
7624
|
}
|
|
7625
7625
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TldTranslateSwitcherComponent, decorators: [{
|
|
7626
7626
|
type: Component,
|
|
@@ -7818,7 +7818,7 @@ class TranslationSystemPickerComponent {
|
|
|
7818
7818
|
});
|
|
7819
7819
|
}
|
|
7820
7820
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TranslationSystemPickerComponent, deps: [{ token: TranslationSystemPickerService }, { token: TldTranslateSystemManagementService }], target: i0.ɵɵFactoryTarget.Component });
|
|
7821
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TranslationSystemPickerComponent, selector: "tld-translation-system-picker", inputs: { isCollectionsActivated: "isCollectionsActivated" }, ngImport: i0, template: "<div fxFlex fxLayout=\"row\">\r\n <ng-container *ngIf=\"isDataLoaded\">\r\n <div fxFlex fxLayoutAlign=\"space-between center\">\r\n <ng-container\r\n *ngTemplateOutlet=\"languageDropdownTrigger; context: { language: sourceLanguage, localizationKey: 'SYSTEM_PICKER.SOURCE', isOpened: isSourceOpened, isSource: true, ariaLabelCode: sourceAriaLabel }\">\r\n </ng-container>\r\n <button [disabled]=\"!canSwap\" class=\"swap-languages-button\" mat-icon-button (click)=\"swap()\"\r\n aria-label=\"swap languages\" color=\"primary\" matTooltip=\"{{'TOOLTIPS.SWAP_LANGUAGES' | translate}}\">\r\n <span class=\"material-icons\" aria-hidden=\"false\"\r\n [attr.aria-label]=\"'ARIA_LABELS.SWAP_LANGUAGES' | translate\">swap_horiz</span>\r\n </button>\r\n </div>\r\n <div fxFlex fxLayoutAlign=\"space-between center\">\r\n <ng-container\r\n *ngTemplateOutlet=\"languageDropdownTrigger; context: { language: targetLanguage, localizationKey: 'SYSTEM_PICKER.TARGET', isOpened: isTargetOpened, isSource: false, ariaLabelCode: targetAriaLabel}\">\r\n </ng-container>\r\n\r\n <div *ngIf=\"collectionsVisible\" #collectionWrapper>\r\n <lib-terminology [system]=\"system\"></lib-terminology>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #languageName let-language=\"language\" let-showDomain=\"showDomain\" let-detectedLanguage=\"detectedLanguage\">\r\n <span>{{ language.lang | languageTranslate }}</span>\r\n <span *ngIf=\"detectedLanguage && !showDomain\"> - {{'SYSTEM_PICKER.DETECTED' | translate}}</span>\r\n <ng-container *ngIf=\"showDomain && domainLength>1\">\r\n <span>(</span>\r\n <span class=\"domain\">{{('DOMAINS.'+(activeDomainKey | uppercase)) | translate: {default: activeDomainKey} }}</span>\r\n <span>)</span>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #openedDropdown let-localizationKey=\"localizationKey\">\r\n {{localizationKey | translate}}\r\n</ng-template>\r\n\r\n<!--Template for language dropdown trigger. Same as for target and source with different params-->\r\n<ng-template #languageDropdownTrigger let-language=\"language\" let-isOpened=\"isOpened\" let-placeholder=\"localizationKey\"\r\n let-isSource=\"isSource\" let-ariaLabelCode=\"ariaLabelCode\">\r\n <lib-open-close-button class=\"system-picker-button\" [ngClass]=\"isSource? 'source': 'target'\"\r\n [ngClass.lt-sm]=\"'mobile'\" (click)=\"isSource? sourceClick($event): targetClick($event)\"\r\n [disableFocusOnAction]=\"true\" [isOpened]=\"isOpened\" [class.opened]=\"isOpened\" [ariaLabelCode]=\"ariaLabelCode\">\r\n <span [ngClass.lt-md]=\"'text-l-semi-bold'\" [ngClass.lt-sm]=\"'text-m-semi-bold mobile-domain-container'\">\r\n <ng-container\r\n *ngTemplateOutlet=\"isOpened ? openedDropdown:languageName; context: { language: language, localizationKey: placeholder, showDomain: !isSource, detectedLanguage: system.detectedLanguage }\">\r\n </ng-container>\r\n </span>\r\n </lib-open-close-button>\r\n</ng-template>\r\n", styles: [":host{display:flex}.swap-languages-button{color:var(--base-40)!important}.target{margin-left:3.25em}.system-picker-button.mobile{margin-left:1.25rem}.mobile-domain-container{display:flex}.mobile-domain-container .domain{text-overflow:ellipsis;overflow:hidden;max-width:3.5rem;white-space:nowrap;display:inline-block}:host ::ng-deep .opened button{color:var(--accent)}\n"], dependencies: [{ kind: "directive", type: i3$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i3.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i5.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: i4.OpenCloseButtonComponent, selector: "lib-open-close-button", inputs: ["disableFocusOnAction", "disabled", "isIcon", "ariaLabelCode", "isOpened"] }, { kind: "component", type: i4.TerminologyComponent, selector: "lib-terminology", inputs: ["selectedCollectionId", "system", "disabled", "storeSelectedInLocalStorage", "showMenuIconOnMobile"], outputs: ["glossarySelectEvent", "menuToggleEvent"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "pipe", type: i3$1.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i4.LanguageTranslatePipe, name: "languageTranslate" }] });
|
|
7821
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TranslationSystemPickerComponent, selector: "tld-translation-system-picker", inputs: { isCollectionsActivated: "isCollectionsActivated" }, ngImport: i0, template: "<div fxFlex fxLayout=\"row\">\r\n <ng-container *ngIf=\"isDataLoaded\">\r\n <div fxFlex fxLayoutAlign=\"space-between center\">\r\n <ng-container\r\n *ngTemplateOutlet=\"languageDropdownTrigger; context: { language: sourceLanguage, localizationKey: 'SYSTEM_PICKER.SOURCE', isOpened: isSourceOpened, isSource: true, ariaLabelCode: sourceAriaLabel }\">\r\n </ng-container>\r\n <button [disabled]=\"!canSwap\" class=\"swap-languages-button\" mat-icon-button (click)=\"swap()\"\r\n aria-label=\"swap languages\" color=\"primary\" matTooltip=\"{{'TOOLTIPS.SWAP_LANGUAGES' | translate}}\">\r\n <span class=\"material-icons\" aria-hidden=\"false\"\r\n [attr.aria-label]=\"'ARIA_LABELS.SWAP_LANGUAGES' | translate\">swap_horiz</span>\r\n </button>\r\n </div>\r\n <div fxFlex fxLayoutAlign=\"space-between center\">\r\n <ng-container\r\n *ngTemplateOutlet=\"languageDropdownTrigger; context: { language: targetLanguage, localizationKey: 'SYSTEM_PICKER.TARGET', isOpened: isTargetOpened, isSource: false, ariaLabelCode: targetAriaLabel}\">\r\n </ng-container>\r\n\r\n <div *ngIf=\"collectionsVisible\" #collectionWrapper>\r\n <lib-terminology [system]=\"system\"></lib-terminology>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template #languageName let-language=\"language\" let-showDomain=\"showDomain\" let-detectedLanguage=\"detectedLanguage\">\r\n <span>{{ language.lang | languageTranslate }}</span>\r\n <span *ngIf=\"detectedLanguage && !showDomain\"> - {{'SYSTEM_PICKER.DETECTED' | translate}}</span>\r\n <ng-container *ngIf=\"showDomain && domainLength>1\">\r\n <span>(</span>\r\n <span class=\"domain\">{{('DOMAINS.'+(activeDomainKey | uppercase)) | translate: {default: activeDomainKey} }}</span>\r\n <span>)</span>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #openedDropdown let-localizationKey=\"localizationKey\">\r\n {{localizationKey | translate}}\r\n</ng-template>\r\n\r\n<!--Template for language dropdown trigger. Same as for target and source with different params-->\r\n<ng-template #languageDropdownTrigger let-language=\"language\" let-isOpened=\"isOpened\" let-placeholder=\"localizationKey\"\r\n let-isSource=\"isSource\" let-ariaLabelCode=\"ariaLabelCode\">\r\n <lib-open-close-button class=\"system-picker-button\" [ngClass]=\"isSource? 'source': 'target'\"\r\n [ngClass.lt-sm]=\"'mobile'\" (click)=\"isSource? sourceClick($event): targetClick($event)\"\r\n [disableFocusOnAction]=\"true\" [isOpened]=\"isOpened\" [class.opened]=\"isOpened\" [ariaLabelCode]=\"ariaLabelCode\">\r\n <span [ngClass.lt-md]=\"'text-l-semi-bold'\" [ngClass.lt-sm]=\"'text-m-semi-bold mobile-domain-container'\">\r\n <ng-container\r\n *ngTemplateOutlet=\"isOpened ? openedDropdown:languageName; context: { language: language, localizationKey: placeholder, showDomain: !isSource, detectedLanguage: system.detectedLanguage }\">\r\n </ng-container>\r\n </span>\r\n </lib-open-close-button>\r\n</ng-template>\r\n", styles: [":host{display:flex}.swap-languages-button{color:var(--base-40)!important}.target{margin-left:3.25em}.system-picker-button.mobile{margin-left:1.25rem}.mobile-domain-container{display:flex}.mobile-domain-container .domain{text-overflow:ellipsis;overflow:hidden;max-width:3.5rem;white-space:nowrap;display:inline-block}:host ::ng-deep .opened button{color:var(--accent)}\n"], dependencies: [{ kind: "directive", type: i3$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i3.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i5.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: i4.OpenCloseButtonComponent, selector: "lib-open-close-button", inputs: ["disableFocusOnAction", "disabled", "isIcon", "ariaLabelCode", "isOpened"] }, { kind: "component", type: i4.TerminologyComponent, selector: "lib-terminology", inputs: ["selectedCollectionId", "system", "disabled", "storeSelectedInLocalStorage", "setSelectedFromLocalStorage", "showMenuIconOnMobile"], outputs: ["glossarySelectEvent", "menuToggleEvent"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i8.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "pipe", type: i3$1.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i4.LanguageTranslatePipe, name: "languageTranslate" }] });
|
|
7822
7822
|
}
|
|
7823
7823
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TranslationSystemPickerComponent, decorators: [{
|
|
7824
7824
|
type: Component,
|
|
@@ -9288,7 +9288,12 @@ class TldTranslateComponent {
|
|
|
9288
9288
|
.subscribe((translations) => {
|
|
9289
9289
|
this.configService.coreConfig.appName = translations[appNameKey];
|
|
9290
9290
|
});
|
|
9291
|
-
this.terminologyService.getRetranslateSignal().pipe(takeUntil(this.destroy$)).subscribe(() =>
|
|
9291
|
+
this.terminologyService.getRetranslateSignal().pipe(takeUntil(this.destroy$)).subscribe(() => {
|
|
9292
|
+
if (this.translateFileService.fileNames.length) {
|
|
9293
|
+
return;
|
|
9294
|
+
}
|
|
9295
|
+
this.translateButtonClick();
|
|
9296
|
+
});
|
|
9292
9297
|
}
|
|
9293
9298
|
removeMessage(ix) {
|
|
9294
9299
|
this.messages.splice(ix, 1);
|