@eagami/ui 1.5.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/eagami-ui.mjs +8108 -5889
- package/fesm2022/eagami-ui.mjs.map +1 -1
- package/package.json +3 -3
- package/src/styles/tokens/_spacing.scss +28 -0
- package/src/styles/tokens/_typography.scss +26 -3
- package/types/eagami-ui.d.ts +858 -73
package/types/eagami-ui.d.ts
CHANGED
|
@@ -71,6 +71,26 @@ interface EagamiMessages {
|
|
|
71
71
|
dropdown: {
|
|
72
72
|
placeholder: string;
|
|
73
73
|
};
|
|
74
|
+
fileUploader: {
|
|
75
|
+
prompt: string;
|
|
76
|
+
promptSingle: string;
|
|
77
|
+
browse: string;
|
|
78
|
+
removeFile: (name: string) => string;
|
|
79
|
+
fileListLabel: string;
|
|
80
|
+
constraintsAccept: (accept: string) => string;
|
|
81
|
+
constraintsMaxSize: (size: string) => string;
|
|
82
|
+
constraintsMaxFiles: (count: number) => string;
|
|
83
|
+
rejectionType: (name: string) => string;
|
|
84
|
+
rejectionSize: (name: string, max: string) => string;
|
|
85
|
+
rejectionCount: (max: number) => string;
|
|
86
|
+
bytesUnit: {
|
|
87
|
+
b: string;
|
|
88
|
+
kb: string;
|
|
89
|
+
mb: string;
|
|
90
|
+
gb: string;
|
|
91
|
+
tb: string;
|
|
92
|
+
};
|
|
93
|
+
};
|
|
74
94
|
input: {
|
|
75
95
|
showPassword: string;
|
|
76
96
|
hidePassword: string;
|
|
@@ -78,6 +98,15 @@ interface EagamiMessages {
|
|
|
78
98
|
menu: {
|
|
79
99
|
label: string;
|
|
80
100
|
};
|
|
101
|
+
multiSelect: {
|
|
102
|
+
placeholder: string;
|
|
103
|
+
searchPlaceholder: string;
|
|
104
|
+
searchEmpty: string;
|
|
105
|
+
selectAll: string;
|
|
106
|
+
clearAll: string;
|
|
107
|
+
removeOption: (label: string) => string;
|
|
108
|
+
selectedCount: (count: number) => string;
|
|
109
|
+
};
|
|
81
110
|
paginator: {
|
|
82
111
|
label: string;
|
|
83
112
|
rowsPerPage: string;
|
|
@@ -88,12 +117,35 @@ interface EagamiMessages {
|
|
|
88
117
|
progressBar: {
|
|
89
118
|
label: string;
|
|
90
119
|
};
|
|
120
|
+
rating: {
|
|
121
|
+
label: string;
|
|
122
|
+
valueLabel: (value: number, max: number) => string;
|
|
123
|
+
clear: string;
|
|
124
|
+
};
|
|
91
125
|
spinner: {
|
|
92
126
|
label: string;
|
|
93
127
|
};
|
|
128
|
+
stepper: {
|
|
129
|
+
optional: string;
|
|
130
|
+
};
|
|
94
131
|
tag: {
|
|
95
132
|
remove: string;
|
|
96
133
|
};
|
|
134
|
+
timePicker: {
|
|
135
|
+
placeholder: string;
|
|
136
|
+
clear: string;
|
|
137
|
+
hoursLabel: string;
|
|
138
|
+
minutesLabel: string;
|
|
139
|
+
secondsLabel: string;
|
|
140
|
+
incrementHours: string;
|
|
141
|
+
decrementHours: string;
|
|
142
|
+
incrementMinutes: string;
|
|
143
|
+
decrementMinutes: string;
|
|
144
|
+
incrementSeconds: string;
|
|
145
|
+
decrementSeconds: string;
|
|
146
|
+
amLabel: string;
|
|
147
|
+
pmLabel: string;
|
|
148
|
+
};
|
|
97
149
|
toast: {
|
|
98
150
|
dismiss: string;
|
|
99
151
|
};
|
|
@@ -142,6 +194,7 @@ declare class EagamiI18nService {
|
|
|
142
194
|
private readonly _locale;
|
|
143
195
|
/** The currently active locale. Read it reactively or call `setLocale()`. */
|
|
144
196
|
readonly locale: Signal<EagamiLocale>;
|
|
197
|
+
constructor();
|
|
145
198
|
/** The resolved message dictionary for the active locale. */
|
|
146
199
|
readonly messages: Signal<EagamiMessages>;
|
|
147
200
|
/** Switches the active locale; falls back to English if unsupported. */
|
|
@@ -406,6 +459,8 @@ declare class AvatarEditorComponent implements OnDestroy {
|
|
|
406
459
|
[x: string]: boolean;
|
|
407
460
|
'ea-avatar-editor--has-image': boolean;
|
|
408
461
|
'ea-avatar-editor--drag-over': boolean;
|
|
462
|
+
'ea-avatar-editor--compact': boolean;
|
|
463
|
+
'ea-avatar-editor--ultra-compact': boolean;
|
|
409
464
|
}>;
|
|
410
465
|
private readonly injector;
|
|
411
466
|
private readonly boundWheel;
|
|
@@ -496,17 +551,25 @@ type BadgeVariant = 'default' | 'success' | 'warning' | 'error' | 'info';
|
|
|
496
551
|
/** Visual size of a badge. */
|
|
497
552
|
type BadgeSize = 'sm' | 'md' | 'lg';
|
|
498
553
|
/**
|
|
499
|
-
*
|
|
500
|
-
*
|
|
554
|
+
* Outer shape of a badge.
|
|
555
|
+
* - `pill` (default): content-shaped pill, ideal for inline status labels
|
|
556
|
+
* - `pin`: fixed-min square that renders as a perfect circle for single
|
|
557
|
+
* characters (counts) and expands into a pill for longer content
|
|
558
|
+
*/
|
|
559
|
+
type BadgeShape = 'pill' | 'pin';
|
|
560
|
+
/**
|
|
561
|
+
* Compact indicator used to communicate status, counts, or labels inline with
|
|
562
|
+
* surrounding content.
|
|
501
563
|
*/
|
|
502
564
|
declare class BadgeComponent {
|
|
503
565
|
readonly variant: i0.InputSignal<BadgeVariant>;
|
|
504
566
|
readonly size: i0.InputSignal<BadgeSize>;
|
|
567
|
+
readonly shape: i0.InputSignal<BadgeShape>;
|
|
505
568
|
readonly hostClasses: i0.Signal<{
|
|
506
569
|
[x: string]: boolean;
|
|
507
570
|
}>;
|
|
508
571
|
static ɵfac: i0.ɵɵFactoryDeclaration<BadgeComponent, never>;
|
|
509
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<BadgeComponent, "ea-badge", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
572
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<BadgeComponent, "ea-badge", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "shape": { "alias": "shape"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
510
573
|
}
|
|
511
574
|
|
|
512
575
|
/** Visual style of the separator rendered between breadcrumb items. */
|
|
@@ -674,14 +737,11 @@ interface Rgb {
|
|
|
674
737
|
* `ControlValueAccessor`. Accepts any CSS color string in `writeValue`.
|
|
675
738
|
*/
|
|
676
739
|
declare class ColorPickerComponent implements ControlValueAccessor {
|
|
677
|
-
|
|
678
|
-
private readonly triggerEl;
|
|
679
|
-
private readonly popoverEl;
|
|
740
|
+
protected readonly triggerEl: i0.Signal<ElementRef<HTMLButtonElement> | undefined>;
|
|
680
741
|
private readonly svAreaEl;
|
|
681
742
|
private readonly hueTrackEl;
|
|
682
743
|
private readonly alphaTrackEl;
|
|
683
744
|
private readonly injector;
|
|
684
|
-
private readonly destroyRef;
|
|
685
745
|
protected readonly i18n: EagamiI18nService;
|
|
686
746
|
readonly label: i0.InputSignal<string | undefined>;
|
|
687
747
|
readonly placeholder: i0.InputSignal<string | undefined>;
|
|
@@ -716,13 +776,6 @@ declare class ColorPickerComponent implements ControlValueAccessor {
|
|
|
716
776
|
* can type a partial value (`#1`, `#12`, `#123…`) without each keystroke being
|
|
717
777
|
* expanded back into a 6-digit canonical form. */
|
|
718
778
|
readonly hexInputValue: i0.WritableSignal<string>;
|
|
719
|
-
/** Pixel position of the popover when open. Calculated from the trigger's
|
|
720
|
-
* bounding rect so the popover can use `position: fixed` and escape any
|
|
721
|
-
* ancestor with `overflow: hidden`. */
|
|
722
|
-
readonly popoverPosition: i0.WritableSignal<{
|
|
723
|
-
top: number;
|
|
724
|
-
left: number;
|
|
725
|
-
} | null>;
|
|
726
779
|
private readonly _formDisabled;
|
|
727
780
|
private onChange;
|
|
728
781
|
private onTouched;
|
|
@@ -744,9 +797,14 @@ declare class ColorPickerComponent implements ControlValueAccessor {
|
|
|
744
797
|
'ea-color-picker__trigger--open': boolean;
|
|
745
798
|
'ea-color-picker__trigger--disabled': boolean;
|
|
746
799
|
}>;
|
|
747
|
-
/**
|
|
748
|
-
|
|
749
|
-
|
|
800
|
+
/**
|
|
801
|
+
* True when the browser supports the EyeDropper API. Not a `computed` —
|
|
802
|
+
* `window.EyeDropper` isn't a signal, so a memoized computed would cache the
|
|
803
|
+
* first read (typically `false`, since the popover content's bindings now
|
|
804
|
+
* evaluate at parent-view creation time via content projection, before any
|
|
805
|
+
* polyfill / test setup runs). A plain method re-checks on every call.
|
|
806
|
+
*/
|
|
807
|
+
hasEyeDropper(): boolean;
|
|
750
808
|
writeValue(val: ColorPickerValue): void;
|
|
751
809
|
registerOnChange(fn: (value: string | null) => void): void;
|
|
752
810
|
registerOnTouched(fn: () => void): void;
|
|
@@ -794,13 +852,8 @@ declare class ColorPickerComponent implements ControlValueAccessor {
|
|
|
794
852
|
selectPreset(hex: string): void;
|
|
795
853
|
onTriggerKeydown(event: KeyboardEvent): void;
|
|
796
854
|
onPopoverKeydown(event: KeyboardEvent): void;
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
* Repositions the popover when it would extend past the viewport edges.
|
|
800
|
-
* Prefers flipping above the trigger when there's more room there, then
|
|
801
|
-
* clamps so the popover always has a small margin from the viewport edges.
|
|
802
|
-
*/
|
|
803
|
-
private clampPopoverToViewport;
|
|
855
|
+
/** Called by `<ea-popover>` when the user clicks outside the picker. */
|
|
856
|
+
onPopoverCloseRequested(): void;
|
|
804
857
|
private applyHsv;
|
|
805
858
|
private applyRgba;
|
|
806
859
|
private commit;
|
|
@@ -945,8 +998,7 @@ interface CalendarDay {
|
|
|
945
998
|
* Escape). Integrates with Angular forms via `ControlValueAccessor`.
|
|
946
999
|
*/
|
|
947
1000
|
declare class DatePickerComponent implements ControlValueAccessor {
|
|
948
|
-
|
|
949
|
-
private readonly triggerEl;
|
|
1001
|
+
protected readonly triggerEl: i0.Signal<ElementRef<HTMLButtonElement> | undefined>;
|
|
950
1002
|
private readonly injector;
|
|
951
1003
|
protected readonly i18n: EagamiI18nService;
|
|
952
1004
|
readonly label: i0.InputSignal<string | undefined>;
|
|
@@ -1015,7 +1067,8 @@ declare class DatePickerComponent implements ControlValueAccessor {
|
|
|
1015
1067
|
goToToday(): void;
|
|
1016
1068
|
handleTriggerKeydown(event: KeyboardEvent): void;
|
|
1017
1069
|
handleGridKeydown(event: KeyboardEvent): void;
|
|
1018
|
-
|
|
1070
|
+
/** Called by `<ea-popover>` when the user clicks outside the picker. */
|
|
1071
|
+
onPopoverCloseRequested(): void;
|
|
1019
1072
|
private formatOptions;
|
|
1020
1073
|
private toDate;
|
|
1021
1074
|
private startOfDay;
|
|
@@ -1120,12 +1173,11 @@ type DropdownSize = 'sm' | 'md' | 'lg';
|
|
|
1120
1173
|
* Single-select dropdown with a custom popup list. Supports keyboard
|
|
1121
1174
|
* navigation (arrow keys, Enter/Space to select, Escape to close), closes
|
|
1122
1175
|
* on outside click or viewport scroll/resize, and integrates with Angular
|
|
1123
|
-
* forms via `ControlValueAccessor`.
|
|
1176
|
+
* forms via `ControlValueAccessor`. Positioning, dismissal, and SSR-safe
|
|
1177
|
+
* scroll handling are provided by `<ea-popover>`.
|
|
1124
1178
|
*/
|
|
1125
1179
|
declare class DropdownComponent implements ControlValueAccessor {
|
|
1126
1180
|
private readonly elRef;
|
|
1127
|
-
private readonly menuEl;
|
|
1128
|
-
private readonly destroyRef;
|
|
1129
1181
|
private readonly i18n;
|
|
1130
1182
|
readonly label: i0.InputSignal<string | undefined>;
|
|
1131
1183
|
readonly placeholder: i0.InputSignal<string | undefined>;
|
|
@@ -1158,7 +1210,6 @@ declare class DropdownComponent implements ControlValueAccessor {
|
|
|
1158
1210
|
'ea-dropdown__trigger--open': boolean;
|
|
1159
1211
|
'ea-dropdown__trigger--disabled': boolean;
|
|
1160
1212
|
}>;
|
|
1161
|
-
constructor();
|
|
1162
1213
|
writeValue(val: string): void;
|
|
1163
1214
|
registerOnChange(fn: (value: string) => void): void;
|
|
1164
1215
|
registerOnTouched(fn: () => void): void;
|
|
@@ -1171,9 +1222,10 @@ declare class DropdownComponent implements ControlValueAccessor {
|
|
|
1171
1222
|
close(): void;
|
|
1172
1223
|
/** Moves keyboard focus to the dropdown trigger. */
|
|
1173
1224
|
focus(): void;
|
|
1225
|
+
/** Called by `<ea-popover>` when the user clicks outside the dropdown. */
|
|
1226
|
+
onPopoverCloseRequested(): void;
|
|
1174
1227
|
handleKeydown(event: KeyboardEvent): void;
|
|
1175
1228
|
private moveFocus;
|
|
1176
|
-
onDocumentClick(event: Event): void;
|
|
1177
1229
|
static ɵfac: i0.ɵɵFactoryDeclaration<DropdownComponent, never>;
|
|
1178
1230
|
static ɵcmp: i0.ɵɵComponentDeclaration<DropdownComponent, "ea-dropdown", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMsg": { "alias": "errorMsg"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "changed": "changed"; }, never, never, true, never>;
|
|
1179
1231
|
}
|
|
@@ -1228,6 +1280,110 @@ declare class EmptyStateComponent {
|
|
|
1228
1280
|
static ɵcmp: i0.ɵɵComponentDeclaration<EmptyStateComponent, "ea-empty-state", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "headingLevel": { "alias": "headingLevel"; "required": false; "isSignal": true; }; }, {}, never, ["[slot=media]", "[slot=actions]"], true, never>;
|
|
1229
1281
|
}
|
|
1230
1282
|
|
|
1283
|
+
/** Visual size of the file uploader. */
|
|
1284
|
+
type FileUploaderSize = 'sm' | 'md' | 'lg';
|
|
1285
|
+
/** Reason a file was rejected during selection. */
|
|
1286
|
+
type FileUploaderRejectionReason = 'type' | 'size' | 'count';
|
|
1287
|
+
/** Detail object emitted on the `rejected` output when one or more files fail validation. */
|
|
1288
|
+
interface FileUploaderRejection {
|
|
1289
|
+
readonly file: File;
|
|
1290
|
+
readonly reason: FileUploaderRejectionReason;
|
|
1291
|
+
}
|
|
1292
|
+
/**
|
|
1293
|
+
* Multi-file uploader with a drag-and-drop zone and a per-file list. Pure UI:
|
|
1294
|
+
* the component manages selection, validation, and removal but does not perform
|
|
1295
|
+
* any network I/O — consumers are responsible for uploading the resulting
|
|
1296
|
+
* `File[]` and (optionally) feeding progress back via the `progress` map.
|
|
1297
|
+
*
|
|
1298
|
+
* The dropzone icon (default `<ea-icon-upload-cloud>`) is exposed as a content
|
|
1299
|
+
* slot via the `icon` attribute: project any element to override it, and the
|
|
1300
|
+
* dropzone's size-aware wrapper handles sizing automatically.
|
|
1301
|
+
*
|
|
1302
|
+
* @example
|
|
1303
|
+
* ```html
|
|
1304
|
+
* <ea-file-uploader label="Attach files">
|
|
1305
|
+
* <ea-icon-paperclip icon />
|
|
1306
|
+
* </ea-file-uploader>
|
|
1307
|
+
* ```
|
|
1308
|
+
*/
|
|
1309
|
+
declare class FileUploaderComponent implements ControlValueAccessor {
|
|
1310
|
+
private readonly fileInputEl;
|
|
1311
|
+
private readonly dropzoneEl;
|
|
1312
|
+
protected readonly i18n: EagamiI18nService;
|
|
1313
|
+
readonly label: i0.InputSignal<string | undefined>;
|
|
1314
|
+
readonly hint: i0.InputSignal<string | undefined>;
|
|
1315
|
+
readonly errorMsg: i0.InputSignal<string | undefined>;
|
|
1316
|
+
readonly size: i0.InputSignal<FileUploaderSize>;
|
|
1317
|
+
readonly disabled: i0.InputSignal<boolean>;
|
|
1318
|
+
readonly required: i0.InputSignal<boolean>;
|
|
1319
|
+
readonly multiple: i0.InputSignal<boolean>;
|
|
1320
|
+
/** Comma-separated MIME types and / or file extensions, e.g. `'image/*,.pdf'`. */
|
|
1321
|
+
readonly accept: i0.InputSignal<string | undefined>;
|
|
1322
|
+
/** Max size per file in bytes. Files larger than this are rejected. */
|
|
1323
|
+
readonly maxSize: i0.InputSignal<number | undefined>;
|
|
1324
|
+
/** Max total number of files. Extra files are rejected. */
|
|
1325
|
+
readonly maxFiles: i0.InputSignal<number | undefined>;
|
|
1326
|
+
/** Toggle the file list under the dropzone. */
|
|
1327
|
+
readonly showFileList: i0.InputSignal<boolean>;
|
|
1328
|
+
/**
|
|
1329
|
+
* Optional per-file progress (0-100). Keyed by `File` object identity, so
|
|
1330
|
+
* consumers must keep the same `File` references between change-detection
|
|
1331
|
+
* runs. When unset, no progress bar is rendered.
|
|
1332
|
+
*/
|
|
1333
|
+
readonly progress: i0.InputSignal<ReadonlyMap<File, number> | undefined>;
|
|
1334
|
+
readonly id: i0.InputSignal<string>;
|
|
1335
|
+
/** Two-way binding to the current `File[]`. Also written by Angular forms. */
|
|
1336
|
+
readonly value: i0.ModelSignal<readonly File[]>;
|
|
1337
|
+
/** Fires when one or more selected files fail validation. */
|
|
1338
|
+
readonly rejected: i0.OutputEmitterRef<readonly FileUploaderRejection[]>;
|
|
1339
|
+
/** Fires whenever a file is removed via its row's X button. */
|
|
1340
|
+
readonly fileRemoved: i0.OutputEmitterRef<File>;
|
|
1341
|
+
protected readonly isDragOver: i0.WritableSignal<boolean>;
|
|
1342
|
+
protected readonly isFocused: i0.WritableSignal<boolean>;
|
|
1343
|
+
private readonly _formDisabled;
|
|
1344
|
+
private onChange;
|
|
1345
|
+
private onTouched;
|
|
1346
|
+
protected readonly isDisabled: i0.Signal<boolean>;
|
|
1347
|
+
protected readonly hasError: i0.Signal<boolean>;
|
|
1348
|
+
protected readonly showError: i0.Signal<boolean>;
|
|
1349
|
+
protected readonly showHint: i0.Signal<boolean>;
|
|
1350
|
+
protected readonly hostClasses: i0.Signal<{
|
|
1351
|
+
[x: string]: boolean;
|
|
1352
|
+
'ea-file-uploader-field--error': boolean;
|
|
1353
|
+
'ea-file-uploader-field--disabled': boolean;
|
|
1354
|
+
'ea-file-uploader-field--drag-over': boolean;
|
|
1355
|
+
'ea-file-uploader-field--focused': boolean;
|
|
1356
|
+
}>;
|
|
1357
|
+
protected readonly errorId: i0.Signal<string>;
|
|
1358
|
+
protected readonly hintId: i0.Signal<string>;
|
|
1359
|
+
protected readonly constraintsId: i0.Signal<string>;
|
|
1360
|
+
protected readonly describedBy: i0.Signal<string | null>;
|
|
1361
|
+
/** Joined human-readable description of accept / maxSize / maxFiles limits. */
|
|
1362
|
+
protected readonly constraintsText: i0.Signal<string>;
|
|
1363
|
+
protected readonly promptText: i0.Signal<string>;
|
|
1364
|
+
writeValue(value: readonly File[] | null | undefined): void;
|
|
1365
|
+
registerOnChange(fn: (value: readonly File[]) => void): void;
|
|
1366
|
+
registerOnTouched(fn: () => void): void;
|
|
1367
|
+
setDisabledState(isDisabled: boolean): void;
|
|
1368
|
+
protected openFilePicker(): void;
|
|
1369
|
+
protected onDropzoneKeydown(event: KeyboardEvent): void;
|
|
1370
|
+
protected onDropzoneFocus(): void;
|
|
1371
|
+
protected onDropzoneBlur(): void;
|
|
1372
|
+
protected onFileSelected(event: Event): void;
|
|
1373
|
+
protected onDragOver(event: DragEvent): void;
|
|
1374
|
+
protected onDragLeave(event: DragEvent): void;
|
|
1375
|
+
protected onDrop(event: DragEvent): void;
|
|
1376
|
+
protected removeFile(file: File): void;
|
|
1377
|
+
private acceptFiles;
|
|
1378
|
+
protected formatBytes(bytes: number): string;
|
|
1379
|
+
protected iconKey(file: File): 'image' | 'film' | 'music' | 'archive' | 'text' | 'file';
|
|
1380
|
+
protected progressFor(file: File): number | undefined;
|
|
1381
|
+
/** Stable track key for the `@for` over `value()`. */
|
|
1382
|
+
protected trackFile(_index: number, file: File): string;
|
|
1383
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FileUploaderComponent, never>;
|
|
1384
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FileUploaderComponent, "ea-file-uploader", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMsg": { "alias": "errorMsg"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "accept": { "alias": "accept"; "required": false; "isSignal": true; }; "maxSize": { "alias": "maxSize"; "required": false; "isSignal": true; }; "maxFiles": { "alias": "maxFiles"; "required": false; "isSignal": true; }; "showFileList": { "alias": "showFileList"; "required": false; "isSignal": true; }; "progress": { "alias": "progress"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "rejected": "rejected"; "fileRemoved": "fileRemoved"; }, never, ["[icon]"], true, never>;
|
|
1385
|
+
}
|
|
1386
|
+
|
|
1231
1387
|
/**
|
|
1232
1388
|
* Primary classification for an icon component. Every icon ships with a single
|
|
1233
1389
|
* `category` (read off the component's `static readonly category` field) plus
|
|
@@ -1264,13 +1420,22 @@ type IconComponentType = Type<unknown> & IconMeta;
|
|
|
1264
1420
|
* config in their `@Component` decorator. Brand icons with their own host
|
|
1265
1421
|
* bindings (e.g. a colour binding tied to a `brand` input) layer those onto
|
|
1266
1422
|
* this base via additional `@HostBinding` getters.
|
|
1423
|
+
*
|
|
1424
|
+
* Feather-derived icons read the `strokeWidth` input via `[attr.stroke-width]`
|
|
1425
|
+
* in their SVG template, so consumers can thin or thicken any icon at the
|
|
1426
|
+
* call site (e.g. `<ea-icon-star [strokeWidth]="1.5" />`). Subclasses can
|
|
1427
|
+
* change the default by setting `static override readonly defaultStrokeWidth`
|
|
1428
|
+
* — used by icons whose dense paths read better at a different default
|
|
1429
|
+
* (e.g. camera, upload at 1.5).
|
|
1267
1430
|
*/
|
|
1268
1431
|
declare abstract class IconComponentBase {
|
|
1269
1432
|
readonly display = "inline-flex";
|
|
1270
1433
|
readonly width = "1em";
|
|
1271
1434
|
readonly height = "1em";
|
|
1435
|
+
static readonly defaultStrokeWidth: number;
|
|
1436
|
+
readonly strokeWidth: i0.InputSignal<number>;
|
|
1272
1437
|
static ɵfac: i0.ɵɵFactoryDeclaration<IconComponentBase, never>;
|
|
1273
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<IconComponentBase, never, never, {}, {}, never, never, true, never>;
|
|
1438
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<IconComponentBase, never, never, { "strokeWidth": { "alias": "strokeWidth"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1274
1439
|
}
|
|
1275
1440
|
|
|
1276
1441
|
/**
|
|
@@ -1294,9 +1459,6 @@ declare function iconDisplayName(iconOrSlug: IconComponentType | string): string
|
|
|
1294
1459
|
* the full set. For single-icon usage import the component directly (e.g.
|
|
1295
1460
|
* `import { HomeIconComponent } from '@eagami/ui'`) and the bundler will
|
|
1296
1461
|
* tree-shake `ICONS` away.
|
|
1297
|
-
*
|
|
1298
|
-
* Deprecated aliases (e.g. `PencilIconComponent`) are intentionally excluded
|
|
1299
|
-
* so they don't surface in generated catalogues.
|
|
1300
1462
|
*/
|
|
1301
1463
|
declare const ICONS: ReadonlyArray<IconComponentType>;
|
|
1302
1464
|
|
|
@@ -1388,18 +1550,6 @@ declare class ApertureIconComponent extends IconComponentBase {
|
|
|
1388
1550
|
static ɵcmp: i0.ɵɵComponentDeclaration<ApertureIconComponent, "ea-icon-aperture", never, {}, {}, never, never, true, never>;
|
|
1389
1551
|
}
|
|
1390
1552
|
|
|
1391
|
-
/**
|
|
1392
|
-
* @deprecated Will be removed in v2.0.0. The icon depicts Apple Inc.'s logo,
|
|
1393
|
-
* which is more strictly protected than other brand marks. Source the asset
|
|
1394
|
-
* directly from Apple per their brand guidelines for use cases like "Sign in
|
|
1395
|
-
* with Apple".
|
|
1396
|
-
*/
|
|
1397
|
-
declare class AppleIconComponent extends IconComponentBase {
|
|
1398
|
-
readonly brand: i0.InputSignal<boolean>;
|
|
1399
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AppleIconComponent, never>;
|
|
1400
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AppleIconComponent, "ea-icon-apple", never, { "brand": { "alias": "brand"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1401
|
-
}
|
|
1402
|
-
|
|
1403
1553
|
declare class ArchiveIconComponent extends IconComponentBase {
|
|
1404
1554
|
static readonly slug = "archive";
|
|
1405
1555
|
static readonly category: IconCategory;
|
|
@@ -1643,6 +1793,7 @@ declare class CalendarIconComponent extends IconComponentBase {
|
|
|
1643
1793
|
declare class CameraIconComponent extends IconComponentBase {
|
|
1644
1794
|
static readonly slug = "camera";
|
|
1645
1795
|
static readonly category: IconCategory;
|
|
1796
|
+
static readonly defaultStrokeWidth = 1.5;
|
|
1646
1797
|
static readonly tags: ReadonlyArray<string>;
|
|
1647
1798
|
static ɵfac: i0.ɵɵFactoryDeclaration<CameraIconComponent, never>;
|
|
1648
1799
|
static ɵcmp: i0.ɵɵComponentDeclaration<CameraIconComponent, "ea-icon-camera", never, {}, {}, never, never, true, never>;
|
|
@@ -2638,6 +2789,14 @@ declare class LayoutIconComponent extends IconComponentBase {
|
|
|
2638
2789
|
static ɵcmp: i0.ɵɵComponentDeclaration<LayoutIconComponent, "ea-icon-layout", never, {}, {}, never, never, true, never>;
|
|
2639
2790
|
}
|
|
2640
2791
|
|
|
2792
|
+
declare class LeftHalfStarIconComponent extends IconComponentBase {
|
|
2793
|
+
static readonly slug = "left-half-star";
|
|
2794
|
+
static readonly category: IconCategory;
|
|
2795
|
+
static readonly tags: ReadonlyArray<string>;
|
|
2796
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<LeftHalfStarIconComponent, never>;
|
|
2797
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<LeftHalfStarIconComponent, "ea-icon-left-half-star", never, {}, {}, never, never, true, never>;
|
|
2798
|
+
}
|
|
2799
|
+
|
|
2641
2800
|
declare class LifeBuoyIconComponent extends IconComponentBase {
|
|
2642
2801
|
static readonly slug = "life-buoy";
|
|
2643
2802
|
static readonly category: IconCategory;
|
|
@@ -3053,20 +3212,6 @@ declare class PenToolIconComponent extends IconComponentBase {
|
|
|
3053
3212
|
static ɵcmp: i0.ɵɵComponentDeclaration<PenToolIconComponent, "ea-icon-pen-tool", never, {}, {}, never, never, true, never>;
|
|
3054
3213
|
}
|
|
3055
3214
|
|
|
3056
|
-
/**
|
|
3057
|
-
* @deprecated Will be removed in v2.0.0. The `pencil` icon depicts the same
|
|
3058
|
-
* mark as Feather's canonical `edit-2` (with a marginally different cap
|
|
3059
|
-
* curvature) and is being retired as redundant. Switch to `<ea-icon-edit-2>`
|
|
3060
|
-
* / `Edit2IconComponent`.
|
|
3061
|
-
*/
|
|
3062
|
-
declare class PencilIconComponent extends IconComponentBase {
|
|
3063
|
-
static readonly slug = "pencil";
|
|
3064
|
-
static readonly category: IconCategory;
|
|
3065
|
-
static readonly tags: ReadonlyArray<string>;
|
|
3066
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<PencilIconComponent, never>;
|
|
3067
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<PencilIconComponent, "ea-icon-pencil", never, {}, {}, never, never, true, never>;
|
|
3068
|
-
}
|
|
3069
|
-
|
|
3070
3215
|
declare class PentagonIconComponent extends IconComponentBase {
|
|
3071
3216
|
static readonly slug = "pentagon";
|
|
3072
3217
|
static readonly category: IconCategory;
|
|
@@ -3277,6 +3422,14 @@ declare class RewindIconComponent extends IconComponentBase {
|
|
|
3277
3422
|
static ɵcmp: i0.ɵɵComponentDeclaration<RewindIconComponent, "ea-icon-rewind", never, {}, {}, never, never, true, never>;
|
|
3278
3423
|
}
|
|
3279
3424
|
|
|
3425
|
+
declare class RightHalfStarIconComponent extends IconComponentBase {
|
|
3426
|
+
static readonly slug = "right-half-star";
|
|
3427
|
+
static readonly category: IconCategory;
|
|
3428
|
+
static readonly tags: ReadonlyArray<string>;
|
|
3429
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RightHalfStarIconComponent, never>;
|
|
3430
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<RightHalfStarIconComponent, "ea-icon-right-half-star", never, {}, {}, never, never, true, never>;
|
|
3431
|
+
}
|
|
3432
|
+
|
|
3280
3433
|
declare class RotateCcwIconComponent extends IconComponentBase {
|
|
3281
3434
|
static readonly slug = "rotate-ccw";
|
|
3282
3435
|
static readonly category: IconCategory;
|
|
@@ -3821,6 +3974,7 @@ declare class UnlockIconComponent extends IconComponentBase {
|
|
|
3821
3974
|
declare class UploadIconComponent extends IconComponentBase {
|
|
3822
3975
|
static readonly slug = "upload";
|
|
3823
3976
|
static readonly category: IconCategory;
|
|
3977
|
+
static readonly defaultStrokeWidth = 1.5;
|
|
3824
3978
|
static readonly tags: ReadonlyArray<string>;
|
|
3825
3979
|
static ɵfac: i0.ɵɵFactoryDeclaration<UploadIconComponent, never>;
|
|
3826
3980
|
static ɵcmp: i0.ɵɵComponentDeclaration<UploadIconComponent, "ea-icon-upload", never, {}, {}, never, never, true, never>;
|
|
@@ -4162,7 +4316,8 @@ type MenuPlacement = 'bottom-start' | 'bottom-end' | 'top-start' | 'top-end';
|
|
|
4162
4316
|
* Popup action menu attached to any focusable element via the
|
|
4163
4317
|
* `[eaMenuTrigger]` directive. Supports keyboard navigation
|
|
4164
4318
|
* (arrow keys, Home/End), closes on outside click or Escape, and restores
|
|
4165
|
-
* focus to the trigger on close.
|
|
4319
|
+
* focus to the trigger on close. Positioning, dismissal, and SSR-safe scroll
|
|
4320
|
+
* handling are provided by `<ea-popover>`.
|
|
4166
4321
|
*/
|
|
4167
4322
|
declare class MenuComponent {
|
|
4168
4323
|
private readonly injector;
|
|
@@ -4179,12 +4334,8 @@ declare class MenuComponent {
|
|
|
4179
4334
|
readonly opened: i0.OutputEmitterRef<void>;
|
|
4180
4335
|
/** Fires when the menu closes. */
|
|
4181
4336
|
readonly closed: i0.OutputEmitterRef<void>;
|
|
4182
|
-
|
|
4183
|
-
|
|
4184
|
-
readonly listClasses: i0.Signal<{
|
|
4185
|
-
[x: string]: boolean;
|
|
4186
|
-
}>;
|
|
4187
|
-
readonly listStyle: i0.Signal<Record<string, string>>;
|
|
4337
|
+
/** Trigger element currently anchoring the menu. Signal-typed so `<ea-popover>` reacts when it changes. */
|
|
4338
|
+
protected readonly triggerEl: i0.WritableSignal<HTMLElement | undefined>;
|
|
4188
4339
|
/** Toggles the menu open state, anchoring it to the given trigger element. */
|
|
4189
4340
|
toggleAt(triggerEl: HTMLElement): void;
|
|
4190
4341
|
/** Opens the menu anchored to the given trigger element and focuses the first item. */
|
|
@@ -4195,6 +4346,8 @@ declare class MenuComponent {
|
|
|
4195
4346
|
* not used on outside click, where the user has chosen a new focus target).
|
|
4196
4347
|
*/
|
|
4197
4348
|
close(restoreFocus?: boolean): void;
|
|
4349
|
+
/** Called by `<ea-popover>` when the user clicks outside the menu. */
|
|
4350
|
+
onPopoverCloseRequested(): void;
|
|
4198
4351
|
private getEnabledItems;
|
|
4199
4352
|
/**
|
|
4200
4353
|
* `preventScroll: true` is critical here. The menu list is `position: fixed`
|
|
@@ -4208,9 +4361,7 @@ declare class MenuComponent {
|
|
|
4208
4361
|
*/
|
|
4209
4362
|
private focusFirstItem;
|
|
4210
4363
|
onKeydown(event: KeyboardEvent): void;
|
|
4211
|
-
onDocumentClick(event: Event): void;
|
|
4212
4364
|
onEscape(): void;
|
|
4213
|
-
onViewportChange(): void;
|
|
4214
4365
|
static ɵfac: i0.ɵɵFactoryDeclaration<MenuComponent, never>;
|
|
4215
4366
|
static ɵcmp: i0.ɵɵComponentDeclaration<MenuComponent, "ea-menu", never, { "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "aria-label"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "open": { "alias": "open"; "required": false; "isSignal": true; }; }, { "open": "openChange"; "opened": "opened"; "closed": "closed"; }, never, ["*"], true, never>;
|
|
4216
4367
|
}
|
|
@@ -4247,6 +4398,116 @@ declare class MenuTriggerDirective {
|
|
|
4247
4398
|
static ɵdir: i0.ɵɵDirectiveDeclaration<MenuTriggerDirective, "[eaMenuTrigger]", never, { "menu": { "alias": "eaMenuTrigger"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
4248
4399
|
}
|
|
4249
4400
|
|
|
4401
|
+
/** Visual size of the multi-select trigger. */
|
|
4402
|
+
type MultiSelectSize = 'sm' | 'md' | 'lg';
|
|
4403
|
+
/**
|
|
4404
|
+
* Multi-select dropdown. Renders selections as removable `<ea-tag>` chips
|
|
4405
|
+
* inside the trigger, opens a popover containing an optional search input,
|
|
4406
|
+
* a tri-state "Select all" toggle, and a list of `<ea-checkbox>` options.
|
|
4407
|
+
* The wire value is a `readonly string[]` of selected option values, ordered
|
|
4408
|
+
* to match the input `options` array. Closes on outside click / scroll, and
|
|
4409
|
+
* integrates with Angular forms via `ControlValueAccessor`.
|
|
4410
|
+
*/
|
|
4411
|
+
declare class MultiSelectComponent implements ControlValueAccessor {
|
|
4412
|
+
protected readonly triggerEl: i0.Signal<ElementRef<HTMLElement> | undefined>;
|
|
4413
|
+
protected readonly searchEl: i0.Signal<ElementRef<HTMLInputElement> | undefined>;
|
|
4414
|
+
protected readonly i18n: EagamiI18nService;
|
|
4415
|
+
private readonly injector;
|
|
4416
|
+
readonly label: i0.InputSignal<string | undefined>;
|
|
4417
|
+
readonly placeholder: i0.InputSignal<string | undefined>;
|
|
4418
|
+
readonly searchPlaceholder: i0.InputSignal<string | undefined>;
|
|
4419
|
+
readonly options: i0.InputSignal<readonly SelectOption[]>;
|
|
4420
|
+
readonly size: i0.InputSignal<MultiSelectSize>;
|
|
4421
|
+
readonly disabled: i0.InputSignal<boolean>;
|
|
4422
|
+
readonly readonly: i0.InputSignal<boolean>;
|
|
4423
|
+
readonly required: i0.InputSignal<boolean>;
|
|
4424
|
+
readonly hint: i0.InputSignal<string | undefined>;
|
|
4425
|
+
readonly errorMsg: i0.InputSignal<string | undefined>;
|
|
4426
|
+
/** Toggle the search input at the top of the popover. */
|
|
4427
|
+
readonly searchable: i0.InputSignal<boolean>;
|
|
4428
|
+
/** Toggle the "Select all" row at the top of the option list. */
|
|
4429
|
+
readonly selectAll: i0.InputSignal<boolean>;
|
|
4430
|
+
/** Max number of chips shown inside the trigger; the rest collapse into a "+N more" pill. `0` removes the cap. */
|
|
4431
|
+
readonly maxVisibleChips: i0.InputSignal<number>;
|
|
4432
|
+
readonly id: i0.InputSignal<string>;
|
|
4433
|
+
/** Selected option values, in the original options order. */
|
|
4434
|
+
readonly value: i0.ModelSignal<readonly string[]>;
|
|
4435
|
+
/** Fires with the new value whenever the selection changes. */
|
|
4436
|
+
readonly changed: i0.OutputEmitterRef<readonly string[]>;
|
|
4437
|
+
readonly isOpen: i0.WritableSignal<boolean>;
|
|
4438
|
+
readonly searchTerm: i0.WritableSignal<string>;
|
|
4439
|
+
/** Index into `filteredOptions()` for keyboard navigation. `-1` when none focused. */
|
|
4440
|
+
readonly focusedIndex: i0.WritableSignal<number>;
|
|
4441
|
+
private readonly _formDisabled;
|
|
4442
|
+
private onChange;
|
|
4443
|
+
private onTouched;
|
|
4444
|
+
readonly isDisabled: i0.Signal<boolean>;
|
|
4445
|
+
readonly hasError: i0.Signal<boolean>;
|
|
4446
|
+
readonly showError: i0.Signal<boolean>;
|
|
4447
|
+
readonly showHint: i0.Signal<boolean>;
|
|
4448
|
+
/** Set-backed lookup for `selectedSet().has(value)`. */
|
|
4449
|
+
readonly selectedSet: i0.Signal<Set<string>>;
|
|
4450
|
+
/** Options matching the current search term (case-insensitive substring on label). */
|
|
4451
|
+
readonly filteredOptions: i0.Signal<readonly SelectOption[]>;
|
|
4452
|
+
/** Currently selected options, ordered to match the input `options`. */
|
|
4453
|
+
readonly selectedOptions: i0.Signal<readonly SelectOption[]>;
|
|
4454
|
+
readonly hasValue: i0.Signal<boolean>;
|
|
4455
|
+
/** Chips visible inside the trigger, capped by `maxVisibleChips`. */
|
|
4456
|
+
readonly visibleChips: i0.Signal<readonly SelectOption[]>;
|
|
4457
|
+
/** Count behind the "+N more" pill, or `0` when all chips fit. */
|
|
4458
|
+
readonly hiddenChipCount: i0.Signal<number>;
|
|
4459
|
+
/** Tri-state of the Select-all checkbox over the **currently filtered** list. */
|
|
4460
|
+
readonly selectAllState: i0.Signal<"some" | "none" | "all">;
|
|
4461
|
+
readonly resolvedPlaceholder: i0.Signal<string>;
|
|
4462
|
+
readonly resolvedSearchPlaceholder: i0.Signal<string>;
|
|
4463
|
+
readonly triggerClasses: i0.Signal<{
|
|
4464
|
+
[x: string]: boolean;
|
|
4465
|
+
'ea-multi-select__trigger--error': boolean;
|
|
4466
|
+
'ea-multi-select__trigger--open': boolean;
|
|
4467
|
+
'ea-multi-select__trigger--disabled': boolean;
|
|
4468
|
+
'ea-multi-select__trigger--placeholder': boolean;
|
|
4469
|
+
}>;
|
|
4470
|
+
writeValue(val: readonly string[] | null | undefined): void;
|
|
4471
|
+
registerOnChange(fn: (value: readonly string[]) => void): void;
|
|
4472
|
+
registerOnTouched(fn: () => void): void;
|
|
4473
|
+
setDisabledState(isDisabled: boolean): void;
|
|
4474
|
+
toggle(): void;
|
|
4475
|
+
close(): void;
|
|
4476
|
+
/** Called by `<ea-popover>` when the user clicks outside or scrolls. */
|
|
4477
|
+
onPopoverCloseRequested(): void;
|
|
4478
|
+
/** Toggle one option's membership in the selection. */
|
|
4479
|
+
toggleOption(opt: SelectOption): void;
|
|
4480
|
+
/**
|
|
4481
|
+
* Remove a single chip from the trigger. `<ea-tag>` already stops the
|
|
4482
|
+
* click from bubbling to the trigger's `(click)`, so no event handling
|
|
4483
|
+
* is needed here.
|
|
4484
|
+
*/
|
|
4485
|
+
removeChip(opt: SelectOption): void;
|
|
4486
|
+
/** Clear every selection via the trigger × button. */
|
|
4487
|
+
clear(event: Event): void;
|
|
4488
|
+
/**
|
|
4489
|
+
* Toggle the Select-all checkbox. If any filtered option is unselected, the
|
|
4490
|
+
* action selects all filtered. Otherwise, the action removes every filtered
|
|
4491
|
+
* value from the selection. Disabled options are skipped either way.
|
|
4492
|
+
*/
|
|
4493
|
+
toggleSelectAll(): void;
|
|
4494
|
+
onSearchInput(event: Event): void;
|
|
4495
|
+
handleTriggerKeydown(event: KeyboardEvent): void;
|
|
4496
|
+
/**
|
|
4497
|
+
* Keyboard navigation inside the popover. Bound to both the search input
|
|
4498
|
+
* and each option row; Space passes through to the search input naturally
|
|
4499
|
+
* so users can type spaces in their query.
|
|
4500
|
+
*/
|
|
4501
|
+
handlePopoverKeydown(event: KeyboardEvent): void;
|
|
4502
|
+
private focusSearchWhenReady;
|
|
4503
|
+
/** Reorder a value-set against the input `options` array. */
|
|
4504
|
+
private orderedValues;
|
|
4505
|
+
private resetEditState;
|
|
4506
|
+
private commit;
|
|
4507
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<MultiSelectComponent, never>;
|
|
4508
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<MultiSelectComponent, "ea-multi-select", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMsg": { "alias": "errorMsg"; "required": false; "isSignal": true; }; "searchable": { "alias": "searchable"; "required": false; "isSignal": true; }; "selectAll": { "alias": "selectAll"; "required": false; "isSignal": true; }; "maxVisibleChips": { "alias": "maxVisibleChips"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "changed": "changed"; }, never, never, true, never>;
|
|
4509
|
+
}
|
|
4510
|
+
|
|
4250
4511
|
/** Horizontal alignment of paginator controls within their container. */
|
|
4251
4512
|
type PaginatorAlign = 'left' | 'center' | 'right';
|
|
4252
4513
|
/** Snapshot of the paginator's page and page size. */
|
|
@@ -4289,6 +4550,141 @@ declare class PaginatorComponent {
|
|
|
4289
4550
|
static ɵcmp: i0.ɵɵComponentDeclaration<PaginatorComponent, "ea-paginator", never, { "totalItems": { "alias": "totalItems"; "required": true; "isSignal": true; }; "pageSizeOptions": { "alias": "pageSizeOptions"; "required": false; "isSignal": true; }; "showPageSizeSelector": { "alias": "showPageSizeSelector"; "required": false; "isSignal": true; }; "showRangeLabel": { "alias": "showRangeLabel"; "required": false; "isSignal": true; }; "align": { "alias": "align"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "page": { "alias": "page"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; }, { "page": "pageChange"; "pageSize": "pageSizeChange"; "changed": "changed"; }, never, never, true, never>;
|
|
4290
4551
|
}
|
|
4291
4552
|
|
|
4553
|
+
/**
|
|
4554
|
+
* Placement of the popover relative to its anchor. Each placement names the
|
|
4555
|
+
* side of the anchor the popover attaches to, optionally followed by a corner
|
|
4556
|
+
* suffix (`-start` or `-end`) that decides the alignment along the perpendicular
|
|
4557
|
+
* axis. The plain side names (`top`, `bottom`, `left`, `right`) centre the
|
|
4558
|
+
* popover on that axis.
|
|
4559
|
+
*/
|
|
4560
|
+
type PopoverPlacement = 'top' | 'top-start' | 'top-end' | 'bottom' | 'bottom-start' | 'bottom-end' | 'left' | 'right';
|
|
4561
|
+
interface PopoverPositionResult {
|
|
4562
|
+
/** Top coordinate in viewport (px); pairs with `position: fixed`. */
|
|
4563
|
+
readonly top: number;
|
|
4564
|
+
/** Left coordinate in viewport (px). */
|
|
4565
|
+
readonly left: number;
|
|
4566
|
+
/** Width hint when the popover should match the anchor's width. */
|
|
4567
|
+
readonly width?: number;
|
|
4568
|
+
/** Effective placement after any flip logic ran. */
|
|
4569
|
+
readonly placement: PopoverPlacement;
|
|
4570
|
+
}
|
|
4571
|
+
interface PopoverPositionOptions {
|
|
4572
|
+
readonly placement: PopoverPlacement;
|
|
4573
|
+
/** Gap in px between the anchor and the popover. Default 4. */
|
|
4574
|
+
readonly offset?: number;
|
|
4575
|
+
/** Flip to the opposite side when the requested side overflows the viewport. Default true. */
|
|
4576
|
+
readonly flip?: boolean;
|
|
4577
|
+
/** Clamp inside the viewport when the popover still overflows after any flip. Default true. */
|
|
4578
|
+
readonly clamp?: boolean;
|
|
4579
|
+
/** Margin from the viewport edge in px when clamping. Default 8. */
|
|
4580
|
+
readonly margin?: number;
|
|
4581
|
+
/** Set the popover's width to match the anchor's. Useful for dropdown-style menus. */
|
|
4582
|
+
readonly matchAnchorWidth?: boolean;
|
|
4583
|
+
}
|
|
4584
|
+
interface Rect {
|
|
4585
|
+
readonly width: number;
|
|
4586
|
+
readonly height: number;
|
|
4587
|
+
}
|
|
4588
|
+
interface AnchorRect extends Rect {
|
|
4589
|
+
readonly top: number;
|
|
4590
|
+
readonly bottom: number;
|
|
4591
|
+
readonly left: number;
|
|
4592
|
+
readonly right: number;
|
|
4593
|
+
}
|
|
4594
|
+
interface Viewport {
|
|
4595
|
+
readonly width: number;
|
|
4596
|
+
readonly height: number;
|
|
4597
|
+
}
|
|
4598
|
+
/**
|
|
4599
|
+
* Computes the viewport-space top/left for a popover anchored to `anchorRect`,
|
|
4600
|
+
* applying optional flip-on-overflow and edge-clamp logic. Pure function — no
|
|
4601
|
+
* DOM access. Both `<ea-popover>` and `[eaTooltip]` consume this.
|
|
4602
|
+
*
|
|
4603
|
+
* @param anchorRect The anchor element's `getBoundingClientRect()`.
|
|
4604
|
+
* @param popoverRect Width and height of the popover (post-render measurement).
|
|
4605
|
+
* @param viewport Viewport dimensions (`window.innerWidth/Height`).
|
|
4606
|
+
* @param options Placement and behavior flags.
|
|
4607
|
+
*/
|
|
4608
|
+
declare function computePopoverPosition(anchorRect: AnchorRect, popoverRect: Rect, viewport: Viewport, options: PopoverPositionOptions): PopoverPositionResult;
|
|
4609
|
+
|
|
4610
|
+
/** ARIA role to apply to the popover surface. */
|
|
4611
|
+
type PopoverRole = 'menu' | 'listbox' | 'dialog' | 'tooltip' | 'grid';
|
|
4612
|
+
/**
|
|
4613
|
+
* How the popover should respond to scroll / resize events while open.
|
|
4614
|
+
*
|
|
4615
|
+
* - `reposition` (default): re-measure the anchor and update the popover's
|
|
4616
|
+
* coordinates so it stays attached. Suitable for menus and tooltips.
|
|
4617
|
+
* - `close`: request close. Suitable for dropdown lists and the colour-picker
|
|
4618
|
+
* popover, where re-tracking a tall popover during a scroll feels intrusive.
|
|
4619
|
+
* - `ignore`: do nothing. The popover stays at its initial coordinates and
|
|
4620
|
+
* may visually detach from a scrolling anchor — useful when the anchor is
|
|
4621
|
+
* guaranteed not to move (e.g. inside a non-scrolling region).
|
|
4622
|
+
*/
|
|
4623
|
+
type PopoverScrollBehavior = 'reposition' | 'close' | 'ignore';
|
|
4624
|
+
/**
|
|
4625
|
+
* Floating-element primitive. Renders projected content as `position: fixed`
|
|
4626
|
+
* anchored to an external element, with flip-on-overflow, viewport clamping,
|
|
4627
|
+
* outside-click and Escape dismissal, and SSR-safe scroll / resize handling.
|
|
4628
|
+
*
|
|
4629
|
+
* The primitive is intentionally low-level: a parent component drives the
|
|
4630
|
+
* `[open]` state and listens for `(closeRequested)` to mirror it back. Internal
|
|
4631
|
+
* library components (`<ea-menu>`, `<ea-dropdown>`, `<ea-color-picker>`,
|
|
4632
|
+
* `<ea-date-picker>`, `[eaTooltip]`) compose on top of it; downstream apps can
|
|
4633
|
+
* use it directly to build their own popover-based UI.
|
|
4634
|
+
*
|
|
4635
|
+
* @example
|
|
4636
|
+
* ```html
|
|
4637
|
+
* <button #trigger (click)="open.set(!open())">Open</button>
|
|
4638
|
+
* <ea-popover [anchor]="trigger" [open]="open()" (closeRequested)="open.set(false)">
|
|
4639
|
+
* <div>Popover content</div>
|
|
4640
|
+
* </ea-popover>
|
|
4641
|
+
* ```
|
|
4642
|
+
*/
|
|
4643
|
+
declare class PopoverComponent {
|
|
4644
|
+
private readonly destroyRef;
|
|
4645
|
+
private readonly surfaceEl;
|
|
4646
|
+
/** Anchor element the popover positions itself against. */
|
|
4647
|
+
readonly anchor: i0.InputSignal<HTMLElement | ElementRef<HTMLElement> | undefined>;
|
|
4648
|
+
/** Whether the popover is currently open. */
|
|
4649
|
+
readonly open: i0.InputSignal<boolean>;
|
|
4650
|
+
/** Where the popover attaches relative to the anchor. */
|
|
4651
|
+
readonly placement: i0.InputSignal<PopoverPlacement>;
|
|
4652
|
+
/** ARIA role applied to the popover surface. */
|
|
4653
|
+
readonly role: i0.InputSignal<PopoverRole>;
|
|
4654
|
+
/** Accessible label. Falls back to nothing; consumers should provide one when no visible heading is in the popover. */
|
|
4655
|
+
readonly ariaLabel: i0.InputSignal<string | undefined>;
|
|
4656
|
+
/** DOM id for the surface so trigger elements can reference it via aria-controls. */
|
|
4657
|
+
readonly surfaceId: i0.InputSignal<string>;
|
|
4658
|
+
/** Gap in px between the anchor and the popover. */
|
|
4659
|
+
readonly offset: i0.InputSignal<number>;
|
|
4660
|
+
/** Flip to the opposite side when the requested side overflows the viewport. */
|
|
4661
|
+
readonly flip: i0.InputSignal<boolean>;
|
|
4662
|
+
/** Clamp the popover inside the viewport when it would otherwise overflow. */
|
|
4663
|
+
readonly clamp: i0.InputSignal<boolean>;
|
|
4664
|
+
/** Set the popover's `min-width` to match the anchor's width (dropdown pattern). */
|
|
4665
|
+
readonly matchAnchorWidth: i0.InputSignal<boolean>;
|
|
4666
|
+
/** Close on click outside the popover and the anchor. */
|
|
4667
|
+
readonly closeOnOutsideClick: i0.InputSignal<boolean>;
|
|
4668
|
+
/** Close on Escape. */
|
|
4669
|
+
readonly closeOnEscape: i0.InputSignal<boolean>;
|
|
4670
|
+
/** What to do on scroll / resize while open. */
|
|
4671
|
+
readonly scrollBehavior: i0.InputSignal<PopoverScrollBehavior>;
|
|
4672
|
+
/** Requested close. The parent should mirror this into `[open]`. */
|
|
4673
|
+
readonly closeRequested: i0.OutputEmitterRef<void>;
|
|
4674
|
+
private readonly position;
|
|
4675
|
+
/** True placement after flip, for class-based styling (e.g. arrow direction). */
|
|
4676
|
+
readonly effectivePlacement: i0.Signal<PopoverPlacement>;
|
|
4677
|
+
/** Inline style applied to the surface element. */
|
|
4678
|
+
readonly surfaceStyle: i0.Signal<Record<string, string>>;
|
|
4679
|
+
constructor();
|
|
4680
|
+
private resolveAnchor;
|
|
4681
|
+
private reposition;
|
|
4682
|
+
onDocumentClick(event: MouseEvent): void;
|
|
4683
|
+
onEscape(): void;
|
|
4684
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PopoverComponent, never>;
|
|
4685
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<PopoverComponent, "ea-popover", never, { "anchor": { "alias": "anchor"; "required": true; "isSignal": true; }; "open": { "alias": "open"; "required": false; "isSignal": true; }; "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "role": { "alias": "role"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "aria-label"; "required": false; "isSignal": true; }; "surfaceId": { "alias": "surfaceId"; "required": false; "isSignal": true; }; "offset": { "alias": "offset"; "required": false; "isSignal": true; }; "flip": { "alias": "flip"; "required": false; "isSignal": true; }; "clamp": { "alias": "clamp"; "required": false; "isSignal": true; }; "matchAnchorWidth": { "alias": "matchAnchorWidth"; "required": false; "isSignal": true; }; "closeOnOutsideClick": { "alias": "closeOnOutsideClick"; "required": false; "isSignal": true; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; "isSignal": true; }; "scrollBehavior": { "alias": "scrollBehavior"; "required": false; "isSignal": true; }; }, { "closeRequested": "closeRequested"; }, never, ["*"], true, never>;
|
|
4686
|
+
}
|
|
4687
|
+
|
|
4292
4688
|
/** Semantic colour scheme of the progress bar. */
|
|
4293
4689
|
type ProgressBarVariant = 'default' | 'success' | 'warning' | 'error' | 'info';
|
|
4294
4690
|
/** Visual height of the progress bar. */
|
|
@@ -4382,6 +4778,171 @@ declare class RadioComponent {
|
|
|
4382
4778
|
static ɵcmp: i0.ɵɵComponentDeclaration<RadioComponent, "ea-radio", never, { "value": { "alias": "value"; "required": true; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
4383
4779
|
}
|
|
4384
4780
|
|
|
4781
|
+
/** Visual size of the range slider track and thumbs. */
|
|
4782
|
+
type RangeSliderSize = 'sm' | 'md' | 'lg';
|
|
4783
|
+
/** Tuple model emitted by the range slider — `[low, high]`, with `low <= high`. */
|
|
4784
|
+
type RangeSliderValue = readonly [number, number];
|
|
4785
|
+
/** Identifies which of the two thumbs an event affects. */
|
|
4786
|
+
type Thumb = 'low' | 'high';
|
|
4787
|
+
/**
|
|
4788
|
+
* Two-thumb extension of `<ea-slider>`. Drives a `[low, high]` numeric range
|
|
4789
|
+
* with pointer drag (the closer thumb to the pointer responds) and full
|
|
4790
|
+
* keyboard navigation per thumb (arrows / PageUp / PageDown / Home / End).
|
|
4791
|
+
* Tab moves between thumbs. Configurable `min`, `max`, `step`, optional value
|
|
4792
|
+
* display, and integrates with Angular forms via `ControlValueAccessor`.
|
|
4793
|
+
*
|
|
4794
|
+
* Overlap rule: a thumb cannot cross past the other; once it reaches the
|
|
4795
|
+
* opposite thumb's position, it clamps to that boundary. Drag-induced
|
|
4796
|
+
* overlap (where the user yanks the low thumb past the high) is resolved by
|
|
4797
|
+
* keeping the moving thumb on its side and the other thumb pinned.
|
|
4798
|
+
*/
|
|
4799
|
+
declare class RangeSliderComponent implements ControlValueAccessor {
|
|
4800
|
+
readonly trackEl: i0.Signal<ElementRef<HTMLDivElement> | undefined>;
|
|
4801
|
+
readonly label: i0.InputSignal<string | undefined>;
|
|
4802
|
+
readonly hint: i0.InputSignal<string | undefined>;
|
|
4803
|
+
readonly errorMsg: i0.InputSignal<string | undefined>;
|
|
4804
|
+
readonly min: i0.InputSignal<number>;
|
|
4805
|
+
readonly max: i0.InputSignal<number>;
|
|
4806
|
+
readonly step: i0.InputSignal<number>;
|
|
4807
|
+
readonly size: i0.InputSignal<RangeSliderSize>;
|
|
4808
|
+
readonly disabled: i0.InputSignal<boolean>;
|
|
4809
|
+
readonly required: i0.InputSignal<boolean>;
|
|
4810
|
+
readonly showValue: i0.InputSignal<boolean>;
|
|
4811
|
+
readonly showMinMaxLabels: i0.InputSignal<boolean>;
|
|
4812
|
+
readonly formatValue: i0.InputSignal<(value: number) => string>;
|
|
4813
|
+
/** Accessible label for the low (start) thumb. Falls back to the field label when omitted. */
|
|
4814
|
+
readonly ariaLabelLow: i0.InputSignal<string | undefined>;
|
|
4815
|
+
/** Accessible label for the high (end) thumb. Falls back to the field label when omitted. */
|
|
4816
|
+
readonly ariaLabelHigh: i0.InputSignal<string | undefined>;
|
|
4817
|
+
readonly id: i0.InputSignal<string>;
|
|
4818
|
+
readonly value: i0.ModelSignal<RangeSliderValue>;
|
|
4819
|
+
/** Fires with the new `[low, high]` tuple whenever either thumb moves. */
|
|
4820
|
+
readonly changed: i0.OutputEmitterRef<RangeSliderValue>;
|
|
4821
|
+
private readonly _formDisabled;
|
|
4822
|
+
readonly dragging: i0.WritableSignal<Thumb | null>;
|
|
4823
|
+
private onChange;
|
|
4824
|
+
private onTouched;
|
|
4825
|
+
readonly isDisabled: i0.Signal<boolean>;
|
|
4826
|
+
/** Clamped, ordered `[low, high]` tuple — `low <= high`, both within `[min, max]`. */
|
|
4827
|
+
readonly clampedValue: i0.Signal<RangeSliderValue>;
|
|
4828
|
+
readonly lowPercent: i0.Signal<number>;
|
|
4829
|
+
readonly highPercent: i0.Signal<number>;
|
|
4830
|
+
readonly hasError: i0.Signal<boolean>;
|
|
4831
|
+
readonly showError: i0.Signal<boolean>;
|
|
4832
|
+
readonly showHint: i0.Signal<boolean>;
|
|
4833
|
+
readonly hostClasses: i0.Signal<{
|
|
4834
|
+
[x: string]: boolean;
|
|
4835
|
+
'ea-range-slider--error': boolean;
|
|
4836
|
+
'ea-range-slider--disabled': boolean;
|
|
4837
|
+
'ea-range-slider--dragging': boolean;
|
|
4838
|
+
}>;
|
|
4839
|
+
writeValue(val: RangeSliderValue | null | undefined): void;
|
|
4840
|
+
registerOnChange(fn: (value: RangeSliderValue) => void): void;
|
|
4841
|
+
registerOnTouched(fn: () => void): void;
|
|
4842
|
+
setDisabledState(isDisabled: boolean): void;
|
|
4843
|
+
handleKeydown(event: KeyboardEvent, thumb: Thumb): void;
|
|
4844
|
+
handleBlur(): void;
|
|
4845
|
+
handleTrackPointerDown(event: PointerEvent): void;
|
|
4846
|
+
handleTrackPointerMove(event: PointerEvent): void;
|
|
4847
|
+
handleTrackPointerUp(event: PointerEvent): void;
|
|
4848
|
+
private toPercent;
|
|
4849
|
+
private pointerToValue;
|
|
4850
|
+
/** Snap to step, clamp to `[min, max]`, then constrain by the opposite thumb. */
|
|
4851
|
+
private commitThumb;
|
|
4852
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RangeSliderComponent, never>;
|
|
4853
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<RangeSliderComponent, "ea-range-slider", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMsg": { "alias": "errorMsg"; "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; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "showValue": { "alias": "showValue"; "required": false; "isSignal": true; }; "showMinMaxLabels": { "alias": "showMinMaxLabels"; "required": false; "isSignal": true; }; "formatValue": { "alias": "formatValue"; "required": false; "isSignal": true; }; "ariaLabelLow": { "alias": "aria-label-low"; "required": false; "isSignal": true; }; "ariaLabelHigh": { "alias": "aria-label-high"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "changed": "changed"; }, never, never, true, never>;
|
|
4854
|
+
}
|
|
4855
|
+
|
|
4856
|
+
/** Per-position render state, computed from the current display value. */
|
|
4857
|
+
type RatingStarState = 'empty' | 'half' | 'full';
|
|
4858
|
+
/** Visual size of the rating. */
|
|
4859
|
+
type RatingSize = 'sm' | 'md' | 'lg';
|
|
4860
|
+
/**
|
|
4861
|
+
* Star-based rating input. Supports whole-star or half-star granularity (via
|
|
4862
|
+
* `allowHalf`), hover preview, keyboard navigation (Left/Right/Up/Down,
|
|
4863
|
+
* Home/End, 0-9 to jump), and a read-only display mode.
|
|
4864
|
+
*
|
|
4865
|
+
* The default `<ea-icon-star>` can be swapped via the `iconClass` input
|
|
4866
|
+
* (any standalone Angular component reference, e.g. `[iconClass]="HeartIconComponent"`).
|
|
4867
|
+
* When `allowHalf` is true, the half-position render uses `halfIconClass`
|
|
4868
|
+
* (default `<ea-icon-left-half-star>`); if a consumer supplies their own
|
|
4869
|
+
* `iconClass` without a matching `halfIconClass`, the half is rendered with the
|
|
4870
|
+
* default left-half-star.
|
|
4871
|
+
*
|
|
4872
|
+
* Integrates with Angular forms via `ControlValueAccessor`. Emits the new
|
|
4873
|
+
* value through the `value` model (numeric 0..max in 1 or 0.5 increments).
|
|
4874
|
+
*/
|
|
4875
|
+
declare class RatingComponent implements ControlValueAccessor {
|
|
4876
|
+
private readonly starsEl;
|
|
4877
|
+
protected readonly i18n: EagamiI18nService;
|
|
4878
|
+
readonly label: i0.InputSignal<string | undefined>;
|
|
4879
|
+
readonly hint: i0.InputSignal<string | undefined>;
|
|
4880
|
+
readonly errorMsg: i0.InputSignal<string | undefined>;
|
|
4881
|
+
readonly size: i0.InputSignal<RatingSize>;
|
|
4882
|
+
readonly max: i0.InputSignal<number>;
|
|
4883
|
+
readonly allowHalf: i0.InputSignal<boolean>;
|
|
4884
|
+
readonly readonly: i0.InputSignal<boolean>;
|
|
4885
|
+
readonly disabled: i0.InputSignal<boolean>;
|
|
4886
|
+
readonly required: i0.InputSignal<boolean>;
|
|
4887
|
+
/** Clicking the current value clears the rating back to 0. */
|
|
4888
|
+
readonly clearable: i0.InputSignal<boolean>;
|
|
4889
|
+
/** Standalone component class rendered for empty / full positions. */
|
|
4890
|
+
readonly iconClass: i0.InputSignal<Type<unknown>>;
|
|
4891
|
+
/** Standalone component class rendered for half positions (when `allowHalf` is true). */
|
|
4892
|
+
readonly halfIconClass: i0.InputSignal<Type<unknown>>;
|
|
4893
|
+
readonly id: i0.InputSignal<string>;
|
|
4894
|
+
/** Current rating value, 0..max in 1 (or 0.5 when `allowHalf`) increments. */
|
|
4895
|
+
readonly value: i0.ModelSignal<number>;
|
|
4896
|
+
/** Fires when the user pre-selects a value via hover; `null` when the cursor leaves. */
|
|
4897
|
+
readonly hoverChanged: i0.OutputEmitterRef<number | null>;
|
|
4898
|
+
protected readonly hoverValue: i0.WritableSignal<number | null>;
|
|
4899
|
+
protected readonly isFocused: i0.WritableSignal<boolean>;
|
|
4900
|
+
private readonly _formDisabled;
|
|
4901
|
+
private onChange;
|
|
4902
|
+
private onTouched;
|
|
4903
|
+
protected readonly isDisabled: i0.Signal<boolean>;
|
|
4904
|
+
protected readonly isInteractive: i0.Signal<boolean>;
|
|
4905
|
+
protected readonly hasError: i0.Signal<boolean>;
|
|
4906
|
+
protected readonly showError: i0.Signal<boolean>;
|
|
4907
|
+
protected readonly showHint: i0.Signal<boolean>;
|
|
4908
|
+
protected readonly step: i0.Signal<1 | 0.5>;
|
|
4909
|
+
/** Value used to render the stars (hover preview wins over committed value). */
|
|
4910
|
+
protected readonly displayValue: i0.Signal<number>;
|
|
4911
|
+
/** 1..max positions for the @for loop. */
|
|
4912
|
+
protected readonly positions: i0.Signal<number[]>;
|
|
4913
|
+
protected readonly hostClasses: i0.Signal<{
|
|
4914
|
+
[x: string]: boolean;
|
|
4915
|
+
'ea-rating-field--error': boolean;
|
|
4916
|
+
'ea-rating-field--disabled': boolean;
|
|
4917
|
+
'ea-rating-field--readonly': boolean;
|
|
4918
|
+
'ea-rating-field--focused': boolean;
|
|
4919
|
+
}>;
|
|
4920
|
+
protected readonly errorId: i0.Signal<string>;
|
|
4921
|
+
protected readonly hintId: i0.Signal<string>;
|
|
4922
|
+
protected readonly describedBy: i0.Signal<string | null>;
|
|
4923
|
+
protected readonly resolvedAriaLabel: i0.Signal<string>;
|
|
4924
|
+
/** Resolves the render state for star `pos` against the current display value. */
|
|
4925
|
+
protected stateFor(pos: number): RatingStarState;
|
|
4926
|
+
/** Component class to instantiate for star `pos`. */
|
|
4927
|
+
protected iconForState(state: RatingStarState): Type<unknown>;
|
|
4928
|
+
protected starAriaLabel(pos: number): string;
|
|
4929
|
+
writeValue(value: number | null | undefined): void;
|
|
4930
|
+
registerOnChange(fn: (value: number) => void): void;
|
|
4931
|
+
registerOnTouched(fn: () => void): void;
|
|
4932
|
+
setDisabledState(isDisabled: boolean): void;
|
|
4933
|
+
protected onPointerMove(event: PointerEvent, pos: number): void;
|
|
4934
|
+
protected onPointerLeave(): void;
|
|
4935
|
+
protected onClick(event: MouseEvent, pos: number): void;
|
|
4936
|
+
protected onFocus(): void;
|
|
4937
|
+
protected onBlur(): void;
|
|
4938
|
+
protected onKeydown(event: KeyboardEvent): void;
|
|
4939
|
+
private commit;
|
|
4940
|
+
private clamp;
|
|
4941
|
+
private computePointerValue;
|
|
4942
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RatingComponent, never>;
|
|
4943
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<RatingComponent, "ea-rating", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMsg": { "alias": "errorMsg"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "allowHalf": { "alias": "allowHalf"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "clearable": { "alias": "clearable"; "required": false; "isSignal": true; }; "iconClass": { "alias": "iconClass"; "required": false; "isSignal": true; }; "halfIconClass": { "alias": "halfIconClass"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "hoverChanged": "hoverChanged"; }, never, never, true, never>;
|
|
4944
|
+
}
|
|
4945
|
+
|
|
4385
4946
|
/** Visual size of the segmented control. */
|
|
4386
4947
|
type SegmentedSize = 'sm' | 'md' | 'lg';
|
|
4387
4948
|
/**
|
|
@@ -4531,6 +5092,71 @@ declare class SpinnerComponent {
|
|
|
4531
5092
|
static ɵcmp: i0.ɵɵComponentDeclaration<SpinnerComponent, "ea-spinner", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
4532
5093
|
}
|
|
4533
5094
|
|
|
5095
|
+
/**
|
|
5096
|
+
* Single step within an `<ea-stepper>`. Registers itself with the parent on
|
|
5097
|
+
* init, exposes its `label` / `completed` / `optional` flags, and shows its
|
|
5098
|
+
* projected content when active.
|
|
5099
|
+
*/
|
|
5100
|
+
declare class StepComponent implements OnInit, OnDestroy {
|
|
5101
|
+
private readonly stepper;
|
|
5102
|
+
readonly label: i0.InputSignal<string>;
|
|
5103
|
+
readonly completed: i0.InputSignal<boolean>;
|
|
5104
|
+
readonly disabled: i0.InputSignal<boolean>;
|
|
5105
|
+
readonly optional: i0.InputSignal<boolean>;
|
|
5106
|
+
readonly id: i0.InputSignal<string>;
|
|
5107
|
+
readonly isActive: i0.Signal<boolean>;
|
|
5108
|
+
ngOnInit(): void;
|
|
5109
|
+
ngOnDestroy(): void;
|
|
5110
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<StepComponent, never>;
|
|
5111
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<StepComponent, "ea-step", never, { "label": { "alias": "label"; "required": true; "isSignal": true; }; "completed": { "alias": "completed"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "optional": { "alias": "optional"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
|
|
5112
|
+
}
|
|
5113
|
+
|
|
5114
|
+
/** Visual size of the stepper. */
|
|
5115
|
+
type StepperSize = 'sm' | 'md' | 'lg';
|
|
5116
|
+
/**
|
|
5117
|
+
* Multi-step navigation paired with content panels. Child `<ea-step>`
|
|
5118
|
+
* components register themselves automatically and the active panel is
|
|
5119
|
+
* shown based on the `activeStep` (zero-based index) two-way binding.
|
|
5120
|
+
*
|
|
5121
|
+
* In `linear` mode, steps cannot be navigated to until all earlier
|
|
5122
|
+
* non-optional steps are marked `completed`. Otherwise any step can be
|
|
5123
|
+
* clicked. ArrowLeft / ArrowRight walk through reachable steps; Home/End
|
|
5124
|
+
* jump to the extremes.
|
|
5125
|
+
*/
|
|
5126
|
+
declare class StepperComponent {
|
|
5127
|
+
protected readonly i18n: EagamiI18nService;
|
|
5128
|
+
readonly registeredSteps: i0.WritableSignal<StepComponent[]>;
|
|
5129
|
+
readonly activeStep: i0.ModelSignal<number>;
|
|
5130
|
+
readonly linear: i0.InputSignal<boolean>;
|
|
5131
|
+
readonly size: i0.InputSignal<StepperSize>;
|
|
5132
|
+
readonly disabled: i0.InputSignal<boolean>;
|
|
5133
|
+
readonly id: i0.InputSignal<string>;
|
|
5134
|
+
/** Fires with the new active step index when the user navigates. */
|
|
5135
|
+
readonly changed: i0.OutputEmitterRef<number>;
|
|
5136
|
+
readonly hostClasses: i0.Signal<{
|
|
5137
|
+
[x: string]: boolean;
|
|
5138
|
+
'ea-stepper--disabled': boolean;
|
|
5139
|
+
}>;
|
|
5140
|
+
registerStep(step: StepComponent): void;
|
|
5141
|
+
unregisterStep(step: StepComponent): void;
|
|
5142
|
+
/** Returns the index of a given step, or `-1` if it isn't registered. */
|
|
5143
|
+
indexOf(step: StepComponent): number;
|
|
5144
|
+
/**
|
|
5145
|
+
* True when the user can navigate directly to the step at `index`. In
|
|
5146
|
+
* non-linear mode this is true for any non-disabled step; in linear mode,
|
|
5147
|
+
* every non-optional earlier step must also be marked `completed`.
|
|
5148
|
+
*/
|
|
5149
|
+
canNavigateTo(index: number): boolean;
|
|
5150
|
+
/** Activate the step at `index` if reachable. */
|
|
5151
|
+
selectStep(index: number): void;
|
|
5152
|
+
handleKeydown(event: KeyboardEvent): void;
|
|
5153
|
+
private nextReachable;
|
|
5154
|
+
private firstReachable;
|
|
5155
|
+
private lastReachable;
|
|
5156
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<StepperComponent, never>;
|
|
5157
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<StepperComponent, "ea-stepper", never, { "activeStep": { "alias": "activeStep"; "required": false; "isSignal": true; }; "linear": { "alias": "linear"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; }, { "activeStep": "activeStepChange"; "changed": "changed"; }, never, ["*"], true, never>;
|
|
5158
|
+
}
|
|
5159
|
+
|
|
4534
5160
|
/** Visual size of the switch. */
|
|
4535
5161
|
type SwitchSize = 'sm' | 'md' | 'lg';
|
|
4536
5162
|
/**
|
|
@@ -4704,6 +5330,165 @@ declare class TextareaComponent implements ControlValueAccessor {
|
|
|
4704
5330
|
static ɵcmp: i0.ɵɵComponentDeclaration<TextareaComponent, "ea-textarea", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMsg": { "alias": "errorMsg"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "rows": { "alias": "rows"; "required": false; "isSignal": true; }; "resize": { "alias": "resize"; "required": false; "isSignal": true; }; "maxlength": { "alias": "maxlength"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "focused": "focused"; "blurred": "blurred"; }, never, never, true, never>;
|
|
4705
5331
|
}
|
|
4706
5332
|
|
|
5333
|
+
/** Visual size of the time picker trigger. */
|
|
5334
|
+
type TimePickerSize = 'sm' | 'md' | 'lg';
|
|
5335
|
+
/** Display format for the trigger label. The wire value is always 24h. */
|
|
5336
|
+
type TimePickerFormat = '12h' | '24h';
|
|
5337
|
+
/** Internal identifier for the three unit columns. */
|
|
5338
|
+
type Unit = 'hours' | 'minutes' | 'seconds';
|
|
5339
|
+
interface ParsedTime {
|
|
5340
|
+
readonly hours: number;
|
|
5341
|
+
readonly minutes: number;
|
|
5342
|
+
readonly seconds: number;
|
|
5343
|
+
}
|
|
5344
|
+
/**
|
|
5345
|
+
* Pops a stepper UI for selecting an `HH:MM[:SS]` time. The wire value is
|
|
5346
|
+
* always a 24-hour string (`"14:30"` or `"14:30:00"`); the `format` input
|
|
5347
|
+
* toggles the trigger's display between 12-hour and 24-hour styles. Supports
|
|
5348
|
+
* configurable steps for minutes and seconds, optional seconds column, and
|
|
5349
|
+
* integrates with Angular forms via `ControlValueAccessor`.
|
|
5350
|
+
*
|
|
5351
|
+
* Keyboard: Tab moves between the hour, minute, (seconds), and AM/PM columns.
|
|
5352
|
+
* Each spinner accepts ArrowUp/ArrowDown to step by 1 (or by the configured
|
|
5353
|
+
* step), PageUp/PageDown for a coarser bump, and digit keys to type a value
|
|
5354
|
+
* directly. After typing two digits (or one digit that already maxes the
|
|
5355
|
+
* unit), focus auto-advances to the next column. Backspace clears the typed
|
|
5356
|
+
* buffer; Escape closes the popover.
|
|
5357
|
+
*/
|
|
5358
|
+
declare class TimePickerComponent implements ControlValueAccessor {
|
|
5359
|
+
protected readonly triggerEl: i0.Signal<ElementRef<HTMLButtonElement> | undefined>;
|
|
5360
|
+
protected readonly hoursEl: i0.Signal<ElementRef<HTMLInputElement> | undefined>;
|
|
5361
|
+
protected readonly minutesEl: i0.Signal<ElementRef<HTMLInputElement> | undefined>;
|
|
5362
|
+
protected readonly secondsEl: i0.Signal<ElementRef<HTMLInputElement> | undefined>;
|
|
5363
|
+
protected readonly i18n: EagamiI18nService;
|
|
5364
|
+
private readonly destroyRef;
|
|
5365
|
+
private readonly injector;
|
|
5366
|
+
readonly label: i0.InputSignal<string | undefined>;
|
|
5367
|
+
readonly placeholder: i0.InputSignal<string | undefined>;
|
|
5368
|
+
readonly size: i0.InputSignal<TimePickerSize>;
|
|
5369
|
+
readonly disabled: i0.InputSignal<boolean>;
|
|
5370
|
+
readonly readonly: i0.InputSignal<boolean>;
|
|
5371
|
+
readonly required: i0.InputSignal<boolean>;
|
|
5372
|
+
readonly hint: i0.InputSignal<string | undefined>;
|
|
5373
|
+
readonly errorMsg: i0.InputSignal<string | undefined>;
|
|
5374
|
+
/** Display format for the trigger label. Wire value is always 24h. */
|
|
5375
|
+
readonly format: i0.InputSignal<TimePickerFormat>;
|
|
5376
|
+
readonly includeSeconds: i0.InputSignal<boolean>;
|
|
5377
|
+
readonly minuteStep: i0.InputSignal<number>;
|
|
5378
|
+
readonly secondStep: i0.InputSignal<number>;
|
|
5379
|
+
readonly id: i0.InputSignal<string>;
|
|
5380
|
+
/** `"HH:MM"` or `"HH:MM:SS"` in 24-hour notation, or `null` when unset. */
|
|
5381
|
+
readonly value: i0.ModelSignal<string | null>;
|
|
5382
|
+
/** Fires with the new value whenever the user changes the time. */
|
|
5383
|
+
readonly changed: i0.OutputEmitterRef<string | null>;
|
|
5384
|
+
readonly isOpen: i0.WritableSignal<boolean>;
|
|
5385
|
+
/** Typed-digit buffer for the currently focused column, or `null` when idle. */
|
|
5386
|
+
readonly editBuffer: i0.WritableSignal<{
|
|
5387
|
+
unit: Unit;
|
|
5388
|
+
digits: string;
|
|
5389
|
+
} | null>;
|
|
5390
|
+
private readonly _formDisabled;
|
|
5391
|
+
private onChange;
|
|
5392
|
+
private onTouched;
|
|
5393
|
+
/** Long-press timers for the chevron buttons. Cleared on release/destroy. */
|
|
5394
|
+
private holdDelayTimer;
|
|
5395
|
+
private holdIntervalTimer;
|
|
5396
|
+
private holdStartedAt;
|
|
5397
|
+
readonly isDisabled: i0.Signal<boolean>;
|
|
5398
|
+
readonly hasError: i0.Signal<boolean>;
|
|
5399
|
+
readonly showError: i0.Signal<boolean>;
|
|
5400
|
+
readonly showHint: i0.Signal<boolean>;
|
|
5401
|
+
/** Parsed `[hh, mm, ss]` from the current value, defaulting to midnight. */
|
|
5402
|
+
readonly parsed: i0.Signal<ParsedTime>;
|
|
5403
|
+
/** True when the picker has a non-null value. Drives the clear button + placeholder fallback. */
|
|
5404
|
+
readonly hasValue: i0.Signal<boolean>;
|
|
5405
|
+
/** Hours digit displayed in the popover stepper. Honors the `format` input. */
|
|
5406
|
+
readonly displayHours: i0.Signal<number>;
|
|
5407
|
+
/**
|
|
5408
|
+
* Text shown in a column's value cell. Reflects the typed-digit buffer when
|
|
5409
|
+
* the user is mid-edit on that column; otherwise renders the committed
|
|
5410
|
+
* value. Hours pad to two digits in 24h mode only (so 9 AM still reads as
|
|
5411
|
+
* "9", but 09:00 in 24h reads as "09").
|
|
5412
|
+
*/
|
|
5413
|
+
hoursText: i0.Signal<string>;
|
|
5414
|
+
minutesText: i0.Signal<string>;
|
|
5415
|
+
secondsText: i0.Signal<string>;
|
|
5416
|
+
/** `'AM' | 'PM'` for 12h mode; `null` in 24h. */
|
|
5417
|
+
readonly period: i0.Signal<"AM" | "PM" | null>;
|
|
5418
|
+
/** Localized text shown on the trigger. Falls back to placeholder when no value. */
|
|
5419
|
+
readonly displayValue: i0.Signal<string | null>;
|
|
5420
|
+
readonly resolvedPlaceholder: i0.Signal<string>;
|
|
5421
|
+
readonly triggerClasses: i0.Signal<{
|
|
5422
|
+
[x: string]: boolean;
|
|
5423
|
+
'ea-time-picker__trigger--error': boolean;
|
|
5424
|
+
'ea-time-picker__trigger--open': boolean;
|
|
5425
|
+
'ea-time-picker__trigger--disabled': boolean;
|
|
5426
|
+
'ea-time-picker__trigger--placeholder': boolean;
|
|
5427
|
+
}>;
|
|
5428
|
+
writeValue(val: string | null | undefined): void;
|
|
5429
|
+
registerOnChange(fn: (value: string | null) => void): void;
|
|
5430
|
+
registerOnTouched(fn: () => void): void;
|
|
5431
|
+
setDisabledState(isDisabled: boolean): void;
|
|
5432
|
+
constructor();
|
|
5433
|
+
toggle(): void;
|
|
5434
|
+
/**
|
|
5435
|
+
* Push focus into the hours input once the popover surface has been
|
|
5436
|
+
* rendered. `afterNextRender` guarantees the DOM has been updated (and the
|
|
5437
|
+
* surface is no longer `display: none`) before we call `.focus()`.
|
|
5438
|
+
*/
|
|
5439
|
+
private focusHoursWhenReady;
|
|
5440
|
+
close(): void;
|
|
5441
|
+
/** Called by `<ea-popover>` when the user clicks outside or scrolls. */
|
|
5442
|
+
onPopoverCloseRequested(): void;
|
|
5443
|
+
clear(event: Event): void;
|
|
5444
|
+
handleTriggerKeydown(event: KeyboardEvent): void;
|
|
5445
|
+
/** Stepper button or keyboard arrow nudges one column up or down. */
|
|
5446
|
+
step(unit: Unit, direction: 1 | -1): void;
|
|
5447
|
+
/**
|
|
5448
|
+
* Begin a long-press repeat on a chevron button. Fires once immediately,
|
|
5449
|
+
* then after a `HOLD_INITIAL_DELAY` pause repeats at `HOLD_INTERVAL_MS`,
|
|
5450
|
+
* accelerating to `HOLD_FAST_INTERVAL_MS` after `HOLD_ACCELERATE_AFTER_MS`
|
|
5451
|
+
* of continuous holding. Pointer up / leave / cancel stops the repeat.
|
|
5452
|
+
*/
|
|
5453
|
+
startHold(unit: Unit, direction: 1 | -1, event: Event): void;
|
|
5454
|
+
/** End any in-flight long-press repeat. Idempotent. */
|
|
5455
|
+
stopHold(): void;
|
|
5456
|
+
/** Switches the AM/PM period in 12h mode by toggling the 12-hour offset. */
|
|
5457
|
+
togglePeriod(): void;
|
|
5458
|
+
handlePopoverKeydown(event: KeyboardEvent, unit: Unit): void;
|
|
5459
|
+
/** Select-all on focus so the first keystroke replaces the current value. */
|
|
5460
|
+
onSpinnerFocus(event: FocusEvent): void;
|
|
5461
|
+
/**
|
|
5462
|
+
* Native `(input)` event: the typed value is already in `el.value`. Strip
|
|
5463
|
+
* non-digits, update the buffer (which drives the displayed text), and
|
|
5464
|
+
* commit + auto-advance once the column is full or a third digit would
|
|
5465
|
+
* overflow.
|
|
5466
|
+
*/
|
|
5467
|
+
onSpinnerInput(unit: Unit, event: Event): void;
|
|
5468
|
+
/** Commits the current buffer if any. Wired to each input's `(blur)`. */
|
|
5469
|
+
onSpinnerBlur(): void;
|
|
5470
|
+
/** True when no digit `0`–`9` can validly extend the current buffer. */
|
|
5471
|
+
private cannotExtend;
|
|
5472
|
+
/** Commits any pending buffer. Called on blur, on arrow keys, on Tab. */
|
|
5473
|
+
private flushBuffer;
|
|
5474
|
+
/** Writes the buffered digits into the value and clears the buffer. */
|
|
5475
|
+
private commitDigits;
|
|
5476
|
+
/**
|
|
5477
|
+
* Map a typed hours value back to 24h. In 24h mode the typed value is the
|
|
5478
|
+
* hour. In 12h mode the typed value is interpreted in the current period
|
|
5479
|
+
* (AM → 12 maps to 0, others stay; PM → 12 stays, others add 12).
|
|
5480
|
+
*/
|
|
5481
|
+
private hoursFromTyped;
|
|
5482
|
+
private minFor;
|
|
5483
|
+
private maxFor;
|
|
5484
|
+
/** Move focus to the next unit column, looping back to hours at the end. */
|
|
5485
|
+
private advanceFocus;
|
|
5486
|
+
private nextUnit;
|
|
5487
|
+
private commit;
|
|
5488
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<TimePickerComponent, never>;
|
|
5489
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<TimePickerComponent, "ea-time-picker", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "errorMsg": { "alias": "errorMsg"; "required": false; "isSignal": true; }; "format": { "alias": "format"; "required": false; "isSignal": true; }; "includeSeconds": { "alias": "includeSeconds"; "required": false; "isSignal": true; }; "minuteStep": { "alias": "minuteStep"; "required": false; "isSignal": true; }; "secondStep": { "alias": "secondStep"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "changed": "changed"; }, never, never, true, never>;
|
|
5490
|
+
}
|
|
5491
|
+
|
|
4707
5492
|
/** Semantic colour scheme of a toast. */
|
|
4708
5493
|
type ToastVariant = 'default' | 'success' | 'warning' | 'error' | 'info';
|
|
4709
5494
|
/** A single live toast notification rendered by `ea-toast`. */
|
|
@@ -4797,5 +5582,5 @@ declare class TooltipDirective implements OnDestroy {
|
|
|
4797
5582
|
static ɵdir: i0.ɵɵDirectiveDeclaration<TooltipDirective, "[eaTooltip]", never, { "eaTooltip": { "alias": "eaTooltip"; "required": true; "isSignal": true; }; "tooltipPosition": { "alias": "tooltipPosition"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
4798
5583
|
}
|
|
4799
5584
|
|
|
4800
|
-
export { AccordionComponent, AccordionItemComponent, ActivityIconComponent, AirplayIconComponent, AlertCircleIconComponent, AlertComponent, AlertOctagonIconComponent, AlertTriangleIconComponent, AlignCenterIconComponent, AlignJustifyIconComponent, AlignLeftIconComponent, AlignRightIconComponent, AnchorIconComponent, ApertureIconComponent,
|
|
4801
|
-
export type { AlertVariant, AutocompleteSize, AvatarEditorCropEvent, AvatarEditorCropState, AvatarEditorShape, AvatarShape, AvatarSize, BadgeSize, BadgeVariant, BreadcrumbClickEvent, BreadcrumbItem, BreadcrumbsSeparator, ButtonSize, ButtonType, ButtonVariant, CardHeaderAlign, CardPadding, CardVariant, CheckboxSize, CodeInputSize, ColorPickerFormat, ColorPickerInputMode, ColorPickerSize, ColorPickerValue, DataTableColumn, DataTableDensity, DataTableSortDirection, DataTableSortState, DatePickerFormat, DatePickerSize, DatePickerValue, DatePickerWeekStart, DialogSize, DividerOrientation, DrawerPosition, DrawerSize, DropdownSize, EagamiI18nConfig, EagamiLocale, EagamiMessages, EagamiMessagesOverride, EagamiWordmarkLayout, EagamiWordmarkVariant, EmptyStateHeadingLevel, EmptyStateSize, IconCategory, IconComponentType, IconMeta, InputSize, InputType, MenuItemVariant, MenuPlacement, PaginatorAlign, PaginatorState, ProgressBarSize, ProgressBarVariant, RadioOrientation, RadioSize, SegmentedSize, SelectOption, SkeletonVariant, SliderSize, SpinnerSize, SwitchSize, TabsSize, TabsVariant, TagSize, TagVariant, TextareaResize, TextareaSize, Toast, ToastOptions, ToastVariant, TooltipPosition };
|
|
5585
|
+
export { AccordionComponent, AccordionItemComponent, ActivityIconComponent, AirplayIconComponent, AlertCircleIconComponent, AlertComponent, AlertOctagonIconComponent, AlertTriangleIconComponent, AlignCenterIconComponent, AlignJustifyIconComponent, AlignLeftIconComponent, AlignRightIconComponent, AnchorIconComponent, ApertureIconComponent, ArchiveIconComponent, ArrowDownCircleIconComponent, ArrowDownIconComponent, ArrowDownLeftIconComponent, ArrowDownRightIconComponent, ArrowLeftCircleIconComponent, ArrowLeftIconComponent, ArrowRightCircleIconComponent, ArrowRightIconComponent, ArrowUpCircleIconComponent, ArrowUpIconComponent, ArrowUpLeftIconComponent, ArrowUpRightIconComponent, AtSignIconComponent, AutocompleteComponent, AvatarComponent, AvatarEditorComponent, AwardIconComponent, BadgeComponent, BarChart2IconComponent, BarChartIconComponent, BatteryChargingIconComponent, BatteryIconComponent, BellIconComponent, BellOffIconComponent, BluetoothIconComponent, BoldIconComponent, BookIconComponent, BookOpenIconComponent, BookmarkIconComponent, BottleIconComponent, BoxIconComponent, BreadcrumbsComponent, BriefcaseIconComponent, ButtonComponent, CalendarIconComponent, CameraIconComponent, CameraOffIconComponent, CandleIconComponent, CardComponent, CastIconComponent, CheckCircleIconComponent, CheckIconComponent, CheckSquareIconComponent, CheckboxComponent, ChevronDownIconComponent, ChevronLeftIconComponent, ChevronRightIconComponent, ChevronUpIconComponent, ChevronsDownIconComponent, ChevronsLeftIconComponent, ChevronsRightIconComponent, ChevronsUpDownIconComponent, ChevronsUpIconComponent, ChromeIconComponent, CircleIconComponent, ClipboardIconComponent, ClockIconComponent, CloudDrizzleIconComponent, CloudIconComponent, CloudLightningIconComponent, CloudOffIconComponent, CloudRainIconComponent, CloudSnowIconComponent, CloudflareIconComponent, CodeIconComponent, CodeInputComponent, CodepenIconComponent, CodesandboxIconComponent, CoffeeIconComponent, ColorPickerComponent, ColumnsIconComponent, CommandIconComponent, CompassIconComponent, CopyIconComponent, CornerDownLeftIconComponent, CornerDownRightIconComponent, CornerLeftDownIconComponent, CornerLeftUpIconComponent, CornerRightDownIconComponent, CornerRightUpIconComponent, CornerUpLeftIconComponent, CornerUpRightIconComponent, CpuIconComponent, CreditCardIconComponent, CropIconComponent, CrosshairIconComponent, DataTableComponent, DatabaseIconComponent, DatePickerComponent, DeleteIconComponent, DialogComponent, DiscIconComponent, DiscordIconComponent, DivideCircleIconComponent, DivideIconComponent, DivideSquareIconComponent, DividerComponent, DockerIconComponent, DollarSignIconComponent, DownloadCloudIconComponent, DownloadIconComponent, DrawerComponent, DribbbleIconComponent, DropboxIconComponent, DropdownComponent, DropletIconComponent, EAGAMI_I18N_CONFIG, EAGAMI_LOCALES, EAGAMI_MESSAGES, EagamiI18nService, EagamiIconComponent, EagamiWordmarkComponent, Edit2IconComponent, Edit3IconComponent, EditIconComponent, EmptyStateComponent, ExternalLinkIconComponent, EyeIconComponent, EyeOffIconComponent, Facebook2IconComponent, FacebookIconComponent, FastForwardIconComponent, FeatherIconComponent, Figma2IconComponent, FigmaIconComponent, FileIconComponent, FileMinusIconComponent, FilePlusIconComponent, FileTextIconComponent, FileUploaderComponent, FilmIconComponent, FilterIconComponent, FlagIconComponent, FolderIconComponent, FolderMinusIconComponent, FolderPlusIconComponent, FramerIconComponent, FrownIconComponent, GiftIconComponent, GitBranchIconComponent, GitCommitIconComponent, GitMergeIconComponent, GitPullRequestIconComponent, Github2IconComponent, GithubIconComponent, GitlabIconComponent, GlobeIconComponent, GoogleIconComponent, GridIconComponent, HardDriveIconComponent, HashIconComponent, HeadphonesIconComponent, HeartIconComponent, HelpCircleIconComponent, HeptagonIconComponent, HexagonIconComponent, HomeIconComponent, ICONS, IconComponentBase, ImageIconComponent, InboxIconComponent, InfoIconComponent, InputComponent, InstagramIconComponent, ItalicIconComponent, KeyIconComponent, KubernetesIconComponent, LampIconComponent, LayersIconComponent, LayoutIconComponent, LeftHalfStarIconComponent, LifeBuoyIconComponent, Link2IconComponent, LinkIconComponent, Linkedin2IconComponent, LinkedinIconComponent, ListIconComponent, LoaderIconComponent, LockIconComponent, LogInIconComponent, LogOutIconComponent, MailIconComponent, MapIconComponent, MapPinIconComponent, MastercardIconComponent, Maximize2IconComponent, MaximizeIconComponent, MehIconComponent, MenuComponent, MenuIconComponent, MenuItemComponent, MenuTriggerDirective, MessageCircleIconComponent, MessageSquareIconComponent, MicIconComponent, MicOffIconComponent, MicrosoftIconComponent, Minimize2IconComponent, MinimizeIconComponent, MinusCircleIconComponent, MinusIconComponent, MinusSquareIconComponent, MongodbIconComponent, MonitorIconComponent, MoonIconComponent, MoreHorizontalIconComponent, MoreVerticalIconComponent, MousePointerIconComponent, MoveIconComponent, MultiSelectComponent, MusicIconComponent, Navigation2IconComponent, NavigationIconComponent, NetlifyIconComponent, NotionIconComponent, NpmIconComponent, OctagonIconComponent, PackageIconComponent, PaginatorComponent, PaperclipIconComponent, PauseCircleIconComponent, PauseIconComponent, PaypalIconComponent, PenToolIconComponent, PentagonIconComponent, PercentIconComponent, PhoneCallIconComponent, PhoneForwardedIconComponent, PhoneIconComponent, PhoneIncomingIconComponent, PhoneMissedIconComponent, PhoneOffIconComponent, PhoneOutgoingIconComponent, PieChartIconComponent, PlayCircleIconComponent, PlayIconComponent, PlusCircleIconComponent, PlusIconComponent, PlusSquareIconComponent, PocketIconComponent, PopoverComponent, PowerIconComponent, PrinterIconComponent, ProgressBarComponent, RadioComponent, RadioGroupComponent, RadioIconComponent, RangeSliderComponent, RatingComponent, RectangleHorizontalIconComponent, RectangleVerticalIconComponent, RedditIconComponent, RefreshCcwIconComponent, RefreshCwIconComponent, RepeatIconComponent, RewindIconComponent, RightHalfStarIconComponent, RotateCcwIconComponent, RotateCwIconComponent, RssIconComponent, SaveIconComponent, ScissorsIconComponent, SearchIconComponent, SegmentedComponent, SendIconComponent, ServerIconComponent, SettingsIconComponent, Share2IconComponent, ShareIconComponent, ShieldIconComponent, ShieldOffIconComponent, ShoppingBagIconComponent, ShoppingCartIconComponent, ShuffleIconComponent, SidebarIconComponent, SkeletonComponent, SkipBackIconComponent, SkipForwardIconComponent, Slack2IconComponent, SlackIconComponent, SlashIconComponent, SliderComponent, SlidersIconComponent, SmartphoneIconComponent, SmileIconComponent, SoccerBallIconComponent, SpeakerIconComponent, SpinnerComponent, SpotifyIconComponent, SquareIconComponent, StarIconComponent, StepComponent, StepperComponent, StopCircleIconComponent, StripeIconComponent, SunIconComponent, SunriseIconComponent, SunsetIconComponent, SwitchComponent, TabComponent, TableIconComponent, TabletIconComponent, TabsComponent, TagComponent, TagIconComponent, TargetIconComponent, TerminalIconComponent, TextareaComponent, ThermometerIconComponent, ThumbsDownIconComponent, ThumbsUpIconComponent, TimePickerComponent, ToastComponent, ToastService, ToggleLeftIconComponent, ToggleRightIconComponent, ToolIconComponent, TooltipDirective, Trash2IconComponent, TrashIconComponent, TrelloIconComponent, TrendingDownIconComponent, TrendingUpIconComponent, TriangleIconComponent, TrophyIconComponent, TruckIconComponent, TvIconComponent, Twitch2IconComponent, TwitchIconComponent, TwitterIconComponent, TypeIconComponent, UmbrellaIconComponent, UnderlineIconComponent, UnlockIconComponent, UploadCloudIconComponent, UploadIconComponent, UserCheckIconComponent, UserIconComponent, UserMinusIconComponent, UserPlusIconComponent, UserXIconComponent, UsersIconComponent, VercelIconComponent, VideoIconComponent, VideoOffIconComponent, VoicemailIconComponent, Volume1IconComponent, Volume2IconComponent, VolumeIconComponent, VolumeXIconComponent, WatchIconComponent, WifiIconComponent, WifiOffIconComponent, WindIconComponent, XCircleIconComponent, XIconComponent, XOctagonIconComponent, XSquareIconComponent, XTwitterIconComponent, Youtube2IconComponent, YoutubeIconComponent, ZapIconComponent, ZapOffIconComponent, ZoomInIconComponent, ZoomOutIconComponent, computePopoverPosition, el, en, esES, frFR, frenchSpacing, iconDisplayName, pl, provideEagamiUi };
|
|
5586
|
+
export type { AlertVariant, AutocompleteSize, AvatarEditorCropEvent, AvatarEditorCropState, AvatarEditorShape, AvatarShape, AvatarSize, BadgeShape, BadgeSize, BadgeVariant, BreadcrumbClickEvent, BreadcrumbItem, BreadcrumbsSeparator, ButtonSize, ButtonType, ButtonVariant, CardHeaderAlign, CardPadding, CardVariant, CheckboxSize, CodeInputSize, ColorPickerFormat, ColorPickerInputMode, ColorPickerSize, ColorPickerValue, DataTableColumn, DataTableDensity, DataTableSortDirection, DataTableSortState, DatePickerFormat, DatePickerSize, DatePickerValue, DatePickerWeekStart, DialogSize, DividerOrientation, DrawerPosition, DrawerSize, DropdownSize, EagamiI18nConfig, EagamiLocale, EagamiMessages, EagamiMessagesOverride, EagamiWordmarkLayout, EagamiWordmarkVariant, EmptyStateHeadingLevel, EmptyStateSize, FileUploaderRejection, FileUploaderRejectionReason, FileUploaderSize, IconCategory, IconComponentType, IconMeta, InputSize, InputType, MenuItemVariant, MenuPlacement, MultiSelectSize, PaginatorAlign, PaginatorState, PopoverPlacement, PopoverPositionOptions, PopoverPositionResult, PopoverRole, PopoverScrollBehavior, ProgressBarSize, ProgressBarVariant, RadioOrientation, RadioSize, RangeSliderSize, RangeSliderValue, RatingSize, RatingStarState, SegmentedSize, SelectOption, SkeletonVariant, SliderSize, SpinnerSize, StepperSize, SwitchSize, TabsSize, TabsVariant, TagSize, TagVariant, TextareaResize, TextareaSize, TimePickerFormat, TimePickerSize, Toast, ToastOptions, ToastVariant, TooltipPosition };
|