@tilde-nlp/ngx-translate 9.1.5 → 9.1.7

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.
@@ -1,7 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Optional, Inject, Injectable, inject, signal, Pipe, Component, EventEmitter, Output, Input, ViewChild, NgModule, input, computed, HostListener } from '@angular/core';
3
3
  import * as i5 from '@tilde-nlp/ngx-common';
4
- import { SystemService, AlertService, LAST_USED_SYSTEM_LOCAL_STORAGE_KEY, SortHelper, OpenCloseButtonComponent, CloseButtonModule, SortTranslationsModule, OpenCloseButtonModule, LanguageTranslateModule, InlineMessageIconPosition, InlineMessageType, InlineMessageModule, AuthHeadersHelper, ConversionHelper, FileExtensionHelper, FileExtensions, NotificationMessageType, FileUploadModule, HtmlHelper, PlausibleHelper, LLMActions, ResolutionHelper, HashHelper, ExtensionDialogModule, NewFeatureDialogWrapperComponent, FilterWithHighlightPipe, DomainTranslatePipe, FilterWithHighlightModule, ClickOutsideModule, TerminologyModule, SortDomainsPipe, NotificationMessageModule, CompanyProductModule, StatusDisplayModule, ALERT_CONFIGURATION_TOKEN } from '@tilde-nlp/ngx-common';
4
+ import { SystemService, AlertService, LAST_USED_SYSTEM_LOCAL_STORAGE_KEY, SortHelper, OpenCloseButtonComponent, CloseButtonModule, SortTranslationsModule, OpenCloseButtonModule, LanguageTranslateModule, SortLanguageListPipe, InlineMessageIconPosition, InlineMessageType, InlineMessageModule, AuthHeadersHelper, ConversionHelper, FileExtensionHelper, FileExtensions, NotificationMessageType, FileUploadModule, HtmlHelper, PlausibleHelper, LLMActions, ResolutionHelper, HashHelper, ExtensionDialogModule, NewFeatureDialogWrapperComponent, FilterWithHighlightPipe, DomainTranslatePipe, FilterWithHighlightModule, ClickOutsideModule, TerminologyModule, SortDomainsPipe, NotificationMessageModule, CompanyProductModule, StatusDisplayModule, ALERT_CONFIGURATION_TOKEN } from '@tilde-nlp/ngx-common';
5
5
  import { ReplaySubject, Subject, BehaviorSubject, of, timer, throwError, forkJoin, finalize, takeUntil as takeUntil$1 } from 'rxjs';
6
6
  import * as i5$3 from '@tilde-nlp/ngx-services';
7
7
  import { ResourceService, ResourceType, TextToSpeechService, QuotaType, LLMService, LLMWritingStyle, LLMRephraseUseCase, LLMSummaryUseCase } from '@tilde-nlp/ngx-services';
@@ -6090,11 +6090,11 @@ class TldLangListComponent {
6090
6090
  });
6091
6091
  }
6092
6092
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: TldLangListComponent, deps: [{ token: i1.TranslateService }, { token: TldTranslateConfigService }, { token: TldTranslateSystemManagementService }], target: i0.ɵɵFactoryTarget.Component });
6093
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.1", type: TldLangListComponent, isStandalone: false, selector: "tld-lang-list", inputs: { disabled: "disabled", pxPerLanguage: "pxPerLanguage", languages: "languages", testId: "testId", selected: "selected", maxDisplayedLanguages: "maxDisplayedLanguages", showDomainsWithLanguageName: "showDomainsWithLanguageName" }, outputs: { onLanguageChange: "onLanguageChange", onDomainChange: "onDomainChange" }, viewQueries: [{ propertyName: "wrapper", first: true, predicate: ["wrapper"], descendants: true }, { propertyName: "menu", first: true, predicate: MatMenu, descendants: true }, { propertyName: "openCloseButton", first: true, predicate: OpenCloseButtonComponent, descendants: true }], ngImport: i0, template: "<div fxLayout=\"row\" class=\"tld-lang-list-wrapper\" fxLayoutAlign=\"start center\">\r\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" role=\"list\" class=\"tld-lang-list\"\r\n [ngClass]=\"{'single-element-list': visibleLanguageList.length === 1}\">\r\n <ng-container *ngIf=\"visibleLanguageList.length>1 else singleLanguageList\">\r\n <div role=\"listitem\" *ngFor=\"let language of visibleLanguageList\" class=\"tld-language-list-element\"\r\n [ngClass]=\"{'active accent-color' : isActive(language)}\">\r\n <ng-template [ngTemplateOutlet]=\"languageButton\" [ngTemplateOutletContext]=\"{ language: language }\">\r\n </ng-template>\r\n </div>\r\n <ng-template *ngIf=\"menuLanguageList.length>0\" [ngTemplateOutlet]=\"menuDropDown\" [ngTemplateOutletContext]=\"{ isIcon: true}\"></ng-template>\r\n </ng-container>\r\n </div>\r\n <ng-content></ng-content>\r\n <mat-menu #languageMenu=\"matMenu\" fxLayout=\"column\" class=\"language-menu\">\r\n <ng-container *ngFor=\"let language of menuLanguageList\">\r\n <ng-template [ngTemplateOutlet]=\"languageButton\" [ngTemplateOutletContext]=\"{ language: language }\"></ng-template>\r\n </ng-container>\r\n </mat-menu>\r\n</div>\r\n\r\n<!-- Template for one visible language with menu languages. -->\r\n<ng-template #singleLanguageList>\r\n <ng-container *ngIf=\" menuLanguageList.length > 0 else UnclickableLanguage\">\r\n <ng-template [ngTemplateOutlet]=\"menuDropDown\" [ngTemplateOutletContext]=\"{ isIcon: false}\"></ng-template>\r\n </ng-container>\r\n</ng-template>\r\n<!-- ------------------------ -->\r\n\r\n<!-- Template if only one language is in list and no menu languages. This language needs no cursor or click events.-->\r\n<ng-template #UnclickableLanguage>\r\n <button color=\"primary\" [attr.aria-label]=\"firstVisible.code | languageTranslate\" *ngIf=\"firstVisible\" class=\"language-title no-highlight no-action\">\r\n <ng-template [ngTemplateOutlet]=\"languageNameWithDomain\" [ngTemplateOutletContext]=\"{ language: firstVisible}\"></ng-template>\r\n </button>\r\n</ng-template>\r\n<!-- ------------------------ -->\r\n\r\n<!-- templates for language names and other small repeated parts of this component-->\r\n<ng-template #menuDropDown let-isIcon=\"isIcon\">\r\n <lib-open-close-button [isIcon]=\"isIcon\" [ngClass]=\"{'language-title no-highlight' : !isIcon}\" [disabled]=\"disabled\"\r\n #state=\"matMenuTrigger\" (menuOpened)=\"onMenuOpen()\" [matMenuTriggerFor]=\"languageMenu\" [isOpened]=\"state.menuOpen\"\r\n [ariaLabelCode]=\"menuTriggerAriaCode\">\r\n <ng-template *ngIf=\"!isIcon\" [ngTemplateOutlet]=\"languageNameWithDomain\"\r\n [ngTemplateOutletContext]=\"{ language: firstVisible }\">\r\n </ng-template>\r\n </lib-open-close-button>\r\n</ng-template>\r\n\r\n<ng-template #languageButton let-language=\"language\">\r\n <button fxLayoutAlign=\"start center\" [ngClass]=\"{'active accent-color' : isActive(language)}\" mat-menu-item\r\n *ngIf=\"language\" class=\"language-title\" (click)=\"selectLanguage(language)\" [disabled]=\"disabled\"\r\n [attr.aria-label]=\"language.code | languageTranslate\">\r\n <span>{{ language.code | languageTranslate }}</span>&nbsp;\r\n <span class=\"domain\" *ngIf=\"language.showDomain\"> ({{language.domain | translateDomain}})</span>\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template #languageNameWithDomain let-language=\"language\">\r\n <span>{{ language.code | languageTranslate }}</span>\r\n <span *ngIf=\"vendorsInformation[activeVendor | lowercase]\" class=\"vendor-info\"\r\n [matTooltip]=\"vendorsInformation[activeVendor | lowercase].tooltip | translate\"\r\n >\r\n {{ vendorsInformation[activeVendor | lowercase].postfix }}\r\n </span>\r\n <span fxHide.lt-sm *ngIf=\"language.showDomain\">\r\n <span>&nbsp;(</span>\r\n <span class=\"domain\">{{language.domain | translateDomain}}</span>\r\n <span>)</span>\r\n </span>\r\n</ng-template>\r\n<!-- ------------------------ -->", styles: [".tld-lang-list-wrapper{max-width:100%}.tld-lang-list-wrapper .tld-language-list-element{padding:0 12px}.tld-lang-list:not(.single-element-list) .active .language-title:after{position:absolute;bottom:5px;left:50%;transform:translate(-50%);content:\"\";display:block;width:16px;height:2px}.tld-language-list-element.active .span-block{display:block}.tld-language-list-element.active .domain{display:inline-block;max-width:90px;overflow-x:hidden;text-overflow:ellipsis}.language-title{cursor:pointer;font-size:1rem;font-weight:500;position:relative;background-color:transparent;border:none;font-family:Inter,sans-serif}.language-title.no-highlight.no-action{cursor:default}.vendor-info{margin-left:5px}:host ::ng-deep .open-close-button-content span{white-space:nowrap}\n"], dependencies: [{ kind: "directive", type: i3$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { 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: "component", type: i5.OpenCloseButtonComponent, selector: "lib-open-close-button", inputs: ["disableFocusOnAction", "disabled", "isIcon", "ariaLabelCode", "isOpened"] }, { 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: i5$1.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$1.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$2.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i5$2.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i5$2.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "pipe", type: i3$1.LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i5.LanguageTranslatePipe, name: "languageTranslate" }, { kind: "pipe", type: TranslateDomainPipe, name: "translateDomain" }] });
6093
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.2.1", type: TldLangListComponent, isStandalone: false, selector: "tld-lang-list", inputs: { disabled: "disabled", pxPerLanguage: "pxPerLanguage", languages: "languages", testId: "testId", selected: "selected", maxDisplayedLanguages: "maxDisplayedLanguages", showDomainsWithLanguageName: "showDomainsWithLanguageName" }, outputs: { onLanguageChange: "onLanguageChange", onDomainChange: "onDomainChange" }, viewQueries: [{ propertyName: "wrapper", first: true, predicate: ["wrapper"], descendants: true }, { propertyName: "menu", first: true, predicate: MatMenu, descendants: true }, { propertyName: "openCloseButton", first: true, predicate: OpenCloseButtonComponent, descendants: true }], ngImport: i0, template: "<div fxLayout=\"row\" class=\"tld-lang-list-wrapper\" fxLayoutAlign=\"start center\">\r\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" role=\"list\" class=\"tld-lang-list\"\r\n [ngClass]=\"{'single-element-list': visibleLanguageList.length === 1}\">\r\n <ng-container *ngIf=\"visibleLanguageList.length>1 else singleLanguageList\">\r\n <div role=\"listitem\" *ngFor=\"let language of visibleLanguageList\" class=\"tld-language-list-element\"\r\n [ngClass]=\"{'active accent-color' : isActive(language)}\">\r\n <ng-template [ngTemplateOutlet]=\"languageButton\" [ngTemplateOutletContext]=\"{ language: language }\">\r\n </ng-template>\r\n </div>\r\n <ng-template *ngIf=\"menuLanguageList.length>0\" [ngTemplateOutlet]=\"menuDropDown\" [ngTemplateOutletContext]=\"{ isIcon: true}\"></ng-template>\r\n </ng-container>\r\n </div>\r\n <ng-content></ng-content>\r\n <mat-menu #languageMenu=\"matMenu\" fxLayout=\"column\" class=\"language-menu\">\r\n <ng-container *ngFor=\"let language of menuLanguageList | sortTranslations : 'LANGUAGES' : 'code' : currentLanguage | async\">\r\n <ng-template [ngTemplateOutlet]=\"languageButton\" [ngTemplateOutletContext]=\"{ language: language }\"></ng-template>\r\n </ng-container>\r\n </mat-menu>\r\n</div>\r\n\r\n<!-- Template for one visible language with menu languages. -->\r\n<ng-template #singleLanguageList>\r\n <ng-container *ngIf=\" menuLanguageList.length > 0 else UnclickableLanguage\">\r\n <ng-template [ngTemplateOutlet]=\"menuDropDown\" [ngTemplateOutletContext]=\"{ isIcon: false}\"></ng-template>\r\n </ng-container>\r\n</ng-template>\r\n<!-- ------------------------ -->\r\n\r\n<!-- Template if only one language is in list and no menu languages. This language needs no cursor or click events.-->\r\n<ng-template #UnclickableLanguage>\r\n <button color=\"primary\" [attr.aria-label]=\"firstVisible.code | languageTranslate\" *ngIf=\"firstVisible\" class=\"language-title no-highlight no-action\">\r\n <ng-template [ngTemplateOutlet]=\"languageNameWithDomain\" [ngTemplateOutletContext]=\"{ language: firstVisible}\"></ng-template>\r\n </button>\r\n</ng-template>\r\n<!-- ------------------------ -->\r\n\r\n<!-- templates for language names and other small repeated parts of this component-->\r\n<ng-template #menuDropDown let-isIcon=\"isIcon\">\r\n <lib-open-close-button [isIcon]=\"isIcon\" [ngClass]=\"{'language-title no-highlight' : !isIcon}\" [disabled]=\"disabled\"\r\n #state=\"matMenuTrigger\" (menuOpened)=\"onMenuOpen()\" [matMenuTriggerFor]=\"languageMenu\" [isOpened]=\"state.menuOpen\"\r\n [ariaLabelCode]=\"menuTriggerAriaCode\">\r\n <ng-template *ngIf=\"!isIcon\" [ngTemplateOutlet]=\"languageNameWithDomain\"\r\n [ngTemplateOutletContext]=\"{ language: firstVisible }\">\r\n </ng-template>\r\n </lib-open-close-button>\r\n</ng-template>\r\n\r\n<ng-template #languageButton let-language=\"language\">\r\n <button fxLayoutAlign=\"start center\" [ngClass]=\"{'active accent-color' : isActive(language)}\" mat-menu-item\r\n *ngIf=\"language\" class=\"language-title\" (click)=\"selectLanguage(language)\" [disabled]=\"disabled\"\r\n [attr.aria-label]=\"language.code | languageTranslate\">\r\n <span>{{ language.code | languageTranslate }}</span>&nbsp;\r\n <span class=\"domain\" *ngIf=\"language.showDomain\"> ({{language.domain | translateDomain}})</span>\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template #languageNameWithDomain let-language=\"language\">\r\n <span>{{ language.code | languageTranslate }}</span>\r\n <span *ngIf=\"vendorsInformation[activeVendor | lowercase]\" class=\"vendor-info\"\r\n [matTooltip]=\"vendorsInformation[activeVendor | lowercase].tooltip | translate\"\r\n >\r\n {{ vendorsInformation[activeVendor | lowercase].postfix }}\r\n </span>\r\n <span fxHide.lt-sm *ngIf=\"language.showDomain\">\r\n <span>&nbsp;(</span>\r\n <span class=\"domain\">{{language.domain | translateDomain}}</span>\r\n <span>)</span>\r\n </span>\r\n</ng-template>\r\n<!-- ------------------------ -->", styles: [".tld-lang-list-wrapper{max-width:100%}.tld-lang-list-wrapper .tld-language-list-element{padding:0 12px}.tld-lang-list:not(.single-element-list) .active .language-title:after{position:absolute;bottom:5px;left:50%;transform:translate(-50%);content:\"\";display:block;width:16px;height:2px}.tld-language-list-element.active .span-block{display:block}.tld-language-list-element.active .domain{display:inline-block;max-width:90px;overflow-x:hidden;text-overflow:ellipsis}.language-title{cursor:pointer;font-size:1rem;font-weight:500;position:relative;background-color:transparent;border:none;font-family:Inter,sans-serif}.language-title.no-highlight.no-action{cursor:default}.vendor-info{margin-left:5px}:host ::ng-deep .open-close-button-content span{white-space:nowrap}\n"], dependencies: [{ kind: "directive", type: i3$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { 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: "component", type: i5.OpenCloseButtonComponent, selector: "lib-open-close-button", inputs: ["disableFocusOnAction", "disabled", "isIcon", "ariaLabelCode", "isOpened"] }, { 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: i5$1.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$1.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$2.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i5$2.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i5$2.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "pipe", type: i3$1.AsyncPipe, name: "async" }, { kind: "pipe", type: i3$1.LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }, { kind: "pipe", type: i5.SortTranslationsPipe, name: "sortTranslations" }, { kind: "pipe", type: i5.LanguageTranslatePipe, name: "languageTranslate" }, { kind: "pipe", type: TranslateDomainPipe, name: "translateDomain" }] });
6094
6094
  }
6095
6095
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: TldLangListComponent, decorators: [{
6096
6096
  type: Component,
6097
- args: [{ selector: 'tld-lang-list', standalone: false, template: "<div fxLayout=\"row\" class=\"tld-lang-list-wrapper\" fxLayoutAlign=\"start center\">\r\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" role=\"list\" class=\"tld-lang-list\"\r\n [ngClass]=\"{'single-element-list': visibleLanguageList.length === 1}\">\r\n <ng-container *ngIf=\"visibleLanguageList.length>1 else singleLanguageList\">\r\n <div role=\"listitem\" *ngFor=\"let language of visibleLanguageList\" class=\"tld-language-list-element\"\r\n [ngClass]=\"{'active accent-color' : isActive(language)}\">\r\n <ng-template [ngTemplateOutlet]=\"languageButton\" [ngTemplateOutletContext]=\"{ language: language }\">\r\n </ng-template>\r\n </div>\r\n <ng-template *ngIf=\"menuLanguageList.length>0\" [ngTemplateOutlet]=\"menuDropDown\" [ngTemplateOutletContext]=\"{ isIcon: true}\"></ng-template>\r\n </ng-container>\r\n </div>\r\n <ng-content></ng-content>\r\n <mat-menu #languageMenu=\"matMenu\" fxLayout=\"column\" class=\"language-menu\">\r\n <ng-container *ngFor=\"let language of menuLanguageList\">\r\n <ng-template [ngTemplateOutlet]=\"languageButton\" [ngTemplateOutletContext]=\"{ language: language }\"></ng-template>\r\n </ng-container>\r\n </mat-menu>\r\n</div>\r\n\r\n<!-- Template for one visible language with menu languages. -->\r\n<ng-template #singleLanguageList>\r\n <ng-container *ngIf=\" menuLanguageList.length > 0 else UnclickableLanguage\">\r\n <ng-template [ngTemplateOutlet]=\"menuDropDown\" [ngTemplateOutletContext]=\"{ isIcon: false}\"></ng-template>\r\n </ng-container>\r\n</ng-template>\r\n<!-- ------------------------ -->\r\n\r\n<!-- Template if only one language is in list and no menu languages. This language needs no cursor or click events.-->\r\n<ng-template #UnclickableLanguage>\r\n <button color=\"primary\" [attr.aria-label]=\"firstVisible.code | languageTranslate\" *ngIf=\"firstVisible\" class=\"language-title no-highlight no-action\">\r\n <ng-template [ngTemplateOutlet]=\"languageNameWithDomain\" [ngTemplateOutletContext]=\"{ language: firstVisible}\"></ng-template>\r\n </button>\r\n</ng-template>\r\n<!-- ------------------------ -->\r\n\r\n<!-- templates for language names and other small repeated parts of this component-->\r\n<ng-template #menuDropDown let-isIcon=\"isIcon\">\r\n <lib-open-close-button [isIcon]=\"isIcon\" [ngClass]=\"{'language-title no-highlight' : !isIcon}\" [disabled]=\"disabled\"\r\n #state=\"matMenuTrigger\" (menuOpened)=\"onMenuOpen()\" [matMenuTriggerFor]=\"languageMenu\" [isOpened]=\"state.menuOpen\"\r\n [ariaLabelCode]=\"menuTriggerAriaCode\">\r\n <ng-template *ngIf=\"!isIcon\" [ngTemplateOutlet]=\"languageNameWithDomain\"\r\n [ngTemplateOutletContext]=\"{ language: firstVisible }\">\r\n </ng-template>\r\n </lib-open-close-button>\r\n</ng-template>\r\n\r\n<ng-template #languageButton let-language=\"language\">\r\n <button fxLayoutAlign=\"start center\" [ngClass]=\"{'active accent-color' : isActive(language)}\" mat-menu-item\r\n *ngIf=\"language\" class=\"language-title\" (click)=\"selectLanguage(language)\" [disabled]=\"disabled\"\r\n [attr.aria-label]=\"language.code | languageTranslate\">\r\n <span>{{ language.code | languageTranslate }}</span>&nbsp;\r\n <span class=\"domain\" *ngIf=\"language.showDomain\"> ({{language.domain | translateDomain}})</span>\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template #languageNameWithDomain let-language=\"language\">\r\n <span>{{ language.code | languageTranslate }}</span>\r\n <span *ngIf=\"vendorsInformation[activeVendor | lowercase]\" class=\"vendor-info\"\r\n [matTooltip]=\"vendorsInformation[activeVendor | lowercase].tooltip | translate\"\r\n >\r\n {{ vendorsInformation[activeVendor | lowercase].postfix }}\r\n </span>\r\n <span fxHide.lt-sm *ngIf=\"language.showDomain\">\r\n <span>&nbsp;(</span>\r\n <span class=\"domain\">{{language.domain | translateDomain}}</span>\r\n <span>)</span>\r\n </span>\r\n</ng-template>\r\n<!-- ------------------------ -->", styles: [".tld-lang-list-wrapper{max-width:100%}.tld-lang-list-wrapper .tld-language-list-element{padding:0 12px}.tld-lang-list:not(.single-element-list) .active .language-title:after{position:absolute;bottom:5px;left:50%;transform:translate(-50%);content:\"\";display:block;width:16px;height:2px}.tld-language-list-element.active .span-block{display:block}.tld-language-list-element.active .domain{display:inline-block;max-width:90px;overflow-x:hidden;text-overflow:ellipsis}.language-title{cursor:pointer;font-size:1rem;font-weight:500;position:relative;background-color:transparent;border:none;font-family:Inter,sans-serif}.language-title.no-highlight.no-action{cursor:default}.vendor-info{margin-left:5px}:host ::ng-deep .open-close-button-content span{white-space:nowrap}\n"] }]
6097
+ args: [{ selector: 'tld-lang-list', standalone: false, template: "<div fxLayout=\"row\" class=\"tld-lang-list-wrapper\" fxLayoutAlign=\"start center\">\r\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" role=\"list\" class=\"tld-lang-list\"\r\n [ngClass]=\"{'single-element-list': visibleLanguageList.length === 1}\">\r\n <ng-container *ngIf=\"visibleLanguageList.length>1 else singleLanguageList\">\r\n <div role=\"listitem\" *ngFor=\"let language of visibleLanguageList\" class=\"tld-language-list-element\"\r\n [ngClass]=\"{'active accent-color' : isActive(language)}\">\r\n <ng-template [ngTemplateOutlet]=\"languageButton\" [ngTemplateOutletContext]=\"{ language: language }\">\r\n </ng-template>\r\n </div>\r\n <ng-template *ngIf=\"menuLanguageList.length>0\" [ngTemplateOutlet]=\"menuDropDown\" [ngTemplateOutletContext]=\"{ isIcon: true}\"></ng-template>\r\n </ng-container>\r\n </div>\r\n <ng-content></ng-content>\r\n <mat-menu #languageMenu=\"matMenu\" fxLayout=\"column\" class=\"language-menu\">\r\n <ng-container *ngFor=\"let language of menuLanguageList | sortTranslations : 'LANGUAGES' : 'code' : currentLanguage | async\">\r\n <ng-template [ngTemplateOutlet]=\"languageButton\" [ngTemplateOutletContext]=\"{ language: language }\"></ng-template>\r\n </ng-container>\r\n </mat-menu>\r\n</div>\r\n\r\n<!-- Template for one visible language with menu languages. -->\r\n<ng-template #singleLanguageList>\r\n <ng-container *ngIf=\" menuLanguageList.length > 0 else UnclickableLanguage\">\r\n <ng-template [ngTemplateOutlet]=\"menuDropDown\" [ngTemplateOutletContext]=\"{ isIcon: false}\"></ng-template>\r\n </ng-container>\r\n</ng-template>\r\n<!-- ------------------------ -->\r\n\r\n<!-- Template if only one language is in list and no menu languages. This language needs no cursor or click events.-->\r\n<ng-template #UnclickableLanguage>\r\n <button color=\"primary\" [attr.aria-label]=\"firstVisible.code | languageTranslate\" *ngIf=\"firstVisible\" class=\"language-title no-highlight no-action\">\r\n <ng-template [ngTemplateOutlet]=\"languageNameWithDomain\" [ngTemplateOutletContext]=\"{ language: firstVisible}\"></ng-template>\r\n </button>\r\n</ng-template>\r\n<!-- ------------------------ -->\r\n\r\n<!-- templates for language names and other small repeated parts of this component-->\r\n<ng-template #menuDropDown let-isIcon=\"isIcon\">\r\n <lib-open-close-button [isIcon]=\"isIcon\" [ngClass]=\"{'language-title no-highlight' : !isIcon}\" [disabled]=\"disabled\"\r\n #state=\"matMenuTrigger\" (menuOpened)=\"onMenuOpen()\" [matMenuTriggerFor]=\"languageMenu\" [isOpened]=\"state.menuOpen\"\r\n [ariaLabelCode]=\"menuTriggerAriaCode\">\r\n <ng-template *ngIf=\"!isIcon\" [ngTemplateOutlet]=\"languageNameWithDomain\"\r\n [ngTemplateOutletContext]=\"{ language: firstVisible }\">\r\n </ng-template>\r\n </lib-open-close-button>\r\n</ng-template>\r\n\r\n<ng-template #languageButton let-language=\"language\">\r\n <button fxLayoutAlign=\"start center\" [ngClass]=\"{'active accent-color' : isActive(language)}\" mat-menu-item\r\n *ngIf=\"language\" class=\"language-title\" (click)=\"selectLanguage(language)\" [disabled]=\"disabled\"\r\n [attr.aria-label]=\"language.code | languageTranslate\">\r\n <span>{{ language.code | languageTranslate }}</span>&nbsp;\r\n <span class=\"domain\" *ngIf=\"language.showDomain\"> ({{language.domain | translateDomain}})</span>\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template #languageNameWithDomain let-language=\"language\">\r\n <span>{{ language.code | languageTranslate }}</span>\r\n <span *ngIf=\"vendorsInformation[activeVendor | lowercase]\" class=\"vendor-info\"\r\n [matTooltip]=\"vendorsInformation[activeVendor | lowercase].tooltip | translate\"\r\n >\r\n {{ vendorsInformation[activeVendor | lowercase].postfix }}\r\n </span>\r\n <span fxHide.lt-sm *ngIf=\"language.showDomain\">\r\n <span>&nbsp;(</span>\r\n <span class=\"domain\">{{language.domain | translateDomain}}</span>\r\n <span>)</span>\r\n </span>\r\n</ng-template>\r\n<!-- ------------------------ -->", styles: [".tld-lang-list-wrapper{max-width:100%}.tld-lang-list-wrapper .tld-language-list-element{padding:0 12px}.tld-lang-list:not(.single-element-list) .active .language-title:after{position:absolute;bottom:5px;left:50%;transform:translate(-50%);content:\"\";display:block;width:16px;height:2px}.tld-language-list-element.active .span-block{display:block}.tld-language-list-element.active .domain{display:inline-block;max-width:90px;overflow-x:hidden;text-overflow:ellipsis}.language-title{cursor:pointer;font-size:1rem;font-weight:500;position:relative;background-color:transparent;border:none;font-family:Inter,sans-serif}.language-title.no-highlight.no-action{cursor:default}.vendor-info{margin-left:5px}:host ::ng-deep .open-close-button-content span{white-space:nowrap}\n"] }]
6098
6098
  }], ctorParameters: () => [{ type: i1.TranslateService }, { type: TldTranslateConfigService }, { type: TldTranslateSystemManagementService }], propDecorators: { wrapper: [{
6099
6099
  type: ViewChild,
6100
6100
  args: ["wrapper"]
@@ -6490,7 +6490,8 @@ class TldCommonModule {
6490
6490
  MatMenuModule,
6491
6491
  LanguageTranslateModule,
6492
6492
  MatMenuModule,
6493
- MatTooltipModule], exports: [TldLangListComponent,
6493
+ MatTooltipModule,
6494
+ SortLanguageListPipe], exports: [TldLangListComponent,
6494
6495
  TldLoaderComponent,
6495
6496
  TldMessageComponent,
6496
6497
  TldTranslateButtonComponent,
@@ -6540,7 +6541,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImpor
6540
6541
  MatMenuModule,
6541
6542
  LanguageTranslateModule,
6542
6543
  MatMenuModule,
6543
- MatTooltipModule
6544
+ MatTooltipModule,
6545
+ SortLanguageListPipe
6544
6546
  ],
6545
6547
  exports: [
6546
6548
  TldLangListComponent,
@@ -8724,11 +8726,11 @@ class TldTranslateTextService {
8724
8726
  response.forEach((res, i) => {
8725
8727
  res.forEach((item) => {
8726
8728
  const isTerminiGovLvCollection = urls[i].includes('termini');
8727
- const isTildeTermCollection = urls[i].includes('tilde');
8729
+ const isTermPortalCollection = urls[i].includes(this.configService.termConfig.terminologyPortalUrl);
8728
8730
  const termWithSource = {
8729
8731
  ...item,
8730
8732
  dictionaryDomainUrl: urls[i],
8731
- sourceLabel: isTildeTermCollection ? this.translate.instant('TERM_PORTAL_NAME') : null,
8733
+ sourceLabel: isTermPortalCollection ? this.translate.instant('TERM_PORTAL_NAME') : null,
8732
8734
  };
8733
8735
  const termSummary = termWithSource.languageSummaries?.find((summary) => summary.lang === this.activeData.targetLanguage);
8734
8736
  if (termSummary) {
@@ -8736,8 +8738,10 @@ class TldTranslateTextService {
8736
8738
  const collectionId = collectionEntry.collectionId;
8737
8739
  const collectionTargetWord = termSummary.terms[0].term;
8738
8740
  let collectionUrl;
8739
- if (isTildeTermCollection) {
8740
- collectionUrl = `${this.terminologyPortalUrl}/collections/${collectionId}`;
8741
+ if (isTermPortalCollection) {
8742
+ collectionUrl = this.configService.termConfig.canCreateCollection ?
8743
+ `${this.terminologyPortalUrl}/collections/${collectionId}` :
8744
+ `${this.terminologyPortalUrl}/search/${collectionTargetWord}`;
8741
8745
  }
8742
8746
  else if (isTerminiGovLvCollection) {
8743
8747
  collectionUrl = `https://${termWithSource.dictionaryDomainUrl}/kolekcijas/${collectionId}`;