@pecb-ui/components 1.1.5 → 1.1.7
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/feedback/index.d.ts +1 -0
- package/fesm2022/pecb-ui-components-feedback.mjs +17 -0
- package/fesm2022/pecb-ui-components-feedback.mjs.map +1 -0
- package/fesm2022/pecb-ui-components-forms.mjs +17 -0
- package/fesm2022/pecb-ui-components-forms.mjs.map +1 -0
- package/fesm2022/pecb-ui-components-overlays.mjs +17 -0
- package/fesm2022/pecb-ui-components-overlays.mjs.map +1 -0
- package/fesm2022/pecb-ui-components-tables.mjs +16 -0
- package/fesm2022/pecb-ui-components-tables.mjs.map +1 -0
- package/fesm2022/pecb-ui-components.mjs +7030 -455
- package/fesm2022/pecb-ui-components.mjs.map +1 -1
- package/forms/index.d.ts +1 -0
- package/index.d.ts +857 -152
- package/overlays/index.d.ts +1 -0
- package/package.json +17 -1
- package/tables/index.d.ts +1 -0
package/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { ElementRef, ChangeDetectorRef, TemplateRef, Type,
|
|
2
|
+
import { ElementRef, ChangeDetectorRef, TemplateRef, Type, OnDestroy, AfterViewInit, QueryList, OnInit, OnChanges } from '@angular/core';
|
|
3
3
|
import * as i1 from '@angular/common';
|
|
4
4
|
import * as _angular_platform_browser from '@angular/platform-browser';
|
|
5
5
|
import { SafeHtml, DomSanitizer } from '@angular/platform-browser';
|
|
@@ -7,10 +7,11 @@ import { ControlValueAccessor } from '@angular/forms';
|
|
|
7
7
|
import { Observable } from 'rxjs';
|
|
8
8
|
|
|
9
9
|
type ButtonVariant = 'primary' | 'primary-outline' | 'primary-2' | 'primary-2-outline' | 'neutral' | 'neutral-outline' | 'secondary' | 'text' | 'text-muted' | 'text-brand' | 'destructive' | 'destructive-outline';
|
|
10
|
-
type ButtonSize = 'sm' | 'md' | 'lg';
|
|
10
|
+
type ButtonSize = 'sm' | 'md' | 'lg' | 'xl';
|
|
11
11
|
type ButtonIconStyle = 'none' | 'leading' | 'trailing' | 'icon-only';
|
|
12
12
|
declare class ButtonComponent {
|
|
13
13
|
private readonly sanitizer;
|
|
14
|
+
private readonly registry;
|
|
14
15
|
id: _angular_core.InputSignal<string>;
|
|
15
16
|
/**
|
|
16
17
|
* The visual style variant of the button
|
|
@@ -25,7 +26,14 @@ declare class ButtonComponent {
|
|
|
25
26
|
*/
|
|
26
27
|
iconStyle: _angular_core.InputSignal<ButtonIconStyle>;
|
|
27
28
|
/**
|
|
28
|
-
* Icon to display (used with iconStyle)
|
|
29
|
+
* Icon to display (used with `iconStyle`).
|
|
30
|
+
*
|
|
31
|
+
* Accepts either:
|
|
32
|
+
* - a **registered icon name** (e.g. `"refresh-01"`), resolved from the
|
|
33
|
+
* {@link IconRegistry} — the built-in PECB icon set is available by default; or
|
|
34
|
+
* - a **raw inline SVG string** (anything starting with `<`).
|
|
35
|
+
*
|
|
36
|
+
* An unrecognised value renders nothing (no icon).
|
|
29
37
|
*/
|
|
30
38
|
icon: _angular_core.InputSignal<string | undefined>;
|
|
31
39
|
/**
|
|
@@ -88,7 +96,12 @@ declare class ButtonComponent {
|
|
|
88
96
|
get showTrailingIcon(): boolean;
|
|
89
97
|
get isIconOnly(): boolean;
|
|
90
98
|
get loadingText(): string;
|
|
91
|
-
|
|
99
|
+
/**
|
|
100
|
+
* Resolve the `icon` input to an SVG string. A value starting with `<` is
|
|
101
|
+
* treated as a raw inline SVG and passed through; otherwise it is looked up
|
|
102
|
+
* as a registered icon name. Returns `''` when unset or unresolved.
|
|
103
|
+
*/
|
|
104
|
+
get resolvedIconSvg(): string;
|
|
92
105
|
get safeIconHtml(): SafeHtml;
|
|
93
106
|
onClick(event: MouseEvent): void;
|
|
94
107
|
onKeyDown(event: KeyboardEvent): void;
|
|
@@ -203,8 +216,24 @@ declare class PaginationComponent {
|
|
|
203
216
|
maxVisiblePages: _angular_core.InputSignal<number>;
|
|
204
217
|
disabled: _angular_core.InputSignal<boolean>;
|
|
205
218
|
ariaLabel: _angular_core.InputSignal<string>;
|
|
219
|
+
/** Aria-label for the "previous page" button. */
|
|
220
|
+
previousPageAriaLabel: _angular_core.InputSignal<string>;
|
|
221
|
+
/** Aria-label for the "next page" button. */
|
|
222
|
+
nextPageAriaLabel: _angular_core.InputSignal<string>;
|
|
223
|
+
/** Aria-label for the page-number button group (`role="group"`). */
|
|
224
|
+
pageNavigationAriaLabel: _angular_core.InputSignal<string>;
|
|
225
|
+
/** Aria-label prefix for each page-number button. Rendered as `<this> <n>`. */
|
|
226
|
+
pageAriaLabel: _angular_core.InputSignal<string>;
|
|
227
|
+
/** Aria-label for the page-size listbox menu. */
|
|
228
|
+
pageSizeListboxAriaLabel: _angular_core.InputSignal<string>;
|
|
229
|
+
/** Visible "items per page" label next to the size selector. */
|
|
230
|
+
itemsPerPageLabel: _angular_core.InputSignal<string>;
|
|
231
|
+
/** Template for the items-info text (full/compact variants). Placeholders:
|
|
232
|
+
* `{start}`, `{end}`, `{total}` — replaced with the current values. */
|
|
233
|
+
itemsInfoTemplate: _angular_core.InputSignal<string>;
|
|
234
|
+
/** Template for the items-info text in the `minimal`/`centered` variants. */
|
|
235
|
+
itemsInfoCompactTemplate: _angular_core.InputSignal<string>;
|
|
206
236
|
pageChange: _angular_core.OutputEmitterRef<PageChangeEvent>;
|
|
207
|
-
pageSizeChange: _angular_core.OutputEmitterRef<number>;
|
|
208
237
|
readonly totalPages: _angular_core.Signal<number>;
|
|
209
238
|
readonly visiblePages: _angular_core.Signal<(string | number)[]>;
|
|
210
239
|
isDropdownOpen: _angular_core.WritableSignal<boolean>;
|
|
@@ -229,7 +258,7 @@ declare class PaginationComponent {
|
|
|
229
258
|
private emitPageChange;
|
|
230
259
|
private computeVisiblePages;
|
|
231
260
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PaginationComponent, never>;
|
|
232
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<PaginationComponent, "pecb-pagination", never, { "totalItems": { "alias": "totalItems"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "currentPage": { "alias": "currentPage"; "required": false; "isSignal": true; }; "pageSizeOptions": { "alias": "pageSizeOptions"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "showPageSizeSelector": { "alias": "showPageSizeSelector"; "required": false; "isSignal": true; }; "showItemsInfo": { "alias": "showItemsInfo"; "required": false; "isSignal": true; }; "maxVisiblePages": { "alias": "maxVisiblePages"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "aria-label"; "required": false; "isSignal": true; }; }
|
|
261
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<PaginationComponent, "pecb-pagination", never, { "totalItems": { "alias": "totalItems"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "currentPage": { "alias": "currentPage"; "required": false; "isSignal": true; }; "pageSizeOptions": { "alias": "pageSizeOptions"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "showPageSizeSelector": { "alias": "showPageSizeSelector"; "required": false; "isSignal": true; }; "showItemsInfo": { "alias": "showItemsInfo"; "required": false; "isSignal": true; }; "maxVisiblePages": { "alias": "maxVisiblePages"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "aria-label"; "required": false; "isSignal": true; }; "previousPageAriaLabel": { "alias": "previousPageAriaLabel"; "required": false; "isSignal": true; }; "nextPageAriaLabel": { "alias": "nextPageAriaLabel"; "required": false; "isSignal": true; }; "pageNavigationAriaLabel": { "alias": "pageNavigationAriaLabel"; "required": false; "isSignal": true; }; "pageAriaLabel": { "alias": "pageAriaLabel"; "required": false; "isSignal": true; }; "pageSizeListboxAriaLabel": { "alias": "pageSizeListboxAriaLabel"; "required": false; "isSignal": true; }; "itemsPerPageLabel": { "alias": "itemsPerPageLabel"; "required": false; "isSignal": true; }; "itemsInfoTemplate": { "alias": "itemsInfoTemplate"; "required": false; "isSignal": true; }; "itemsInfoCompactTemplate": { "alias": "itemsInfoCompactTemplate"; "required": false; "isSignal": true; }; }, { "pageSize": "pageSizeChange"; "currentPage": "currentPageChange"; "pageChange": "pageChange"; }, never, never, true, never>;
|
|
233
262
|
}
|
|
234
263
|
|
|
235
264
|
type TableSize = 'sm' | 'md' | 'lg';
|
|
@@ -399,14 +428,16 @@ declare class TableComponent {
|
|
|
399
428
|
* ARIA label for the table
|
|
400
429
|
*/
|
|
401
430
|
ariaLabel: _angular_core.InputSignal<string>;
|
|
431
|
+
/** Visible "Loading..." text shown while data is loading. */
|
|
432
|
+
loadingText: _angular_core.InputSignal<string>;
|
|
433
|
+
/** Aria-label for the header-row "select all" checkbox. */
|
|
434
|
+
selectAllAriaLabel: _angular_core.InputSignal<string>;
|
|
435
|
+
/** Aria-label prefix for each row's selection checkbox. Rendered as `<this> <n>`. */
|
|
436
|
+
selectRowAriaLabel: _angular_core.InputSignal<string>;
|
|
402
437
|
/**
|
|
403
438
|
* Emitted when a page change occurs
|
|
404
439
|
*/
|
|
405
440
|
pageChange: _angular_core.OutputEmitterRef<PageChangeEvent>;
|
|
406
|
-
/**
|
|
407
|
-
* Emitted when page size changes
|
|
408
|
-
*/
|
|
409
|
-
pageSizeChange: _angular_core.OutputEmitterRef<number>;
|
|
410
441
|
/**
|
|
411
442
|
* Emitted when a row is clicked
|
|
412
443
|
*/
|
|
@@ -466,31 +497,38 @@ declare class TableComponent {
|
|
|
466
497
|
getLinkHref(value: string): string;
|
|
467
498
|
private emitSelectionChange;
|
|
468
499
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TableComponent, never>;
|
|
469
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableComponent, "pecb-table", never, { "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "showHeader": { "alias": "showHeader"; "required": false; "isSignal": true; }; "hoverable": { "alias": "hoverable"; "required": false; "isSignal": true; }; "showPagination": { "alias": "showPagination"; "required": false; "isSignal": true; }; "totalItems": { "alias": "totalItems"; "required": false; "isSignal": true; }; "currentPage": { "alias": "currentPage"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "pageSizeOptions": { "alias": "pageSizeOptions"; "required": false; "isSignal": true; }; "showPageSizeSelector": { "alias": "showPageSizeSelector"; "required": false; "isSignal": true; }; "paginationVariant": { "alias": "paginationVariant"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "selectable": { "alias": "selectable"; "required": false; "isSignal": true; }; "selectedIndices": { "alias": "selectedIndices"; "required": false; "isSignal": true; }; "stickyHeader": { "alias": "stickyHeader"; "required": false; "isSignal": true; }; "maxHeight": { "alias": "maxHeight"; "required": false; "isSignal": true; }; "sortColumn": { "alias": "sortColumn"; "required": false; "isSignal": true; }; "sortDirection": { "alias": "sortDirection"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "aria-label"; "required": false; "isSignal": true; }; }, { "currentPage": "currentPageChange"; "pageSize": "pageSizeChange"; "selectedIndices": "selectedIndicesChange"; "sortColumn": "sortColumnChange"; "sortDirection": "sortDirectionChange"; "pageChange": "pageChange"; "
|
|
500
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TableComponent, "pecb-table", never, { "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "showHeader": { "alias": "showHeader"; "required": false; "isSignal": true; }; "hoverable": { "alias": "hoverable"; "required": false; "isSignal": true; }; "showPagination": { "alias": "showPagination"; "required": false; "isSignal": true; }; "totalItems": { "alias": "totalItems"; "required": false; "isSignal": true; }; "currentPage": { "alias": "currentPage"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "pageSizeOptions": { "alias": "pageSizeOptions"; "required": false; "isSignal": true; }; "showPageSizeSelector": { "alias": "showPageSizeSelector"; "required": false; "isSignal": true; }; "paginationVariant": { "alias": "paginationVariant"; "required": false; "isSignal": true; }; "emptyMessage": { "alias": "emptyMessage"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "selectable": { "alias": "selectable"; "required": false; "isSignal": true; }; "selectedIndices": { "alias": "selectedIndices"; "required": false; "isSignal": true; }; "stickyHeader": { "alias": "stickyHeader"; "required": false; "isSignal": true; }; "maxHeight": { "alias": "maxHeight"; "required": false; "isSignal": true; }; "sortColumn": { "alias": "sortColumn"; "required": false; "isSignal": true; }; "sortDirection": { "alias": "sortDirection"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "aria-label"; "required": false; "isSignal": true; }; "loadingText": { "alias": "loadingText"; "required": false; "isSignal": true; }; "selectAllAriaLabel": { "alias": "selectAllAriaLabel"; "required": false; "isSignal": true; }; "selectRowAriaLabel": { "alias": "selectRowAriaLabel"; "required": false; "isSignal": true; }; }, { "currentPage": "currentPageChange"; "pageSize": "pageSizeChange"; "selectedIndices": "selectedIndicesChange"; "sortColumn": "sortColumnChange"; "sortDirection": "sortDirectionChange"; "pageChange": "pageChange"; "rowClick": "rowClick"; "rowAction": "rowAction"; "sortChange": "sortChange"; "selectionChange": "selectionChange"; }, ["emptyTemplate", "loadingTemplate"], never, true, never>;
|
|
470
501
|
}
|
|
471
502
|
|
|
472
503
|
type TabStyle = 'rounded' | 'line';
|
|
473
504
|
type TabSize = 'sm' | 'md';
|
|
474
505
|
declare class TabComponent {
|
|
506
|
+
private readonly registry;
|
|
507
|
+
private readonly sanitizer;
|
|
475
508
|
id: _angular_core.InputSignal<string>;
|
|
476
509
|
tabStyle: _angular_core.InputSignal<TabStyle>;
|
|
477
510
|
size: _angular_core.InputSignal<TabSize>;
|
|
478
511
|
label: _angular_core.InputSignal<string>;
|
|
479
|
-
|
|
512
|
+
/** Icon name resolved through the IconRegistry, or a raw SVG string. */
|
|
513
|
+
icon: _angular_core.InputSignal<string | undefined>;
|
|
480
514
|
active: _angular_core.InputSignal<boolean>;
|
|
481
515
|
disabled: _angular_core.InputSignal<boolean>;
|
|
482
516
|
closable: _angular_core.InputSignal<boolean>;
|
|
483
517
|
ariaLabel: _angular_core.InputSignal<string | undefined>;
|
|
484
518
|
ariaControls: _angular_core.InputSignal<string | undefined>;
|
|
485
519
|
ariaSelected: _angular_core.InputSignal<boolean | undefined>;
|
|
520
|
+
/** Aria-label prefix for the close (×) button. Rendered as `<this> <label>`. */
|
|
521
|
+
closeAriaLabel: _angular_core.InputSignal<string>;
|
|
486
522
|
clicked: _angular_core.OutputEmitterRef<string>;
|
|
487
523
|
closed: _angular_core.OutputEmitterRef<string>;
|
|
524
|
+
/** Resolved icon SVG — looks the name up in the IconRegistry, or falls back to a raw SVG string. */
|
|
525
|
+
iconSvg: _angular_core.Signal<SafeHtml>;
|
|
488
526
|
get tabClasses(): string[];
|
|
489
527
|
onClick(event: MouseEvent): void;
|
|
490
528
|
onClose(event: MouseEvent): void;
|
|
491
529
|
onKeyDown(event: KeyboardEvent): void;
|
|
492
530
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabComponent, never>;
|
|
493
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TabComponent, "pecb-tab", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "tabStyle": { "alias": "tabStyle"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "closable": { "alias": "closable"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaControls": { "alias": "ariaControls"; "required": false; "isSignal": true; }; "ariaSelected": { "alias": "ariaSelected"; "required": false; "isSignal": true; }; }, { "clicked": "clicked"; "closed": "closed"; }, never, never, true, never>;
|
|
531
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TabComponent, "pecb-tab", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "tabStyle": { "alias": "tabStyle"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "closable": { "alias": "closable"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaControls": { "alias": "ariaControls"; "required": false; "isSignal": true; }; "ariaSelected": { "alias": "ariaSelected"; "required": false; "isSignal": true; }; "closeAriaLabel": { "alias": "closeAriaLabel"; "required": false; "isSignal": true; }; }, { "clicked": "clicked"; "closed": "closed"; }, never, never, true, never>;
|
|
494
532
|
}
|
|
495
533
|
|
|
496
534
|
type DatepickerSize = 'sm' | 'md' | 'lg' | 'xl';
|
|
@@ -545,6 +583,16 @@ declare class DatepickerComponent implements ControlValueAccessor {
|
|
|
545
583
|
* Maximum selectable date
|
|
546
584
|
*/
|
|
547
585
|
maxDate: _angular_core.InputSignal<Date | undefined>;
|
|
586
|
+
/** Aria-label for the "clear date" (×) button. */
|
|
587
|
+
clearDateAriaLabel: _angular_core.InputSignal<string>;
|
|
588
|
+
/** Aria-label for the "open calendar" button. */
|
|
589
|
+
openCalendarAriaLabel: _angular_core.InputSignal<string>;
|
|
590
|
+
/** Aria-label for the calendar popup dialog. */
|
|
591
|
+
calendarAriaLabel: _angular_core.InputSignal<string>;
|
|
592
|
+
/** Aria-label for the "previous month" navigation button. */
|
|
593
|
+
previousMonthAriaLabel: _angular_core.InputSignal<string>;
|
|
594
|
+
/** Aria-label for the "next month" navigation button. */
|
|
595
|
+
nextMonthAriaLabel: _angular_core.InputSignal<string>;
|
|
548
596
|
/**
|
|
549
597
|
* Event emitted when date is selected
|
|
550
598
|
*/
|
|
@@ -584,7 +632,7 @@ declare class DatepickerComponent implements ControlValueAccessor {
|
|
|
584
632
|
registerOnTouched(fn: () => void): void;
|
|
585
633
|
setDisabledState(isDisabled: boolean): void;
|
|
586
634
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<DatepickerComponent, never>;
|
|
587
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<DatepickerComponent, "pecb-datepicker", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "dateFormat": { "alias": "dateFormat"; "required": false; "isSignal": true; }; "minDate": { "alias": "minDate"; "required": false; "isSignal": true; }; "maxDate": { "alias": "maxDate"; "required": false; "isSignal": true; }; }, { "disabled": "disabledChange"; "dateChange": "dateChange"; "opened": "opened"; "closed": "closed"; }, never, never, true, never>;
|
|
635
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<DatepickerComponent, "pecb-datepicker", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "dateFormat": { "alias": "dateFormat"; "required": false; "isSignal": true; }; "minDate": { "alias": "minDate"; "required": false; "isSignal": true; }; "maxDate": { "alias": "maxDate"; "required": false; "isSignal": true; }; "clearDateAriaLabel": { "alias": "clearDateAriaLabel"; "required": false; "isSignal": true; }; "openCalendarAriaLabel": { "alias": "openCalendarAriaLabel"; "required": false; "isSignal": true; }; "calendarAriaLabel": { "alias": "calendarAriaLabel"; "required": false; "isSignal": true; }; "previousMonthAriaLabel": { "alias": "previousMonthAriaLabel"; "required": false; "isSignal": true; }; "nextMonthAriaLabel": { "alias": "nextMonthAriaLabel"; "required": false; "isSignal": true; }; }, { "disabled": "disabledChange"; "dateChange": "dateChange"; "opened": "opened"; "closed": "closed"; }, never, never, true, never>;
|
|
588
636
|
}
|
|
589
637
|
|
|
590
638
|
type InputType = 'text' | 'email' | 'password' | 'number' | 'tel' | 'url' | 'search';
|
|
@@ -681,6 +729,12 @@ declare class InputComponent implements ControlValueAccessor {
|
|
|
681
729
|
* Helper text to display below input
|
|
682
730
|
*/
|
|
683
731
|
helperText: _angular_core.InputSignal<string | undefined>;
|
|
732
|
+
/** Aria-label for the "clear input" (×) button. */
|
|
733
|
+
clearAriaLabel: _angular_core.InputSignal<string>;
|
|
734
|
+
/** Aria-label for the password-toggle button when password is hidden. */
|
|
735
|
+
showPasswordAriaLabel: _angular_core.InputSignal<string>;
|
|
736
|
+
/** Aria-label for the password-toggle button when password is visible. */
|
|
737
|
+
hidePasswordAriaLabel: _angular_core.InputSignal<string>;
|
|
684
738
|
/**
|
|
685
739
|
* Icon to display - can be a predefined name ('email', 'search', 'user') or custom SVG string
|
|
686
740
|
*/
|
|
@@ -764,7 +818,7 @@ declare class InputComponent implements ControlValueAccessor {
|
|
|
764
818
|
registerOnTouched(fn: () => void): void;
|
|
765
819
|
setDisabledState(isDisabled: boolean): void;
|
|
766
820
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<InputComponent, never>;
|
|
767
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<InputComponent, "pecb-input", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "helperText": { "alias": "helperText"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "iconPosition": { "alias": "iconPosition"; "required": false; "isSignal": true; }; "leftIcon": { "alias": "leftIcon"; "required": false; "isSignal": true; }; "rightIcon": { "alias": "rightIcon"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; "isSignal": true; }; "maxLength": { "alias": "maxLength"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "autocomplete": { "alias": "autocomplete"; "required": false; "isSignal": true; }; "showInfoIcon": { "alias": "showInfoIcon"; "required": false; "isSignal": true; }; }, { "disabled": "disabledChange"; "valueChange": "valueChange"; "blurred": "blurred"; "focused": "focused"; "cleared": "cleared"; }, never, never, true, never>;
|
|
821
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<InputComponent, "pecb-input", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "helperText": { "alias": "helperText"; "required": false; "isSignal": true; }; "clearAriaLabel": { "alias": "clearAriaLabel"; "required": false; "isSignal": true; }; "showPasswordAriaLabel": { "alias": "showPasswordAriaLabel"; "required": false; "isSignal": true; }; "hidePasswordAriaLabel": { "alias": "hidePasswordAriaLabel"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "iconPosition": { "alias": "iconPosition"; "required": false; "isSignal": true; }; "leftIcon": { "alias": "leftIcon"; "required": false; "isSignal": true; }; "rightIcon": { "alias": "rightIcon"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; "isSignal": true; }; "maxLength": { "alias": "maxLength"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "autocomplete": { "alias": "autocomplete"; "required": false; "isSignal": true; }; "showInfoIcon": { "alias": "showInfoIcon"; "required": false; "isSignal": true; }; }, { "disabled": "disabledChange"; "valueChange": "valueChange"; "blurred": "blurred"; "focused": "focused"; "cleared": "cleared"; }, never, never, true, never>;
|
|
768
822
|
}
|
|
769
823
|
|
|
770
824
|
type RadioVariant = 'dot' | 'filled';
|
|
@@ -817,7 +871,8 @@ declare class CheckboxComponent implements ControlValueAccessor {
|
|
|
817
871
|
}
|
|
818
872
|
|
|
819
873
|
type ToggleLabelPosition = 'right' | 'left';
|
|
820
|
-
|
|
874
|
+
/** `'md'` is the default size; `'sm'` renders a compact toggle. */
|
|
875
|
+
type ToggleSize = 'sm' | 'md';
|
|
821
876
|
declare class ToggleComponent implements ControlValueAccessor {
|
|
822
877
|
id: _angular_core.InputSignal<string>;
|
|
823
878
|
name: _angular_core.InputSignal<string | undefined>;
|
|
@@ -832,8 +887,8 @@ declare class ToggleComponent implements ControlValueAccessor {
|
|
|
832
887
|
thumbColor: _angular_core.InputSignal<string | undefined>;
|
|
833
888
|
/** Show a check icon when on and an X icon when off, on the side opposite the thumb. */
|
|
834
889
|
showStatusIcons: _angular_core.InputSignal<boolean>;
|
|
835
|
-
/**
|
|
836
|
-
size: _angular_core.InputSignal<
|
|
890
|
+
/** Size variant. Leave unset (or `'md'`) for the default size; `'sm'` is compact. */
|
|
891
|
+
size: _angular_core.InputSignal<ToggleSize | undefined>;
|
|
837
892
|
/** Drop shadow on the track. */
|
|
838
893
|
shadow: _angular_core.InputSignal<boolean>;
|
|
839
894
|
disabled: _angular_core.ModelSignal<boolean>;
|
|
@@ -863,6 +918,8 @@ declare class DropdownComponent implements ControlValueAccessor {
|
|
|
863
918
|
private readonly elementRef;
|
|
864
919
|
id: _angular_core.InputSignal<string>;
|
|
865
920
|
label: _angular_core.InputSignal<string | undefined>;
|
|
921
|
+
/** Placeholder shown in the trigger when no option is selected. */
|
|
922
|
+
placeholder: _angular_core.InputSignal<string>;
|
|
866
923
|
size: _angular_core.InputSignal<DropdownSize>;
|
|
867
924
|
options: _angular_core.InputSignal<DropdownOption[]>;
|
|
868
925
|
multiple: _angular_core.InputSignal<boolean>;
|
|
@@ -873,6 +930,12 @@ declare class DropdownComponent implements ControlValueAccessor {
|
|
|
873
930
|
error: _angular_core.InputSignal<boolean>;
|
|
874
931
|
errorMessage: _angular_core.InputSignal<string | undefined>;
|
|
875
932
|
helperText: _angular_core.InputSignal<string | undefined>;
|
|
933
|
+
/** Placeholder shown in the in-dropdown search input. */
|
|
934
|
+
searchPlaceholder: _angular_core.InputSignal<string>;
|
|
935
|
+
/** Aria-label for the "clear selection" (×) button (multi-select only). */
|
|
936
|
+
clearSelectionAriaLabel: _angular_core.InputSignal<string>;
|
|
937
|
+
/** Visible text shown when the search filter returns no options. */
|
|
938
|
+
noResultsText: _angular_core.InputSignal<string>;
|
|
876
939
|
selectionChange: _angular_core.OutputEmitterRef<unknown>;
|
|
877
940
|
isOpen: _angular_core.WritableSignal<boolean>;
|
|
878
941
|
searchQuery: _angular_core.WritableSignal<string>;
|
|
@@ -896,28 +959,30 @@ declare class DropdownComponent implements ControlValueAccessor {
|
|
|
896
959
|
registerOnTouched(fn: () => void): void;
|
|
897
960
|
setDisabledState(isDisabled: boolean): void;
|
|
898
961
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<DropdownComponent, never>;
|
|
899
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<DropdownComponent, "pecb-dropdown", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "searchable": { "alias": "searchable"; "required": false; "isSignal": true; }; "maxHeight": { "alias": "maxHeight"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "helperText": { "alias": "helperText"; "required": false; "isSignal": true; }; }, { "disabled": "disabledChange"; "selectionChange": "selectionChange"; }, never, never, true, never>;
|
|
962
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<DropdownComponent, "pecb-dropdown", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "searchable": { "alias": "searchable"; "required": false; "isSignal": true; }; "maxHeight": { "alias": "maxHeight"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "helperText": { "alias": "helperText"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "clearSelectionAriaLabel": { "alias": "clearSelectionAriaLabel"; "required": false; "isSignal": true; }; "noResultsText": { "alias": "noResultsText"; "required": false; "isSignal": true; }; }, { "disabled": "disabledChange"; "selectionChange": "selectionChange"; }, never, never, true, never>;
|
|
900
963
|
}
|
|
901
964
|
|
|
902
965
|
type RightModalSize = 'sm' | 'md' | 'lg';
|
|
903
|
-
declare class RightModalComponent implements
|
|
966
|
+
declare class RightModalComponent implements OnDestroy {
|
|
904
967
|
id: _angular_core.InputSignal<string>;
|
|
905
|
-
isOpen: _angular_core.
|
|
968
|
+
isOpen: _angular_core.ModelSignal<boolean>;
|
|
906
969
|
size: _angular_core.InputSignal<RightModalSize>;
|
|
907
970
|
closeOnBackdropClick: _angular_core.InputSignal<boolean>;
|
|
908
971
|
closeOnEscape: _angular_core.InputSignal<boolean>;
|
|
909
972
|
showCloseButton: _angular_core.InputSignal<boolean>;
|
|
973
|
+
/** Accessible label for the close (×) button. Override to localize. */
|
|
974
|
+
closeAriaLabel: _angular_core.InputSignal<string>;
|
|
910
975
|
ariaLabel: _angular_core.InputSignal<string | undefined>;
|
|
911
976
|
ariaLabelledBy: _angular_core.InputSignal<string | undefined>;
|
|
912
977
|
ariaDescribedBy: _angular_core.InputSignal<string | undefined>;
|
|
913
978
|
closed: _angular_core.OutputEmitterRef<void>;
|
|
914
979
|
opened: _angular_core.OutputEmitterRef<void>;
|
|
915
|
-
modalPanel
|
|
980
|
+
private modalPanel;
|
|
916
981
|
private cleanupFocusTrap;
|
|
917
982
|
private cleanupBodyScroll;
|
|
918
983
|
private previousActiveElement;
|
|
919
|
-
|
|
920
|
-
|
|
984
|
+
private currentlyOpen;
|
|
985
|
+
constructor();
|
|
921
986
|
ngOnDestroy(): void;
|
|
922
987
|
get modalClasses(): string[];
|
|
923
988
|
get panelClasses(): string[];
|
|
@@ -928,7 +993,7 @@ declare class RightModalComponent implements OnInit, OnDestroy, AfterViewInit {
|
|
|
928
993
|
private setupFocusTrap;
|
|
929
994
|
private cleanup;
|
|
930
995
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RightModalComponent, never>;
|
|
931
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<RightModalComponent, "pecb-right-modal", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "closeOnBackdropClick": { "alias": "closeOnBackdropClick"; "required": false; "isSignal": true; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; "isSignal": true; }; "showCloseButton": { "alias": "showCloseButton"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaLabelledBy": { "alias": "ariaLabelledBy"; "required": false; "isSignal": true; }; "ariaDescribedBy": { "alias": "ariaDescribedBy"; "required": false; "isSignal": true; }; }, { "closed": "closed"; "opened": "opened"; }, never, ["[pecbRightModalHeader]", "[pecbRightModalContent]", "*", "[pecbRightModalFooter]"], true, never>;
|
|
996
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<RightModalComponent, "pecb-right-modal", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "closeOnBackdropClick": { "alias": "closeOnBackdropClick"; "required": false; "isSignal": true; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; "isSignal": true; }; "showCloseButton": { "alias": "showCloseButton"; "required": false; "isSignal": true; }; "closeAriaLabel": { "alias": "closeAriaLabel"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaLabelledBy": { "alias": "ariaLabelledBy"; "required": false; "isSignal": true; }; "ariaDescribedBy": { "alias": "ariaDescribedBy"; "required": false; "isSignal": true; }; }, { "isOpen": "isOpenChange"; "closed": "closed"; "opened": "opened"; }, never, ["[pecbRightModalHeader]", "[pecbRightModalContent]", "*", "[pecbRightModalFooter]"], true, never>;
|
|
932
997
|
}
|
|
933
998
|
declare class RightModalHeaderDirective {
|
|
934
999
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RightModalHeaderDirective, never>;
|
|
@@ -966,6 +1031,10 @@ declare class SidebarComponent {
|
|
|
966
1031
|
collapsedLogo: _angular_core.InputSignal<string | undefined>;
|
|
967
1032
|
showFooter: _angular_core.InputSignal<boolean>;
|
|
968
1033
|
collapsed: _angular_core.ModelSignal<boolean>;
|
|
1034
|
+
/** Aria-label for the collapse-toggle button when sidebar is collapsed. */
|
|
1035
|
+
expandSidebarAriaLabel: _angular_core.InputSignal<string>;
|
|
1036
|
+
/** Aria-label for the collapse-toggle button when sidebar is expanded. */
|
|
1037
|
+
collapseSidebarAriaLabel: _angular_core.InputSignal<string>;
|
|
969
1038
|
itemClick: _angular_core.OutputEmitterRef<SidebarMenuItem>;
|
|
970
1039
|
collapseChange: _angular_core.OutputEmitterRef<boolean>;
|
|
971
1040
|
activePopupItem: _angular_core.WritableSignal<SidebarMenuItem | null>;
|
|
@@ -980,7 +1049,7 @@ declare class SidebarComponent {
|
|
|
980
1049
|
hasActiveDescendant(item: SidebarMenuItem): boolean;
|
|
981
1050
|
getItemClasses(item: SidebarMenuItem, isChild?: boolean, isNested?: boolean): string[];
|
|
982
1051
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SidebarComponent, never>;
|
|
983
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SidebarComponent, "pecb-sidebar", never, { "sections": { "alias": "sections"; "required": false; "isSignal": true; }; "showHeader": { "alias": "showHeader"; "required": false; "isSignal": true; }; "logoSrc": { "alias": "logoSrc"; "required": false; "isSignal": true; }; "sidebarLogo": { "alias": "sidebarLogo"; "required": false; "isSignal": true; }; "collapsedLogo": { "alias": "collapsedLogo"; "required": false; "isSignal": true; }; "showFooter": { "alias": "showFooter"; "required": false; "isSignal": true; }; "collapsed": { "alias": "collapsed"; "required": false; "isSignal": true; }; }, { "collapsed": "collapsedChange"; "itemClick": "itemClick"; "collapseChange": "collapseChange"; }, never, ["[sidebar-header]", "[sidebar-footer]"], true, never>;
|
|
1052
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SidebarComponent, "pecb-sidebar", never, { "sections": { "alias": "sections"; "required": false; "isSignal": true; }; "showHeader": { "alias": "showHeader"; "required": false; "isSignal": true; }; "logoSrc": { "alias": "logoSrc"; "required": false; "isSignal": true; }; "sidebarLogo": { "alias": "sidebarLogo"; "required": false; "isSignal": true; }; "collapsedLogo": { "alias": "collapsedLogo"; "required": false; "isSignal": true; }; "showFooter": { "alias": "showFooter"; "required": false; "isSignal": true; }; "collapsed": { "alias": "collapsed"; "required": false; "isSignal": true; }; "expandSidebarAriaLabel": { "alias": "expandSidebarAriaLabel"; "required": false; "isSignal": true; }; "collapseSidebarAriaLabel": { "alias": "collapseSidebarAriaLabel"; "required": false; "isSignal": true; }; }, { "collapsed": "collapsedChange"; "itemClick": "itemClick"; "collapseChange": "collapseChange"; }, never, ["[sidebar-header]", "[sidebar-footer]"], true, never>;
|
|
984
1053
|
}
|
|
985
1054
|
|
|
986
1055
|
type ConfirmationIconType = 'success' | 'warning' | 'error' | 'info';
|
|
@@ -997,6 +1066,8 @@ declare class ConfirmationComponent implements OnDestroy, AfterViewInit {
|
|
|
997
1066
|
cancelText: _angular_core.InputSignal<string>;
|
|
998
1067
|
iconType: _angular_core.InputSignal<ConfirmationIconType>;
|
|
999
1068
|
showCloseButton: _angular_core.InputSignal<boolean>;
|
|
1069
|
+
/** Accessible label for the close (×) button. Override to localize. */
|
|
1070
|
+
closeAriaLabel: _angular_core.InputSignal<string>;
|
|
1000
1071
|
closeOnBackdropClick: _angular_core.InputSignal<boolean>;
|
|
1001
1072
|
closeOnEscape: _angular_core.InputSignal<boolean>;
|
|
1002
1073
|
ariaLabel: _angular_core.InputSignal<string | undefined>;
|
|
@@ -1024,7 +1095,7 @@ declare class ConfirmationComponent implements OnDestroy, AfterViewInit {
|
|
|
1024
1095
|
private setupFocusTrap;
|
|
1025
1096
|
private cleanup;
|
|
1026
1097
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ConfirmationComponent, never>;
|
|
1027
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ConfirmationComponent, "pecb-confirmation", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "confirmText": { "alias": "confirmText"; "required": false; "isSignal": true; }; "cancelText": { "alias": "cancelText"; "required": false; "isSignal": true; }; "iconType": { "alias": "iconType"; "required": false; "isSignal": true; }; "showCloseButton": { "alias": "showCloseButton"; "required": false; "isSignal": true; }; "closeOnBackdropClick": { "alias": "closeOnBackdropClick"; "required": false; "isSignal": true; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaDescribedBy": { "alias": "ariaDescribedBy"; "required": false; "isSignal": true; }; }, { "isOpen": "isOpenChange"; "confirmed": "confirmed"; "cancelled": "cancelled"; "closed": "closed"; }, never, never, true, never>;
|
|
1098
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ConfirmationComponent, "pecb-confirmation", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "confirmText": { "alias": "confirmText"; "required": false; "isSignal": true; }; "cancelText": { "alias": "cancelText"; "required": false; "isSignal": true; }; "iconType": { "alias": "iconType"; "required": false; "isSignal": true; }; "showCloseButton": { "alias": "showCloseButton"; "required": false; "isSignal": true; }; "closeAriaLabel": { "alias": "closeAriaLabel"; "required": false; "isSignal": true; }; "closeOnBackdropClick": { "alias": "closeOnBackdropClick"; "required": false; "isSignal": true; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaDescribedBy": { "alias": "ariaDescribedBy"; "required": false; "isSignal": true; }; }, { "isOpen": "isOpenChange"; "confirmed": "confirmed"; "cancelled": "cancelled"; "closed": "closed"; }, never, never, true, never>;
|
|
1028
1099
|
}
|
|
1029
1100
|
|
|
1030
1101
|
declare class BottomSheetComponent implements OnDestroy, AfterViewInit {
|
|
@@ -1038,6 +1109,8 @@ declare class BottomSheetComponent implements OnDestroy, AfterViewInit {
|
|
|
1038
1109
|
primaryText: _angular_core.InputSignal<string>;
|
|
1039
1110
|
secondaryText: _angular_core.InputSignal<string>;
|
|
1040
1111
|
showCloseButton: _angular_core.InputSignal<boolean>;
|
|
1112
|
+
/** Accessible label for the close (×) button. Override to localize. */
|
|
1113
|
+
closeAriaLabel: _angular_core.InputSignal<string>;
|
|
1041
1114
|
closeOnBackdropClick: _angular_core.InputSignal<boolean>;
|
|
1042
1115
|
closeOnEscape: _angular_core.InputSignal<boolean>;
|
|
1043
1116
|
primaryClicked: _angular_core.OutputEmitterRef<void>;
|
|
@@ -1058,7 +1131,7 @@ declare class BottomSheetComponent implements OnDestroy, AfterViewInit {
|
|
|
1058
1131
|
private setupFocusTrap;
|
|
1059
1132
|
private cleanup;
|
|
1060
1133
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<BottomSheetComponent, never>;
|
|
1061
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<BottomSheetComponent, "pecb-bottom-sheet", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "primaryText": { "alias": "primaryText"; "required": false; "isSignal": true; }; "secondaryText": { "alias": "secondaryText"; "required": false; "isSignal": true; }; "showCloseButton": { "alias": "showCloseButton"; "required": false; "isSignal": true; }; "closeOnBackdropClick": { "alias": "closeOnBackdropClick"; "required": false; "isSignal": true; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; "isSignal": true; }; }, { "isOpen": "isOpenChange"; "primaryClicked": "primaryClicked"; "secondaryClicked": "secondaryClicked"; "closed": "closed"; }, never, ["*"], true, never>;
|
|
1134
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<BottomSheetComponent, "pecb-bottom-sheet", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "primaryText": { "alias": "primaryText"; "required": false; "isSignal": true; }; "secondaryText": { "alias": "secondaryText"; "required": false; "isSignal": true; }; "showCloseButton": { "alias": "showCloseButton"; "required": false; "isSignal": true; }; "closeAriaLabel": { "alias": "closeAriaLabel"; "required": false; "isSignal": true; }; "closeOnBackdropClick": { "alias": "closeOnBackdropClick"; "required": false; "isSignal": true; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; "isSignal": true; }; }, { "isOpen": "isOpenChange"; "primaryClicked": "primaryClicked"; "secondaryClicked": "secondaryClicked"; "closed": "closed"; }, never, ["*"], true, never>;
|
|
1062
1135
|
}
|
|
1063
1136
|
|
|
1064
1137
|
type QuizType = 'Multiple Choice' | 'True/False' | 'Scenario' | 'Essay' | string;
|
|
@@ -1254,6 +1327,8 @@ declare class TooltipDirective implements OnDestroy {
|
|
|
1254
1327
|
private appRef;
|
|
1255
1328
|
private injector;
|
|
1256
1329
|
private ref?;
|
|
1330
|
+
/** Keeps the tooltip pinned to its trigger while the page scrolls or resizes. */
|
|
1331
|
+
private readonly reposition;
|
|
1257
1332
|
onMouseEnter(): void;
|
|
1258
1333
|
onMouseLeave(): void;
|
|
1259
1334
|
onClick(): void;
|
|
@@ -1287,12 +1362,20 @@ declare class MessageItemComponent {
|
|
|
1287
1362
|
unreadCount: _angular_core.InputSignal<number>;
|
|
1288
1363
|
/** Whether this item is currently selected / active */
|
|
1289
1364
|
selected: _angular_core.InputSignal<boolean>;
|
|
1365
|
+
/** Visible "is typing" text shown when status is `typing`. */
|
|
1366
|
+
typingText: _angular_core.InputSignal<string>;
|
|
1367
|
+
/** Suffix appended to the unread badge's aria-label (e.g. `5 unread messages`). */
|
|
1368
|
+
unreadAriaSuffix: _angular_core.InputSignal<string>;
|
|
1369
|
+
/** Aria-label for the warning status icon. */
|
|
1370
|
+
warningAriaLabel: _angular_core.InputSignal<string>;
|
|
1371
|
+
/** Aria-label for the read status icon. */
|
|
1372
|
+
readAriaLabel: _angular_core.InputSignal<string>;
|
|
1290
1373
|
/** Emitted when the item is clicked */
|
|
1291
1374
|
itemClicked: _angular_core.OutputEmitterRef<void>;
|
|
1292
1375
|
initials: _angular_core.Signal<string>;
|
|
1293
1376
|
get hostClasses(): string;
|
|
1294
1377
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MessageItemComponent, never>;
|
|
1295
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MessageItemComponent, "pecb-message-item", never, { "avatarSrc": { "alias": "avatarSrc"; "required": false; "isSignal": true; }; "avatarInitials": { "alias": "avatarInitials"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "time": { "alias": "time"; "required": false; "isSignal": true; }; "preview": { "alias": "preview"; "required": false; "isSignal": true; }; "status": { "alias": "status"; "required": false; "isSignal": true; }; "unreadCount": { "alias": "unreadCount"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; }, { "itemClicked": "itemClicked"; }, never, never, true, never>;
|
|
1378
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MessageItemComponent, "pecb-message-item", never, { "avatarSrc": { "alias": "avatarSrc"; "required": false; "isSignal": true; }; "avatarInitials": { "alias": "avatarInitials"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "time": { "alias": "time"; "required": false; "isSignal": true; }; "preview": { "alias": "preview"; "required": false; "isSignal": true; }; "status": { "alias": "status"; "required": false; "isSignal": true; }; "unreadCount": { "alias": "unreadCount"; "required": false; "isSignal": true; }; "selected": { "alias": "selected"; "required": false; "isSignal": true; }; "typingText": { "alias": "typingText"; "required": false; "isSignal": true; }; "unreadAriaSuffix": { "alias": "unreadAriaSuffix"; "required": false; "isSignal": true; }; "warningAriaLabel": { "alias": "warningAriaLabel"; "required": false; "isSignal": true; }; "readAriaLabel": { "alias": "readAriaLabel"; "required": false; "isSignal": true; }; }, { "itemClicked": "itemClicked"; }, never, never, true, never>;
|
|
1296
1379
|
}
|
|
1297
1380
|
declare class MessageBubbleComponent {
|
|
1298
1381
|
/** Visual type of the message */
|
|
@@ -1312,6 +1395,12 @@ declare class MessageBubbleComponent {
|
|
|
1312
1395
|
time: _angular_core.InputSignal<string>;
|
|
1313
1396
|
/** Show read-receipt checkmark below the bubble (outgoing only) */
|
|
1314
1397
|
showReadReceipt: _angular_core.InputSignal<boolean>;
|
|
1398
|
+
/** Aria-label prefix for the document download button. Rendered as `<this> <fileName>`. */
|
|
1399
|
+
downloadAriaLabel: _angular_core.InputSignal<string>;
|
|
1400
|
+
/** Aria-label for the audio "play" button. */
|
|
1401
|
+
playAudioAriaLabel: _angular_core.InputSignal<string>;
|
|
1402
|
+
/** Aria-label for the read-receipt checkmark. */
|
|
1403
|
+
readReceiptAriaLabel: _angular_core.InputSignal<string>;
|
|
1315
1404
|
/** Avatar image URL */
|
|
1316
1405
|
avatarSrc: _angular_core.InputSignal<string>;
|
|
1317
1406
|
/** Explicit initials override — auto-derived from senderName when empty */
|
|
@@ -1343,9 +1432,13 @@ declare class MessageBubbleComponent {
|
|
|
1343
1432
|
get hostClasses(): string;
|
|
1344
1433
|
get senderLabel(): string;
|
|
1345
1434
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MessageBubbleComponent, never>;
|
|
1346
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MessageBubbleComponent, "pecb-message-bubble", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "messages": { "alias": "messages"; "required": false; "isSignal": true; }; "senderName": { "alias": "senderName"; "required": false; "isSignal": true; }; "time": { "alias": "time"; "required": false; "isSignal": true; }; "showReadReceipt": { "alias": "showReadReceipt"; "required": false; "isSignal": true; }; "avatarSrc": { "alias": "avatarSrc"; "required": false; "isSignal": true; }; "avatarInitials": { "alias": "avatarInitials"; "required": false; "isSignal": true; }; "fileName": { "alias": "fileName"; "required": false; "isSignal": true; }; "fileMeta": { "alias": "fileMeta"; "required": false; "isSignal": true; }; "thumbnailSrc": { "alias": "thumbnailSrc"; "required": false; "isSignal": true; }; "audioDuration": { "alias": "audioDuration"; "required": false; "isSignal": true; }; "waveformData": { "alias": "waveformData"; "required": false; "isSignal": true; }; "imageSrc": { "alias": "imageSrc"; "required": false; "isSignal": true; }; "imageAlt": { "alias": "imageAlt"; "required": false; "isSignal": true; }; }, { "downloadClicked": "downloadClicked"; "playClicked": "playClicked"; }, never, never, true, never>;
|
|
1435
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MessageBubbleComponent, "pecb-message-bubble", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "messages": { "alias": "messages"; "required": false; "isSignal": true; }; "senderName": { "alias": "senderName"; "required": false; "isSignal": true; }; "time": { "alias": "time"; "required": false; "isSignal": true; }; "showReadReceipt": { "alias": "showReadReceipt"; "required": false; "isSignal": true; }; "downloadAriaLabel": { "alias": "downloadAriaLabel"; "required": false; "isSignal": true; }; "playAudioAriaLabel": { "alias": "playAudioAriaLabel"; "required": false; "isSignal": true; }; "readReceiptAriaLabel": { "alias": "readReceiptAriaLabel"; "required": false; "isSignal": true; }; "avatarSrc": { "alias": "avatarSrc"; "required": false; "isSignal": true; }; "avatarInitials": { "alias": "avatarInitials"; "required": false; "isSignal": true; }; "fileName": { "alias": "fileName"; "required": false; "isSignal": true; }; "fileMeta": { "alias": "fileMeta"; "required": false; "isSignal": true; }; "thumbnailSrc": { "alias": "thumbnailSrc"; "required": false; "isSignal": true; }; "audioDuration": { "alias": "audioDuration"; "required": false; "isSignal": true; }; "waveformData": { "alias": "waveformData"; "required": false; "isSignal": true; }; "imageSrc": { "alias": "imageSrc"; "required": false; "isSignal": true; }; "imageAlt": { "alias": "imageAlt"; "required": false; "isSignal": true; }; }, { "downloadClicked": "downloadClicked"; "playClicked": "playClicked"; }, never, never, true, never>;
|
|
1347
1436
|
}
|
|
1348
1437
|
|
|
1438
|
+
declare class FullscreenModalHeaderDirective {
|
|
1439
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FullscreenModalHeaderDirective, never>;
|
|
1440
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<FullscreenModalHeaderDirective, "[pecbFullscreenModalHeader]", never, {}, {}, never, never, true, never>;
|
|
1441
|
+
}
|
|
1349
1442
|
declare class FullscreenModalContentDirective {
|
|
1350
1443
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FullscreenModalContentDirective, never>;
|
|
1351
1444
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<FullscreenModalContentDirective, "[pecbFullscreenModalContent]", never, {}, {}, never, never, true, never>;
|
|
@@ -1354,7 +1447,7 @@ declare class FullscreenModalFooterDirective {
|
|
|
1354
1447
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FullscreenModalFooterDirective, never>;
|
|
1355
1448
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<FullscreenModalFooterDirective, "[pecbFullscreenModalFooter]", never, {}, {}, never, never, true, never>;
|
|
1356
1449
|
}
|
|
1357
|
-
declare class FullscreenModalComponent implements
|
|
1450
|
+
declare class FullscreenModalComponent implements OnDestroy {
|
|
1358
1451
|
/** Unique id forwarded to the dialog element */
|
|
1359
1452
|
id: _angular_core.InputSignal<string>;
|
|
1360
1453
|
/** Controls visibility */
|
|
@@ -1363,6 +1456,8 @@ declare class FullscreenModalComponent implements OnInit, OnDestroy, AfterViewIn
|
|
|
1363
1456
|
title: _angular_core.InputSignal<string>;
|
|
1364
1457
|
/** Show or hide the built-in close (×) button */
|
|
1365
1458
|
showCloseButton: _angular_core.InputSignal<boolean>;
|
|
1459
|
+
/** Accessible label for the close (×) button. Override to localize. */
|
|
1460
|
+
closeAriaLabel: _angular_core.InputSignal<string>;
|
|
1366
1461
|
/** Close modal when clicking the backdrop */
|
|
1367
1462
|
closeOnBackdropClick: _angular_core.InputSignal<boolean>;
|
|
1368
1463
|
/** Close modal when pressing Escape */
|
|
@@ -1377,12 +1472,12 @@ declare class FullscreenModalComponent implements OnInit, OnDestroy, AfterViewIn
|
|
|
1377
1472
|
closed: _angular_core.OutputEmitterRef<void>;
|
|
1378
1473
|
/** Emitted when the modal has been opened */
|
|
1379
1474
|
opened: _angular_core.OutputEmitterRef<void>;
|
|
1380
|
-
modalPanel
|
|
1475
|
+
private modalPanel;
|
|
1381
1476
|
private cleanupFocusTrap;
|
|
1382
1477
|
private cleanupBodyScroll;
|
|
1383
1478
|
private previousActiveElement;
|
|
1384
|
-
|
|
1385
|
-
|
|
1479
|
+
private currentlyOpen;
|
|
1480
|
+
constructor();
|
|
1386
1481
|
ngOnDestroy(): void;
|
|
1387
1482
|
onBackdropClick(event: MouseEvent): void;
|
|
1388
1483
|
onKeydown(event: KeyboardEvent): void;
|
|
@@ -1394,7 +1489,7 @@ declare class FullscreenModalComponent implements OnInit, OnDestroy, AfterViewIn
|
|
|
1394
1489
|
private setupFocusTrap;
|
|
1395
1490
|
private cleanup;
|
|
1396
1491
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FullscreenModalComponent, never>;
|
|
1397
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FullscreenModalComponent, "pecb-fullscreen-modal", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "showCloseButton": { "alias": "showCloseButton"; "required": false; "isSignal": true; }; "closeOnBackdropClick": { "alias": "closeOnBackdropClick"; "required": false; "isSignal": true; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaLabelledBy": { "alias": "ariaLabelledBy"; "required": false; "isSignal": true; }; "ariaDescribedBy": { "alias": "ariaDescribedBy"; "required": false; "isSignal": true; }; }, { "isOpen": "isOpenChange"; "closed": "closed"; "opened": "opened"; }, never, ["[pecbFullscreenModalHeader]", "[pecbFullscreenModalContent]", "*", "[pecbFullscreenModalFooter]"], true, never>;
|
|
1492
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FullscreenModalComponent, "pecb-fullscreen-modal", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "showCloseButton": { "alias": "showCloseButton"; "required": false; "isSignal": true; }; "closeAriaLabel": { "alias": "closeAriaLabel"; "required": false; "isSignal": true; }; "closeOnBackdropClick": { "alias": "closeOnBackdropClick"; "required": false; "isSignal": true; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaLabelledBy": { "alias": "ariaLabelledBy"; "required": false; "isSignal": true; }; "ariaDescribedBy": { "alias": "ariaDescribedBy"; "required": false; "isSignal": true; }; }, { "isOpen": "isOpenChange"; "closed": "closed"; "opened": "opened"; }, never, ["[pecbFullscreenModalHeader]", "[pecbFullscreenModalContent]", "*", "[pecbFullscreenModalFooter]"], true, never>;
|
|
1398
1493
|
}
|
|
1399
1494
|
|
|
1400
1495
|
type StepperType = 'basic' | 'dot' | 'custom-icon' | 'navigation' | 'inline';
|
|
@@ -1654,8 +1749,12 @@ declare class CodeInputComponent implements ControlValueAccessor {
|
|
|
1654
1749
|
state: _angular_core.InputSignal<CodeInputState>;
|
|
1655
1750
|
errorMessage: _angular_core.InputSignal<string>;
|
|
1656
1751
|
showClearAll: _angular_core.InputSignal<boolean>;
|
|
1657
|
-
disabled: _angular_core.
|
|
1752
|
+
disabled: _angular_core.ModelSignal<boolean>;
|
|
1658
1753
|
ariaLabel: _angular_core.InputSignal<string>;
|
|
1754
|
+
/** Visible "Clear all" button text. */
|
|
1755
|
+
clearAllText: _angular_core.InputSignal<string>;
|
|
1756
|
+
/** Template for each cell's aria-label. Placeholders: `{index}` (1-based), `{total}`. */
|
|
1757
|
+
cellAriaLabelTemplate: _angular_core.InputSignal<string>;
|
|
1659
1758
|
completed: _angular_core.OutputEmitterRef<string>;
|
|
1660
1759
|
cleared: _angular_core.OutputEmitterRef<void>;
|
|
1661
1760
|
cells: _angular_core.WritableSignal<string[]>;
|
|
@@ -1667,6 +1766,8 @@ declare class CodeInputComponent implements ControlValueAccessor {
|
|
|
1667
1766
|
writeValue(value: string | null): void;
|
|
1668
1767
|
registerOnChange(fn: (value: string) => void): void;
|
|
1669
1768
|
registerOnTouched(fn: () => void): void;
|
|
1769
|
+
setDisabledState(isDisabled: boolean): void;
|
|
1770
|
+
getCellAriaLabel(index: number): string;
|
|
1670
1771
|
getCellClasses(index: number): string[];
|
|
1671
1772
|
onCellInput(event: Event, index: number): void;
|
|
1672
1773
|
onCellKeyDown(event: KeyboardEvent, index: number): void;
|
|
@@ -1679,7 +1780,7 @@ declare class CodeInputComponent implements ControlValueAccessor {
|
|
|
1679
1780
|
private syncInputValues;
|
|
1680
1781
|
private emitValue;
|
|
1681
1782
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<CodeInputComponent, never>;
|
|
1682
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CodeInputComponent, "pecb-code-input", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "length": { "alias": "length"; "required": false; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "state": { "alias": "state"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "showClearAll": { "alias": "showClearAll"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "completed": "completed"; "cleared": "cleared"; }, never, never, true, never>;
|
|
1783
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CodeInputComponent, "pecb-code-input", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "length": { "alias": "length"; "required": false; "isSignal": true; }; "direction": { "alias": "direction"; "required": false; "isSignal": true; }; "state": { "alias": "state"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "showClearAll": { "alias": "showClearAll"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "clearAllText": { "alias": "clearAllText"; "required": false; "isSignal": true; }; "cellAriaLabelTemplate": { "alias": "cellAriaLabelTemplate"; "required": false; "isSignal": true; }; }, { "disabled": "disabledChange"; "completed": "completed"; "cleared": "cleared"; }, never, never, true, never>;
|
|
1683
1784
|
}
|
|
1684
1785
|
|
|
1685
1786
|
/**
|
|
@@ -1850,6 +1951,16 @@ declare class CodeSnippetComponent {
|
|
|
1850
1951
|
showCopy: _angular_core.InputSignal<boolean>;
|
|
1851
1952
|
showFooter: _angular_core.InputSignal<boolean>;
|
|
1852
1953
|
ariaLabel: _angular_core.InputSignal<string>;
|
|
1954
|
+
/** Aria-label for the "copy code" buttons. */
|
|
1955
|
+
copyAriaLabel: _angular_core.InputSignal<string>;
|
|
1956
|
+
/** Aria-label for the secondary "more actions" button in `filename-actions` variant. */
|
|
1957
|
+
moreActionsAriaLabel: _angular_core.InputSignal<string>;
|
|
1958
|
+
/** Visible text and aria-label for the "Click to copy the code" banner button in `copy-banner` variant. */
|
|
1959
|
+
clickToCopyText: _angular_core.InputSignal<string>;
|
|
1960
|
+
/** Suffix appended to the character count in the footer (e.g. `100 chars`). */
|
|
1961
|
+
charsSuffix: _angular_core.InputSignal<string>;
|
|
1962
|
+
/** Suffix appended to the line count in the footer (e.g. `5 lines`). */
|
|
1963
|
+
linesSuffix: _angular_core.InputSignal<string>;
|
|
1853
1964
|
copied: _angular_core.OutputEmitterRef<string>;
|
|
1854
1965
|
copyLabel: _angular_core.WritableSignal<string>;
|
|
1855
1966
|
codeLines: _angular_core.Signal<string[]>;
|
|
@@ -1860,7 +1971,7 @@ declare class CodeSnippetComponent {
|
|
|
1860
1971
|
get snippetClasses(): string[];
|
|
1861
1972
|
onCopy(): void;
|
|
1862
1973
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<CodeSnippetComponent, never>;
|
|
1863
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CodeSnippetComponent, "pecb-code-snippet", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "code": { "alias": "code"; "required": false; "isSignal": true; }; "highlightedCode": { "alias": "highlightedCode"; "required": false; "isSignal": true; }; "language": { "alias": "language"; "required": false; "isSignal": true; }; "theme": { "alias": "theme"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "filename": { "alias": "filename"; "required": false; "isSignal": true; }; "showLineNumbers": { "alias": "showLineNumbers"; "required": false; "isSignal": true; }; "showCopy": { "alias": "showCopy"; "required": false; "isSignal": true; }; "showFooter": { "alias": "showFooter"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "copied": "copied"; }, never, ["[codeActions]"], true, never>;
|
|
1974
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CodeSnippetComponent, "pecb-code-snippet", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "code": { "alias": "code"; "required": false; "isSignal": true; }; "highlightedCode": { "alias": "highlightedCode"; "required": false; "isSignal": true; }; "language": { "alias": "language"; "required": false; "isSignal": true; }; "theme": { "alias": "theme"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "filename": { "alias": "filename"; "required": false; "isSignal": true; }; "showLineNumbers": { "alias": "showLineNumbers"; "required": false; "isSignal": true; }; "showCopy": { "alias": "showCopy"; "required": false; "isSignal": true; }; "showFooter": { "alias": "showFooter"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "copyAriaLabel": { "alias": "copyAriaLabel"; "required": false; "isSignal": true; }; "moreActionsAriaLabel": { "alias": "moreActionsAriaLabel"; "required": false; "isSignal": true; }; "clickToCopyText": { "alias": "clickToCopyText"; "required": false; "isSignal": true; }; "charsSuffix": { "alias": "charsSuffix"; "required": false; "isSignal": true; }; "linesSuffix": { "alias": "linesSuffix"; "required": false; "isSignal": true; }; }, { "copied": "copied"; }, never, ["[codeActions]"], true, never>;
|
|
1864
1975
|
}
|
|
1865
1976
|
|
|
1866
1977
|
/**
|
|
@@ -2070,7 +2181,12 @@ interface ClosableWithHooks {
|
|
|
2070
2181
|
afterClose?: () => void;
|
|
2071
2182
|
}
|
|
2072
2183
|
/**
|
|
2073
|
-
* Interface for table column definition
|
|
2184
|
+
* Interface for table column definition.
|
|
2185
|
+
*
|
|
2186
|
+
* @deprecated Not consumed by `TableComponent` — its column input is typed as
|
|
2187
|
+
* `PecbTableColumn[]` (exported from `table.component.ts`). Define table columns
|
|
2188
|
+
* with `PecbTableColumn` instead. This interface is retained for backward
|
|
2189
|
+
* compatibility and is scheduled for removal in a future major release.
|
|
2074
2190
|
*/
|
|
2075
2191
|
interface TableColumn<T = unknown> {
|
|
2076
2192
|
/** Unique column key */
|
|
@@ -2325,6 +2441,10 @@ declare class HeaderSearchComponent {
|
|
|
2325
2441
|
private readonly sanitizer;
|
|
2326
2442
|
/** Search placeholder text */
|
|
2327
2443
|
placeholder: _angular_core.InputSignal<string>;
|
|
2444
|
+
/** Aria-label for the mobile search-toggle button. */
|
|
2445
|
+
openSearchAriaLabel: _angular_core.InputSignal<string>;
|
|
2446
|
+
/** Aria-label for the search input itself. */
|
|
2447
|
+
searchAriaLabel: _angular_core.InputSignal<string>;
|
|
2328
2448
|
/** Category options. When provided, embeds a category dropdown. */
|
|
2329
2449
|
categories: _angular_core.InputSignal<HeaderSearchCategory[]>;
|
|
2330
2450
|
/** Emits the search query as the user types */
|
|
@@ -2347,7 +2467,7 @@ declare class HeaderSearchComponent {
|
|
|
2347
2467
|
toggleCategory(): void;
|
|
2348
2468
|
onCategorySelect(cat: HeaderSearchCategory): void;
|
|
2349
2469
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<HeaderSearchComponent, never>;
|
|
2350
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<HeaderSearchComponent, "pecb-header-search", never, { "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "categories": { "alias": "categories"; "required": false; "isSignal": true; }; }, { "searchChange": "searchChange"; "searchSubmit": "searchSubmit"; "categoryChange": "categoryChange"; }, never, never, true, never>;
|
|
2470
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<HeaderSearchComponent, "pecb-header-search", never, { "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "openSearchAriaLabel": { "alias": "openSearchAriaLabel"; "required": false; "isSignal": true; }; "searchAriaLabel": { "alias": "searchAriaLabel"; "required": false; "isSignal": true; }; "categories": { "alias": "categories"; "required": false; "isSignal": true; }; }, { "searchChange": "searchChange"; "searchSubmit": "searchSubmit"; "categoryChange": "categoryChange"; }, never, never, true, never>;
|
|
2351
2471
|
}
|
|
2352
2472
|
declare class HeaderLanguageComponent {
|
|
2353
2473
|
private readonly el;
|
|
@@ -2394,12 +2514,14 @@ declare class HeaderUserComponent {
|
|
|
2394
2514
|
avatarInitials: _angular_core.InputSignal<string | undefined>;
|
|
2395
2515
|
/** Avatar shape — `'circle'` for users, `'square'` for companies */
|
|
2396
2516
|
avatarShape: _angular_core.InputSignal<"circle" | "square">;
|
|
2517
|
+
/** Prefix for the user button's aria-label. Rendered as `<this> <name>`. */
|
|
2518
|
+
userMenuAriaLabelPrefix: _angular_core.InputSignal<string>;
|
|
2397
2519
|
/** Emits when the user profile area is clicked */
|
|
2398
2520
|
userClick: _angular_core.OutputEmitterRef<void>;
|
|
2399
2521
|
hostClasses: _angular_core.Signal<string>;
|
|
2400
2522
|
onUserClick(): void;
|
|
2401
2523
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<HeaderUserComponent, never>;
|
|
2402
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<HeaderUserComponent, "pecb-header-user", never, { "name": { "alias": "name"; "required": true; "isSignal": true; }; "role": { "alias": "role"; "required": true; "isSignal": true; }; "avatarSrc": { "alias": "avatarSrc"; "required": false; "isSignal": true; }; "avatarInitials": { "alias": "avatarInitials"; "required": false; "isSignal": true; }; "avatarShape": { "alias": "avatarShape"; "required": false; "isSignal": true; }; }, { "userClick": "userClick"; }, never, never, true, never>;
|
|
2524
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<HeaderUserComponent, "pecb-header-user", never, { "name": { "alias": "name"; "required": true; "isSignal": true; }; "role": { "alias": "role"; "required": true; "isSignal": true; }; "avatarSrc": { "alias": "avatarSrc"; "required": false; "isSignal": true; }; "avatarInitials": { "alias": "avatarInitials"; "required": false; "isSignal": true; }; "avatarShape": { "alias": "avatarShape"; "required": false; "isSignal": true; }; "userMenuAriaLabelPrefix": { "alias": "userMenuAriaLabelPrefix"; "required": false; "isSignal": true; }; }, { "userClick": "userClick"; }, never, never, true, never>;
|
|
2403
2525
|
}
|
|
2404
2526
|
declare class HeaderDividerComponent {
|
|
2405
2527
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<HeaderDividerComponent, never>;
|
|
@@ -2439,6 +2561,24 @@ declare class VirtualTableComponent {
|
|
|
2439
2561
|
currentPage: _angular_core.InputSignal<number>;
|
|
2440
2562
|
showPagination: _angular_core.InputSignal<boolean>;
|
|
2441
2563
|
ariaLabel: _angular_core.InputSignal<string>;
|
|
2564
|
+
/** Aria-label for the filter button. */
|
|
2565
|
+
filterAriaLabel: _angular_core.InputSignal<string>;
|
|
2566
|
+
/** Visually-hidden "Expand" text in the expand-column header. */
|
|
2567
|
+
expandHeaderLabel: _angular_core.InputSignal<string>;
|
|
2568
|
+
/** Aria-label for the row-expand toggle when row is collapsed. */
|
|
2569
|
+
expandRowAriaLabel: _angular_core.InputSignal<string>;
|
|
2570
|
+
/** Aria-label for the row-expand toggle when row is expanded. */
|
|
2571
|
+
collapseRowAriaLabel: _angular_core.InputSignal<string>;
|
|
2572
|
+
/** Aria-label for the "previous page" pagination button. */
|
|
2573
|
+
previousPageAriaLabel: _angular_core.InputSignal<string>;
|
|
2574
|
+
/** Aria-label for the "next page" pagination button. */
|
|
2575
|
+
nextPageAriaLabel: _angular_core.InputSignal<string>;
|
|
2576
|
+
/** Aria-label prefix for each page-number button. Rendered as `<this> <n>`. */
|
|
2577
|
+
pageAriaLabel: _angular_core.InputSignal<string>;
|
|
2578
|
+
/** Visible "Items per page:" label next to the page-size indicator. */
|
|
2579
|
+
itemsPerPageLabel: _angular_core.InputSignal<string>;
|
|
2580
|
+
/** Template for the pagination range text. Placeholders: `{start}`, `{end}`, `{total}`. */
|
|
2581
|
+
itemsInfoTemplate: _angular_core.InputSignal<string>;
|
|
2442
2582
|
rowToggled: _angular_core.OutputEmitterRef<{
|
|
2443
2583
|
row: any;
|
|
2444
2584
|
index: number;
|
|
@@ -2451,6 +2591,7 @@ declare class VirtualTableComponent {
|
|
|
2451
2591
|
expandedRows: _angular_core.WritableSignal<Set<number>>;
|
|
2452
2592
|
paginationStart: _angular_core.Signal<number>;
|
|
2453
2593
|
paginationEnd: _angular_core.Signal<number>;
|
|
2594
|
+
paginationInfoText: _angular_core.Signal<string>;
|
|
2454
2595
|
totalPages: _angular_core.Signal<number>;
|
|
2455
2596
|
visiblePages: _angular_core.Signal<(number | "...")[]>;
|
|
2456
2597
|
isExpanded(index: number): boolean;
|
|
@@ -2462,7 +2603,7 @@ declare class VirtualTableComponent {
|
|
|
2462
2603
|
getProgressColor(row: any): string;
|
|
2463
2604
|
onPageChange(page: number): void;
|
|
2464
2605
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<VirtualTableComponent, never>;
|
|
2465
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<VirtualTableComponent, "pecb-virtual-table", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; "progressConfig": { "alias": "progressConfig"; "required": false; "isSignal": true; }; "expandable": { "alias": "expandable"; "required": false; "isSignal": true; }; "showToolbar": { "alias": "showToolbar"; "required": false; "isSignal": true; }; "actionLabel": { "alias": "actionLabel"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "showSearch": { "alias": "showSearch"; "required": false; "isSignal": true; }; "showFilter": { "alias": "showFilter"; "required": false; "isSignal": true; }; "totalItems": { "alias": "totalItems"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "currentPage": { "alias": "currentPage"; "required": false; "isSignal": true; }; "showPagination": { "alias": "showPagination"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "rowToggled": "rowToggled"; "actionClicked": "actionClicked"; "searchChanged": "searchChanged"; "filterClicked": "filterClicked"; "pageChanged": "pageChanged"; }, ["expandedRowTemplate"], ["[toolbarLeft]", "[toolbarRight]"], true, never>;
|
|
2606
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<VirtualTableComponent, "pecb-virtual-table", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; "progressConfig": { "alias": "progressConfig"; "required": false; "isSignal": true; }; "expandable": { "alias": "expandable"; "required": false; "isSignal": true; }; "showToolbar": { "alias": "showToolbar"; "required": false; "isSignal": true; }; "actionLabel": { "alias": "actionLabel"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "showSearch": { "alias": "showSearch"; "required": false; "isSignal": true; }; "showFilter": { "alias": "showFilter"; "required": false; "isSignal": true; }; "totalItems": { "alias": "totalItems"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "currentPage": { "alias": "currentPage"; "required": false; "isSignal": true; }; "showPagination": { "alias": "showPagination"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "filterAriaLabel": { "alias": "filterAriaLabel"; "required": false; "isSignal": true; }; "expandHeaderLabel": { "alias": "expandHeaderLabel"; "required": false; "isSignal": true; }; "expandRowAriaLabel": { "alias": "expandRowAriaLabel"; "required": false; "isSignal": true; }; "collapseRowAriaLabel": { "alias": "collapseRowAriaLabel"; "required": false; "isSignal": true; }; "previousPageAriaLabel": { "alias": "previousPageAriaLabel"; "required": false; "isSignal": true; }; "nextPageAriaLabel": { "alias": "nextPageAriaLabel"; "required": false; "isSignal": true; }; "pageAriaLabel": { "alias": "pageAriaLabel"; "required": false; "isSignal": true; }; "itemsPerPageLabel": { "alias": "itemsPerPageLabel"; "required": false; "isSignal": true; }; "itemsInfoTemplate": { "alias": "itemsInfoTemplate"; "required": false; "isSignal": true; }; }, { "rowToggled": "rowToggled"; "actionClicked": "actionClicked"; "searchChanged": "searchChanged"; "filterClicked": "filterClicked"; "pageChanged": "pageChanged"; }, ["expandedRowTemplate"], ["[toolbarLeft]", "[toolbarRight]"], true, never>;
|
|
2466
2607
|
}
|
|
2467
2608
|
|
|
2468
2609
|
/**
|
|
@@ -2675,6 +2816,18 @@ declare class HierarchicalTableComponent implements AfterViewInit, OnDestroy {
|
|
|
2675
2816
|
pageSize: _angular_core.InputSignal<number>;
|
|
2676
2817
|
currentPage: _angular_core.InputSignal<number>;
|
|
2677
2818
|
ariaLabel: _angular_core.InputSignal<string>;
|
|
2819
|
+
/** Aria-label for the filter button. */
|
|
2820
|
+
filterAriaLabel: _angular_core.InputSignal<string>;
|
|
2821
|
+
/** Aria-label for the "previous page" pagination button. */
|
|
2822
|
+
previousPageAriaLabel: _angular_core.InputSignal<string>;
|
|
2823
|
+
/** Aria-label for the "next page" pagination button. */
|
|
2824
|
+
nextPageAriaLabel: _angular_core.InputSignal<string>;
|
|
2825
|
+
/** Aria-label prefix for each page-number button. Rendered as `<this> <n>`. */
|
|
2826
|
+
pageAriaLabel: _angular_core.InputSignal<string>;
|
|
2827
|
+
/** Visible "Items per page:" label next to the page-size indicator. */
|
|
2828
|
+
itemsPerPageLabel: _angular_core.InputSignal<string>;
|
|
2829
|
+
/** Template for the pagination range text. Placeholders: `{start}`, `{end}`, `{total}`. */
|
|
2830
|
+
itemsInfoTemplate: _angular_core.InputSignal<string>;
|
|
2678
2831
|
actionButtonClicked: _angular_core.OutputEmitterRef<void>;
|
|
2679
2832
|
searchChanged: _angular_core.OutputEmitterRef<string>;
|
|
2680
2833
|
filterClicked: _angular_core.OutputEmitterRef<void>;
|
|
@@ -2686,6 +2839,7 @@ declare class HierarchicalTableComponent implements AfterViewInit, OnDestroy {
|
|
|
2686
2839
|
pageChanged: _angular_core.OutputEmitterRef<HierarchicalTablePageEvent>;
|
|
2687
2840
|
paginationStart: _angular_core.Signal<number>;
|
|
2688
2841
|
paginationEnd: _angular_core.Signal<number>;
|
|
2842
|
+
paginationInfoText: _angular_core.Signal<string>;
|
|
2689
2843
|
totalPages: _angular_core.Signal<number>;
|
|
2690
2844
|
visiblePages: _angular_core.Signal<(number | "...")[]>;
|
|
2691
2845
|
getCellValue(row: Record<string, unknown>, key: string): unknown;
|
|
@@ -2708,7 +2862,7 @@ declare class HierarchicalTableComponent implements AfterViewInit, OnDestroy {
|
|
|
2708
2862
|
private removeDragListeners;
|
|
2709
2863
|
private updateScrollbar;
|
|
2710
2864
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<HierarchicalTableComponent, never>;
|
|
2711
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<HierarchicalTableComponent, "pecb-hierarchical-table", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; "actions": { "alias": "actions"; "required": false; "isSignal": true; }; "showActions": { "alias": "showActions"; "required": false; "isSignal": true; }; "showToolbar": { "alias": "showToolbar"; "required": false; "isSignal": true; }; "actionLabel": { "alias": "actionLabel"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "showSearch": { "alias": "showSearch"; "required": false; "isSignal": true; }; "showFilter": { "alias": "showFilter"; "required": false; "isSignal": true; }; "showPagination": { "alias": "showPagination"; "required": false; "isSignal": true; }; "totalItems": { "alias": "totalItems"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "currentPage": { "alias": "currentPage"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "actionButtonClicked": "actionButtonClicked"; "searchChanged": "searchChanged"; "filterClicked": "filterClicked"; "rowActionClicked": "rowActionClicked"; "pageChanged": "pageChanged"; }, never, ["[toolbarLeft]", "[toolbarRight]"], true, never>;
|
|
2865
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<HierarchicalTableComponent, "pecb-hierarchical-table", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; "actions": { "alias": "actions"; "required": false; "isSignal": true; }; "showActions": { "alias": "showActions"; "required": false; "isSignal": true; }; "showToolbar": { "alias": "showToolbar"; "required": false; "isSignal": true; }; "actionLabel": { "alias": "actionLabel"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "showSearch": { "alias": "showSearch"; "required": false; "isSignal": true; }; "showFilter": { "alias": "showFilter"; "required": false; "isSignal": true; }; "showPagination": { "alias": "showPagination"; "required": false; "isSignal": true; }; "totalItems": { "alias": "totalItems"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "currentPage": { "alias": "currentPage"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "filterAriaLabel": { "alias": "filterAriaLabel"; "required": false; "isSignal": true; }; "previousPageAriaLabel": { "alias": "previousPageAriaLabel"; "required": false; "isSignal": true; }; "nextPageAriaLabel": { "alias": "nextPageAriaLabel"; "required": false; "isSignal": true; }; "pageAriaLabel": { "alias": "pageAriaLabel"; "required": false; "isSignal": true; }; "itemsPerPageLabel": { "alias": "itemsPerPageLabel"; "required": false; "isSignal": true; }; "itemsInfoTemplate": { "alias": "itemsInfoTemplate"; "required": false; "isSignal": true; }; }, { "actionButtonClicked": "actionButtonClicked"; "searchChanged": "searchChanged"; "filterClicked": "filterClicked"; "rowActionClicked": "rowActionClicked"; "pageChanged": "pageChanged"; }, never, ["[toolbarLeft]", "[toolbarRight]"], true, never>;
|
|
2712
2866
|
}
|
|
2713
2867
|
|
|
2714
2868
|
/**
|
|
@@ -2825,6 +2979,8 @@ declare class BackToTopComponent implements OnInit, OnDestroy {
|
|
|
2825
2979
|
rightOffset: _angular_core.InputSignal<number>;
|
|
2826
2980
|
/** Time in ms after scroll stops to transition to full opacity. Default: 1000 */
|
|
2827
2981
|
scrollIdleDelay: _angular_core.InputSignal<number>;
|
|
2982
|
+
/** Aria-label for the button. */
|
|
2983
|
+
ariaLabel: _angular_core.InputSignal<string>;
|
|
2828
2984
|
/** Whether the button is visible (scroll past threshold) */
|
|
2829
2985
|
visible: _angular_core.WritableSignal<boolean>;
|
|
2830
2986
|
/** Whether the user is actively scrolling (50% opacity) */
|
|
@@ -2839,7 +2995,7 @@ declare class BackToTopComponent implements OnInit, OnDestroy {
|
|
|
2839
2995
|
scrollToTop(): void;
|
|
2840
2996
|
private onScroll;
|
|
2841
2997
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<BackToTopComponent, never>;
|
|
2842
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<BackToTopComponent, "pecb-back-to-top", never, { "scrollThreshold": { "alias": "scrollThreshold"; "required": false; "isSignal": true; }; "bottomOffset": { "alias": "bottomOffset"; "required": false; "isSignal": true; }; "rightOffset": { "alias": "rightOffset"; "required": false; "isSignal": true; }; "scrollIdleDelay": { "alias": "scrollIdleDelay"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2998
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<BackToTopComponent, "pecb-back-to-top", never, { "scrollThreshold": { "alias": "scrollThreshold"; "required": false; "isSignal": true; }; "bottomOffset": { "alias": "bottomOffset"; "required": false; "isSignal": true; }; "rightOffset": { "alias": "rightOffset"; "required": false; "isSignal": true; }; "scrollIdleDelay": { "alias": "scrollIdleDelay"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2843
2999
|
}
|
|
2844
3000
|
|
|
2845
3001
|
interface ExpandableRowColumn {
|
|
@@ -2875,6 +3031,24 @@ declare class ExpandableRowTableComponent {
|
|
|
2875
3031
|
pageSize: _angular_core.InputSignal<number>;
|
|
2876
3032
|
currentPage: _angular_core.InputSignal<number>;
|
|
2877
3033
|
ariaLabel: _angular_core.InputSignal<string>;
|
|
3034
|
+
/** Aria-label for the filter button. */
|
|
3035
|
+
filterAriaLabel: _angular_core.InputSignal<string>;
|
|
3036
|
+
/** Visually-hidden "Expand" text in the expand-column header. */
|
|
3037
|
+
expandHeaderLabel: _angular_core.InputSignal<string>;
|
|
3038
|
+
/** Aria-label for the row-expand toggle when row is collapsed. */
|
|
3039
|
+
expandRowAriaLabel: _angular_core.InputSignal<string>;
|
|
3040
|
+
/** Aria-label for the row-expand toggle when row is expanded. */
|
|
3041
|
+
collapseRowAriaLabel: _angular_core.InputSignal<string>;
|
|
3042
|
+
/** Aria-label for the "previous page" pagination button. */
|
|
3043
|
+
previousPageAriaLabel: _angular_core.InputSignal<string>;
|
|
3044
|
+
/** Aria-label for the "next page" pagination button. */
|
|
3045
|
+
nextPageAriaLabel: _angular_core.InputSignal<string>;
|
|
3046
|
+
/** Aria-label prefix for each page-number button. Rendered as `<this> <n>`. */
|
|
3047
|
+
pageAriaLabel: _angular_core.InputSignal<string>;
|
|
3048
|
+
/** Visible "Items per page:" label next to the page-size indicator. */
|
|
3049
|
+
itemsPerPageLabel: _angular_core.InputSignal<string>;
|
|
3050
|
+
/** Template for the pagination range text. Placeholders: `{start}`, `{end}`, `{total}`. */
|
|
3051
|
+
itemsInfoTemplate: _angular_core.InputSignal<string>;
|
|
2878
3052
|
rowToggled: _angular_core.OutputEmitterRef<{
|
|
2879
3053
|
row: Record<string, unknown>;
|
|
2880
3054
|
index: number;
|
|
@@ -2887,6 +3061,7 @@ declare class ExpandableRowTableComponent {
|
|
|
2887
3061
|
expandedRows: _angular_core.WritableSignal<Set<number>>;
|
|
2888
3062
|
paginationStart: _angular_core.Signal<number>;
|
|
2889
3063
|
paginationEnd: _angular_core.Signal<number>;
|
|
3064
|
+
paginationInfoText: _angular_core.Signal<string>;
|
|
2890
3065
|
totalPages: _angular_core.Signal<number>;
|
|
2891
3066
|
visiblePages: _angular_core.Signal<(number | "...")[]>;
|
|
2892
3067
|
isExpanded(index: number): boolean;
|
|
@@ -2898,7 +3073,7 @@ declare class ExpandableRowTableComponent {
|
|
|
2898
3073
|
getProgressColor(row: Record<string, unknown>): string;
|
|
2899
3074
|
onPageChange(page: number): void;
|
|
2900
3075
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ExpandableRowTableComponent, never>;
|
|
2901
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ExpandableRowTableComponent, "pecb-expandable-row-table", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; "progressConfig": { "alias": "progressConfig"; "required": false; "isSignal": true; }; "expandable": { "alias": "expandable"; "required": false; "isSignal": true; }; "showToolbar": { "alias": "showToolbar"; "required": false; "isSignal": true; }; "actionLabel": { "alias": "actionLabel"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "showSearch": { "alias": "showSearch"; "required": false; "isSignal": true; }; "showFilter": { "alias": "showFilter"; "required": false; "isSignal": true; }; "showPagination": { "alias": "showPagination"; "required": false; "isSignal": true; }; "totalItems": { "alias": "totalItems"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "currentPage": { "alias": "currentPage"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "rowToggled": "rowToggled"; "actionClicked": "actionClicked"; "searchChanged": "searchChanged"; "filterClicked": "filterClicked"; "pageChanged": "pageChanged"; }, ["expandedRowTemplate"], ["[toolbarLeft]", "[toolbarRight]"], true, never>;
|
|
3076
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ExpandableRowTableComponent, "pecb-expandable-row-table", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; "progressConfig": { "alias": "progressConfig"; "required": false; "isSignal": true; }; "expandable": { "alias": "expandable"; "required": false; "isSignal": true; }; "showToolbar": { "alias": "showToolbar"; "required": false; "isSignal": true; }; "actionLabel": { "alias": "actionLabel"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "showSearch": { "alias": "showSearch"; "required": false; "isSignal": true; }; "showFilter": { "alias": "showFilter"; "required": false; "isSignal": true; }; "showPagination": { "alias": "showPagination"; "required": false; "isSignal": true; }; "totalItems": { "alias": "totalItems"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "currentPage": { "alias": "currentPage"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "filterAriaLabel": { "alias": "filterAriaLabel"; "required": false; "isSignal": true; }; "expandHeaderLabel": { "alias": "expandHeaderLabel"; "required": false; "isSignal": true; }; "expandRowAriaLabel": { "alias": "expandRowAriaLabel"; "required": false; "isSignal": true; }; "collapseRowAriaLabel": { "alias": "collapseRowAriaLabel"; "required": false; "isSignal": true; }; "previousPageAriaLabel": { "alias": "previousPageAriaLabel"; "required": false; "isSignal": true; }; "nextPageAriaLabel": { "alias": "nextPageAriaLabel"; "required": false; "isSignal": true; }; "pageAriaLabel": { "alias": "pageAriaLabel"; "required": false; "isSignal": true; }; "itemsPerPageLabel": { "alias": "itemsPerPageLabel"; "required": false; "isSignal": true; }; "itemsInfoTemplate": { "alias": "itemsInfoTemplate"; "required": false; "isSignal": true; }; }, { "rowToggled": "rowToggled"; "actionClicked": "actionClicked"; "searchChanged": "searchChanged"; "filterClicked": "filterClicked"; "pageChanged": "pageChanged"; }, ["expandedRowTemplate"], ["[toolbarLeft]", "[toolbarRight]"], true, never>;
|
|
2902
3077
|
}
|
|
2903
3078
|
|
|
2904
3079
|
/**
|
|
@@ -3126,48 +3301,66 @@ declare class LanguageDropdownComponent {
|
|
|
3126
3301
|
*/
|
|
3127
3302
|
type EmptyStateIconTheme = 'default' | 'info' | 'error' | 'warning' | 'success' | 'gray';
|
|
3128
3303
|
/**
|
|
3129
|
-
*
|
|
3304
|
+
* Maximum number of action buttons an empty state will render. An empty state
|
|
3305
|
+
* should offer at most a primary action plus one secondary action — anything
|
|
3306
|
+
* beyond that is dropped (and is a usability smell).
|
|
3307
|
+
*/
|
|
3308
|
+
declare const EMPTY_STATE_MAX_BUTTONS = 2;
|
|
3309
|
+
/**
|
|
3310
|
+
* Configuration for a single empty-state action button. Rendered with the
|
|
3311
|
+
* shared `<pecb-button>` so it inherits the library's button styling/states.
|
|
3130
3312
|
*/
|
|
3131
3313
|
interface EmptyStateButton {
|
|
3132
|
-
/** Button label text */
|
|
3314
|
+
/** Button label text. */
|
|
3133
3315
|
label: string;
|
|
3134
|
-
/**
|
|
3135
|
-
|
|
3316
|
+
/**
|
|
3317
|
+
* Action style. `'primary'` is the dark call-to-action, `'secondary'` is the
|
|
3318
|
+
* outline button. When omitted, the first button defaults to `'primary'` and
|
|
3319
|
+
* any subsequent button to `'secondary'`.
|
|
3320
|
+
*/
|
|
3321
|
+
variant?: 'primary' | 'secondary';
|
|
3322
|
+
/** Optional leading icon — a registered `IconRegistry` name. */
|
|
3323
|
+
icon?: string;
|
|
3324
|
+
/** Whether the button is disabled. */
|
|
3325
|
+
disabled?: boolean;
|
|
3326
|
+
/**
|
|
3327
|
+
* Optional identifier echoed back on `(buttonClick)` so the caller can tell
|
|
3328
|
+
* which action fired without comparing labels.
|
|
3329
|
+
*/
|
|
3330
|
+
id?: string;
|
|
3136
3331
|
}
|
|
3137
3332
|
/**
|
|
3138
3333
|
* Empty state component matching the PECB Figma design system.
|
|
3139
3334
|
*
|
|
3140
|
-
* Displays a centered message with an icon, title, description, and
|
|
3141
|
-
*
|
|
3142
|
-
*
|
|
3143
|
-
* **
|
|
3144
|
-
*
|
|
3145
|
-
*
|
|
3146
|
-
*
|
|
3147
|
-
*
|
|
3148
|
-
* - info bg: #e6f0fa (new-bg)
|
|
3149
|
-
* - error bg: #fdecea (cancelled-bg)
|
|
3150
|
-
* - Title: Bold 24px, #212427, line-height 1.2
|
|
3151
|
-
* - Description: Medium 14px, #919191, text-center
|
|
3152
|
-
* - Primary button: #212427 bg, white text, 6px radius, 40px h, 16px h-pad
|
|
3153
|
-
* - Secondary button: white bg, #c2c2c2 border, #212427 text, 6px radius, 40px h
|
|
3154
|
-
* - Button gap: 16px
|
|
3335
|
+
* Displays a centered message with an icon, title, description, and optional
|
|
3336
|
+
* action buttons when there is no data to show.
|
|
3337
|
+
*
|
|
3338
|
+
* **Icon** — pass a registered icon name via `[icon]`, or project a custom SVG
|
|
3339
|
+
* into the `[emptyStateIcon]` slot. A registered `[icon]` name takes precedence.
|
|
3340
|
+
*
|
|
3341
|
+
* **Buttons** — supply up to {@link EMPTY_STATE_MAX_BUTTONS} actions via
|
|
3342
|
+
* `[buttons]`; they render with `<pecb-button>`.
|
|
3155
3343
|
*
|
|
3156
3344
|
* @example
|
|
3157
3345
|
* ```html
|
|
3346
|
+
* <!-- Icon by registered name -->
|
|
3158
3347
|
* <pecb-empty-state
|
|
3159
|
-
*
|
|
3160
|
-
*
|
|
3161
|
-
*
|
|
3162
|
-
* [buttons]="[
|
|
3163
|
-
* { label: 'Explore Certifications', variant: 'primary' },
|
|
3164
|
-
* { label: 'Learn More', variant: 'secondary' }
|
|
3165
|
-
* ]"
|
|
3348
|
+
* icon="layout-grid"
|
|
3349
|
+
* title="No Workflows Yet"
|
|
3350
|
+
* description="No workflows yet. They will appear here once created."
|
|
3351
|
+
* [buttons]="[{ label: 'Create Workflow', icon: 'plus' }]"
|
|
3166
3352
|
* (buttonClick)="onAction($event)"
|
|
3167
3353
|
* ></pecb-empty-state>
|
|
3354
|
+
*
|
|
3355
|
+
* <!-- Icon by content projection -->
|
|
3356
|
+
* <pecb-empty-state title="No Data Found" iconTheme="error">
|
|
3357
|
+
* <svg emptyStateIcon ...></svg>
|
|
3358
|
+
* </pecb-empty-state>
|
|
3168
3359
|
* ```
|
|
3169
3360
|
*/
|
|
3170
3361
|
declare class EmptyStateComponent {
|
|
3362
|
+
private readonly registry;
|
|
3363
|
+
private readonly sanitizer;
|
|
3171
3364
|
/** Unique element ID */
|
|
3172
3365
|
id: _angular_core.InputSignal<string>;
|
|
3173
3366
|
/** Title text */
|
|
@@ -3176,7 +3369,13 @@ declare class EmptyStateComponent {
|
|
|
3176
3369
|
description: _angular_core.InputSignal<string>;
|
|
3177
3370
|
/** Icon background color theme */
|
|
3178
3371
|
iconTheme: _angular_core.InputSignal<EmptyStateIconTheme>;
|
|
3179
|
-
/**
|
|
3372
|
+
/**
|
|
3373
|
+
* Icon shown in the circle, by registered `IconRegistry` name. When set (and
|
|
3374
|
+
* the name resolves), it takes precedence over any `[emptyStateIcon]`
|
|
3375
|
+
* projected content. Leave empty to use content projection instead.
|
|
3376
|
+
*/
|
|
3377
|
+
icon: _angular_core.InputSignal<string>;
|
|
3378
|
+
/** Action buttons to display (capped at {@link EMPTY_STATE_MAX_BUTTONS}). */
|
|
3180
3379
|
buttons: _angular_core.InputSignal<EmptyStateButton[]>;
|
|
3181
3380
|
/** Whether to show the title */
|
|
3182
3381
|
showTitle: _angular_core.InputSignal<boolean>;
|
|
@@ -3186,12 +3385,31 @@ declare class EmptyStateComponent {
|
|
|
3186
3385
|
buttonClick: _angular_core.OutputEmitterRef<EmptyStateButton>;
|
|
3187
3386
|
/** CSS class for the icon circle background */
|
|
3188
3387
|
iconBgClass: _angular_core.Signal<string>;
|
|
3189
|
-
/**
|
|
3388
|
+
/** Raw SVG for the `icon` name input — empty when unset or unknown. */
|
|
3389
|
+
private readonly resolvedIcon;
|
|
3390
|
+
/** Sanitized SVG for the `icon` name input, bound via [innerHTML]. */
|
|
3391
|
+
iconSvg: _angular_core.Signal<SafeHtml>;
|
|
3392
|
+
/** True when a registered `icon` name is set — drives icon vs. projection. */
|
|
3393
|
+
hasIconName: _angular_core.Signal<boolean>;
|
|
3394
|
+
/**
|
|
3395
|
+
* Buttons actually rendered: capped at {@link EMPTY_STATE_MAX_BUTTONS} and
|
|
3396
|
+
* pre-resolved to the props `<pecb-button>` needs. `source` carries the
|
|
3397
|
+
* original config back out through `(buttonClick)`.
|
|
3398
|
+
*/
|
|
3399
|
+
renderButtons: _angular_core.Signal<{
|
|
3400
|
+
source: EmptyStateButton;
|
|
3401
|
+
label: string;
|
|
3402
|
+
variant: ButtonVariant;
|
|
3403
|
+
iconSvg: string;
|
|
3404
|
+
iconStyle: ButtonIconStyle;
|
|
3405
|
+
disabled: boolean;
|
|
3406
|
+
}[]>;
|
|
3407
|
+
/** Whether any buttons will be rendered. */
|
|
3190
3408
|
hasButtons: _angular_core.Signal<boolean>;
|
|
3191
|
-
/** Handle button click */
|
|
3409
|
+
/** Handle button click — re-emits the original button config. */
|
|
3192
3410
|
onButtonClick(button: EmptyStateButton): void;
|
|
3193
3411
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<EmptyStateComponent, never>;
|
|
3194
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<EmptyStateComponent, "pecb-empty-state", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "iconTheme": { "alias": "iconTheme"; "required": false; "isSignal": true; }; "buttons": { "alias": "buttons"; "required": false; "isSignal": true; }; "showTitle": { "alias": "showTitle"; "required": false; "isSignal": true; }; "showDescription": { "alias": "showDescription"; "required": false; "isSignal": true; }; }, { "buttonClick": "buttonClick"; }, never, ["[emptyStateIcon]"], true, never>;
|
|
3412
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<EmptyStateComponent, "pecb-empty-state", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "iconTheme": { "alias": "iconTheme"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "buttons": { "alias": "buttons"; "required": false; "isSignal": true; }; "showTitle": { "alias": "showTitle"; "required": false; "isSignal": true; }; "showDescription": { "alias": "showDescription"; "required": false; "isSignal": true; }; }, { "buttonClick": "buttonClick"; }, never, ["[emptyStateIcon]"], true, never>;
|
|
3195
3413
|
}
|
|
3196
3414
|
|
|
3197
3415
|
/**
|
|
@@ -3257,45 +3475,64 @@ declare class TestimonialComponent {
|
|
|
3257
3475
|
type TagStyle = 'light' | 'dark';
|
|
3258
3476
|
type TagAction = 'none' | 'close' | 'plus';
|
|
3259
3477
|
declare class TagComponent {
|
|
3260
|
-
|
|
3478
|
+
id: _angular_core.InputSignal<string>;
|
|
3261
3479
|
label: _angular_core.InputSignal<string>;
|
|
3262
3480
|
tagStyle: _angular_core.InputSignal<TagStyle>;
|
|
3263
3481
|
action: _angular_core.InputSignal<TagAction>;
|
|
3482
|
+
/** Aria-label for the close (×) action — override to localize (audit F20). */
|
|
3483
|
+
removeAriaLabel: _angular_core.InputSignal<string>;
|
|
3264
3484
|
tagClose: _angular_core.OutputEmitterRef<void>;
|
|
3265
3485
|
tagClasses: _angular_core.Signal<string[]>;
|
|
3266
3486
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TagComponent, never>;
|
|
3267
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TagComponent, "pecb-tag", never, { "
|
|
3487
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TagComponent, "pecb-tag", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "tagStyle": { "alias": "tagStyle"; "required": false; "isSignal": true; }; "action": { "alias": "action"; "required": false; "isSignal": true; }; "removeAriaLabel": { "alias": "removeAriaLabel"; "required": false; "isSignal": true; }; }, { "tagClose": "tagClose"; }, never, never, true, never>;
|
|
3268
3488
|
}
|
|
3489
|
+
|
|
3269
3490
|
type LinkButtonType = 'go-back' | 'view-details' | 'read-more' | 'show-credential';
|
|
3270
3491
|
declare class LinkButtonComponent {
|
|
3271
|
-
|
|
3492
|
+
id: _angular_core.InputSignal<string>;
|
|
3272
3493
|
type: _angular_core.InputSignal<LinkButtonType>;
|
|
3494
|
+
/** Optional explicit label override. When set, takes precedence over the
|
|
3495
|
+
* type-driven default — use this to localize (audit F20). */
|
|
3496
|
+
label: _angular_core.InputSignal<string>;
|
|
3273
3497
|
clicked: _angular_core.OutputEmitterRef<void>;
|
|
3274
3498
|
displayText: _angular_core.Signal<string>;
|
|
3275
3499
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<LinkButtonComponent, never>;
|
|
3276
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LinkButtonComponent, "pecb-link-button", never, { "
|
|
3500
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<LinkButtonComponent, "pecb-link-button", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; }, { "clicked": "clicked"; }, never, never, true, never>;
|
|
3277
3501
|
}
|
|
3502
|
+
|
|
3278
3503
|
declare class SlidePointsComponent {
|
|
3279
3504
|
total: _angular_core.InputSignal<number>;
|
|
3505
|
+
/** Template for the container's aria-label. Placeholders: `{current}` (1-based), `{total}`. */
|
|
3506
|
+
containerAriaLabelTemplate: _angular_core.InputSignal<string>;
|
|
3507
|
+
/** Prefix for each dot's aria-label. Rendered as `<this> <n>`. */
|
|
3508
|
+
slideAriaLabelPrefix: _angular_core.InputSignal<string>;
|
|
3280
3509
|
dotClick: _angular_core.OutputEmitterRef<number>;
|
|
3281
3510
|
currentIndex: _angular_core.WritableSignal<number>;
|
|
3282
3511
|
dotsArray: _angular_core.Signal<number[]>;
|
|
3512
|
+
containerAriaLabel: _angular_core.Signal<string>;
|
|
3283
3513
|
selectDot(index: number): void;
|
|
3284
3514
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SlidePointsComponent, never>;
|
|
3285
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SlidePointsComponent, "pecb-slide-points", never, { "total": { "alias": "total"; "required": false; "isSignal": true; }; }, { "dotClick": "dotClick"; }, never, never, true, never>;
|
|
3515
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SlidePointsComponent, "pecb-slide-points", never, { "total": { "alias": "total"; "required": false; "isSignal": true; }; "containerAriaLabelTemplate": { "alias": "containerAriaLabelTemplate"; "required": false; "isSignal": true; }; "slideAriaLabelPrefix": { "alias": "slideAriaLabelPrefix"; "required": false; "isSignal": true; }; }, { "dotClick": "dotClick"; }, never, never, true, never>;
|
|
3286
3516
|
}
|
|
3517
|
+
|
|
3287
3518
|
declare class QuantitySelectorComponent {
|
|
3288
|
-
|
|
3289
|
-
value
|
|
3519
|
+
id: _angular_core.InputSignal<string>;
|
|
3520
|
+
/** Two-way bindable current value. External writes are clamped to [min, max]. */
|
|
3521
|
+
value: _angular_core.ModelSignal<number>;
|
|
3290
3522
|
min: _angular_core.InputSignal<number>;
|
|
3291
3523
|
max: _angular_core.InputSignal<number>;
|
|
3292
3524
|
showFraction: _angular_core.InputSignal<boolean>;
|
|
3293
|
-
|
|
3525
|
+
/** Aria-label for the decrement button. */
|
|
3526
|
+
decreaseAriaLabel: _angular_core.InputSignal<string>;
|
|
3527
|
+
/** Aria-label for the increment button. */
|
|
3528
|
+
increaseAriaLabel: _angular_core.InputSignal<string>;
|
|
3529
|
+
constructor();
|
|
3294
3530
|
increment(): void;
|
|
3295
3531
|
decrement(): void;
|
|
3296
3532
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<QuantitySelectorComponent, never>;
|
|
3297
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<QuantitySelectorComponent, "pecb-quantity-selector", never, { "
|
|
3533
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<QuantitySelectorComponent, "pecb-quantity-selector", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "min": { "alias": "min"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "showFraction": { "alias": "showFraction"; "required": false; "isSignal": true; }; "decreaseAriaLabel": { "alias": "decreaseAriaLabel"; "required": false; "isSignal": true; }; "increaseAriaLabel": { "alias": "increaseAriaLabel"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; }, never, never, true, never>;
|
|
3298
3534
|
}
|
|
3535
|
+
|
|
3299
3536
|
type AuditorStatusType = 'trainee' | 'auditor' | 'member';
|
|
3300
3537
|
declare class AuditorStatusComponent {
|
|
3301
3538
|
type: _angular_core.InputSignal<AuditorStatusType>;
|
|
@@ -3305,6 +3542,7 @@ declare class AuditorStatusComponent {
|
|
|
3305
3542
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AuditorStatusComponent, never>;
|
|
3306
3543
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AuditorStatusComponent, "pecb-auditor-status", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3307
3544
|
}
|
|
3545
|
+
|
|
3308
3546
|
type RatingStyle = 'black' | 'white';
|
|
3309
3547
|
declare class RatingNumberComponent {
|
|
3310
3548
|
value: _angular_core.InputSignal<number>;
|
|
@@ -3314,17 +3552,22 @@ declare class RatingNumberComponent {
|
|
|
3314
3552
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RatingNumberComponent, never>;
|
|
3315
3553
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<RatingNumberComponent, "pecb-rating-number", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "ratingStyle": { "alias": "ratingStyle"; "required": false; "isSignal": true; }; }, { "selected": "selected"; }, never, never, true, never>;
|
|
3316
3554
|
}
|
|
3555
|
+
|
|
3317
3556
|
type IconTagType = 'important' | 'question' | 'review';
|
|
3318
3557
|
declare class IconTagComponent {
|
|
3319
3558
|
type: _angular_core.InputSignal<IconTagType>;
|
|
3320
3559
|
active: _angular_core.InputSignal<boolean>;
|
|
3560
|
+
/** Optional explicit label override. When set, takes precedence over the
|
|
3561
|
+
* type-driven default — use this to localize (audit F20). */
|
|
3562
|
+
label: _angular_core.InputSignal<string>;
|
|
3321
3563
|
clicked: _angular_core.OutputEmitterRef<void>;
|
|
3322
3564
|
iconTagClasses: _angular_core.Signal<string[]>;
|
|
3323
3565
|
iconBgClass: _angular_core.Signal<string>;
|
|
3324
3566
|
displayLabel: _angular_core.Signal<string>;
|
|
3325
3567
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<IconTagComponent, never>;
|
|
3326
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<IconTagComponent, "pecb-icon-tag", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; }, { "clicked": "clicked"; }, never, never, true, never>;
|
|
3568
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<IconTagComponent, "pecb-icon-tag", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; }, { "clicked": "clicked"; }, never, never, true, never>;
|
|
3327
3569
|
}
|
|
3570
|
+
|
|
3328
3571
|
type TranscriptLineState = 'default' | 'active' | 'hover';
|
|
3329
3572
|
declare class TranscriptLineComponent {
|
|
3330
3573
|
time: _angular_core.InputSignal<string>;
|
|
@@ -3337,6 +3580,7 @@ declare class TranscriptLineComponent {
|
|
|
3337
3580
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TranscriptLineComponent, never>;
|
|
3338
3581
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TranscriptLineComponent, "pecb-transcript-line", never, { "time": { "alias": "time"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "state": { "alias": "state"; "required": false; "isSignal": true; }; }, { "clicked": "clicked"; }, never, never, true, never>;
|
|
3339
3582
|
}
|
|
3583
|
+
|
|
3340
3584
|
type MiniIconAction = 'edit' | 'delete';
|
|
3341
3585
|
declare class MiniIconButtonComponent {
|
|
3342
3586
|
action: _angular_core.InputSignal<MiniIconAction>;
|
|
@@ -3344,39 +3588,48 @@ declare class MiniIconButtonComponent {
|
|
|
3344
3588
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MiniIconButtonComponent, never>;
|
|
3345
3589
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MiniIconButtonComponent, "pecb-mini-icon-button", never, { "action": { "alias": "action"; "required": false; "isSignal": true; }; }, { "clicked": "clicked"; }, never, never, true, never>;
|
|
3346
3590
|
}
|
|
3591
|
+
|
|
3347
3592
|
declare class NoResultsComponent {
|
|
3348
|
-
|
|
3593
|
+
id: _angular_core.InputSignal<string>;
|
|
3349
3594
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NoResultsComponent, never>;
|
|
3350
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NoResultsComponent, "pecb-no-results", never, { "
|
|
3595
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NoResultsComponent, "pecb-no-results", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3351
3596
|
}
|
|
3597
|
+
|
|
3352
3598
|
declare class CertificateUploadBarComponent {
|
|
3353
|
-
|
|
3599
|
+
id: _angular_core.InputSignal<string>;
|
|
3354
3600
|
filename: _angular_core.InputSignal<string>;
|
|
3355
3601
|
showClose: _angular_core.InputSignal<boolean>;
|
|
3602
|
+
/** Aria-label for the remove button — override to localize (audit F20). */
|
|
3603
|
+
removeAriaLabel: _angular_core.InputSignal<string>;
|
|
3356
3604
|
closeClick: _angular_core.OutputEmitterRef<void>;
|
|
3357
3605
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<CertificateUploadBarComponent, never>;
|
|
3358
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CertificateUploadBarComponent, "pecb-certificate-upload-bar", never, { "
|
|
3606
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CertificateUploadBarComponent, "pecb-certificate-upload-bar", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "filename": { "alias": "filename"; "required": false; "isSignal": true; }; "showClose": { "alias": "showClose"; "required": false; "isSignal": true; }; "removeAriaLabel": { "alias": "removeAriaLabel"; "required": false; "isSignal": true; }; }, { "closeClick": "closeClick"; }, never, never, true, never>;
|
|
3359
3607
|
}
|
|
3608
|
+
|
|
3360
3609
|
declare class VideoUploadBarComponent {
|
|
3361
|
-
|
|
3610
|
+
id: _angular_core.InputSignal<string>;
|
|
3362
3611
|
filename: _angular_core.InputSignal<string>;
|
|
3363
3612
|
fileSize: _angular_core.InputSignal<string>;
|
|
3613
|
+
/** Aria-label for the delete button — override to localize (audit F20). */
|
|
3614
|
+
deleteAriaLabel: _angular_core.InputSignal<string>;
|
|
3364
3615
|
deleteClick: _angular_core.OutputEmitterRef<void>;
|
|
3365
3616
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<VideoUploadBarComponent, never>;
|
|
3366
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<VideoUploadBarComponent, "pecb-video-upload-bar", never, { "
|
|
3617
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<VideoUploadBarComponent, "pecb-video-upload-bar", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "filename": { "alias": "filename"; "required": false; "isSignal": true; }; "fileSize": { "alias": "fileSize"; "required": false; "isSignal": true; }; "deleteAriaLabel": { "alias": "deleteAriaLabel"; "required": false; "isSignal": true; }; }, { "deleteClick": "deleteClick"; }, never, never, true, never>;
|
|
3367
3618
|
}
|
|
3619
|
+
|
|
3368
3620
|
type StatisticsIconColor = 'blue' | 'green' | 'orange' | 'red' | 'gray';
|
|
3369
3621
|
declare class StatisticsCardComponent {
|
|
3370
|
-
|
|
3622
|
+
id: _angular_core.InputSignal<string>;
|
|
3371
3623
|
value: _angular_core.InputSignal<number>;
|
|
3372
3624
|
label: _angular_core.InputSignal<string>;
|
|
3373
3625
|
iconColor: _angular_core.InputSignal<StatisticsIconColor>;
|
|
3374
3626
|
iconClasses: _angular_core.Signal<string[]>;
|
|
3375
3627
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<StatisticsCardComponent, never>;
|
|
3376
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<StatisticsCardComponent, "pecb-statistics-card", never, { "
|
|
3628
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<StatisticsCardComponent, "pecb-statistics-card", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "iconColor": { "alias": "iconColor"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
3377
3629
|
}
|
|
3630
|
+
|
|
3378
3631
|
declare class PriceMethodComponent {
|
|
3379
|
-
|
|
3632
|
+
id: _angular_core.InputSignal<string>;
|
|
3380
3633
|
leftLabel: _angular_core.InputSignal<string>;
|
|
3381
3634
|
rightLabel: _angular_core.InputSignal<string>;
|
|
3382
3635
|
selectionChange: _angular_core.OutputEmitterRef<number>;
|
|
@@ -3384,11 +3637,12 @@ declare class PriceMethodComponent {
|
|
|
3384
3637
|
pillClasses(index: number): string[];
|
|
3385
3638
|
select(index: number): void;
|
|
3386
3639
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PriceMethodComponent, never>;
|
|
3387
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<PriceMethodComponent, "pecb-price-method", never, { "
|
|
3640
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<PriceMethodComponent, "pecb-price-method", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "leftLabel": { "alias": "leftLabel"; "required": false; "isSignal": true; }; "rightLabel": { "alias": "rightLabel"; "required": false; "isSignal": true; }; }, { "selectionChange": "selectionChange"; }, never, never, true, never>;
|
|
3388
3641
|
}
|
|
3642
|
+
|
|
3389
3643
|
type AppStatusColor = 'warning' | 'success' | 'error' | 'info';
|
|
3390
3644
|
declare class ApplicationStatusBarComponent {
|
|
3391
|
-
|
|
3645
|
+
id: _angular_core.InputSignal<string>;
|
|
3392
3646
|
message: _angular_core.InputSignal<string>;
|
|
3393
3647
|
statusLabel: _angular_core.InputSignal<string>;
|
|
3394
3648
|
statusColor: _angular_core.InputSignal<AppStatusColor>;
|
|
@@ -3396,38 +3650,49 @@ declare class ApplicationStatusBarComponent {
|
|
|
3396
3650
|
color: string;
|
|
3397
3651
|
}>;
|
|
3398
3652
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ApplicationStatusBarComponent, never>;
|
|
3399
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ApplicationStatusBarComponent, "pecb-application-status-bar", never, { "
|
|
3653
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ApplicationStatusBarComponent, "pecb-application-status-bar", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "statusLabel": { "alias": "statusLabel"; "required": false; "isSignal": true; }; "statusColor": { "alias": "statusColor"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3400
3654
|
}
|
|
3655
|
+
|
|
3401
3656
|
declare class ReasonForReturnComponent {
|
|
3402
|
-
|
|
3657
|
+
id: _angular_core.InputSignal<string>;
|
|
3403
3658
|
message: _angular_core.InputSignal<string>;
|
|
3404
3659
|
linkText: _angular_core.InputSignal<string>;
|
|
3405
3660
|
linkUrl: _angular_core.InputSignal<string>;
|
|
3406
3661
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ReasonForReturnComponent, never>;
|
|
3407
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ReasonForReturnComponent, "pecb-reason-for-return", never, { "
|
|
3662
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ReasonForReturnComponent, "pecb-reason-for-return", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "linkText": { "alias": "linkText"; "required": false; "isSignal": true; }; "linkUrl": { "alias": "linkUrl"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3408
3663
|
}
|
|
3664
|
+
|
|
3409
3665
|
type ContentTagType = 'quiz' | 'video';
|
|
3410
3666
|
type ContentTagDisplay = 'full' | 'icon-only';
|
|
3411
3667
|
declare class ContentTypeTagComponent {
|
|
3412
3668
|
type: _angular_core.InputSignal<ContentTagType>;
|
|
3413
3669
|
displayMode: _angular_core.InputSignal<ContentTagDisplay>;
|
|
3670
|
+
/** Optional explicit label override. When set, takes precedence over the
|
|
3671
|
+
* type-driven default — use this to localize (audit F20). */
|
|
3672
|
+
label: _angular_core.InputSignal<string>;
|
|
3414
3673
|
tagClasses: _angular_core.Signal<string[]>;
|
|
3674
|
+
displayLabel: _angular_core.Signal<string>;
|
|
3415
3675
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ContentTypeTagComponent, never>;
|
|
3416
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ContentTypeTagComponent, "pecb-content-type-tag", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "displayMode": { "alias": "displayMode"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3676
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ContentTypeTagComponent, "pecb-content-type-tag", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "displayMode": { "alias": "displayMode"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3417
3677
|
}
|
|
3678
|
+
|
|
3418
3679
|
type QuestionTagType = 'scenario' | 'true-false' | 'essay' | 'multiple-choice';
|
|
3419
3680
|
type QuestionTagDisplay = 'full' | 'icon-only';
|
|
3420
3681
|
declare class QuestionTypeTagComponent {
|
|
3421
3682
|
type: _angular_core.InputSignal<QuestionTagType>;
|
|
3422
3683
|
displayMode: _angular_core.InputSignal<QuestionTagDisplay>;
|
|
3684
|
+
/** Optional explicit label override. When set, takes precedence over the
|
|
3685
|
+
* type-driven default — use this to localize (audit F20). */
|
|
3686
|
+
label: _angular_core.InputSignal<string>;
|
|
3423
3687
|
tagClasses: _angular_core.Signal<string[]>;
|
|
3424
3688
|
displayLabel: _angular_core.Signal<string>;
|
|
3425
3689
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<QuestionTypeTagComponent, never>;
|
|
3426
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<QuestionTypeTagComponent, "pecb-question-type-tag", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "displayMode": { "alias": "displayMode"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3690
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<QuestionTypeTagComponent, "pecb-question-type-tag", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "displayMode": { "alias": "displayMode"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3427
3691
|
}
|
|
3692
|
+
|
|
3428
3693
|
type PdfCardVariant = 'default' | 'hover' | 'compact';
|
|
3429
3694
|
declare class StandardsPdfCardComponent {
|
|
3430
|
-
|
|
3695
|
+
id: _angular_core.InputSignal<string>;
|
|
3431
3696
|
filename: _angular_core.InputSignal<string>;
|
|
3432
3697
|
variant: _angular_core.InputSignal<PdfCardVariant>;
|
|
3433
3698
|
showViewButton: _angular_core.InputSignal<boolean>;
|
|
@@ -3435,8 +3700,9 @@ declare class StandardsPdfCardComponent {
|
|
|
3435
3700
|
cardClasses: _angular_core.Signal<string[]>;
|
|
3436
3701
|
buttonClasses: _angular_core.Signal<string[]>;
|
|
3437
3702
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<StandardsPdfCardComponent, never>;
|
|
3438
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<StandardsPdfCardComponent, "pecb-standards-pdf-card", never, { "
|
|
3703
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<StandardsPdfCardComponent, "pecb-standards-pdf-card", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "filename": { "alias": "filename"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "showViewButton": { "alias": "showViewButton"; "required": false; "isSignal": true; }; }, { "viewClick": "viewClick"; }, never, never, true, never>;
|
|
3439
3704
|
}
|
|
3705
|
+
|
|
3440
3706
|
type NoteSidebarState = 'default' | 'unread' | 'active';
|
|
3441
3707
|
type NoteSidebarPosition = 'top' | 'middle' | 'bottom' | 'single';
|
|
3442
3708
|
declare class NoteSidebarItemComponent {
|
|
@@ -3454,22 +3720,25 @@ declare class NoteSidebarItemComponent {
|
|
|
3454
3720
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NoteSidebarItemComponent, never>;
|
|
3455
3721
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NoteSidebarItemComponent, "pecb-note-sidebar-item", never, { "name": { "alias": "name"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "time": { "alias": "time"; "required": false; "isSignal": true; }; "state": { "alias": "state"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3456
3722
|
}
|
|
3723
|
+
|
|
3457
3724
|
declare class AuthorDateTimeComponent {
|
|
3458
|
-
|
|
3725
|
+
id: _angular_core.InputSignal<string>;
|
|
3459
3726
|
author: _angular_core.InputSignal<string>;
|
|
3460
3727
|
date: _angular_core.InputSignal<string>;
|
|
3461
3728
|
time: _angular_core.InputSignal<string>;
|
|
3462
3729
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AuthorDateTimeComponent, never>;
|
|
3463
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AuthorDateTimeComponent, "pecb-author-date-time", never, { "
|
|
3730
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AuthorDateTimeComponent, "pecb-author-date-time", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "author": { "alias": "author"; "required": false; "isSignal": true; }; "date": { "alias": "date"; "required": false; "isSignal": true; }; "time": { "alias": "time"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3464
3731
|
}
|
|
3732
|
+
|
|
3465
3733
|
type CheckDeleteType = 'check' | 'delete';
|
|
3466
3734
|
declare class CheckDeleteIconComponent {
|
|
3467
3735
|
type: _angular_core.InputSignal<CheckDeleteType>;
|
|
3468
3736
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<CheckDeleteIconComponent, never>;
|
|
3469
3737
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CheckDeleteIconComponent, "pecb-check-delete-icon", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3470
3738
|
}
|
|
3739
|
+
|
|
3471
3740
|
declare class ProfileElementsCardComponent {
|
|
3472
|
-
|
|
3741
|
+
id: _angular_core.InputSignal<string>;
|
|
3473
3742
|
name: _angular_core.InputSignal<string>;
|
|
3474
3743
|
email: _angular_core.InputSignal<string>;
|
|
3475
3744
|
userId: _angular_core.InputSignal<string>;
|
|
@@ -3477,28 +3746,31 @@ declare class ProfileElementsCardComponent {
|
|
|
3477
3746
|
badgeLabel: _angular_core.InputSignal<string>;
|
|
3478
3747
|
avatarUrl: _angular_core.InputSignal<string>;
|
|
3479
3748
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ProfileElementsCardComponent, never>;
|
|
3480
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ProfileElementsCardComponent, "pecb-profile-elements-card", never, { "
|
|
3749
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ProfileElementsCardComponent, "pecb-profile-elements-card", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "email": { "alias": "email"; "required": false; "isSignal": true; }; "userId": { "alias": "userId"; "required": false; "isSignal": true; }; "statusText": { "alias": "statusText"; "required": false; "isSignal": true; }; "badgeLabel": { "alias": "badgeLabel"; "required": false; "isSignal": true; }; "avatarUrl": { "alias": "avatarUrl"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3481
3750
|
}
|
|
3751
|
+
|
|
3482
3752
|
declare class UserWithEmailComponent {
|
|
3483
|
-
|
|
3753
|
+
id: _angular_core.InputSignal<string>;
|
|
3484
3754
|
name: _angular_core.InputSignal<string>;
|
|
3485
3755
|
email: _angular_core.InputSignal<string>;
|
|
3486
3756
|
avatarUrl: _angular_core.InputSignal<string>;
|
|
3487
3757
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<UserWithEmailComponent, never>;
|
|
3488
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<UserWithEmailComponent, "pecb-user-with-email", never, { "
|
|
3758
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<UserWithEmailComponent, "pecb-user-with-email", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "email": { "alias": "email"; "required": false; "isSignal": true; }; "avatarUrl": { "alias": "avatarUrl"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3489
3759
|
}
|
|
3760
|
+
|
|
3490
3761
|
declare class CancelUpdateButtonsComponent {
|
|
3491
|
-
|
|
3762
|
+
id: _angular_core.InputSignal<string>;
|
|
3492
3763
|
cancelLabel: _angular_core.InputSignal<string>;
|
|
3493
3764
|
updateLabel: _angular_core.InputSignal<string>;
|
|
3494
3765
|
cancelClick: _angular_core.OutputEmitterRef<void>;
|
|
3495
3766
|
updateClick: _angular_core.OutputEmitterRef<void>;
|
|
3496
3767
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<CancelUpdateButtonsComponent, never>;
|
|
3497
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CancelUpdateButtonsComponent, "pecb-cancel-update-buttons", never, { "
|
|
3768
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CancelUpdateButtonsComponent, "pecb-cancel-update-buttons", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "cancelLabel": { "alias": "cancelLabel"; "required": false; "isSignal": true; }; "updateLabel": { "alias": "updateLabel"; "required": false; "isSignal": true; }; }, { "cancelClick": "cancelClick"; "updateClick": "updateClick"; }, never, never, true, never>;
|
|
3498
3769
|
}
|
|
3770
|
+
|
|
3499
3771
|
type InformationBoxVariant = 'default' | 'developer';
|
|
3500
3772
|
declare class InformationBoxComponent {
|
|
3501
|
-
|
|
3773
|
+
id: _angular_core.InputSignal<string>;
|
|
3502
3774
|
variant: _angular_core.InputSignal<InformationBoxVariant>;
|
|
3503
3775
|
text: _angular_core.InputSignal<string>;
|
|
3504
3776
|
title: _angular_core.InputSignal<string>;
|
|
@@ -3508,70 +3780,85 @@ declare class InformationBoxComponent {
|
|
|
3508
3780
|
'pecb-info-box--developer': boolean;
|
|
3509
3781
|
}>;
|
|
3510
3782
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<InformationBoxComponent, never>;
|
|
3511
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<InformationBoxComponent, "pecb-information-box", never, { "
|
|
3783
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<InformationBoxComponent, "pecb-information-box", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3512
3784
|
}
|
|
3785
|
+
|
|
3513
3786
|
declare class RequestSentByComponent {
|
|
3514
|
-
|
|
3787
|
+
id: _angular_core.InputSignal<string>;
|
|
3515
3788
|
name: _angular_core.InputSignal<string>;
|
|
3516
3789
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RequestSentByComponent, never>;
|
|
3517
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<RequestSentByComponent, "pecb-request-sent-by", never, { "
|
|
3790
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<RequestSentByComponent, "pecb-request-sent-by", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3518
3791
|
}
|
|
3792
|
+
|
|
3519
3793
|
type NotificationStatusType = 'read' | 'unread';
|
|
3520
3794
|
declare class NotificationStatusLinkComponent {
|
|
3521
|
-
|
|
3795
|
+
id: _angular_core.InputSignal<string>;
|
|
3522
3796
|
type: _angular_core.InputSignal<NotificationStatusType>;
|
|
3797
|
+
/** Optional explicit label override. When set, takes precedence over the
|
|
3798
|
+
* type-driven default — use this to localize (audit F20). */
|
|
3799
|
+
label: _angular_core.InputSignal<string>;
|
|
3523
3800
|
statusClick: _angular_core.OutputEmitterRef<void>;
|
|
3524
|
-
linkLabel: _angular_core.Signal<
|
|
3801
|
+
linkLabel: _angular_core.Signal<string>;
|
|
3525
3802
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NotificationStatusLinkComponent, never>;
|
|
3526
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NotificationStatusLinkComponent, "pecb-notification-status-link", never, { "
|
|
3803
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<NotificationStatusLinkComponent, "pecb-notification-status-link", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; }, { "statusClick": "statusClick"; }, never, never, true, never>;
|
|
3527
3804
|
}
|
|
3805
|
+
|
|
3528
3806
|
declare class EditCoverPhotoComponent {
|
|
3529
|
-
|
|
3807
|
+
id: _angular_core.InputSignal<string>;
|
|
3530
3808
|
editClick: _angular_core.OutputEmitterRef<void>;
|
|
3531
3809
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<EditCoverPhotoComponent, never>;
|
|
3532
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<EditCoverPhotoComponent, "pecb-edit-cover-photo", never, { "
|
|
3810
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<EditCoverPhotoComponent, "pecb-edit-cover-photo", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; }, { "editClick": "editClick"; }, never, never, true, never>;
|
|
3533
3811
|
}
|
|
3812
|
+
|
|
3534
3813
|
type RequestStatusIconType = 'warning' | 'success';
|
|
3535
3814
|
declare class RequestStatusBarComponent {
|
|
3536
|
-
|
|
3815
|
+
id: _angular_core.InputSignal<string>;
|
|
3537
3816
|
message: _angular_core.InputSignal<string>;
|
|
3538
3817
|
linkText: _angular_core.InputSignal<string>;
|
|
3539
3818
|
iconType: _angular_core.InputSignal<RequestStatusIconType>;
|
|
3540
3819
|
linkClick: _angular_core.OutputEmitterRef<void>;
|
|
3541
3820
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RequestStatusBarComponent, never>;
|
|
3542
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<RequestStatusBarComponent, "pecb-request-status-bar", never, { "
|
|
3821
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<RequestStatusBarComponent, "pecb-request-status-bar", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "linkText": { "alias": "linkText"; "required": false; "isSignal": true; }; "iconType": { "alias": "iconType"; "required": false; "isSignal": true; }; }, { "linkClick": "linkClick"; }, never, never, true, never>;
|
|
3543
3822
|
}
|
|
3823
|
+
|
|
3544
3824
|
type VerifyItemStatus = 'pending' | 'verified' | 'rejected' | 'warning';
|
|
3545
3825
|
interface VerifyChecklistItem {
|
|
3546
3826
|
text: string;
|
|
3547
3827
|
status: VerifyItemStatus;
|
|
3548
3828
|
}
|
|
3549
3829
|
declare class VerifyChecklistComponent {
|
|
3550
|
-
|
|
3830
|
+
id: _angular_core.InputSignal<string>;
|
|
3551
3831
|
items: _angular_core.InputSignal<VerifyChecklistItem[]>;
|
|
3552
3832
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<VerifyChecklistComponent, never>;
|
|
3553
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<VerifyChecklistComponent, "pecb-verify-checklist", never, { "
|
|
3833
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<VerifyChecklistComponent, "pecb-verify-checklist", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3554
3834
|
}
|
|
3835
|
+
|
|
3555
3836
|
type EditButtonVariant = 'default' | 'black';
|
|
3556
3837
|
declare class EditButtonComponent {
|
|
3557
|
-
|
|
3838
|
+
id: _angular_core.InputSignal<string>;
|
|
3558
3839
|
variant: _angular_core.InputSignal<EditButtonVariant>;
|
|
3840
|
+
/** Aria-label for the button — override to localize (audit F20). */
|
|
3841
|
+
ariaLabel: _angular_core.InputSignal<string>;
|
|
3559
3842
|
editBtnClick: _angular_core.OutputEmitterRef<void>;
|
|
3560
3843
|
btnClasses: _angular_core.Signal<string[]>;
|
|
3561
3844
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<EditButtonComponent, never>;
|
|
3562
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<EditButtonComponent, "pecb-edit-button", never, { "
|
|
3845
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<EditButtonComponent, "pecb-edit-button", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "editBtnClick": "editBtnClick"; }, never, never, true, never>;
|
|
3563
3846
|
}
|
|
3847
|
+
|
|
3564
3848
|
type AddButtonVariant = 'default' | 'dark';
|
|
3565
3849
|
declare class AddButtonComponent {
|
|
3566
|
-
|
|
3850
|
+
id: _angular_core.InputSignal<string>;
|
|
3567
3851
|
variant: _angular_core.InputSignal<AddButtonVariant>;
|
|
3852
|
+
/** Aria-label for the button — override to localize (audit F20). */
|
|
3853
|
+
ariaLabel: _angular_core.InputSignal<string>;
|
|
3568
3854
|
addBtnClick: _angular_core.OutputEmitterRef<void>;
|
|
3569
3855
|
btnClasses: _angular_core.Signal<string[]>;
|
|
3570
3856
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AddButtonComponent, never>;
|
|
3571
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AddButtonComponent, "pecb-add-button", never, { "
|
|
3857
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AddButtonComponent, "pecb-add-button", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "addBtnClick": "addBtnClick"; }, never, never, true, never>;
|
|
3572
3858
|
}
|
|
3859
|
+
|
|
3573
3860
|
declare class HorizontalStepsComponent {
|
|
3574
|
-
|
|
3861
|
+
id: _angular_core.InputSignal<string>;
|
|
3575
3862
|
totalSteps: _angular_core.InputSignal<number>;
|
|
3576
3863
|
activeStep: _angular_core.InputSignal<number>;
|
|
3577
3864
|
stepLabels: _angular_core.InputSignal<string[]>;
|
|
@@ -3580,25 +3867,27 @@ declare class HorizontalStepsComponent {
|
|
|
3580
3867
|
label: string;
|
|
3581
3868
|
}[]>;
|
|
3582
3869
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<HorizontalStepsComponent, never>;
|
|
3583
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<HorizontalStepsComponent, "pecb-horizontal-steps", never, { "
|
|
3870
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<HorizontalStepsComponent, "pecb-horizontal-steps", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "totalSteps": { "alias": "totalSteps"; "required": false; "isSignal": true; }; "activeStep": { "alias": "activeStep"; "required": false; "isSignal": true; }; "stepLabels": { "alias": "stepLabels"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3584
3871
|
}
|
|
3872
|
+
|
|
3585
3873
|
type RadioDisplayState = 'deactivated' | 'activated';
|
|
3586
3874
|
declare class RadioDisplayComponent {
|
|
3587
|
-
|
|
3875
|
+
id: _angular_core.InputSignal<string>;
|
|
3588
3876
|
state: _angular_core.InputSignal<RadioDisplayState>;
|
|
3589
3877
|
label: _angular_core.InputSignal<string>;
|
|
3590
3878
|
radioClasses: _angular_core.Signal<string[]>;
|
|
3591
3879
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RadioDisplayComponent, never>;
|
|
3592
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<RadioDisplayComponent, "pecb-radio-display", never, { "
|
|
3880
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<RadioDisplayComponent, "pecb-radio-display", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "state": { "alias": "state"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3593
3881
|
}
|
|
3882
|
+
|
|
3594
3883
|
type CheckboxDisplayState = 'deactivated' | 'activated' | 'gray';
|
|
3595
3884
|
declare class CheckboxDisplayComponent {
|
|
3596
|
-
|
|
3885
|
+
id: _angular_core.InputSignal<string>;
|
|
3597
3886
|
state: _angular_core.InputSignal<CheckboxDisplayState>;
|
|
3598
3887
|
label: _angular_core.InputSignal<string>;
|
|
3599
3888
|
checkboxClasses: _angular_core.Signal<string[]>;
|
|
3600
3889
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<CheckboxDisplayComponent, never>;
|
|
3601
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CheckboxDisplayComponent, "pecb-checkbox-display", never, { "
|
|
3890
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CheckboxDisplayComponent, "pecb-checkbox-display", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "state": { "alias": "state"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3602
3891
|
}
|
|
3603
3892
|
|
|
3604
3893
|
type FilterFieldType = 'dropdown' | 'input' | 'number' | 'date-range' | 'number-range';
|
|
@@ -3632,7 +3921,7 @@ declare class FilterColumnsComponent implements OnInit, OnChanges, OnDestroy, Af
|
|
|
3632
3921
|
modalPanel?: ElementRef<HTMLElement>;
|
|
3633
3922
|
id: _angular_core.InputSignal<string>;
|
|
3634
3923
|
/** Whether the modal is open */
|
|
3635
|
-
isOpen: _angular_core.
|
|
3924
|
+
isOpen: _angular_core.ModelSignal<boolean>;
|
|
3636
3925
|
/** Whether clicking the backdrop closes the modal */
|
|
3637
3926
|
closeOnBackdropClick: _angular_core.InputSignal<boolean>;
|
|
3638
3927
|
/** Whether pressing Escape closes the modal */
|
|
@@ -3698,7 +3987,7 @@ declare class FilterColumnsComponent implements OnInit, OnChanges, OnDestroy, Af
|
|
|
3698
3987
|
onViewNameChange(value: string): void;
|
|
3699
3988
|
onDefaultViewChange(checked: boolean): void;
|
|
3700
3989
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FilterColumnsComponent, never>;
|
|
3701
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FilterColumnsComponent, "pecb-filter-columns", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "closeOnBackdropClick": { "alias": "closeOnBackdropClick"; "required": false; "isSignal": true; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; "isSignal": true; }; "filterFields": { "alias": "filterFields"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "activeTab": { "alias": "activeTab"; "required": false; "isSignal": true; }; "showSaveAsView": { "alias": "showSaveAsView"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "applyLabel": { "alias": "applyLabel"; "required": false; "isSignal": true; }; "cancelLabel": { "alias": "cancelLabel"; "required": false; "isSignal": true; }; }, { "applied": "applied"; "cancelled": "cancelled"; "closed": "closed"; }, never, never, true, never>;
|
|
3990
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FilterColumnsComponent, "pecb-filter-columns", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "closeOnBackdropClick": { "alias": "closeOnBackdropClick"; "required": false; "isSignal": true; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; "isSignal": true; }; "filterFields": { "alias": "filterFields"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; "activeTab": { "alias": "activeTab"; "required": false; "isSignal": true; }; "showSaveAsView": { "alias": "showSaveAsView"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "applyLabel": { "alias": "applyLabel"; "required": false; "isSignal": true; }; "cancelLabel": { "alias": "cancelLabel"; "required": false; "isSignal": true; }; }, { "isOpen": "isOpenChange"; "applied": "applied"; "cancelled": "cancelled"; "closed": "closed"; }, never, never, true, never>;
|
|
3702
3991
|
}
|
|
3703
3992
|
|
|
3704
3993
|
type FileUploadVariant = 'dropzone' | 'inline';
|
|
@@ -3742,6 +4031,38 @@ declare class FileUploadComponent implements OnInit {
|
|
|
3742
4031
|
browseLabel: _angular_core.InputSignal<string>;
|
|
3743
4032
|
/** Upload button label (inline variant) */
|
|
3744
4033
|
uploadLabel: _angular_core.InputSignal<string>;
|
|
4034
|
+
/** Visible "Click to upload" link in the dropzone. */
|
|
4035
|
+
clickToUploadText: _angular_core.InputSignal<string>;
|
|
4036
|
+
/** Visible "or drag and drop" subtitle in the dropzone. */
|
|
4037
|
+
dragAndDropText: _angular_core.InputSignal<string>;
|
|
4038
|
+
/** Visible "OR" divider text. */
|
|
4039
|
+
orDividerText: _angular_core.InputSignal<string>;
|
|
4040
|
+
/** Visible title shown during uploading state. */
|
|
4041
|
+
uploadingTitle: _angular_core.InputSignal<string>;
|
|
4042
|
+
/** Visible "Clear Upload" action text after a successful single upload. */
|
|
4043
|
+
clearUploadText: _angular_core.InputSignal<string>;
|
|
4044
|
+
/** Visible "Failed to Upload" title shown in error state. */
|
|
4045
|
+
failedToUploadText: _angular_core.InputSignal<string>;
|
|
4046
|
+
/** Default error message used when `file.errorMessage` is unset. */
|
|
4047
|
+
defaultErrorMessage: _angular_core.InputSignal<string>;
|
|
4048
|
+
/** Visible "Try Again" retry action text. */
|
|
4049
|
+
tryAgainText: _angular_core.InputSignal<string>;
|
|
4050
|
+
/** Visible "Uploaded Files" label above the multi-file list. */
|
|
4051
|
+
uploadedFilesLabel: _angular_core.InputSignal<string>;
|
|
4052
|
+
/** Aria-label for the header close (×) button. */
|
|
4053
|
+
closeAriaLabel: _angular_core.InputSignal<string>;
|
|
4054
|
+
/** Aria-label for the cancel-upload (×) button on each file row. */
|
|
4055
|
+
cancelUploadAriaLabel: _angular_core.InputSignal<string>;
|
|
4056
|
+
/** Aria-label for the delete-file (trash) button on each completed file row. */
|
|
4057
|
+
deleteFileAriaLabel: _angular_core.InputSignal<string>;
|
|
4058
|
+
/** Aria-label for the download-file button on each completed file row. */
|
|
4059
|
+
downloadFileAriaLabel: _angular_core.InputSignal<string>;
|
|
4060
|
+
/** Suffix for the circular progress aria-label (e.g. `42% uploaded`). */
|
|
4061
|
+
uploadedSuffix: _angular_core.InputSignal<string>;
|
|
4062
|
+
/** Aria-label prefix for the single-file dropzone. Rendered as `<this> <formats>`. */
|
|
4063
|
+
uploadFileAriaLabelPrefix: _angular_core.InputSignal<string>;
|
|
4064
|
+
/** Aria-label prefix for the multi-file dropzone. Rendered as `<this> <formats>`. */
|
|
4065
|
+
uploadFilesAriaLabelPrefix: _angular_core.InputSignal<string>;
|
|
3745
4066
|
/** Whether the component is disabled */
|
|
3746
4067
|
disabled: _angular_core.InputSignal<boolean>;
|
|
3747
4068
|
/** Whether to show header with title and close button (multiple dropzone) */
|
|
@@ -3798,7 +4119,7 @@ declare class FileUploadComponent implements OnInit {
|
|
|
3798
4119
|
formatFileDate(date: Date): string;
|
|
3799
4120
|
getFileTypeColor(type: string): string;
|
|
3800
4121
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FileUploadComponent, never>;
|
|
3801
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FileUploadComponent, "pecb-file-upload", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "accept": { "alias": "accept"; "required": false; "isSignal": true; }; "maxFileSize": { "alias": "maxFileSize"; "required": false; "isSignal": true; }; "maxFiles": { "alias": "maxFiles"; "required": false; "isSignal": true; }; "uploadTitle": { "alias": "uploadTitle"; "required": false; "isSignal": true; }; "uploadDescription": { "alias": "uploadDescription"; "required": false; "isSignal": true; }; "maxSizeLabel": { "alias": "maxSizeLabel"; "required": false; "isSignal": true; }; "acceptedFormatsText": { "alias": "acceptedFormatsText"; "required": false; "isSignal": true; }; "browseLabel": { "alias": "browseLabel"; "required": false; "isSignal": true; }; "uploadLabel": { "alias": "uploadLabel"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "showHeader": { "alias": "showHeader"; "required": false; "isSignal": true; }; "initialFiles": { "alias": "initialFiles"; "required": false; "isSignal": true; }; }, { "filesSelected": "filesSelected"; "fileCancelled": "fileCancelled"; "fileRetry": "fileRetry"; "fileDeleted": "fileDeleted"; "fileDownload": "fileDownload"; "cleared": "cleared"; "closeClicked": "closeClicked"; }, never, never, true, never>;
|
|
4122
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FileUploadComponent, "pecb-file-upload", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "accept": { "alias": "accept"; "required": false; "isSignal": true; }; "maxFileSize": { "alias": "maxFileSize"; "required": false; "isSignal": true; }; "maxFiles": { "alias": "maxFiles"; "required": false; "isSignal": true; }; "uploadTitle": { "alias": "uploadTitle"; "required": false; "isSignal": true; }; "uploadDescription": { "alias": "uploadDescription"; "required": false; "isSignal": true; }; "maxSizeLabel": { "alias": "maxSizeLabel"; "required": false; "isSignal": true; }; "acceptedFormatsText": { "alias": "acceptedFormatsText"; "required": false; "isSignal": true; }; "browseLabel": { "alias": "browseLabel"; "required": false; "isSignal": true; }; "uploadLabel": { "alias": "uploadLabel"; "required": false; "isSignal": true; }; "clickToUploadText": { "alias": "clickToUploadText"; "required": false; "isSignal": true; }; "dragAndDropText": { "alias": "dragAndDropText"; "required": false; "isSignal": true; }; "orDividerText": { "alias": "orDividerText"; "required": false; "isSignal": true; }; "uploadingTitle": { "alias": "uploadingTitle"; "required": false; "isSignal": true; }; "clearUploadText": { "alias": "clearUploadText"; "required": false; "isSignal": true; }; "failedToUploadText": { "alias": "failedToUploadText"; "required": false; "isSignal": true; }; "defaultErrorMessage": { "alias": "defaultErrorMessage"; "required": false; "isSignal": true; }; "tryAgainText": { "alias": "tryAgainText"; "required": false; "isSignal": true; }; "uploadedFilesLabel": { "alias": "uploadedFilesLabel"; "required": false; "isSignal": true; }; "closeAriaLabel": { "alias": "closeAriaLabel"; "required": false; "isSignal": true; }; "cancelUploadAriaLabel": { "alias": "cancelUploadAriaLabel"; "required": false; "isSignal": true; }; "deleteFileAriaLabel": { "alias": "deleteFileAriaLabel"; "required": false; "isSignal": true; }; "downloadFileAriaLabel": { "alias": "downloadFileAriaLabel"; "required": false; "isSignal": true; }; "uploadedSuffix": { "alias": "uploadedSuffix"; "required": false; "isSignal": true; }; "uploadFileAriaLabelPrefix": { "alias": "uploadFileAriaLabelPrefix"; "required": false; "isSignal": true; }; "uploadFilesAriaLabelPrefix": { "alias": "uploadFilesAriaLabelPrefix"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "showHeader": { "alias": "showHeader"; "required": false; "isSignal": true; }; "initialFiles": { "alias": "initialFiles"; "required": false; "isSignal": true; }; }, { "filesSelected": "filesSelected"; "fileCancelled": "fileCancelled"; "fileRetry": "fileRetry"; "fileDeleted": "fileDeleted"; "fileDownload": "fileDownload"; "cleared": "cleared"; "closeClicked": "closeClicked"; }, never, never, true, never>;
|
|
3802
4123
|
}
|
|
3803
4124
|
|
|
3804
4125
|
type ToolbarVariant = 'buttons' | 'tabs';
|
|
@@ -3846,6 +4167,10 @@ declare class ToolbarBarComponent {
|
|
|
3846
4167
|
buttons: _angular_core.InputSignal<ToolbarButton[]>;
|
|
3847
4168
|
/** Tabs configuration (for variant='tabs') */
|
|
3848
4169
|
tabs: _angular_core.InputSignal<ToolbarTab[]>;
|
|
4170
|
+
/** Visible text for the "Go Back" button. */
|
|
4171
|
+
backText: _angular_core.InputSignal<string>;
|
|
4172
|
+
/** Placeholder for the search input. */
|
|
4173
|
+
searchPlaceholder: _angular_core.InputSignal<string>;
|
|
3849
4174
|
/** Emits when Go Back is clicked */
|
|
3850
4175
|
backClick: _angular_core.OutputEmitterRef<void>;
|
|
3851
4176
|
/** Emits when a button is clicked */
|
|
@@ -3869,7 +4194,7 @@ declare class ToolbarBarComponent {
|
|
|
3869
4194
|
/** Handle search input */
|
|
3870
4195
|
onSearchInput(event: Event): void;
|
|
3871
4196
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ToolbarBarComponent, never>;
|
|
3872
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ToolbarBarComponent, "pecb-toolbar-bar", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "showBackButton": { "alias": "showBackButton"; "required": false; "isSignal": true; }; "showSearch": { "alias": "showSearch"; "required": false; "isSignal": true; }; "buttons": { "alias": "buttons"; "required": false; "isSignal": true; }; "tabs": { "alias": "tabs"; "required": false; "isSignal": true; }; }, { "backClick": "backClick"; "buttonClick": "buttonClick"; "tabClick": "tabClick"; "searchChange": "searchChange"; }, never, never, true, never>;
|
|
4197
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ToolbarBarComponent, "pecb-toolbar-bar", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "showBackButton": { "alias": "showBackButton"; "required": false; "isSignal": true; }; "showSearch": { "alias": "showSearch"; "required": false; "isSignal": true; }; "buttons": { "alias": "buttons"; "required": false; "isSignal": true; }; "tabs": { "alias": "tabs"; "required": false; "isSignal": true; }; "backText": { "alias": "backText"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; }, { "backClick": "backClick"; "buttonClick": "buttonClick"; "tabClick": "tabClick"; "searchChange": "searchChange"; }, never, never, true, never>;
|
|
3873
4198
|
}
|
|
3874
4199
|
|
|
3875
4200
|
interface NoteItem {
|
|
@@ -4052,7 +4377,7 @@ declare class TourComponent implements OnInit, OnChanges {
|
|
|
4052
4377
|
/** Tour steps configuration */
|
|
4053
4378
|
steps: _angular_core.InputSignal<TourStep[]>;
|
|
4054
4379
|
/** Whether the tour is visible */
|
|
4055
|
-
isOpen: _angular_core.
|
|
4380
|
+
isOpen: _angular_core.ModelSignal<boolean>;
|
|
4056
4381
|
/** Label for the previous button */
|
|
4057
4382
|
previousLabel: _angular_core.InputSignal<string>;
|
|
4058
4383
|
/** Label for the next button */
|
|
@@ -4087,28 +4412,339 @@ declare class TourComponent implements OnInit, OnChanges {
|
|
|
4087
4412
|
onClose(): void;
|
|
4088
4413
|
goToStep(index: number): void;
|
|
4089
4414
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TourComponent, never>;
|
|
4090
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TourComponent, "pecb-tour", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "indicatorType": { "alias": "indicatorType"; "required": false; "isSignal": true; }; "steps": { "alias": "steps"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "previousLabel": { "alias": "previousLabel"; "required": false; "isSignal": true; }; "nextLabel": { "alias": "nextLabel"; "required": false; "isSignal": true; }; "finishLabel": { "alias": "finishLabel"; "required": false; "isSignal": true; }; "initialStep": { "alias": "initialStep"; "required": false; "isSignal": true; }; }, { "closed": "closed"; "previousClicked": "previousClicked"; "nextClicked": "nextClicked"; "finished": "finished"; "stepChanged": "stepChanged"; }, never, never, true, never>;
|
|
4415
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TourComponent, "pecb-tour", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "indicatorType": { "alias": "indicatorType"; "required": false; "isSignal": true; }; "steps": { "alias": "steps"; "required": false; "isSignal": true; }; "isOpen": { "alias": "isOpen"; "required": false; "isSignal": true; }; "previousLabel": { "alias": "previousLabel"; "required": false; "isSignal": true; }; "nextLabel": { "alias": "nextLabel"; "required": false; "isSignal": true; }; "finishLabel": { "alias": "finishLabel"; "required": false; "isSignal": true; }; "initialStep": { "alias": "initialStep"; "required": false; "isSignal": true; }; }, { "isOpen": "isOpenChange"; "closed": "closed"; "previousClicked": "previousClicked"; "nextClicked": "nextClicked"; "finished": "finished"; "stepChanged": "stepChanged"; }, never, never, true, never>;
|
|
4091
4416
|
}
|
|
4092
4417
|
|
|
4418
|
+
type AdminHeaderFieldType = 'text' | 'badge' | 'dropdown' | 'link' | 'date' | 'profile' | 'radio' | 'checkbox' | 'paragraph' | 'progress' | 'custom';
|
|
4093
4419
|
/**
|
|
4094
|
-
*
|
|
4420
|
+
* Directive to define a custom field template.
|
|
4421
|
+
* Use with `type: 'custom'` and a matching `templateId`.
|
|
4095
4422
|
*
|
|
4096
|
-
*
|
|
4097
|
-
*
|
|
4423
|
+
* ```html
|
|
4424
|
+
* <pecb-admin-header [fields]="fields">
|
|
4425
|
+
* <ng-template pecbAdminHeaderField="my-widget" let-field>
|
|
4426
|
+
* <my-custom-widget [data]="field.value"></my-custom-widget>
|
|
4427
|
+
* </ng-template>
|
|
4428
|
+
* </pecb-admin-header>
|
|
4429
|
+
* ```
|
|
4430
|
+
*/
|
|
4431
|
+
declare class AdminHeaderFieldTemplateDirective {
|
|
4432
|
+
templateRef: TemplateRef<unknown>;
|
|
4433
|
+
pecbAdminHeaderField: _angular_core.InputSignal<string>;
|
|
4434
|
+
constructor(templateRef: TemplateRef<unknown>);
|
|
4435
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AdminHeaderFieldTemplateDirective, never>;
|
|
4436
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<AdminHeaderFieldTemplateDirective, "ng-template[pecbAdminHeaderField]", never, { "pecbAdminHeaderField": { "alias": "pecbAdminHeaderField"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
4437
|
+
}
|
|
4438
|
+
type AdminHeaderBadgeVariant = 'default' | 'success' | 'error' | 'warning' | 'info' | 'accent' | 'outline';
|
|
4439
|
+
type AdminHeaderActionType = 'add' | 'label';
|
|
4440
|
+
type AdminHeaderMetadataType = 'text' | 'badge' | 'date';
|
|
4441
|
+
/**
|
|
4442
|
+
* Profile configuration for the admin header.
|
|
4443
|
+
* Only `name` is required — all other fields are optional and the layout adapts.
|
|
4444
|
+
*/
|
|
4445
|
+
interface AdminHeaderProfile {
|
|
4446
|
+
/** Avatar image URL */
|
|
4447
|
+
src?: string;
|
|
4448
|
+
/** Avatar fallback initials */
|
|
4449
|
+
initials?: string;
|
|
4450
|
+
/** Display name (always shown) */
|
|
4451
|
+
name: string;
|
|
4452
|
+
/** Email address */
|
|
4453
|
+
email?: string;
|
|
4454
|
+
/** User/Entity ID */
|
|
4455
|
+
id?: string | number;
|
|
4456
|
+
/** Verification status text (e.g. "Verification is under review") */
|
|
4457
|
+
verificationStatus?: string;
|
|
4458
|
+
/** Badge label (e.g. "Member") */
|
|
4459
|
+
badge?: string;
|
|
4460
|
+
/** Badge variant */
|
|
4461
|
+
badgeVariant?: AdminHeaderBadgeVariant;
|
|
4462
|
+
}
|
|
4463
|
+
/**
|
|
4464
|
+
* Action button/chip displayed next to the profile info.
|
|
4465
|
+
*/
|
|
4466
|
+
interface AdminHeaderAction {
|
|
4467
|
+
/** `'add'` renders a + icon button, `'label'` renders a chip */
|
|
4468
|
+
type: AdminHeaderActionType;
|
|
4469
|
+
/** Chip label text */
|
|
4470
|
+
label?: string;
|
|
4471
|
+
/** Chip variant: `'filled'` (dark) or `'outline'` */
|
|
4472
|
+
variant?: 'filled' | 'outline';
|
|
4473
|
+
/** Button variant — overrides the default mapping from `variant`. Accepts any ButtonVariant value. */
|
|
4474
|
+
buttonVariant?: ButtonVariant;
|
|
4475
|
+
/** Whether the chip shows a + icon */
|
|
4476
|
+
showAddIcon?: boolean;
|
|
4477
|
+
/** Icon name from IconRegistry (overrides the default + icon) */
|
|
4478
|
+
icon?: string;
|
|
4479
|
+
/** Position of the icon: `'left'` (default) or `'right'` */
|
|
4480
|
+
iconPosition?: 'left' | 'right';
|
|
4481
|
+
/** Whether the chip shows a x trailing remove icon */
|
|
4482
|
+
removable?: boolean;
|
|
4483
|
+
/** Unique identifier for click events */
|
|
4484
|
+
id?: string;
|
|
4485
|
+
}
|
|
4486
|
+
/**
|
|
4487
|
+
* Metadata item displayed next to the profile (alternative to actions).
|
|
4488
|
+
*/
|
|
4489
|
+
interface AdminHeaderMetadata {
|
|
4490
|
+
/** Display label */
|
|
4491
|
+
label?: string;
|
|
4492
|
+
/** Display value */
|
|
4493
|
+
value?: string;
|
|
4494
|
+
/** Item type */
|
|
4495
|
+
type?: AdminHeaderMetadataType;
|
|
4496
|
+
/** Badge variant when type is 'badge' */
|
|
4497
|
+
badgeVariant?: AdminHeaderBadgeVariant;
|
|
4498
|
+
/** Icon name for date type */
|
|
4499
|
+
icon?: string;
|
|
4500
|
+
}
|
|
4501
|
+
/**
|
|
4502
|
+
* A single field in the data grid.
|
|
4503
|
+
* The `type` discriminator determines which sub-template renders.
|
|
4504
|
+
*/
|
|
4505
|
+
interface AdminHeaderField {
|
|
4506
|
+
/** Field renderer type */
|
|
4507
|
+
type: AdminHeaderFieldType;
|
|
4508
|
+
/** Field label (shown above the value in lighter text) */
|
|
4509
|
+
label?: string;
|
|
4510
|
+
/** Field value */
|
|
4511
|
+
value?: string;
|
|
4512
|
+
/** Badge variant (for `type: 'badge'`) */
|
|
4513
|
+
badgeVariant?: AdminHeaderBadgeVariant;
|
|
4514
|
+
/** Link URL (for `type: 'link'`) */
|
|
4515
|
+
linkUrl?: string;
|
|
4516
|
+
/** Icon name from registry (for `type: 'date'`) */
|
|
4517
|
+
dateIcon?: string;
|
|
4518
|
+
/** Date status: `'success'` shows green check (for `type: 'date'`) */
|
|
4519
|
+
dateStatus?: 'success' | 'default';
|
|
4520
|
+
/** Profile image URL (for `type: 'profile'`) */
|
|
4521
|
+
profileSrc?: string;
|
|
4522
|
+
/** Profile initials fallback (for `type: 'profile'`) */
|
|
4523
|
+
profileInitials?: string;
|
|
4524
|
+
/** Profile name (for `type: 'profile'`) */
|
|
4525
|
+
profileName?: string;
|
|
4526
|
+
/** Profile email (for `type: 'profile'`) */
|
|
4527
|
+
profileEmail?: string;
|
|
4528
|
+
/** Dropdown options (for `type: 'dropdown'`) */
|
|
4529
|
+
options?: {
|
|
4530
|
+
label: string;
|
|
4531
|
+
value: string;
|
|
4532
|
+
}[];
|
|
4533
|
+
/** Currently selected dropdown value (for `type: 'dropdown'`) */
|
|
4534
|
+
selectedValue?: string;
|
|
4535
|
+
/** Selected radio/checkbox value: `'yes'` or `'no'` (for `type: 'radio'` | `'checkbox'`) */
|
|
4536
|
+
selectedOption?: 'yes' | 'no';
|
|
4537
|
+
/** Progress value 0–100 (for `type: 'progress'`) */
|
|
4538
|
+
progressValue?: number;
|
|
4539
|
+
/** Metadata text shown below the bar (for `type: 'progress'`) */
|
|
4540
|
+
progressMetadata?: string;
|
|
4541
|
+
/** Whether to show the percentage label (for `type: 'progress'`, default true) */
|
|
4542
|
+
progressShowPercentage?: boolean;
|
|
4543
|
+
/** Template ID to match a projected `ng-template[pecbAdminHeaderField]` (for `type: 'custom'`) */
|
|
4544
|
+
templateId?: string;
|
|
4545
|
+
/** Arbitrary data passed to custom templates via `let-data` (for `type: 'custom'`) */
|
|
4546
|
+
data?: Record<string, unknown>;
|
|
4547
|
+
}
|
|
4548
|
+
declare class AdminHeaderComponent {
|
|
4549
|
+
private readonly registry;
|
|
4550
|
+
private readonly sanitizer;
|
|
4551
|
+
/** Projected custom field templates */
|
|
4552
|
+
fieldTemplates: _angular_core.Signal<readonly AdminHeaderFieldTemplateDirective[]>;
|
|
4553
|
+
/** Unique element ID */
|
|
4554
|
+
id: _angular_core.InputSignal<string>;
|
|
4555
|
+
/** Background image URL (e.g. path to banner SVG) */
|
|
4556
|
+
backgroundUrl: _angular_core.InputSignal<string | undefined>;
|
|
4557
|
+
/** Title displayed top-left */
|
|
4558
|
+
title: _angular_core.InputSignal<string | undefined>;
|
|
4559
|
+
/**
|
|
4560
|
+
* Icon name for the top-right action button. Resolved through the library's
|
|
4561
|
+
* IconRegistry, so only library-registered (trusted) SVGs can be rendered.
|
|
4562
|
+
*
|
|
4563
|
+
* Audit F19: the previous `headerActionIconSvg` raw-SVG-string input was
|
|
4564
|
+
* removed — it let consumer-supplied markup reach `bypassSecurityTrustHtml()`,
|
|
4565
|
+
* an XSS vector. To use a custom icon, register it once via
|
|
4566
|
+
* `IconRegistry.register(name, svg)` and pass its name here.
|
|
4567
|
+
*/
|
|
4568
|
+
headerActionIcon: _angular_core.InputSignal<string | undefined>;
|
|
4569
|
+
/** Accessible label for the header action button */
|
|
4570
|
+
headerActionLabel: _angular_core.InputSignal<string>;
|
|
4571
|
+
/** Profile configuration. When omitted, no profile row renders. */
|
|
4572
|
+
profile: _angular_core.InputSignal<AdminHeaderProfile | undefined>;
|
|
4573
|
+
/** Action chips/buttons displayed to the right of the profile */
|
|
4574
|
+
actions: _angular_core.InputSignal<AdminHeaderAction[]>;
|
|
4575
|
+
/** Metadata items displayed to the right of the profile (alternative to actions) */
|
|
4576
|
+
metadata: _angular_core.InputSignal<AdminHeaderMetadata[]>;
|
|
4577
|
+
/** Flat array of fields rendered in the data grid */
|
|
4578
|
+
fields: _angular_core.InputSignal<AdminHeaderField[]>;
|
|
4579
|
+
/** Number of columns in the data grid (1–4) */
|
|
4580
|
+
columns: _angular_core.InputSignal<2 | 1 | 3 | 4>;
|
|
4581
|
+
/** Emits when the top-right action button is clicked */
|
|
4582
|
+
headerActionClicked: _angular_core.OutputEmitterRef<void>;
|
|
4583
|
+
/** Emits the action id/index when an action chip is clicked */
|
|
4584
|
+
actionClicked: _angular_core.OutputEmitterRef<{
|
|
4585
|
+
action: AdminHeaderAction;
|
|
4586
|
+
index: number;
|
|
4587
|
+
}>;
|
|
4588
|
+
/** Emits when an action chip's remove (x) button is clicked */
|
|
4589
|
+
actionRemoved: _angular_core.OutputEmitterRef<{
|
|
4590
|
+
action: AdminHeaderAction;
|
|
4591
|
+
index: number;
|
|
4592
|
+
}>;
|
|
4593
|
+
/** Emits when a link field is clicked */
|
|
4594
|
+
linkClicked: _angular_core.OutputEmitterRef<{
|
|
4595
|
+
field: AdminHeaderField;
|
|
4596
|
+
url: string;
|
|
4597
|
+
}>;
|
|
4598
|
+
/** Emits when a dropdown field value changes */
|
|
4599
|
+
dropdownChanged: _angular_core.OutputEmitterRef<{
|
|
4600
|
+
field: AdminHeaderField;
|
|
4601
|
+
value: string;
|
|
4602
|
+
}>;
|
|
4603
|
+
/** Emits when a radio/checkbox field value changes */
|
|
4604
|
+
fieldOptionChanged: _angular_core.OutputEmitterRef<{
|
|
4605
|
+
field: AdminHeaderField;
|
|
4606
|
+
value: "yes" | "no";
|
|
4607
|
+
}>;
|
|
4608
|
+
hasTitle: _angular_core.Signal<boolean>;
|
|
4609
|
+
hasProfile: _angular_core.Signal<boolean>;
|
|
4610
|
+
hasActions: _angular_core.Signal<boolean>;
|
|
4611
|
+
hasMetadata: _angular_core.Signal<boolean>;
|
|
4612
|
+
hasFields: _angular_core.Signal<boolean>;
|
|
4613
|
+
hasHeaderAction: _angular_core.Signal<boolean>;
|
|
4614
|
+
hasTitleBar: _angular_core.Signal<boolean>;
|
|
4615
|
+
/** CSS class for the grid based on column count */
|
|
4616
|
+
gridClass: _angular_core.Signal<string>;
|
|
4617
|
+
/**
|
|
4618
|
+
* Raw SVG markup for the header action button, resolved from the IconRegistry
|
|
4619
|
+
* by name and passed to `<pecb-button [icon]>`. Only library-registered icons
|
|
4620
|
+
* can be rendered — no consumer-supplied markup is trusted here (audit F19).
|
|
4621
|
+
*
|
|
4622
|
+
* The previous `headerActionSvg` computed (which called
|
|
4623
|
+
* `bypassSecurityTrustHtml()` on the consumer's raw string) has been removed:
|
|
4624
|
+
* it was unused by the template and was the XSS vector F19 flagged.
|
|
4625
|
+
*/
|
|
4626
|
+
headerActionIconRaw: _angular_core.Signal<string>;
|
|
4627
|
+
backgroundStyle: _angular_core.Signal<{
|
|
4628
|
+
'background-image'?: undefined;
|
|
4629
|
+
} | {
|
|
4630
|
+
'background-image': string;
|
|
4631
|
+
}>;
|
|
4632
|
+
readonly addIconSvg = "<svg width=\"20\" height=\"20\" viewBox=\"0 0 16 16\" fill=\"none\" aria-hidden=\"true\"><path d=\"M8 3.333v9.334M3.333 8h9.334\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>";
|
|
4633
|
+
getActionButtonVariant(action: AdminHeaderAction): ButtonVariant;
|
|
4634
|
+
getActionButtonIconStyle(action: AdminHeaderAction): ButtonIconStyle;
|
|
4635
|
+
getActionButtonIcon(action: AdminHeaderAction): string | undefined;
|
|
4636
|
+
getIconSvg(iconName: string): SafeHtml;
|
|
4637
|
+
getBadgeClasses(variant?: AdminHeaderBadgeVariant): string;
|
|
4638
|
+
getProfileBadgeStatusType(variant: AdminHeaderBadgeVariant): StatusType;
|
|
4639
|
+
getProfileBadgeStatusVariant(variant: AdminHeaderBadgeVariant): StatusVariant;
|
|
4640
|
+
getFieldTemplate(templateId: string): TemplateRef<unknown> | null;
|
|
4641
|
+
onHeaderAction(): void;
|
|
4642
|
+
onActionClick(action: AdminHeaderAction, index: number): void;
|
|
4643
|
+
onActionRemove(event: MouseEvent, action: AdminHeaderAction, index: number): void;
|
|
4644
|
+
onLinkClick(field: AdminHeaderField): void;
|
|
4645
|
+
onDropdownChange(field: AdminHeaderField, event: Event): void;
|
|
4646
|
+
onFieldOptionChange(field: AdminHeaderField, value: 'yes' | 'no'): void;
|
|
4647
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<AdminHeaderComponent, never>;
|
|
4648
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<AdminHeaderComponent, "pecb-admin-header", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "backgroundUrl": { "alias": "backgroundUrl"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "headerActionIcon": { "alias": "headerActionIcon"; "required": false; "isSignal": true; }; "headerActionLabel": { "alias": "headerActionLabel"; "required": false; "isSignal": true; }; "profile": { "alias": "profile"; "required": false; "isSignal": true; }; "actions": { "alias": "actions"; "required": false; "isSignal": true; }; "metadata": { "alias": "metadata"; "required": false; "isSignal": true; }; "fields": { "alias": "fields"; "required": false; "isSignal": true; }; "columns": { "alias": "columns"; "required": false; "isSignal": true; }; }, { "headerActionClicked": "headerActionClicked"; "actionClicked": "actionClicked"; "actionRemoved": "actionRemoved"; "linkClicked": "linkClicked"; "dropdownChanged": "dropdownChanged"; "fieldOptionChanged": "fieldOptionChanged"; }, ["fieldTemplates"], never, true, never>;
|
|
4649
|
+
}
|
|
4650
|
+
|
|
4651
|
+
type SocialIconStyle = 'brand' | 'original' | 'white' | 'dark';
|
|
4652
|
+
|
|
4653
|
+
type FlagShape = 'round' | 'square';
|
|
4654
|
+
|
|
4655
|
+
/** Media type categories. */
|
|
4656
|
+
type MediaType = 'emoji' | 'social' | 'flag';
|
|
4657
|
+
/** Size of each media item in the grid. */
|
|
4658
|
+
type MediaSize = 'sm' | 'md' | 'lg';
|
|
4659
|
+
/** A single media item resolved for display. */
|
|
4660
|
+
interface MediaItem {
|
|
4661
|
+
name: string;
|
|
4662
|
+
content: string;
|
|
4663
|
+
safeHtml: SafeHtml;
|
|
4664
|
+
}
|
|
4665
|
+
/** A group of media items under a heading. */
|
|
4666
|
+
interface MediaGroup {
|
|
4667
|
+
label: string;
|
|
4668
|
+
items: MediaItem[];
|
|
4669
|
+
}
|
|
4670
|
+
/**
|
|
4671
|
+
* Displays a grid of media assets (emojis, social icons, or flags).
|
|
4672
|
+
*
|
|
4673
|
+
* Clicking any item copies its SVG to the clipboard and shows
|
|
4674
|
+
* a brief "Copied!" tooltip.
|
|
4675
|
+
*
|
|
4676
|
+
* @example
|
|
4677
|
+
* <!-- Show all emojis grouped by category -->
|
|
4678
|
+
* <pecb-media type="emoji"></pecb-media>
|
|
4098
4679
|
*
|
|
4099
4680
|
* @example
|
|
4681
|
+
* <!-- Show social icons in brand style -->
|
|
4682
|
+
* <pecb-media type="social" socialStyle="brand"></pecb-media>
|
|
4683
|
+
*
|
|
4684
|
+
* @example
|
|
4685
|
+
* <!-- Show all country flags -->
|
|
4686
|
+
* <pecb-media type="flag" size="lg"></pecb-media>
|
|
4687
|
+
*/
|
|
4688
|
+
declare class MediaComponent {
|
|
4689
|
+
private readonly sanitizer;
|
|
4690
|
+
/** Which media category to display. */
|
|
4691
|
+
type: _angular_core.InputSignal<MediaType>;
|
|
4692
|
+
/** Item size in the grid. @default 'md' */
|
|
4693
|
+
size: _angular_core.InputSignal<MediaSize>;
|
|
4694
|
+
/** Style variant for social icons. @default 'brand' */
|
|
4695
|
+
socialStyle: _angular_core.InputSignal<SocialIconStyle>;
|
|
4696
|
+
/** Shape variant for flags. @default 'round' */
|
|
4697
|
+
flagShape: _angular_core.InputSignal<FlagShape>;
|
|
4698
|
+
/** Accessible label for the grid region. */
|
|
4699
|
+
ariaLabel: _angular_core.InputSignal<string | undefined>;
|
|
4700
|
+
/** Name of the item that was just copied (drives the tooltip). */
|
|
4701
|
+
copiedItem: _angular_core.WritableSignal<string | null>;
|
|
4702
|
+
/** Pixel size for each grid item. */
|
|
4703
|
+
itemSize: _angular_core.Signal<number>;
|
|
4704
|
+
/** Resolved groups of media items for the current type. */
|
|
4705
|
+
groups: _angular_core.Signal<MediaGroup[]>;
|
|
4706
|
+
/** CSS class string for the host wrapper. */
|
|
4707
|
+
hostClasses: _angular_core.Signal<string>;
|
|
4708
|
+
/** Copy the raw SVG markup to the clipboard. */
|
|
4709
|
+
copyToClipboard(item: MediaItem): Promise<void>;
|
|
4710
|
+
/** Format display name: kebab-case → Title Case. */
|
|
4711
|
+
formatName(name: string): string;
|
|
4712
|
+
private createItem;
|
|
4713
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MediaComponent, never>;
|
|
4714
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MediaComponent, "pecb-media", never, { "type": { "alias": "type"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "socialStyle": { "alias": "socialStyle"; "required": false; "isSignal": true; }; "flagShape": { "alias": "flagShape"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
4715
|
+
}
|
|
4716
|
+
|
|
4717
|
+
/**
|
|
4718
|
+
* @deprecated Audit F12 — use per-component standalone imports instead.
|
|
4719
|
+
*
|
|
4720
|
+
* This umbrella NgModule re-exports every public component in the library
|
|
4721
|
+
* (~100 standalone components). Importing it pulls the entire library into
|
|
4722
|
+
* the consumer's compilation graph, which interferes with tree-shaking and
|
|
4723
|
+
* diverges from Angular's recommended standalone-component pattern.
|
|
4724
|
+
*
|
|
4725
|
+
* Migrate to per-component imports:
|
|
4100
4726
|
* ```typescript
|
|
4101
|
-
* import {
|
|
4727
|
+
* import { ButtonComponent, InputComponent } from '@pecb-ui/components';
|
|
4102
4728
|
*
|
|
4103
|
-
* @
|
|
4104
|
-
*
|
|
4729
|
+
* @Component({
|
|
4730
|
+
* standalone: true,
|
|
4731
|
+
* imports: [ButtonComponent, InputComponent],
|
|
4732
|
+
* // ...
|
|
4105
4733
|
* })
|
|
4106
|
-
* export class
|
|
4734
|
+
* export class MyComponent {}
|
|
4107
4735
|
* ```
|
|
4736
|
+
*
|
|
4737
|
+
* Or, for per-feature imports (audit F18), use a secondary entry point:
|
|
4738
|
+
* ```typescript
|
|
4739
|
+
* import { InputComponent } from '@pecb-ui/components/forms';
|
|
4740
|
+
* ```
|
|
4741
|
+
*
|
|
4742
|
+
* Retained for one major version as a transitional convenience for legacy
|
|
4743
|
+
* NgModule-based consumers; scheduled for removal in a future major.
|
|
4108
4744
|
*/
|
|
4109
4745
|
declare class PecbComponentsModule {
|
|
4110
4746
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PecbComponentsModule, never>;
|
|
4111
|
-
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<PecbComponentsModule, never, [typeof i1.CommonModule, typeof ButtonComponent, typeof CardComponent, typeof CardHeaderComponent, typeof CardBodyComponent, typeof CardFooterComponent, typeof StatusComponent, typeof PaginationComponent, typeof TableComponent, typeof TabComponent, typeof DatepickerComponent, typeof InputComponent, typeof RadioComponent, typeof CheckboxComponent, typeof ToggleComponent, typeof DropdownComponent, typeof RightModalComponent, typeof RightModalHeaderDirective, typeof RightModalContentDirective, typeof RightModalFooterDirective, typeof SidebarComponent, typeof ConfirmationComponent, typeof BottomSheetComponent, typeof AccordionItemComponent, typeof AccordionSmallComponent, typeof ButtonGroupComponent, typeof ButtonGroupItemComponent, typeof TooltipComponent, typeof TooltipDirective, typeof MessageItemComponent, typeof MessageBubbleComponent, typeof FullscreenModalComponent, typeof FullscreenModalContentDirective, typeof FullscreenModalFooterDirective, typeof StepperComponent, typeof GridComponent, typeof GridItemComponent, typeof SpacerComponent, typeof DashboardGridComponent, typeof SpinnerComponent, typeof ProgressBarComponent, typeof ProgressCircleComponent, typeof CodeInputComponent, typeof ShadowDirective, typeof BlurDirective, typeof DividerComponent, typeof CodeSnippetComponent, typeof BreadcrumbsComponent, typeof HeaderComponent, typeof HeaderSearchComponent, typeof HeaderLanguageComponent, typeof HeaderActionsComponent, typeof HeaderUserComponent, typeof HeaderDividerComponent, typeof VirtualTableComponent, typeof GeneralComponent, typeof ProjectLayoutComponent, typeof HierarchicalTableComponent, typeof AnchorComponent, typeof BackToTopComponent, typeof ExpandableRowTableComponent, typeof BadgeComponent, typeof AffixComponent, typeof LanguageDropdownComponent, typeof EmptyStateComponent, typeof TestimonialComponent, typeof TagComponent, typeof LinkButtonComponent, typeof SlidePointsComponent, typeof QuantitySelectorComponent, typeof AuditorStatusComponent, typeof RatingNumberComponent, typeof IconTagComponent, typeof TranscriptLineComponent, typeof MiniIconButtonComponent, typeof NoResultsComponent, typeof CertificateUploadBarComponent, typeof VideoUploadBarComponent, typeof StatisticsCardComponent, typeof PriceMethodComponent, typeof ApplicationStatusBarComponent, typeof ReasonForReturnComponent, typeof ContentTypeTagComponent, typeof QuestionTypeTagComponent, typeof StandardsPdfCardComponent, typeof NoteSidebarItemComponent, typeof AuthorDateTimeComponent, typeof CheckDeleteIconComponent, typeof ProfileElementsCardComponent, typeof UserWithEmailComponent, typeof CancelUpdateButtonsComponent, typeof InformationBoxComponent, typeof RequestSentByComponent, typeof NotificationStatusLinkComponent, typeof EditCoverPhotoComponent, typeof RequestStatusBarComponent, typeof VerifyChecklistComponent, typeof EditButtonComponent, typeof AddButtonComponent, typeof HorizontalStepsComponent, typeof RadioDisplayComponent, typeof CheckboxDisplayComponent, typeof FilterColumnsComponent, typeof FileUploadComponent, typeof ToolbarBarComponent, typeof NotesPanelComponent, typeof TextFormFieldComponent, typeof ResultPageComponent, typeof TourComponent], [typeof ButtonComponent, typeof CardComponent, typeof CardHeaderComponent, typeof CardBodyComponent, typeof CardFooterComponent, typeof StatusComponent, typeof PaginationComponent, typeof TableComponent, typeof TabComponent, typeof DatepickerComponent, typeof InputComponent, typeof RadioComponent, typeof CheckboxComponent, typeof ToggleComponent, typeof DropdownComponent, typeof RightModalComponent, typeof RightModalHeaderDirective, typeof RightModalContentDirective, typeof RightModalFooterDirective, typeof SidebarComponent, typeof ConfirmationComponent, typeof BottomSheetComponent, typeof AccordionItemComponent, typeof AccordionSmallComponent, typeof ButtonGroupComponent, typeof ButtonGroupItemComponent, typeof TooltipComponent, typeof TooltipDirective, typeof MessageItemComponent, typeof MessageBubbleComponent, typeof FullscreenModalComponent, typeof FullscreenModalContentDirective, typeof FullscreenModalFooterDirective, typeof StepperComponent, typeof GridComponent, typeof GridItemComponent, typeof SpacerComponent, typeof DashboardGridComponent, typeof SpinnerComponent, typeof ProgressBarComponent, typeof ProgressCircleComponent, typeof CodeInputComponent, typeof ShadowDirective, typeof BlurDirective, typeof DividerComponent, typeof CodeSnippetComponent, typeof BreadcrumbsComponent, typeof HeaderComponent, typeof HeaderSearchComponent, typeof HeaderLanguageComponent, typeof HeaderActionsComponent, typeof HeaderUserComponent, typeof HeaderDividerComponent, typeof VirtualTableComponent, typeof GeneralComponent, typeof ProjectLayoutComponent, typeof HierarchicalTableComponent, typeof AnchorComponent, typeof BackToTopComponent, typeof ExpandableRowTableComponent, typeof BadgeComponent, typeof AffixComponent, typeof LanguageDropdownComponent, typeof EmptyStateComponent, typeof TestimonialComponent, typeof TagComponent, typeof LinkButtonComponent, typeof SlidePointsComponent, typeof QuantitySelectorComponent, typeof AuditorStatusComponent, typeof RatingNumberComponent, typeof IconTagComponent, typeof TranscriptLineComponent, typeof MiniIconButtonComponent, typeof NoResultsComponent, typeof CertificateUploadBarComponent, typeof VideoUploadBarComponent, typeof StatisticsCardComponent, typeof PriceMethodComponent, typeof ApplicationStatusBarComponent, typeof ReasonForReturnComponent, typeof ContentTypeTagComponent, typeof QuestionTypeTagComponent, typeof StandardsPdfCardComponent, typeof NoteSidebarItemComponent, typeof AuthorDateTimeComponent, typeof CheckDeleteIconComponent, typeof ProfileElementsCardComponent, typeof UserWithEmailComponent, typeof CancelUpdateButtonsComponent, typeof InformationBoxComponent, typeof RequestSentByComponent, typeof NotificationStatusLinkComponent, typeof EditCoverPhotoComponent, typeof RequestStatusBarComponent, typeof VerifyChecklistComponent, typeof EditButtonComponent, typeof AddButtonComponent, typeof HorizontalStepsComponent, typeof RadioDisplayComponent, typeof CheckboxDisplayComponent, typeof FilterColumnsComponent, typeof FileUploadComponent, typeof ToolbarBarComponent, typeof NotesPanelComponent, typeof TextFormFieldComponent, typeof ResultPageComponent, typeof TourComponent]>;
|
|
4747
|
+
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<PecbComponentsModule, never, [typeof i1.CommonModule, typeof ButtonComponent, typeof CardComponent, typeof CardHeaderComponent, typeof CardBodyComponent, typeof CardFooterComponent, typeof StatusComponent, typeof PaginationComponent, typeof TableComponent, typeof TabComponent, typeof DatepickerComponent, typeof InputComponent, typeof RadioComponent, typeof CheckboxComponent, typeof ToggleComponent, typeof DropdownComponent, typeof RightModalComponent, typeof RightModalHeaderDirective, typeof RightModalContentDirective, typeof RightModalFooterDirective, typeof SidebarComponent, typeof ConfirmationComponent, typeof BottomSheetComponent, typeof AccordionItemComponent, typeof AccordionSmallComponent, typeof ButtonGroupComponent, typeof ButtonGroupItemComponent, typeof TooltipComponent, typeof TooltipDirective, typeof MessageItemComponent, typeof MessageBubbleComponent, typeof FullscreenModalComponent, typeof FullscreenModalHeaderDirective, typeof FullscreenModalContentDirective, typeof FullscreenModalFooterDirective, typeof StepperComponent, typeof GridComponent, typeof GridItemComponent, typeof SpacerComponent, typeof DashboardGridComponent, typeof SpinnerComponent, typeof ProgressBarComponent, typeof ProgressCircleComponent, typeof CodeInputComponent, typeof ShadowDirective, typeof BlurDirective, typeof DividerComponent, typeof CodeSnippetComponent, typeof BreadcrumbsComponent, typeof HeaderComponent, typeof HeaderSearchComponent, typeof HeaderLanguageComponent, typeof HeaderActionsComponent, typeof HeaderUserComponent, typeof HeaderDividerComponent, typeof VirtualTableComponent, typeof GeneralComponent, typeof ProjectLayoutComponent, typeof HierarchicalTableComponent, typeof AnchorComponent, typeof BackToTopComponent, typeof ExpandableRowTableComponent, typeof BadgeComponent, typeof AffixComponent, typeof LanguageDropdownComponent, typeof EmptyStateComponent, typeof TestimonialComponent, typeof TagComponent, typeof LinkButtonComponent, typeof SlidePointsComponent, typeof QuantitySelectorComponent, typeof AuditorStatusComponent, typeof RatingNumberComponent, typeof IconTagComponent, typeof TranscriptLineComponent, typeof MiniIconButtonComponent, typeof NoResultsComponent, typeof CertificateUploadBarComponent, typeof VideoUploadBarComponent, typeof StatisticsCardComponent, typeof PriceMethodComponent, typeof ApplicationStatusBarComponent, typeof ReasonForReturnComponent, typeof ContentTypeTagComponent, typeof QuestionTypeTagComponent, typeof StandardsPdfCardComponent, typeof NoteSidebarItemComponent, typeof AuthorDateTimeComponent, typeof CheckDeleteIconComponent, typeof ProfileElementsCardComponent, typeof UserWithEmailComponent, typeof CancelUpdateButtonsComponent, typeof InformationBoxComponent, typeof RequestSentByComponent, typeof NotificationStatusLinkComponent, typeof EditCoverPhotoComponent, typeof RequestStatusBarComponent, typeof VerifyChecklistComponent, typeof EditButtonComponent, typeof AddButtonComponent, typeof HorizontalStepsComponent, typeof RadioDisplayComponent, typeof CheckboxDisplayComponent, typeof FilterColumnsComponent, typeof FileUploadComponent, typeof ToolbarBarComponent, typeof NotesPanelComponent, typeof TextFormFieldComponent, typeof ResultPageComponent, typeof TourComponent, typeof AdminHeaderComponent, typeof AdminHeaderFieldTemplateDirective, typeof MediaComponent], [typeof ButtonComponent, typeof CardComponent, typeof CardHeaderComponent, typeof CardBodyComponent, typeof CardFooterComponent, typeof StatusComponent, typeof PaginationComponent, typeof TableComponent, typeof TabComponent, typeof DatepickerComponent, typeof InputComponent, typeof RadioComponent, typeof CheckboxComponent, typeof ToggleComponent, typeof DropdownComponent, typeof RightModalComponent, typeof RightModalHeaderDirective, typeof RightModalContentDirective, typeof RightModalFooterDirective, typeof SidebarComponent, typeof ConfirmationComponent, typeof BottomSheetComponent, typeof AccordionItemComponent, typeof AccordionSmallComponent, typeof ButtonGroupComponent, typeof ButtonGroupItemComponent, typeof TooltipComponent, typeof TooltipDirective, typeof MessageItemComponent, typeof MessageBubbleComponent, typeof FullscreenModalComponent, typeof FullscreenModalHeaderDirective, typeof FullscreenModalContentDirective, typeof FullscreenModalFooterDirective, typeof StepperComponent, typeof GridComponent, typeof GridItemComponent, typeof SpacerComponent, typeof DashboardGridComponent, typeof SpinnerComponent, typeof ProgressBarComponent, typeof ProgressCircleComponent, typeof CodeInputComponent, typeof ShadowDirective, typeof BlurDirective, typeof DividerComponent, typeof CodeSnippetComponent, typeof BreadcrumbsComponent, typeof HeaderComponent, typeof HeaderSearchComponent, typeof HeaderLanguageComponent, typeof HeaderActionsComponent, typeof HeaderUserComponent, typeof HeaderDividerComponent, typeof VirtualTableComponent, typeof GeneralComponent, typeof ProjectLayoutComponent, typeof HierarchicalTableComponent, typeof AnchorComponent, typeof BackToTopComponent, typeof ExpandableRowTableComponent, typeof BadgeComponent, typeof AffixComponent, typeof LanguageDropdownComponent, typeof EmptyStateComponent, typeof TestimonialComponent, typeof TagComponent, typeof LinkButtonComponent, typeof SlidePointsComponent, typeof QuantitySelectorComponent, typeof AuditorStatusComponent, typeof RatingNumberComponent, typeof IconTagComponent, typeof TranscriptLineComponent, typeof MiniIconButtonComponent, typeof NoResultsComponent, typeof CertificateUploadBarComponent, typeof VideoUploadBarComponent, typeof StatisticsCardComponent, typeof PriceMethodComponent, typeof ApplicationStatusBarComponent, typeof ReasonForReturnComponent, typeof ContentTypeTagComponent, typeof QuestionTypeTagComponent, typeof StandardsPdfCardComponent, typeof NoteSidebarItemComponent, typeof AuthorDateTimeComponent, typeof CheckDeleteIconComponent, typeof ProfileElementsCardComponent, typeof UserWithEmailComponent, typeof CancelUpdateButtonsComponent, typeof InformationBoxComponent, typeof RequestSentByComponent, typeof NotificationStatusLinkComponent, typeof EditCoverPhotoComponent, typeof RequestStatusBarComponent, typeof VerifyChecklistComponent, typeof EditButtonComponent, typeof AddButtonComponent, typeof HorizontalStepsComponent, typeof RadioDisplayComponent, typeof CheckboxDisplayComponent, typeof FilterColumnsComponent, typeof FileUploadComponent, typeof ToolbarBarComponent, typeof NotesPanelComponent, typeof TextFormFieldComponent, typeof ResultPageComponent, typeof TourComponent, typeof AdminHeaderComponent, typeof AdminHeaderFieldTemplateDirective, typeof MediaComponent]>;
|
|
4112
4748
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<PecbComponentsModule>;
|
|
4113
4749
|
}
|
|
4114
4750
|
|
|
@@ -4429,6 +5065,14 @@ declare class ProfileComponent {
|
|
|
4429
5065
|
size: _angular_core.InputSignal<ProfileSize>;
|
|
4430
5066
|
indicator: _angular_core.InputSignal<ProfileIndicator>;
|
|
4431
5067
|
badge: _angular_core.InputSignal<ProfileBadge>;
|
|
5068
|
+
/** Aria-label for the indicator dot when `indicator === 'online'`. */
|
|
5069
|
+
onlineAriaLabel: _angular_core.InputSignal<string>;
|
|
5070
|
+
/** Aria-label for the indicator dot when `indicator === 'offline'`. */
|
|
5071
|
+
offlineAriaLabel: _angular_core.InputSignal<string>;
|
|
5072
|
+
/** Aria-label for the verified badge when `badge === 'verified'`. */
|
|
5073
|
+
verifiedAriaLabel: _angular_core.InputSignal<string>;
|
|
5074
|
+
/** Aria-label for the camera (edit photo) button when `badge === 'camera'`. */
|
|
5075
|
+
editPhotoAriaLabel: _angular_core.InputSignal<string>;
|
|
4432
5076
|
cameraClick: _angular_core.OutputEmitterRef<MouseEvent>;
|
|
4433
5077
|
hostClass: _angular_core.Signal<string>;
|
|
4434
5078
|
showImage: _angular_core.Signal<boolean>;
|
|
@@ -4437,7 +5081,7 @@ declare class ProfileComponent {
|
|
|
4437
5081
|
imgSize: _angular_core.Signal<number>;
|
|
4438
5082
|
onCameraClick(event: MouseEvent): void;
|
|
4439
5083
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ProfileComponent, never>;
|
|
4440
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ProfileComponent, "pecb-profile", never, { "src": { "alias": "src"; "required": false; "isSignal": true; }; "initials": { "alias": "initials"; "required": false; "isSignal": true; }; "alt": { "alias": "alt"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "indicator": { "alias": "indicator"; "required": false; "isSignal": true; }; "badge": { "alias": "badge"; "required": false; "isSignal": true; }; }, { "cameraClick": "cameraClick"; }, never, never, true, never>;
|
|
5084
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ProfileComponent, "pecb-profile", never, { "src": { "alias": "src"; "required": false; "isSignal": true; }; "initials": { "alias": "initials"; "required": false; "isSignal": true; }; "alt": { "alias": "alt"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "indicator": { "alias": "indicator"; "required": false; "isSignal": true; }; "badge": { "alias": "badge"; "required": false; "isSignal": true; }; "onlineAriaLabel": { "alias": "onlineAriaLabel"; "required": false; "isSignal": true; }; "offlineAriaLabel": { "alias": "offlineAriaLabel"; "required": false; "isSignal": true; }; "verifiedAriaLabel": { "alias": "verifiedAriaLabel"; "required": false; "isSignal": true; }; "editPhotoAriaLabel": { "alias": "editPhotoAriaLabel"; "required": false; "isSignal": true; }; }, { "cameraClick": "cameraClick"; }, never, never, true, never>;
|
|
4441
5085
|
}
|
|
4442
5086
|
|
|
4443
5087
|
type ProfileGroupSize = 'sm' | 'md' | 'lg';
|
|
@@ -4450,13 +5094,16 @@ declare class ProfileGroupComponent {
|
|
|
4450
5094
|
avatars: _angular_core.InputSignal<ProfileGroupItem[]>;
|
|
4451
5095
|
size: _angular_core.InputSignal<ProfileGroupSize>;
|
|
4452
5096
|
max: _angular_core.InputSignal<number>;
|
|
5097
|
+
/** Suffix appended to the overflow count's aria-label (e.g. `5 more`). */
|
|
5098
|
+
overflowSuffix: _angular_core.InputSignal<string>;
|
|
4453
5099
|
hostClass: _angular_core.Signal<string>;
|
|
4454
5100
|
visible: _angular_core.Signal<ProfileGroupItem[]>;
|
|
4455
5101
|
overflow: _angular_core.Signal<number>;
|
|
4456
5102
|
overflowLabel: _angular_core.Signal<string>;
|
|
5103
|
+
overflowAriaLabel: _angular_core.Signal<string>;
|
|
4457
5104
|
imgSize: _angular_core.Signal<number>;
|
|
4458
5105
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ProfileGroupComponent, never>;
|
|
4459
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ProfileGroupComponent, "pecb-profile-group", never, { "avatars": { "alias": "avatars"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
5106
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ProfileGroupComponent, "pecb-profile-group", never, { "avatars": { "alias": "avatars"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "overflowSuffix": { "alias": "overflowSuffix"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
4460
5107
|
}
|
|
4461
5108
|
|
|
4462
5109
|
/**
|
|
@@ -5676,5 +6323,63 @@ declare class IconComponent {
|
|
|
5676
6323
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<IconComponent, "pecb-icon", never, { "name": { "alias": "name"; "required": false; "isSignal": true; }; "svgIcon": { "alias": "svgIcon"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "shape": { "alias": "shape"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
5677
6324
|
}
|
|
5678
6325
|
|
|
5679
|
-
|
|
5680
|
-
|
|
6326
|
+
/**
|
|
6327
|
+
* Global registry for SVG icons.
|
|
6328
|
+
*
|
|
6329
|
+
* Icons are registered as inline SVG strings keyed by their `IconName`.
|
|
6330
|
+
* The `IconComponent` queries this registry when a `[name]` input is used.
|
|
6331
|
+
*
|
|
6332
|
+
* The full PECB icon set (`PECB_ICONS`) and custom icon set
|
|
6333
|
+
* (`PECB_CUSTOM_ICONS`) are **pre-registered automatically** in the
|
|
6334
|
+
* constructor, so `<pecb-icon name="...">` works out of the box with no
|
|
6335
|
+
* consumer setup. Use {@link register} / {@link registerAll} only to add your
|
|
6336
|
+
* own custom icons (or to override a built-in one).
|
|
6337
|
+
*
|
|
6338
|
+
* @example
|
|
6339
|
+
* ```ts
|
|
6340
|
+
* import { IconRegistry } from '@pecb-ui/components';
|
|
6341
|
+
*
|
|
6342
|
+
* // Built-in icons need no registration. To add a custom icon:
|
|
6343
|
+
* constructor(private reg: IconRegistry) {
|
|
6344
|
+
* reg.register('my-logo', '<svg ...>...</svg>');
|
|
6345
|
+
* }
|
|
6346
|
+
* ```
|
|
6347
|
+
*/
|
|
6348
|
+
declare class IconRegistry {
|
|
6349
|
+
private readonly icons;
|
|
6350
|
+
constructor();
|
|
6351
|
+
/** Register a single icon by name. */
|
|
6352
|
+
register(name: IconName | string, svg: string): void;
|
|
6353
|
+
/** Register many icons at once. */
|
|
6354
|
+
registerAll(icons: Record<string, string>): void;
|
|
6355
|
+
/** Retrieve an icon SVG string by name. Returns `undefined` if not found. */
|
|
6356
|
+
get(name: string): string | undefined;
|
|
6357
|
+
/** Check whether an icon is registered. */
|
|
6358
|
+
has(name: string): boolean;
|
|
6359
|
+
/** Return all registered icon names. */
|
|
6360
|
+
names(): string[];
|
|
6361
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<IconRegistry, never>;
|
|
6362
|
+
static ɵprov: _angular_core.ɵɵInjectableDeclaration<IconRegistry>;
|
|
6363
|
+
}
|
|
6364
|
+
|
|
6365
|
+
/**
|
|
6366
|
+
* Map of every PECB icon name to its inline SVG string.
|
|
6367
|
+
*
|
|
6368
|
+
* These are **pre-registered automatically** by `IconRegistry`, so
|
|
6369
|
+
* `<pecb-icon name="...">` works out of the box — you do not need to register
|
|
6370
|
+
* them yourself. Exported (from `@pecb-ui/components`) only for advanced use
|
|
6371
|
+
* cases such as inspecting the available SVGs.
|
|
6372
|
+
*/
|
|
6373
|
+
declare const PECB_ICONS: Record<string, string>;
|
|
6374
|
+
|
|
6375
|
+
/**
|
|
6376
|
+
* Map of every PECB custom icon variant to its inline SVG string.
|
|
6377
|
+
*
|
|
6378
|
+
* These are **pre-registered automatically** by `IconRegistry` (alongside
|
|
6379
|
+
* `PECB_ICONS`), so custom icons resolve by name out of the box with no app
|
|
6380
|
+
* setup. Exported (from `@pecb-ui/components`) only for advanced use cases.
|
|
6381
|
+
*/
|
|
6382
|
+
declare const PECB_CUSTOM_ICONS: Record<string, string>;
|
|
6383
|
+
|
|
6384
|
+
export { AccordionItemComponent, AccordionSmallComponent, AddButtonComponent, AdminHeaderComponent, AdminHeaderFieldTemplateDirective, AffixComponent, AlertComponent, AnchorComponent, ApplicationStatusBarComponent, AuditorStatusComponent, AuthorDateTimeComponent, BackToTopComponent, BadgeComponent, BlurDirective, BottomSheetComponent, BreadcrumbsComponent, ButtonComponent, ButtonGroupComponent, ButtonGroupItemComponent, CancelUpdateButtonsComponent, CardBodyComponent, CardComponent, CardFooterComponent, CardHeaderComponent, CertificateUploadBarComponent, CheckDeleteIconComponent, CheckboxComponent, CheckboxDisplayComponent, CodeInputComponent, CodeSnippetComponent, ColorPaletteComponent, ConfirmationComponent, ContentTypeTagComponent, DEFAULT_LANGUAGES, DashboardGridComponent, DatepickerComponent, DividerComponent, DropdownComponent, EMPTY_STATE_MAX_BUTTONS, EditButtonComponent, EditCoverPhotoComponent, EmptyStateComponent, ExpandableRowTableComponent, FileUploadComponent, FilterColumnsComponent, FloatButtonComponent, FloatButtonItemComponent, FullscreenModalComponent, FullscreenModalContentDirective, FullscreenModalFooterDirective, FullscreenModalHeaderDirective, GeneralComponent, GridComponent, GridItemComponent, HeaderActionsComponent, HeaderComponent, HeaderDividerComponent, HeaderLanguageComponent, HeaderSearchComponent, HeaderUserComponent, HierarchicalTableComponent, HorizontalStepsComponent, IconComponent, IconRegistry, IconTagComponent, InformationBoxComponent, InputComponent, LanguageDropdownComponent, LinkButtonComponent, LoadingService, MediaComponent, MessageBubbleComponent, MessageItemComponent, MetricsCardComponent, MiniIconButtonComponent, NoResultsComponent, NoteSidebarItemComponent, NotesPanelComponent, NotificationService, NotificationStatusLinkComponent, PECB_COLOR_PALETTE, PECB_CUSTOM_ICONS, PECB_FONT_STYLES, PECB_ICONS, PECB_TYPE_SCALE, PaginationComponent, PecbComponentsModule, PriceMethodComponent, ProfileComponent, ProfileElementsCardComponent, ProfileGroupComponent, ProgressBarComponent, ProgressCircleComponent, ProjectLayoutComponent, QuantitySelectorComponent, QuestionTypeTagComponent, RadioComponent, RadioDisplayComponent, RatingNumberComponent, ReasonForReturnComponent, RequestSentByComponent, RequestStatusBarComponent, ResultPageComponent, RightModalComponent, RightModalContentDirective, RightModalFooterDirective, RightModalHeaderDirective, ShadowDirective, SidebarComponent, SkeletonComponent, SlidePointsComponent, SpacerComponent, SpinnerComponent, StandardsPdfCardComponent, StatisticsCardComponent, StatusComponent, StepperComponent, TabComponent, TableComponent, TagComponent, TestimonialComponent, TextFormFieldComponent, ThemeService, ToggleComponent, ToolbarBarComponent, TooltipComponent, TooltipDirective, TourComponent, TranscriptLineComponent, TypographyComponent, UserWithEmailComponent, VerifyChecklistComponent, VideoUploadBarComponent, VirtualTableComponent, addClass, announceToScreenReader, capitalize, closestElement, copyToClipboard, createAuthError, createAuthorizationError, createConfigError, createError, createNetworkError, createValidationError, disableBodyScroll, escapeHtml, formatCount, formatErrorForLog, formatErrorMessage, generateLinkedIds, generateUniqueId, getAriaCurrent, getButtonAriaAttributes, getComputedStyleValue, getDialogAriaAttributes, getFocusableElements, getInitials, getInputAriaAttributes, getOptionAriaAttributes, getProgressAriaAttributes, getScrollParent, getTabAriaAttributes, getVisuallyHiddenStyles, handleError, hasClass, isBlank, isBrowser, isElementVisible, isNotBlank, isPecbError, isRecoverableError, matchesSelector, pluralize, prefersHighContrast, prefersReducedMotion, registerErrorHandler, removeClass, scrollIntoView, slugify, stripHtml, toCamelCase, toKebabCase, toPascalCase, toSnakeCase, toggleClass, trapFocus, truncate, tryAsync, trySync, wrapError };
|
|
6385
|
+
export type { AccordionVariant, AddButtonVariant, AdminHeaderAction, AdminHeaderActionType, AdminHeaderBadgeVariant, AdminHeaderField, AdminHeaderFieldType, AdminHeaderMetadata, AdminHeaderMetadataType, AdminHeaderProfile, AffixPosition, AlertType, AlertVariant, Alignment, AnchorDirection, AnchorItem, AnchorLevel, AnimationTiming, AppStatusColor, AriaAttributes, AriaLive, AriaRole, AuditorStatusType, BadgeSize, BadgeStatus, BadgeVariant, BlurSize, BreadcrumbItem, BreadcrumbSeparator, Breakpoint, ButtonGroupIconMode, ButtonGroupItemPosition, ButtonIconStyle, ButtonSize, ButtonVariant, CalendarDay, Callback, CardElevation, CardRadius, CardRole, CheckDeleteType, CheckboxDisplayState, CheckboxLabelPosition, ClosableWithHooks, CodeInputDirection, CodeInputState, CodeSnippetTheme, CodeSnippetVariant, ColorPaletteGroup, ColorPaletteItem, ColorVariant, Colorable, ColumnOption, ComponentSize, ConfirmationIconType, ContentStyle, ContentTagDisplay, ContentTagType, CustomIconName, DashboardGridGap, DashboardGridLayout, DatepickerSize, Direction, Disableable, DividerType, DropdownOption, DropdownSize, EditButtonVariant, ElevationLevel, EmptyStateButton, EmptyStateIconTheme, ErrorCategory, ErrorHandler, ErrorOptions, ErrorSeverity, EventHandler, ExpandableRowColumn, ExpandableRowPageEvent, ExpandableRowProgressConfig, ExtendedColorVariant, FieldItem, FieldStyle, FileUploadEvent, FileUploadState, FileUploadVariant, FilterColumnsActiveTab, FilterColumnsApplyEvent, FilterField, FilterFieldType, FilterState, FloatButtonAction, FloatButtonPosition, Focusable, FormControlBase, GridAlign, GridColumns, GridGap, GridItemSpan, GridPadding, GridVerticalAlign, HeaderActionButton, HeaderLanguageOption, HeaderSearchCategory, HeaderSearchType, HierarchicalTableAction, HierarchicalTableColumn, HierarchicalTablePageEvent, IconColor, IconName, IconShape, IconSize, IconTagType, InformationBoxVariant, InputSize, InputType, LanguageDisplayMode, LanguageOption, LinkButtonType, Loadable, LoadingState, MediaGroup, MediaItem, MediaSize, MediaType, MenuItem, MessageBubbleType, MessageDirection, MessageItemStatus, MetricsCardBadgeStatus, MetricsCardIconBg, MetricsCardOrientation, MetricsCardType, MetricsCardVariation, MiniIconAction, NonNullableProps, NoteGroup, NoteItem, NoteSidebarPosition, NoteSidebarState, Notification, NotificationConfig, NotificationPosition, NotificationStatusType, NotificationType, OptionalProps, Orientation, OverlayComponent, PageChangeEvent, PaginationSize, PaginationState, PaginationVariant, PdfCardVariant, PecbError, PecbTableColumn, PecbTableColumnComponent, PecbTableColumnType, Position, ProfileBadge, ProfileGroupItem, ProfileGroupSize, ProfileIndicator, ProfileSize, ProfileType, ProgressBarSize, ProgressCircleSize, ProgressType, QuestionTagDisplay, QuestionTagType, QuizType, RadioDisplayState, RadioLabelPosition, RadioVariant, RadiusScale, RatingStyle, RequestStatusIconType, RequireProps, ResultPageAction, ResultPageIcon, RibbonColor, RightModalSize, SearchMode, SelectableItem, ShadowHardSize, ShadowSize, ShadowSoftSize, ShadowType, SidebarMenuItem, SidebarSection, Size, Sizeable, SkeletonShape, SkeletonSize, SkeletonType, SortState, SpacerSize, SpacingScale, StateVariant, StatisticsIconColor, StatusColor, StatusSize, StatusType, StatusVariant, StepItem, StepOrder, StepState, StepperDirection, StepperSize, StepperTailStyle, StepperType, TabItem, TabSize, TabStyle, TableAction, TableColumn, TableRowActionEvent, TableSelectionEvent, TableSize, TableSortEvent, TableStatusConfig, TableUserConfig, TableVariant, TagAction, TagStyle, Templatable, TestimonialData, TestimonialVariant, TextFormFieldType, ThemeConfig, ThemeMode, ThemeVariables, ToggleLabelPosition, ToggleSize, ToolbarButton, ToolbarTab, ToolbarVariant, TooltipPointerPosition, TooltipTheme, TourIndicatorType, TourPlacement, TourStep, TourType, TranscriptLineState, TreeNode, TypographyScaleEntry, TypographyStyleEntry, UploadedFile, Validatable, ValidationError, ValidationState, VerifyChecklistItem, VerifyItemStatus, VirtualTableColumn, VirtualTablePageEvent, VirtualTableProgressConfig };
|