@porscheinformatik/clr-addons 19.11.3 → 19.11.4

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": "@porscheinformatik/clr-addons",
3
- "version": "19.11.3",
3
+ "version": "19.11.4",
4
4
  "description": "Addon components for Clarity Angular",
5
5
  "es2015": "esm2015/clr-addons.js",
6
6
  "homepage": "https://porscheinformatik.github.io/clarity-addons/",
@@ -1,9 +1,10 @@
1
- import { AfterViewInit, OnInit, QueryList, Signal } from '@angular/core';
1
+ import { AfterViewInit, ElementRef, OnDestroy, OnInit, QueryList, Signal } from '@angular/core';
2
2
  import { ClrSummaryItem } from '../summary-item/summary-item';
3
3
  import { ClrSummaryAreaColumns, ClrSummaryAreaRows, ClrSummaryAreaError, ClrSummaryAreaWarning, ClrSummaryAreaLoading } from './summary-area.model';
4
4
  import * as i0 from "@angular/core";
5
- export declare class ClrSummaryArea implements OnInit, AfterViewInit {
5
+ export declare class ClrSummaryArea implements OnInit, AfterViewInit, OnDestroy {
6
6
  items: QueryList<ClrSummaryItem>;
7
+ panelsRef: ElementRef<HTMLElement>;
7
8
  isCollapsed: Signal<boolean>;
8
9
  rows: import("@angular/core").InputSignal<ClrSummaryAreaRows>;
9
10
  localStorageKey: import("@angular/core").InputSignal<string>;
@@ -12,12 +13,23 @@ export declare class ClrSummaryArea implements OnInit, AfterViewInit {
12
13
  loading: import("@angular/core").InputSignal<ClrSummaryAreaLoading>;
13
14
  currentColumns: ClrSummaryAreaColumns;
14
15
  currentRows: ClrSummaryAreaRows;
16
+ panelHeight: string;
17
+ loadingPanelHeight: string;
18
+ loadingVisible: boolean;
19
+ private prevErrorActive;
20
+ private prevWarningActive;
21
+ private prevCollapsed;
22
+ private prevHasLoading;
23
+ private loadingVisibleTimeout;
15
24
  private readonly state;
16
25
  private readonly cdr;
17
26
  private readonly defaultLoadingText;
18
27
  private readonly defaultErrorText;
19
28
  private readonly defaultWarningText;
20
29
  private readonly maxColumns;
30
+ private itemsSubscription?;
31
+ errorActive: Signal<boolean>;
32
+ warningActive: Signal<boolean>;
21
33
  constructor();
22
34
  ngOnInit(): void;
23
35
  /**
@@ -40,7 +52,24 @@ export declare class ClrSummaryArea implements OnInit, AfterViewInit {
40
52
  get warningClick(): (() => void) | undefined;
41
53
  onResize(): void;
42
54
  ngAfterViewInit(): void;
55
+ ngOnDestroy(): void;
43
56
  private updateGrid;
57
+ private updatePanelHeight;
58
+ private recalculatePanelHeight;
59
+ /**
60
+ * Calculate the expected grid height based on currentRows.
61
+ * This is used when the grid isn't rendered (e.g., during loading state).
62
+ * The loading container should match the grid height exactly.
63
+ *
64
+ * Grid structure:
65
+ * - .summary-area-container: margin 0 24px 9px 24px
66
+ * - .summary-grid: padding 3px 0, row-gap 6px
67
+ * - .summary-item: height 20px
68
+ *
69
+ * Formula: (rows * itemHeight) + ((rows - 1) * rowGap) + gridPadding + containerMargin
70
+ */
71
+ private calculateGridHeight;
72
+ private animateCollapse;
44
73
  static ɵfac: i0.ɵɵFactoryDeclaration<ClrSummaryArea, never>;
45
74
  static ɵcmp: i0.ɵɵComponentDeclaration<ClrSummaryArea, "clr-summary-area", never, { "rows": { "alias": "rows"; "required": false; "isSignal": true; }; "localStorageKey": { "alias": "localStorageKey"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "warning": { "alias": "warning"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; }, {}, ["items"], never, true, never>;
46
75
  }
@@ -1,11 +1,12 @@
1
+ import { WritableSignal } from '@angular/core';
1
2
  export interface ClrSummaryAreaError {
2
- active: boolean;
3
+ active: WritableSignal<boolean>;
3
4
  text?: string;
4
5
  click?: () => void;
5
6
  linkText?: string;
6
7
  }
7
8
  export interface ClrSummaryAreaWarning {
8
- active: boolean;
9
+ active: WritableSignal<boolean>;
9
10
  text?: string;
10
11
  click?: () => void;
11
12
  linkText?: string;
@@ -53,6 +53,7 @@ export declare class ClrSummaryItem implements AfterContentInit, AfterViewChecke
53
53
  private setupMutationObserver;
54
54
  private scheduleContentCheck;
55
55
  private updateProjectedContentFlag;
56
+ private hasNonIconTextValue;
56
57
  static ɵfac: i0.ɵɵFactoryDeclaration<ClrSummaryItem, never>;
57
58
  static ɵcmp: i0.ɵɵComponentDeclaration<ClrSummaryItem, "clr-summary-item", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "warning": { "alias": "warning"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "editConfig": { "alias": "editConfig"; "required": false; "isSignal": true; }; "showOnEmptyValue": { "alias": "showOnEmptyValue"; "required": false; "isSignal": true; }; "valueCopyable": { "alias": "valueCopyable"; "required": false; "isSignal": true; }; "copyButtonTooltip": { "alias": "copyButtonTooltip"; "required": false; "isSignal": true; }; }, {}, ["valueChildren"], ["clr-summary-item-value", "*"], true, never>;
58
59
  }
@@ -31,7 +31,8 @@ export declare class ClrSummaryItemValue implements OnInit, AfterContentInit, Af
31
31
  get effectiveTooltip(): string | undefined;
32
32
  /**
33
33
  * Returns true if this component has any meaningful content to display.
34
- * This includes: a value, an icon, or projected content.
34
+ * This includes: a value or projected content.
35
+ * An icon is considered special content and does not count as meaningful content alone.
35
36
  */
36
37
  get hasMeaningfulContent(): boolean;
37
38
  /**