@testgorilla/tgo-ui 3.11.1 → 3.11.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -25772,6 +25772,244 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
25772
25772
  }]
25773
25773
  }] });
25774
25774
 
25775
+ class TruncatePipe {
25776
+ transform(input, length, suffix, preserve) {
25777
+ if (typeof input !== 'string') {
25778
+ return input;
25779
+ }
25780
+ length = length === undefined ? input.length : length;
25781
+ if (input.length <= length) {
25782
+ return input;
25783
+ }
25784
+ preserve = preserve || false;
25785
+ suffix = suffix || '';
25786
+ let index = length;
25787
+ if (preserve) {
25788
+ if (input.indexOf(' ', length) === -1) {
25789
+ index = input.length;
25790
+ }
25791
+ else {
25792
+ index = input.indexOf(' ', length);
25793
+ }
25794
+ }
25795
+ return input.substring(0, index) + suffix;
25796
+ }
25797
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TruncatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
25798
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: TruncatePipe, name: "truncate" }); }
25799
+ }
25800
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TruncatePipe, decorators: [{
25801
+ type: Pipe,
25802
+ args: [{
25803
+ name: 'truncate',
25804
+ }]
25805
+ }] });
25806
+
25807
+ class BreadcrumbComponent {
25808
+ constructor() {
25809
+ this.size = input('large');
25810
+ this.items = input([]);
25811
+ this.applicationTheme = input('light');
25812
+ this.includeBackButton = input(false);
25813
+ this.isLoading = input(false);
25814
+ this.numberOfLoadingItems = input(3);
25815
+ this.selectItem = new EventEmitter();
25816
+ this.backButtonClickEvent = new EventEmitter();
25817
+ this.loadingItems = computed(() => Array(this.numberOfLoadingItems()));
25818
+ this.isOverflowing = signal(false);
25819
+ this.visibleItems = signal([]);
25820
+ this.overflowItems = signal([]);
25821
+ this.overflowButtonItems = computed(() => this.overflowItems().map(item => ({
25822
+ label: item.label,
25823
+ value: item.value,
25824
+ })));
25825
+ this.shouldTruncateLastItem = signal(false);
25826
+ this.itemsInOverflow = 0;
25827
+ // React to items changes and recalculate overflow
25828
+ effect(() => {
25829
+ this.items();
25830
+ this.itemsInOverflow = 0;
25831
+ if (this.breadcrumbContainer?.nativeElement) {
25832
+ // Wait for DOM to render new items before calculating overflow
25833
+ setTimeout(() => this.calculateItemDistribution(), 0);
25834
+ }
25835
+ });
25836
+ }
25837
+ ngAfterViewInit() {
25838
+ this.calculateItemDistribution();
25839
+ this.setupResizeObserver();
25840
+ }
25841
+ ngOnDestroy() {
25842
+ this.resizeObserver?.disconnect();
25843
+ }
25844
+ calculateItemDistribution() {
25845
+ if (!this.breadcrumbContainer?.nativeElement || this.items().length === 0) {
25846
+ this.resetToAllVisible();
25847
+ return;
25848
+ }
25849
+ const element = this.breadcrumbContainer.nativeElement;
25850
+ const hasHorizontalOverflow = element.scrollWidth > element.clientWidth;
25851
+ if (hasHorizontalOverflow) {
25852
+ this.handleOverflow();
25853
+ }
25854
+ else if (this.itemsInOverflow > 0) {
25855
+ // Check if we can bring items back from overflow
25856
+ this.tryReduceOverflow();
25857
+ }
25858
+ else {
25859
+ this.resetToAllVisible();
25860
+ }
25861
+ }
25862
+ handleOverflow() {
25863
+ this.itemsInOverflow = Math.min(this.itemsInOverflow + 1, this.items().length - 1);
25864
+ this.updateItemArrays();
25865
+ this.isOverflowing.set(true);
25866
+ // Wait for DOM to render the updated template after hiding items
25867
+ // We need to measure dimensions AFTER the DOM has been updated with the new visible items
25868
+ setTimeout(() => {
25869
+ if (this.breadcrumbContainer?.nativeElement) {
25870
+ const element = this.breadcrumbContainer.nativeElement;
25871
+ const stillOverflowing = element.scrollWidth > element.clientWidth;
25872
+ if (stillOverflowing && this.itemsInOverflow < this.items().length - 1) {
25873
+ this.handleOverflow();
25874
+ }
25875
+ else if (stillOverflowing && this.itemsInOverflow === this.items().length - 1) {
25876
+ this.shouldTruncateLastItem.set(true);
25877
+ }
25878
+ }
25879
+ }, 0);
25880
+ }
25881
+ tryReduceOverflow() {
25882
+ const testItemsInOverflow = this.itemsInOverflow - 1;
25883
+ if (testItemsInOverflow >= 0) {
25884
+ const testVisibleItems = this.items().slice(testItemsInOverflow);
25885
+ const testOverflowItems = testItemsInOverflow > 0 ? this.items().slice(0, testItemsInOverflow) : [];
25886
+ this.visibleItems.set(testVisibleItems);
25887
+ this.overflowItems.set(testOverflowItems);
25888
+ // Always reset truncation when trying to reduce overflow
25889
+ this.shouldTruncateLastItem.set(false);
25890
+ // Wait for DOM to render with test configuration before measuring
25891
+ setTimeout(() => {
25892
+ if (this.breadcrumbContainer?.nativeElement) {
25893
+ const element = this.breadcrumbContainer.nativeElement;
25894
+ const hasOverflow = element.scrollWidth > element.clientWidth;
25895
+ if (!hasOverflow) {
25896
+ // It fits! Update the counter
25897
+ this.itemsInOverflow = testItemsInOverflow;
25898
+ this.isOverflowing.set(this.itemsInOverflow > 0);
25899
+ // Try to reduce more if there are still items in overflow
25900
+ if (this.itemsInOverflow > 0) {
25901
+ // Schedule next reduction attempt after current render cycle
25902
+ setTimeout(() => this.tryReduceOverflow(), 0);
25903
+ }
25904
+ }
25905
+ else {
25906
+ // Doesn't fit, revert to previous state
25907
+ this.updateItemArrays();
25908
+ // Wait for DOM to render reverted state before checking truncation
25909
+ setTimeout(() => {
25910
+ if (this.breadcrumbContainer?.nativeElement) {
25911
+ const containerElement = this.breadcrumbContainer.nativeElement;
25912
+ const stillOverflowing = containerElement.scrollWidth > containerElement.clientWidth;
25913
+ if (stillOverflowing && this.itemsInOverflow === this.items().length - 1) {
25914
+ this.shouldTruncateLastItem.set(true);
25915
+ }
25916
+ }
25917
+ }, 0);
25918
+ }
25919
+ }
25920
+ }, 0);
25921
+ }
25922
+ else {
25923
+ // testItemsInOverflow < 0, means we're trying to show all items
25924
+ this.resetToAllVisible();
25925
+ // Wait for DOM to render all items before measuring overflow
25926
+ setTimeout(() => {
25927
+ if (this.breadcrumbContainer?.nativeElement) {
25928
+ const element = this.breadcrumbContainer.nativeElement;
25929
+ const hasOverflow = element.scrollWidth > element.clientWidth;
25930
+ if (hasOverflow) {
25931
+ // Still overflows with all items, need to go back to overflow state
25932
+ this.itemsInOverflow = 1; // Start with minimal overflow
25933
+ this.handleOverflow();
25934
+ }
25935
+ }
25936
+ }, 0);
25937
+ }
25938
+ }
25939
+ updateItemArrays() {
25940
+ if (this.itemsInOverflow > 0) {
25941
+ this.overflowItems.set(this.items().slice(0, this.itemsInOverflow));
25942
+ this.visibleItems.set(this.items().slice(this.itemsInOverflow));
25943
+ }
25944
+ else {
25945
+ this.resetToAllVisible();
25946
+ }
25947
+ }
25948
+ resetToAllVisible() {
25949
+ this.visibleItems.set(this.items());
25950
+ this.overflowItems.set([]);
25951
+ this.isOverflowing.set(false);
25952
+ this.shouldTruncateLastItem.set(false);
25953
+ this.itemsInOverflow = 0;
25954
+ }
25955
+ setupResizeObserver() {
25956
+ if (!this.breadcrumbContainer?.nativeElement) {
25957
+ return;
25958
+ }
25959
+ this.resizeObserver = new ResizeObserver(() => {
25960
+ this.calculateItemDistribution();
25961
+ });
25962
+ this.resizeObserver.observe(this.breadcrumbContainer.nativeElement);
25963
+ }
25964
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BreadcrumbComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
25965
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BreadcrumbComponent, selector: "ui-breadcrumb", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, applicationTheme: { classPropertyName: "applicationTheme", publicName: "applicationTheme", isSignal: true, isRequired: false, transformFunction: null }, includeBackButton: { classPropertyName: "includeBackButton", publicName: "includeBackButton", isSignal: true, isRequired: false, transformFunction: null }, isLoading: { classPropertyName: "isLoading", publicName: "isLoading", isSignal: true, isRequired: false, transformFunction: null }, numberOfLoadingItems: { classPropertyName: "numberOfLoadingItems", publicName: "numberOfLoadingItems", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectItem: "selectItem", backButtonClickEvent: "backButtonClickEvent" }, viewQueries: [{ propertyName: "breadcrumbContainer", first: true, predicate: ["breadcrumbContainer"], descendants: true }], ngImport: i0, template: "@if (!isLoading()) {\n <div class=\"breadcrumb\" [attr.theme]=\"applicationTheme()\" #breadcrumbContainer [class]=\"'breadcrumb-' + size()\">\n @if (includeBackButton()) {\n <ui-button\n [variant]=\"'icon-button'\"\n [tooltip]=\"('COMMON.BACK' | uiTranslate | async)!\"\n [iconName]=\"'Arrow-chevron-left-filled'\"\n (buttonClickEvent)=\"backButtonClickEvent.emit($event)\"\n ></ui-button>\n }\n @if (isOverflowing()) {\n <ui-overflow-menu\n [applicationTheme]=\"applicationTheme()\"\n [contentTemplateRef]=\"overflowMenu\"\n [buttons]=\"overflowButtonItems()\"\n [matTooltip]=\"('COMMON.OPTIONS' | uiTranslate | async)!\"\n [matTooltipClass]=\"applicationTheme()\"\n [isDynamicMenu]=\"true\"\n (selectItem)=\"selectItem.emit($event)\"\n class=\"breadcrumb-overflow-menu\"\n ></ui-overflow-menu>\n <ui-icon name=\"Arrow-chevron-right-filled\" [applicationTheme]=\"applicationTheme()\" color=\"gray\"></ui-icon>\n }\n @for (item of visibleItems(); track item.value) {\n @if (!$last) {\n <span\n class=\"breadcrumb-item\"\n tabindex=\"0\"\n [matTooltip]=\"item.label.length > 10 ? item.label : ''\"\n [matTooltipClass]=\"applicationTheme()\"\n [attr.aria-label]=\"item.label\"\n (click)=\"selectItem.emit(item.value)\"\n (keydown.enter)=\"selectItem.emit(item.value)\"\n >\n {{ item.label | truncate: 12 : '...' }}\n </span>\n <ui-icon name=\"Arrow-chevron-right-filled\" [applicationTheme]=\"applicationTheme()\" color=\"gray\"></ui-icon>\n } @else {\n <strong\n class=\"breadcrumb-item-active\"\n tabindex=\"0\"\n [matTooltip]=\"shouldTruncateLastItem() ? item.label : ''\"\n [matTooltipClass]=\"applicationTheme()\"\n [class.breadcrumb-item-active-truncated]=\"shouldTruncateLastItem()\"\n [attr.aria-label]=\"item.label\"\n [attr.aria-current]=\"'page'\"\n (click)=\"selectItem.emit(item.value)\"\n (keydown.enter)=\"selectItem.emit(item.value)\"\n >\n {{ item.label }}\n </strong>\n }\n }\n </div>\n} @else {\n <div class=\"breadcrumb\">\n @for (i of loadingItems(); track $index) {\n <ui-skeleton count=\"1\" [theme]=\"{ width: '160px', margin: '10px 0 0' }\"></ui-skeleton>\n @if ($index !== numberOfLoadingItems() - 1) {\n <ui-icon name=\"Arrow-chevron-right-filled\" [applicationTheme]=\"applicationTheme()\" color=\"gray\"></ui-icon>\n }\n }\n </div>\n}\n<ng-template #overflowMenu>\n <div class=\"breadcrumb-item breadcrumb-overflow\" [class]=\"'breadcrumb-' + size()\">...</div>\n</ng-template>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.breadcrumb{display:flex;align-items:center;gap:4px;color:#666}.breadcrumb .breadcrumb-item{text-decoration:underline;cursor:pointer;transition:color .15s ease,transform .1s ease;white-space:nowrap}.breadcrumb .breadcrumb-item:hover{color:#919191}.breadcrumb .breadcrumb-item:active{transform:scale(.98);color:#919191}.breadcrumb .breadcrumb-item:focus-visible{outline:2px solid #242424;outline-offset:4px;border-radius:1px}.breadcrumb.breadcrumb-small{font-size:14px;line-height:22px}.breadcrumb.breadcrumb-medium{font-size:20px;line-height:26px}.breadcrumb.breadcrumb-large{font-size:32px;line-height:48px}.breadcrumb.breadcrumb-large .breadcrumb-item:focus-visible{outline-offset:8px}.breadcrumb.breadcrumb-large .breadcrumb-item-active:focus-visible{outline-offset:8px}.breadcrumb .breadcrumb-item-active{color:#242424;white-space:nowrap}.breadcrumb .breadcrumb-item-active.breadcrumb-item-active-truncated{text-overflow:ellipsis;overflow:hidden}.breadcrumb .breadcrumb-item-active:focus-visible{outline:2px solid #242424;outline-offset:4px;border-radius:1px}.breadcrumb .breadcrumb-overflow-menu ::ng-deep .overflow-menu-container .mat-mdc-menu-trigger{min-width:0}.breadcrumb-overflow{cursor:pointer;color:#666}.breadcrumb-overflow:active{transform:scale(.98);color:#919191}.breadcrumb-overflow.breadcrumb-small{font-size:14px;line-height:22px}.breadcrumb-overflow.breadcrumb-medium{font-size:20px;line-height:26px}.breadcrumb-overflow.breadcrumb-large{font-size:32px;line-height:48px}\n"], dependencies: [{ kind: "component", type: IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "toggleIconStyle", "applicationTheme", "useFullIconName"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: OverflowMenuComponent, selector: "ui-overflow-menu", inputs: ["buttons", "iconTrigger", "menuLabel", "applicationTheme", "ariaLabel", "ariaRequired", "describedby", "contentTemplateRef", "buttonVariant", "buttonSize", "menuConfig", "isDynamicMenu"], outputs: ["selectItem", "menuOpened", "menuClosed"] }, { kind: "component", type: ButtonComponent, selector: "ui-button", inputs: ["size", "variant", "label", "iconPosition", "justIcon", "iconName", "disabled", "loading", "fullWidth", "url", "urlTarget", "value", "tooltip", "isPremium", "type", "companyColor", "buttonBadgeConfig", "applicationTheme", "disabledScaleOnClick", "ariaLabel", "ariaRequired", "ariaLabelledby", "ariaDescribedby", "preventDefault", "hasBackground", "tooltipPosition", "role", "iconFilled"], outputs: ["buttonClickEvent", "buttonHoverEvent"] }, { kind: "component", type: SkeletonComponent, selector: "ui-skeleton", inputs: ["count", "theme", "appearance", "isAiTheme", "applicationTheme"] }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "pipe", type: UiTranslatePipe, name: "uiTranslate" }, { kind: "pipe", type: TruncatePipe, name: "truncate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
25966
+ }
25967
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BreadcrumbComponent, decorators: [{
25968
+ type: Component,
25969
+ args: [{ selector: 'ui-breadcrumb', changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (!isLoading()) {\n <div class=\"breadcrumb\" [attr.theme]=\"applicationTheme()\" #breadcrumbContainer [class]=\"'breadcrumb-' + size()\">\n @if (includeBackButton()) {\n <ui-button\n [variant]=\"'icon-button'\"\n [tooltip]=\"('COMMON.BACK' | uiTranslate | async)!\"\n [iconName]=\"'Arrow-chevron-left-filled'\"\n (buttonClickEvent)=\"backButtonClickEvent.emit($event)\"\n ></ui-button>\n }\n @if (isOverflowing()) {\n <ui-overflow-menu\n [applicationTheme]=\"applicationTheme()\"\n [contentTemplateRef]=\"overflowMenu\"\n [buttons]=\"overflowButtonItems()\"\n [matTooltip]=\"('COMMON.OPTIONS' | uiTranslate | async)!\"\n [matTooltipClass]=\"applicationTheme()\"\n [isDynamicMenu]=\"true\"\n (selectItem)=\"selectItem.emit($event)\"\n class=\"breadcrumb-overflow-menu\"\n ></ui-overflow-menu>\n <ui-icon name=\"Arrow-chevron-right-filled\" [applicationTheme]=\"applicationTheme()\" color=\"gray\"></ui-icon>\n }\n @for (item of visibleItems(); track item.value) {\n @if (!$last) {\n <span\n class=\"breadcrumb-item\"\n tabindex=\"0\"\n [matTooltip]=\"item.label.length > 10 ? item.label : ''\"\n [matTooltipClass]=\"applicationTheme()\"\n [attr.aria-label]=\"item.label\"\n (click)=\"selectItem.emit(item.value)\"\n (keydown.enter)=\"selectItem.emit(item.value)\"\n >\n {{ item.label | truncate: 12 : '...' }}\n </span>\n <ui-icon name=\"Arrow-chevron-right-filled\" [applicationTheme]=\"applicationTheme()\" color=\"gray\"></ui-icon>\n } @else {\n <strong\n class=\"breadcrumb-item-active\"\n tabindex=\"0\"\n [matTooltip]=\"shouldTruncateLastItem() ? item.label : ''\"\n [matTooltipClass]=\"applicationTheme()\"\n [class.breadcrumb-item-active-truncated]=\"shouldTruncateLastItem()\"\n [attr.aria-label]=\"item.label\"\n [attr.aria-current]=\"'page'\"\n (click)=\"selectItem.emit(item.value)\"\n (keydown.enter)=\"selectItem.emit(item.value)\"\n >\n {{ item.label }}\n </strong>\n }\n }\n </div>\n} @else {\n <div class=\"breadcrumb\">\n @for (i of loadingItems(); track $index) {\n <ui-skeleton count=\"1\" [theme]=\"{ width: '160px', margin: '10px 0 0' }\"></ui-skeleton>\n @if ($index !== numberOfLoadingItems() - 1) {\n <ui-icon name=\"Arrow-chevron-right-filled\" [applicationTheme]=\"applicationTheme()\" color=\"gray\"></ui-icon>\n }\n }\n </div>\n}\n<ng-template #overflowMenu>\n <div class=\"breadcrumb-item breadcrumb-overflow\" [class]=\"'breadcrumb-' + size()\">...</div>\n</ng-template>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.breadcrumb{display:flex;align-items:center;gap:4px;color:#666}.breadcrumb .breadcrumb-item{text-decoration:underline;cursor:pointer;transition:color .15s ease,transform .1s ease;white-space:nowrap}.breadcrumb .breadcrumb-item:hover{color:#919191}.breadcrumb .breadcrumb-item:active{transform:scale(.98);color:#919191}.breadcrumb .breadcrumb-item:focus-visible{outline:2px solid #242424;outline-offset:4px;border-radius:1px}.breadcrumb.breadcrumb-small{font-size:14px;line-height:22px}.breadcrumb.breadcrumb-medium{font-size:20px;line-height:26px}.breadcrumb.breadcrumb-large{font-size:32px;line-height:48px}.breadcrumb.breadcrumb-large .breadcrumb-item:focus-visible{outline-offset:8px}.breadcrumb.breadcrumb-large .breadcrumb-item-active:focus-visible{outline-offset:8px}.breadcrumb .breadcrumb-item-active{color:#242424;white-space:nowrap}.breadcrumb .breadcrumb-item-active.breadcrumb-item-active-truncated{text-overflow:ellipsis;overflow:hidden}.breadcrumb .breadcrumb-item-active:focus-visible{outline:2px solid #242424;outline-offset:4px;border-radius:1px}.breadcrumb .breadcrumb-overflow-menu ::ng-deep .overflow-menu-container .mat-mdc-menu-trigger{min-width:0}.breadcrumb-overflow{cursor:pointer;color:#666}.breadcrumb-overflow:active{transform:scale(.98);color:#919191}.breadcrumb-overflow.breadcrumb-small{font-size:14px;line-height:22px}.breadcrumb-overflow.breadcrumb-medium{font-size:20px;line-height:26px}.breadcrumb-overflow.breadcrumb-large{font-size:32px;line-height:48px}\n"] }]
25970
+ }], ctorParameters: () => [], propDecorators: { selectItem: [{
25971
+ type: Output
25972
+ }], backButtonClickEvent: [{
25973
+ type: Output
25974
+ }], breadcrumbContainer: [{
25975
+ type: ViewChild,
25976
+ args: ['breadcrumbContainer']
25977
+ }] } });
25978
+
25979
+ class BreadcrumbComponentModule {
25980
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BreadcrumbComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
25981
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: BreadcrumbComponentModule, declarations: [BreadcrumbComponent, TruncatePipe], imports: [CommonModule,
25982
+ IconComponentModule,
25983
+ MatTooltipModule,
25984
+ OverflowMenuComponentModule,
25985
+ ButtonComponentModule,
25986
+ SkeletonComponent,
25987
+ UiTranslatePipe], exports: [BreadcrumbComponent] }); }
25988
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BreadcrumbComponentModule, providers: [TruncatePipe], imports: [CommonModule,
25989
+ IconComponentModule,
25990
+ MatTooltipModule,
25991
+ OverflowMenuComponentModule,
25992
+ ButtonComponentModule,
25993
+ SkeletonComponent] }); }
25994
+ }
25995
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BreadcrumbComponentModule, decorators: [{
25996
+ type: NgModule,
25997
+ args: [{
25998
+ declarations: [BreadcrumbComponent, TruncatePipe],
25999
+ imports: [
26000
+ CommonModule,
26001
+ IconComponentModule,
26002
+ MatTooltipModule,
26003
+ OverflowMenuComponentModule,
26004
+ ButtonComponentModule,
26005
+ SkeletonComponent,
26006
+ UiTranslatePipe,
26007
+ ],
26008
+ providers: [TruncatePipe],
26009
+ exports: [BreadcrumbComponent],
26010
+ }]
26011
+ }] });
26012
+
25775
26013
  /* eslint-disable */
25776
26014
  /* Components */
25777
26015
  // Universal skills report
@@ -25780,5 +26018,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
25780
26018
  * Generated bundle index. Do not edit.
25781
26019
  */
25782
26020
 
25783
- export { AMOUNT_TAG_WIDTH, AccordionComponent, AccordionComponentModule, AiFeedbackComponent, AiFeedbackModule, AlertBannerComponent, AlertBannerComponentModule, Autocomplete, AutocompleteComponent, AutocompleteComponentModule, AvatarBackgroundColor, AvatarComponent, AvatarComponentModule, AvatarSize, BadgeColorEnum, BadgeComponent, BadgeComponentModule, BadgeVariantEnum, ButtonComponent, ButtonComponentModule, CardComponent, CardComponentModule, CheckboxComponent, CheckboxComponentModule, ChecklistComponent, Color, ColumnAlignment, ColumnAlignmentEnum, ColumnType, ColumnTypeEnum, ConfirmDialogComponent, ConfirmDialogComponentModule, DataPropertyGetterPipe, DatepickerComponent, DatepickerComponentModule, DeprecatedPaginatorComponent, DeprecatedPaginatorComponentModule, DialogComponent, DialogComponentModule, DialogService, DividerComponent, DividerComponentModule, DonutChartComponent, DonutChartComponentModule, DropdownComponent, DropdownComponentModule, DropdownVariation, ElevationShadowComponent, ElevationShadowComponentModule, ElevationType, EmptyStateComponent, EmptyStateComponentModule, FieldComponent, FieldComponentModule, FileUploadComponent, FileUploadComponentModule, FilterButtonComponent, FilterButtonComponentModule, GaussianChartComponent, GaussianChartComponentModule, IS_MOBILE_TOKEN, IconComponent, IconComponentModule, IconLabelComponent, IconLabelComponentModule, IconsService, InlineFieldComponent, InlineFieldComponentModule, Language, LanguageService, LargeSpiderChartSize, LogoComponent, LogoComponentModule, LogoPathEnum, LogoTypeEnum, MediaCardComponent, MemoizeFuncPipe, MultiInputComponent, MultiInputComponentModule, NavbarComponent, NavbarComponentModule, OverflowMenuComponent, OverflowMenuComponentModule, Padding, PageHeaderComponent, PageHeaderModule, PaginatorComponent, PaginatorComponentModule, PasswordComponent, PasswordComponentModule, PasswordStrengthComponent, PasswordStrengthComponentModule, PhoneInputComponent, PhoneInputComponentModule, ProgressBarComponent, ProgressBarComponentModule, RadialProgressComponent, RadialProgressComponentModule, RadialProgressSizeEnum, RadialProgressSizeValue, RadioButtonComponent, RadioButtonComponentModule, RatingComponent, RatingComponentModule, RebrandBadgeColorEnum, SIDE_PANEL_CONFIG, SIDE_PANEL_DATA, ScaleComponent, ScaleComponentModule, ScaleTableComponent, SegmentedBarComponent, SegmentedBarComponentModule, SegmentedButtonComponent, SegmentedButtonComponentModule, SelectableCardComponent, SelectableCardComponentModule, SidePanelAnimationState, SidePanelComponent, SidePanelConfig, SidePanelService, SideSheetComponent, SideSheetComponentModule, SideSheetService, SkeletonComponent, SkillAreaGroupTypes, SkillAreaTypes, SliderComponent, SliderComponentModule, SmallSpiderChartSize, SnackbarComponent, SnackbarComponentModule, SnackbarService, SpiderChartComponent, SpiderChartComponentModule, SpinnerComponent, SpinnerComponentModule, StepComponent, StepComponentModule, StepperComponent, StepperComponentModule, TabDirective, TableComponent, TableComponentModule, TabsComponent, TabsComponentModule, TagComponent, TagComponentModule, Timeout, ToggleComponent, ToggleComponentModule, TooltipComponent, TooltipComponentModule, TooltipPositionType, TooltipTemplateDirective, UniversalSkillsReportComponent, UniversalSkillsReportComponentModule, UniversalSkillsService, UniversalSkillsSpiderChartsComponent, UniversalSkillsSpiderChartsComponentModule, ValidationErrorComponent, ValidationErrorModule, defaultSidePanelConfig, fieldID, getAvailableLangs, iconSize, inlineFieldID };
26021
+ export { AMOUNT_TAG_WIDTH, AccordionComponent, AccordionComponentModule, AiFeedbackComponent, AiFeedbackModule, AlertBannerComponent, AlertBannerComponentModule, Autocomplete, AutocompleteComponent, AutocompleteComponentModule, AvatarBackgroundColor, AvatarComponent, AvatarComponentModule, AvatarSize, BadgeColorEnum, BadgeComponent, BadgeComponentModule, BadgeVariantEnum, BreadcrumbComponent, BreadcrumbComponentModule, ButtonComponent, ButtonComponentModule, CardComponent, CardComponentModule, CheckboxComponent, CheckboxComponentModule, ChecklistComponent, Color, ColumnAlignment, ColumnAlignmentEnum, ColumnType, ColumnTypeEnum, ConfirmDialogComponent, ConfirmDialogComponentModule, DataPropertyGetterPipe, DatepickerComponent, DatepickerComponentModule, DeprecatedPaginatorComponent, DeprecatedPaginatorComponentModule, DialogComponent, DialogComponentModule, DialogService, DividerComponent, DividerComponentModule, DonutChartComponent, DonutChartComponentModule, DropdownComponent, DropdownComponentModule, DropdownVariation, ElevationShadowComponent, ElevationShadowComponentModule, ElevationType, EmptyStateComponent, EmptyStateComponentModule, FieldComponent, FieldComponentModule, FileUploadComponent, FileUploadComponentModule, FilterButtonComponent, FilterButtonComponentModule, GaussianChartComponent, GaussianChartComponentModule, IS_MOBILE_TOKEN, IconComponent, IconComponentModule, IconLabelComponent, IconLabelComponentModule, IconsService, InlineFieldComponent, InlineFieldComponentModule, Language, LanguageService, LargeSpiderChartSize, LogoComponent, LogoComponentModule, LogoPathEnum, LogoTypeEnum, MediaCardComponent, MemoizeFuncPipe, MultiInputComponent, MultiInputComponentModule, NavbarComponent, NavbarComponentModule, OverflowMenuComponent, OverflowMenuComponentModule, Padding, PageHeaderComponent, PageHeaderModule, PaginatorComponent, PaginatorComponentModule, PasswordComponent, PasswordComponentModule, PasswordStrengthComponent, PasswordStrengthComponentModule, PhoneInputComponent, PhoneInputComponentModule, ProgressBarComponent, ProgressBarComponentModule, RadialProgressComponent, RadialProgressComponentModule, RadialProgressSizeEnum, RadialProgressSizeValue, RadioButtonComponent, RadioButtonComponentModule, RatingComponent, RatingComponentModule, RebrandBadgeColorEnum, SIDE_PANEL_CONFIG, SIDE_PANEL_DATA, ScaleComponent, ScaleComponentModule, ScaleTableComponent, SegmentedBarComponent, SegmentedBarComponentModule, SegmentedButtonComponent, SegmentedButtonComponentModule, SelectableCardComponent, SelectableCardComponentModule, SidePanelAnimationState, SidePanelComponent, SidePanelConfig, SidePanelService, SideSheetComponent, SideSheetComponentModule, SideSheetService, SkeletonComponent, SkillAreaGroupTypes, SkillAreaTypes, SliderComponent, SliderComponentModule, SmallSpiderChartSize, SnackbarComponent, SnackbarComponentModule, SnackbarService, SpiderChartComponent, SpiderChartComponentModule, SpinnerComponent, SpinnerComponentModule, StepComponent, StepComponentModule, StepperComponent, StepperComponentModule, TabDirective, TableComponent, TableComponentModule, TabsComponent, TabsComponentModule, TagComponent, TagComponentModule, Timeout, ToggleComponent, ToggleComponentModule, TooltipComponent, TooltipComponentModule, TooltipPositionType, TooltipTemplateDirective, UniversalSkillsReportComponent, UniversalSkillsReportComponentModule, UniversalSkillsService, UniversalSkillsSpiderChartsComponent, UniversalSkillsSpiderChartsComponentModule, ValidationErrorComponent, ValidationErrorModule, defaultSidePanelConfig, fieldID, getAvailableLangs, iconSize, inlineFieldID };
25784
26022
  //# sourceMappingURL=testgorilla-tgo-ui.mjs.map