@testgorilla/tgo-ui 3.11.1 → 3.11.3
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/components/breadcrumb/breadcrumb.component.d.ts +36 -0
- package/components/breadcrumb/breadcrumb.component.module.d.ts +15 -0
- package/components/breadcrumb/breadcrumb.model.d.ts +5 -0
- package/components/donut-chart/donut-chart.component.d.ts +2 -2
- package/components/inline-field/inline-field.component.d.ts +2 -2
- package/esm2022/components/breadcrumb/breadcrumb.component.mjs +182 -0
- package/esm2022/components/breadcrumb/breadcrumb.component.module.mjs +45 -0
- package/esm2022/components/breadcrumb/breadcrumb.model.mjs +2 -0
- package/esm2022/components/field/field.component.mjs +8 -2
- package/esm2022/pipes/truncate.pipe.mjs +34 -0
- package/esm2022/public-api.mjs +5 -1
- package/fesm2022/testgorilla-tgo-ui.mjs +246 -2
- package/fesm2022/testgorilla-tgo-ui.mjs.map +1 -1
- package/package.json +1 -1
- package/pipes/truncate.pipe.d.ts +7 -0
- package/public-api.d.ts +3 -0
|
@@ -14516,7 +14516,7 @@ class FieldComponent {
|
|
|
14516
14516
|
* @memberof FieldComponent
|
|
14517
14517
|
*/
|
|
14518
14518
|
this.labelHtml = input(null, {
|
|
14519
|
-
transform: (value) => this.domSanitizer.bypassSecurityTrustHtml(value)
|
|
14519
|
+
transform: (value) => this.domSanitizer.bypassSecurityTrustHtml(value),
|
|
14520
14520
|
});
|
|
14521
14521
|
/**
|
|
14522
14522
|
* Input placeholder
|
|
@@ -14774,6 +14774,12 @@ class FieldComponent {
|
|
|
14774
14774
|
setSearchInput() {
|
|
14775
14775
|
if (this.type === 'search' || this.type === 'collapsed-search') {
|
|
14776
14776
|
this.matIconRegistry.addSvgIcon('Search', this.domSanitizer.bypassSecurityTrustResourceUrl('/icons/Search.svg'));
|
|
14777
|
+
if (this.value) {
|
|
14778
|
+
this.showClose = true;
|
|
14779
|
+
}
|
|
14780
|
+
else {
|
|
14781
|
+
this.showClose = false;
|
|
14782
|
+
}
|
|
14777
14783
|
}
|
|
14778
14784
|
else {
|
|
14779
14785
|
this.showClose = false;
|
|
@@ -25772,6 +25778,244 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
25772
25778
|
}]
|
|
25773
25779
|
}] });
|
|
25774
25780
|
|
|
25781
|
+
class TruncatePipe {
|
|
25782
|
+
transform(input, length, suffix, preserve) {
|
|
25783
|
+
if (typeof input !== 'string') {
|
|
25784
|
+
return input;
|
|
25785
|
+
}
|
|
25786
|
+
length = length === undefined ? input.length : length;
|
|
25787
|
+
if (input.length <= length) {
|
|
25788
|
+
return input;
|
|
25789
|
+
}
|
|
25790
|
+
preserve = preserve || false;
|
|
25791
|
+
suffix = suffix || '';
|
|
25792
|
+
let index = length;
|
|
25793
|
+
if (preserve) {
|
|
25794
|
+
if (input.indexOf(' ', length) === -1) {
|
|
25795
|
+
index = input.length;
|
|
25796
|
+
}
|
|
25797
|
+
else {
|
|
25798
|
+
index = input.indexOf(' ', length);
|
|
25799
|
+
}
|
|
25800
|
+
}
|
|
25801
|
+
return input.substring(0, index) + suffix;
|
|
25802
|
+
}
|
|
25803
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TruncatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
25804
|
+
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: TruncatePipe, name: "truncate" }); }
|
|
25805
|
+
}
|
|
25806
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TruncatePipe, decorators: [{
|
|
25807
|
+
type: Pipe,
|
|
25808
|
+
args: [{
|
|
25809
|
+
name: 'truncate',
|
|
25810
|
+
}]
|
|
25811
|
+
}] });
|
|
25812
|
+
|
|
25813
|
+
class BreadcrumbComponent {
|
|
25814
|
+
constructor() {
|
|
25815
|
+
this.size = input('large');
|
|
25816
|
+
this.items = input([]);
|
|
25817
|
+
this.applicationTheme = input('light');
|
|
25818
|
+
this.includeBackButton = input(false);
|
|
25819
|
+
this.isLoading = input(false);
|
|
25820
|
+
this.numberOfLoadingItems = input(3);
|
|
25821
|
+
this.selectItem = new EventEmitter();
|
|
25822
|
+
this.backButtonClickEvent = new EventEmitter();
|
|
25823
|
+
this.loadingItems = computed(() => Array(this.numberOfLoadingItems()));
|
|
25824
|
+
this.isOverflowing = signal(false);
|
|
25825
|
+
this.visibleItems = signal([]);
|
|
25826
|
+
this.overflowItems = signal([]);
|
|
25827
|
+
this.overflowButtonItems = computed(() => this.overflowItems().map(item => ({
|
|
25828
|
+
label: item.label,
|
|
25829
|
+
value: item.value,
|
|
25830
|
+
})));
|
|
25831
|
+
this.shouldTruncateLastItem = signal(false);
|
|
25832
|
+
this.itemsInOverflow = 0;
|
|
25833
|
+
// React to items changes and recalculate overflow
|
|
25834
|
+
effect(() => {
|
|
25835
|
+
this.items();
|
|
25836
|
+
this.itemsInOverflow = 0;
|
|
25837
|
+
if (this.breadcrumbContainer?.nativeElement) {
|
|
25838
|
+
// Wait for DOM to render new items before calculating overflow
|
|
25839
|
+
setTimeout(() => this.calculateItemDistribution(), 0);
|
|
25840
|
+
}
|
|
25841
|
+
});
|
|
25842
|
+
}
|
|
25843
|
+
ngAfterViewInit() {
|
|
25844
|
+
this.calculateItemDistribution();
|
|
25845
|
+
this.setupResizeObserver();
|
|
25846
|
+
}
|
|
25847
|
+
ngOnDestroy() {
|
|
25848
|
+
this.resizeObserver?.disconnect();
|
|
25849
|
+
}
|
|
25850
|
+
calculateItemDistribution() {
|
|
25851
|
+
if (!this.breadcrumbContainer?.nativeElement || this.items().length === 0) {
|
|
25852
|
+
this.resetToAllVisible();
|
|
25853
|
+
return;
|
|
25854
|
+
}
|
|
25855
|
+
const element = this.breadcrumbContainer.nativeElement;
|
|
25856
|
+
const hasHorizontalOverflow = element.scrollWidth > element.clientWidth;
|
|
25857
|
+
if (hasHorizontalOverflow) {
|
|
25858
|
+
this.handleOverflow();
|
|
25859
|
+
}
|
|
25860
|
+
else if (this.itemsInOverflow > 0) {
|
|
25861
|
+
// Check if we can bring items back from overflow
|
|
25862
|
+
this.tryReduceOverflow();
|
|
25863
|
+
}
|
|
25864
|
+
else {
|
|
25865
|
+
this.resetToAllVisible();
|
|
25866
|
+
}
|
|
25867
|
+
}
|
|
25868
|
+
handleOverflow() {
|
|
25869
|
+
this.itemsInOverflow = Math.min(this.itemsInOverflow + 1, this.items().length - 1);
|
|
25870
|
+
this.updateItemArrays();
|
|
25871
|
+
this.isOverflowing.set(true);
|
|
25872
|
+
// Wait for DOM to render the updated template after hiding items
|
|
25873
|
+
// We need to measure dimensions AFTER the DOM has been updated with the new visible items
|
|
25874
|
+
setTimeout(() => {
|
|
25875
|
+
if (this.breadcrumbContainer?.nativeElement) {
|
|
25876
|
+
const element = this.breadcrumbContainer.nativeElement;
|
|
25877
|
+
const stillOverflowing = element.scrollWidth > element.clientWidth;
|
|
25878
|
+
if (stillOverflowing && this.itemsInOverflow < this.items().length - 1) {
|
|
25879
|
+
this.handleOverflow();
|
|
25880
|
+
}
|
|
25881
|
+
else if (stillOverflowing && this.itemsInOverflow === this.items().length - 1) {
|
|
25882
|
+
this.shouldTruncateLastItem.set(true);
|
|
25883
|
+
}
|
|
25884
|
+
}
|
|
25885
|
+
}, 0);
|
|
25886
|
+
}
|
|
25887
|
+
tryReduceOverflow() {
|
|
25888
|
+
const testItemsInOverflow = this.itemsInOverflow - 1;
|
|
25889
|
+
if (testItemsInOverflow >= 0) {
|
|
25890
|
+
const testVisibleItems = this.items().slice(testItemsInOverflow);
|
|
25891
|
+
const testOverflowItems = testItemsInOverflow > 0 ? this.items().slice(0, testItemsInOverflow) : [];
|
|
25892
|
+
this.visibleItems.set(testVisibleItems);
|
|
25893
|
+
this.overflowItems.set(testOverflowItems);
|
|
25894
|
+
// Always reset truncation when trying to reduce overflow
|
|
25895
|
+
this.shouldTruncateLastItem.set(false);
|
|
25896
|
+
// Wait for DOM to render with test configuration before measuring
|
|
25897
|
+
setTimeout(() => {
|
|
25898
|
+
if (this.breadcrumbContainer?.nativeElement) {
|
|
25899
|
+
const element = this.breadcrumbContainer.nativeElement;
|
|
25900
|
+
const hasOverflow = element.scrollWidth > element.clientWidth;
|
|
25901
|
+
if (!hasOverflow) {
|
|
25902
|
+
// It fits! Update the counter
|
|
25903
|
+
this.itemsInOverflow = testItemsInOverflow;
|
|
25904
|
+
this.isOverflowing.set(this.itemsInOverflow > 0);
|
|
25905
|
+
// Try to reduce more if there are still items in overflow
|
|
25906
|
+
if (this.itemsInOverflow > 0) {
|
|
25907
|
+
// Schedule next reduction attempt after current render cycle
|
|
25908
|
+
setTimeout(() => this.tryReduceOverflow(), 0);
|
|
25909
|
+
}
|
|
25910
|
+
}
|
|
25911
|
+
else {
|
|
25912
|
+
// Doesn't fit, revert to previous state
|
|
25913
|
+
this.updateItemArrays();
|
|
25914
|
+
// Wait for DOM to render reverted state before checking truncation
|
|
25915
|
+
setTimeout(() => {
|
|
25916
|
+
if (this.breadcrumbContainer?.nativeElement) {
|
|
25917
|
+
const containerElement = this.breadcrumbContainer.nativeElement;
|
|
25918
|
+
const stillOverflowing = containerElement.scrollWidth > containerElement.clientWidth;
|
|
25919
|
+
if (stillOverflowing && this.itemsInOverflow === this.items().length - 1) {
|
|
25920
|
+
this.shouldTruncateLastItem.set(true);
|
|
25921
|
+
}
|
|
25922
|
+
}
|
|
25923
|
+
}, 0);
|
|
25924
|
+
}
|
|
25925
|
+
}
|
|
25926
|
+
}, 0);
|
|
25927
|
+
}
|
|
25928
|
+
else {
|
|
25929
|
+
// testItemsInOverflow < 0, means we're trying to show all items
|
|
25930
|
+
this.resetToAllVisible();
|
|
25931
|
+
// Wait for DOM to render all items before measuring overflow
|
|
25932
|
+
setTimeout(() => {
|
|
25933
|
+
if (this.breadcrumbContainer?.nativeElement) {
|
|
25934
|
+
const element = this.breadcrumbContainer.nativeElement;
|
|
25935
|
+
const hasOverflow = element.scrollWidth > element.clientWidth;
|
|
25936
|
+
if (hasOverflow) {
|
|
25937
|
+
// Still overflows with all items, need to go back to overflow state
|
|
25938
|
+
this.itemsInOverflow = 1; // Start with minimal overflow
|
|
25939
|
+
this.handleOverflow();
|
|
25940
|
+
}
|
|
25941
|
+
}
|
|
25942
|
+
}, 0);
|
|
25943
|
+
}
|
|
25944
|
+
}
|
|
25945
|
+
updateItemArrays() {
|
|
25946
|
+
if (this.itemsInOverflow > 0) {
|
|
25947
|
+
this.overflowItems.set(this.items().slice(0, this.itemsInOverflow));
|
|
25948
|
+
this.visibleItems.set(this.items().slice(this.itemsInOverflow));
|
|
25949
|
+
}
|
|
25950
|
+
else {
|
|
25951
|
+
this.resetToAllVisible();
|
|
25952
|
+
}
|
|
25953
|
+
}
|
|
25954
|
+
resetToAllVisible() {
|
|
25955
|
+
this.visibleItems.set(this.items());
|
|
25956
|
+
this.overflowItems.set([]);
|
|
25957
|
+
this.isOverflowing.set(false);
|
|
25958
|
+
this.shouldTruncateLastItem.set(false);
|
|
25959
|
+
this.itemsInOverflow = 0;
|
|
25960
|
+
}
|
|
25961
|
+
setupResizeObserver() {
|
|
25962
|
+
if (!this.breadcrumbContainer?.nativeElement) {
|
|
25963
|
+
return;
|
|
25964
|
+
}
|
|
25965
|
+
this.resizeObserver = new ResizeObserver(() => {
|
|
25966
|
+
this.calculateItemDistribution();
|
|
25967
|
+
});
|
|
25968
|
+
this.resizeObserver.observe(this.breadcrumbContainer.nativeElement);
|
|
25969
|
+
}
|
|
25970
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BreadcrumbComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
25971
|
+
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 }); }
|
|
25972
|
+
}
|
|
25973
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BreadcrumbComponent, decorators: [{
|
|
25974
|
+
type: Component,
|
|
25975
|
+
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"] }]
|
|
25976
|
+
}], ctorParameters: () => [], propDecorators: { selectItem: [{
|
|
25977
|
+
type: Output
|
|
25978
|
+
}], backButtonClickEvent: [{
|
|
25979
|
+
type: Output
|
|
25980
|
+
}], breadcrumbContainer: [{
|
|
25981
|
+
type: ViewChild,
|
|
25982
|
+
args: ['breadcrumbContainer']
|
|
25983
|
+
}] } });
|
|
25984
|
+
|
|
25985
|
+
class BreadcrumbComponentModule {
|
|
25986
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BreadcrumbComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
25987
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: BreadcrumbComponentModule, declarations: [BreadcrumbComponent, TruncatePipe], imports: [CommonModule,
|
|
25988
|
+
IconComponentModule,
|
|
25989
|
+
MatTooltipModule,
|
|
25990
|
+
OverflowMenuComponentModule,
|
|
25991
|
+
ButtonComponentModule,
|
|
25992
|
+
SkeletonComponent,
|
|
25993
|
+
UiTranslatePipe], exports: [BreadcrumbComponent] }); }
|
|
25994
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BreadcrumbComponentModule, providers: [TruncatePipe], imports: [CommonModule,
|
|
25995
|
+
IconComponentModule,
|
|
25996
|
+
MatTooltipModule,
|
|
25997
|
+
OverflowMenuComponentModule,
|
|
25998
|
+
ButtonComponentModule,
|
|
25999
|
+
SkeletonComponent] }); }
|
|
26000
|
+
}
|
|
26001
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BreadcrumbComponentModule, decorators: [{
|
|
26002
|
+
type: NgModule,
|
|
26003
|
+
args: [{
|
|
26004
|
+
declarations: [BreadcrumbComponent, TruncatePipe],
|
|
26005
|
+
imports: [
|
|
26006
|
+
CommonModule,
|
|
26007
|
+
IconComponentModule,
|
|
26008
|
+
MatTooltipModule,
|
|
26009
|
+
OverflowMenuComponentModule,
|
|
26010
|
+
ButtonComponentModule,
|
|
26011
|
+
SkeletonComponent,
|
|
26012
|
+
UiTranslatePipe,
|
|
26013
|
+
],
|
|
26014
|
+
providers: [TruncatePipe],
|
|
26015
|
+
exports: [BreadcrumbComponent],
|
|
26016
|
+
}]
|
|
26017
|
+
}] });
|
|
26018
|
+
|
|
25775
26019
|
/* eslint-disable */
|
|
25776
26020
|
/* Components */
|
|
25777
26021
|
// Universal skills report
|
|
@@ -25780,5 +26024,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
25780
26024
|
* Generated bundle index. Do not edit.
|
|
25781
26025
|
*/
|
|
25782
26026
|
|
|
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 };
|
|
26027
|
+
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
26028
|
//# sourceMappingURL=testgorilla-tgo-ui.mjs.map
|