@life-cockpit/angular-ui-kit 2.12.1 → 2.13.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@life-cockpit/angular-ui-kit",
3
- "version": "2.12.1",
3
+ "version": "2.13.1",
4
4
  "description": "Life Cockpit Design System - Angular UI component library",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -596,6 +596,12 @@ declare class CheckboxComponent implements ControlValueAccessor {
596
596
 
597
597
  type IconVariant = 'outline' | 'solid';
598
598
  type IconSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
599
+ /**
600
+ * Clears the warn-once-per-name registry. Only needed by unit tests that
601
+ * assert on console warnings across multiple cases.
602
+ * @internal
603
+ */
604
+ declare function resetIconWarnings(): void;
599
605
  /**
600
606
  * Icon component - Tabler Icons wrapper for displaying SVG icons
601
607
  *
@@ -606,10 +612,15 @@ type IconSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
606
612
  * - Custom color support (CSS colors, variables)
607
613
  * - Accessibility attributes (ARIA labels, decorative icons)
608
614
  * - Dynamic SVG loading from Tabler Icons
609
- * - Fail-loud on unknown names: a dev-mode warning + a visible placeholder
610
- * (never a silent empty space). See {@link ICON_NAMES} / {@link isValidIconName}
611
- * for the canonical set of valid names, and {@link ICON_ALIASES} for the
612
- * supported Heroicon/Material aliases.
615
+ * - Fail-loud on unknown names: a console warning (once per name, in dev AND
616
+ * prod) + a visible placeholder (never a silent empty space) and **no
617
+ * network request**, because in SPA deployments the server answers missing
618
+ * asset paths with the index.html fallback. See {@link ICON_NAMES} /
619
+ * {@link isValidIconName} for the canonical set of valid names, and
620
+ * {@link ICON_ALIASES} for the supported Heroicon/Material aliases.
621
+ * - Fetched responses are validated (content-type + parsed `<svg>` root)
622
+ * before anything is trusted — a non-SVG response (e.g. the SPA index.html
623
+ * fallback) is dropped and replaced by the placeholder.
613
624
  *
614
625
  * @example
615
626
  * ```html
@@ -712,7 +723,28 @@ declare class IconComponent {
712
723
  readonly colorStyle: _angular_core.Signal<string>;
713
724
  constructor();
714
725
  /**
715
- * Process SVG string to add size, color, and accessibility attributes
726
+ * The single funnel to `bypassSecurityTrustHtml`. The bypass is only safe
727
+ * because every caller passes the output of {@link processSvgString}, which
728
+ * guarantees the markup is a parsed and re-serialized standalone `<svg>`
729
+ * document — never raw fetched text. Do NOT add callers that skip that
730
+ * validation, and do NOT "simplify" the gates away: without them, a SPA
731
+ * server's index.html fallback (status 200, text/html) gets injected into
732
+ * the page once per icon instance.
733
+ * @private
734
+ */
735
+ private setTrustedSvg;
736
+ /**
737
+ * Renders the visible "?" placeholder for anything that cannot be resolved
738
+ * to a real icon (unknown name, failed load, non-SVG response).
739
+ * @private
740
+ */
741
+ private renderFallback;
742
+ /**
743
+ * Parse an SVG string and add size, color, and accessibility attributes.
744
+ *
745
+ * Returns `null` when the input is not a standalone SVG document — a parse
746
+ * error, or a non-`<svg>` root such as an HTML page. Callers must treat
747
+ * `null` as "do not render"; the raw input is never passed through.
716
748
  * @private
717
749
  */
718
750
  private processSvgString;
@@ -2641,6 +2673,98 @@ declare class SpacerComponent {
2641
2673
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<SpacerComponent, "lc-spacer", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
2642
2674
  }
2643
2675
 
2676
+ /**
2677
+ * Resizable two-pane layout container.
2678
+ *
2679
+ * Projects two panes (`slot="start"`, `slot="end"`) side by side with a
2680
+ * draggable separator in between. The start pane has a fixed, user-adjustable
2681
+ * width; the end pane fills the remaining space.
2682
+ *
2683
+ * Features:
2684
+ * - Drag the separator with mouse / touch (pointer capture), bounded by
2685
+ * `minSize` / `maxSize` (px or percentage of the container)
2686
+ * - Double-click the separator to restore `initialSize`
2687
+ * - Keyboard resizing: focusable separator, ←/→ adjust by `step`,
2688
+ * Home/End jump to min/max (`role="separator"`, `aria-valuenow`)
2689
+ * - Optional persistence: with `storageKey`, the width survives a reload
2690
+ * - Below the `stackBelow` viewport breakpoint the panes stack vertically
2691
+ * and the resizer is disabled
2692
+ *
2693
+ * @example
2694
+ * ```html
2695
+ * <lc-split-pane
2696
+ * [initialSize]="360"
2697
+ * [minSize]="280"
2698
+ * [maxSize]="'55%'"
2699
+ * storageKey="sidebar-width"
2700
+ * (sizeChange)="onWidthChange($event)"
2701
+ * >
2702
+ * <div slot="start">…</div>
2703
+ * <div slot="end">…</div>
2704
+ * </lc-split-pane>
2705
+ * ```
2706
+ */
2707
+ declare class SplitPaneComponent implements OnInit {
2708
+ /** Initial width of the start pane in px. Restored on separator double-click. */
2709
+ readonly initialSize: _angular_core.InputSignal<number>;
2710
+ /** Minimum width of the start pane in px. */
2711
+ readonly minSize: _angular_core.InputSignal<number>;
2712
+ /**
2713
+ * Maximum width of the start pane: a number (px) or a percentage string
2714
+ * such as `'55%'` (relative to the container width). `null` = no limit
2715
+ * beyond the container itself.
2716
+ */
2717
+ readonly maxSize: _angular_core.InputSignal<string | number | null>;
2718
+ /**
2719
+ * When set, the current width is persisted to localStorage under this key
2720
+ * and restored on the next init.
2721
+ */
2722
+ readonly storageKey: _angular_core.InputSignal<string | undefined>;
2723
+ /** Step in px for keyboard resizing (←/→ on the focused separator). */
2724
+ readonly step: _angular_core.InputSignal<number>;
2725
+ /**
2726
+ * Viewport width in px below which the panes stack vertically and the
2727
+ * resizer is disabled. `0` disables stacking.
2728
+ */
2729
+ readonly stackBelow: _angular_core.InputSignal<number>;
2730
+ /** Accessible label for the separator. */
2731
+ readonly separatorLabel: _angular_core.InputSignal<string>;
2732
+ /** Emitted whenever the start-pane width changes (drag, keyboard, reset). */
2733
+ readonly sizeChange: _angular_core.OutputEmitterRef<number>;
2734
+ private readonly host;
2735
+ private readonly destroyRef;
2736
+ /** Requested start-pane width; clamped to min/max for rendering. */
2737
+ private readonly size;
2738
+ /** Container width, tracked so percentage `maxSize` stays responsive. */
2739
+ private readonly containerWidth;
2740
+ /** Whether the panes are stacked (viewport below `stackBelow`). */
2741
+ protected readonly stacked: _angular_core.WritableSignal<boolean>;
2742
+ private dragPointerId;
2743
+ private dragStartX;
2744
+ private dragStartSize;
2745
+ /** Clamped width actually applied to the start pane. */
2746
+ protected readonly effectiveSize: _angular_core.Signal<number>;
2747
+ /** Resolved max in px for aria-valuemax; null when unbounded. */
2748
+ protected readonly ariaMax: _angular_core.Signal<number | null>;
2749
+ constructor();
2750
+ ngOnInit(): void;
2751
+ /** Restore the initial width (also wired to separator double-click). */
2752
+ reset(): void;
2753
+ protected onPointerDown(event: PointerEvent): void;
2754
+ protected onPointerMove(event: PointerEvent): void;
2755
+ protected onPointerUp(event: PointerEvent): void;
2756
+ protected onKeydown(event: KeyboardEvent): void;
2757
+ private applySize;
2758
+ private clamp;
2759
+ private resolveMaxPx;
2760
+ private observeContainer;
2761
+ private storageId;
2762
+ private restoreSize;
2763
+ private persist;
2764
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<SplitPaneComponent, never>;
2765
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<SplitPaneComponent, "lc-split-pane", never, { "initialSize": { "alias": "initialSize"; "required": false; "isSignal": true; }; "minSize": { "alias": "minSize"; "required": false; "isSignal": true; }; "maxSize": { "alias": "maxSize"; "required": false; "isSignal": true; }; "storageKey": { "alias": "storageKey"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "stackBelow": { "alias": "stackBelow"; "required": false; "isSignal": true; }; "separatorLabel": { "alias": "separatorLabel"; "required": false; "isSignal": true; }; }, { "sizeChange": "sizeChange"; }, never, ["[slot=start]", "[slot=end]"], true, never>;
2766
+ }
2767
+
2644
2768
  type StackDirection = 'vertical' | 'horizontal';
2645
2769
  type StackGap = 'none' | 'xs' | 'sm' | 'md' | 'lg' | 'xl';
2646
2770
  type StackAlign = 'start' | 'center' | 'end' | 'stretch' | 'baseline';
@@ -3249,6 +3373,8 @@ declare class TooltipDirective implements OnDestroy {
3249
3373
  interface BreadcrumbItem {
3250
3374
  label: string;
3251
3375
  url?: string;
3376
+ /** Optional stable identifier, useful when handling `itemClick`. */
3377
+ id?: string;
3252
3378
  }
3253
3379
  type BreadcrumbSize = 'sm' | 'md' | 'lg';
3254
3380
  declare class BreadcrumbsComponent {
@@ -3257,12 +3383,18 @@ declare class BreadcrumbsComponent {
3257
3383
  readonly maxItems: _angular_core.InputSignal<number>;
3258
3384
  readonly size: _angular_core.InputSignal<BreadcrumbSize>;
3259
3385
  readonly ariaLabel: _angular_core.InputSignal<string>;
3386
+ /**
3387
+ * Emitted when an item without `url` is activated. Items with `url` keep
3388
+ * their link navigation and do not emit.
3389
+ */
3390
+ readonly itemClick: _angular_core.OutputEmitterRef<BreadcrumbItem>;
3260
3391
  breadcrumbClasses: _angular_core.Signal<string>;
3261
3392
  visibleItems: _angular_core.Signal<BreadcrumbItem[]>;
3262
3393
  isLastItem(index: number): boolean;
3263
3394
  isEllipsis(item: BreadcrumbItem): boolean;
3395
+ onItemClick(item: BreadcrumbItem): void;
3264
3396
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<BreadcrumbsComponent, never>;
3265
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<BreadcrumbsComponent, "lc-breadcrumbs", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "separator": { "alias": "separator"; "required": false; "isSignal": true; }; "maxItems": { "alias": "maxItems"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
3397
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<BreadcrumbsComponent, "lc-breadcrumbs", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "separator": { "alias": "separator"; "required": false; "isSignal": true; }; "maxItems": { "alias": "maxItems"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "itemClick": "itemClick"; }, never, ["*"], true, never>;
3266
3398
  }
3267
3399
 
3268
3400
  /**
@@ -3812,10 +3944,17 @@ declare class BadgeComponent {
3812
3944
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<BadgeComponent, "lc-badge", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "rounded": { "alias": "rounded"; "required": false; "isSignal": true; }; "dot": { "alias": "dot"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
3813
3945
  }
3814
3946
 
3947
+ type ToggleOptionDot = 'warning' | 'error' | 'success';
3815
3948
  interface ToggleOption {
3816
3949
  readonly value: string;
3817
3950
  readonly label: string;
3818
3951
  readonly disabled?: boolean;
3952
+ /**
3953
+ * Small status dot rendered to the right of the label (e.g. an unread
3954
+ * indicator). `true` uses the default tone (`warning`); pass a tone name
3955
+ * to pick a semantic color. Does not change the option's height.
3956
+ */
3957
+ readonly dot?: boolean | ToggleOptionDot;
3819
3958
  }
3820
3959
  /**
3821
3960
  * Toggle group component for single-option selection from a set.
@@ -3853,6 +3992,8 @@ declare class ToggleGroupComponent {
3853
3992
  isActive(option: ToggleOption): boolean;
3854
3993
  /** Get button classes */
3855
3994
  getButtonClasses(option: ToggleOption): string;
3995
+ /** Resolve the dot tone for an option (null when no dot is shown) */
3996
+ dotTone(option: ToggleOption): ToggleOptionDot | null;
3856
3997
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ToggleGroupComponent, never>;
3857
3998
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<ToggleGroupComponent, "lc-toggle-group", never, { "options": { "alias": "options"; "required": true; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, { "selected": "selectedChange"; "selectionChange": "selectionChange"; }, never, never, true, never>;
3858
3999
  }
@@ -3990,6 +4131,7 @@ type ChipSize = 'sm' | 'md' | 'lg';
3990
4131
  * - Multiple size options (sm, md, lg)
3991
4132
  * - Optional leading icon
3992
4133
  * - Removable with close button and remove event
4134
+ * - Clickable variant that renders as a button and emits `chipClick`
3993
4135
  * - Disabled state support
3994
4136
  *
3995
4137
  * @example
@@ -3997,6 +4139,10 @@ type ChipSize = 'sm' | 'md' | 'lg';
3997
4139
  * <lc-chip variant="primary" [removable]="true" (remove)="onRemove()">
3998
4140
  * Tag Name
3999
4141
  * </lc-chip>
4142
+ *
4143
+ * <lc-chip [clickable]="true" (chipClick)="onNavigate()">
4144
+ * Linked item
4145
+ * </lc-chip>
4000
4146
  * ```
4001
4147
  */
4002
4148
  declare class ChipComponent {
@@ -4008,24 +4154,40 @@ declare class ChipComponent {
4008
4154
  icon: _angular_core.InputSignal<string | undefined>;
4009
4155
  /** Whether the chip can be removed */
4010
4156
  removable: _angular_core.InputSignal<boolean>;
4157
+ /**
4158
+ * Whether the chip acts as a button (e.g. for navigation). Renders the chip
4159
+ * as a `<button type="button">` with hover / active / focus-visible states.
4160
+ */
4161
+ clickable: _angular_core.InputSignal<boolean>;
4011
4162
  /** Whether the chip is disabled */
4012
4163
  disabled: _angular_core.InputSignal<boolean>;
4013
4164
  /** Emitted when the chip is removed */
4014
4165
  readonly remove: _angular_core.OutputEmitterRef<void>;
4166
+ /** Emitted when a clickable chip is activated (click, Enter or Space). */
4167
+ readonly chipClick: _angular_core.OutputEmitterRef<void>;
4015
4168
  /**
4016
4169
  * Computed CSS classes for the chip
4017
4170
  */
4018
4171
  chipClasses: _angular_core.Signal<string>;
4172
+ /**
4173
+ * Handle activation of a clickable chip
4174
+ */
4175
+ onChipClick(): void;
4019
4176
  /**
4020
4177
  * Handle remove button click
4021
4178
  */
4022
4179
  onRemove(event: Event): void;
4180
+ /**
4181
+ * Keyboard activation of the delete affordance inside a clickable chip
4182
+ * (a span with role="button", since nesting native buttons is invalid).
4183
+ */
4184
+ onDeleteKeydown(event: KeyboardEvent): void;
4023
4185
  /**
4024
4186
  * Handle keyboard navigation
4025
4187
  */
4026
4188
  onKeydown(event: KeyboardEvent): void;
4027
4189
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<ChipComponent, never>;
4028
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<ChipComponent, "lc-chip", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "removable": { "alias": "removable"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "remove": "remove"; }, never, ["*"], true, never>;
4190
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<ChipComponent, "lc-chip", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "removable": { "alias": "removable"; "required": false; "isSignal": true; }; "clickable": { "alias": "clickable"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "remove": "remove"; "chipClick": "chipClick"; }, never, ["*"], true, never>;
4029
4191
  }
4030
4192
 
4031
4193
  /**
@@ -6501,16 +6663,24 @@ declare class DependencyViewerComponent {
6501
6663
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<DependencyViewerComponent, "lc-dependency-viewer", never, { "root": { "alias": "root"; "required": true; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "showToolbar": { "alias": "showToolbar"; "required": false; "isSignal": true; }; "showEdgeLabels": { "alias": "showEdgeLabels"; "required": false; "isSignal": true; }; "edgeWidth": { "alias": "edgeWidth"; "required": false; "isSignal": true; }; "anchorNodeId": { "alias": "anchorNodeId"; "required": false; "isSignal": true; }; "typeColors": { "alias": "typeColors"; "required": false; "isSignal": true; }; "hiddenRelations": { "alias": "hiddenRelations"; "required": false; "isSignal": true; }; "hiddenTypes": { "alias": "hiddenTypes"; "required": false; "isSignal": true; }; }, { "nodeSelect": "nodeSelect"; "nodeExpand": "nodeExpand"; }, never, never, true, never>;
6502
6664
  }
6503
6665
 
6504
- type TreeNodeType = 'file' | 'folder';
6505
6666
  /**
6506
- * A node in the file tree. Folders carry `children`; files do not.
6667
+ * Node type. `'file'` and `'folder'` get the built-in file-tree treatment
6668
+ * (extension icons, folder open/close icons). Any other string marks a custom
6669
+ * domain type: such nodes render a colored type dot (or an explicit `icon`)
6670
+ * instead of file icons.
6671
+ */
6672
+ type TreeNodeType = 'file' | 'folder' | (string & {});
6673
+ type TreeNodeStatus = 'default' | 'added' | 'modified' | 'removed' | 'muted' | 'success' | 'busy';
6674
+ /**
6675
+ * A node in the tree. Any node carrying `children` can expand — this covers
6676
+ * file trees (folders) as well as arbitrary domain hierarchies.
6507
6677
  */
6508
6678
  interface TreeNode {
6509
6679
  /** Display name, e.g. `app.component.ts` or `src`. */
6510
6680
  name: string;
6511
6681
  /**
6512
6682
  * Node type. Optional — inferred as `folder` when `children` is present,
6513
- * otherwise `file`.
6683
+ * otherwise `file`. May be any string for domain hierarchies.
6514
6684
  */
6515
6685
  type?: TreeNodeType;
6516
6686
  /**
@@ -6518,18 +6688,26 @@ interface TreeNode {
6518
6688
  * which is stable as long as names are unique among siblings.
6519
6689
  */
6520
6690
  id?: string;
6521
- /** Child nodes (folders only). */
6691
+ /** Child nodes. Any node with children can expand / collapse. */
6522
6692
  children?: TreeNode[];
6523
6693
  /**
6524
6694
  * Explicit Tabler icon name. Overrides automatic file-type / folder
6525
- * icon resolution.
6695
+ * icon resolution and the custom-type dot.
6526
6696
  */
6527
6697
  icon?: string;
6698
+ /**
6699
+ * Accent color for the node's icon / type dot. Any CSS color, including
6700
+ * `var(--…)` token references.
6701
+ */
6702
+ color?: string;
6528
6703
  /** Optional badge text shown to the right of the node (e.g. git status, count). */
6529
6704
  badge?: string;
6530
- /** Tone of the badge / node accent. */
6531
- status?: 'default' | 'added' | 'modified' | 'removed' | 'muted';
6532
- /** Whether this folder starts expanded. Ignored for files. */
6705
+ /**
6706
+ * Tone of the badge / node accent. `success` additionally renders a ✓
6707
+ * indicator, `busy` a pulsing dot (static under `prefers-reduced-motion`).
6708
+ */
6709
+ status?: TreeNodeStatus;
6710
+ /** Whether this node starts expanded. Ignored for nodes without children. */
6533
6711
  expanded?: boolean;
6534
6712
  /** Disable selection / interaction for this node. */
6535
6713
  disabled?: boolean;
@@ -6541,9 +6719,11 @@ interface FlatNode {
6541
6719
  depth: number;
6542
6720
  hasChildren: boolean;
6543
6721
  expanded: boolean;
6544
- icon: string;
6722
+ /** Resolved icon, or `null` for custom-type nodes that render a type dot. */
6723
+ icon: string | null;
6724
+ color?: string;
6545
6725
  badge?: string;
6546
- status: NonNullable<TreeNode['status']>;
6726
+ status: TreeNodeStatus;
6547
6727
  disabled: boolean;
6548
6728
  /** Whether each ancestor level still has following siblings (for guide lines). */
6549
6729
  ancestorHasSibling: boolean[];
@@ -6551,17 +6731,21 @@ interface FlatNode {
6551
6731
  isLast: boolean;
6552
6732
  }
6553
6733
  /**
6554
- * Tree view component for visualizing file / folder hierarchies such as a
6555
- * complete GitHub project.
6734
+ * Tree view component for visualizing hierarchies — file / folder trees as
6735
+ * well as arbitrary domain object trees with custom node types.
6556
6736
  *
6557
6737
  * Features:
6558
- * - Recursive folder / file rendering from a single `nodes` input
6738
+ * - Recursive rendering from a single `nodes` input; any node with children
6739
+ * can expand / collapse
6559
6740
  * - Automatic file-type icons by extension and well-known file name,
6560
- * with open / closed folder icons
6561
- * - Expand / collapse folders, with expand-all / collapse-all helpers
6741
+ * with open / closed folder icons (for `file` / `folder` nodes)
6742
+ * - Custom node types: colored type dots or explicit icons via `type`,
6743
+ * `color`, `icon`
6744
+ * - Expand / collapse, with expand-all / collapse-all helpers
6562
6745
  * - Two-way bound selection and a `nodeClick` event
6563
6746
  * - Indentation guide lines for readability
6564
- * - Optional per-node status badges (added / modified / removed)
6747
+ * - Optional per-node status badges (added / modified / removed) and status
6748
+ * indicators (`success` ✓, `busy` pulse)
6565
6749
  * - Keyboard accessible (Enter / Space to toggle or select)
6566
6750
  * - Dark / light theme support via design tokens
6567
6751
  *
@@ -6587,7 +6771,7 @@ declare class TreeViewComponent {
6587
6771
  private readonly expandOverrides;
6588
6772
  /** Flattened, render-ready list of visible nodes. */
6589
6773
  protected readonly visibleNodes: _angular_core.Signal<FlatNode[]>;
6590
- protected badgeColor(status: NonNullable<TreeNode['status']>): string;
6774
+ protected badgeColor(status: TreeNodeStatus): string;
6591
6775
  protected onNodeClick(flat: FlatNode): void;
6592
6776
  protected onToggleClick(flat: FlatNode, event: Event): void;
6593
6777
  protected onKeydown(flat: FlatNode, event: KeyboardEvent): void;
@@ -7743,5 +7927,5 @@ declare class PipelineComponent {
7743
7927
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<PipelineComponent, "lc-pipeline", never, { "steps": { "alias": "steps"; "required": true; "isSignal": true; }; "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "clickable": { "alias": "clickable"; "required": false; "isSignal": true; }; }, { "stepClick": "stepClick"; }, never, never, true, never>;
7744
7928
  }
7745
7929
 
7746
- export { AccordionComponent, AccordionContentDirective, AccordionGroupComponent, AccordionHeaderDirective, AlertComponent, AnimationDurationFast, AnimationEasingEaseIn, AnimationEasingEaseInOut, AnimationEasingEaseOut, AreaChartComponent, AvatarComponent, AvatarGroupComponent, BadgeComponent, BarChartComponent, BorderRadius2xl, BorderRadiusFull, BorderRadiusLg, BorderRadiusMd, BorderRadiusNone, BorderRadiusSm, BorderRadiusXl, BreadcrumbsComponent, ButtonComponent, CalendarComponent, CalloutComponent, CardComponent, ChatComponent, CheckboxComponent, ChipComponent, CodeBlockComponent, ColorAccentOrange, ColorAccentPurple, ColorAccentRed, ColorAccentRust, ColorAccentViolet, ColorBackgroundDark, ColorErrorDark, ColorErrorDefault, ColorErrorLight, ColorInfoDark, ColorInfoDefault, ColorInfoLight, ColorNeutral100, ColorNeutral200, ColorNeutral300, ColorNeutral400, ColorNeutral50, ColorNeutral500, ColorNeutral600, ColorNeutral700, ColorNeutral800, ColorNeutral900, ColorPickerComponent, ColorPrimary100, ColorPrimary200, ColorPrimary300, ColorPrimary400, ColorPrimary50, ColorPrimary500, ColorPrimary600, ColorPrimary700, ColorPrimary800, ColorPrimary900, ColorSecondary100, ColorSecondary200, ColorSecondary300, ColorSecondary400, ColorSecondary50, ColorSecondary500, ColorSecondary600, ColorSecondary700, ColorSecondary800, ColorSecondary900, ColorSidebarDark, ColorSuccessDark, ColorSuccessDefault, ColorSuccessLight, ColorSurfaceDarkBase, ColorSurfaceDarkRaised, ColorSurfaceDarkSunken, ColorTextDarkPrimary, ColorTextDarkSecondary, ColorTextDarkTertiary, ColorWarningDark, ColorWarningDefault, ColorWarningLight, ComboboxComponent, ConfirmDialogComponent, ConfirmService, ContainerComponent, DateRangePickerComponent, DatepickerComponent, DependencyViewerComponent, DescriptionListComponent, DiffViewerComponent, DividerComponent, DocumentViewerComponent, DonutChartComponent, DrawerComponent, Elevation1, Elevation2, Elevation3, Elevation4, EmailInputComponent, EmptyStateComponent, ErrorDisplayComponent, FILE_FALLBACK_ICON, FOLDER_ICON, FOLDER_OPEN_ICON, FieldGroupComponent, FileUploadComponent, FilterBarComponent, FooterComponent, FunnelChartComponent, GalleryComponent, GanttChartComponent, GaugeComponent, HeaderComponent, HeatmapComponent, HeroComponent, ICON_ALIASES, ICON_NAMES, IconComponent, InputComponent, KanbanBoardComponent, LC_LOGO_BASE_PATH, LineChartComponent, ListComponent, ListItemTemplateDirective, LogViewerComponent, LogoComponent, MarkdownComponent, MenuComponent, ModalComponent, NotificationCenterComponent, NumberInputComponent, PageHeaderComponent, PageLayoutComponent, PaginationComponent, PasswordInputComponent, PieChartComponent, PipelineComponent, PopoverComponent, ProgressBarComponent, ProgressRingComponent, RadarChartComponent, RadioComponent, RatingComponent, RichTextEditorComponent, ScatterPlotComponent, SearchInputComponent, SectionComponent, SelectComponent, SidenavComponent, SizeContentMaxWidth, SizeInteractiveLgFontSize, SizeInteractiveLgHeight, SizeInteractiveLgPadding, SizeInteractiveMdFontSize, SizeInteractiveMdHeight, SizeInteractiveMdPadding, SizeInteractiveSmFontSize, SizeInteractiveSmHeight, SizeInteractiveSmPadding, SizeInteractiveXsFontSize, SizeInteractiveXsHeight, SizeInteractiveXsPadding, SizeMinTouchHeight, SizeMinTouchWidth, SkeletonComponent, SliderComponent, SpacerComponent, Spacing0, Spacing05, Spacing1, Spacing10, Spacing11, Spacing12, Spacing14, Spacing15, Spacing16, Spacing2, Spacing25, Spacing3, Spacing35, Spacing4, Spacing5, Spacing6, Spacing7, Spacing8, Spacing9, SparklineComponent, SpinnerComponent, StackComponent, StackedBarChartComponent, StageListComponent, StatTrendComponent, StepperComponent, SwitchComponent, TabComponent, TableCellDirective, TableComponent, TabsComponent, TagInputComponent, TextareaComponent, ThemeService, TimelineComponent, ToastComponent, ToastService, ToggleGroupComponent, ToolbarComponent, TooltipContentComponent, TooltipDirective, TreeViewComponent, TypographyComponent, TypographyFontFamilyBase, TypographyFontFamilyMono, TypographyFontSize2xl, TypographyFontSize3xl, TypographyFontSize4xl, TypographyFontSize5xl, TypographyFontSize6xl, TypographyFontSizeBase, TypographyFontSizeLg, TypographyFontSizeSm, TypographyFontSizeXl, TypographyFontSizeXs, TypographyFontWeightBold, TypographyFontWeightMedium, TypographyFontWeightNormal, TypographyFontWeightSemibold, TypographyLineHeightNormal, TypographyLineHeightRelaxed, TypographyLineHeightTight, VerificationCodeInputComponent, WaterfallChartComponent, isValidIconName, resolveFileIcon };
7747
- export type { AccordionChevronPosition, ActionClickEvent, AlertVariant, AreaChartSeries, AvatarGroupItem, AvatarSize, AvatarStatus, BadgeSize, BadgeVariant, BarChartItem, BarChartOrientation, BreadcrumbItem, BreadcrumbSize, ButtonSize, ButtonType, ButtonVariant, CalendarEvent, CalendarView, CalloutVariant, CellEditEvent, ChatAttachment, ChatFileAttachEvent, ChatMessage, ChatMessageRole, ChatMessageStatus, ChatRenderMarkdown, ChatSendEvent, CheckboxSize, ChipSize, ChipVariant, CodeBlockLanguage, ComboboxOption, ComboboxSize, ComboboxValue, ConfirmDialogVariant, ConfirmOptions, ContainerSize, DateRange, DateValue, DependencyDirection, DependencyEdgeDef, DependencyNode, DependencyNodeStatus, DependencyRelation, DescriptionListEmphasis, DescriptionListItem, DescriptionListLayout, DescriptionListSeparator, DescriptionListSize, DiffViewMode, DividerOrientation, DividerSpacing, DividerVariant, DocumentType, DonutChartSize, DonutSegment, DrawerPosition, DrawerSize, EmptyStateSize, ErrorSeverity, FileUploadFile, FilterConfig, FilterOption, FilterValues, FooterLink, FooterSection, FooterVariant, FunnelStep, GalleryItem, GalleryLayout, GallerySize, GanttDependency, GanttTask, GaugeColor, GaugeSize, HeatmapCell, HeroColor, HeroSize, HeroVariant, IconName, IconSize, IconVariant, KanbanCard, KanbanColumn, KanbanLabel, KanbanMoveEvent, LineChartSeries, ListItem, ListOrientation, ListSize, ListVariant, LogLevel, LogLine, LogViewerVariant, MarkdownChangesHighlighted, MarkdownHeading, MarkdownLinkClick, MarkdownRendered, MenuItem, ModalSize, NavigationItem, Notification, NotificationPriority, NotificationType, PageLayoutContentWidth, PageLayoutFill, PaginationSize, PasswordRequirement, PasswordStrength, PieChartSize, PieSegment, PipelineOrientation, PipelineSize, PipelineStatus, PipelineStep, PopoverPosition, PopoverTrigger, ProgressBarColor, ProgressBarSize, ProgressBarVariant, ProgressRingColor, ProgressRingSize, RadarChartSeries, RadioSize, RatingSize, RenderPart, RequireTextConfig, RichTextEditorMode, RowToggleEvent, ScatterPoint, ScatterSeries, SearchInputSize, SectionBackground, SectionSpacing, SelectOption, SelectOptionGroup, SelectValue, SelectionChangeEvent, SidenavMode, SidenavPosition, SkeletonVariant, SortEvent, SpacerSize, SparklineColor, SparklineCurve, SpinnerSize, StackAlign, StackDirection, StackGap, StackJustify, StackedBarCategory, StackedBarLegend, StackedBarOrientation, StageItem, StageListSize, StatTrendDirection, StepState, StepperStep, TabOrientation, TableAction, TableActionsAlign, TableColumn, TableSize, TableTreeConfig, TableVariant, ThemeConfig, ThemeMode, ThemeState, TimelineItem, TimelineOrientation, Toast, ToastAction, ToastConfig, ToastPosition, ToastVariant, ToggleOption, ToolbarAction, ToolbarConfig, TooltipPosition, TreeNode, TreeNodeType, WaterfallItem };
7930
+ export { AccordionComponent, AccordionContentDirective, AccordionGroupComponent, AccordionHeaderDirective, AlertComponent, AnimationDurationFast, AnimationEasingEaseIn, AnimationEasingEaseInOut, AnimationEasingEaseOut, AreaChartComponent, AvatarComponent, AvatarGroupComponent, BadgeComponent, BarChartComponent, BorderRadius2xl, BorderRadiusFull, BorderRadiusLg, BorderRadiusMd, BorderRadiusNone, BorderRadiusSm, BorderRadiusXl, BreadcrumbsComponent, ButtonComponent, CalendarComponent, CalloutComponent, CardComponent, ChatComponent, CheckboxComponent, ChipComponent, CodeBlockComponent, ColorAccentOrange, ColorAccentPurple, ColorAccentRed, ColorAccentRust, ColorAccentViolet, ColorBackgroundDark, ColorErrorDark, ColorErrorDefault, ColorErrorLight, ColorInfoDark, ColorInfoDefault, ColorInfoLight, ColorNeutral100, ColorNeutral200, ColorNeutral300, ColorNeutral400, ColorNeutral50, ColorNeutral500, ColorNeutral600, ColorNeutral700, ColorNeutral800, ColorNeutral900, ColorPickerComponent, ColorPrimary100, ColorPrimary200, ColorPrimary300, ColorPrimary400, ColorPrimary50, ColorPrimary500, ColorPrimary600, ColorPrimary700, ColorPrimary800, ColorPrimary900, ColorSecondary100, ColorSecondary200, ColorSecondary300, ColorSecondary400, ColorSecondary50, ColorSecondary500, ColorSecondary600, ColorSecondary700, ColorSecondary800, ColorSecondary900, ColorSidebarDark, ColorSuccessDark, ColorSuccessDefault, ColorSuccessLight, ColorSurfaceDarkBase, ColorSurfaceDarkRaised, ColorSurfaceDarkSunken, ColorTextDarkPrimary, ColorTextDarkSecondary, ColorTextDarkTertiary, ColorWarningDark, ColorWarningDefault, ColorWarningLight, ComboboxComponent, ConfirmDialogComponent, ConfirmService, ContainerComponent, DateRangePickerComponent, DatepickerComponent, DependencyViewerComponent, DescriptionListComponent, DiffViewerComponent, DividerComponent, DocumentViewerComponent, DonutChartComponent, DrawerComponent, Elevation1, Elevation2, Elevation3, Elevation4, EmailInputComponent, EmptyStateComponent, ErrorDisplayComponent, FILE_FALLBACK_ICON, FOLDER_ICON, FOLDER_OPEN_ICON, FieldGroupComponent, FileUploadComponent, FilterBarComponent, FooterComponent, FunnelChartComponent, GalleryComponent, GanttChartComponent, GaugeComponent, HeaderComponent, HeatmapComponent, HeroComponent, ICON_ALIASES, ICON_NAMES, IconComponent, InputComponent, KanbanBoardComponent, LC_LOGO_BASE_PATH, LineChartComponent, ListComponent, ListItemTemplateDirective, LogViewerComponent, LogoComponent, MarkdownComponent, MenuComponent, ModalComponent, NotificationCenterComponent, NumberInputComponent, PageHeaderComponent, PageLayoutComponent, PaginationComponent, PasswordInputComponent, PieChartComponent, PipelineComponent, PopoverComponent, ProgressBarComponent, ProgressRingComponent, RadarChartComponent, RadioComponent, RatingComponent, RichTextEditorComponent, ScatterPlotComponent, SearchInputComponent, SectionComponent, SelectComponent, SidenavComponent, SizeContentMaxWidth, SizeInteractiveLgFontSize, SizeInteractiveLgHeight, SizeInteractiveLgPadding, SizeInteractiveMdFontSize, SizeInteractiveMdHeight, SizeInteractiveMdPadding, SizeInteractiveSmFontSize, SizeInteractiveSmHeight, SizeInteractiveSmPadding, SizeInteractiveXsFontSize, SizeInteractiveXsHeight, SizeInteractiveXsPadding, SizeMinTouchHeight, SizeMinTouchWidth, SkeletonComponent, SliderComponent, SpacerComponent, Spacing0, Spacing05, Spacing1, Spacing10, Spacing11, Spacing12, Spacing14, Spacing15, Spacing16, Spacing2, Spacing25, Spacing3, Spacing35, Spacing4, Spacing5, Spacing6, Spacing7, Spacing8, Spacing9, SparklineComponent, SpinnerComponent, SplitPaneComponent, StackComponent, StackedBarChartComponent, StageListComponent, StatTrendComponent, StepperComponent, SwitchComponent, TabComponent, TableCellDirective, TableComponent, TabsComponent, TagInputComponent, TextareaComponent, ThemeService, TimelineComponent, ToastComponent, ToastService, ToggleGroupComponent, ToolbarComponent, TooltipContentComponent, TooltipDirective, TreeViewComponent, TypographyComponent, TypographyFontFamilyBase, TypographyFontFamilyMono, TypographyFontSize2xl, TypographyFontSize3xl, TypographyFontSize4xl, TypographyFontSize5xl, TypographyFontSize6xl, TypographyFontSizeBase, TypographyFontSizeLg, TypographyFontSizeSm, TypographyFontSizeXl, TypographyFontSizeXs, TypographyFontWeightBold, TypographyFontWeightMedium, TypographyFontWeightNormal, TypographyFontWeightSemibold, TypographyLineHeightNormal, TypographyLineHeightRelaxed, TypographyLineHeightTight, VerificationCodeInputComponent, WaterfallChartComponent, isValidIconName, resetIconWarnings, resolveFileIcon };
7931
+ export type { AccordionChevronPosition, ActionClickEvent, AlertVariant, AreaChartSeries, AvatarGroupItem, AvatarSize, AvatarStatus, BadgeSize, BadgeVariant, BarChartItem, BarChartOrientation, BreadcrumbItem, BreadcrumbSize, ButtonSize, ButtonType, ButtonVariant, CalendarEvent, CalendarView, CalloutVariant, CellEditEvent, ChatAttachment, ChatFileAttachEvent, ChatMessage, ChatMessageRole, ChatMessageStatus, ChatRenderMarkdown, ChatSendEvent, CheckboxSize, ChipSize, ChipVariant, CodeBlockLanguage, ComboboxOption, ComboboxSize, ComboboxValue, ConfirmDialogVariant, ConfirmOptions, ContainerSize, DateRange, DateValue, DependencyDirection, DependencyEdgeDef, DependencyNode, DependencyNodeStatus, DependencyRelation, DescriptionListEmphasis, DescriptionListItem, DescriptionListLayout, DescriptionListSeparator, DescriptionListSize, DiffViewMode, DividerOrientation, DividerSpacing, DividerVariant, DocumentType, DonutChartSize, DonutSegment, DrawerPosition, DrawerSize, EmptyStateSize, ErrorSeverity, FileUploadFile, FilterConfig, FilterOption, FilterValues, FooterLink, FooterSection, FooterVariant, FunnelStep, GalleryItem, GalleryLayout, GallerySize, GanttDependency, GanttTask, GaugeColor, GaugeSize, HeatmapCell, HeroColor, HeroSize, HeroVariant, IconName, IconSize, IconVariant, KanbanCard, KanbanColumn, KanbanLabel, KanbanMoveEvent, LineChartSeries, ListItem, ListOrientation, ListSize, ListVariant, LogLevel, LogLine, LogViewerVariant, MarkdownChangesHighlighted, MarkdownHeading, MarkdownLinkClick, MarkdownRendered, MenuItem, ModalSize, NavigationItem, Notification, NotificationPriority, NotificationType, PageLayoutContentWidth, PageLayoutFill, PaginationSize, PasswordRequirement, PasswordStrength, PieChartSize, PieSegment, PipelineOrientation, PipelineSize, PipelineStatus, PipelineStep, PopoverPosition, PopoverTrigger, ProgressBarColor, ProgressBarSize, ProgressBarVariant, ProgressRingColor, ProgressRingSize, RadarChartSeries, RadioSize, RatingSize, RenderPart, RequireTextConfig, RichTextEditorMode, RowToggleEvent, ScatterPoint, ScatterSeries, SearchInputSize, SectionBackground, SectionSpacing, SelectOption, SelectOptionGroup, SelectValue, SelectionChangeEvent, SidenavMode, SidenavPosition, SkeletonVariant, SortEvent, SpacerSize, SparklineColor, SparklineCurve, SpinnerSize, StackAlign, StackDirection, StackGap, StackJustify, StackedBarCategory, StackedBarLegend, StackedBarOrientation, StageItem, StageListSize, StatTrendDirection, StepState, StepperStep, TabOrientation, TableAction, TableActionsAlign, TableColumn, TableSize, TableTreeConfig, TableVariant, ThemeConfig, ThemeMode, ThemeState, TimelineItem, TimelineOrientation, Toast, ToastAction, ToastConfig, ToastPosition, ToastVariant, ToggleOption, ToggleOptionDot, ToolbarAction, ToolbarConfig, TooltipPosition, TreeNode, TreeNodeStatus, TreeNodeType, WaterfallItem };