@yuuvis/client-framework 2.19.0 → 2.20.0
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/breadcrumb/index.d.ts +2 -0
- package/breadcrumb/lib/breadcrumb/breadcrumb.component.d.ts +94 -0
- package/breadcrumb/lib/models/breadcrumb-item.model.d.ts +14 -0
- package/breadcrumb/lib/models/index.d.ts +1 -0
- package/fesm2022/yuuvis-client-framework-breadcrumb.mjs +117 -0
- package/fesm2022/yuuvis-client-framework-breadcrumb.mjs.map +1 -0
- package/fesm2022/yuuvis-client-framework-list.mjs +365 -121
- package/fesm2022/yuuvis-client-framework-list.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-details.mjs +28 -26
- package/fesm2022/yuuvis-client-framework-object-details.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-form.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-object-versions.mjs +1 -1
- package/fesm2022/yuuvis-client-framework-object-versions.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-query-list.mjs +462 -127
- package/fesm2022/yuuvis-client-framework-query-list.mjs.map +1 -1
- package/fesm2022/yuuvis-client-framework-tile-list.mjs +695 -178
- package/fesm2022/yuuvis-client-framework-tile-list.mjs.map +1 -1
- package/lib/assets/i18n/ar.json +2 -1
- package/lib/assets/i18n/de.json +2 -1
- package/lib/assets/i18n/en.json +2 -1
- package/list/lib/list.component.d.ts +256 -44
- package/object-details/lib/object-details-header/object-details-header.component.d.ts +5 -2
- package/object-details/lib/object-details-shell/object-details-shell.component.d.ts +5 -2
- package/object-details/lib/object-details.component.d.ts +3 -1
- package/package.json +8 -4
- package/query-list/lib/query-list.component.d.ts +381 -86
- package/tile-list/lib/tile-list/tile-list.component.d.ts +527 -72
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { BreadcrumbItem } from '../models';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* A generic, accessible breadcrumb navigation component.
|
|
5
|
+
*
|
|
6
|
+
* Renders a flat list of navigation items where the last item always represents
|
|
7
|
+
* the current location (non-clickable) and all preceding items are interactive links.
|
|
8
|
+
* Each link is individually focusable via standard Tab navigation.
|
|
9
|
+
*
|
|
10
|
+
* Key behaviors
|
|
11
|
+
* - Items are rendered left-to-right, separated by a `/` divider
|
|
12
|
+
* - The **last item** is always the current page — displayed as plain text (no link, no click handler)
|
|
13
|
+
* - All **preceding items** are rendered as `<a>` links that emit the `navigate` output on click or Enter
|
|
14
|
+
* - The component performs **no routing** — the parent handles all navigation logic via the emitted `BreadcrumbItem`
|
|
15
|
+
* - Empty `items` array renders nothing (the host element stays in the DOM but is visually empty)
|
|
16
|
+
*
|
|
17
|
+
* Usage
|
|
18
|
+
*
|
|
19
|
+
* The parent builds the `BreadcrumbItem[]` and passes it as input. Typically this
|
|
20
|
+
* array mirrors the object hierarchy the user navigated through (e.g. Case → Phase → Document).
|
|
21
|
+
*
|
|
22
|
+
* ```ts
|
|
23
|
+
* // Parent component
|
|
24
|
+
* breadcrumbItems: BreadcrumbItem[] = [
|
|
25
|
+
* { id: 'case-42', name: 'Case #42' }, // ← clickable link
|
|
26
|
+
* { id: 'phase-3', name: 'Review' }, // ← clickable link
|
|
27
|
+
* { id: 'doc-7', name: 'Contract.pdf' } // ← current location (non-clickable)
|
|
28
|
+
* ];
|
|
29
|
+
*
|
|
30
|
+
* onBreadcrumbNavigate(item: BreadcrumbItem): void {
|
|
31
|
+
* // item.id is the domain-specific key — use it to navigate
|
|
32
|
+
* this.router.navigate(['/objects', item.id]);
|
|
33
|
+
* }
|
|
34
|
+
* ```
|
|
35
|
+
*
|
|
36
|
+
* ```html
|
|
37
|
+
* <yuv-breadcrumb
|
|
38
|
+
* [items]="breadcrumbItems"
|
|
39
|
+
* (navigate)="onBreadcrumbNavigate($event)" />
|
|
40
|
+
* ```
|
|
41
|
+
*
|
|
42
|
+
* Renders visually as:
|
|
43
|
+
* ```
|
|
44
|
+
* Case #42 / Review / Contract.pdf
|
|
45
|
+
* [link] [link] [current]
|
|
46
|
+
* ```
|
|
47
|
+
*/
|
|
48
|
+
export declare class YuuvisBreadcrumbComponent {
|
|
49
|
+
/**
|
|
50
|
+
* Ordered list of breadcrumb items to display.
|
|
51
|
+
*
|
|
52
|
+
* Each `BreadcrumbItem` has `{ id: string; name: string }` — where `id` is a unique key
|
|
53
|
+
* (typically an object/route ID) and `name` is the display label rendered in the trail.
|
|
54
|
+
*
|
|
55
|
+
* Position determines rendering behavior:
|
|
56
|
+
* - All items except the last → clickable `<a>` links
|
|
57
|
+
* - Last item → non-clickable text (current location)
|
|
58
|
+
*
|
|
59
|
+
* Defaults to an empty array, which renders nothing.
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* ```ts
|
|
63
|
+
* // Case → Document trail
|
|
64
|
+
* [items]="[
|
|
65
|
+
* { id: 'case-42', name: 'Case #42' },
|
|
66
|
+
* { id: 'doc-7', name: 'Invoice.pdf' }
|
|
67
|
+
* ]"
|
|
68
|
+
* ```
|
|
69
|
+
*/
|
|
70
|
+
items: import("@angular/core").InputSignal<BreadcrumbItem[]>;
|
|
71
|
+
/**
|
|
72
|
+
* Emitted when the user activates a clickable breadcrumb item (click or Enter key).
|
|
73
|
+
*
|
|
74
|
+
* The emitted value is the full `BreadcrumbItem` object (`{ id, name }`) that was activated.
|
|
75
|
+
* Never emitted for the last item since it is non-clickable.
|
|
76
|
+
* The parent is responsible for performing the actual navigation using `item.id`.
|
|
77
|
+
*
|
|
78
|
+
* @example
|
|
79
|
+
* ```ts
|
|
80
|
+
* onBreadcrumbNavigate(item: BreadcrumbItem): void {
|
|
81
|
+
* // item = { id: 'case-42', name: 'Case #42' }
|
|
82
|
+
* this.router.navigate(['/objects', item.id]);
|
|
83
|
+
* }
|
|
84
|
+
* ```
|
|
85
|
+
*/
|
|
86
|
+
navigate: import("@angular/core").OutputEmitterRef<BreadcrumbItem>;
|
|
87
|
+
/**
|
|
88
|
+
* Handles click on a breadcrumb link and forwards the item to the parent via `navigate` output.
|
|
89
|
+
* Called only for non-last items (the template guards against calling this for the current location).
|
|
90
|
+
*/
|
|
91
|
+
protected onItemClick(item: BreadcrumbItem): void;
|
|
92
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<YuuvisBreadcrumbComponent, never>;
|
|
93
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<YuuvisBreadcrumbComponent, "yuv-breadcrumb", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; }, { "navigate": "navigate"; }, never, never, true, never>;
|
|
94
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A single item in the breadcrumb trail.
|
|
3
|
+
*
|
|
4
|
+
* `id` is used as the `@for` track expression and emitted back on click.
|
|
5
|
+
* `name` is rendered as-is — no truncation, translation, or fallback applied.
|
|
6
|
+
* Position in the array determines the role: all items except the last are clickable links;
|
|
7
|
+
* the last item is rendered as non-clickable text representing the current location.
|
|
8
|
+
*/
|
|
9
|
+
export interface BreadcrumbItem {
|
|
10
|
+
/** Unique identifier — emitted via `navigate` output when the item is activated. */
|
|
11
|
+
id: string;
|
|
12
|
+
/** Display label shown in the breadcrumb trail. */
|
|
13
|
+
name: string;
|
|
14
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './breadcrumb-item.model';
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { input, output, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
|
+
import * as i1 from '@yuuvis/client-core';
|
|
4
|
+
import { TranslateModule } from '@yuuvis/client-core';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* A generic, accessible breadcrumb navigation component.
|
|
8
|
+
*
|
|
9
|
+
* Renders a flat list of navigation items where the last item always represents
|
|
10
|
+
* the current location (non-clickable) and all preceding items are interactive links.
|
|
11
|
+
* Each link is individually focusable via standard Tab navigation.
|
|
12
|
+
*
|
|
13
|
+
* Key behaviors
|
|
14
|
+
* - Items are rendered left-to-right, separated by a `/` divider
|
|
15
|
+
* - The **last item** is always the current page — displayed as plain text (no link, no click handler)
|
|
16
|
+
* - All **preceding items** are rendered as `<a>` links that emit the `navigate` output on click or Enter
|
|
17
|
+
* - The component performs **no routing** — the parent handles all navigation logic via the emitted `BreadcrumbItem`
|
|
18
|
+
* - Empty `items` array renders nothing (the host element stays in the DOM but is visually empty)
|
|
19
|
+
*
|
|
20
|
+
* Usage
|
|
21
|
+
*
|
|
22
|
+
* The parent builds the `BreadcrumbItem[]` and passes it as input. Typically this
|
|
23
|
+
* array mirrors the object hierarchy the user navigated through (e.g. Case → Phase → Document).
|
|
24
|
+
*
|
|
25
|
+
* ```ts
|
|
26
|
+
* // Parent component
|
|
27
|
+
* breadcrumbItems: BreadcrumbItem[] = [
|
|
28
|
+
* { id: 'case-42', name: 'Case #42' }, // ← clickable link
|
|
29
|
+
* { id: 'phase-3', name: 'Review' }, // ← clickable link
|
|
30
|
+
* { id: 'doc-7', name: 'Contract.pdf' } // ← current location (non-clickable)
|
|
31
|
+
* ];
|
|
32
|
+
*
|
|
33
|
+
* onBreadcrumbNavigate(item: BreadcrumbItem): void {
|
|
34
|
+
* // item.id is the domain-specific key — use it to navigate
|
|
35
|
+
* this.router.navigate(['/objects', item.id]);
|
|
36
|
+
* }
|
|
37
|
+
* ```
|
|
38
|
+
*
|
|
39
|
+
* ```html
|
|
40
|
+
* <yuv-breadcrumb
|
|
41
|
+
* [items]="breadcrumbItems"
|
|
42
|
+
* (navigate)="onBreadcrumbNavigate($event)" />
|
|
43
|
+
* ```
|
|
44
|
+
*
|
|
45
|
+
* Renders visually as:
|
|
46
|
+
* ```
|
|
47
|
+
* Case #42 / Review / Contract.pdf
|
|
48
|
+
* [link] [link] [current]
|
|
49
|
+
* ```
|
|
50
|
+
*/
|
|
51
|
+
class YuuvisBreadcrumbComponent {
|
|
52
|
+
constructor() {
|
|
53
|
+
// #region Angular stuff (inputs, outputs)
|
|
54
|
+
/**
|
|
55
|
+
* Ordered list of breadcrumb items to display.
|
|
56
|
+
*
|
|
57
|
+
* Each `BreadcrumbItem` has `{ id: string; name: string }` — where `id` is a unique key
|
|
58
|
+
* (typically an object/route ID) and `name` is the display label rendered in the trail.
|
|
59
|
+
*
|
|
60
|
+
* Position determines rendering behavior:
|
|
61
|
+
* - All items except the last → clickable `<a>` links
|
|
62
|
+
* - Last item → non-clickable text (current location)
|
|
63
|
+
*
|
|
64
|
+
* Defaults to an empty array, which renders nothing.
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* ```ts
|
|
68
|
+
* // Case → Document trail
|
|
69
|
+
* [items]="[
|
|
70
|
+
* { id: 'case-42', name: 'Case #42' },
|
|
71
|
+
* { id: 'doc-7', name: 'Invoice.pdf' }
|
|
72
|
+
* ]"
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
75
|
+
this.items = input([]);
|
|
76
|
+
/**
|
|
77
|
+
* Emitted when the user activates a clickable breadcrumb item (click or Enter key).
|
|
78
|
+
*
|
|
79
|
+
* The emitted value is the full `BreadcrumbItem` object (`{ id, name }`) that was activated.
|
|
80
|
+
* Never emitted for the last item since it is non-clickable.
|
|
81
|
+
* The parent is responsible for performing the actual navigation using `item.id`.
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* ```ts
|
|
85
|
+
* onBreadcrumbNavigate(item: BreadcrumbItem): void {
|
|
86
|
+
* // item = { id: 'case-42', name: 'Case #42' }
|
|
87
|
+
* this.router.navigate(['/objects', item.id]);
|
|
88
|
+
* }
|
|
89
|
+
* ```
|
|
90
|
+
*/
|
|
91
|
+
this.navigate = output();
|
|
92
|
+
}
|
|
93
|
+
// #endregion
|
|
94
|
+
// #region UI Responses
|
|
95
|
+
/**
|
|
96
|
+
* Handles click on a breadcrumb link and forwards the item to the parent via `navigate` output.
|
|
97
|
+
* Called only for non-last items (the template guards against calling this for the current location).
|
|
98
|
+
*/
|
|
99
|
+
onItemClick(item) {
|
|
100
|
+
this.navigate.emit(item);
|
|
101
|
+
}
|
|
102
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: YuuvisBreadcrumbComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
103
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.20", type: YuuvisBreadcrumbComponent, isStandalone: true, selector: "yuv-breadcrumb", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { navigate: "navigate" }, host: { classAttribute: "yuv-breadcrumb" }, ngImport: i0, template: "<nav [attr.aria-label]=\"'yuv.framework.breadcrumb.nav-label' | translate\">\n <ol class=\"yuv-breadcrumb__list\">\n @for (item of items(); track item.id) {\n @if ($last) {\n <li class=\"yuv-breadcrumb__item yuv-breadcrumb__item--current\" aria-current=\"page\">\n {{ item.name }}\n </li>\n } @else {\n <li class=\"yuv-breadcrumb__item\">\n <a\n class=\"yuv-breadcrumb__link\"\n role=\"link\"\n tabindex=\"0\"\n (click)=\"onItemClick(item)\"\n (keydown.enter)=\"onItemClick(item)\"\n >\n {{ item.name }}\n </a>\n <span class=\"yuv-breadcrumb__separator\" aria-hidden=\"true\">/</span>\n </li>\n }\n }\n </ol>\n</nav>\n", styles: [":host{display:block}.yuv-breadcrumb__list{display:flex;flex-wrap:wrap;align-items:center;list-style:none;margin:0;padding:0}.yuv-breadcrumb__item{display:flex;align-items:center}.yuv-breadcrumb__item--current{color:var(--yuv-breadcrumb-current-color, currentColor);font-weight:500}.yuv-breadcrumb__separator{margin:0 .375rem;color:var(--yuv-breadcrumb-separator-color, currentColor);opacity:.4;-webkit-user-select:none;user-select:none}.yuv-breadcrumb__link{color:var(--yuv-breadcrumb-link-color, inherit);text-decoration:none;border-radius:2px;cursor:pointer}.yuv-breadcrumb__link:hover{text-decoration:underline}.yuv-breadcrumb__link:focus-visible{outline:2px solid currentColor;outline-offset:2px}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
104
|
+
}
|
|
105
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.20", ngImport: i0, type: YuuvisBreadcrumbComponent, decorators: [{
|
|
106
|
+
type: Component,
|
|
107
|
+
args: [{ selector: 'yuv-breadcrumb', imports: [TranslateModule], changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
108
|
+
class: 'yuv-breadcrumb'
|
|
109
|
+
}, template: "<nav [attr.aria-label]=\"'yuv.framework.breadcrumb.nav-label' | translate\">\n <ol class=\"yuv-breadcrumb__list\">\n @for (item of items(); track item.id) {\n @if ($last) {\n <li class=\"yuv-breadcrumb__item yuv-breadcrumb__item--current\" aria-current=\"page\">\n {{ item.name }}\n </li>\n } @else {\n <li class=\"yuv-breadcrumb__item\">\n <a\n class=\"yuv-breadcrumb__link\"\n role=\"link\"\n tabindex=\"0\"\n (click)=\"onItemClick(item)\"\n (keydown.enter)=\"onItemClick(item)\"\n >\n {{ item.name }}\n </a>\n <span class=\"yuv-breadcrumb__separator\" aria-hidden=\"true\">/</span>\n </li>\n }\n }\n </ol>\n</nav>\n", styles: [":host{display:block}.yuv-breadcrumb__list{display:flex;flex-wrap:wrap;align-items:center;list-style:none;margin:0;padding:0}.yuv-breadcrumb__item{display:flex;align-items:center}.yuv-breadcrumb__item--current{color:var(--yuv-breadcrumb-current-color, currentColor);font-weight:500}.yuv-breadcrumb__separator{margin:0 .375rem;color:var(--yuv-breadcrumb-separator-color, currentColor);opacity:.4;-webkit-user-select:none;user-select:none}.yuv-breadcrumb__link{color:var(--yuv-breadcrumb-link-color, inherit);text-decoration:none;border-radius:2px;cursor:pointer}.yuv-breadcrumb__link:hover{text-decoration:underline}.yuv-breadcrumb__link:focus-visible{outline:2px solid currentColor;outline-offset:2px}\n"] }]
|
|
110
|
+
}] });
|
|
111
|
+
|
|
112
|
+
/**
|
|
113
|
+
* Generated bundle index. Do not edit.
|
|
114
|
+
*/
|
|
115
|
+
|
|
116
|
+
export { YuuvisBreadcrumbComponent };
|
|
117
|
+
//# sourceMappingURL=yuuvis-client-framework-breadcrumb.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yuuvis-client-framework-breadcrumb.mjs","sources":["../../../../../libs/yuuvis/client-framework/breadcrumb/src/lib/breadcrumb/breadcrumb.component.ts","../../../../../libs/yuuvis/client-framework/breadcrumb/src/lib/breadcrumb/breadcrumb.component.html","../../../../../libs/yuuvis/client-framework/breadcrumb/src/yuuvis-client-framework-breadcrumb.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, input, output } from '@angular/core';\nimport { TranslateModule } from '@yuuvis/client-core';\nimport { BreadcrumbItem } from '../models';\n\n/**\n * A generic, accessible breadcrumb navigation component.\n *\n * Renders a flat list of navigation items where the last item always represents\n * the current location (non-clickable) and all preceding items are interactive links.\n * Each link is individually focusable via standard Tab navigation.\n *\n * Key behaviors\n * - Items are rendered left-to-right, separated by a `/` divider\n * - The **last item** is always the current page — displayed as plain text (no link, no click handler)\n * - All **preceding items** are rendered as `<a>` links that emit the `navigate` output on click or Enter\n * - The component performs **no routing** — the parent handles all navigation logic via the emitted `BreadcrumbItem`\n * - Empty `items` array renders nothing (the host element stays in the DOM but is visually empty)\n *\n * Usage\n *\n * The parent builds the `BreadcrumbItem[]` and passes it as input. Typically this\n * array mirrors the object hierarchy the user navigated through (e.g. Case → Phase → Document).\n *\n * ```ts\n * // Parent component\n * breadcrumbItems: BreadcrumbItem[] = [\n * { id: 'case-42', name: 'Case #42' }, // ← clickable link\n * { id: 'phase-3', name: 'Review' }, // ← clickable link\n * { id: 'doc-7', name: 'Contract.pdf' } // ← current location (non-clickable)\n * ];\n *\n * onBreadcrumbNavigate(item: BreadcrumbItem): void {\n * // item.id is the domain-specific key — use it to navigate\n * this.router.navigate(['/objects', item.id]);\n * }\n * ```\n *\n * ```html\n * <yuv-breadcrumb\n * [items]=\"breadcrumbItems\"\n * (navigate)=\"onBreadcrumbNavigate($event)\" />\n * ```\n *\n * Renders visually as:\n * ```\n * Case #42 / Review / Contract.pdf\n * [link] [link] [current]\n * ```\n */\n@Component({\n selector: 'yuv-breadcrumb',\n imports: [TranslateModule],\n templateUrl: './breadcrumb.component.html',\n styleUrl: './breadcrumb.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'yuv-breadcrumb'\n }\n})\nexport class YuuvisBreadcrumbComponent {\n // #region Angular stuff (inputs, outputs)\n\n /**\n * Ordered list of breadcrumb items to display.\n *\n * Each `BreadcrumbItem` has `{ id: string; name: string }` — where `id` is a unique key\n * (typically an object/route ID) and `name` is the display label rendered in the trail.\n *\n * Position determines rendering behavior:\n * - All items except the last → clickable `<a>` links\n * - Last item → non-clickable text (current location)\n *\n * Defaults to an empty array, which renders nothing.\n *\n * @example\n * ```ts\n * // Case → Document trail\n * [items]=\"[\n * { id: 'case-42', name: 'Case #42' },\n * { id: 'doc-7', name: 'Invoice.pdf' }\n * ]\"\n * ```\n */\n items = input<BreadcrumbItem[]>([]);\n\n /**\n * Emitted when the user activates a clickable breadcrumb item (click or Enter key).\n *\n * The emitted value is the full `BreadcrumbItem` object (`{ id, name }`) that was activated.\n * Never emitted for the last item since it is non-clickable.\n * The parent is responsible for performing the actual navigation using `item.id`.\n *\n * @example\n * ```ts\n * onBreadcrumbNavigate(item: BreadcrumbItem): void {\n * // item = { id: 'case-42', name: 'Case #42' }\n * this.router.navigate(['/objects', item.id]);\n * }\n * ```\n */\n navigate = output<BreadcrumbItem>();\n\n // #endregion\n\n // #region UI Responses\n\n /**\n * Handles click on a breadcrumb link and forwards the item to the parent via `navigate` output.\n * Called only for non-last items (the template guards against calling this for the current location).\n */\n protected onItemClick(item: BreadcrumbItem): void {\n this.navigate.emit(item);\n }\n\n // #endregion\n}\n","<nav [attr.aria-label]=\"'yuv.framework.breadcrumb.nav-label' | translate\">\n <ol class=\"yuv-breadcrumb__list\">\n @for (item of items(); track item.id) {\n @if ($last) {\n <li class=\"yuv-breadcrumb__item yuv-breadcrumb__item--current\" aria-current=\"page\">\n {{ item.name }}\n </li>\n } @else {\n <li class=\"yuv-breadcrumb__item\">\n <a\n class=\"yuv-breadcrumb__link\"\n role=\"link\"\n tabindex=\"0\"\n (click)=\"onItemClick(item)\"\n (keydown.enter)=\"onItemClick(item)\"\n >\n {{ item.name }}\n </a>\n <span class=\"yuv-breadcrumb__separator\" aria-hidden=\"true\">/</span>\n </li>\n }\n }\n </ol>\n</nav>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CG;MAWU,yBAAyB,CAAA;AAVtC,IAAA,WAAA,GAAA;;AAaE;;;;;;;;;;;;;;;;;;;;AAoBG;AACH,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK,CAAmB,EAAE,CAAC;AAEnC;;;;;;;;;;;;;;AAcG;QACH,IAAA,CAAA,QAAQ,GAAG,MAAM,EAAkB;AAepC,IAAA;;;AATC;;;AAGG;AACO,IAAA,WAAW,CAAC,IAAoB,EAAA;AACxC,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;IAC1B;+GArDW,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAzB,yBAAyB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC3DtC,8wBAwBA,EAAA,MAAA,EAAA,CAAA,gsBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,ED2BY,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAQd,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAVrC,SAAS;+BACE,gBAAgB,EAAA,OAAA,EACjB,CAAC,eAAe,CAAC,mBAGT,uBAAuB,CAAC,MAAM,EAAA,IAAA,EACzC;AACJ,wBAAA,KAAK,EAAE;AACR,qBAAA,EAAA,QAAA,EAAA,8wBAAA,EAAA,MAAA,EAAA,CAAA,gsBAAA,CAAA,EAAA;;;AEzDH;;AAEG;;;;"}
|