ps-helix 5.0.0 → 5.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -4
- package/fesm2022/ps-helix.mjs +59 -17
- package/fesm2022/ps-helix.mjs.map +1 -1
- package/package.json +1 -1
- package/types/ps-helix.d.ts +23 -2
package/package.json
CHANGED
package/types/ps-helix.d.ts
CHANGED
|
@@ -487,6 +487,10 @@ interface InfoCardData {
|
|
|
487
487
|
valueWidth?: string;
|
|
488
488
|
/** Optional custom CSS class for styling */
|
|
489
489
|
customClass?: string;
|
|
490
|
+
/** Whether this row's value can be copied (overrides component-level copyable) */
|
|
491
|
+
copyable?: boolean;
|
|
492
|
+
/** Raw value to copy if different from the displayed value */
|
|
493
|
+
copyValue?: string;
|
|
490
494
|
}
|
|
491
495
|
/**
|
|
492
496
|
* Configuration options for the info card
|
|
@@ -529,7 +533,7 @@ type InfoCardVariant = 'default' | 'elevated' | 'outlined';
|
|
|
529
533
|
* ></psh-info-card>
|
|
530
534
|
* ```
|
|
531
535
|
*/
|
|
532
|
-
declare class PshInfoCardComponent implements AfterContentInit {
|
|
536
|
+
declare class PshInfoCardComponent implements AfterContentInit, OnDestroy {
|
|
533
537
|
hasHeaderActions: _angular_core.WritableSignal<boolean>;
|
|
534
538
|
/** Title displayed in the card header */
|
|
535
539
|
title: _angular_core.InputSignal<string>;
|
|
@@ -557,12 +561,25 @@ declare class PshInfoCardComponent implements AfterContentInit {
|
|
|
557
561
|
disabled: _angular_core.InputSignal<boolean>;
|
|
558
562
|
/** Emitted when card is clicked */
|
|
559
563
|
clicked: _angular_core.OutputEmitterRef<MouseEvent | KeyboardEvent>;
|
|
564
|
+
/** Whether to show copy buttons on rows (opt-in) */
|
|
565
|
+
copyable: _angular_core.InputSignal<boolean>;
|
|
566
|
+
/** Label prefix for the copy button aria-label */
|
|
567
|
+
copyButtonLabel: _angular_core.InputSignal<string>;
|
|
568
|
+
/** Text shown as feedback after successful copy */
|
|
569
|
+
copyFeedbackText: _angular_core.InputSignal<string>;
|
|
570
|
+
/** Emitted when a row value is successfully copied */
|
|
571
|
+
copied: _angular_core.OutputEmitterRef<InfoCardData>;
|
|
572
|
+
/** Emitted when a copy attempt fails */
|
|
573
|
+
copyFailed: _angular_core.OutputEmitterRef<InfoCardData>;
|
|
574
|
+
/** Tracks the row index currently showing success feedback */
|
|
575
|
+
copiedRowIndex: _angular_core.WritableSignal<number | null>;
|
|
560
576
|
/** Whether to auto-enable full width buttons on mobile (default: true) */
|
|
561
577
|
autoFullWidthOnMobile: _angular_core.InputSignal<boolean>;
|
|
562
578
|
/** Signal to track if viewport is mobile */
|
|
563
579
|
isMobile: _angular_core.WritableSignal<boolean>;
|
|
564
580
|
private platformId;
|
|
565
581
|
private resizeObserver?;
|
|
582
|
+
private feedbackTimeout?;
|
|
566
583
|
/** Determines if the empty state should be shown */
|
|
567
584
|
shouldShowEmptyState: _angular_core.Signal<boolean | undefined>;
|
|
568
585
|
/** Returns the empty state message to display */
|
|
@@ -593,8 +610,11 @@ declare class PshInfoCardComponent implements AfterContentInit {
|
|
|
593
610
|
* Handles keyboard navigation
|
|
594
611
|
*/
|
|
595
612
|
handleKeydown(event: KeyboardEvent): void;
|
|
613
|
+
isRowCopyable(item: InfoCardData): boolean;
|
|
614
|
+
hasNonEmptyValue(item: InfoCardData): boolean;
|
|
615
|
+
copyRowValue(item: InfoCardData, index: number): void;
|
|
596
616
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PshInfoCardComponent, never>;
|
|
597
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<PshInfoCardComponent, "psh-info-card", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "cssClass": { "alias": "cssClass"; "required": false; "isSignal": true; }; "customStyle": { "alias": "customStyle"; "required": false; "isSignal": true; }; "interactive": { "alias": "interactive"; "required": false; "isSignal": true; }; "hoverable": { "alias": "hoverable"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "autoFullWidthOnMobile": { "alias": "autoFullWidthOnMobile"; "required": false; "isSignal": true; }; }, { "clicked": "clicked"; }, never, ["[card-header-actions]", "[card-actions]"], true, never>;
|
|
617
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<PshInfoCardComponent, "psh-info-card", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "cssClass": { "alias": "cssClass"; "required": false; "isSignal": true; }; "customStyle": { "alias": "customStyle"; "required": false; "isSignal": true; }; "interactive": { "alias": "interactive"; "required": false; "isSignal": true; }; "hoverable": { "alias": "hoverable"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "copyable": { "alias": "copyable"; "required": false; "isSignal": true; }; "copyButtonLabel": { "alias": "copyButtonLabel"; "required": false; "isSignal": true; }; "copyFeedbackText": { "alias": "copyFeedbackText"; "required": false; "isSignal": true; }; "autoFullWidthOnMobile": { "alias": "autoFullWidthOnMobile"; "required": false; "isSignal": true; }; }, { "clicked": "clicked"; "copied": "copied"; "copyFailed": "copyFailed"; }, never, ["[card-header-actions]", "[card-actions]"], true, never>;
|
|
598
618
|
}
|
|
599
619
|
|
|
600
620
|
/**
|
|
@@ -1024,6 +1044,7 @@ declare class PshMenuComponent<T = string> {
|
|
|
1024
1044
|
showTooltip: _angular_core.Signal<boolean>;
|
|
1025
1045
|
constructor();
|
|
1026
1046
|
private getState;
|
|
1047
|
+
handleItemClick(item: MenuItem<T>, event: Event, isChild: boolean): void;
|
|
1027
1048
|
toggleItem(item: MenuItem<T>, event?: Event): void;
|
|
1028
1049
|
toggleCollapse(): void;
|
|
1029
1050
|
isExpanded(item: MenuItem<T>): boolean;
|