@ethlete/components 0.1.0-next.9 → 1.0.0-next.18
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/CHANGELOG.md +241 -0
- package/README.md +1 -1
- package/fesm2022/ethlete-components.mjs +12884 -5439
- package/fesm2022/ethlete-components.mjs.map +1 -1
- package/generators/generators.json +9 -0
- package/generators/icons/generator.js +191 -0
- package/generators/icons/schema.json +35 -0
- package/package.json +16 -8
- package/types/ethlete-components.d.ts +2589 -365
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
|
-
import { Signal, WritableSignal, InjectionToken, ElementRef, Type, InputSignal, ViewContainerRef, Injector, StaticProvider, TemplateRef, computed,
|
|
2
|
+
import { Signal, WritableSignal, InjectionToken, ElementRef, Type, InputSignal, ViewContainerRef, Injector, Binding, StaticProvider, TemplateRef, OnInit, ComponentRef, ModelSignal, OnDestroy, computed, Provider, EnvironmentInjector, ApplicationRef } from '@angular/core';
|
|
3
3
|
import * as _ethlete_core from '@ethlete/core';
|
|
4
|
-
import { AnimatableDirective,
|
|
4
|
+
import { AnimatableDirective, ResizeEdge, DragHandleDirective, ResizeMoveEvent, OverlayRuntimePositionStrategy, Breakpoint, OverlayRuntimeRef, AnimatedLifecycleDirective, OverlayRuntimeCloseSource, AnimatedLifecycleState, OverlayRuntimeShiftOptions, AngularRenderer, OverlayRuntimeAnimationDelegate, ScrollObserverDirective, ScrollToElementOptions, ConsentHandler, ProvideColorDirective } from '@ethlete/core';
|
|
5
5
|
import * as _angular_forms_signals from '@angular/forms/signals';
|
|
6
|
-
import { ValidationError, FormCheckboxControl, FormValueControl } from '@angular/forms/signals';
|
|
6
|
+
import { ValidationError, FormCheckboxControl, PathKind, SchemaPath, SchemaPathRules, FormValueControl } from '@angular/forms/signals';
|
|
7
7
|
import * as _ethlete_components from '@ethlete/components';
|
|
8
|
+
import { QueryArgs, QueryCreator, RequestArgs, ResponseType, AnyNewQuery, QueryErrorResponse } from '@ethlete/query';
|
|
8
9
|
import * as _angular_platform_browser from '@angular/platform-browser';
|
|
10
|
+
import { Placement, OffsetOptions, Padding } from '@floating-ui/dom';
|
|
9
11
|
import * as rxjs from 'rxjs';
|
|
10
12
|
import { Observable } from 'rxjs';
|
|
11
|
-
import { Placement, OffsetOptions, Padding } from '@floating-ui/dom';
|
|
12
13
|
import * as i1 from '@angular/router';
|
|
13
14
|
|
|
14
15
|
declare class ButtonStylesDirective {
|
|
@@ -39,9 +40,44 @@ declare class ButtonDirective {
|
|
|
39
40
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ButtonDirective, "[etButton]", ["etButton"], { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "pressed": { "alias": "pressed"; "required": false; "isSignal": true; }; "emitAriaPressed": { "alias": "emitAriaPressed"; "required": false; "isSignal": true; }; "mutedUntilPressed": { "alias": "mutedUntilPressed"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof _ethlete_core.SurfaceInteractiveDirective; inputs: {}; outputs: {}; }]>;
|
|
40
41
|
}
|
|
41
42
|
|
|
43
|
+
declare class SplitButtonActionDirective {
|
|
44
|
+
private splitButton;
|
|
45
|
+
private destroyRef;
|
|
46
|
+
constructor();
|
|
47
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SplitButtonActionDirective, never>;
|
|
48
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SplitButtonActionDirective, "[etSplitButtonAction]", ["etSplitButtonAction"], {}, {}, never, never, true, never>;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
declare const SPLIT_BUTTON_ERROR_CODES: {
|
|
52
|
+
readonly MISSING_ACTION: 2300;
|
|
53
|
+
readonly MISSING_TRIGGER: 2301;
|
|
54
|
+
readonly ACTION_OUTSIDE_SPLIT_BUTTON: 2302;
|
|
55
|
+
readonly TRIGGER_OUTSIDE_SPLIT_BUTTON: 2303;
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
declare class SplitButtonTriggerDirective {
|
|
59
|
+
private splitButton;
|
|
60
|
+
private destroyRef;
|
|
61
|
+
constructor();
|
|
62
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SplitButtonTriggerDirective, never>;
|
|
63
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SplitButtonTriggerDirective, "[etSplitButtonTrigger]", ["etSplitButtonTrigger"], {}, {}, never, never, true, never>;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
declare class SplitButtonDirective {
|
|
67
|
+
registeredAction: _angular_core.WritableSignal<SplitButtonActionDirective | null>;
|
|
68
|
+
registeredTrigger: _angular_core.WritableSignal<SplitButtonTriggerDirective | null>;
|
|
69
|
+
constructor();
|
|
70
|
+
/** @internal */
|
|
71
|
+
unregisterAction(action: SplitButtonActionDirective): void;
|
|
72
|
+
/** @internal */
|
|
73
|
+
unregisterTrigger(trigger: SplitButtonTriggerDirective): void;
|
|
74
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SplitButtonDirective, never>;
|
|
75
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<SplitButtonDirective, "[etSplitButton]", ["etSplitButton"], {}, {}, never, never, true, never>;
|
|
76
|
+
}
|
|
77
|
+
|
|
42
78
|
declare class FocusRingDirective {
|
|
43
|
-
disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
44
79
|
private styleManager;
|
|
80
|
+
disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
45
81
|
protected active: _angular_core.WritableSignal<boolean>;
|
|
46
82
|
constructor();
|
|
47
83
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FocusRingDirective, never>;
|
|
@@ -125,6 +161,11 @@ declare class IconButtonComponent {
|
|
|
125
161
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<IconButtonComponent, "[et-icon-button]", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, ["[etIcon]"], true, [{ directive: typeof ButtonDirective; inputs: { "disabled": "disabled"; "loading": "loading"; "type": "type"; "pressed": "pressed"; "mutedUntilPressed": "mutedUntilPressed"; }; outputs: {}; }, { directive: typeof ButtonStylesDirective; inputs: {}; outputs: {}; }, { directive: typeof _ethlete_core.ColorInteractiveDirective; inputs: {}; outputs: {}; }, { directive: typeof FocusRingDirective; inputs: {}; outputs: {}; }, { directive: typeof _ethlete_core.ProvideColorDirective; inputs: { "etProvideColor": "color"; }; outputs: {}; }]>;
|
|
126
162
|
}
|
|
127
163
|
|
|
164
|
+
declare class SplitButtonComponent {
|
|
165
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SplitButtonComponent, never>;
|
|
166
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SplitButtonComponent, "et-split-button", never, {}, {}, never, ["*"], true, [{ directive: typeof SplitButtonDirective; inputs: {}; outputs: {}; }]>;
|
|
167
|
+
}
|
|
168
|
+
|
|
128
169
|
declare class TextButtonComponent {
|
|
129
170
|
protected buttonDir: ButtonDirective;
|
|
130
171
|
size: _angular_core.InputSignal<ButtonSize>;
|
|
@@ -172,10 +213,10 @@ declare class WindowControlButtonComponent {
|
|
|
172
213
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<WindowControlButtonComponent, "[et-window-control-button]", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; "kind": { "alias": "kind"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof ButtonDirective; inputs: { "disabled": "disabled"; "loading": "loading"; "type": "type"; "pressed": "pressed"; }; outputs: {}; }, { directive: typeof ButtonStylesDirective; inputs: {}; outputs: {}; }, { directive: typeof _ethlete_core.ColorInteractiveDirective; inputs: {}; outputs: {}; }, { directive: typeof FocusRingDirective; inputs: {}; outputs: {}; }, { directive: typeof _ethlete_core.ProvideColorDirective; inputs: { "etProvideColor": "color"; }; outputs: {}; }]>;
|
|
173
214
|
}
|
|
174
215
|
|
|
175
|
-
declare const BUTTON_IMPORTS: readonly [typeof ButtonComponent, typeof FabComponent, typeof IconButtonComponent, typeof TextButtonComponent, typeof WindowControlButtonComponent, typeof ButtonDirective];
|
|
216
|
+
declare const BUTTON_IMPORTS: readonly [typeof ButtonComponent, typeof FabComponent, typeof IconButtonComponent, typeof SplitButtonComponent, typeof TextButtonComponent, typeof WindowControlButtonComponent, typeof ButtonDirective, typeof SplitButtonDirective, typeof SplitButtonActionDirective, typeof SplitButtonTriggerDirective];
|
|
176
217
|
|
|
177
218
|
declare const FORM_FIELD_ERROR_CODES: {
|
|
178
|
-
readonly MISSING_CONTROL:
|
|
219
|
+
readonly MISSING_CONTROL: 2200;
|
|
179
220
|
};
|
|
180
221
|
|
|
181
222
|
declare const FORM_FIELD_CONTROL_TYPES: {
|
|
@@ -186,6 +227,7 @@ declare const FORM_FIELD_CONTROL_TYPES: {
|
|
|
186
227
|
readonly SWITCH: "switch";
|
|
187
228
|
readonly SEGMENTED_BUTTON: "segmented-button";
|
|
188
229
|
readonly SELECTION_LIST: "selection-list";
|
|
230
|
+
readonly DROPZONE: "dropzone";
|
|
189
231
|
};
|
|
190
232
|
type FormFieldControlType = (typeof FORM_FIELD_CONTROL_TYPES)[keyof typeof FORM_FIELD_CONTROL_TYPES];
|
|
191
233
|
type FormFieldControl = {
|
|
@@ -371,11 +413,31 @@ declare class CheckboxComponent {
|
|
|
371
413
|
|
|
372
414
|
declare const CHECKBOX_IMPORTS: readonly [typeof CheckboxComponent, typeof CheckboxDirective];
|
|
373
415
|
|
|
416
|
+
declare const FORM_FIELD_APPEARANCES: {
|
|
417
|
+
readonly BOX: "box";
|
|
418
|
+
readonly UNDERLINE: "underline";
|
|
419
|
+
};
|
|
420
|
+
type FormFieldAppearance = (typeof FORM_FIELD_APPEARANCES)[keyof typeof FORM_FIELD_APPEARANCES];
|
|
421
|
+
declare const FORM_FIELD_FILLS: {
|
|
422
|
+
readonly TRANSPARENT: "transparent";
|
|
423
|
+
readonly FILLED: "filled";
|
|
424
|
+
};
|
|
425
|
+
type FormFieldFill = (typeof FORM_FIELD_FILLS)[keyof typeof FORM_FIELD_FILLS];
|
|
426
|
+
declare const FORM_FIELD_LABEL_MODES: {
|
|
427
|
+
readonly STATIC: "static";
|
|
428
|
+
readonly INLINE: "inline";
|
|
429
|
+
readonly FLOATING_INSIDE: "floating-inside";
|
|
430
|
+
readonly FLOATING_OUTSIDE: "floating-outside";
|
|
431
|
+
};
|
|
432
|
+
type FormFieldLabelMode = (typeof FORM_FIELD_LABEL_MODES)[keyof typeof FORM_FIELD_LABEL_MODES];
|
|
433
|
+
declare const FORM_FIELD_SIZES: {
|
|
434
|
+
readonly SM: "sm";
|
|
435
|
+
readonly MD: "md";
|
|
436
|
+
readonly LG: "lg";
|
|
437
|
+
};
|
|
438
|
+
type FormFieldSize = (typeof FORM_FIELD_SIZES)[keyof typeof FORM_FIELD_SIZES];
|
|
439
|
+
|
|
374
440
|
declare class ChoiceFieldComponent {
|
|
375
|
-
private errorContentRef;
|
|
376
|
-
private hintContentRef;
|
|
377
|
-
private errorAnimatableRef;
|
|
378
|
-
private hintAnimatableRef;
|
|
379
441
|
support: {
|
|
380
442
|
errorColorTheme: _ethlete_core.ColorTheme;
|
|
381
443
|
formFieldDir: FormFieldDirective;
|
|
@@ -393,12 +455,17 @@ declare class ChoiceFieldComponent {
|
|
|
393
455
|
visibleErrors: _angular_core.Signal<readonly _angular_forms_signals.ValidationError.WithOptionalFieldTree[]>;
|
|
394
456
|
supportHeight: _angular_core.Signal<number>;
|
|
395
457
|
};
|
|
458
|
+
size: _angular_core.InputSignal<FormFieldSize>;
|
|
459
|
+
private errorContentRef;
|
|
460
|
+
private hintContentRef;
|
|
461
|
+
private errorAnimatableRef;
|
|
462
|
+
private hintAnimatableRef;
|
|
396
463
|
canAnimate: {
|
|
397
464
|
state: _angular_core.Signal<boolean>;
|
|
398
465
|
};
|
|
399
466
|
constructor();
|
|
400
467
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ChoiceFieldComponent, never>;
|
|
401
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ChoiceFieldComponent, "et-choice-field", never, {}, {}, never, ["*", "et-label", "et-hint"], true, [{ directive: typeof FormFieldDirective; inputs: {}; outputs: {}; }, { directive: typeof _ethlete_core.ProvideColorDirective; inputs: { "etProvideColor": "color"; }; outputs: {}; }]>;
|
|
468
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ChoiceFieldComponent, "et-choice-field", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, ["*", "et-label", "et-hint"], true, [{ directive: typeof FormFieldDirective; inputs: {}; outputs: {}; }, { directive: typeof _ethlete_core.ProvideColorDirective; inputs: { "etProvideColor": "color"; }; outputs: {}; }]>;
|
|
402
469
|
}
|
|
403
470
|
|
|
404
471
|
declare class HintComponent implements HintComponentBase {
|
|
@@ -416,36 +483,328 @@ declare class DescriptionComponent {
|
|
|
416
483
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<DescriptionComponent, "et-description", never, {}, {}, never, ["*"], true, never>;
|
|
417
484
|
}
|
|
418
485
|
|
|
486
|
+
/**
|
|
487
|
+
* Display information for a value that is already part of the form control
|
|
488
|
+
* (e.g. media uploaded in a previous session inside an edit form).
|
|
489
|
+
*/
|
|
490
|
+
type DropzoneExistingFileInfo = {
|
|
491
|
+
/** URL rendered as a preview thumbnail. */
|
|
492
|
+
previewUrl?: string | null;
|
|
493
|
+
/** Human readable name of the file. Falls back to the stringified value. */
|
|
494
|
+
name?: string;
|
|
495
|
+
/** File size in bytes. */
|
|
496
|
+
size?: number | null;
|
|
497
|
+
};
|
|
498
|
+
type DropzoneUploadConfig<TArgs extends QueryArgs = QueryArgs, TValue = unknown> = {
|
|
499
|
+
/**
|
|
500
|
+
* The query creator used to upload a single file (e.g. a POST multipart route).
|
|
501
|
+
*
|
|
502
|
+
* For per-file upload progress, create it with `reportProgress: true` and make sure the
|
|
503
|
+
* app uses the XHR `HttpClient` backend (upload progress events are not supported with
|
|
504
|
+
* `provideHttpClient(withFetch())`). Without progress information the dropzone falls
|
|
505
|
+
* back to an indeterminate progress display.
|
|
506
|
+
*/
|
|
507
|
+
queryCreator: QueryCreator<TArgs>;
|
|
508
|
+
/**
|
|
509
|
+
* Builds the request args for one file.
|
|
510
|
+
* Override to change the multipart field name or to add extra fields, path params,
|
|
511
|
+
* query params or headers.
|
|
512
|
+
*
|
|
513
|
+
* @default (file) => ({ body: FormData with the file appended as "file" })
|
|
514
|
+
*/
|
|
515
|
+
createArgs?: (file: File) => RequestArgs<TArgs>;
|
|
516
|
+
/**
|
|
517
|
+
* Maps the upload response to the value that gets pushed into the form control
|
|
518
|
+
* (e.g. `(media) => media.uuid`).
|
|
519
|
+
*/
|
|
520
|
+
selectValue: (response: NonNullable<ResponseType<TArgs>>) => TValue;
|
|
521
|
+
/**
|
|
522
|
+
* Maps a value that is already part of the form control (edit forms) to display info.
|
|
523
|
+
* Called in a reactive context — reading signals inside it is supported, so async
|
|
524
|
+
* lookups can be modeled as signals updating over time.
|
|
525
|
+
*
|
|
526
|
+
* Required as soon as the form control can start with a non-empty value.
|
|
527
|
+
*/
|
|
528
|
+
resolveExisting?: (value: TValue) => DropzoneExistingFileInfo;
|
|
529
|
+
};
|
|
530
|
+
type AnyDropzoneUploadConfig<TValue = unknown> = DropzoneUploadConfig<any, TValue>;
|
|
531
|
+
/**
|
|
532
|
+
* Identity helper that correlates the query args type with the form control value type,
|
|
533
|
+
* so `DropzoneUploadConfig` objects get full type inference at the definition site.
|
|
534
|
+
*/
|
|
535
|
+
declare const createDropzoneUpload: <TArgs extends QueryArgs, TValue>(config: DropzoneUploadConfig<TArgs, TValue>) => DropzoneUploadConfig<TArgs, TValue>;
|
|
536
|
+
declare const createDefaultDropzoneArgs: (file: File) => RequestArgs<QueryArgs>;
|
|
537
|
+
|
|
538
|
+
declare const DROPZONE_ENTRY_STATUSES: {
|
|
539
|
+
readonly UPLOADING: "uploading";
|
|
540
|
+
readonly SUCCESS: "success";
|
|
541
|
+
readonly ERROR: "error";
|
|
542
|
+
readonly EXISTING: "existing";
|
|
543
|
+
};
|
|
544
|
+
type DropzoneEntryStatus = (typeof DROPZONE_ENTRY_STATUSES)[keyof typeof DROPZONE_ENTRY_STATUSES];
|
|
545
|
+
type DropzoneEntrySource<TValue = unknown> = {
|
|
546
|
+
type: 'file';
|
|
547
|
+
file: File;
|
|
548
|
+
} | {
|
|
549
|
+
type: 'existing';
|
|
550
|
+
value: TValue;
|
|
551
|
+
};
|
|
552
|
+
type DropzoneEntry<TValue = unknown> = {
|
|
553
|
+
/** Unique id of this entry. Stable for the lifetime of the entry. */
|
|
554
|
+
id: string;
|
|
555
|
+
/** What this entry was created from — a picked/dropped file or an existing form control value. */
|
|
556
|
+
source: DropzoneEntrySource<TValue>;
|
|
557
|
+
/** Human readable name (file name or resolved from the existing value). */
|
|
558
|
+
name: Signal<string>;
|
|
559
|
+
/** File size in bytes. `null` when unknown. */
|
|
560
|
+
size: Signal<number | null>;
|
|
561
|
+
/** Preview URL (object URL for image files, resolver-provided URL for existing values). */
|
|
562
|
+
previewUrl: Signal<string | null>;
|
|
563
|
+
status: Signal<DropzoneEntryStatus>;
|
|
564
|
+
/** Upload progress in percent. `null` means indeterminate (or not uploading). */
|
|
565
|
+
progress: Signal<number | null>;
|
|
566
|
+
/** The upload error, if the last upload attempt failed. */
|
|
567
|
+
error: Signal<QueryErrorResponse | null>;
|
|
568
|
+
/** The form control value of this entry. `null` until the upload succeeded. */
|
|
569
|
+
value: Signal<TValue | null>;
|
|
570
|
+
/** @internal The upload query. `null` for existing entries. */
|
|
571
|
+
query: AnyNewQuery | null;
|
|
572
|
+
/** @internal The frozen request args of the upload. Reused for retries. */
|
|
573
|
+
args: RequestArgs<QueryArgs> | null;
|
|
574
|
+
/** @internal Object URL that must be revoked when the entry is disposed. */
|
|
575
|
+
objectUrl: string | null;
|
|
576
|
+
};
|
|
577
|
+
type CreateFileDropzoneEntryOptions<TValue> = {
|
|
578
|
+
file: File;
|
|
579
|
+
query: AnyNewQuery;
|
|
580
|
+
args: RequestArgs<QueryArgs>;
|
|
581
|
+
selectValue: (response: unknown) => TValue;
|
|
582
|
+
};
|
|
583
|
+
declare const createFileDropzoneEntry: <TValue>(options: CreateFileDropzoneEntryOptions<TValue>) => DropzoneEntry<TValue>;
|
|
584
|
+
type CreateExistingDropzoneEntryOptions<TValue> = {
|
|
585
|
+
value: TValue;
|
|
586
|
+
upload: Signal<AnyDropzoneUploadConfig<TValue>>;
|
|
587
|
+
};
|
|
588
|
+
declare const createExistingDropzoneEntry: <TValue>(options: CreateExistingDropzoneEntryOptions<TValue>) => DropzoneEntry<TValue>;
|
|
589
|
+
/** Releases all resources held by an entry (object URL, in-flight upload). */
|
|
590
|
+
declare const disposeDropzoneEntry: <TValue>(entry: DropzoneEntry<TValue>) => void;
|
|
591
|
+
/** Checks a file against the native `accept` attribute semantics (`.ext`, `type/subtype`, `type/*`). */
|
|
592
|
+
declare const isFileAccepted: (file: File, accept: string) => boolean;
|
|
593
|
+
/** Formats a byte count as a short human readable string (e.g. `1.5 MB`). */
|
|
594
|
+
declare const formatFileSize: (bytes: number) => string;
|
|
595
|
+
|
|
596
|
+
declare const DROPZONE_FILE_REJECTION_REASONS: {
|
|
597
|
+
readonly ACCEPT: "accept";
|
|
598
|
+
readonly MAX_FILE_SIZE: "maxFileSize";
|
|
599
|
+
readonly MIN_FILE_SIZE: "minFileSize";
|
|
600
|
+
readonly MAX_FILES: "maxFiles";
|
|
601
|
+
};
|
|
602
|
+
type DropzoneFileRejectionReason = (typeof DROPZONE_FILE_REJECTION_REASONS)[keyof typeof DROPZONE_FILE_REJECTION_REASONS];
|
|
603
|
+
type DropzoneFileRejection = {
|
|
604
|
+
file: File;
|
|
605
|
+
reason: DropzoneFileRejectionReason;
|
|
606
|
+
};
|
|
607
|
+
/** The `kind` of the {@link ValidationError}s produced by {@link dropzoneFiles}. */
|
|
608
|
+
declare const DROPZONE_FILES_ERROR_KIND = "dropzoneFiles";
|
|
609
|
+
type DropzoneFileConstraints = {
|
|
610
|
+
/**
|
|
611
|
+
* Accepted file types using the native `accept` attribute semantics
|
|
612
|
+
* (`.png`, `image/png`, `image/*`). Also applied to the native file picker.
|
|
613
|
+
*/
|
|
614
|
+
accept?: string;
|
|
615
|
+
/** Maximum size of a single file in bytes. */
|
|
616
|
+
maxFileSize?: number;
|
|
617
|
+
/** Minimum size of a single file in bytes. */
|
|
618
|
+
minFileSize?: number;
|
|
619
|
+
/** Overrides the built-in per-rejection error message (e.g. for i18n). */
|
|
620
|
+
message?: (rejection: DropzoneFileRejection) => string;
|
|
621
|
+
};
|
|
622
|
+
/**
|
|
623
|
+
* @internal
|
|
624
|
+
* The channel between the {@link dropzoneFiles} schema rule and the dropzone directive:
|
|
625
|
+
* the schema publishes the constraints, the directive publishes the rejected files of
|
|
626
|
+
* the most recent selection.
|
|
627
|
+
*/
|
|
628
|
+
type DropzoneFileValidationChannel = {
|
|
629
|
+
constraints: Signal<DropzoneFileConstraints | undefined>;
|
|
630
|
+
rejections: WritableSignal<DropzoneFileRejection[]>;
|
|
631
|
+
};
|
|
632
|
+
/** @internal Read by the dropzone directive via the bound field's metadata. */
|
|
633
|
+
declare const DROPZONE_FILE_CONSTRAINTS: _angular_forms_signals.MetadataKey<DropzoneFileValidationChannel, DropzoneFileConstraints, DropzoneFileConstraints | undefined>;
|
|
634
|
+
declare const defaultDropzoneRejectionMessage: (rejection: DropzoneFileRejection, constraints: DropzoneFileConstraints | undefined) => string;
|
|
635
|
+
/**
|
|
636
|
+
* Schema rule that validates the files selected in a dropzone bound to this field.
|
|
637
|
+
*
|
|
638
|
+
* Files violating the constraints are never uploaded; each violation surfaces as a
|
|
639
|
+
* regular validation error (`kind: 'dropzoneFiles'`) on the field until the next
|
|
640
|
+
* selection, removal or clear. Count and emptiness constraints are plain value
|
|
641
|
+
* validation — use `required()`, `minLength()` and `maxLength()` for those.
|
|
642
|
+
*
|
|
643
|
+
* @example
|
|
644
|
+
* ```ts
|
|
645
|
+
* form(model, (s) => {
|
|
646
|
+
* required(s.media, { message: 'Please upload a file' });
|
|
647
|
+
* maxLength(s.media, 5, { message: 'Upload at most 5 files' });
|
|
648
|
+
* dropzoneFiles(s.media, { accept: 'image/*', maxFileSize: 5 * 1024 * 1024 });
|
|
649
|
+
* });
|
|
650
|
+
* ```
|
|
651
|
+
*/
|
|
652
|
+
declare const dropzoneFiles: <TValue, TPathKind extends PathKind = PathKind.Root>(path: SchemaPath<TValue, SchemaPathRules.Supported, TPathKind>, constraints: DropzoneFileConstraints | (() => DropzoneFileConstraints)) => void;
|
|
653
|
+
|
|
654
|
+
declare class DropzoneDirective<TValue = unknown> implements FormValueControl<TValue | TValue[] | null>, FormFieldControl {
|
|
655
|
+
private formField;
|
|
656
|
+
private signalFormField;
|
|
657
|
+
private destroyRef;
|
|
658
|
+
private injector;
|
|
659
|
+
value: _angular_core.ModelSignal<TValue | TValue[] | null>;
|
|
660
|
+
touched: _angular_core.ModelSignal<boolean>;
|
|
661
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
662
|
+
invalid: _angular_core.InputSignal<boolean>;
|
|
663
|
+
errors: _angular_core.InputSignal<readonly ValidationError.WithOptionalFieldTree[]>;
|
|
664
|
+
required: _angular_core.InputSignal<boolean>;
|
|
665
|
+
name: _angular_core.InputSignal<string>;
|
|
666
|
+
/** The upload workflow configuration. Create it via `createDropzoneUpload()`. */
|
|
667
|
+
upload: _angular_core.InputSignal<AnyDropzoneUploadConfig<TValue>>;
|
|
668
|
+
/** Whether multiple files can be uploaded. The control value becomes an array. */
|
|
669
|
+
multiple: _angular_core.InputSignal<boolean>;
|
|
670
|
+
/** Emits all files of a selection that were rejected, with the reason per file. */
|
|
671
|
+
filesRejected: _angular_core.OutputEmitterRef<DropzoneFileRejection[]>;
|
|
672
|
+
/** Emits when the upload of an entry succeeded (after the control value was updated). */
|
|
673
|
+
uploadSucceeded: _angular_core.OutputEmitterRef<DropzoneEntry<TValue>>;
|
|
674
|
+
/** Emits when the upload of an entry failed. */
|
|
675
|
+
uploadFailed: _angular_core.OutputEmitterRef<DropzoneEntry<TValue>>;
|
|
676
|
+
private internalEntries;
|
|
677
|
+
private internalLastRejections;
|
|
678
|
+
private dragDepth;
|
|
679
|
+
private entryWatchers;
|
|
680
|
+
private lastSyncedValue;
|
|
681
|
+
private hasSyncedValue;
|
|
682
|
+
/** All entries currently managed by the dropzone, including uploading and failed ones. */
|
|
683
|
+
entries: _angular_core.Signal<DropzoneEntry<TValue>[]>;
|
|
684
|
+
/** The rejections of the most recent file selection. Reset by the next selection, removal or clear. */
|
|
685
|
+
lastRejections: _angular_core.Signal<DropzoneFileRejection[]>;
|
|
686
|
+
/**
|
|
687
|
+
* The file validation channel of the bound form field, if its schema uses the
|
|
688
|
+
* `dropzoneFiles()` rule. Provides the constraints and receives the rejections.
|
|
689
|
+
*/
|
|
690
|
+
private fileValidation;
|
|
691
|
+
/** The `accept` constraint of the bound field's `dropzoneFiles()` rule. Empty accepts everything. */
|
|
692
|
+
accept: _angular_core.Signal<string>;
|
|
693
|
+
/** Whether a files drag is currently hovering the dropzone. */
|
|
694
|
+
isDragOver: _angular_core.Signal<boolean>;
|
|
695
|
+
anyUploading: _angular_core.Signal<boolean>;
|
|
696
|
+
anyFailed: _angular_core.Signal<boolean>;
|
|
697
|
+
hasValue: _angular_core.Signal<boolean>;
|
|
698
|
+
shouldDisplayError: _angular_core.Signal<boolean>;
|
|
699
|
+
describedBy: _angular_core.WritableSignal<string | null>;
|
|
700
|
+
controlType: _angular_core.WritableSignal<"dropzone">;
|
|
701
|
+
describedById: _angular_core.Signal<string | null>;
|
|
702
|
+
labelId: _angular_core.Signal<string | null>;
|
|
703
|
+
/** @internal */
|
|
704
|
+
focusTarget: _angular_core.WritableSignal<HTMLElement | null>;
|
|
705
|
+
constructor();
|
|
706
|
+
/** Validates the given files and uploads all accepted ones. */
|
|
707
|
+
selectFiles(files: FileList | readonly File[]): void;
|
|
708
|
+
/** Removes an entry. Cancels its upload if it is still in flight. */
|
|
709
|
+
removeEntry(id: string): void;
|
|
710
|
+
/** Retries the upload of a failed entry with its original request args. */
|
|
711
|
+
retryEntry(id: string): void;
|
|
712
|
+
/** Removes all entries and resets the control value. */
|
|
713
|
+
clear(): void;
|
|
714
|
+
activate(): void;
|
|
715
|
+
protected handleDragEnter(event: DragEvent): void;
|
|
716
|
+
protected handleDragOver(event: DragEvent): void;
|
|
717
|
+
protected handleDragLeave(): void;
|
|
718
|
+
protected handleDrop(event: DragEvent): void;
|
|
719
|
+
private setRejections;
|
|
720
|
+
private createFileEntry;
|
|
721
|
+
private disposeEntry;
|
|
722
|
+
private syncValue;
|
|
723
|
+
private reconcileValue;
|
|
724
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<DropzoneDirective<any>, never>;
|
|
725
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<DropzoneDirective<any>, "[etDropzone]", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "upload": { "alias": "upload"; "required": true; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "touched": "touchedChange"; "filesRejected": "filesRejected"; "uploadSucceeded": "uploadSucceeded"; "uploadFailed": "uploadFailed"; }, never, never, true, never>;
|
|
726
|
+
}
|
|
727
|
+
|
|
728
|
+
declare class DropzoneComponent {
|
|
729
|
+
protected dropzoneDir: DropzoneDirective<any>;
|
|
730
|
+
support: {
|
|
731
|
+
errorColorTheme: _ethlete_core.ColorTheme;
|
|
732
|
+
formFieldDir: FormFieldDirective;
|
|
733
|
+
errorContent: _angular_core.WritableSignal<ElementRef<HTMLElement> | undefined>;
|
|
734
|
+
hintContent: _angular_core.WritableSignal<ElementRef<HTMLElement> | undefined>;
|
|
735
|
+
errorAnimatable: _angular_core.WritableSignal<AnimatableDirective | undefined>;
|
|
736
|
+
hintAnimatable: _angular_core.WritableSignal<AnimatableDirective | undefined>;
|
|
737
|
+
semanticSupportState: _angular_core.Signal<"none" | "hint" | "error">;
|
|
738
|
+
displaysError: _angular_core.Signal<boolean>;
|
|
739
|
+
shouldRenderSupport: _angular_core.Signal<boolean>;
|
|
740
|
+
shouldRenderError: _angular_core.Signal<boolean>;
|
|
741
|
+
shouldRenderHint: _angular_core.Signal<boolean>;
|
|
742
|
+
errorActive: _angular_core.Signal<boolean>;
|
|
743
|
+
hintActive: _angular_core.Signal<boolean>;
|
|
744
|
+
visibleErrors: _angular_core.Signal<readonly _angular_forms_signals.ValidationError.WithOptionalFieldTree[]>;
|
|
745
|
+
supportHeight: _angular_core.Signal<number>;
|
|
746
|
+
};
|
|
747
|
+
private injector;
|
|
748
|
+
private renderer;
|
|
749
|
+
private prefersReducedMotion;
|
|
750
|
+
/** Label of the retry button shown for failed uploads. */
|
|
751
|
+
retryLabel: _angular_core.InputSignal<string>;
|
|
752
|
+
/** Accessible label prefix of the remove button. The entry name is appended. */
|
|
753
|
+
removeLabel: _angular_core.InputSignal<string>;
|
|
754
|
+
/** Accessible label of the replace button shown in single mode. */
|
|
755
|
+
replaceLabel: _angular_core.InputSignal<string>;
|
|
756
|
+
/** Fallback error message shown when the upload error has no message. */
|
|
757
|
+
uploadErrorLabel: _angular_core.InputSignal<string>;
|
|
758
|
+
/** Overrides the built-in per-entry upload failure message (e.g. for i18n). */
|
|
759
|
+
uploadErrorMessage: _angular_core.InputSignal<((entry: DropzoneEntry) => string) | null>;
|
|
760
|
+
private fileInput;
|
|
761
|
+
private browseButton;
|
|
762
|
+
private errorContentRef;
|
|
763
|
+
private hintContentRef;
|
|
764
|
+
private errorAnimatableRef;
|
|
765
|
+
private hintAnimatableRef;
|
|
766
|
+
private entryElements;
|
|
767
|
+
private removingEntryIds;
|
|
768
|
+
private filePickerOpen;
|
|
769
|
+
canAnimate: {
|
|
770
|
+
state: _angular_core.Signal<boolean>;
|
|
771
|
+
};
|
|
772
|
+
protected singleEntry: _angular_core.Signal<DropzoneEntry<any> | null>;
|
|
773
|
+
protected liveStatusMessage: _angular_core.Signal<string>;
|
|
774
|
+
/** Upload failures, rendered like validation errors below the field. */
|
|
775
|
+
protected internalErrorMessages: _angular_core.Signal<string[]>;
|
|
776
|
+
protected readonly FORMAT_FILE_SIZE: (bytes: number) => string;
|
|
777
|
+
constructor();
|
|
778
|
+
protected openFilePicker(): void;
|
|
779
|
+
/**
|
|
780
|
+
* Opening the system file picker blurs the trigger — the control must not be
|
|
781
|
+
* marked as touched (and show validation errors) while the dialog is open.
|
|
782
|
+
*/
|
|
783
|
+
protected markTriggerTouched(): void;
|
|
784
|
+
/** Called when focus returns to the trigger or the picker dialog is cancelled. */
|
|
785
|
+
protected resetFilePickerState(): void;
|
|
786
|
+
protected uploadPickedFiles(event: Event): void;
|
|
787
|
+
/** Removes an entry, scaling out its element and FLIP-shifting the remaining ones. */
|
|
788
|
+
protected removeEntryAnimated(entry: DropzoneEntry, entryElement: HTMLElement): void;
|
|
789
|
+
private defaultUploadErrorMessage;
|
|
790
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<DropzoneComponent, never>;
|
|
791
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<DropzoneComponent, "et-dropzone", never, { "retryLabel": { "alias": "retryLabel"; "required": false; "isSignal": true; }; "removeLabel": { "alias": "removeLabel"; "required": false; "isSignal": true; }; "replaceLabel": { "alias": "replaceLabel"; "required": false; "isSignal": true; }; "uploadErrorLabel": { "alias": "uploadErrorLabel"; "required": false; "isSignal": true; }; "uploadErrorMessage": { "alias": "uploadErrorMessage"; "required": false; "isSignal": true; }; }, {}, never, ["et-label", "*", "et-hint"], true, [{ directive: typeof FormFieldDirective; inputs: {}; outputs: {}; }, { directive: typeof DropzoneDirective; inputs: { "value": "value"; "touched": "touched"; "disabled": "disabled"; "invalid": "invalid"; "errors": "errors"; "required": "required"; "name": "name"; "upload": "upload"; "multiple": "multiple"; }; outputs: { "valueChange": "valueChange"; "touchedChange": "touchedChange"; "filesRejected": "filesRejected"; "uploadSucceeded": "uploadSucceeded"; "uploadFailed": "uploadFailed"; }; }, { directive: typeof _ethlete_core.ProvideColorDirective; inputs: { "etProvideColor": "color"; }; outputs: {}; }]>;
|
|
792
|
+
}
|
|
793
|
+
|
|
794
|
+
declare const DROPZONE_IMPORTS: readonly [typeof DropzoneComponent, typeof DropzoneDirective];
|
|
795
|
+
|
|
796
|
+
declare const DROPZONE_ERROR_CODES: {
|
|
797
|
+
readonly INVALID_UPLOAD_CONFIG: 2400;
|
|
798
|
+
readonly MISSING_EXISTING_RESOLVER: 2401;
|
|
799
|
+
readonly VALUE_MODE_MISMATCH: 2402;
|
|
800
|
+
};
|
|
801
|
+
|
|
419
802
|
declare class FormErrorComponent {
|
|
420
803
|
error: _angular_core.InputSignal<ValidationError.WithOptionalFieldTree>;
|
|
421
804
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<FormErrorComponent, never>;
|
|
422
805
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<FormErrorComponent, "et-form-error", never, { "error": { "alias": "error"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
423
806
|
}
|
|
424
807
|
|
|
425
|
-
declare const FORM_FIELD_APPEARANCES: {
|
|
426
|
-
readonly BOX: "box";
|
|
427
|
-
readonly UNDERLINE: "underline";
|
|
428
|
-
};
|
|
429
|
-
type FormFieldAppearance = (typeof FORM_FIELD_APPEARANCES)[keyof typeof FORM_FIELD_APPEARANCES];
|
|
430
|
-
declare const FORM_FIELD_FILLS: {
|
|
431
|
-
readonly TRANSPARENT: "transparent";
|
|
432
|
-
readonly FILLED: "filled";
|
|
433
|
-
};
|
|
434
|
-
type FormFieldFill = (typeof FORM_FIELD_FILLS)[keyof typeof FORM_FIELD_FILLS];
|
|
435
|
-
declare const FORM_FIELD_LABEL_MODES: {
|
|
436
|
-
readonly STATIC: "static";
|
|
437
|
-
readonly INLINE: "inline";
|
|
438
|
-
readonly FLOATING_INSIDE: "floating-inside";
|
|
439
|
-
readonly FLOATING_OUTSIDE: "floating-outside";
|
|
440
|
-
};
|
|
441
|
-
type FormFieldLabelMode = (typeof FORM_FIELD_LABEL_MODES)[keyof typeof FORM_FIELD_LABEL_MODES];
|
|
442
|
-
declare const FORM_FIELD_SIZES: {
|
|
443
|
-
readonly SM: "sm";
|
|
444
|
-
readonly MD: "md";
|
|
445
|
-
readonly LG: "lg";
|
|
446
|
-
};
|
|
447
|
-
type FormFieldSize = (typeof FORM_FIELD_SIZES)[keyof typeof FORM_FIELD_SIZES];
|
|
448
|
-
|
|
449
808
|
declare const SUPPORT_CONTENT_STATE: {
|
|
450
809
|
readonly NONE: "none";
|
|
451
810
|
readonly HINT: "hint";
|
|
@@ -464,6 +823,8 @@ declare class FormFieldComponent {
|
|
|
464
823
|
private provideSurface;
|
|
465
824
|
private parentSurfaceProvider;
|
|
466
825
|
protected formFieldDir: FormFieldDirective;
|
|
826
|
+
protected errorColorTheme: _ethlete_core.ColorTheme;
|
|
827
|
+
private surfaceThemes;
|
|
467
828
|
appearance: _angular_core.InputSignal<FormFieldAppearance>;
|
|
468
829
|
fill: _angular_core.InputSignal<FormFieldFill>;
|
|
469
830
|
labelMode: _angular_core.InputSignal<FormFieldLabelMode>;
|
|
@@ -473,8 +834,6 @@ declare class FormFieldComponent {
|
|
|
473
834
|
prefixEl: _angular_core.Signal<ElementRef<HTMLElement> | undefined>;
|
|
474
835
|
protected errorAnimatable: _angular_core.Signal<AnimatableDirective | undefined>;
|
|
475
836
|
protected hintAnimatable: _angular_core.Signal<AnimatableDirective | undefined>;
|
|
476
|
-
protected errorColorTheme: _ethlete_core.ColorTheme;
|
|
477
|
-
private surfaceThemes;
|
|
478
837
|
private errorDimensions;
|
|
479
838
|
private hintDimensions;
|
|
480
839
|
private prefixDimensions;
|
|
@@ -577,6 +936,7 @@ declare const INPUT_IMPORTS: readonly [typeof InputComponent, typeof InputDirect
|
|
|
577
936
|
|
|
578
937
|
type InlineTag = 'strong' | 'em' | 'del';
|
|
579
938
|
type ListTag = 'ul' | 'ol';
|
|
939
|
+
type HeadingTag = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
|
|
580
940
|
type EditableSelection = {
|
|
581
941
|
selection: Selection;
|
|
582
942
|
range: Range;
|
|
@@ -588,11 +948,28 @@ type RichTextMarkStates = {
|
|
|
588
948
|
unorderedList: boolean;
|
|
589
949
|
orderedList: boolean;
|
|
590
950
|
link: boolean;
|
|
951
|
+
/** Heading level of the block the selection starts in, or `null` when it is not a heading. */
|
|
952
|
+
heading: number | null;
|
|
591
953
|
};
|
|
592
954
|
|
|
593
955
|
declare class RichTextEditorDirective implements FormValueControl<string>, FormFieldControl {
|
|
594
956
|
private formField;
|
|
595
957
|
private destroyRef;
|
|
958
|
+
private document;
|
|
959
|
+
/** @internal */
|
|
960
|
+
editorDom: {
|
|
961
|
+
root: _angular_core.WritableSignal<HTMLElement | null>;
|
|
962
|
+
getSelection: () => EditableSelection | null;
|
|
963
|
+
closestWithin: (node: Node | null, selector: string) => HTMLElement | null;
|
|
964
|
+
markStates: () => RichTextMarkStates | null;
|
|
965
|
+
toggleInline: (tag: InlineTag) => void;
|
|
966
|
+
toggleList: (listTag: ListTag) => void;
|
|
967
|
+
toggleHeading: (tag: HeadingTag) => void;
|
|
968
|
+
applyLink: (href: string) => void;
|
|
969
|
+
removeLink: () => void;
|
|
970
|
+
insertToken: (node: Node) => void;
|
|
971
|
+
handleBackspace: () => boolean;
|
|
972
|
+
};
|
|
596
973
|
value: _angular_core.ModelSignal<string>;
|
|
597
974
|
touched: _angular_core.ModelSignal<boolean>;
|
|
598
975
|
disabled: _angular_core.InputSignal<boolean>;
|
|
@@ -616,21 +993,9 @@ declare class RichTextEditorDirective implements FormValueControl<string>, FormF
|
|
|
616
993
|
unorderedListActive: _angular_core.WritableSignal<boolean>;
|
|
617
994
|
orderedListActive: _angular_core.WritableSignal<boolean>;
|
|
618
995
|
linkActive: _angular_core.WritableSignal<boolean>;
|
|
996
|
+
headingLevel: _angular_core.WritableSignal<number | null>;
|
|
619
997
|
/** @internal */
|
|
620
998
|
lastEmittedMarkdown: string | null;
|
|
621
|
-
/** @internal */
|
|
622
|
-
editorDom: {
|
|
623
|
-
root: _angular_core.WritableSignal<HTMLElement | null>;
|
|
624
|
-
getSelection: () => EditableSelection | null;
|
|
625
|
-
closestWithin: (node: Node | null, selector: string) => HTMLElement | null;
|
|
626
|
-
markStates: () => RichTextMarkStates | null;
|
|
627
|
-
toggleInline: (tag: InlineTag) => void;
|
|
628
|
-
toggleList: (listTag: ListTag) => void;
|
|
629
|
-
applyLink: (href: string) => void;
|
|
630
|
-
removeLink: () => void;
|
|
631
|
-
insertToken: (node: Node) => void;
|
|
632
|
-
handleBackspace: () => boolean;
|
|
633
|
-
};
|
|
634
999
|
constructor();
|
|
635
1000
|
activate(): void;
|
|
636
1001
|
syncFromDom(): void;
|
|
@@ -640,27 +1005,53 @@ declare class RichTextEditorDirective implements FormValueControl<string>, FormF
|
|
|
640
1005
|
toggleStrikethrough(): void;
|
|
641
1006
|
toggleUnorderedList(): void;
|
|
642
1007
|
toggleOrderedList(): void;
|
|
1008
|
+
toggleHeading(level: number): void;
|
|
643
1009
|
setLink(href: string): void;
|
|
1010
|
+
promptForLink(): void;
|
|
644
1011
|
handleBackspace(): boolean;
|
|
645
1012
|
/**
|
|
646
1013
|
* @internal Extension seam for the follow-up `@`/`#` autocomplete: inserts an atomic inline
|
|
647
1014
|
* node (a mention/placeholder token) at the caret, then re-syncs.
|
|
648
1015
|
*/
|
|
649
1016
|
insertAtomicToken(node: Node): void;
|
|
1017
|
+
private serializeCleanHtml;
|
|
650
1018
|
private runCommand;
|
|
651
1019
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RichTextEditorDirective, never>;
|
|
652
1020
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RichTextEditorDirective, "[etRichTextEditor]", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "hidden": { "alias": "hidden"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "touched": "touchedChange"; }, never, never, true, never>;
|
|
653
1021
|
}
|
|
654
1022
|
|
|
1023
|
+
declare class RichTextEditorFloatingToolbarComponent {
|
|
1024
|
+
protected dir: RichTextEditorDirective;
|
|
1025
|
+
private document;
|
|
1026
|
+
private renderer;
|
|
1027
|
+
private destroyRef;
|
|
1028
|
+
private host;
|
|
1029
|
+
protected visible: _angular_core.WritableSignal<boolean>;
|
|
1030
|
+
private activeRange;
|
|
1031
|
+
private floatingReference;
|
|
1032
|
+
private floatingCleanup;
|
|
1033
|
+
private pointerSelectingInContent;
|
|
1034
|
+
constructor();
|
|
1035
|
+
private selectableRange;
|
|
1036
|
+
private finishContentPointerSelection;
|
|
1037
|
+
private evaluate;
|
|
1038
|
+
private reposition;
|
|
1039
|
+
private start;
|
|
1040
|
+
private updatePosition;
|
|
1041
|
+
private hide;
|
|
1042
|
+
private stop;
|
|
1043
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RichTextEditorFloatingToolbarComponent, never>;
|
|
1044
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<RichTextEditorFloatingToolbarComponent, "et-rich-text-editor-floating-toolbar", never, {}, {}, never, never, true, never>;
|
|
1045
|
+
}
|
|
1046
|
+
|
|
655
1047
|
declare class RichTextEditorComponent {
|
|
656
1048
|
protected dir: RichTextEditorDirective;
|
|
657
1049
|
private document;
|
|
658
1050
|
private editable;
|
|
659
1051
|
constructor();
|
|
660
|
-
protected
|
|
661
|
-
protected
|
|
662
|
-
protected
|
|
663
|
-
protected promptForLink(): void;
|
|
1052
|
+
protected syncValueFromDom(): void;
|
|
1053
|
+
protected interceptBackspaceKey(event: KeyboardEvent): void;
|
|
1054
|
+
protected interceptFormattingCommand(event: InputEvent): void;
|
|
664
1055
|
private renderExternalValue;
|
|
665
1056
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RichTextEditorComponent, never>;
|
|
666
1057
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<RichTextEditorComponent, "et-rich-text-editor", never, {}, {}, never, never, true, [{ directive: typeof RichTextEditorDirective; inputs: { "value": "value"; "disabled": "disabled"; "readonly": "readonly"; "hidden": "hidden"; "invalid": "invalid"; "errors": "errors"; "required": "required"; "name": "name"; "placeholder": "placeholder"; }; outputs: { "valueChange": "valueChange"; "touchedChange": "touchedChange"; }; }]>;
|
|
@@ -728,10 +1119,6 @@ declare class SelectionListDirective implements SelectionListDirectiveBase, Form
|
|
|
728
1119
|
}
|
|
729
1120
|
|
|
730
1121
|
declare class CheckboxGroupComponent {
|
|
731
|
-
private errorContentRef;
|
|
732
|
-
private hintContentRef;
|
|
733
|
-
private errorAnimatableRef;
|
|
734
|
-
private hintAnimatableRef;
|
|
735
1122
|
support: {
|
|
736
1123
|
errorColorTheme: _ethlete_core.ColorTheme;
|
|
737
1124
|
formFieldDir: FormFieldDirective;
|
|
@@ -749,12 +1136,17 @@ declare class CheckboxGroupComponent {
|
|
|
749
1136
|
visibleErrors: _angular_core.Signal<readonly _angular_forms_signals.ValidationError.WithOptionalFieldTree[]>;
|
|
750
1137
|
supportHeight: _angular_core.Signal<number>;
|
|
751
1138
|
};
|
|
1139
|
+
size: _angular_core.InputSignal<FormFieldSize>;
|
|
1140
|
+
private errorContentRef;
|
|
1141
|
+
private hintContentRef;
|
|
1142
|
+
private errorAnimatableRef;
|
|
1143
|
+
private hintAnimatableRef;
|
|
752
1144
|
canAnimate: {
|
|
753
1145
|
state: _angular_core.Signal<boolean>;
|
|
754
1146
|
};
|
|
755
1147
|
constructor();
|
|
756
1148
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<CheckboxGroupComponent, never>;
|
|
757
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CheckboxGroupComponent, "et-checkbox-group", never, {}, {}, never, ["*", "et-hint"], true, [{ directive: typeof FormFieldDirective; inputs: {}; outputs: {}; }, { directive: typeof SelectionListDirective; inputs: { "value": "value"; "touched": "touched"; "disabled": "disabled"; "invalid": "invalid"; "errors": "errors"; "required": "required"; "name": "name"; }; outputs: { "valueChange": "valueChange"; "touchedChange": "touchedChange"; }; }, { directive: typeof _ethlete_core.ProvideColorDirective; inputs: { "etProvideColor": "color"; }; outputs: {}; }]>;
|
|
1149
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<CheckboxGroupComponent, "et-checkbox-group", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, ["*", "et-hint"], true, [{ directive: typeof FormFieldDirective; inputs: {}; outputs: {}; }, { directive: typeof SelectionListDirective; inputs: { "value": "value"; "touched": "touched"; "disabled": "disabled"; "invalid": "invalid"; "errors": "errors"; "required": "required"; "name": "name"; }; outputs: { "valueChange": "valueChange"; "touchedChange": "touchedChange"; }; }, { directive: typeof _ethlete_core.ProvideColorDirective; inputs: { "etProvideColor": "color"; }; outputs: {}; }]>;
|
|
758
1150
|
}
|
|
759
1151
|
|
|
760
1152
|
declare class SelectionListControlDirective {
|
|
@@ -799,10 +1191,6 @@ declare class CheckboxOptionComponent {
|
|
|
799
1191
|
}
|
|
800
1192
|
|
|
801
1193
|
declare class RadioGroupComponent {
|
|
802
|
-
private errorContentRef;
|
|
803
|
-
private hintContentRef;
|
|
804
|
-
private errorAnimatableRef;
|
|
805
|
-
private hintAnimatableRef;
|
|
806
1194
|
support: {
|
|
807
1195
|
errorColorTheme: _ethlete_core.ColorTheme;
|
|
808
1196
|
formFieldDir: FormFieldDirective;
|
|
@@ -820,12 +1208,17 @@ declare class RadioGroupComponent {
|
|
|
820
1208
|
visibleErrors: _angular_core.Signal<readonly _angular_forms_signals.ValidationError.WithOptionalFieldTree[]>;
|
|
821
1209
|
supportHeight: _angular_core.Signal<number>;
|
|
822
1210
|
};
|
|
1211
|
+
size: _angular_core.InputSignal<FormFieldSize>;
|
|
1212
|
+
private errorContentRef;
|
|
1213
|
+
private hintContentRef;
|
|
1214
|
+
private errorAnimatableRef;
|
|
1215
|
+
private hintAnimatableRef;
|
|
823
1216
|
canAnimate: {
|
|
824
1217
|
state: _angular_core.Signal<boolean>;
|
|
825
1218
|
};
|
|
826
1219
|
constructor();
|
|
827
1220
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<RadioGroupComponent, never>;
|
|
828
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<RadioGroupComponent, "et-radio-group", never, {}, {}, never, ["*", "et-hint"], true, [{ directive: typeof FormFieldDirective; inputs: {}; outputs: {}; }, { directive: typeof SelectionListDirective; inputs: { "value": "value"; "touched": "touched"; "disabled": "disabled"; "invalid": "invalid"; "errors": "errors"; "required": "required"; "name": "name"; }; outputs: { "valueChange": "valueChange"; "touchedChange": "touchedChange"; }; }, { directive: typeof _ethlete_core.ProvideColorDirective; inputs: { "etProvideColor": "color"; }; outputs: {}; }]>;
|
|
1221
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<RadioGroupComponent, "et-radio-group", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, ["*", "et-hint"], true, [{ directive: typeof FormFieldDirective; inputs: {}; outputs: {}; }, { directive: typeof SelectionListDirective; inputs: { "value": "value"; "touched": "touched"; "disabled": "disabled"; "invalid": "invalid"; "errors": "errors"; "required": "required"; "name": "name"; }; outputs: { "valueChange": "valueChange"; "touchedChange": "touchedChange"; }; }, { directive: typeof _ethlete_core.ProvideColorDirective; inputs: { "etProvideColor": "color"; }; outputs: {}; }]>;
|
|
829
1222
|
}
|
|
830
1223
|
|
|
831
1224
|
declare class RadioComponent {
|
|
@@ -838,10 +1231,6 @@ declare class RadioComponent {
|
|
|
838
1231
|
}
|
|
839
1232
|
|
|
840
1233
|
declare class SegmentedButtonGroupComponent {
|
|
841
|
-
private errorContentRef;
|
|
842
|
-
private hintContentRef;
|
|
843
|
-
private errorAnimatableRef;
|
|
844
|
-
private hintAnimatableRef;
|
|
845
1234
|
support: {
|
|
846
1235
|
errorColorTheme: _ethlete_core.ColorTheme;
|
|
847
1236
|
formFieldDir: FormFieldDirective;
|
|
@@ -859,19 +1248,29 @@ declare class SegmentedButtonGroupComponent {
|
|
|
859
1248
|
visibleErrors: _angular_core.Signal<readonly _angular_forms_signals.ValidationError.WithOptionalFieldTree[]>;
|
|
860
1249
|
supportHeight: _angular_core.Signal<number>;
|
|
861
1250
|
};
|
|
1251
|
+
size: _angular_core.InputSignal<FormFieldSize>;
|
|
1252
|
+
private errorContentRef;
|
|
1253
|
+
private hintContentRef;
|
|
1254
|
+
private errorAnimatableRef;
|
|
1255
|
+
private hintAnimatableRef;
|
|
1256
|
+
/** @internal The active background element of the currently checked button. Used as the flip animation origin. */
|
|
1257
|
+
lastActiveBackgroundElement: _angular_core.WritableSignal<HTMLElement | null>;
|
|
862
1258
|
canAnimate: {
|
|
863
1259
|
state: _angular_core.Signal<boolean>;
|
|
864
1260
|
};
|
|
865
1261
|
constructor();
|
|
866
1262
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SegmentedButtonGroupComponent, never>;
|
|
867
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SegmentedButtonGroupComponent, "et-segmented-button-group", never, {}, {}, never, ["*", "et-hint"], true, [{ directive: typeof FormFieldDirective; inputs: {}; outputs: {}; }, { directive: typeof SelectionListDirective; inputs: { "value": "value"; "touched": "touched"; "disabled": "disabled"; "invalid": "invalid"; "errors": "errors"; "required": "required"; "name": "name"; }; outputs: { "valueChange": "valueChange"; "touchedChange": "touchedChange"; }; }, { directive: typeof _ethlete_core.ProvideColorDirective; inputs: { "etProvideColor": "color"; }; outputs: {}; }]>;
|
|
1263
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SegmentedButtonGroupComponent, "et-segmented-button-group", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, ["et-label", ".et-segmented-button-group-label", "*", "et-hint"], true, [{ directive: typeof FormFieldDirective; inputs: {}; outputs: {}; }, { directive: typeof SelectionListDirective; inputs: { "value": "value"; "touched": "touched"; "disabled": "disabled"; "invalid": "invalid"; "errors": "errors"; "required": "required"; "name": "name"; }; outputs: { "valueChange": "valueChange"; "touchedChange": "touchedChange"; }; }, { directive: typeof _ethlete_core.ProvideColorDirective; inputs: { "etProvideColor": "color"; }; outputs: {}; }]>;
|
|
868
1264
|
}
|
|
869
1265
|
|
|
870
1266
|
declare class SegmentedButtonComponent {
|
|
871
1267
|
optionDirective: SelectionOptionDirective;
|
|
1268
|
+
private group;
|
|
1269
|
+
private backgroundRef;
|
|
872
1270
|
canAnimate: {
|
|
873
1271
|
state: _angular_core.Signal<boolean>;
|
|
874
1272
|
};
|
|
1273
|
+
constructor();
|
|
875
1274
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SegmentedButtonComponent, never>;
|
|
876
1275
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SegmentedButtonComponent, "et-segmented-button", never, {}, {}, never, ["*"], true, [{ directive: typeof SelectionOptionDirective; inputs: { "value": "value"; "checked": "checked"; "disabled": "disabled"; }; outputs: { "checkedChange": "checkedChange"; }; }, { directive: typeof _ethlete_core.ColorInteractiveDirective; inputs: {}; outputs: {}; }]>;
|
|
877
1276
|
}
|
|
@@ -942,6 +1341,14 @@ type GridLayoutEntry = {
|
|
|
942
1341
|
id: string;
|
|
943
1342
|
position: GridItemPosition;
|
|
944
1343
|
};
|
|
1344
|
+
/**
|
|
1345
|
+
* Contract for a grid item's `actionsComponent`: a component that receives the item's `itemId` and
|
|
1346
|
+
* `data` as inputs. Both are always provided by the grid.
|
|
1347
|
+
*/
|
|
1348
|
+
type GridItemActionsComponent<TData = unknown> = Type<{
|
|
1349
|
+
itemId: InputSignal<string>;
|
|
1350
|
+
data: InputSignal<TData>;
|
|
1351
|
+
}>;
|
|
945
1352
|
type GridComponentRegistration<TData = unknown> = {
|
|
946
1353
|
component: Type<{
|
|
947
1354
|
data: InputSignal<TData>;
|
|
@@ -979,13 +1386,16 @@ type GridDragState = {
|
|
|
979
1386
|
};
|
|
980
1387
|
declare class GridDirective {
|
|
981
1388
|
private injector;
|
|
1389
|
+
private destroyRef;
|
|
1390
|
+
elementRef: ElementRef<HTMLElement>;
|
|
1391
|
+
private gridConfig;
|
|
1392
|
+
private reducedMotion;
|
|
982
1393
|
breakpoints: _angular_core.InputSignal<GridBreakpointConfig[]>;
|
|
983
1394
|
rowHeight: _angular_core.InputSignal<number>;
|
|
984
1395
|
gap: _angular_core.InputSignal<number>;
|
|
985
1396
|
initialItems: _angular_core.InputSignal<GridItemConfig[]>;
|
|
986
1397
|
readOnly: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
987
1398
|
layoutChange: _angular_core.OutputEmitterRef<GridSerializedState>;
|
|
988
|
-
private gridConfig;
|
|
989
1399
|
registrations: _angular_core.Signal<GridComponentRegistration[]>;
|
|
990
1400
|
private dimensions;
|
|
991
1401
|
private itemConfigs;
|
|
@@ -993,40 +1403,55 @@ declare class GridDirective {
|
|
|
993
1403
|
dragState: _angular_core.WritableSignal<GridDragState | null>;
|
|
994
1404
|
private constraintsRegistry;
|
|
995
1405
|
private resizeBaseLayout;
|
|
996
|
-
private
|
|
997
|
-
private
|
|
998
|
-
|
|
1406
|
+
private pendingResize;
|
|
1407
|
+
private lastResizeTarget;
|
|
1408
|
+
leavingIds: _angular_core.WritableSignal<ReadonlySet<string>>;
|
|
1409
|
+
isResizeActive: _angular_core.WritableSignal<boolean>;
|
|
1410
|
+
private animationsReady;
|
|
1411
|
+
private isContainerResizing;
|
|
999
1412
|
containerWidth: _angular_core.Signal<number>;
|
|
1413
|
+
isReady: _angular_core.Signal<boolean>;
|
|
1414
|
+
animationsEnabled: _angular_core.Signal<boolean>;
|
|
1000
1415
|
activeBreakpoint: _angular_core.Signal<string>;
|
|
1001
1416
|
activeColumns: _angular_core.Signal<number>;
|
|
1417
|
+
private paddings;
|
|
1418
|
+
geometry: _angular_core.Signal<_ethlete_components.GridGeometry>;
|
|
1002
1419
|
items: _angular_core.Signal<GridItemConfig[]>;
|
|
1003
1420
|
baseLayout: _angular_core.Signal<GridLayoutEntry[]>;
|
|
1004
1421
|
layout: _angular_core.Signal<GridLayoutEntry[]>;
|
|
1422
|
+
containerHeightPx: _angular_core.Signal<number>;
|
|
1423
|
+
protected hostHeight: _angular_core.Signal<number | null>;
|
|
1424
|
+
protected containerTransition: _angular_core.Signal<"none" | "height var(--et-grid-anim-duration, 250ms) cubic-bezier(0.2, 0, 0, 1)">;
|
|
1005
1425
|
ghostPosition: _angular_core.Signal<GridItemPosition | null>;
|
|
1006
1426
|
constructor();
|
|
1427
|
+
getContainerOrigin(): {
|
|
1428
|
+
left: number;
|
|
1429
|
+
top: number;
|
|
1430
|
+
};
|
|
1007
1431
|
registerConstraints(id: string, constraints: GridItemConstraints): void;
|
|
1008
|
-
|
|
1009
|
-
el: HTMLElement;
|
|
1010
|
-
constraints: GridItemConstraints;
|
|
1011
|
-
}): void;
|
|
1012
|
-
unregisterItem(id: string): void;
|
|
1013
|
-
setGhostElement(el: HTMLElement | null): void;
|
|
1432
|
+
unregisterConstraints(id: string): void;
|
|
1014
1433
|
getConstraints(id: string): GridItemConstraints;
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1434
|
+
beginDrag(itemId: string): GridItemPosition | null;
|
|
1435
|
+
updateDragTarget(cell: {
|
|
1436
|
+
col: number;
|
|
1437
|
+
row: number;
|
|
1019
1438
|
}): void;
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1439
|
+
commitDrag(): GridItemPosition | null;
|
|
1440
|
+
cancelDrag(): void;
|
|
1441
|
+
beginResize(itemId: string): GridItemPosition | null;
|
|
1442
|
+
updateResize(itemId: string, target: GridItemPosition): void;
|
|
1443
|
+
commitResize(): GridItemPosition | null;
|
|
1444
|
+
cancelResize(): void;
|
|
1445
|
+
/** One-shot resize (keyboard / programmatic): begin + update + commit in a single call. */
|
|
1446
|
+
resizeItem(options: ResizeItemOptions): void;
|
|
1023
1447
|
addItem(type: string, data: unknown): void;
|
|
1024
1448
|
removeItem(id: string): void;
|
|
1025
1449
|
moveItem(id: string, newPosition: GridItemPosition): void;
|
|
1026
|
-
resizeItem(options: ResizeItemOptions): void;
|
|
1027
|
-
commitResize(): void;
|
|
1028
1450
|
getSerializedState(): GridSerializedState;
|
|
1029
1451
|
restoreState(state: GridSerializedState): void;
|
|
1452
|
+
/** Dev-mode-only: rejects consumer-provided item configs whose ids are not unique. */
|
|
1453
|
+
private assertValidItemConfigs;
|
|
1454
|
+
private finalizeRemove;
|
|
1030
1455
|
private placeItem;
|
|
1031
1456
|
private shrinkNeighbors;
|
|
1032
1457
|
/** Compact all visited breakpoints (layoutOverrides entries) after an item is removed. */
|
|
@@ -1038,42 +1463,295 @@ declare class GridDirective {
|
|
|
1038
1463
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<GridDirective, "[etGrid]", ["etGrid"], { "breakpoints": { "alias": "breakpoints"; "required": false; "isSignal": true; }; "rowHeight": { "alias": "rowHeight"; "required": false; "isSignal": true; }; "gap": { "alias": "gap"; "required": false; "isSignal": true; }; "initialItems": { "alias": "initialItems"; "required": false; "isSignal": true; }; "readOnly": { "alias": "readOnly"; "required": false; "isSignal": true; }; }, { "layoutChange": "layoutChange"; }, never, never, true, never>;
|
|
1039
1464
|
}
|
|
1040
1465
|
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1466
|
+
type AutoScrollPointer = {
|
|
1467
|
+
clientX: number;
|
|
1468
|
+
clientY: number;
|
|
1469
|
+
};
|
|
1470
|
+
type AutoScroller = {
|
|
1471
|
+
/** Begin the edge-proximity loop. No-op if already running. */
|
|
1472
|
+
start: (pointer: AutoScrollPointer) => void;
|
|
1473
|
+
/** Feed the latest pointer position. */
|
|
1474
|
+
update: (pointer: AutoScrollPointer) => void;
|
|
1475
|
+
stop: () => void;
|
|
1476
|
+
};
|
|
1477
|
+
declare const findScrollableAncestor: (start: Element | null) => HTMLElement | null;
|
|
1478
|
+
declare const createAutoScroller: (options: {
|
|
1479
|
+
document: Document;
|
|
1480
|
+
getScrollElement: () => HTMLElement | null;
|
|
1481
|
+
threshold?: number;
|
|
1482
|
+
maxSpeed?: number;
|
|
1483
|
+
}) => AutoScroller;
|
|
1484
|
+
|
|
1485
|
+
/** A rectangle in container-relative pixels (x/y measured from the container's padding box). */
|
|
1486
|
+
type PixelRect = {
|
|
1487
|
+
x: number;
|
|
1488
|
+
y: number;
|
|
1489
|
+
width: number;
|
|
1490
|
+
height: number;
|
|
1491
|
+
};
|
|
1492
|
+
type GridGeometry = {
|
|
1493
|
+
/** Width available for columns (container client width minus horizontal padding). */
|
|
1494
|
+
contentWidth: number;
|
|
1495
|
+
columns: number;
|
|
1496
|
+
gap: number;
|
|
1497
|
+
rowHeight: number;
|
|
1498
|
+
cellWidth: number;
|
|
1499
|
+
/** Horizontal distance between the left edges of two adjacent columns. */
|
|
1500
|
+
strideX: number;
|
|
1501
|
+
/** Vertical distance between the top edges of two adjacent rows. */
|
|
1502
|
+
strideY: number;
|
|
1503
|
+
/** Container padding-left - the x of column 0. */
|
|
1504
|
+
originX: number;
|
|
1505
|
+
/** Container padding-top - the y of row 0. */
|
|
1506
|
+
originY: number;
|
|
1507
|
+
};
|
|
1508
|
+
/**
|
|
1509
|
+
* Effective span bounds for a resize gesture. Grid bounds and item constraints are
|
|
1510
|
+
* unified in span units per edge, so the clamped pixel rect and the snapped span
|
|
1511
|
+
* are always derived from the same limits and can never disagree.
|
|
1512
|
+
*/
|
|
1513
|
+
type ResizeSpanBounds = {
|
|
1514
|
+
minColSpan: number;
|
|
1515
|
+
maxColSpan: number;
|
|
1516
|
+
minRowSpan: number;
|
|
1517
|
+
maxRowSpan: number;
|
|
1518
|
+
};
|
|
1519
|
+
declare const computeGeometry: (options: {
|
|
1520
|
+
contentWidth: number;
|
|
1521
|
+
columns: number;
|
|
1522
|
+
gap: number;
|
|
1523
|
+
rowHeight: number;
|
|
1524
|
+
originX?: number;
|
|
1525
|
+
originY?: number;
|
|
1526
|
+
}) => GridGeometry;
|
|
1527
|
+
declare const spanWidth: (span: number, geometry: GridGeometry) => number;
|
|
1528
|
+
declare const spanHeight: (span: number, geometry: GridGeometry) => number;
|
|
1529
|
+
declare const positionToPixelRect: (position: GridItemPosition, geometry: GridGeometry) => PixelRect;
|
|
1530
|
+
/** Pixel height of the given number of rows (content only, no container padding). */
|
|
1531
|
+
declare const rowsToPixelHeight: (rows: number, geometry: GridGeometry) => number;
|
|
1532
|
+
declare const pixelRectsEqual: (a: PixelRect | null, b: PixelRect | null) => boolean;
|
|
1533
|
+
declare const positionsEqual: (a: GridItemPosition | null, b: GridItemPosition | null) => boolean;
|
|
1534
|
+
declare const SNAP_HYSTERESIS = 0.1;
|
|
1535
|
+
/**
|
|
1536
|
+
* Rounds a raw cell-unit value to the nearest integer with a hysteresis margin
|
|
1537
|
+
* relative to the last snapped value: the rounding boundary is shifted by
|
|
1538
|
+
* SNAP_HYSTERESIS against the direction of travel, so a pointer jittering exactly
|
|
1539
|
+
* on a cell midpoint cannot flap the snap back and forth (each flap would
|
|
1540
|
+
* re-trigger a full neighbour reflow).
|
|
1541
|
+
*/
|
|
1542
|
+
declare const hysteresisRound: (raw: number, last: number | null) => number;
|
|
1543
|
+
declare const resizeSpanBounds: (options: {
|
|
1544
|
+
edge: ResizeEdge;
|
|
1545
|
+
start: GridItemPosition;
|
|
1546
|
+
constraints: GridItemConstraints;
|
|
1547
|
+
columns: number;
|
|
1548
|
+
}) => ResizeSpanBounds;
|
|
1549
|
+
declare const clampResizeRect: (options: {
|
|
1550
|
+
edge: ResizeEdge;
|
|
1551
|
+
dx: number;
|
|
1552
|
+
dy: number;
|
|
1553
|
+
startRect: PixelRect;
|
|
1554
|
+
bounds: ResizeSpanBounds;
|
|
1555
|
+
geometry: GridGeometry;
|
|
1556
|
+
}) => PixelRect;
|
|
1557
|
+
declare const snapResizeSpan: (options: {
|
|
1558
|
+
edge: ResizeEdge;
|
|
1559
|
+
rect: PixelRect;
|
|
1560
|
+
start: GridItemPosition;
|
|
1561
|
+
bounds: ResizeSpanBounds;
|
|
1562
|
+
geometry: GridGeometry;
|
|
1563
|
+
lastSnap: GridItemPosition | null;
|
|
1564
|
+
}) => GridItemPosition;
|
|
1565
|
+
declare const projectDragCell: (options: {
|
|
1566
|
+
float: {
|
|
1567
|
+
x: number;
|
|
1568
|
+
y: number;
|
|
1569
|
+
};
|
|
1570
|
+
colSpan: number;
|
|
1571
|
+
geometry: GridGeometry;
|
|
1572
|
+
lastTarget: {
|
|
1573
|
+
col: number;
|
|
1574
|
+
row: number;
|
|
1575
|
+
} | null;
|
|
1576
|
+
}) => {
|
|
1577
|
+
col: number;
|
|
1578
|
+
row: number;
|
|
1579
|
+
};
|
|
1580
|
+
|
|
1581
|
+
type FindCollisionOptions = {
|
|
1582
|
+
entries: GridLayoutEntry[];
|
|
1583
|
+
position: GridItemPosition;
|
|
1584
|
+
excludeId?: string;
|
|
1585
|
+
};
|
|
1586
|
+
type AutoPlaceOptions = {
|
|
1587
|
+
entries: GridLayoutEntry[];
|
|
1588
|
+
colSpan: number;
|
|
1589
|
+
rowSpan: number;
|
|
1590
|
+
columns: number;
|
|
1591
|
+
};
|
|
1592
|
+
type ClampPositionOptions = {
|
|
1593
|
+
position: GridItemPosition;
|
|
1594
|
+
constraints: GridItemConstraints;
|
|
1595
|
+
columns: number;
|
|
1596
|
+
};
|
|
1597
|
+
type ResolveCollisionsOptions = {
|
|
1598
|
+
entries: GridLayoutEntry[];
|
|
1599
|
+
movedId: string;
|
|
1600
|
+
columns: number;
|
|
1601
|
+
originPosition?: GridItemPosition;
|
|
1602
|
+
rowFloors?: RowFloors;
|
|
1603
|
+
};
|
|
1604
|
+
/**
|
|
1605
|
+
* Per-item lower bound (in rows) for the upward compaction pass. An item with a
|
|
1606
|
+
* floor is never pulled above it — used during live resize gestures to keep
|
|
1607
|
+
* unrelated items from collapsing into freshly vacated space while the pointer
|
|
1608
|
+
* is still down. Items without an entry compact all the way up (floor 0).
|
|
1609
|
+
*/
|
|
1610
|
+
type RowFloors = ReadonlyMap<string, number>;
|
|
1611
|
+
type CompactLayoutOptions = {
|
|
1612
|
+
entries: GridLayoutEntry[];
|
|
1613
|
+
columns: number;
|
|
1614
|
+
rowFloors?: RowFloors;
|
|
1615
|
+
};
|
|
1616
|
+
/**
|
|
1617
|
+
* Checks whether two grid items overlap.
|
|
1618
|
+
*/
|
|
1619
|
+
declare const itemsCollide: (a: GridItemPosition, b: GridItemPosition) => boolean;
|
|
1620
|
+
/**
|
|
1621
|
+
* Returns the first item that collides with the given position, or undefined if none.
|
|
1622
|
+
*/
|
|
1623
|
+
declare const findCollision: (options: FindCollisionOptions) => GridLayoutEntry | undefined;
|
|
1624
|
+
/**
|
|
1625
|
+
* Compacts the layout vertically (moves items up as far as possible without collision).
|
|
1626
|
+
*
|
|
1627
|
+
* Also acts as a self-healing normaliser: positions that overflow the grid horizontally
|
|
1628
|
+
* (e.g. stale data from a wider breakpoint clamped into a narrower one — a colSpan of 12
|
|
1629
|
+
* or a col of 8 in a 6-column grid) are first clamped back into bounds, then any items
|
|
1630
|
+
* left overlapping are pushed down before the upward compaction runs. This guarantees the
|
|
1631
|
+
* returned layout is always in-bounds and overlap-free regardless of the input — clamping
|
|
1632
|
+
* a column alone is not enough, because it can drop an item on top of an existing one.
|
|
1633
|
+
*/
|
|
1634
|
+
declare const compactLayout: (options: CompactLayoutOptions) => GridLayoutEntry[];
|
|
1635
|
+
/**
|
|
1636
|
+
* Finds the first available position for an item with the given span in a grid.
|
|
1637
|
+
* Uses top-left gravity: scans row by row, column by column.
|
|
1638
|
+
*/
|
|
1639
|
+
declare const autoPlace: (options: AutoPlaceOptions) => GridItemPosition;
|
|
1640
|
+
/**
|
|
1641
|
+
* Validates and clamps a position to respect grid boundaries and item constraints.
|
|
1642
|
+
*/
|
|
1643
|
+
declare const clampPosition: (options: ClampPositionOptions) => {
|
|
1644
|
+
col: number;
|
|
1645
|
+
row: number;
|
|
1646
|
+
colSpan: number;
|
|
1647
|
+
rowSpan: number;
|
|
1648
|
+
};
|
|
1649
|
+
/**
|
|
1650
|
+
* Resolves collisions by pushing items down when a moved/resized item overlaps others.
|
|
1651
|
+
* If exactly one item of the same size collides, they swap positions instead.
|
|
1652
|
+
* Cascades: if pushed items collide with others, those are pushed down too.
|
|
1653
|
+
*/
|
|
1654
|
+
declare const resolveCollisions: (options: ResolveCollisionsOptions) => GridLayoutEntry[];
|
|
1655
|
+
/**
|
|
1656
|
+
* Computes the total number of rows occupied by the layout.
|
|
1657
|
+
*/
|
|
1658
|
+
declare const computeGridHeight: (entries: GridLayoutEntry[]) => number;
|
|
1659
|
+
|
|
1660
|
+
type MapLayoutOptions = {
|
|
1661
|
+
entries: GridLayoutEntry[];
|
|
1662
|
+
fromColumns: number;
|
|
1663
|
+
toColumns: number;
|
|
1664
|
+
};
|
|
1665
|
+
/**
|
|
1666
|
+
* Resolves the active breakpoint name based on the container width.
|
|
1667
|
+
* Breakpoints are sorted by minWidth descending — the first one whose minWidth is <= containerWidth wins.
|
|
1668
|
+
*/
|
|
1669
|
+
declare const resolveBreakpoint: (breakpoints: GridBreakpointConfig[], containerWidth: number) => GridBreakpointName;
|
|
1670
|
+
/**
|
|
1671
|
+
* Auto-generates a layout for a smaller breakpoint from a larger one.
|
|
1672
|
+
* Items are re-flowed into fewer columns, maintaining their relative order.
|
|
1673
|
+
*/
|
|
1674
|
+
declare const mapLayoutToBreakpoint: (options: MapLayoutOptions) => GridLayoutEntry[];
|
|
1675
|
+
declare const DEFAULT_BREAKPOINTS: GridBreakpointConfig[];
|
|
1676
|
+
|
|
1677
|
+
type SerializeOptions = {
|
|
1678
|
+
items: GridItemConfig[];
|
|
1679
|
+
breakpoints: GridBreakpointConfig[];
|
|
1680
|
+
rowHeight: number;
|
|
1681
|
+
};
|
|
1682
|
+
/**
|
|
1683
|
+
* Serializes the current grid state into a JSON-compatible object suitable for DB storage.
|
|
1684
|
+
*/
|
|
1685
|
+
declare const serializeGridLayout: (options: SerializeOptions) => GridSerializedState;
|
|
1686
|
+
/**
|
|
1687
|
+
* Deserializes a stored grid state back into working configuration.
|
|
1688
|
+
* Returns breakpoint configs and item configs.
|
|
1689
|
+
*/
|
|
1690
|
+
declare const deserializeGridLayout: (state: GridSerializedState, breakpointMinWidths: Record<string, number>) => {
|
|
1691
|
+
breakpoints: GridBreakpointConfig[];
|
|
1692
|
+
items: GridItemConfig[];
|
|
1693
|
+
rowHeight: number;
|
|
1694
|
+
};
|
|
1695
|
+
|
|
1696
|
+
declare class GridItemDirective {
|
|
1697
|
+
private grid;
|
|
1698
|
+
private injector;
|
|
1699
|
+
private destroyRef;
|
|
1700
|
+
hostElement: ElementRef<HTMLElement>;
|
|
1701
|
+
itemId: _angular_core.InputSignal<string>;
|
|
1702
|
+
minColSpan: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
1703
|
+
maxColSpan: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
1704
|
+
minRowSpan: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
1705
|
+
maxRowSpan: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
1706
|
+
isBeingDragged: _angular_core.Signal<boolean>;
|
|
1707
|
+
currentPosition: _angular_core.Signal<_ethlete_components.GridItemPosition | null>;
|
|
1708
|
+
/** The layout-derived target rect in container-relative pixels. */
|
|
1709
|
+
slotRect: _angular_core.Signal<PixelRect | null>;
|
|
1710
|
+
private renderModeSignal;
|
|
1711
|
+
private liveRect;
|
|
1712
|
+
private isSettlingSignal;
|
|
1713
|
+
private enteringSignal;
|
|
1714
|
+
renderMode: _angular_core.Signal<"layout" | "direct">;
|
|
1715
|
+
isSettling: _angular_core.Signal<boolean>;
|
|
1716
|
+
protected entering: _angular_core.Signal<boolean>;
|
|
1717
|
+
protected leaving: _angular_core.Signal<boolean>;
|
|
1718
|
+
/** The rect currently bound to the host: pointer-driven while direct-controlled, the slot otherwise. */
|
|
1719
|
+
renderedRect: _angular_core.Signal<PixelRect | null>;
|
|
1720
|
+
protected translateStyle: _angular_core.Signal<string | null>;
|
|
1721
|
+
protected transitionStyle: _angular_core.Signal<"none" | "translate var(--et-grid-anim-duration, 250ms) cubic-bezier(0.2, 0, 0, 1), width var(--et-grid-anim-duration, 250ms) cubic-bezier(0.2, 0, 0, 1), height var(--et-grid-anim-duration, 250ms) cubic-bezier(0.2, 0, 0, 1), scale 200ms cubic-bezier(0.2, 0, 0, 1), opacity 200ms cubic-bezier(0.2, 0, 0, 1)">;
|
|
1722
|
+
private settleListener;
|
|
1723
|
+
constructor();
|
|
1724
|
+
startDirectControl(): void;
|
|
1725
|
+
updateDirectRect(rect: PixelRect): void;
|
|
1726
|
+
stopDirectControl(): void;
|
|
1727
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<GridItemDirective, never>;
|
|
1728
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<GridItemDirective, "[etGridItem]", ["etGridItem"], { "itemId": { "alias": "itemId"; "required": true; "isSignal": true; }; "minColSpan": { "alias": "minColSpan"; "required": false; "isSignal": true; }; "maxColSpan": { "alias": "maxColSpan"; "required": false; "isSignal": true; }; "minRowSpan": { "alias": "minRowSpan"; "required": false; "isSignal": true; }; "maxRowSpan": { "alias": "maxRowSpan"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1062
1729
|
}
|
|
1063
1730
|
|
|
1064
1731
|
declare class GridDragDirective {
|
|
1065
|
-
protected grid: _ethlete_components.GridDirective;
|
|
1732
|
+
protected grid: _ethlete_components.GridDirective | null;
|
|
1066
1733
|
private gridItem;
|
|
1067
|
-
private injector;
|
|
1068
1734
|
private elementRef;
|
|
1735
|
+
private destroyRef;
|
|
1736
|
+
private document;
|
|
1069
1737
|
dragHandle: DragHandleDirective;
|
|
1070
|
-
private
|
|
1071
|
-
private
|
|
1072
|
-
private
|
|
1073
|
-
|
|
1738
|
+
private origin;
|
|
1739
|
+
private startBreakpoint;
|
|
1740
|
+
private grabOffset;
|
|
1741
|
+
private containerOrigin;
|
|
1742
|
+
private lastPointer;
|
|
1743
|
+
private lastTarget;
|
|
1744
|
+
private gestureListeners;
|
|
1745
|
+
private autoScroller;
|
|
1074
1746
|
constructor();
|
|
1075
|
-
private
|
|
1076
|
-
private
|
|
1747
|
+
private startDrag;
|
|
1748
|
+
private trackDragMove;
|
|
1749
|
+
private applyPointer;
|
|
1750
|
+
private settleDrag;
|
|
1751
|
+
private cancelDrag;
|
|
1752
|
+
private finishGesture;
|
|
1753
|
+
private attachGestureListeners;
|
|
1754
|
+
private detachGestureListeners;
|
|
1077
1755
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<GridDragDirective, never>;
|
|
1078
1756
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<GridDragDirective, "[etGridDrag]", never, {}, {}, never, never, true, [{ directive: typeof _ethlete_core.DragHandleDirective; inputs: {}; outputs: { "dragStarted": "dragStarted"; "dragMoved": "dragMoved"; "dragEnded": "dragEnded"; }; }]>;
|
|
1079
1757
|
}
|
|
@@ -1081,12 +1759,27 @@ declare class GridDragDirective {
|
|
|
1081
1759
|
declare class GridResizeDirective {
|
|
1082
1760
|
private grid;
|
|
1083
1761
|
private gridItem;
|
|
1762
|
+
private destroyRef;
|
|
1763
|
+
private document;
|
|
1084
1764
|
isResizing: _angular_core.WritableSignal<boolean>;
|
|
1085
1765
|
resizeEdges: _angular_core.Signal<ResizeEdge[]>;
|
|
1086
|
-
private
|
|
1766
|
+
private start;
|
|
1767
|
+
private startBreakpoint;
|
|
1768
|
+
private lastSnap;
|
|
1769
|
+
private lastEvent;
|
|
1770
|
+
private startContainerOrigin;
|
|
1771
|
+
private containerOrigin;
|
|
1772
|
+
private gestureListeners;
|
|
1773
|
+
private autoScroller;
|
|
1774
|
+
constructor();
|
|
1087
1775
|
beginResize(): void;
|
|
1088
1776
|
updateResize(event: ResizeMoveEvent): void;
|
|
1089
1777
|
finishResize(): void;
|
|
1778
|
+
cancelResize(): void;
|
|
1779
|
+
private applyResize;
|
|
1780
|
+
private finishGesture;
|
|
1781
|
+
private attachGestureListeners;
|
|
1782
|
+
private detachGestureListeners;
|
|
1090
1783
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<GridResizeDirective, never>;
|
|
1091
1784
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<GridResizeDirective, "[etGridResize]", never, {}, {}, never, never, true, never>;
|
|
1092
1785
|
}
|
|
@@ -1097,12 +1790,9 @@ type GridConfig = {
|
|
|
1097
1790
|
registrations: GridComponentRegistration[];
|
|
1098
1791
|
interactiveAriaLabel: string;
|
|
1099
1792
|
readonlyAriaLabel: string;
|
|
1100
|
-
|
|
1793
|
+
removeActionAriaLabel: string;
|
|
1101
1794
|
transformer: (text: string, locale: string) => string;
|
|
1102
|
-
|
|
1103
|
-
dragHandleComponent?: Type<unknown>;
|
|
1104
|
-
/** Replaces the default ✕ button for all registered items. Receives `data` and `itemId` as inputs. */
|
|
1105
|
-
actionsComponent?: Type<unknown>;
|
|
1795
|
+
actionsComponent?: GridItemActionsComponent | null;
|
|
1106
1796
|
};
|
|
1107
1797
|
declare const provideGridConfig: (valueOverride?: Partial<GridConfig> | undefined) => _angular_core.Provider[];
|
|
1108
1798
|
declare const injectGridConfig: {
|
|
@@ -1135,20 +1825,16 @@ declare const fromGridPosition: (pos: GridItemPosition) => {
|
|
|
1135
1825
|
|
|
1136
1826
|
declare class GridComponent {
|
|
1137
1827
|
grid: GridDirective;
|
|
1138
|
-
private ghostRef;
|
|
1139
1828
|
private gridConfig;
|
|
1140
1829
|
private locale;
|
|
1141
|
-
protected
|
|
1142
|
-
protected dragHandleComponent: _angular_core.Signal<_angular_core.Type<unknown> | undefined>;
|
|
1143
|
-
protected actionsComponent: _angular_core.Signal<_angular_core.Type<unknown> | undefined>;
|
|
1830
|
+
protected actionsComponent: _angular_core.Signal<_ethlete_components.GridItemActionsComponent | null>;
|
|
1144
1831
|
protected registeredItems: _angular_core.Signal<{
|
|
1145
1832
|
item: _ethlete_components.GridItemConfig;
|
|
1146
1833
|
reg: _ethlete_components.GridComponentRegistration;
|
|
1147
1834
|
}[]>;
|
|
1148
1835
|
protected ariaLabel: _angular_core.Signal<string>;
|
|
1149
|
-
protected
|
|
1150
|
-
protected
|
|
1151
|
-
protected gridRowHeight: _angular_core.Signal<string>;
|
|
1836
|
+
protected ghostRect: _angular_core.Signal<_ethlete_components.PixelRect | null>;
|
|
1837
|
+
protected ghostTransition: _angular_core.Signal<"none" | "translate 200ms cubic-bezier(0.2, 0, 0, 1), width 200ms cubic-bezier(0.2, 0, 0, 1), height 200ms cubic-bezier(0.2, 0, 0, 1)">;
|
|
1152
1838
|
constructor();
|
|
1153
1839
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<GridComponent, never>;
|
|
1154
1840
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<GridComponent, "et-grid, [et-grid]", never, {}, {}, never, ["*"], true, [{ directive: typeof GridDirective; inputs: { "breakpoints": "breakpoints"; "rowHeight": "rowHeight"; "gap": "gap"; "initialItems": "initialItems"; "readOnly": "readOnly"; }; outputs: { "layoutChange": "layoutChange"; }; }]>;
|
|
@@ -1161,18 +1847,33 @@ declare class GridItemComponent {
|
|
|
1161
1847
|
private parentSurfaceProvider;
|
|
1162
1848
|
gridDrag: GridDragDirective;
|
|
1163
1849
|
gridResize: GridResizeDirective;
|
|
1850
|
+
private surfaceThemes;
|
|
1164
1851
|
ariaLabel: _angular_core.InputSignal<string>;
|
|
1165
1852
|
removed: _angular_core.OutputEmitterRef<void>;
|
|
1166
|
-
private surfaceThemes;
|
|
1167
|
-
private gridConfig;
|
|
1168
|
-
private locale;
|
|
1169
1853
|
protected isReadOnly: _angular_core.Signal<boolean>;
|
|
1170
|
-
protected dragHandleAriaLabel: _angular_core.Signal<string>;
|
|
1171
1854
|
private resolvedSurface;
|
|
1172
1855
|
constructor();
|
|
1856
|
+
protected blockPointerDownWhenReadOnly(event: PointerEvent): void;
|
|
1173
1857
|
applyKeyboardShortcut(event: KeyboardEvent): void;
|
|
1174
1858
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<GridItemComponent, never>;
|
|
1175
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<GridItemComponent, "et-grid-item, [et-grid-item]", never, { "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "removed": "removed"; }, never, ["
|
|
1859
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<GridItemComponent, "et-grid-item, [et-grid-item]", never, { "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, { "removed": "removed"; }, never, ["*", "[etGridItemAction]"], true, [{ directive: typeof GridItemDirective; inputs: { "itemId": "itemId"; "minColSpan": "minColSpan"; "maxColSpan": "maxColSpan"; "minRowSpan": "minRowSpan"; "maxRowSpan": "maxRowSpan"; }; outputs: {}; }, { directive: typeof GridDragDirective; inputs: {}; outputs: {}; }, { directive: typeof GridResizeDirective; inputs: {}; outputs: {}; }, { directive: typeof _ethlete_core.ProvideSurfaceDirective; inputs: {}; outputs: {}; }]>;
|
|
1860
|
+
}
|
|
1861
|
+
|
|
1862
|
+
declare class GridItemToolbarComponent {
|
|
1863
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<GridItemToolbarComponent, never>;
|
|
1864
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<GridItemToolbarComponent, "et-grid-item-toolbar, [et-grid-item-toolbar]", never, {}, {}, never, ["*"], true, never>;
|
|
1865
|
+
}
|
|
1866
|
+
|
|
1867
|
+
declare class GridItemDefaultActionsComponent {
|
|
1868
|
+
private grid;
|
|
1869
|
+
private gridConfig;
|
|
1870
|
+
private locale;
|
|
1871
|
+
itemId: _angular_core.InputSignal<string>;
|
|
1872
|
+
data: _angular_core.InputSignal<unknown>;
|
|
1873
|
+
protected removeAriaLabel: _angular_core.Signal<string>;
|
|
1874
|
+
protected remove(): void;
|
|
1875
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<GridItemDefaultActionsComponent, never>;
|
|
1876
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<GridItemDefaultActionsComponent, "et-grid-item-default-actions", never, { "itemId": { "alias": "itemId"; "required": true; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1176
1877
|
}
|
|
1177
1878
|
|
|
1178
1879
|
/**
|
|
@@ -1223,14 +1924,52 @@ declare const GRID_ERROR_CODES: {
|
|
|
1223
1924
|
readonly MISSING_GRID_ITEM: 1901;
|
|
1224
1925
|
readonly DUPLICATE_ITEM_ID: 1902;
|
|
1225
1926
|
readonly INVALID_LAYOUT_STATE: 1903;
|
|
1927
|
+
readonly UNKNOWN_ITEM_TYPE: 1904;
|
|
1226
1928
|
};
|
|
1227
1929
|
|
|
1228
|
-
declare const GridImports: readonly [typeof GridComponent, typeof GridItemComponent, typeof GridDebugComponent];
|
|
1930
|
+
declare const GridImports: readonly [typeof GridComponent, typeof GridItemComponent, typeof GridItemToolbarComponent, typeof GridItemDefaultActionsComponent, typeof GridDebugComponent];
|
|
1229
1931
|
|
|
1230
1932
|
type IconDefinition = {
|
|
1231
1933
|
name: string;
|
|
1934
|
+
/**
|
|
1935
|
+
* Optional style variant (e.g. `'solid'`, `'light'`, `'regular'`). Lets the same icon
|
|
1936
|
+
* `name` exist in several styles without encoding the style into the name. Icons
|
|
1937
|
+
* registered without a variant are matched by their bare name.
|
|
1938
|
+
*/
|
|
1939
|
+
variant?: string;
|
|
1232
1940
|
data: string;
|
|
1233
1941
|
};
|
|
1942
|
+
/**
|
|
1943
|
+
* Augmentable registry for the literal set of icon names an app uses. Empty by default,
|
|
1944
|
+
* which keeps `etIcon` typed as plain `string`. The `@ethlete/components:icons` generator
|
|
1945
|
+
* writes an augmentation for this interface, or you can augment it manually:
|
|
1946
|
+
*
|
|
1947
|
+
* ```ts
|
|
1948
|
+
* declare module '@ethlete/components' {
|
|
1949
|
+
* interface EthleteIconNameRegistry {
|
|
1950
|
+
* name: 'shield' | 'plus';
|
|
1951
|
+
* }
|
|
1952
|
+
* }
|
|
1953
|
+
* ```
|
|
1954
|
+
*/
|
|
1955
|
+
interface EthleteIconNameRegistry {
|
|
1956
|
+
}
|
|
1957
|
+
/**
|
|
1958
|
+
* Augmentable registry for the literal set of icon variants an app uses. Empty by default,
|
|
1959
|
+
* which keeps the `variant` input typed as plain `string`. See {@link EthleteIconNameRegistry}.
|
|
1960
|
+
*/
|
|
1961
|
+
interface EthleteIconVariantRegistry {
|
|
1962
|
+
}
|
|
1963
|
+
type RegisteredIconName = EthleteIconNameRegistry extends {
|
|
1964
|
+
name: infer N extends string;
|
|
1965
|
+
} ? N : string;
|
|
1966
|
+
type RegisteredIconVariant = EthleteIconVariantRegistry extends {
|
|
1967
|
+
name: infer V extends string;
|
|
1968
|
+
} ? V : string;
|
|
1969
|
+
/** Variant the {@link IconDirective} falls back to when `etIcon` is used without an explicit `variant`. */
|
|
1970
|
+
declare const DEFAULT_ICON_VARIANT = "solid";
|
|
1971
|
+
/** Composite registry key for an icon `name` plus an optional `variant`. */
|
|
1972
|
+
declare const iconRegistryKey: (name: string, variant?: string | null) => string;
|
|
1234
1973
|
declare const ICONS_TOKEN: InjectionToken<Record<string, IconDefinition>>;
|
|
1235
1974
|
declare const provideIcons: (...icons: IconDefinition[]) => {
|
|
1236
1975
|
provide: InjectionToken<Record<string, IconDefinition>>;
|
|
@@ -1247,12 +1986,20 @@ declare const CHEVRON_ICON: IconDefinition;
|
|
|
1247
1986
|
|
|
1248
1987
|
declare const CLIPBOARD_CHECK_ICON: IconDefinition;
|
|
1249
1988
|
|
|
1989
|
+
declare const FILE_ICON: IconDefinition;
|
|
1990
|
+
|
|
1250
1991
|
declare const FLOPPY_DISK_ICON: IconDefinition;
|
|
1251
1992
|
|
|
1252
1993
|
declare const FOCUS_FRAME_ICON: IconDefinition;
|
|
1253
1994
|
|
|
1254
1995
|
declare const GRID_2X2_ICON: IconDefinition;
|
|
1255
1996
|
|
|
1997
|
+
declare const HEADING_1_ICON: IconDefinition;
|
|
1998
|
+
|
|
1999
|
+
declare const HEADING_2_ICON: IconDefinition;
|
|
2000
|
+
|
|
2001
|
+
declare const HEADING_3_ICON: IconDefinition;
|
|
2002
|
+
|
|
1256
2003
|
declare const ICON_ERROR_CODES: {
|
|
1257
2004
|
readonly NO_ICONS_PROVIDED: 1800;
|
|
1258
2005
|
readonly ICON_NOT_FOUND: 1801;
|
|
@@ -1263,78 +2010,806 @@ declare const ICON_ERROR_CODES: {
|
|
|
1263
2010
|
readonly DUPLICATE_ICON_NAME: 1806;
|
|
1264
2011
|
};
|
|
1265
2012
|
|
|
1266
|
-
declare const ICON_DIRECTIVE_TOKEN: InjectionToken<IconDirective>;
|
|
1267
|
-
declare class IconDirective {
|
|
1268
|
-
private icons;
|
|
1269
|
-
private sanitizer;
|
|
1270
|
-
iconNameToUse:
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
2013
|
+
declare const ICON_DIRECTIVE_TOKEN: InjectionToken<IconDirective>;
|
|
2014
|
+
declare class IconDirective {
|
|
2015
|
+
private icons;
|
|
2016
|
+
private sanitizer;
|
|
2017
|
+
iconNameToUse: InputSignal<RegisteredIconName>;
|
|
2018
|
+
variant: InputSignal<RegisteredIconVariant | undefined>;
|
|
2019
|
+
allowHardcodedColor: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
2020
|
+
private resolvedIcon;
|
|
2021
|
+
iconSrc: _angular_core.Signal<_angular_platform_browser.SafeHtml | null>;
|
|
2022
|
+
hostClasses: _angular_core.Signal<string>;
|
|
2023
|
+
constructor();
|
|
2024
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<IconDirective, never>;
|
|
2025
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<IconDirective, "[etIcon]", never, { "iconNameToUse": { "alias": "etIcon"; "required": true; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "allowHardcodedColor": { "alias": "allowHardcodedColor"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2026
|
+
}
|
|
2027
|
+
|
|
2028
|
+
declare const ITALIC_ICON: IconDefinition;
|
|
2029
|
+
|
|
2030
|
+
declare const LINK_ICON: IconDefinition;
|
|
2031
|
+
|
|
2032
|
+
declare const LIST_BULLETED_ICON: IconDefinition;
|
|
2033
|
+
|
|
2034
|
+
declare const LIST_NUMBERED_ICON: IconDefinition;
|
|
2035
|
+
|
|
2036
|
+
declare const LOCK_ICON: IconDefinition;
|
|
2037
|
+
|
|
2038
|
+
declare const PENCIL_ICON: IconDefinition;
|
|
2039
|
+
|
|
2040
|
+
declare const PLUS_ICON: IconDefinition;
|
|
2041
|
+
|
|
2042
|
+
declare const ROTATE_RIGHT_ICON: IconDefinition;
|
|
2043
|
+
|
|
2044
|
+
declare const STRIKETHROUGH_ICON: IconDefinition;
|
|
2045
|
+
|
|
2046
|
+
declare const TIMES_ICON: IconDefinition;
|
|
2047
|
+
|
|
2048
|
+
declare const TRIANGLE_EXCLAMATION_ICON: IconDefinition;
|
|
2049
|
+
|
|
2050
|
+
declare const UPLOAD_ICON: IconDefinition;
|
|
2051
|
+
|
|
2052
|
+
declare const ICON_IMPORTS: readonly [typeof IconDirective];
|
|
2053
|
+
|
|
2054
|
+
declare class BrandLoaderComponent {
|
|
2055
|
+
readonly PATH = "M15.905 6.21401C15.7794 6.8902 16.2818 7.51877 16.9517 7.51877H23.8598L22.9201 12.3378H15.6817C15.1048 12.3378 14.6071 12.7569 14.5001 13.3378C14.4861 13.4188 14.4768 13.4997 14.4768 13.5811C14.4768 14.2426 15.0071 14.8092 15.6817 14.8092H23.9435L22.9201 19.9997H6.79183L7.2198 17.814H7.64313C7.94085 17.814 8.20601 17.6907 8.40139 17.495C8.59212 17.2954 8.71307 17.0235 8.71307 16.7235C8.71307 16.1188 8.23858 15.6331 7.64778 15.6288H2.73534C2.14919 15.6288 1.67004 15.1426 1.67004 14.5378C1.67004 14.2383 1.791 13.9621 1.98172 13.7664C2.17711 13.5711 2.44227 13.4473 2.73534 13.4473H8.07111L8.96428 8.88115H9.39226C9.68533 8.88115 9.95049 8.75686 10.1459 8.5621C10.3366 8.3621 10.4576 8.08591 10.4576 7.78543C10.4576 7.18543 9.9784 6.69543 9.39226 6.69543H4.48447C3.89367 6.69543 3.41452 6.20448 3.41452 5.60496C3.41452 5.30448 3.53547 5.02877 3.7262 4.82829C3.92158 4.63353 4.19139 4.50924 4.48447 4.50924H10.2436C10.5366 4.50924 10.8064 4.3902 10.9972 4.1902C11.1879 3.99496 11.3089 3.72401 11.3089 3.41877C11.3089 2.81401 10.8344 2.32829 10.2436 2.32829H1.06994C0.479149 2.32829 0 1.83829 0 1.23305C0 0.933054 0.12095 0.656864 0.31168 0.461626C0.507061 0.266864 0.776873 0.142578 1.06994 0.142578H26.4369L25.4135 5.33305H16.9517C16.4446 5.33305 16.0027 5.70496 15.905 6.21401Z";
|
|
2056
|
+
readonly OUTLINE_PATH = "M1.07 0.14 L26.44 0.14 L25.41 5.33 L16.95 5.33 C16.44 5.33 16.0 5.70 15.91 6.21 C15.78 6.89 16.28 7.52 16.95 7.52 L23.86 7.52 L22.92 12.34 L15.68 12.34 C15.10 12.34 14.61 12.76 14.50 13.34 C14.49 13.42 14.48 13.50 14.48 13.58 C14.48 14.24 15.01 14.81 15.68 14.81 L23.94 14.81 L22.92 20.0 L6.79 20.0 L7.22 17.81 L7.64 17.81 C7.94 17.81 8.21 17.69 8.40 17.50 C8.59 17.30 8.71 17.02 8.71 16.72 C8.71 16.12 8.24 15.63 7.65 15.63 L2.74 15.63 C2.15 15.63 1.67 15.14 1.67 14.54 C1.67 14.24 1.79 13.96 1.98 13.77 C2.18 13.57 2.44 13.45 2.74 13.45 L8.07 13.45 L8.96 8.88 L9.39 8.88 C9.69 8.88 9.95 8.76 10.15 8.56 C10.34 8.36 10.46 8.09 10.46 7.79 C10.46 7.19 9.98 6.70 9.39 6.70 L4.48 6.70 C3.89 6.70 3.41 6.20 3.41 5.60 C3.41 5.30 3.54 5.03 3.73 4.83 C3.92 4.63 4.19 4.51 4.48 4.51 L10.24 4.51 C10.54 4.51 10.81 4.39 10.997 4.19 C11.188 3.99 11.31 3.72 11.31 3.42 C11.31 2.81 10.83 2.33 10.24 2.33 L1.07 2.33 C0.48 2.33 0 1.84 0 1.23 C0 0.93 0.12 0.66 0.31 0.46 C0.51 0.27 0.78 0.14 1.07 0.14 Z";
|
|
2057
|
+
readonly SHAPE_CLIP_ID: string;
|
|
2058
|
+
shapeClip: string;
|
|
2059
|
+
readonly FILL_CLIP_ID: string;
|
|
2060
|
+
fillClip: string;
|
|
2061
|
+
constructor();
|
|
2062
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrandLoaderComponent, never>;
|
|
2063
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<BrandLoaderComponent, "et-brand-loader", never, {}, {}, never, never, true, never>;
|
|
2064
|
+
}
|
|
2065
|
+
|
|
2066
|
+
declare class ProgressBarComponent {
|
|
2067
|
+
value: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
2068
|
+
indeterminate: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
2069
|
+
clampedValue: _angular_core.Signal<number>;
|
|
2070
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ProgressBarComponent, never>;
|
|
2071
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ProgressBarComponent, "et-progress-bar", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "indeterminate": { "alias": "indeterminate"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2072
|
+
}
|
|
2073
|
+
|
|
2074
|
+
declare class SpinnerComponent {
|
|
2075
|
+
diameter: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
2076
|
+
strokeWidth: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
2077
|
+
track: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
2078
|
+
value: _angular_core.InputSignalWithTransform<number, unknown>;
|
|
2079
|
+
determinate: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
2080
|
+
circleRadius: _angular_core.Signal<number>;
|
|
2081
|
+
normalizedStrokeWidth: _angular_core.Signal<number>;
|
|
2082
|
+
viewBox: _angular_core.Signal<string>;
|
|
2083
|
+
strokeCircumference: _angular_core.Signal<number>;
|
|
2084
|
+
circleStrokeWidth: _angular_core.Signal<number>;
|
|
2085
|
+
clampedValue: _angular_core.Signal<number>;
|
|
2086
|
+
determinateDashOffset: _angular_core.Signal<number>;
|
|
2087
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<SpinnerComponent, never>;
|
|
2088
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<SpinnerComponent, "et-spinner", never, { "diameter": { "alias": "diameter"; "required": false; "isSignal": true; }; "strokeWidth": { "alias": "strokeWidth"; "required": false; "isSignal": true; }; "track": { "alias": "track"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "determinate": { "alias": "determinate"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2089
|
+
}
|
|
2090
|
+
|
|
2091
|
+
declare class MenuContextTriggerDirective {
|
|
2092
|
+
private menu;
|
|
2093
|
+
private document;
|
|
2094
|
+
elementRef: ElementRef<HTMLElement>;
|
|
2095
|
+
private destroyRef;
|
|
2096
|
+
private repositionSubscription;
|
|
2097
|
+
constructor();
|
|
2098
|
+
isOpen(): boolean;
|
|
2099
|
+
protected handleContextMenu(event: MouseEvent): void;
|
|
2100
|
+
private attachRepositionListener;
|
|
2101
|
+
private detachRepositionListener;
|
|
2102
|
+
private isEventOnZone;
|
|
2103
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuContextTriggerDirective, never>;
|
|
2104
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<MenuContextTriggerDirective, "[etMenuContextTrigger]", ["etMenuContextTrigger"], {}, {}, never, never, true, never>;
|
|
2105
|
+
}
|
|
2106
|
+
|
|
2107
|
+
type OverlayStrategyContext = {
|
|
2108
|
+
overlayRef: OverlayRef<object, unknown>;
|
|
2109
|
+
runtimeRef: OverlayRuntimeRef<object, unknown>;
|
|
2110
|
+
/** The mounted container component's host element (the runtime pane element). */
|
|
2111
|
+
containerEl: HTMLElement;
|
|
2112
|
+
/** The runtime host element wrapping backdrop and pane. */
|
|
2113
|
+
hostEl: HTMLElement;
|
|
2114
|
+
backdropEl: HTMLElement | null;
|
|
2115
|
+
/** The container's animated lifecycle, driving enter/leave transitions. */
|
|
2116
|
+
lifecycle: AnimatedLifecycleDirective;
|
|
2117
|
+
config: OverlayBreakpointConfig;
|
|
2118
|
+
previousConfig?: OverlayBreakpointConfig;
|
|
2119
|
+
origin?: HTMLElement | Event;
|
|
2120
|
+
};
|
|
2121
|
+
type OverlayStrategy = {
|
|
2122
|
+
/** Unique identifier for the strategy */
|
|
2123
|
+
id: string;
|
|
2124
|
+
/** Configuration for the overlay when this strategy is applied */
|
|
2125
|
+
config: OverlayBreakpointConfig;
|
|
2126
|
+
/**
|
|
2127
|
+
* Called when the overlay transitions FROM another strategy TO this strategy.
|
|
2128
|
+
* Only called during breakpoint changes, not on initial open.
|
|
2129
|
+
* @example Fullscreen dialog → Regular dialog on viewport resize
|
|
2130
|
+
*/
|
|
2131
|
+
onSwitchedTo?: (context: OverlayStrategyContext) => void;
|
|
2132
|
+
/**
|
|
2133
|
+
* Called when the overlay transitions FROM this strategy TO another strategy.
|
|
2134
|
+
* Only called during breakpoint changes, not on close.
|
|
2135
|
+
* Use this to cleanup strategy-specific state when transitioning layouts.
|
|
2136
|
+
* @example Regular dialog → Fullscreen dialog on viewport resize
|
|
2137
|
+
*/
|
|
2138
|
+
onSwitchedAwayFrom?: (context: OverlayStrategyContext) => void;
|
|
2139
|
+
/**
|
|
2140
|
+
* Called when the overlay is first opened with this strategy.
|
|
2141
|
+
* Use this for initial setup and enter animations.
|
|
2142
|
+
* The hook is responsible for starting the enter transition (e.g. `context.lifecycle.enter()`).
|
|
2143
|
+
*/
|
|
2144
|
+
onBeforeEnter?: (context: OverlayStrategyContext) => void;
|
|
2145
|
+
/**
|
|
2146
|
+
* Called after the overlay has completed its enter animation.
|
|
2147
|
+
*/
|
|
2148
|
+
onAfterEnter?: (context: OverlayStrategyContext) => void;
|
|
2149
|
+
/**
|
|
2150
|
+
* Called when the overlay is about to close (beforeClosed).
|
|
2151
|
+
* The hook is responsible for starting the leave transition (e.g. `context.lifecycle.leave()`).
|
|
2152
|
+
*/
|
|
2153
|
+
onBeforeLeave?: (context: OverlayStrategyContext) => void;
|
|
2154
|
+
/**
|
|
2155
|
+
* Called after the overlay has been closed (afterClosed).
|
|
2156
|
+
* Use this for final cleanup.
|
|
2157
|
+
*/
|
|
2158
|
+
onAfterLeave?: (context: OverlayStrategyContext) => void;
|
|
2159
|
+
};
|
|
2160
|
+
type OverlayStrategyBreakpoint = {
|
|
2161
|
+
/**
|
|
2162
|
+
* Breakpoint to apply the strategy for. If a number is provided, it will be used as a pixel value.
|
|
2163
|
+
* Always uses the min-width media query.
|
|
2164
|
+
*
|
|
2165
|
+
* @default 'xs' // 0px
|
|
2166
|
+
*/
|
|
2167
|
+
breakpoint?: Breakpoint | number;
|
|
2168
|
+
/** Overlay strategy to be applied when the breakpoint is active. */
|
|
2169
|
+
strategy: OverlayStrategy;
|
|
2170
|
+
};
|
|
2171
|
+
type OverlayDragToDismissConfig = {
|
|
2172
|
+
/** Direction in which the overlay can be dragged. */
|
|
2173
|
+
direction: 'to-top' | 'to-bottom' | 'to-left' | 'to-right';
|
|
2174
|
+
/**
|
|
2175
|
+
* The minimum distance in pixels that the user must swipe to dismiss the overlay.
|
|
2176
|
+
*
|
|
2177
|
+
* @default 150 // 150px
|
|
2178
|
+
*/
|
|
2179
|
+
minDistanceToDismiss?: number;
|
|
2180
|
+
/**
|
|
2181
|
+
* The minimum velocity in pixels per second that the user must swipe to dismiss the overlay.
|
|
2182
|
+
*
|
|
2183
|
+
* @default 150 // 150px/s
|
|
2184
|
+
*/
|
|
2185
|
+
minVelocityToDismiss?: number;
|
|
2186
|
+
};
|
|
2187
|
+
type OverlayBreakpointConfig = {
|
|
2188
|
+
/** Min-width of the overlay. If a number is provided, assumes pixel units. */
|
|
2189
|
+
minWidth?: number | string;
|
|
2190
|
+
/** Max-width of the overlay. If a number is provided, assumes pixel units. */
|
|
2191
|
+
maxWidth?: number | string;
|
|
2192
|
+
/** Min-height of the overlay. If a number is provided, assumes pixel units. */
|
|
2193
|
+
minHeight?: number | string;
|
|
2194
|
+
/** Max-height of the overlay. If a number is provided, assumes pixel units. */
|
|
2195
|
+
maxHeight?: number | string;
|
|
2196
|
+
/** Width of the overlay. */
|
|
2197
|
+
width?: number | string;
|
|
2198
|
+
/** Height of the overlay. */
|
|
2199
|
+
height?: number | string;
|
|
2200
|
+
/** Position strategy to be used for the overlay. */
|
|
2201
|
+
positionStrategy?: (origin?: HTMLElement) => OverlayRuntimePositionStrategy;
|
|
2202
|
+
/** Custom class for the overlay container (the runtime pane element hosting the overlay content). */
|
|
2203
|
+
containerClass?: string | string[];
|
|
2204
|
+
/** Custom class for the runtime host element wrapping backdrop and pane. */
|
|
2205
|
+
hostClass?: string | string[];
|
|
2206
|
+
/** Custom class for the backdrop. */
|
|
2207
|
+
backdropClass?: string | string[];
|
|
2208
|
+
/** Custom class for the document (`<html>` element). */
|
|
2209
|
+
documentClass?: string | string[];
|
|
2210
|
+
/** Custom class for the `<body>` element */
|
|
2211
|
+
bodyClass?: string | string[];
|
|
2212
|
+
/** Determine if and in what direction the overlay should be able to be dragged to dismiss it. */
|
|
2213
|
+
dragToDismiss?: OverlayDragToDismissConfig;
|
|
2214
|
+
/**
|
|
2215
|
+
* Whether a backdrop element is rendered behind the overlay. Only applied at mount time (the
|
|
2216
|
+
* initially matched strategy) — it cannot change during breakpoint switches. An explicit
|
|
2217
|
+
* `hasBackdrop` on the overlay config always wins over this strategy default.
|
|
2218
|
+
*
|
|
2219
|
+
* @default undefined // falls back to the overlay config / modal behavior
|
|
2220
|
+
*/
|
|
2221
|
+
hasBackdrop?: boolean;
|
|
2222
|
+
/**
|
|
2223
|
+
* Whether the transform origin should be set using the config's `origin` property value.
|
|
2224
|
+
*
|
|
2225
|
+
* @default false
|
|
2226
|
+
*/
|
|
2227
|
+
applyTransformOrigin?: boolean;
|
|
2228
|
+
/**
|
|
2229
|
+
* Renders a floating-ui-positioned arrow on the overlay container that points at the origin.
|
|
2230
|
+
* Only meaningful for anchored positioning. The arrow inherits the pane background; combine with
|
|
2231
|
+
* an `offset` so the pane leaves room for it.
|
|
2232
|
+
*
|
|
2233
|
+
* @default false
|
|
2234
|
+
*/
|
|
2235
|
+
arrow?: boolean;
|
|
2236
|
+
};
|
|
2237
|
+
|
|
2238
|
+
type OverlayAutoFocusTarget = 'container' | 'first-heading' | 'first-tabbable';
|
|
2239
|
+
type OverlayRole = 'dialog' | 'alertdialog';
|
|
2240
|
+
type OverlayMode = 'modal' | 'non-modal';
|
|
2241
|
+
type OverlayConfig = {
|
|
2242
|
+
viewContainerRef?: ViewContainerRef;
|
|
2243
|
+
injector?: Injector;
|
|
2244
|
+
id?: string;
|
|
2245
|
+
/**
|
|
2246
|
+
* The element or event the overlay was opened from. Used as the anchor reference
|
|
2247
|
+
* for anchored positioning and as the transform origin for strategy animations.
|
|
2248
|
+
* When omitted and strategies are used, falls back to the currently focused element.
|
|
2249
|
+
*/
|
|
2250
|
+
origin?: HTMLElement | Event;
|
|
2251
|
+
role?: OverlayRole;
|
|
2252
|
+
hasBackdrop?: boolean;
|
|
2253
|
+
disableClose?: boolean;
|
|
2254
|
+
/**
|
|
2255
|
+
* Bindings applied to the overlay component, using Angular's native binding API
|
|
2256
|
+
* (`inputBinding`, `outputBinding`, `twoWayBinding`).
|
|
2257
|
+
*/
|
|
2258
|
+
bindings?: Binding[];
|
|
2259
|
+
ariaDescribedBy?: string | null;
|
|
2260
|
+
ariaLabelledBy?: string | null;
|
|
2261
|
+
ariaLabel?: string | null;
|
|
2262
|
+
autoFocus?: OverlayAutoFocusTarget | string | false;
|
|
2263
|
+
restoreFocus?: boolean;
|
|
2264
|
+
providers?: StaticProvider[];
|
|
2265
|
+
hostClass?: string | string[];
|
|
2266
|
+
backdropClass?: string | string[];
|
|
2267
|
+
panelClass?: string | string[];
|
|
2268
|
+
mode?: OverlayMode;
|
|
2269
|
+
closeOnOutsidePointer?: boolean;
|
|
2270
|
+
closeOnEscape?: boolean;
|
|
2271
|
+
/**
|
|
2272
|
+
* Breakpoint-driven overlay strategies (dialog, sheets, full-screen, …).
|
|
2273
|
+
* When set, position, sizing and classes are controlled by the active strategy.
|
|
2274
|
+
*/
|
|
2275
|
+
strategies?: () => OverlayStrategyBreakpoint[];
|
|
2276
|
+
/**
|
|
2277
|
+
* Disables the default overlay animations so custom ones can be applied.
|
|
2278
|
+
*
|
|
2279
|
+
* @default false
|
|
2280
|
+
*/
|
|
2281
|
+
customAnimated?: boolean;
|
|
2282
|
+
};
|
|
2283
|
+
|
|
2284
|
+
declare const createOverlayRef: <TComponent extends object, TResult = unknown>(config: OverlayConfig) => {
|
|
2285
|
+
readonly id: string;
|
|
2286
|
+
readonly elements: _ethlete_core.OverlayRuntimeElements | null;
|
|
2287
|
+
config: OverlayConfig;
|
|
2288
|
+
headerTemplate: _angular_core.Signal<TemplateRef<unknown> | null>;
|
|
2289
|
+
/** @internal Set (or clear) the active header template. */
|
|
2290
|
+
setHeaderTemplate: (template: TemplateRef<unknown> | null) => void;
|
|
2291
|
+
componentInstance: () => TComponent | null;
|
|
2292
|
+
close: (result?: TResult) => void;
|
|
2293
|
+
closeVia: (source: OverlayRuntimeCloseSource, result?: TResult) => void;
|
|
2294
|
+
updatePositionStrategy: (strategy: OverlayRuntimePositionStrategy) => void;
|
|
2295
|
+
attachComponentInstanceOverride: (getter: () => TComponent | null) => void;
|
|
2296
|
+
afterOpened: () => Observable<void>;
|
|
2297
|
+
beforeClosed: () => Observable<TResult | undefined>;
|
|
2298
|
+
afterClosed: () => Observable<TResult | undefined>;
|
|
2299
|
+
attachRuntime: (runtimeRef: OverlayRuntimeRef<TComponent, TResult>) => void;
|
|
2300
|
+
};
|
|
2301
|
+
type OverlayRef<TComponent extends object = object, TResult = unknown> = ReturnType<typeof createOverlayRef<TComponent, TResult>>;
|
|
2302
|
+
declare const OVERLAY_REF: InjectionToken<{
|
|
2303
|
+
readonly id: string;
|
|
2304
|
+
readonly elements: _ethlete_core.OverlayRuntimeElements | null;
|
|
2305
|
+
config: OverlayConfig;
|
|
2306
|
+
headerTemplate: _angular_core.Signal<TemplateRef<unknown> | null>;
|
|
2307
|
+
/** @internal Set (or clear) the active header template. */
|
|
2308
|
+
setHeaderTemplate: (template: TemplateRef<unknown> | null) => void;
|
|
2309
|
+
componentInstance: () => object | null;
|
|
2310
|
+
close: (result?: unknown) => void;
|
|
2311
|
+
closeVia: (source: OverlayRuntimeCloseSource, result?: unknown) => void;
|
|
2312
|
+
updatePositionStrategy: (strategy: OverlayRuntimePositionStrategy) => void;
|
|
2313
|
+
attachComponentInstanceOverride: (getter: () => object | null) => void;
|
|
2314
|
+
afterOpened: () => Observable<void>;
|
|
2315
|
+
beforeClosed: () => Observable<unknown>;
|
|
2316
|
+
afterClosed: () => Observable<unknown>;
|
|
2317
|
+
attachRuntime: (runtimeRef: OverlayRuntimeRef<object, unknown>) => void;
|
|
2318
|
+
}>;
|
|
2319
|
+
|
|
2320
|
+
declare class OverlayAnchorDirective {
|
|
2321
|
+
private overlay;
|
|
2322
|
+
private destroyRef;
|
|
2323
|
+
elementRef: ElementRef<HTMLElement>;
|
|
2324
|
+
constructor();
|
|
2325
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayAnchorDirective, never>;
|
|
2326
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<OverlayAnchorDirective, "[etOverlayAnchor]", ["etOverlayAnchor"], {}, {}, never, never, true, never>;
|
|
2327
|
+
}
|
|
2328
|
+
|
|
2329
|
+
declare class OverlayTriggerDirective {
|
|
2330
|
+
private overlay;
|
|
2331
|
+
private destroyRef;
|
|
2332
|
+
elementRef: ElementRef<HTMLElement>;
|
|
2333
|
+
constructor();
|
|
2334
|
+
toggle(): void;
|
|
2335
|
+
isOpen(): boolean;
|
|
2336
|
+
expanded(): boolean | null;
|
|
2337
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayTriggerDirective, never>;
|
|
2338
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<OverlayTriggerDirective, "[etOverlayTrigger]", ["etOverlayTrigger"], {}, {}, never, never, true, never>;
|
|
2339
|
+
}
|
|
2340
|
+
|
|
2341
|
+
declare class OverlayDirective {
|
|
2342
|
+
private destroyRef;
|
|
2343
|
+
private overlayManager;
|
|
2344
|
+
mode: _angular_core.InputSignal<OverlayMode>;
|
|
2345
|
+
role: _angular_core.InputSignal<OverlayRole | undefined>;
|
|
2346
|
+
open: _angular_core.ModelSignal<boolean>;
|
|
2347
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
2348
|
+
disableClose: _angular_core.InputSignal<boolean>;
|
|
2349
|
+
autoFocus: _angular_core.InputSignal<string | false | undefined>;
|
|
2350
|
+
restoreFocus: _angular_core.InputSignal<boolean>;
|
|
2351
|
+
hasBackdrop: _angular_core.InputSignal<boolean | undefined>;
|
|
2352
|
+
closeOnEscape: _angular_core.InputSignal<boolean>;
|
|
2353
|
+
closeOnOutsidePointer: _angular_core.InputSignal<boolean>;
|
|
2354
|
+
hostClass: _angular_core.InputSignal<string | string[] | undefined>;
|
|
2355
|
+
backdropClass: _angular_core.InputSignal<string | string[] | undefined>;
|
|
2356
|
+
panelClass: _angular_core.InputSignal<string | string[] | undefined>;
|
|
2357
|
+
placement: _angular_core.InputSignal<Placement>;
|
|
2358
|
+
fallbackPlacements: _angular_core.InputSignal<Placement[] | undefined>;
|
|
2359
|
+
offset: _angular_core.InputSignal<OffsetOptions | null>;
|
|
2360
|
+
viewportPadding: _angular_core.InputSignal<Padding | null>;
|
|
2361
|
+
autoResize: _angular_core.InputSignal<boolean>;
|
|
2362
|
+
shift: _angular_core.InputSignal<boolean>;
|
|
2363
|
+
autoHide: _angular_core.InputSignal<boolean>;
|
|
2364
|
+
autoCloseIfReferenceHidden: _angular_core.InputSignal<boolean>;
|
|
2365
|
+
mirrorWidth: _angular_core.InputSignal<boolean>;
|
|
2366
|
+
/** @internal */
|
|
2367
|
+
registeredAnchor: _angular_core.WritableSignal<OverlayAnchorDirective | null>;
|
|
2368
|
+
/** @internal */
|
|
2369
|
+
registeredSurface: _angular_core.WritableSignal<OverlaySurfaceDirective | null>;
|
|
2370
|
+
/** @internal */
|
|
2371
|
+
registeredTrigger: _angular_core.WritableSignal<OverlayTriggerDirective | null>;
|
|
2372
|
+
/** @internal */
|
|
2373
|
+
overlayRef: _angular_core.WritableSignal<OverlayRef<OverlayTemplateHostComponent, unknown> | null>;
|
|
2374
|
+
isMounted: _angular_core.Signal<boolean>;
|
|
2375
|
+
private originElement;
|
|
2376
|
+
constructor();
|
|
2377
|
+
show(): void;
|
|
2378
|
+
hide(result?: unknown): void;
|
|
2379
|
+
toggle(): void;
|
|
2380
|
+
/** @internal */
|
|
2381
|
+
unregisterTrigger(trigger: OverlayTriggerDirective): void;
|
|
2382
|
+
/** @internal */
|
|
2383
|
+
unregisterAnchor(anchor: OverlayAnchorDirective): void;
|
|
2384
|
+
/** @internal */
|
|
2385
|
+
unregisterSurface(surface: OverlaySurfaceDirective): void;
|
|
2386
|
+
private mountOverlay;
|
|
2387
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayDirective, never>;
|
|
2388
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<OverlayDirective, "[etOverlay]", ["etOverlay"], { "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "role": { "alias": "role"; "required": false; "isSignal": true; }; "open": { "alias": "open"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "disableClose": { "alias": "disableClose"; "required": false; "isSignal": true; }; "autoFocus": { "alias": "autoFocus"; "required": false; "isSignal": true; }; "restoreFocus": { "alias": "restoreFocus"; "required": false; "isSignal": true; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; "isSignal": true; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; "isSignal": true; }; "closeOnOutsidePointer": { "alias": "closeOnOutsidePointer"; "required": false; "isSignal": true; }; "hostClass": { "alias": "hostClass"; "required": false; "isSignal": true; }; "backdropClass": { "alias": "backdropClass"; "required": false; "isSignal": true; }; "panelClass": { "alias": "panelClass"; "required": false; "isSignal": true; }; "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "fallbackPlacements": { "alias": "fallbackPlacements"; "required": false; "isSignal": true; }; "offset": { "alias": "offset"; "required": false; "isSignal": true; }; "viewportPadding": { "alias": "viewportPadding"; "required": false; "isSignal": true; }; "autoResize": { "alias": "autoResize"; "required": false; "isSignal": true; }; "shift": { "alias": "shift"; "required": false; "isSignal": true; }; "autoHide": { "alias": "autoHide"; "required": false; "isSignal": true; }; "autoCloseIfReferenceHidden": { "alias": "autoCloseIfReferenceHidden"; "required": false; "isSignal": true; }; "mirrorWidth": { "alias": "mirrorWidth"; "required": false; "isSignal": true; }; }, { "open": "openChange"; }, never, never, true, never>;
|
|
2389
|
+
}
|
|
2390
|
+
|
|
2391
|
+
type OverlaySurfaceContext = {
|
|
2392
|
+
$implicit: OverlayDirective;
|
|
2393
|
+
overlay: OverlayDirective;
|
|
2394
|
+
close: (result?: unknown) => void;
|
|
2395
|
+
};
|
|
2396
|
+
declare class OverlaySurfaceDirective {
|
|
2397
|
+
private overlay;
|
|
2398
|
+
templateRef: TemplateRef<OverlaySurfaceContext>;
|
|
2399
|
+
private destroyRef;
|
|
2400
|
+
constructor();
|
|
2401
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlaySurfaceDirective, never>;
|
|
2402
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<OverlaySurfaceDirective, "ng-template[etOverlaySurface]", ["etOverlaySurface"], {}, {}, never, never, true, never>;
|
|
2403
|
+
}
|
|
2404
|
+
|
|
2405
|
+
declare class OverlayTemplateHostComponent {
|
|
2406
|
+
protected template: _angular_core.InputSignal<TemplateRef<OverlaySurfaceContext>>;
|
|
2407
|
+
protected context: _angular_core.InputSignal<OverlaySurfaceContext>;
|
|
2408
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayTemplateHostComponent, never>;
|
|
2409
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<OverlayTemplateHostComponent, "et-overlay-template-host", never, { "template": { "alias": "template"; "required": true; "isSignal": true; }; "context": { "alias": "context"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2410
|
+
}
|
|
2411
|
+
|
|
2412
|
+
declare class MenuPanelDirective {
|
|
2413
|
+
/** @internal */
|
|
2414
|
+
menu: MenuDirective | null;
|
|
2415
|
+
elementRef: ElementRef<HTMLElement>;
|
|
2416
|
+
private destroyRef;
|
|
2417
|
+
protected labelledBy: _angular_core.Signal<string | null>;
|
|
2418
|
+
protected busy: _angular_core.Signal<true | null>;
|
|
2419
|
+
constructor();
|
|
2420
|
+
/** @internal */
|
|
2421
|
+
focus(): void;
|
|
2422
|
+
protected handleKeydown(event: KeyboardEvent): void;
|
|
2423
|
+
protected handlePointerEnter(event: PointerEvent): void;
|
|
2424
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuPanelDirective, never>;
|
|
2425
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<MenuPanelDirective, "[etMenuPanel]", ["etMenuPanel"], {}, {}, never, never, true, never>;
|
|
2426
|
+
}
|
|
2427
|
+
|
|
2428
|
+
declare class MenuSearchDirective {
|
|
2429
|
+
private menu;
|
|
2430
|
+
private document;
|
|
2431
|
+
elementRef: ElementRef<HTMLInputElement>;
|
|
2432
|
+
private destroyRef;
|
|
2433
|
+
query: _angular_core.ModelSignal<string>;
|
|
2434
|
+
loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
2435
|
+
error: _angular_core.InputSignal<string | null>;
|
|
2436
|
+
/** @internal Id of the element rendering the error message, set by the component displaying it. */
|
|
2437
|
+
errorElementId: _angular_core.WritableSignal<string | null>;
|
|
2438
|
+
constructor();
|
|
2439
|
+
/** @internal */
|
|
2440
|
+
isFocused(): boolean;
|
|
2441
|
+
/** @internal */
|
|
2442
|
+
focus(options?: {
|
|
2443
|
+
select?: boolean;
|
|
2444
|
+
}): void;
|
|
2445
|
+
/** @internal Focuses the input and appends a character typed while an item had focus. */
|
|
2446
|
+
appendCharacter(character: string): void;
|
|
2447
|
+
clear(): void;
|
|
2448
|
+
protected handleInput(): void;
|
|
2449
|
+
protected handleKeydown(event: KeyboardEvent): void;
|
|
2450
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuSearchDirective, never>;
|
|
2451
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<MenuSearchDirective, "input[etMenuSearch]", ["etMenuSearch"], { "query": { "alias": "query"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "error": { "alias": "error"; "required": false; "isSignal": true; }; }, { "query": "queryChange"; }, never, never, true, never>;
|
|
2452
|
+
}
|
|
2453
|
+
|
|
2454
|
+
type MenuSurfaceContext = {
|
|
2455
|
+
$implicit: MenuDirective;
|
|
2456
|
+
menu: MenuDirective;
|
|
2457
|
+
close: (result?: unknown) => void;
|
|
2458
|
+
};
|
|
2459
|
+
declare class MenuSurfaceDirective {
|
|
2460
|
+
private menu;
|
|
2461
|
+
templateRef: TemplateRef<MenuSurfaceContext>;
|
|
2462
|
+
private destroyRef;
|
|
2463
|
+
constructor();
|
|
2464
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuSurfaceDirective, never>;
|
|
2465
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<MenuSurfaceDirective, "ng-template[etMenuSurface]", ["etMenuSurface"], {}, {}, never, never, true, never>;
|
|
2466
|
+
}
|
|
2467
|
+
|
|
2468
|
+
declare class MenuTriggerDirective {
|
|
2469
|
+
/** @internal The menu this trigger opens - for submenu trigger items, that is the submenu. */
|
|
2470
|
+
menu: MenuDirective | null;
|
|
2471
|
+
elementRef: ElementRef<HTMLElement>;
|
|
2472
|
+
private destroyRef;
|
|
2473
|
+
/** @internal The same-element menu item this trigger is combined with, if any. Set by the item. */
|
|
2474
|
+
hostItem: MenuItemDirective | null;
|
|
2475
|
+
constructor();
|
|
2476
|
+
/** @internal */
|
|
2477
|
+
setHostItem(item: MenuItemDirective): void;
|
|
2478
|
+
isOpen(): boolean;
|
|
2479
|
+
protected expanded(): boolean | null;
|
|
2480
|
+
protected controls(): string | null;
|
|
2481
|
+
protected handleClick(): void;
|
|
2482
|
+
protected handleKeydown(event: KeyboardEvent): void;
|
|
2483
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuTriggerDirective, never>;
|
|
2484
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<MenuTriggerDirective, "[etMenuTrigger]", ["etMenuTrigger"], {}, {}, never, never, true, never>;
|
|
2485
|
+
}
|
|
2486
|
+
|
|
2487
|
+
type MenuCloseReason = 'item' | 'escape' | 'tab' | 'outside' | 'api';
|
|
2488
|
+
type MenuOpenSource = 'click' | 'hover' | 'keyboard' | 'api';
|
|
2489
|
+
type MenuAnchorPoint = {
|
|
2490
|
+
x: number;
|
|
2491
|
+
y: number;
|
|
2492
|
+
};
|
|
2493
|
+
declare class MenuDirective {
|
|
2494
|
+
private destroyRef;
|
|
2495
|
+
private document;
|
|
2496
|
+
private overlayManager;
|
|
2497
|
+
parent: MenuDirective | null;
|
|
2498
|
+
placement: _angular_core.InputSignal<"auto" | Placement>;
|
|
2499
|
+
fallbackPlacements: _angular_core.InputSignal<Placement[] | undefined>;
|
|
2500
|
+
offset: _angular_core.InputSignal<"auto" | OffsetOptions | null>;
|
|
2501
|
+
viewportPadding: _angular_core.InputSignal<Padding | null>;
|
|
2502
|
+
/** Render an arrow pointing at the trigger. Trigger-anchored root menus only — submenus and context menus never render one. */
|
|
2503
|
+
arrow: _angular_core.InputSignal<boolean>;
|
|
2504
|
+
arrowPadding: _angular_core.InputSignal<Padding | null>;
|
|
2505
|
+
autoFocus: _angular_core.InputSignal<boolean>;
|
|
2506
|
+
hoverOpen: _angular_core.InputSignal<boolean>;
|
|
2507
|
+
hoverOpenDelay: _angular_core.InputSignal<number>;
|
|
2508
|
+
hoverCloseDelay: _angular_core.InputSignal<number>;
|
|
2509
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
2510
|
+
open: _angular_core.ModelSignal<boolean>;
|
|
2511
|
+
root: MenuDirective;
|
|
2512
|
+
depth: number;
|
|
2513
|
+
isRoot: boolean;
|
|
2514
|
+
/** @internal */
|
|
2515
|
+
registeredTrigger: _angular_core.WritableSignal<MenuTriggerDirective | null>;
|
|
2516
|
+
/** @internal */
|
|
2517
|
+
registeredContextTrigger: _angular_core.WritableSignal<MenuContextTriggerDirective | null>;
|
|
2518
|
+
/** @internal */
|
|
2519
|
+
registeredSurface: _angular_core.WritableSignal<MenuSurfaceDirective | null>;
|
|
2520
|
+
/** @internal */
|
|
2521
|
+
registeredPanel: _angular_core.WritableSignal<MenuPanelDirective | null>;
|
|
2522
|
+
/** @internal */
|
|
2523
|
+
registeredSearch: _angular_core.WritableSignal<MenuSearchDirective | null>;
|
|
2524
|
+
/** @internal */
|
|
2525
|
+
overlayRef: _angular_core.WritableSignal<OverlayRef<OverlayTemplateHostComponent, unknown> | null>;
|
|
2526
|
+
/** @internal */
|
|
2527
|
+
openSubmenu: _angular_core.WritableSignal<MenuDirective | null>;
|
|
2528
|
+
/** @internal */
|
|
2529
|
+
activeItem: _angular_core.WritableSignal<MenuItemDirective | null>;
|
|
2530
|
+
/** @internal */
|
|
2531
|
+
anchorPoint: _angular_core.WritableSignal<MenuAnchorPoint | null>;
|
|
2532
|
+
private items;
|
|
2533
|
+
/** @internal */
|
|
2534
|
+
sortedItems: _angular_core.Signal<MenuItemDirective[]>;
|
|
2535
|
+
/** @internal */
|
|
2536
|
+
enabledItems: _angular_core.Signal<MenuItemDirective[]>;
|
|
2537
|
+
isMounted: _angular_core.Signal<boolean>;
|
|
2538
|
+
private openSource;
|
|
2539
|
+
private initialFocusTarget;
|
|
2540
|
+
private hoverIntent;
|
|
2541
|
+
private typeahead;
|
|
2542
|
+
private rootListenersCleanup;
|
|
2543
|
+
constructor();
|
|
2544
|
+
show(source?: MenuOpenSource, initialFocus?: 'first' | 'last'): void;
|
|
2545
|
+
hide(): void;
|
|
2546
|
+
toggle(source?: MenuOpenSource): void;
|
|
2547
|
+
/** Closes the whole menu tree, regardless of which level this is called on. */
|
|
2548
|
+
closeAll(reason?: MenuCloseReason): void;
|
|
2549
|
+
/** Opens the menu anchored to a viewport point instead of the trigger element. */
|
|
2550
|
+
openAt(point: MenuAnchorPoint, source?: MenuOpenSource): void;
|
|
2551
|
+
/** @internal Closes this level and returns focus to the trigger item in the parent menu. */
|
|
2552
|
+
closeLevel(reason: MenuCloseReason): void;
|
|
2553
|
+
/** @internal */
|
|
2554
|
+
openSubmenuExclusive(submenu: MenuDirective): void;
|
|
2555
|
+
/** @internal */
|
|
2556
|
+
registerItem(item: MenuItemDirective): void;
|
|
2557
|
+
/** @internal */
|
|
2558
|
+
unregisterItem(item: MenuItemDirective): void;
|
|
2559
|
+
/** @internal */
|
|
2560
|
+
unregisterTrigger(trigger: MenuTriggerDirective): void;
|
|
2561
|
+
/** @internal */
|
|
2562
|
+
unregisterContextTrigger(trigger: MenuContextTriggerDirective): void;
|
|
2563
|
+
/** @internal */
|
|
2564
|
+
unregisterSurface(surface: MenuSurfaceDirective): void;
|
|
2565
|
+
/** @internal */
|
|
2566
|
+
unregisterPanel(panel: MenuPanelDirective): void;
|
|
2567
|
+
/** @internal */
|
|
2568
|
+
unregisterSearch(search: MenuSearchDirective): void;
|
|
2569
|
+
/** @internal */
|
|
2570
|
+
setActiveItem(item: MenuItemDirective, options?: {
|
|
2571
|
+
focus?: boolean;
|
|
2572
|
+
}): void;
|
|
2573
|
+
/** @internal Central keyboard handling for items, the panel, and the search input. */
|
|
2574
|
+
handleKeydown(event: KeyboardEvent): void;
|
|
2575
|
+
/** @internal */
|
|
2576
|
+
notifyItemPointerEnter(item: MenuItemDirective): void;
|
|
2577
|
+
/** @internal Cancels pending submenu hover timers along the ancestor chain. */
|
|
2578
|
+
notifyPanelPointerEnter(): void;
|
|
2579
|
+
/** @internal */
|
|
2580
|
+
focusTrigger(): void;
|
|
2581
|
+
/** @internal True while a pointerdown target belongs to any open pane of this menu's tree. */
|
|
2582
|
+
isTargetInsideTree(target: EventTarget | null): boolean;
|
|
2583
|
+
private isFocusInsideTree;
|
|
2584
|
+
private handleItemHover;
|
|
2585
|
+
private moveActive;
|
|
2586
|
+
private setActiveToEdge;
|
|
2587
|
+
private mountOverlay;
|
|
2588
|
+
private applyInitialFocus;
|
|
2589
|
+
private attachRootInteractionListeners;
|
|
2590
|
+
private detachRootInteractionListeners;
|
|
2591
|
+
private buildStrategies;
|
|
2592
|
+
private buildVirtualAnchoredPosition;
|
|
2593
|
+
private resolvedPlacement;
|
|
2594
|
+
private resolvedFallbackPlacements;
|
|
2595
|
+
private resolvedArrow;
|
|
2596
|
+
private resolvedOffset;
|
|
2597
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuDirective, never>;
|
|
2598
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<MenuDirective, "[etMenu]", ["etMenu"], { "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "fallbackPlacements": { "alias": "fallbackPlacements"; "required": false; "isSignal": true; }; "offset": { "alias": "offset"; "required": false; "isSignal": true; }; "viewportPadding": { "alias": "viewportPadding"; "required": false; "isSignal": true; }; "arrow": { "alias": "arrow"; "required": false; "isSignal": true; }; "arrowPadding": { "alias": "arrowPadding"; "required": false; "isSignal": true; }; "autoFocus": { "alias": "autoFocus"; "required": false; "isSignal": true; }; "hoverOpen": { "alias": "hoverOpen"; "required": false; "isSignal": true; }; "hoverOpenDelay": { "alias": "hoverOpenDelay"; "required": false; "isSignal": true; }; "hoverCloseDelay": { "alias": "hoverCloseDelay"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "open": { "alias": "open"; "required": false; "isSignal": true; }; }, { "open": "openChange"; }, never, never, true, never>;
|
|
2599
|
+
}
|
|
2600
|
+
|
|
2601
|
+
type MenuItemActivationSource = 'pointer' | 'keyboard-enter' | 'keyboard-space';
|
|
2602
|
+
type MenuItemActivationEvent = {
|
|
2603
|
+
source: MenuItemActivationSource;
|
|
2604
|
+
};
|
|
2605
|
+
declare class MenuItemDirective {
|
|
2606
|
+
private nearestMenu;
|
|
2607
|
+
private sameElementTrigger;
|
|
2608
|
+
elementRef: ElementRef<HTMLElement>;
|
|
2609
|
+
private destroyRef;
|
|
2610
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
2611
|
+
closeOnActivate: _angular_core.InputSignal<boolean | undefined>;
|
|
2612
|
+
activated: _angular_core.OutputEmitterRef<MenuItemActivationEvent>;
|
|
2613
|
+
/** @internal The menu whose item list this item belongs to. */
|
|
2614
|
+
owner: MenuDirective | null;
|
|
2615
|
+
/** @internal The submenu this item opens when it doubles as a submenu trigger. */
|
|
2616
|
+
submenu: MenuDirective | null;
|
|
2617
|
+
/** @internal Role source overriding the default `menuitem`, e.g. with `menuitemradio` or `menuitemcheckbox`. */
|
|
2618
|
+
roleOverride: _angular_core.WritableSignal<Signal<string> | null>;
|
|
2619
|
+
/** @internal Additional disabled state source, e.g. from a composing selection item directive. */
|
|
2620
|
+
disabledOverride: _angular_core.WritableSignal<Signal<boolean> | null>;
|
|
2621
|
+
private defaultCloseOnActivate;
|
|
2622
|
+
private pendingKeyboardSource;
|
|
2623
|
+
protected role: Signal<string>;
|
|
2624
|
+
protected isActive: Signal<boolean>;
|
|
2625
|
+
/** @internal Combines the item's own `disabled` input with a state pushed in by a composing directive. */
|
|
2626
|
+
isDisabled: Signal<boolean>;
|
|
2627
|
+
protected tabIndex: Signal<0 | -1>;
|
|
2628
|
+
constructor();
|
|
2629
|
+
/** @internal Sets whether activation closes the menu tree when the `closeOnActivate` input is not set. */
|
|
2630
|
+
setDefaultCloseOnActivate(value: boolean): void;
|
|
2631
|
+
/** @internal */
|
|
2632
|
+
focus(): void;
|
|
2633
|
+
/** @internal Returns the visible label used for typeahead matching. */
|
|
2634
|
+
textContent(): string;
|
|
2635
|
+
/** @internal Activates via a synthesized click so consumer (click) handlers fire for keyboard users too. */
|
|
2636
|
+
activateFromKeyboard(source: MenuItemActivationSource): void;
|
|
2637
|
+
protected handleClick(event: MouseEvent): void;
|
|
2638
|
+
protected handleKeydown(event: KeyboardEvent): void;
|
|
2639
|
+
protected handleMousedown(event: MouseEvent): void;
|
|
2640
|
+
protected handlePointerEnter(event: PointerEvent): void;
|
|
2641
|
+
protected handleFocus(): void;
|
|
2642
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuItemDirective, never>;
|
|
2643
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<MenuItemDirective, "[etMenuItem]", ["etMenuItem"], { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "closeOnActivate": { "alias": "closeOnActivate"; "required": false; "isSignal": true; }; }, { "activated": "activated"; }, never, never, true, never>;
|
|
2644
|
+
}
|
|
2645
|
+
|
|
2646
|
+
declare const MENU_SELECTION_GROUP_TOKEN: InjectionToken<MenuSelectionGroupDirectiveBase<unknown>>;
|
|
2647
|
+
declare const MENU_SELECTION_GROUP_MULTIPLE: InjectionToken<boolean>;
|
|
2648
|
+
declare const MENU_SELECTION_ITEM_KIND: InjectionToken<MenuSelectionItemKind>;
|
|
2649
|
+
type MenuSelectionItemKind = 'radio' | 'checkbox';
|
|
2650
|
+
type MenuSelectionGroupItem<TValue = unknown> = {
|
|
2651
|
+
value: Signal<TValue | undefined>;
|
|
2652
|
+
checked: WritableSignal<boolean>;
|
|
2653
|
+
disabled: Signal<boolean>;
|
|
2654
|
+
elementRef: ElementRef<HTMLElement>;
|
|
2655
|
+
};
|
|
2656
|
+
type MenuSelectionGroupDirectiveBase<TValue = unknown> = {
|
|
2657
|
+
value: WritableSignal<TValue | TValue[] | null>;
|
|
2658
|
+
multiple: Signal<boolean>;
|
|
2659
|
+
disabled: Signal<boolean>;
|
|
2660
|
+
items: Signal<MenuSelectionGroupItem<TValue>[]>;
|
|
2661
|
+
labelId: WritableSignal<string | null>;
|
|
2662
|
+
registerItem(item: MenuSelectionGroupItem<TValue>): void;
|
|
2663
|
+
unregisterItem(item: MenuSelectionGroupItem<TValue>): void;
|
|
2664
|
+
select(item: MenuSelectionGroupItem<TValue>): void;
|
|
2665
|
+
markTouched(): void;
|
|
2666
|
+
};
|
|
2667
|
+
|
|
2668
|
+
declare class MenuSelectionGroupDirective implements MenuSelectionGroupDirectiveBase {
|
|
2669
|
+
private multipleOverride;
|
|
2670
|
+
value: _angular_core.ModelSignal<unknown>;
|
|
2671
|
+
touched: _angular_core.ModelSignal<boolean>;
|
|
2672
|
+
multipleInput: _angular_core.InputSignal<boolean>;
|
|
2673
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
2674
|
+
invalid: _angular_core.InputSignal<boolean>;
|
|
2675
|
+
errors: _angular_core.InputSignal<readonly ValidationError.WithOptionalFieldTree[]>;
|
|
2676
|
+
required: _angular_core.InputSignal<boolean>;
|
|
2677
|
+
name: _angular_core.InputSignal<string>;
|
|
2678
|
+
multiple: _angular_core.Signal<boolean>;
|
|
2679
|
+
items: _angular_core.WritableSignal<MenuSelectionGroupItem[]>;
|
|
2680
|
+
shouldDisplayError: _angular_core.Signal<boolean>;
|
|
2681
|
+
/** @internal Set by a group label component so `aria-labelledby` can reference it. */
|
|
2682
|
+
labelId: _angular_core.WritableSignal<string | null>;
|
|
1274
2683
|
constructor();
|
|
1275
|
-
|
|
1276
|
-
|
|
2684
|
+
/** @internal */
|
|
2685
|
+
registerItem(item: MenuSelectionGroupItem): void;
|
|
2686
|
+
/** @internal */
|
|
2687
|
+
unregisterItem(item: MenuSelectionGroupItem): void;
|
|
2688
|
+
markTouched(): void;
|
|
2689
|
+
select(item: MenuSelectionGroupItem): void;
|
|
2690
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuSelectionGroupDirective, never>;
|
|
2691
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<MenuSelectionGroupDirective, "[etMenuSelectionGroup]", ["etMenuSelectionGroup"], { "value": { "alias": "value"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "multipleInput": { "alias": "multiple"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "touched": "touchedChange"; }, never, never, true, never>;
|
|
1277
2692
|
}
|
|
1278
2693
|
|
|
1279
|
-
declare
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
|
|
2694
|
+
declare class MenuSelectionItemDirective {
|
|
2695
|
+
private group;
|
|
2696
|
+
private kindOverride;
|
|
2697
|
+
private menuItem;
|
|
2698
|
+
elementRef: ElementRef<HTMLElement>;
|
|
2699
|
+
private destroyRef;
|
|
2700
|
+
value: _angular_core.InputSignal<unknown>;
|
|
2701
|
+
checked: _angular_core.ModelSignal<boolean>;
|
|
2702
|
+
indeterminate: _angular_core.ModelSignal<boolean>;
|
|
2703
|
+
touched: _angular_core.ModelSignal<boolean>;
|
|
2704
|
+
disabled: _angular_core.InputSignal<boolean>;
|
|
2705
|
+
invalid: _angular_core.InputSignal<boolean>;
|
|
2706
|
+
errors: _angular_core.InputSignal<readonly ValidationError.WithOptionalFieldTree[]>;
|
|
2707
|
+
required: _angular_core.InputSignal<boolean>;
|
|
2708
|
+
name: _angular_core.InputSignal<string>;
|
|
2709
|
+
kind: _angular_core.Signal<MenuSelectionItemKind>;
|
|
2710
|
+
ariaChecked: _angular_core.Signal<boolean | "mixed">;
|
|
2711
|
+
private isDisabled;
|
|
2712
|
+
constructor();
|
|
2713
|
+
toggle(): void;
|
|
2714
|
+
protected handleBlur(): void;
|
|
2715
|
+
private handleActivation;
|
|
2716
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuSelectionItemDirective, never>;
|
|
2717
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<MenuSelectionItemDirective, "[etMenuSelectionItem]", ["etMenuSelectionItem"], { "value": { "alias": "value"; "required": false; "isSignal": true; }; "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "indeterminate": { "alias": "indeterminate"; "required": false; "isSignal": true; }; "touched": { "alias": "touched"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "invalid": { "alias": "invalid"; "required": false; "isSignal": true; }; "errors": { "alias": "errors"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; }, { "checked": "checkedChange"; "indeterminate": "indeterminateChange"; "touched": "touchedChange"; }, never, never, true, never>;
|
|
2718
|
+
}
|
|
1286
2719
|
|
|
1287
|
-
declare
|
|
2720
|
+
declare class MenuCheckboxGroupComponent {
|
|
2721
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuCheckboxGroupComponent, never>;
|
|
2722
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MenuCheckboxGroupComponent, "et-menu-checkbox-group", never, {}, {}, never, ["et-menu-group-label", "*"], true, [{ directive: typeof MenuSelectionGroupDirective; inputs: { "value": "value"; "touched": "touched"; "disabled": "disabled"; "invalid": "invalid"; "errors": "errors"; "required": "required"; "name": "name"; }; outputs: { "valueChange": "valueChange"; "touchedChange": "touchedChange"; }; }]>;
|
|
2723
|
+
}
|
|
1288
2724
|
|
|
1289
|
-
declare
|
|
2725
|
+
declare class MenuCheckboxItemComponent {
|
|
2726
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuCheckboxItemComponent, never>;
|
|
2727
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MenuCheckboxItemComponent, "et-menu-checkbox-item", never, {}, {}, never, ["*"], true, [{ directive: typeof MenuItemDirective; inputs: { "closeOnActivate": "closeOnActivate"; }; outputs: { "activated": "activated"; }; }, { directive: typeof MenuSelectionItemDirective; inputs: { "value": "value"; "checked": "checked"; "indeterminate": "indeterminate"; "touched": "touched"; "disabled": "disabled"; "invalid": "invalid"; "errors": "errors"; "required": "required"; "name": "name"; }; outputs: { "checkedChange": "checkedChange"; "indeterminateChange": "indeterminateChange"; "touchedChange": "touchedChange"; }; }]>;
|
|
2728
|
+
}
|
|
1290
2729
|
|
|
1291
|
-
declare const
|
|
2730
|
+
declare const MENU_ERROR_CODES: {
|
|
2731
|
+
readonly MISSING_MENU_SURFACE: 1300;
|
|
2732
|
+
readonly TRIGGER_OUTSIDE_MENU: 1301;
|
|
2733
|
+
readonly SURFACE_OUTSIDE_MENU: 1302;
|
|
2734
|
+
readonly ITEM_OUTSIDE_MENU: 1303;
|
|
2735
|
+
readonly PANEL_OUTSIDE_MENU: 1304;
|
|
2736
|
+
readonly SEARCH_OUTSIDE_MENU: 1305;
|
|
2737
|
+
readonly CONTEXT_TRIGGER_OUTSIDE_MENU: 1306;
|
|
2738
|
+
readonly CONTEXT_TRIGGER_ON_SUBMENU: 1307;
|
|
2739
|
+
readonly SELECTION_ITEM_MISSING_VALUE: 1320;
|
|
2740
|
+
readonly RADIO_ITEM_OUTSIDE_GROUP: 1321;
|
|
2741
|
+
};
|
|
1292
2742
|
|
|
1293
|
-
declare
|
|
2743
|
+
declare class MenuGroupLabelComponent {
|
|
2744
|
+
private group;
|
|
2745
|
+
private elementRef;
|
|
2746
|
+
private destroyRef;
|
|
2747
|
+
constructor();
|
|
2748
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuGroupLabelComponent, never>;
|
|
2749
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MenuGroupLabelComponent, "et-menu-group-label", never, {}, {}, never, ["*"], true, never>;
|
|
2750
|
+
}
|
|
1294
2751
|
|
|
1295
|
-
declare const
|
|
2752
|
+
declare const MENU_ITEM_VARIANTS: {
|
|
2753
|
+
readonly DEFAULT: "default";
|
|
2754
|
+
readonly DESTRUCTIVE: "destructive";
|
|
2755
|
+
};
|
|
2756
|
+
type MenuItemVariant = (typeof MENU_ITEM_VARIANTS)[keyof typeof MENU_ITEM_VARIANTS];
|
|
2757
|
+
declare class MenuItemComponent {
|
|
2758
|
+
private provideColor;
|
|
2759
|
+
private errorColorTheme;
|
|
2760
|
+
variant: _angular_core.InputSignal<MenuItemVariant>;
|
|
2761
|
+
constructor();
|
|
2762
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuItemComponent, never>;
|
|
2763
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MenuItemComponent, "button[et-menu-item], a[et-menu-item]", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, {}, never, ["[etIcon]", "*", "et-menu-item-shortcut"], true, [{ directive: typeof MenuItemDirective; inputs: { "disabled": "disabled"; "closeOnActivate": "closeOnActivate"; }; outputs: { "activated": "activated"; }; }, { directive: typeof _ethlete_core.ProvideColorDirective; inputs: {}; outputs: {}; }]>;
|
|
2764
|
+
}
|
|
1296
2765
|
|
|
1297
|
-
declare
|
|
2766
|
+
declare class MenuItemShortcutComponent {
|
|
2767
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuItemShortcutComponent, never>;
|
|
2768
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MenuItemShortcutComponent, "et-menu-item-shortcut", never, {}, {}, never, ["*"], true, never>;
|
|
2769
|
+
}
|
|
1298
2770
|
|
|
1299
|
-
declare
|
|
2771
|
+
declare class MenuRadioGroupComponent {
|
|
2772
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuRadioGroupComponent, never>;
|
|
2773
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MenuRadioGroupComponent, "et-menu-radio-group", never, {}, {}, never, ["et-menu-group-label", "*"], true, [{ directive: typeof MenuSelectionGroupDirective; inputs: { "value": "value"; "touched": "touched"; "disabled": "disabled"; "invalid": "invalid"; "errors": "errors"; "required": "required"; "name": "name"; }; outputs: { "valueChange": "valueChange"; "touchedChange": "touchedChange"; }; }]>;
|
|
2774
|
+
}
|
|
1300
2775
|
|
|
1301
|
-
declare class
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
readonly SHAPE_CLIP_ID: string;
|
|
1305
|
-
shapeClip: string;
|
|
1306
|
-
readonly FILL_CLIP_ID: string;
|
|
1307
|
-
fillClip: string;
|
|
1308
|
-
constructor();
|
|
1309
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<BrandLoaderComponent, never>;
|
|
1310
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<BrandLoaderComponent, "et-brand-loader", never, {}, {}, never, never, true, never>;
|
|
2776
|
+
declare class MenuRadioItemComponent {
|
|
2777
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuRadioItemComponent, never>;
|
|
2778
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MenuRadioItemComponent, "et-menu-radio-item", never, {}, {}, never, ["*"], true, [{ directive: typeof MenuItemDirective; inputs: { "closeOnActivate": "closeOnActivate"; }; outputs: { "activated": "activated"; }; }, { directive: typeof MenuSelectionItemDirective; inputs: { "value": "value"; "checked": "checked"; "touched": "touched"; "disabled": "disabled"; "invalid": "invalid"; "errors": "errors"; "required": "required"; "name": "name"; }; outputs: { "checkedChange": "checkedChange"; "touchedChange": "touchedChange"; }; }]>;
|
|
1311
2779
|
}
|
|
1312
2780
|
|
|
1313
|
-
declare class
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
clampedValue: _angular_core.Signal<number>;
|
|
1317
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ProgressBarComponent, never>;
|
|
1318
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ProgressBarComponent, "et-progress-bar", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "indeterminate": { "alias": "indeterminate"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
2781
|
+
declare class MenuSeparatorComponent {
|
|
2782
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuSeparatorComponent, never>;
|
|
2783
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MenuSeparatorComponent, "et-menu-separator", never, {}, {}, never, never, true, never>;
|
|
1319
2784
|
}
|
|
1320
2785
|
|
|
1321
|
-
declare class
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
2786
|
+
declare class MenuComponent {
|
|
2787
|
+
private ownColorProvider;
|
|
2788
|
+
private contextColorProvider;
|
|
2789
|
+
protected menu: MenuDirective | null;
|
|
2790
|
+
protected errorColorTheme: _ethlete_core.ColorTheme;
|
|
2791
|
+
private prefersReducedMotion;
|
|
2792
|
+
private elementRef;
|
|
2793
|
+
private destroyRef;
|
|
2794
|
+
private renderer;
|
|
2795
|
+
private headerElement;
|
|
2796
|
+
private bodyElement;
|
|
2797
|
+
private headerDimensions;
|
|
2798
|
+
private bodyDimensions;
|
|
2799
|
+
protected search: _angular_core.Signal<_ethlete_components.MenuSearchDirective | null>;
|
|
2800
|
+
protected searchLoading: _angular_core.Signal<boolean>;
|
|
2801
|
+
protected searchError: _angular_core.Signal<string | null>;
|
|
2802
|
+
protected searchErrorId: string;
|
|
2803
|
+
private lastBlockSize;
|
|
2804
|
+
private resizeAnimation;
|
|
2805
|
+
constructor();
|
|
2806
|
+
private animateToCurrentBlockSize;
|
|
2807
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<MenuComponent, never>;
|
|
2808
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<MenuComponent, "et-menu", never, {}, {}, never, ["input[etMenuSearch]", "*"], true, [{ directive: typeof MenuPanelDirective; inputs: {}; outputs: {}; }, { directive: typeof _ethlete_core.ProvideColorDirective; inputs: {}; outputs: {}; }, { directive: typeof _ethlete_core.AutoSurfaceDirective; inputs: {}; outputs: {}; }]>;
|
|
1336
2809
|
}
|
|
1337
2810
|
|
|
2811
|
+
declare const MENU_IMPORTS: readonly [typeof MenuDirective, typeof MenuTriggerDirective, typeof MenuContextTriggerDirective, typeof MenuSurfaceDirective, typeof MenuPanelDirective, typeof MenuItemDirective, typeof MenuSearchDirective, typeof MenuSelectionGroupDirective, typeof MenuSelectionItemDirective, typeof MenuComponent, typeof MenuItemComponent, typeof MenuItemShortcutComponent, typeof MenuSeparatorComponent, typeof MenuGroupLabelComponent, typeof MenuRadioGroupComponent, typeof MenuRadioItemComponent, typeof MenuCheckboxGroupComponent, typeof MenuCheckboxItemComponent];
|
|
2812
|
+
|
|
1338
2813
|
declare class NotificationActionDirective {
|
|
1339
2814
|
private notification;
|
|
1340
2815
|
constructor();
|
|
@@ -1564,156 +3039,225 @@ declare class NotificationComponent {
|
|
|
1564
3039
|
|
|
1565
3040
|
declare const NOTIFICATION_IMPORTS: readonly [typeof NotificationComponent, typeof NotificationDirective, typeof NotificationActionDirective, typeof NotificationDismissDirective];
|
|
1566
3041
|
|
|
1567
|
-
declare
|
|
1568
|
-
|
|
1569
|
-
|
|
1570
|
-
|
|
1571
|
-
|
|
1572
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayAnchorDirective, never>;
|
|
1573
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<OverlayAnchorDirective, "[etOverlayAnchor]", ["etOverlayAnchor"], {}, {}, never, never, true, never>;
|
|
1574
|
-
}
|
|
1575
|
-
|
|
1576
|
-
type OverlayAutoFocusTarget = 'container' | 'first-heading' | 'first-tabbable';
|
|
1577
|
-
type OverlayRole = 'dialog' | 'alertdialog';
|
|
1578
|
-
type OverlayMode = 'modal' | 'non-modal';
|
|
1579
|
-
type OverlayPositionStrategy = OverlayRuntimePositionStrategy;
|
|
1580
|
-
type OverlayConfig = {
|
|
1581
|
-
viewContainerRef?: ViewContainerRef;
|
|
1582
|
-
injector?: Injector;
|
|
1583
|
-
id?: string;
|
|
1584
|
-
origin?: HTMLElement;
|
|
1585
|
-
role?: OverlayRole;
|
|
1586
|
-
positionStrategy?: OverlayPositionStrategy;
|
|
1587
|
-
hasBackdrop?: boolean;
|
|
1588
|
-
disableClose?: boolean;
|
|
1589
|
-
inputBindings?: Record<string, unknown>;
|
|
1590
|
-
ariaDescribedBy?: string | null;
|
|
1591
|
-
ariaLabelledBy?: string | null;
|
|
1592
|
-
ariaLabel?: string | null;
|
|
1593
|
-
autoFocus?: OverlayAutoFocusTarget | string | false;
|
|
1594
|
-
restoreFocus?: boolean;
|
|
1595
|
-
providers?: StaticProvider[];
|
|
1596
|
-
hostClass?: string | string[];
|
|
1597
|
-
backdropClass?: string | string[];
|
|
1598
|
-
panelClass?: string | string[];
|
|
1599
|
-
mode?: OverlayMode;
|
|
1600
|
-
closeOnOutsidePointer?: boolean;
|
|
1601
|
-
closeOnEscape?: boolean;
|
|
1602
|
-
};
|
|
1603
|
-
|
|
1604
|
-
declare const createOverlayRef: <TComponent extends object, TResult = unknown>(config: OverlayConfig) => {
|
|
1605
|
-
readonly id: string;
|
|
1606
|
-
config: OverlayConfig;
|
|
1607
|
-
readonly componentInstance: TComponent | null;
|
|
1608
|
-
close(result?: TResult): void;
|
|
1609
|
-
afterOpened(): Observable<void>;
|
|
1610
|
-
beforeClosed(): Observable<TResult | undefined>;
|
|
1611
|
-
afterClosed(): Observable<TResult | undefined>;
|
|
1612
|
-
attachRuntime(runtimeRef: OverlayRuntimeRef<TComponent, TResult>): void;
|
|
3042
|
+
declare const getClosestOverlay: (element: ElementRef<HTMLElement>, openOverlays: OverlayRef<object, unknown>[]) => OverlayRef<object, unknown> | null;
|
|
3043
|
+
type ResolveClosestOverlayOptions = {
|
|
3044
|
+
overlayRef: OverlayRef<object, unknown> | null;
|
|
3045
|
+
element: ElementRef<HTMLElement>;
|
|
3046
|
+
openOverlays: OverlayRef<object, unknown>[];
|
|
1613
3047
|
};
|
|
1614
|
-
|
|
1615
|
-
declare const
|
|
1616
|
-
readonly id: string;
|
|
1617
|
-
config: OverlayConfig;
|
|
1618
|
-
readonly componentInstance: object | null;
|
|
1619
|
-
close(result?: unknown): void;
|
|
1620
|
-
afterOpened(): Observable<void>;
|
|
1621
|
-
beforeClosed(): Observable<unknown>;
|
|
1622
|
-
afterClosed(): Observable<unknown>;
|
|
1623
|
-
attachRuntime(runtimeRef: OverlayRuntimeRef<object, unknown>): void;
|
|
1624
|
-
}>;
|
|
3048
|
+
/** Returns the given ref or resolves the overlay the element is rendered inside of. Throws if neither exists. */
|
|
3049
|
+
declare const resolveClosestOverlay: (options: ResolveClosestOverlayOptions) => OverlayRef<object, unknown>;
|
|
1625
3050
|
|
|
1626
|
-
declare
|
|
1627
|
-
|
|
1628
|
-
|
|
1629
|
-
|
|
1630
|
-
|
|
1631
|
-
|
|
1632
|
-
|
|
3051
|
+
declare const OVERLAY_BODY_TOKEN: InjectionToken<OverlayBodyComponent>;
|
|
3052
|
+
type OverlayBodyDividerType = 'static' | 'dynamic' | false;
|
|
3053
|
+
declare class OverlayBodyComponent implements OnInit {
|
|
3054
|
+
private overlayRef;
|
|
3055
|
+
private elementRef;
|
|
3056
|
+
private scrollObserver;
|
|
3057
|
+
private overlayManager;
|
|
3058
|
+
dividers: _angular_core.InputSignal<OverlayBodyDividerType>;
|
|
3059
|
+
dividersEnabled: _angular_core.Signal<boolean>;
|
|
3060
|
+
dynamicDividersEnabled: _angular_core.Signal<boolean>;
|
|
3061
|
+
containerScrollState: _angular_core.Signal<_ethlete_core.ElementScrollState>;
|
|
3062
|
+
canScroll: _angular_core.Signal<boolean>;
|
|
3063
|
+
isAtStart: _angular_core.Signal<boolean>;
|
|
3064
|
+
isAtEnd: _angular_core.Signal<boolean>;
|
|
3065
|
+
enableDividerAnimations: _angular_core.WritableSignal<boolean>;
|
|
3066
|
+
constructor();
|
|
3067
|
+
ngOnInit(): void;
|
|
3068
|
+
scrollToTop(behavior?: ScrollBehavior): void;
|
|
3069
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayBodyComponent, never>;
|
|
3070
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<OverlayBodyComponent, "[et-overlay-body], et-overlay-body", never, { "dividers": { "alias": "dividers"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof _ethlete_core.ScrollObserverDirective; inputs: {}; outputs: {}; }]>;
|
|
1633
3071
|
}
|
|
1634
3072
|
|
|
1635
|
-
declare class
|
|
1636
|
-
private
|
|
1637
|
-
private
|
|
1638
|
-
|
|
3073
|
+
declare class OverlayCloseDirective implements OnInit {
|
|
3074
|
+
private overlayRef;
|
|
3075
|
+
private elementRef;
|
|
3076
|
+
private overlayManager;
|
|
3077
|
+
ariaLabel: _angular_core.InputSignal<string | undefined>;
|
|
3078
|
+
type: _angular_core.InputSignal<"button" | "submit" | "reset">;
|
|
3079
|
+
closeResult: _angular_core.InputSignal<unknown>;
|
|
3080
|
+
closeResultAlt: _angular_core.InputSignal<unknown>;
|
|
1639
3081
|
constructor();
|
|
1640
|
-
|
|
1641
|
-
|
|
1642
|
-
|
|
1643
|
-
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayTriggerDirective, never>;
|
|
1644
|
-
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<OverlayTriggerDirective, "[etOverlayTrigger]", ["etOverlayTrigger"], {}, {}, never, never, true, never>;
|
|
3082
|
+
ngOnInit(): void;
|
|
3083
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayCloseDirective, never>;
|
|
3084
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<OverlayCloseDirective, "[et-overlay-close], [etOverlayClose]", ["etOverlayClose"], { "ariaLabel": { "alias": "aria-label"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "closeResult": { "alias": "etOverlayClose"; "required": false; "isSignal": true; }; "closeResultAlt": { "alias": "et-overlay-close"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1645
3085
|
}
|
|
1646
3086
|
|
|
1647
|
-
|
|
3087
|
+
/**
|
|
3088
|
+
* Merges overlay configs from least to most specific (e.g. definition → opener → per-open).
|
|
3089
|
+
*
|
|
3090
|
+
* - `bindings` and `providers` are concatenated in layer order — a later binding or provider
|
|
3091
|
+
* for the same input/token wins, matching Angular semantics.
|
|
3092
|
+
* - `hostClass`, `backdropClass` and `panelClass` are normalized to arrays, concatenated and deduped.
|
|
3093
|
+
* - Every other key is taken from the last layer that sets it to a value other than `undefined`
|
|
3094
|
+
* (an explicit `null`, e.g. on the aria fields, does override earlier layers).
|
|
3095
|
+
*/
|
|
3096
|
+
declare const mergeOverlayConfigs: (...configs: (OverlayConfig | undefined)[]) => OverlayConfig;
|
|
3097
|
+
|
|
3098
|
+
declare class OverlayContainerComponent {
|
|
3099
|
+
private ownColorProvider;
|
|
3100
|
+
private ownSurfaceProvider;
|
|
3101
|
+
private parentColorProvider;
|
|
3102
|
+
private parentSurfaceProvider;
|
|
1648
3103
|
private destroyRef;
|
|
1649
|
-
|
|
1650
|
-
|
|
1651
|
-
|
|
1652
|
-
|
|
1653
|
-
|
|
1654
|
-
|
|
1655
|
-
|
|
1656
|
-
|
|
1657
|
-
|
|
1658
|
-
|
|
1659
|
-
|
|
1660
|
-
|
|
1661
|
-
|
|
1662
|
-
|
|
1663
|
-
|
|
1664
|
-
|
|
1665
|
-
|
|
1666
|
-
|
|
1667
|
-
|
|
1668
|
-
|
|
1669
|
-
|
|
1670
|
-
|
|
1671
|
-
|
|
1672
|
-
|
|
1673
|
-
|
|
1674
|
-
|
|
1675
|
-
|
|
1676
|
-
|
|
1677
|
-
|
|
1678
|
-
|
|
1679
|
-
overlayRef: _angular_core.WritableSignal<OverlayRef<OverlayTemplateHostComponent, unknown> | null>;
|
|
1680
|
-
isMounted: _angular_core.Signal<boolean>;
|
|
1681
|
-
private originElement;
|
|
3104
|
+
private elementRef;
|
|
3105
|
+
protected overlayRef: {
|
|
3106
|
+
readonly id: string;
|
|
3107
|
+
readonly elements: _ethlete_core.OverlayRuntimeElements | null;
|
|
3108
|
+
config: _ethlete_components.OverlayConfig;
|
|
3109
|
+
headerTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown> | null>;
|
|
3110
|
+
setHeaderTemplate: (template: _angular_core.TemplateRef<unknown> | null) => void;
|
|
3111
|
+
componentInstance: () => object | null;
|
|
3112
|
+
close: (result?: unknown) => void;
|
|
3113
|
+
closeVia: (source: _ethlete_core.OverlayRuntimeCloseSource, result?: unknown) => void;
|
|
3114
|
+
updatePositionStrategy: (strategy: _ethlete_core.OverlayRuntimePositionStrategy) => void;
|
|
3115
|
+
attachComponentInstanceOverride: (getter: () => object | null) => void;
|
|
3116
|
+
afterOpened: () => rxjs.Observable<void>;
|
|
3117
|
+
beforeClosed: () => rxjs.Observable<unknown>;
|
|
3118
|
+
afterClosed: () => rxjs.Observable<unknown>;
|
|
3119
|
+
attachRuntime: (runtimeRef: _ethlete_core.OverlayRuntimeRef<object, unknown>) => void;
|
|
3120
|
+
};
|
|
3121
|
+
private surfaceThemes;
|
|
3122
|
+
private surfaceContextTracker;
|
|
3123
|
+
private renderer;
|
|
3124
|
+
rootBoundary: {
|
|
3125
|
+
value: _angular_core.Signal<HTMLElement>;
|
|
3126
|
+
override: _angular_core.WritableSignal<HTMLElement | null>;
|
|
3127
|
+
};
|
|
3128
|
+
component: _angular_core.InputSignal<Type<object>>;
|
|
3129
|
+
componentBindings: _angular_core.InputSignal<Binding[] | undefined>;
|
|
3130
|
+
renderArrow: _angular_core.InputSignal<boolean>;
|
|
3131
|
+
private contentOutlet;
|
|
3132
|
+
animatedLifecycle: _angular_core.WritableSignal<AnimatedLifecycleDirective>;
|
|
3133
|
+
contentComponentRef: _angular_core.WritableSignal<ComponentRef<object> | null>;
|
|
1682
3134
|
constructor();
|
|
1683
|
-
|
|
1684
|
-
|
|
1685
|
-
|
|
1686
|
-
|
|
1687
|
-
|
|
1688
|
-
|
|
1689
|
-
|
|
1690
|
-
|
|
1691
|
-
|
|
1692
|
-
|
|
1693
|
-
|
|
1694
|
-
|
|
1695
|
-
|
|
3135
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayContainerComponent, never>;
|
|
3136
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<OverlayContainerComponent, "et-overlay-container", never, { "component": { "alias": "component"; "required": true; "isSignal": true; }; "componentBindings": { "alias": "componentBindings"; "required": false; "isSignal": true; }; "renderArrow": { "alias": "renderArrow"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof _ethlete_core.AnimatedLifecycleDirective; inputs: {}; outputs: {}; }, { directive: typeof _ethlete_core.ProvideColorDirective; inputs: {}; outputs: {}; }, { directive: typeof _ethlete_core.ProvideSurfaceDirective; inputs: {}; outputs: {}; }]>;
|
|
3137
|
+
}
|
|
3138
|
+
|
|
3139
|
+
/** The name of the model the overlay component must expose to participate in query-param sync. */
|
|
3140
|
+
declare const OVERLAY_QUERY_PARAM_INPUT_NAME = "overlayQueryParam";
|
|
3141
|
+
/** The shape a component must have to be usable with {@link defineQueryParamOverlay}. */
|
|
3142
|
+
type QueryParamOverlayHost = {
|
|
3143
|
+
overlayQueryParam: ModelSignal<any>;
|
|
3144
|
+
};
|
|
3145
|
+
/** Extracts the query param value type from the component's `overlayQueryParam` model. */
|
|
3146
|
+
type QueryParamOverlayValue<TComponent> = TComponent extends {
|
|
3147
|
+
overlayQueryParam: ModelSignal<infer TValue>;
|
|
3148
|
+
} ? Extract<TValue, string> : string;
|
|
3149
|
+
type OverlayDefinitionConfig<TComponent extends object> = OverlayConfig & {
|
|
3150
|
+
/** The overlay component. */
|
|
3151
|
+
component: Type<TComponent>;
|
|
3152
|
+
};
|
|
3153
|
+
type QueryParamOverlayDefinitionConfig<TComponent extends object> = OverlayDefinitionConfig<TComponent> & {
|
|
3154
|
+
/** The query param key that drives the overlay's open/close lifecycle. */
|
|
3155
|
+
queryParamKey: string;
|
|
3156
|
+
};
|
|
3157
|
+
type OverlayDefinition<TComponent extends object = object, TResult = unknown> = {
|
|
3158
|
+
kind: 'overlay';
|
|
3159
|
+
/** The overlay component. */
|
|
3160
|
+
component: Type<TComponent>;
|
|
3161
|
+
/** The base overlay config. Opener- and per-open configs are merged on top of it additively. */
|
|
3162
|
+
config: OverlayConfig;
|
|
3163
|
+
/**
|
|
3164
|
+
* Returns the typed overlay ref. Must be called in the injection context of a component
|
|
3165
|
+
* opened via this definition.
|
|
3166
|
+
* @throws RuntimeError if called outside of an open overlay.
|
|
3167
|
+
*/
|
|
3168
|
+
injectRef: () => OverlayRef<TComponent, TResult>;
|
|
3169
|
+
};
|
|
3170
|
+
type QueryParamOverlayDefinition<TComponent extends object = object, TResult = unknown> = Omit<OverlayDefinition<TComponent, TResult>, 'kind'> & {
|
|
3171
|
+
kind: 'queryParamOverlay';
|
|
3172
|
+
/** The query param key that drives the overlay's open/close lifecycle. */
|
|
3173
|
+
queryParamKey: string;
|
|
3174
|
+
};
|
|
3175
|
+
/**
|
|
3176
|
+
* Defines an overlay at module scope: the component plus its base config (strategies, classes,
|
|
3177
|
+
* bindings, providers, …), without any dependency injection. Consumers turn the definition into
|
|
3178
|
+
* something that can open the overlay via `createOverlayOpener`, and the overlay component
|
|
3179
|
+
* itself accesses its typed ref via `definition.injectRef()`.
|
|
3180
|
+
*
|
|
3181
|
+
* @example
|
|
3182
|
+
* export const productOverlay = defineOverlay<ProductOverlayComponent, ProductResult>({
|
|
3183
|
+
* component: ProductOverlayComponent,
|
|
3184
|
+
* strategies: dialogOverlayStrategy({ maxWidth: '480px' }),
|
|
3185
|
+
* });
|
|
3186
|
+
*/
|
|
3187
|
+
declare const defineOverlay: <TComponent extends object, TResult = unknown>(config: OverlayDefinitionConfig<TComponent>) => OverlayDefinition<TComponent, TResult>;
|
|
3188
|
+
/**
|
|
3189
|
+
* Defines an overlay whose lifecycle is driven by a URL query param: it opens while the param is
|
|
3190
|
+
* present and closes (clearing the param) when dismissed. The component must expose an
|
|
3191
|
+
* `overlayQueryParam` {@link https://angular.dev/api/core/model | model} — it receives the param
|
|
3192
|
+
* value and is kept in two-way sync with the URL.
|
|
3193
|
+
*
|
|
3194
|
+
* Because opens are triggered by URL state, there is no per-open config; `bindings` and
|
|
3195
|
+
* `providers` set on the definition (or on the opener) are applied on every open.
|
|
3196
|
+
*
|
|
3197
|
+
* @example
|
|
3198
|
+
* export const productOverlay = defineQueryParamOverlay({
|
|
3199
|
+
* component: ProductOverlayComponent, // exposes `overlayQueryParam = model<string>()`
|
|
3200
|
+
* queryParamKey: 'product',
|
|
3201
|
+
* strategies: dialogOverlayStrategy({ maxWidth: '480px' }),
|
|
3202
|
+
* });
|
|
3203
|
+
*/
|
|
3204
|
+
declare const defineQueryParamOverlay: <TComponent extends QueryParamOverlayHost, TResult = unknown>(config: QueryParamOverlayDefinitionConfig<TComponent>) => QueryParamOverlayDefinition<TComponent, TResult>;
|
|
1696
3205
|
|
|
1697
|
-
|
|
1698
|
-
|
|
1699
|
-
|
|
1700
|
-
|
|
3206
|
+
declare const OVERLAY_ERROR_CODES: {
|
|
3207
|
+
readonly MISSING_OVERLAY_SURFACE: 1200;
|
|
3208
|
+
readonly TRIGGER_OUTSIDE_OVERLAY: 1201;
|
|
3209
|
+
readonly ANCHOR_OUTSIDE_OVERLAY: 1202;
|
|
3210
|
+
readonly SURFACE_OUTSIDE_OVERLAY: 1203;
|
|
3211
|
+
readonly MULTIPLE_LAYOUT_CLASSES: 1204;
|
|
3212
|
+
readonly NO_CLOSEST_OVERLAY: 1205;
|
|
3213
|
+
readonly NESTED_OVERLAY_MAIN: 1206;
|
|
3214
|
+
readonly REF_OUTSIDE_OVERLAY: 1207;
|
|
1701
3215
|
};
|
|
1702
|
-
|
|
1703
|
-
|
|
1704
|
-
|
|
1705
|
-
private
|
|
3216
|
+
|
|
3217
|
+
declare const OVERLAY_FOOTER_TOKEN: InjectionToken<OverlayFooterDirective>;
|
|
3218
|
+
declare class OverlayFooterDirective implements OnInit {
|
|
3219
|
+
private overlayRef;
|
|
3220
|
+
private elementRef;
|
|
3221
|
+
private overlayManager;
|
|
3222
|
+
ngOnInit(): void;
|
|
3223
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayFooterDirective, never>;
|
|
3224
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<OverlayFooterDirective, "[etOverlayFooter], et-overlay-footer", never, {}, {}, never, never, true, never>;
|
|
3225
|
+
}
|
|
3226
|
+
|
|
3227
|
+
declare const OVERLAY_HEADER_TOKEN: InjectionToken<OverlayHeaderDirective>;
|
|
3228
|
+
declare class OverlayHeaderDirective implements OnInit {
|
|
3229
|
+
private overlayRef;
|
|
3230
|
+
private elementRef;
|
|
3231
|
+
private overlayManager;
|
|
3232
|
+
ngOnInit(): void;
|
|
3233
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayHeaderDirective, never>;
|
|
3234
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<OverlayHeaderDirective, "[etOverlayHeader], et-overlay-header", never, {}, {}, never, never, true, never>;
|
|
3235
|
+
}
|
|
3236
|
+
|
|
3237
|
+
declare const OVERLAY_HEADER_TEMPLATE_TOKEN: InjectionToken<OverlayHeaderTemplateDirective>;
|
|
3238
|
+
declare class OverlayHeaderTemplateDirective implements OnInit, OnDestroy {
|
|
3239
|
+
private overlayRef;
|
|
3240
|
+
private elementRef;
|
|
3241
|
+
template: TemplateRef<unknown>;
|
|
3242
|
+
private overlayManager;
|
|
1706
3243
|
constructor();
|
|
1707
|
-
|
|
1708
|
-
|
|
3244
|
+
ngOnInit(): void;
|
|
3245
|
+
ngOnDestroy(): void;
|
|
3246
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayHeaderTemplateDirective, never>;
|
|
3247
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<OverlayHeaderTemplateDirective, "ng-template[etOverlayHeaderTemplate]", never, {}, {}, never, never, true, never>;
|
|
1709
3248
|
}
|
|
1710
3249
|
|
|
1711
|
-
declare const
|
|
1712
|
-
|
|
1713
|
-
|
|
1714
|
-
|
|
1715
|
-
|
|
1716
|
-
|
|
3250
|
+
declare const OVERLAY_MAIN_TOKEN: InjectionToken<OverlayMainDirective>;
|
|
3251
|
+
declare class OverlayMainDirective implements OnInit {
|
|
3252
|
+
private parent;
|
|
3253
|
+
private elementRef;
|
|
3254
|
+
private overlayRef;
|
|
3255
|
+
private overlayManager;
|
|
3256
|
+
enabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
3257
|
+
ngOnInit(): void;
|
|
3258
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayMainDirective, never>;
|
|
3259
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<OverlayMainDirective, "[etOverlayMain], et-overlay-main", never, { "enabled": { "alias": "etOverlayMain"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3260
|
+
}
|
|
1717
3261
|
|
|
1718
3262
|
type OverlayManager = {
|
|
1719
3263
|
open: <TComponent extends object, TResult = unknown>(component: Type<TComponent>, config?: OverlayConfig) => OverlayRef<TComponent, TResult>;
|
|
@@ -1728,7 +3272,682 @@ declare const injectOverlayManager: {
|
|
|
1728
3272
|
(options: _angular_core.InjectOptions): OverlayManager | null;
|
|
1729
3273
|
};
|
|
1730
3274
|
|
|
3275
|
+
/** Per-open config overrides. The component and `strategies` are fixed by the definition. */
|
|
3276
|
+
type OverlayOpenConfig = Omit<OverlayConfig, 'strategies'>;
|
|
3277
|
+
type OverlayLifecycleConfig<TResult = unknown> = {
|
|
3278
|
+
/** A callback function to be executed once the overlay has been closed */
|
|
3279
|
+
afterClosed?: (result: TResult | null) => void;
|
|
3280
|
+
/** A callback function to be executed before the overlay is closed */
|
|
3281
|
+
beforeClosed?: (result: TResult | null) => void;
|
|
3282
|
+
/** A callback function to be executed once the overlay has been opened */
|
|
3283
|
+
afterOpened?: () => void;
|
|
3284
|
+
};
|
|
3285
|
+
/**
|
|
3286
|
+
* Lifecycle callbacks plus overlay config overrides applied on every open. The config is merged
|
|
3287
|
+
* additively on top of the definition's config (`bindings`, `providers` and class lists are
|
|
3288
|
+
* concatenated; scalars override).
|
|
3289
|
+
*
|
|
3290
|
+
* Note for query-param overlays: an `origin` set here anchors every URL-driven open, including
|
|
3291
|
+
* deep links where the originating element may not exist — omitting it is usually right (the
|
|
3292
|
+
* overlay then falls back to the currently focused element).
|
|
3293
|
+
*/
|
|
3294
|
+
type OverlayOpenerConfig<TResult = unknown> = OverlayLifecycleConfig<TResult> & OverlayOpenConfig;
|
|
3295
|
+
type OverlayOpener<TComponent extends object = object, TResult = unknown> = {
|
|
3296
|
+
/** Open the overlay. Per-open config is merged additively on top of the definition and opener configs. */
|
|
3297
|
+
open: (config?: OverlayOpenConfig) => OverlayRef<TComponent, TResult>;
|
|
3298
|
+
};
|
|
3299
|
+
type QueryParamOverlayOpener<TQueryParam extends string = string> = {
|
|
3300
|
+
/** Open the overlay by writing the given value to the query param. */
|
|
3301
|
+
open: (value: TQueryParam) => void;
|
|
3302
|
+
/** Close the overlay by removing the query param. */
|
|
3303
|
+
close: () => void;
|
|
3304
|
+
};
|
|
3305
|
+
type CreateOverlayOpenerFn = {
|
|
3306
|
+
<TComponent extends object, TResult>(definition: QueryParamOverlayDefinition<TComponent, TResult>, config?: OverlayOpenerConfig<TResult>): QueryParamOverlayOpener<QueryParamOverlayValue<TComponent>>;
|
|
3307
|
+
<TComponent extends object, TResult>(definition: OverlayDefinition<TComponent, TResult>, config?: OverlayOpenerConfig<TResult>): OverlayOpener<TComponent, TResult>;
|
|
3308
|
+
};
|
|
3309
|
+
/**
|
|
3310
|
+
* Creates an opener for the given overlay definition. Must be called in an injection context.
|
|
3311
|
+
*
|
|
3312
|
+
* - For a `defineOverlay` definition the opener exposes `open(config?)`, returning the typed
|
|
3313
|
+
* `OverlayRef`.
|
|
3314
|
+
* - For a `defineQueryParamOverlay` definition the opener drives the overlay through the URL:
|
|
3315
|
+
* `open(value)` writes the query param and `close()` clears it. It also reacts to external
|
|
3316
|
+
* URL changes (deep links, browser navigation) for as long as the injection context lives.
|
|
3317
|
+
*
|
|
3318
|
+
* @example
|
|
3319
|
+
* readonly product = createOverlayOpener(productOverlay, {
|
|
3320
|
+
* afterClosed: (result) => console.log(result),
|
|
3321
|
+
* });
|
|
3322
|
+
*/
|
|
3323
|
+
declare const createOverlayOpener: CreateOverlayOpenerFn;
|
|
3324
|
+
|
|
3325
|
+
/**
|
|
3326
|
+
* Blocks body scrolling while a modal overlay is open.
|
|
3327
|
+
* Register once via `provideOverlay()` (or call `injectOverlayScrollBlocker()` in an environment initializer).
|
|
3328
|
+
*/
|
|
3329
|
+
declare const provideOverlayScrollBlocker: () => _angular_core.Provider[];
|
|
3330
|
+
declare const injectOverlayScrollBlocker: {
|
|
3331
|
+
(): void;
|
|
3332
|
+
(options: _angular_core.InjectOptions & {
|
|
3333
|
+
optional?: false;
|
|
3334
|
+
}): void;
|
|
3335
|
+
(options: _angular_core.InjectOptions): void | null;
|
|
3336
|
+
};
|
|
3337
|
+
|
|
3338
|
+
declare class OverlayTitleDirective implements OnInit {
|
|
3339
|
+
private overlayRef;
|
|
3340
|
+
private elementRef;
|
|
3341
|
+
private overlayManager;
|
|
3342
|
+
private renderer;
|
|
3343
|
+
id: _angular_core.InputSignal<string>;
|
|
3344
|
+
ngOnInit(): void;
|
|
3345
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayTitleDirective, never>;
|
|
3346
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<OverlayTitleDirective, "[et-overlay-title], [etOverlayTitle]", ["etOverlayTitle"], { "id": { "alias": "id"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3347
|
+
}
|
|
3348
|
+
|
|
1731
3349
|
declare const OVERLAY_IMPORTS: readonly [typeof OverlayDirective, typeof OverlayTriggerDirective, typeof OverlayAnchorDirective, typeof OverlaySurfaceDirective];
|
|
3350
|
+
declare const OVERLAY_CONTENT_IMPORTS: readonly [typeof OverlayCloseDirective, typeof OverlayTitleDirective, typeof OverlayHeaderDirective, typeof OverlayBodyComponent, typeof OverlayFooterDirective, typeof OverlayMainDirective];
|
|
3351
|
+
declare const provideOverlay: () => _angular_core.EnvironmentProviders[];
|
|
3352
|
+
|
|
3353
|
+
/**
|
|
3354
|
+
* Opens a query-param overlay declaratively by navigating its query param — the counterpart to
|
|
3355
|
+
* `createOverlayOpener` for links. Takes the overlay definition itself, so the query param key
|
|
3356
|
+
* is never duplicated as a string.
|
|
3357
|
+
*
|
|
3358
|
+
* @example
|
|
3359
|
+
* <a [etQueryParamOverlayLink]="productOverlay" etQueryParamOverlayLinkValue="42">Open product 42</a>
|
|
3360
|
+
*/
|
|
3361
|
+
declare class QueryParamOverlayLinkDirective {
|
|
3362
|
+
private routerLink;
|
|
3363
|
+
/** The query-param overlay definition this link opens. */
|
|
3364
|
+
definition: _angular_core.InputSignal<Pick<QueryParamOverlayDefinition, "queryParamKey">>;
|
|
3365
|
+
/** The query param value the overlay opens with. */
|
|
3366
|
+
value: _angular_core.InputSignal<string | number>;
|
|
3367
|
+
constructor();
|
|
3368
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<QueryParamOverlayLinkDirective, never>;
|
|
3369
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<QueryParamOverlayLinkDirective, "[etQueryParamOverlayLink]", never, { "definition": { "alias": "etQueryParamOverlayLink"; "required": true; "isSignal": true; }; "value": { "alias": "etQueryParamOverlayLinkValue"; "required": true; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.RouterLink; inputs: {}; outputs: {}; }]>;
|
|
3370
|
+
}
|
|
3371
|
+
|
|
3372
|
+
declare const OVERLAY_BACK_OR_CLOSE_TOKEN: InjectionToken<OverlayBackOrCloseDirective>;
|
|
3373
|
+
declare class OverlayBackOrCloseDirective {
|
|
3374
|
+
private overlayRef;
|
|
3375
|
+
private elementRef;
|
|
3376
|
+
private router;
|
|
3377
|
+
disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
3378
|
+
constructor();
|
|
3379
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayBackOrCloseDirective, never>;
|
|
3380
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<OverlayBackOrCloseDirective, "[etOverlayBackOrClose]", never, { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3381
|
+
}
|
|
3382
|
+
|
|
3383
|
+
declare class OverlayRouteHeaderTemplateOutletComponent {
|
|
3384
|
+
protected overlay: {
|
|
3385
|
+
readonly id: string;
|
|
3386
|
+
readonly elements: _ethlete_core.OverlayRuntimeElements | null;
|
|
3387
|
+
config: _ethlete_components.OverlayConfig;
|
|
3388
|
+
headerTemplate: _angular_core.Signal<_angular_core.TemplateRef<unknown> | null>;
|
|
3389
|
+
setHeaderTemplate: (template: _angular_core.TemplateRef<unknown> | null) => void;
|
|
3390
|
+
componentInstance: () => object | null;
|
|
3391
|
+
close: (result?: unknown) => void;
|
|
3392
|
+
closeVia: (source: _ethlete_core.OverlayRuntimeCloseSource, result?: unknown) => void;
|
|
3393
|
+
updatePositionStrategy: (strategy: _ethlete_core.OverlayRuntimePositionStrategy) => void;
|
|
3394
|
+
attachComponentInstanceOverride: (getter: () => object | null) => void;
|
|
3395
|
+
afterOpened: () => rxjs.Observable<void>;
|
|
3396
|
+
beforeClosed: () => rxjs.Observable<unknown>;
|
|
3397
|
+
afterClosed: () => rxjs.Observable<unknown>;
|
|
3398
|
+
attachRuntime: (runtimeRef: _ethlete_core.OverlayRuntimeRef<object, unknown>) => void;
|
|
3399
|
+
};
|
|
3400
|
+
protected router: _ethlete_components.OverlayRouter;
|
|
3401
|
+
animatedLifecycle: _angular_core.Signal<AnimatedLifecycleDirective>;
|
|
3402
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayRouteHeaderTemplateOutletComponent, never>;
|
|
3403
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<OverlayRouteHeaderTemplateOutletComponent, "et-overlay-route-header-template-outlet", never, {}, {}, never, never, true, never>;
|
|
3404
|
+
}
|
|
3405
|
+
|
|
3406
|
+
declare const OVERLAY_ROUTER_CONFIG_TOKEN: InjectionToken<OverlayRouterConfig>;
|
|
3407
|
+
type OverlayRoute = {
|
|
3408
|
+
/** The component to render. */
|
|
3409
|
+
component: Type<unknown>;
|
|
3410
|
+
/**
|
|
3411
|
+
* The route of the page.
|
|
3412
|
+
*
|
|
3413
|
+
* @example
|
|
3414
|
+
* "/" // The root route
|
|
3415
|
+
* "/two" // The route "two"
|
|
3416
|
+
*/
|
|
3417
|
+
path: `/${string}`;
|
|
3418
|
+
/** The inputs to pass to the component. Signal values are unwrapped. */
|
|
3419
|
+
inputs?: Record<string, unknown>;
|
|
3420
|
+
/**
|
|
3421
|
+
* Overrides the animation direction used when navigating to or away from this route.
|
|
3422
|
+
* Useful for routes that conceptually sit "before" the others, like a sidebar page that
|
|
3423
|
+
* should slide in from the left. An explicit direction passed to `navigate()` always wins.
|
|
3424
|
+
*/
|
|
3425
|
+
navigationDirection?: {
|
|
3426
|
+
/** Direction to play when this route becomes active. */
|
|
3427
|
+
to?: OverlayRouterNavigationDirection;
|
|
3428
|
+
/** Direction to play when navigating away from this route. */
|
|
3429
|
+
from?: OverlayRouterNavigationDirection;
|
|
3430
|
+
};
|
|
3431
|
+
};
|
|
3432
|
+
type OverlayRouterConfig = {
|
|
3433
|
+
/** The routes to be able to navigate to. */
|
|
3434
|
+
routes: OverlayRoute[];
|
|
3435
|
+
/**
|
|
3436
|
+
* The route on which to start.
|
|
3437
|
+
* @default routes[0].path // The first route, or "/" if none is defined
|
|
3438
|
+
*/
|
|
3439
|
+
initialRoute?: string;
|
|
3440
|
+
/**
|
|
3441
|
+
* Mirror the active overlay route into the browser URL as a query param, enabling deep-linking and
|
|
3442
|
+
* browser back/forward integration. Requires the Angular `Router` to be available.
|
|
3443
|
+
*
|
|
3444
|
+
* @default false
|
|
3445
|
+
*/
|
|
3446
|
+
syncUrl?: boolean;
|
|
3447
|
+
};
|
|
3448
|
+
type OverlayRouterNavigationDirection = 'forward' | 'backward';
|
|
3449
|
+
type OverlayRouterNavigateConfig = {
|
|
3450
|
+
navigationDirection?: OverlayRouterNavigationDirection;
|
|
3451
|
+
};
|
|
3452
|
+
type OverlayRouterTransitionType = 'slide' | 'fade' | 'overlay' | 'vertical' | 'none';
|
|
3453
|
+
type OverlayRouterResolvedPath = {
|
|
3454
|
+
route: string;
|
|
3455
|
+
type: 'back' | 'replace-current' | 'absolute' | 'forward';
|
|
3456
|
+
};
|
|
3457
|
+
type OverlayRouter = {
|
|
3458
|
+
/** The current route, but delayed by one frame to ensure that the needed animation classes are applied. */
|
|
3459
|
+
currentRoute: Signal<string>;
|
|
3460
|
+
/** Routes registered at runtime in addition to the configured ones. */
|
|
3461
|
+
extraRoutes: WritableSignal<OverlayRoute[]>;
|
|
3462
|
+
/** The transition to play when navigating between routes. */
|
|
3463
|
+
transitionType: WritableSignal<OverlayRouterTransitionType>;
|
|
3464
|
+
/** The direction of the current navigation. */
|
|
3465
|
+
navigationDirection: WritableSignal<OverlayRouterNavigationDirection>;
|
|
3466
|
+
/** Whether an in-memory history entry exists to go back to. */
|
|
3467
|
+
canGoBack: Signal<boolean>;
|
|
3468
|
+
/** All navigable routes (configured + extra) with signal inputs unwrapped. */
|
|
3469
|
+
routes: Signal<OverlayRoute[]>;
|
|
3470
|
+
/** The route currently being displayed. */
|
|
3471
|
+
currentPage: Signal<OverlayRoute | null>;
|
|
3472
|
+
navigate: (route: string | (string | number)[], config?: OverlayRouterNavigateConfig) => void;
|
|
3473
|
+
back: () => boolean;
|
|
3474
|
+
resolvePath: (route: string | (string | number)[]) => OverlayRouterResolvedPath;
|
|
3475
|
+
addRoute: (route: OverlayRoute) => void;
|
|
3476
|
+
removeRoute: (path: string) => void;
|
|
3477
|
+
/** @internal Returns `true` when the route actually changed. */
|
|
3478
|
+
updateCurrentRoute: (route: string) => boolean;
|
|
3479
|
+
/** @internal */
|
|
3480
|
+
navigateToInitialRoute: () => void;
|
|
3481
|
+
};
|
|
3482
|
+
declare const provideOverlayRouterService: () => Provider[];
|
|
3483
|
+
declare const injectOverlayRouter: {
|
|
3484
|
+
(): OverlayRouter;
|
|
3485
|
+
(options: _angular_core.InjectOptions & {
|
|
3486
|
+
optional?: false;
|
|
3487
|
+
}): OverlayRouter;
|
|
3488
|
+
(options: _angular_core.InjectOptions): OverlayRouter | null;
|
|
3489
|
+
};
|
|
3490
|
+
declare const OVERLAY_ROUTER_TOKEN: InjectionToken<OverlayRouter>;
|
|
3491
|
+
declare const provideOverlayRouterConfig: (config: OverlayRouterConfig) => Provider[];
|
|
3492
|
+
/**
|
|
3493
|
+
* Provides both the overlay router config and the overlay router itself, so a consumer only needs
|
|
3494
|
+
* a single entry in the overlay's `providers` instead of wiring the router separately.
|
|
3495
|
+
*
|
|
3496
|
+
* @example
|
|
3497
|
+
* overlayManager.open(MyOverlay, {
|
|
3498
|
+
* strategies: dialogOverlayStrategy(),
|
|
3499
|
+
* providers: [provideOverlayRouter({ routes: [...] })],
|
|
3500
|
+
* });
|
|
3501
|
+
*/
|
|
3502
|
+
declare const provideOverlayRouter: (config: OverlayRouterConfig) => Provider[];
|
|
3503
|
+
|
|
3504
|
+
declare const OVERLAY_ROUTER_LINK_TOKEN: InjectionToken<OverlayRouterLinkDirective>;
|
|
3505
|
+
declare class OverlayRouterLinkDirective {
|
|
3506
|
+
private elementRef;
|
|
3507
|
+
private router;
|
|
3508
|
+
path: _angular_core.InputSignal<string | (string | number)[]>;
|
|
3509
|
+
disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
3510
|
+
navigationDirection: _angular_core.InputSignal<OverlayRouterNavigationDirection | null>;
|
|
3511
|
+
isActive: _angular_core.Signal<boolean>;
|
|
3512
|
+
constructor();
|
|
3513
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayRouterLinkDirective, never>;
|
|
3514
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<OverlayRouterLinkDirective, "[etOverlayRouterLink]", never, { "path": { "alias": "etOverlayRouterLink"; "required": true; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "navigationDirection": { "alias": "navigationDirection"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
3515
|
+
}
|
|
3516
|
+
|
|
3517
|
+
declare const OVERLAY_ROUTER_OUTLET_DISABLED_TEMPLATE_TOKEN: InjectionToken<OverlayRouterOutletDisabledTemplateDirective>;
|
|
3518
|
+
declare class OverlayRouterOutletDisabledTemplateDirective {
|
|
3519
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayRouterOutletDisabledTemplateDirective, never>;
|
|
3520
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<OverlayRouterOutletDisabledTemplateDirective, "ng-template[etOverlayRouterOutletDisabledTemplate]", never, {}, {}, never, never, true, never>;
|
|
3521
|
+
}
|
|
3522
|
+
|
|
3523
|
+
declare const OVERLAY_ROUTER_OUTLET_TOKEN: InjectionToken<OverlayRouterOutletComponent>;
|
|
3524
|
+
declare class OverlayRouterOutletComponent {
|
|
3525
|
+
private injector;
|
|
3526
|
+
private overlayRef;
|
|
3527
|
+
private elementRef;
|
|
3528
|
+
private document;
|
|
3529
|
+
protected router: _ethlete_components.OverlayRouter;
|
|
3530
|
+
private renderer;
|
|
3531
|
+
disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
3532
|
+
sharedRouteTemplate: _angular_core.Signal<TemplateRef<any> | undefined>;
|
|
3533
|
+
outletDisabledTemplate: _angular_core.Signal<TemplateRef<any> | undefined>;
|
|
3534
|
+
pageWrappers: _angular_core.Signal<readonly ElementRef<HTMLElement>[]>;
|
|
3535
|
+
readonly hasSidebar: boolean;
|
|
3536
|
+
wasDisabled: _angular_core.WritableSignal<boolean>;
|
|
3537
|
+
keepDisabledTransition: _angular_core.Signal<boolean>;
|
|
3538
|
+
activePageElement: _angular_core.Signal<HTMLElement | null>;
|
|
3539
|
+
protected transitionType: _angular_core.Signal<_ethlete_components.OverlayRouterTransitionType>;
|
|
3540
|
+
constructor();
|
|
3541
|
+
scrollActivePageTo(options?: ScrollToOptions | undefined): void;
|
|
3542
|
+
disabledPageAnimationStateChange(state: AnimatedLifecycleState): void;
|
|
3543
|
+
/**
|
|
3544
|
+
* Moves focus into the freshly navigated page, mirroring the overlay's own open-time focus behaviour
|
|
3545
|
+
* (first-tabbable by default, so buttons/inputs win over headings). Falls back to the page wrapper when
|
|
3546
|
+
* the page has nothing tabbable. Respects the overlay's `autoFocus` config, including `false`.
|
|
3547
|
+
*/
|
|
3548
|
+
private focusActivePage;
|
|
3549
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayRouterOutletComponent, never>;
|
|
3550
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<OverlayRouterOutletComponent, "et-overlay-router-outlet", never, { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, ["sharedRouteTemplate", "outletDisabledTemplate"], ["*"], true, never>;
|
|
3551
|
+
}
|
|
3552
|
+
|
|
3553
|
+
declare class OverlaySharedRouteTemplateOutletComponent {
|
|
3554
|
+
protected routerOutlet: _ethlete_components.OverlayRouterOutletComponent;
|
|
3555
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlaySharedRouteTemplateOutletComponent, never>;
|
|
3556
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<OverlaySharedRouteTemplateOutletComponent, "et-overlay-shared-route-template-outlet", never, {}, {}, never, never, true, never>;
|
|
3557
|
+
}
|
|
3558
|
+
|
|
3559
|
+
declare const OVERLAY_SHARED_ROUTE_TEMPLATE_TOKEN: InjectionToken<OverlaySharedRouteTemplateDirective>;
|
|
3560
|
+
declare class OverlaySharedRouteTemplateDirective {
|
|
3561
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlaySharedRouteTemplateDirective, never>;
|
|
3562
|
+
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<OverlaySharedRouteTemplateDirective, "ng-template[etOverlaySharedRouteTemplate]", never, {}, {}, never, never, true, never>;
|
|
3563
|
+
}
|
|
3564
|
+
|
|
3565
|
+
declare class OverlaySidebarPageComponent {
|
|
3566
|
+
headerTemplate: _angular_core.InputSignal<OverlayHeaderTemplateDirective | null>;
|
|
3567
|
+
bodyTemplate: _angular_core.InputSignal<TemplateRef<unknown> | null>;
|
|
3568
|
+
pageDividers: _angular_core.InputSignal<OverlayBodyDividerType>;
|
|
3569
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlaySidebarPageComponent, never>;
|
|
3570
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<OverlaySidebarPageComponent, "et-overlay-sidebar-page", never, { "headerTemplate": { "alias": "headerTemplate"; "required": true; "isSignal": true; }; "bodyTemplate": { "alias": "bodyTemplate"; "required": true; "isSignal": true; }; "pageDividers": { "alias": "pageDividers"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof OverlayMainDirective; inputs: {}; outputs: {}; }]>;
|
|
3571
|
+
}
|
|
3572
|
+
|
|
3573
|
+
declare class OverlaySidebarComponent {
|
|
3574
|
+
protected sidebar: _ethlete_components.SidebarOverlay;
|
|
3575
|
+
pageDividers: _angular_core.InputSignal<OverlayBodyDividerType>;
|
|
3576
|
+
sidebarContent: _angular_core.Signal<TemplateRef<unknown>>;
|
|
3577
|
+
sidebarHeaderContent: _angular_core.Signal<_ethlete_components.OverlayHeaderTemplateDirective | undefined>;
|
|
3578
|
+
constructor();
|
|
3579
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlaySidebarComponent, never>;
|
|
3580
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<OverlaySidebarComponent, "et-overlay-sidebar", never, { "pageDividers": { "alias": "pageDividers"; "required": false; "isSignal": true; }; }, {}, ["sidebarHeaderContent"], ["*"], true, never>;
|
|
3581
|
+
}
|
|
3582
|
+
|
|
3583
|
+
declare const SIDEBAR_OVERLAY_CONFIG: InjectionToken<SidebarOverlayConfig>;
|
|
3584
|
+
type SidebarOverlayConfig = {
|
|
3585
|
+
/**
|
|
3586
|
+
* On mobile devices, the sidebar is shown as a separate page that can be navigated to.
|
|
3587
|
+
* This is the route to that sidebar page.
|
|
3588
|
+
*
|
|
3589
|
+
* @default "/sidebar"
|
|
3590
|
+
*/
|
|
3591
|
+
sidebarPageRoute?: `/${string}`;
|
|
3592
|
+
/**
|
|
3593
|
+
* The width from which the sidebar renders inline (rather than collapsing into a page). Compared
|
|
3594
|
+
* against the overlay's own pane width — not the viewport — so a narrow dialog collapses its
|
|
3595
|
+
* sidebar even on a wide screen. Can be a breakpoint name or a pixel number. Works best with an
|
|
3596
|
+
* overlay that has a defined width.
|
|
3597
|
+
*
|
|
3598
|
+
* @default "md"
|
|
3599
|
+
*/
|
|
3600
|
+
renderSidebarFrom?: Breakpoint | number;
|
|
3601
|
+
};
|
|
3602
|
+
type SidebarOverlay = {
|
|
3603
|
+
/** Whether the sidebar renders inline (`true`) or is collapsed into a navigable page (`false`). */
|
|
3604
|
+
renderSidebar: Signal<boolean>;
|
|
3605
|
+
sidebarContentTemplate: WritableSignal<TemplateRef<unknown> | null>;
|
|
3606
|
+
sidebarHeaderTemplate: WritableSignal<OverlayHeaderTemplateDirective | null>;
|
|
3607
|
+
sidebarPageDividers: WritableSignal<OverlayBodyDividerType>;
|
|
3608
|
+
};
|
|
3609
|
+
declare const provideSidebarOverlayService: () => Provider[];
|
|
3610
|
+
declare const injectSidebarOverlay: {
|
|
3611
|
+
(): SidebarOverlay;
|
|
3612
|
+
(options: _angular_core.InjectOptions & {
|
|
3613
|
+
optional?: false;
|
|
3614
|
+
}): SidebarOverlay;
|
|
3615
|
+
(options: _angular_core.InjectOptions): SidebarOverlay | null;
|
|
3616
|
+
};
|
|
3617
|
+
declare const SIDEBAR_OVERLAY_TOKEN: InjectionToken<SidebarOverlay>;
|
|
3618
|
+
declare const provideSidebarOverlayConfig: (config: SidebarOverlayConfig) => Provider[];
|
|
3619
|
+
/**
|
|
3620
|
+
* Provides both the sidebar config and the sidebar overlay service in one call, mirroring
|
|
3621
|
+
* {@link provideOverlayRouter}. Requires an overlay router to also be provided.
|
|
3622
|
+
*/
|
|
3623
|
+
declare const provideSidebarOverlay: (config?: SidebarOverlayConfig) => Provider[];
|
|
3624
|
+
|
|
3625
|
+
type AnchoredOverlayStrategyOptions = {
|
|
3626
|
+
containerClass?: string | string[];
|
|
3627
|
+
hostClass?: string | string[];
|
|
3628
|
+
maxWidth?: number | string;
|
|
3629
|
+
maxHeight?: number | string;
|
|
3630
|
+
minWidth?: number | string;
|
|
3631
|
+
minHeight?: number | string;
|
|
3632
|
+
placement?: Placement;
|
|
3633
|
+
fallbackPlacements?: Placement[];
|
|
3634
|
+
offset?: OffsetOptions | null;
|
|
3635
|
+
arrowPadding?: Padding | null;
|
|
3636
|
+
viewportPadding?: Padding | null;
|
|
3637
|
+
shift?: boolean | OverlayRuntimeShiftOptions;
|
|
3638
|
+
autoResize?: boolean;
|
|
3639
|
+
autoHide?: boolean;
|
|
3640
|
+
autoCloseIfReferenceHidden?: boolean;
|
|
3641
|
+
mirrorWidth?: boolean;
|
|
3642
|
+
/** Render a floating-ui-positioned arrow on the container pointing at the origin. */
|
|
3643
|
+
arrow?: boolean;
|
|
3644
|
+
};
|
|
3645
|
+
type CenteredOverlayStrategyOptions = {
|
|
3646
|
+
containerClass?: string | string[];
|
|
3647
|
+
hostClass?: string | string[];
|
|
3648
|
+
maxWidth?: number | string;
|
|
3649
|
+
maxHeight?: number | string;
|
|
3650
|
+
minWidth?: number | string;
|
|
3651
|
+
minHeight?: number | string;
|
|
3652
|
+
};
|
|
3653
|
+
type AnchoredPositionOptions = Pick<AnchoredOverlayStrategyOptions, 'placement' | 'fallbackPlacements' | 'offset' | 'arrowPadding' | 'viewportPadding' | 'shift' | 'autoResize' | 'autoHide' | 'autoCloseIfReferenceHidden' | 'mirrorWidth'>;
|
|
3654
|
+
declare const buildAnchoredRuntimePositionStrategy: (options?: AnchoredPositionOptions) => (origin?: HTMLElement) => OverlayRuntimePositionStrategy;
|
|
3655
|
+
declare const anchoredOverlayStrategy: (options?: AnchoredOverlayStrategyOptions) => (() => OverlayStrategyBreakpoint[]);
|
|
3656
|
+
declare const centeredOverlayStrategy: (options?: CenteredOverlayStrategyOptions) => (() => OverlayStrategyBreakpoint[]);
|
|
3657
|
+
|
|
3658
|
+
type AnchoredDialogOverlayStrategyOptions = Partial<OverlayBreakpointConfig> & AnchoredPositionOptions;
|
|
3659
|
+
declare const provideAnchoredDialogStrategyDefaults: (valueOverride?: Partial<OverlayBreakpointConfig> | undefined) => _angular_core.Provider[];
|
|
3660
|
+
declare const injectAnchoredDialogStrategyDefaults: {
|
|
3661
|
+
(): OverlayBreakpointConfig;
|
|
3662
|
+
(options: _angular_core.InjectOptions & {
|
|
3663
|
+
optional?: false;
|
|
3664
|
+
}): OverlayBreakpointConfig;
|
|
3665
|
+
(options: _angular_core.InjectOptions): OverlayBreakpointConfig | null;
|
|
3666
|
+
};
|
|
3667
|
+
declare const provideAnchoredDialogStrategy: () => _angular_core.Provider[];
|
|
3668
|
+
declare const injectAnchoredDialogStrategy: {
|
|
3669
|
+
(): {
|
|
3670
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => OverlayStrategy;
|
|
3671
|
+
};
|
|
3672
|
+
(options: _angular_core.InjectOptions & {
|
|
3673
|
+
optional?: false;
|
|
3674
|
+
}): {
|
|
3675
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => OverlayStrategy;
|
|
3676
|
+
};
|
|
3677
|
+
(options: _angular_core.InjectOptions): {
|
|
3678
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => OverlayStrategy;
|
|
3679
|
+
} | null;
|
|
3680
|
+
};
|
|
3681
|
+
declare const anchoredDialogOverlayStrategy: (options?: AnchoredDialogOverlayStrategyOptions) => (() => OverlayStrategyBreakpoint[]);
|
|
3682
|
+
|
|
3683
|
+
declare const provideBottomSheetStrategyDefaults: (valueOverride?: Partial<OverlayBreakpointConfig> | undefined) => _angular_core.Provider[];
|
|
3684
|
+
declare const injectBottomSheetStrategyDefaults: {
|
|
3685
|
+
(): OverlayBreakpointConfig;
|
|
3686
|
+
(options: _angular_core.InjectOptions & {
|
|
3687
|
+
optional?: false;
|
|
3688
|
+
}): OverlayBreakpointConfig;
|
|
3689
|
+
(options: _angular_core.InjectOptions): OverlayBreakpointConfig | null;
|
|
3690
|
+
};
|
|
3691
|
+
declare const provideBottomSheetStrategy: () => _angular_core.Provider[];
|
|
3692
|
+
declare const injectBottomSheetStrategy: {
|
|
3693
|
+
(): {
|
|
3694
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => _ethlete_components.OverlayStrategy;
|
|
3695
|
+
};
|
|
3696
|
+
(options: _angular_core.InjectOptions & {
|
|
3697
|
+
optional?: false;
|
|
3698
|
+
}): {
|
|
3699
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => _ethlete_components.OverlayStrategy;
|
|
3700
|
+
};
|
|
3701
|
+
(options: _angular_core.InjectOptions): {
|
|
3702
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => _ethlete_components.OverlayStrategy;
|
|
3703
|
+
} | null;
|
|
3704
|
+
};
|
|
3705
|
+
declare const bottomSheetOverlayStrategy: (config?: Partial<OverlayBreakpointConfig>) => (() => OverlayStrategyBreakpoint[]);
|
|
3706
|
+
|
|
3707
|
+
declare const provideDialogStrategyDefaults: (valueOverride?: Partial<OverlayBreakpointConfig> | undefined) => _angular_core.Provider[];
|
|
3708
|
+
declare const injectDialogStrategyDefaults: {
|
|
3709
|
+
(): OverlayBreakpointConfig;
|
|
3710
|
+
(options: _angular_core.InjectOptions & {
|
|
3711
|
+
optional?: false;
|
|
3712
|
+
}): OverlayBreakpointConfig;
|
|
3713
|
+
(options: _angular_core.InjectOptions): OverlayBreakpointConfig | null;
|
|
3714
|
+
};
|
|
3715
|
+
declare const provideDialogStrategy: () => _angular_core.Provider[];
|
|
3716
|
+
declare const injectDialogStrategy: {
|
|
3717
|
+
(): {
|
|
3718
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => OverlayStrategy;
|
|
3719
|
+
};
|
|
3720
|
+
(options: _angular_core.InjectOptions & {
|
|
3721
|
+
optional?: false;
|
|
3722
|
+
}): {
|
|
3723
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => OverlayStrategy;
|
|
3724
|
+
};
|
|
3725
|
+
(options: _angular_core.InjectOptions): {
|
|
3726
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => OverlayStrategy;
|
|
3727
|
+
} | null;
|
|
3728
|
+
};
|
|
3729
|
+
declare const dialogOverlayStrategy: (config?: Partial<OverlayBreakpointConfig>) => (() => OverlayStrategyBreakpoint[]);
|
|
3730
|
+
|
|
3731
|
+
declare const provideFullscreenDialogStrategyDefaults: (valueOverride?: Partial<OverlayBreakpointConfig> | undefined) => _angular_core.Provider[];
|
|
3732
|
+
declare const injectFullscreenDialogStrategyDefaults: {
|
|
3733
|
+
(): OverlayBreakpointConfig;
|
|
3734
|
+
(options: _angular_core.InjectOptions & {
|
|
3735
|
+
optional?: false;
|
|
3736
|
+
}): OverlayBreakpointConfig;
|
|
3737
|
+
(options: _angular_core.InjectOptions): OverlayBreakpointConfig | null;
|
|
3738
|
+
};
|
|
3739
|
+
declare const provideFullscreenDialogStrategy: () => _angular_core.Provider[];
|
|
3740
|
+
declare const injectFullscreenDialogStrategy: {
|
|
3741
|
+
(): {
|
|
3742
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => OverlayStrategy;
|
|
3743
|
+
};
|
|
3744
|
+
(options: _angular_core.InjectOptions & {
|
|
3745
|
+
optional?: false;
|
|
3746
|
+
}): {
|
|
3747
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => OverlayStrategy;
|
|
3748
|
+
};
|
|
3749
|
+
(options: _angular_core.InjectOptions): {
|
|
3750
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => OverlayStrategy;
|
|
3751
|
+
} | null;
|
|
3752
|
+
};
|
|
3753
|
+
declare const fullScreenDialogOverlayStrategy: (config?: Partial<OverlayBreakpointConfig>) => (() => OverlayStrategyBreakpoint[]);
|
|
3754
|
+
|
|
3755
|
+
declare class OverlayOriginCloneComponent {
|
|
3756
|
+
animatedLifecycle: AnimatedLifecycleDirective;
|
|
3757
|
+
static ɵfac: _angular_core.ɵɵFactoryDeclaration<OverlayOriginCloneComponent, never>;
|
|
3758
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<OverlayOriginCloneComponent, "et-overlay-origin-clone", never, {}, {}, never, ["*"], true, [{ directive: typeof _ethlete_core.AnimatedLifecycleDirective; inputs: {}; outputs: {}; }]>;
|
|
3759
|
+
}
|
|
3760
|
+
|
|
3761
|
+
type ViewportTransformData = {
|
|
3762
|
+
viewportWidth: number;
|
|
3763
|
+
viewportHeight: number;
|
|
3764
|
+
rect: DOMRect;
|
|
3765
|
+
scaleUpX: number;
|
|
3766
|
+
scaleUpY: number;
|
|
3767
|
+
viewportCenterX: number;
|
|
3768
|
+
viewportCenterY: number;
|
|
3769
|
+
buttonCenterX: number;
|
|
3770
|
+
buttonCenterY: number;
|
|
3771
|
+
cloneTranslateX: number;
|
|
3772
|
+
cloneTranslateY: number;
|
|
3773
|
+
containerTranslateX: number;
|
|
3774
|
+
containerTranslateY: number;
|
|
3775
|
+
scaleX: number;
|
|
3776
|
+
scaleY: number;
|
|
3777
|
+
};
|
|
3778
|
+
type FullscreenAnimationCancellable = {
|
|
3779
|
+
unsubscribe: () => void;
|
|
3780
|
+
};
|
|
3781
|
+
type FullscreenAnimationState = {
|
|
3782
|
+
readonly originElement: HTMLElement | null;
|
|
3783
|
+
readonly cloneComponentRef: ComponentRef<OverlayOriginCloneComponent> | null;
|
|
3784
|
+
readonly subscriptions: FullscreenAnimationCancellable[];
|
|
3785
|
+
readonly isOriginHidden: boolean;
|
|
3786
|
+
};
|
|
3787
|
+
type FullscreenAnimationDeps = {
|
|
3788
|
+
readonly injector: EnvironmentInjector;
|
|
3789
|
+
readonly document: Document;
|
|
3790
|
+
readonly appRef: ApplicationRef;
|
|
3791
|
+
readonly renderer: AngularRenderer;
|
|
3792
|
+
};
|
|
3793
|
+
declare const cleanupFullscreenAnimationStyles: (options: {
|
|
3794
|
+
containerEl: HTMLElement;
|
|
3795
|
+
renderer: AngularRenderer;
|
|
3796
|
+
state: FullscreenAnimationState | null;
|
|
3797
|
+
}) => void;
|
|
3798
|
+
declare const startFullscreenEnterAnimation: (options: {
|
|
3799
|
+
context: OverlayStrategyContext;
|
|
3800
|
+
deps: FullscreenAnimationDeps;
|
|
3801
|
+
applyTransformOrigin: boolean;
|
|
3802
|
+
skipAnimation: boolean;
|
|
3803
|
+
}) => FullscreenAnimationState;
|
|
3804
|
+
declare const startFullscreenLeaveAnimation: (options: {
|
|
3805
|
+
context: OverlayStrategyContext;
|
|
3806
|
+
state: FullscreenAnimationState;
|
|
3807
|
+
deps: FullscreenAnimationDeps;
|
|
3808
|
+
applyTransformOrigin: boolean;
|
|
3809
|
+
}) => FullscreenAnimationState;
|
|
3810
|
+
declare const cleanupFullscreenAnimation: (state: FullscreenAnimationState, deps: FullscreenAnimationDeps) => void;
|
|
3811
|
+
declare const abortFullscreenAnimation: (options: {
|
|
3812
|
+
context: OverlayStrategyContext;
|
|
3813
|
+
state: FullscreenAnimationState;
|
|
3814
|
+
deps: FullscreenAnimationDeps;
|
|
3815
|
+
}) => void;
|
|
3816
|
+
|
|
3817
|
+
declare const provideLeftSheetStrategyDefaults: (valueOverride?: Partial<OverlayBreakpointConfig> | undefined) => _angular_core.Provider[];
|
|
3818
|
+
declare const injectLeftSheetStrategyDefaults: {
|
|
3819
|
+
(): OverlayBreakpointConfig;
|
|
3820
|
+
(options: _angular_core.InjectOptions & {
|
|
3821
|
+
optional?: false;
|
|
3822
|
+
}): OverlayBreakpointConfig;
|
|
3823
|
+
(options: _angular_core.InjectOptions): OverlayBreakpointConfig | null;
|
|
3824
|
+
};
|
|
3825
|
+
declare const provideLeftSheetStrategy: () => _angular_core.Provider[];
|
|
3826
|
+
declare const injectLeftSheetStrategy: {
|
|
3827
|
+
(): {
|
|
3828
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => _ethlete_components.OverlayStrategy;
|
|
3829
|
+
};
|
|
3830
|
+
(options: _angular_core.InjectOptions & {
|
|
3831
|
+
optional?: false;
|
|
3832
|
+
}): {
|
|
3833
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => _ethlete_components.OverlayStrategy;
|
|
3834
|
+
};
|
|
3835
|
+
(options: _angular_core.InjectOptions): {
|
|
3836
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => _ethlete_components.OverlayStrategy;
|
|
3837
|
+
} | null;
|
|
3838
|
+
};
|
|
3839
|
+
declare const leftSheetOverlayStrategy: (config?: Partial<OverlayBreakpointConfig>) => (() => OverlayStrategyBreakpoint[]);
|
|
3840
|
+
|
|
3841
|
+
type DragToDismissContext = {
|
|
3842
|
+
element: HTMLElement;
|
|
3843
|
+
overlayRef: OverlayRef<object, unknown>;
|
|
3844
|
+
config: OverlayDragToDismissConfig;
|
|
3845
|
+
renderer: AngularRenderer;
|
|
3846
|
+
};
|
|
3847
|
+
type DragToDismissRef = {
|
|
3848
|
+
unsubscribe: () => void;
|
|
3849
|
+
};
|
|
3850
|
+
/**
|
|
3851
|
+
* Enables drag-to-dismiss functionality on an overlay element.
|
|
3852
|
+
* Returns a cleanup function to disable the feature.
|
|
3853
|
+
*/
|
|
3854
|
+
declare const enableDragToDismiss: (context: DragToDismissContext) => DragToDismissRef;
|
|
3855
|
+
|
|
3856
|
+
declare const isHtmlElement: (element: unknown) => element is HTMLElement;
|
|
3857
|
+
declare const isTouchEvent: (event: Event) => event is TouchEvent;
|
|
3858
|
+
declare const isPointerEvent: (event: Event) => event is PointerEvent;
|
|
3859
|
+
declare const findNextRelevantHtmlElement: (element: HTMLElement | null, depth?: number) => HTMLElement | null;
|
|
3860
|
+
declare const getOriginCoordinatesAndDimensions: (origin: HTMLElement | Event | undefined) => {
|
|
3861
|
+
x: number;
|
|
3862
|
+
y: number;
|
|
3863
|
+
width: number;
|
|
3864
|
+
height: number;
|
|
3865
|
+
element: HTMLElement;
|
|
3866
|
+
} | null;
|
|
3867
|
+
|
|
3868
|
+
declare const OVERLAY_CONFIG_CLASS_KEYS: Set<string>;
|
|
3869
|
+
declare const mergeOverlayBreakpointConfigs: (...configs: OverlayBreakpointConfig[]) => OverlayBreakpointConfig;
|
|
3870
|
+
|
|
3871
|
+
type OverlayStrategyControllerMountConfig = {
|
|
3872
|
+
positionStrategy: OverlayRuntimePositionStrategy;
|
|
3873
|
+
paneClass: string[];
|
|
3874
|
+
hostClass: string[];
|
|
3875
|
+
backdropClass: string[];
|
|
3876
|
+
animationDelegate: OverlayRuntimeAnimationDelegate;
|
|
3877
|
+
renderArrow: boolean;
|
|
3878
|
+
hasBackdrop: boolean | undefined;
|
|
3879
|
+
};
|
|
3880
|
+
type OverlayStrategyController = {
|
|
3881
|
+
/** Values the overlay manager merges into the runtime mount config before mounting. */
|
|
3882
|
+
initialMountConfig: OverlayStrategyControllerMountConfig;
|
|
3883
|
+
/** Wires strategy lifecycle hooks and breakpoint switching. Must be called right after mounting. */
|
|
3884
|
+
attach: (runtimeRef: OverlayRuntimeRef<object, unknown>, overlayRef: OverlayRef<object, unknown>) => void;
|
|
3885
|
+
};
|
|
3886
|
+
declare const createOverlayStrategyController: (config: OverlayConfig, parentInjector: EnvironmentInjector) => OverlayStrategyController;
|
|
3887
|
+
|
|
3888
|
+
declare const transformingBottomSheetToDialogOverlayStrategy: (customConfig?: {
|
|
3889
|
+
bottomSheet?: OverlayBreakpointConfig;
|
|
3890
|
+
dialog?: OverlayBreakpointConfig;
|
|
3891
|
+
breakpoint?: Breakpoint | number;
|
|
3892
|
+
}) => (() => OverlayStrategyBreakpoint[]);
|
|
3893
|
+
declare const transformingFullScreenDialogToRightSheetOverlayStrategy: (customConfig?: {
|
|
3894
|
+
fullScreenDialog?: OverlayBreakpointConfig;
|
|
3895
|
+
rightSheet?: OverlayBreakpointConfig;
|
|
3896
|
+
breakpoint?: Breakpoint | number;
|
|
3897
|
+
}) => (() => OverlayStrategyBreakpoint[]);
|
|
3898
|
+
declare const transformingFullScreenDialogToDialogOverlayStrategy: (customConfig?: {
|
|
3899
|
+
fullScreenDialog?: OverlayBreakpointConfig;
|
|
3900
|
+
dialog?: OverlayBreakpointConfig;
|
|
3901
|
+
breakpoint?: Breakpoint | number;
|
|
3902
|
+
}) => (() => OverlayStrategyBreakpoint[]);
|
|
3903
|
+
|
|
3904
|
+
declare const provideRightSheetStrategyDefaults: (valueOverride?: Partial<OverlayBreakpointConfig> | undefined) => _angular_core.Provider[];
|
|
3905
|
+
declare const injectRightSheetStrategyDefaults: {
|
|
3906
|
+
(): OverlayBreakpointConfig;
|
|
3907
|
+
(options: _angular_core.InjectOptions & {
|
|
3908
|
+
optional?: false;
|
|
3909
|
+
}): OverlayBreakpointConfig;
|
|
3910
|
+
(options: _angular_core.InjectOptions): OverlayBreakpointConfig | null;
|
|
3911
|
+
};
|
|
3912
|
+
declare const provideRightSheetStrategy: () => _angular_core.Provider[];
|
|
3913
|
+
declare const injectRightSheetStrategy: {
|
|
3914
|
+
(): {
|
|
3915
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => _ethlete_components.OverlayStrategy;
|
|
3916
|
+
};
|
|
3917
|
+
(options: _angular_core.InjectOptions & {
|
|
3918
|
+
optional?: false;
|
|
3919
|
+
}): {
|
|
3920
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => _ethlete_components.OverlayStrategy;
|
|
3921
|
+
};
|
|
3922
|
+
(options: _angular_core.InjectOptions): {
|
|
3923
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => _ethlete_components.OverlayStrategy;
|
|
3924
|
+
} | null;
|
|
3925
|
+
};
|
|
3926
|
+
declare const rightSheetOverlayStrategy: (config?: Partial<OverlayBreakpointConfig>) => (() => OverlayStrategyBreakpoint[]);
|
|
3927
|
+
|
|
3928
|
+
declare const provideTopSheetStrategyDefaults: (valueOverride?: Partial<OverlayBreakpointConfig> | undefined) => _angular_core.Provider[];
|
|
3929
|
+
declare const injectTopSheetStrategyDefaults: {
|
|
3930
|
+
(): OverlayBreakpointConfig;
|
|
3931
|
+
(options: _angular_core.InjectOptions & {
|
|
3932
|
+
optional?: false;
|
|
3933
|
+
}): OverlayBreakpointConfig;
|
|
3934
|
+
(options: _angular_core.InjectOptions): OverlayBreakpointConfig | null;
|
|
3935
|
+
};
|
|
3936
|
+
declare const provideTopSheetStrategy: () => _angular_core.Provider[];
|
|
3937
|
+
declare const injectTopSheetStrategy: {
|
|
3938
|
+
(): {
|
|
3939
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => _ethlete_components.OverlayStrategy;
|
|
3940
|
+
};
|
|
3941
|
+
(options: _angular_core.InjectOptions & {
|
|
3942
|
+
optional?: false;
|
|
3943
|
+
}): {
|
|
3944
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => _ethlete_components.OverlayStrategy;
|
|
3945
|
+
};
|
|
3946
|
+
(options: _angular_core.InjectOptions): {
|
|
3947
|
+
build: (config?: Partial<OverlayBreakpointConfig>) => _ethlete_components.OverlayStrategy;
|
|
3948
|
+
} | null;
|
|
3949
|
+
};
|
|
3950
|
+
declare const topSheetOverlayStrategy: (config?: Partial<OverlayBreakpointConfig>) => (() => OverlayStrategyBreakpoint[]);
|
|
1732
3951
|
|
|
1733
3952
|
declare class ScrollableActiveChildDirective {
|
|
1734
3953
|
private scrollable;
|
|
@@ -1935,8 +4154,8 @@ declare class ScrollableDragDirective {
|
|
|
1935
4154
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<ScrollableDragDirective, "[etScrollableDrag]", never, { "enabled": { "alias": "enabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
|
|
1936
4155
|
}
|
|
1937
4156
|
|
|
1938
|
-
declare const
|
|
1939
|
-
readonly MISSING_SCROLL_CONTAINER:
|
|
4157
|
+
declare const SCROLLABLE_ERROR_CODES: {
|
|
4158
|
+
readonly MISSING_SCROLL_CONTAINER: 2100;
|
|
1940
4159
|
};
|
|
1941
4160
|
|
|
1942
4161
|
declare class ScrollableIgnoreChildDirective {
|
|
@@ -2075,6 +4294,7 @@ declare class StreamConsentComponent {
|
|
|
2075
4294
|
private config;
|
|
2076
4295
|
private locale;
|
|
2077
4296
|
private surfaceThemes;
|
|
4297
|
+
protected readonly HEADING_ID: string;
|
|
2078
4298
|
cardSurface: _angular_core.Signal<string | null>;
|
|
2079
4299
|
heading: _angular_core.Signal<string>;
|
|
2080
4300
|
description: _angular_core.Signal<string>;
|
|
@@ -2384,8 +4604,8 @@ type PipManager = {
|
|
|
2384
4604
|
declare class PipBackDirective {
|
|
2385
4605
|
private chrome;
|
|
2386
4606
|
private tokenEntry;
|
|
2387
|
-
entry: _angular_core.InputSignal<StreamPipEntry | undefined>;
|
|
2388
4607
|
private pipManager;
|
|
4608
|
+
entry: _angular_core.InputSignal<StreamPipEntry | undefined>;
|
|
2389
4609
|
back(event: Event): void;
|
|
2390
4610
|
private resolveEntry;
|
|
2391
4611
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PipBackDirective, never>;
|
|
@@ -2564,8 +4784,8 @@ declare class PipCloseDirective {
|
|
|
2564
4784
|
private chrome;
|
|
2565
4785
|
private pipWindow;
|
|
2566
4786
|
private tokenEntry;
|
|
2567
|
-
entry: _angular_core.InputSignal<StreamPipEntry | undefined>;
|
|
2568
4787
|
private pipManager;
|
|
4788
|
+
entry: _angular_core.InputSignal<StreamPipEntry | undefined>;
|
|
2569
4789
|
close(event: Event): void;
|
|
2570
4790
|
private resolveEntry;
|
|
2571
4791
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<PipCloseDirective, never>;
|
|
@@ -2604,28 +4824,31 @@ declare class PipTitleBarDirective {
|
|
|
2604
4824
|
declare const PIP_WINDOW_ASPECT_RATIO_TOKEN: InjectionToken<Signal<number>>;
|
|
2605
4825
|
|
|
2606
4826
|
declare class StreamPipChromeComponent implements PipChromeRef {
|
|
4827
|
+
pipManager: _ethlete_components.PipManager;
|
|
4828
|
+
private provideSurface;
|
|
4829
|
+
private surfaceThemes;
|
|
2607
4830
|
stageRef: _angular_core.Signal<ElementRef<HTMLElement> | undefined>;
|
|
2608
4831
|
pipWindowRef: _angular_core.Signal<PipWindowComponent | undefined>;
|
|
2609
4832
|
gridBtnRef: _angular_core.Signal<ElementRef<HTMLElement> | undefined>;
|
|
2610
|
-
pipManager: _ethlete_components.PipManager;
|
|
2611
4833
|
state: _ethlete_components.PipChromeState;
|
|
2612
4834
|
animations: _ethlete_components.PipChromeAnimations;
|
|
2613
4835
|
readonly CLOSE_KIND: "close";
|
|
2614
4836
|
controlsColor: _angular_core.Signal<string | undefined>;
|
|
2615
4837
|
readonly WINDOW_CONTROL_BUTTON_SIZE: "sm";
|
|
4838
|
+
constructor();
|
|
2616
4839
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<StreamPipChromeComponent, never>;
|
|
2617
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<StreamPipChromeComponent, "et-stream-pip-chrome", never, {}, {}, never, never, true,
|
|
4840
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<StreamPipChromeComponent, "et-stream-pip-chrome", never, {}, {}, never, never, true, [{ directive: typeof _ethlete_core.ProvideSurfaceDirective; inputs: {}; outputs: {}; }]>;
|
|
2618
4841
|
}
|
|
2619
4842
|
|
|
2620
4843
|
declare class PipPlayerComponent {
|
|
2621
4844
|
private document;
|
|
2622
4845
|
private el;
|
|
2623
4846
|
protected pipCell: PipCellDirective | null;
|
|
2624
|
-
entry: _angular_core.InputSignal<StreamPipEntry | undefined>;
|
|
2625
|
-
showThumbnail: _angular_core.InputSignal<boolean | undefined>;
|
|
2626
4847
|
private streamManager;
|
|
2627
4848
|
private pipManager;
|
|
2628
4849
|
private renderer;
|
|
4850
|
+
entry: _angular_core.InputSignal<StreamPipEntry | undefined>;
|
|
4851
|
+
showThumbnail: _angular_core.InputSignal<boolean | undefined>;
|
|
2629
4852
|
isReady: _angular_core.WritableSignal<boolean>;
|
|
2630
4853
|
resolvedEntry: _angular_core.Signal<StreamPipEntry>;
|
|
2631
4854
|
thumbnailUrl: _angular_core.Signal<string | null>;
|
|
@@ -2663,11 +4886,11 @@ declare const injectPipSlotPlaceholderConfig: {
|
|
|
2663
4886
|
declare class PipSlotPlaceholderComponent {
|
|
2664
4887
|
private slotPlayerId;
|
|
2665
4888
|
private parentSurfaceProvider;
|
|
2666
|
-
private bringBackDir;
|
|
2667
4889
|
private pipManager;
|
|
2668
4890
|
private config;
|
|
2669
4891
|
private locale;
|
|
2670
4892
|
private surfaceThemes;
|
|
4893
|
+
private bringBackDir;
|
|
2671
4894
|
cardSurface: _angular_core.Signal<string | null>;
|
|
2672
4895
|
isInPip: _angular_core.Signal<boolean>;
|
|
2673
4896
|
message: _angular_core.Signal<string>;
|
|
@@ -2710,10 +4933,10 @@ declare class StreamPlayerSlotDirective {
|
|
|
2710
4933
|
private playerComponent;
|
|
2711
4934
|
private provideSurface;
|
|
2712
4935
|
private parentSurfaceProvider;
|
|
2713
|
-
streamSlotPriority: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
2714
|
-
streamSlotOnPipBack: _angular_core.InputSignal<(() => void) | undefined>;
|
|
2715
4936
|
private surfaceThemes;
|
|
2716
4937
|
private styleManager;
|
|
4938
|
+
streamSlotPriority: _angular_core.InputSignalWithTransform<boolean, unknown>;
|
|
4939
|
+
streamSlotOnPipBack: _angular_core.InputSignal<(() => void) | undefined>;
|
|
2717
4940
|
private resolvedSurface;
|
|
2718
4941
|
slot: _ethlete_components.StreamPlayerSlotHandle;
|
|
2719
4942
|
constructor();
|
|
@@ -3476,7 +5699,7 @@ declare const StreamImports: readonly [typeof StreamConsentComponent, typeof Str
|
|
|
3476
5699
|
declare class TabBarTriggerDirective {
|
|
3477
5700
|
private elementRef;
|
|
3478
5701
|
private scrollable;
|
|
3479
|
-
protected tabBar: _ethlete_components.TabBarDirective;
|
|
5702
|
+
protected tabBar: _ethlete_components.TabBarDirective | null;
|
|
3480
5703
|
disabled: _angular_core.InputSignal<boolean>;
|
|
3481
5704
|
readonly ID: string;
|
|
3482
5705
|
justActivated: _angular_core.WritableSignal<boolean>;
|
|
@@ -3559,6 +5782,7 @@ declare const TAB_BAR_TRIGGER_TOKEN: InjectionToken<TabBarTriggerDirective>;
|
|
|
3559
5782
|
|
|
3560
5783
|
declare class NavTabLinkDirective {
|
|
3561
5784
|
private routerLinkActive;
|
|
5785
|
+
private navTabs;
|
|
3562
5786
|
private tabBar;
|
|
3563
5787
|
private destroyRef;
|
|
3564
5788
|
trigger: TabBarTriggerDirective;
|
|
@@ -3570,17 +5794,24 @@ declare class NavTabLinkDirective {
|
|
|
3570
5794
|
}
|
|
3571
5795
|
|
|
3572
5796
|
declare class NavTabsOutletDirective {
|
|
3573
|
-
private
|
|
5797
|
+
private nearestTabBar;
|
|
5798
|
+
private registry;
|
|
3574
5799
|
readonly ID: string;
|
|
5800
|
+
private tabBar;
|
|
3575
5801
|
activeTriggerId: _angular_core.Signal<string | null>;
|
|
5802
|
+
constructor();
|
|
3576
5803
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NavTabsOutletDirective, never>;
|
|
3577
5804
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NavTabsOutletDirective, "[etNavTabsOutlet]", never, {}, {}, never, never, true, never>;
|
|
3578
5805
|
}
|
|
3579
5806
|
|
|
3580
5807
|
declare class NavTabsDirective {
|
|
3581
5808
|
private routerEvent;
|
|
5809
|
+
private registry;
|
|
5810
|
+
private tabBar;
|
|
5811
|
+
private destroyRef;
|
|
3582
5812
|
/** @internal */
|
|
3583
5813
|
navigationVersion: _angular_core.Signal<number>;
|
|
5814
|
+
constructor();
|
|
3584
5815
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<NavTabsDirective, never>;
|
|
3585
5816
|
static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NavTabsDirective, "[etNavTabs]", never, {}, {}, never, never, true, never>;
|
|
3586
5817
|
}
|
|
@@ -3615,10 +5846,10 @@ declare class NavTabsComponent {
|
|
|
3615
5846
|
}
|
|
3616
5847
|
|
|
3617
5848
|
declare const TAB_ERROR_CODES: {
|
|
3618
|
-
readonly MISSING_TAB_BAR:
|
|
3619
|
-
readonly MISSING_TAB_GROUP:
|
|
3620
|
-
readonly MISSING_TAB_PANEL:
|
|
3621
|
-
readonly MISSING_NAV_TABS:
|
|
5849
|
+
readonly MISSING_TAB_BAR: 2000;
|
|
5850
|
+
readonly MISSING_TAB_GROUP: 2001;
|
|
5851
|
+
readonly MISSING_TAB_PANEL: 2002;
|
|
5852
|
+
readonly MISSING_NAV_TABS: 2003;
|
|
3622
5853
|
};
|
|
3623
5854
|
|
|
3624
5855
|
declare class TabPanelDirective {
|
|
@@ -3643,6 +5874,8 @@ declare class TabGroupDirective {
|
|
|
3643
5874
|
private sessionMemoryAvailable;
|
|
3644
5875
|
/** @internal */
|
|
3645
5876
|
panels: _angular_core.WritableSignal<TabPanelDirective[]>;
|
|
5877
|
+
/** @internal Set by composing components (e.g. et-tab-group) that render panel content themselves instead of registering [etTabPanel] directives. */
|
|
5878
|
+
managesPanelsInternally: _angular_core.WritableSignal<boolean>;
|
|
3646
5879
|
restoredSessionMemoryKey: _angular_core.WritableSignal<string>;
|
|
3647
5880
|
constructor();
|
|
3648
5881
|
/** @internal */
|
|
@@ -3674,6 +5907,7 @@ declare class TabLabelDirective {
|
|
|
3674
5907
|
}
|
|
3675
5908
|
|
|
3676
5909
|
declare class TabComponent {
|
|
5910
|
+
private tabGroup;
|
|
3677
5911
|
label: _angular_core.InputSignal<string>;
|
|
3678
5912
|
icon: _angular_core.InputSignal<string | null>;
|
|
3679
5913
|
disabled: _angular_core.InputSignal<boolean>;
|
|
@@ -3682,6 +5916,7 @@ declare class TabComponent {
|
|
|
3682
5916
|
implicitLabelRef: _angular_core.Signal<TemplateRef<unknown>>;
|
|
3683
5917
|
/** @internal */
|
|
3684
5918
|
contentRef: _angular_core.Signal<TemplateRef<unknown>>;
|
|
5919
|
+
constructor();
|
|
3685
5920
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabComponent, never>;
|
|
3686
5921
|
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TabComponent, "et-tab", never, { "label": { "alias": "label"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, ["customLabel"], ["*"], true, never>;
|
|
3687
5922
|
}
|
|
@@ -3693,6 +5928,7 @@ declare class TabGroupComponent {
|
|
|
3693
5928
|
protected triggerElements: _angular_core.Signal<TabBarTriggerDirective[]>;
|
|
3694
5929
|
/** @internal */
|
|
3695
5930
|
tabGroupId: string;
|
|
5931
|
+
constructor();
|
|
3696
5932
|
protected isPanelHidden(index: number): boolean;
|
|
3697
5933
|
protected shouldRenderPanel(index: number): boolean;
|
|
3698
5934
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TabGroupComponent, never>;
|
|
@@ -3708,6 +5944,7 @@ declare class ToggletipDirective {
|
|
|
3708
5944
|
private elementRef;
|
|
3709
5945
|
private colorProvider;
|
|
3710
5946
|
private surfaceProvider;
|
|
5947
|
+
private overlayManager;
|
|
3711
5948
|
content: _angular_core.InputSignal<ToggletipContent | null>;
|
|
3712
5949
|
ariaLabel: _angular_core.InputSignal<string | null>;
|
|
3713
5950
|
ariaLabelledBy: _angular_core.InputSignal<string | null>;
|
|
@@ -3718,7 +5955,6 @@ declare class ToggletipDirective {
|
|
|
3718
5955
|
viewportPadding: _angular_core.InputSignal<Padding | null>;
|
|
3719
5956
|
disabled: _angular_core.InputSignal<boolean>;
|
|
3720
5957
|
open: _angular_core.ModelSignal<boolean>;
|
|
3721
|
-
private overlayManager;
|
|
3722
5958
|
/** @internal */
|
|
3723
5959
|
overlayRef: _angular_core.WritableSignal<OverlayRef<ToggletipComponent, unknown> | null>;
|
|
3724
5960
|
private toggletipId;
|
|
@@ -3741,24 +5977,18 @@ declare class ToggletipDirective {
|
|
|
3741
5977
|
|
|
3742
5978
|
declare class ToggletipComponent {
|
|
3743
5979
|
private ownColorProvider;
|
|
3744
|
-
private ownSurfaceProvider;
|
|
3745
5980
|
private triggerColorProvider;
|
|
3746
|
-
private triggerSurfaceProvider;
|
|
3747
5981
|
protected injector: Injector;
|
|
3748
5982
|
toggletipId: _angular_core.InputSignal<string>;
|
|
3749
5983
|
protected contentId: _angular_core.InputSignal<string>;
|
|
3750
5984
|
content: _angular_core.InputSignal<ToggletipContent>;
|
|
3751
5985
|
colorProvider: _angular_core.InputSignal<ProvideColorDirective | null>;
|
|
3752
|
-
surfaceProvider: _angular_core.InputSignal<ProvideSurfaceDirective | null>;
|
|
3753
|
-
animatedLifecycle: _angular_core.Signal<AnimatedLifecycleDirective | undefined>;
|
|
3754
|
-
private surfaceThemes;
|
|
3755
5986
|
hasTemplate: _angular_core.Signal<boolean>;
|
|
3756
5987
|
contentText: _angular_core.Signal<string | null>;
|
|
3757
5988
|
contentTemplate: _angular_core.Signal<TemplateRef<unknown> | null>;
|
|
3758
|
-
resolvedSurface: _angular_core.Signal<string | null>;
|
|
3759
5989
|
constructor();
|
|
3760
5990
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<ToggletipComponent, never>;
|
|
3761
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ToggletipComponent, "et-toggletip", never, { "toggletipId": { "alias": "toggletipId"; "required": true; "isSignal": true; }; "contentId": { "alias": "contentId"; "required": true; "isSignal": true; }; "content": { "alias": "content"; "required": true; "isSignal": true; }; "colorProvider": { "alias": "colorProvider"; "required": true; "isSignal": true; };
|
|
5991
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<ToggletipComponent, "et-toggletip", never, { "toggletipId": { "alias": "toggletipId"; "required": true; "isSignal": true; }; "contentId": { "alias": "contentId"; "required": true; "isSignal": true; }; "content": { "alias": "content"; "required": true; "isSignal": true; }; "colorProvider": { "alias": "colorProvider"; "required": true; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof _ethlete_core.ProvideColorDirective; inputs: {}; outputs: {}; }, { directive: typeof _ethlete_core.AutoSurfaceDirective; inputs: { "surfaceProvider": "surfaceProvider"; }; outputs: {}; }]>;
|
|
3762
5992
|
}
|
|
3763
5993
|
|
|
3764
5994
|
declare class ToggletipCloseDirective {
|
|
@@ -3789,22 +6019,16 @@ declare const TOGGLETIP_IMPORTS: readonly [typeof ToggletipDirective, typeof Tog
|
|
|
3789
6019
|
|
|
3790
6020
|
declare class TooltipComponent {
|
|
3791
6021
|
private ownColorProvider;
|
|
3792
|
-
private ownSurfaceProvider;
|
|
3793
6022
|
private triggerColorProvider;
|
|
3794
|
-
private triggerSurfaceProvider;
|
|
3795
6023
|
tooltipId: _angular_core.InputSignal<string>;
|
|
3796
6024
|
content: _angular_core.InputSignal<TooltipContent>;
|
|
3797
6025
|
colorProvider: _angular_core.InputSignal<ProvideColorDirective | null>;
|
|
3798
|
-
surfaceProvider: _angular_core.InputSignal<ProvideSurfaceDirective | null>;
|
|
3799
|
-
animatedLifecycle: _angular_core.Signal<AnimatedLifecycleDirective | undefined>;
|
|
3800
|
-
private surfaceThemes;
|
|
3801
6026
|
hasTemplate: _angular_core.Signal<boolean>;
|
|
3802
6027
|
contentText: _angular_core.Signal<string | null>;
|
|
3803
6028
|
contentTemplate: _angular_core.Signal<TemplateRef<unknown> | null>;
|
|
3804
|
-
resolvedSurface: _angular_core.Signal<string | null>;
|
|
3805
6029
|
constructor();
|
|
3806
6030
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<TooltipComponent, never>;
|
|
3807
|
-
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TooltipComponent, "et-tooltip", never, { "tooltipId": { "alias": "tooltipId"; "required": true; "isSignal": true; }; "content": { "alias": "content"; "required": true; "isSignal": true; }; "colorProvider": { "alias": "colorProvider"; "required": true; "isSignal": true; };
|
|
6031
|
+
static ɵcmp: _angular_core.ɵɵComponentDeclaration<TooltipComponent, "et-tooltip", never, { "tooltipId": { "alias": "tooltipId"; "required": true; "isSignal": true; }; "content": { "alias": "content"; "required": true; "isSignal": true; }; "colorProvider": { "alias": "colorProvider"; "required": true; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof _ethlete_core.ProvideColorDirective; inputs: {}; outputs: {}; }, { directive: typeof _ethlete_core.AutoSurfaceDirective; inputs: { "surfaceProvider": "surfaceProvider"; }; outputs: {}; }]>;
|
|
3808
6032
|
}
|
|
3809
6033
|
|
|
3810
6034
|
type TooltipContent = string | TemplateRef<unknown>;
|
|
@@ -3814,6 +6038,9 @@ declare class TooltipDirective {
|
|
|
3814
6038
|
private elementRef;
|
|
3815
6039
|
private colorProvider;
|
|
3816
6040
|
private surfaceProvider;
|
|
6041
|
+
private overlayManager;
|
|
6042
|
+
private focusVisibleTracker;
|
|
6043
|
+
private renderer;
|
|
3817
6044
|
content: _angular_core.InputSignal<TooltipContent | null>;
|
|
3818
6045
|
ariaDescription: _angular_core.InputSignal<string | null>;
|
|
3819
6046
|
placement: _angular_core.InputSignal<Placement>;
|
|
@@ -3823,9 +6050,6 @@ declare class TooltipDirective {
|
|
|
3823
6050
|
viewportPadding: _angular_core.InputSignal<Padding | null>;
|
|
3824
6051
|
showDelay: _angular_core.InputSignal<number>;
|
|
3825
6052
|
disabled: _angular_core.InputSignal<boolean>;
|
|
3826
|
-
private overlayManager;
|
|
3827
|
-
private focusVisibleTracker;
|
|
3828
|
-
private renderer;
|
|
3829
6053
|
/** @internal */
|
|
3830
6054
|
overlayRef: _angular_core.WritableSignal<OverlayRef<TooltipComponent, unknown> | null>;
|
|
3831
6055
|
private hasHover;
|
|
@@ -3851,5 +6075,5 @@ declare const TOOLTIP_ERROR_CODES: {
|
|
|
3851
6075
|
|
|
3852
6076
|
declare const TOOLTIP_IMPORTS: readonly [typeof TooltipDirective, typeof TooltipComponent];
|
|
3853
6077
|
|
|
3854
|
-
export { ARROW_OUT_UP_RIGHT_ICON, ARROW_RIGHT_ICON, BOLD_ICON, BUTTON_ICON_ALIGNMENTS, BUTTON_IMPORTS, BUTTON_SIZES, BUTTON_SPINNER_CONFIG, BUTTON_TYPES, BUTTON_VARIANTS, BrandLoaderComponent, ButtonComponent, ButtonDirective, ButtonStylesDirective, CHECKBOX_IMPORTS, CHEVRON_ICON, CHOICE_FIELD_IMPORTS, CLIPBOARD_CHECK_ICON, CheckboxComponent, CheckboxDirective, CheckboxGroupComponent, CheckboxOptionComponent, ChoiceFieldComponent, DAILYMOTION_PLAYER_TOKEN, DEFAULT_NOTIFICATION_MANAGER_CONFIG, DEFAULT_PIP_WINDOW_CONFIG, DEFAULT_STREAM_PLAYER_STATE, DailymotionPlayerComponent, DailymotionPlayerDirective, DailymotionPlayerParamsDirective, DailymotionPlayerSlotComponent, DescriptionComponent, FACEBOOK_PLAYER_TOKEN, FLOPPY_DISK_ICON, FOCUS_FRAME_ICON, FORM_FIELD_APPEARANCES, FORM_FIELD_CONTROL_TYPES, FORM_FIELD_ERROR_CODES, FORM_FIELD_FILLS, FORM_FIELD_IMPORTS, FORM_FIELD_LABEL_MODES, FORM_FIELD_SIZES, FORM_FIELD_TOKEN, FabComponent, FacebookPlayerComponent, FacebookPlayerDirective, FacebookPlayerParamsDirective, FacebookPlayerSlotComponent, FocusRingDirective, FormErrorComponent, FormFieldComponent, FormFieldDirective, GRID_2X2_ICON, GRID_ERROR_CODES, GRID_TOKEN, GridComponent, GridDebugComponent, GridDirective, GridDragDirective, GridImports, GridItemComponent, GridItemDirective, GridItemRef, GridResizeDirective, HintComponent, ICONS_TOKEN, ICON_DIRECTIVE_TOKEN, ICON_ERROR_CODES, ICON_IMPORTS, INPUT_IMPORTS, INPUT_TEXT_ALIGNMENTS, INPUT_TYPES, ITALIC_ICON, IconButtonComponent, IconDirective, InputComponent, InputDirective, InputPrefixDirective, InputSuffixDirective, KICK_PLAYER_TOKEN, KickPlayerComponent, KickPlayerDirective, KickPlayerParamsDirective, KickPlayerSlotComponent, LINK_ICON, LIST_BULLETED_ICON, LIST_NUMBERED_ICON, LOCK_ICON, LabelDirective, NAV_TABS_TOKEN, NOTIFICATION_ERROR_CODES, NOTIFICATION_IMPORTS, NOTIFICATION_STACK_CONTEXT_TOKEN, NOTIFICATION_STATUS, NavTabImports, NavTabLinkComponent, NavTabLinkDirective, NavTabsComponent, NavTabsDirective, NavTabsOutletComponent, NavTabsOutletDirective, NotificationActionDirective, NotificationComponent, NotificationDirective, NotificationDismissDirective, NotificationItemDirective, NotificationStackDirective, OVERLAY_ERROR_CODES, OVERLAY_IMPORTS, OVERLAY_REF, OverlayAnchorDirective, OverlayDirective, OverlaySurfaceDirective, OverlayTriggerDirective, PENCIL_ICON, PIP_CHROME_REF_TOKEN, PIP_ENTRY_TOKEN, PIP_WINDOW_ASPECT_RATIO_TOKEN, PLUS_ICON, PipBackDirective, PipBringBackDirective, PipCellDirective, PipCloseDirective, PipCollapseOverlayDirective, PipGridToggleDirective, PipPlayerComponent, PipSlotPlaceholderComponent, PipStageDirective, PipTitleBarDirective, PipTitleBarTemplateDirective, PipWindowComponent, PipWindowParamsDirective, ProgressBarComponent, RICH_TEXT_EDITOR_IMPORTS, RadioComponent, RadioGroupComponent, RichTextEditorComponent, RichTextEditorDirective, SCROLLABLE_IMPORTS, SELECTION_LIST_MULTIPLE, SELECTION_LIST_TOKEN, SOOP_PLAYER_TOKEN, STREAM_CONSENT_TOKEN, STREAM_PLAYER_COMPONENT_TOKEN, STREAM_PLAYER_ERROR_CONTEXT_TOKEN, STREAM_PLAYER_ERROR_TOKEN, STREAM_PLAYER_PARAMS_TOKEN, STREAM_PLAYER_SLOT_TOKEN, STREAM_PLAYER_TOKEN, STREAM_SLOT_PLAYER_ID_TOKEN, STREAM_USER_CONSENT_PROVIDER_TOKEN, STRIKETHROUGH_ICON, SWITCH_IMPORTS, ScrollableActiveChildDirective, ScrollableButtonsDirective, ScrollableComponent, ScrollableDarkenDirective, ScrollableDirective, ScrollableDragDirective, ScrollableErrorCode, ScrollableIgnoreChildDirective, ScrollableLoadingTemplateDirective, ScrollableMasksDirective, ScrollableNavigationDirective, ScrollableSnapDirective, SegmentedButtonComponent, SegmentedButtonGroupComponent, SelectionListControlDirective, SelectionListDirective, SelectionOptionDirective, SoopPlayerComponent, SoopPlayerDirective, SoopPlayerParamsDirective, SoopPlayerSlotComponent, SpinnerComponent, StreamConsentAcceptDirective, StreamConsentComponent, StreamConsentDirective, StreamImports, StreamPipChromeComponent, StreamPlayerErrorComponent, StreamPlayerErrorDirective, StreamPlayerLoadingComponent, StreamPlayerSlotDirective, SwitchComponent, SwitchDirective, TAB_BAR_FITS, TAB_BAR_ORIENTATIONS, TAB_BAR_TOKEN, TAB_BAR_TRIGGER_TOKEN, TAB_BAR_VARIANTS, TAB_ERROR_CODES, TAB_GROUP_TOKEN, TAB_PANEL_TOKEN, TAB_SIZES, TIKTOK_PLAYER_TOKEN, TIMES_ICON, TOGGLETIP_ERROR_CODES, TOGGLETIP_IMPORTS, TOOLTIP_ERROR_CODES, TOOLTIP_IMPORTS, TRIANGLE_EXCLAMATION_ICON, TWITCH_PLAYER_TOKEN, TabBarDirective, TabBarTriggerDirective, TabBarUnderlineDirective, TabComponent, TabGroupComponent, TabGroupDirective, TabImports, TabLabelDirective, TabPanelDirective, TabTriggerDirective, TextButtonComponent, TikTokPlayerComponent, TikTokPlayerDirective, TikTokPlayerParamsDirective, TikTokPlayerSlotComponent, ToggletipCloseDirective, ToggletipComponent, ToggletipDirective, ToggletipTriggerDirective, TooltipComponent, TooltipDirective, TwitchPlayerComponent, TwitchPlayerDirective, TwitchPlayerParamsDirective, TwitchPlayerSlotComponent, VIMEO_PLAYER_TOKEN, VimeoPlayerComponent, VimeoPlayerDirective, VimeoPlayerParamsDirective, VimeoPlayerSlotComponent, WINDOW_CONTROL_BUTTON_KINDS, WINDOW_CONTROL_BUTTON_SIZES, WindowControlButtonComponent, YOUTUBE_PLAYER_SLOT_TOKEN, YOUTUBE_PLAYER_TOKEN, YoutubePlayerComponent, YoutubePlayerDirective, YoutubePlayerParamsDirective, YoutubePlayerSlotComponent, YoutubePlayerSlotDirective, createGridAdapter, createNotificationRef, createOverlayRef, createPipChromeAnimations, createPipChromeState, createStreamConfig, createStreamPlayerSlot, fromGridPosition, injectFormSupport, injectGridConfig, injectNotificationManager, injectNotificationManagerConfig, injectOverlayManager, injectPipChromeManager, injectPipManager, injectPipSlotPlaceholderConfig, injectStreamConfig, injectStreamConsentConfig, injectStreamManager, injectStreamPlayerErrorConfig, injectStreamPlayerLoadingConfig, injectStreamScriptLoader, injectStreamUserConsentProvider, provideFormSupport, provideGridConfig, provideIcons, provideNotificationManager, provideNotificationManagerConfig, provideNotificationManagerInstance, provideOverlayManager, providePipChromeManager, providePipManager, providePipSlotPlaceholderConfig, provideStreamConfig, provideStreamConsentConfig, provideStreamManager, provideStreamPlayerErrorConfig, provideStreamPlayerLoadingConfig, toGridPosition };
|
|
3855
|
-
export type { ButtonIconAlignment, ButtonSize, FacebookVideoPlayer, FacebookWindow, FormFieldAppearance, FormFieldControl, FormFieldControlType, FormFieldDirectiveBase, FormFieldFill, FormFieldLabelMode, FormFieldSize, GridAdapter, GridBreakpointConfig, GridBreakpointName, GridComponentRegistration, GridConfig, GridItemConfig, GridItemConstraints, GridItemPosition, GridLayoutEntry, GridSerializedState, HintComponentBase, IconDefinition, InputTextAlignment, LabelDirectiveBase, NotificationAction, NotificationConfig, NotificationEntry, NotificationManager, NotificationManagerConfig, NotificationRef, NotificationStackContext, NotificationStatus, OverlayAutoFocusTarget, OverlayConfig, OverlayManager, OverlayMode,
|
|
6078
|
+
export { ARROW_OUT_UP_RIGHT_ICON, ARROW_RIGHT_ICON, BOLD_ICON, BUTTON_ICON_ALIGNMENTS, BUTTON_IMPORTS, BUTTON_SIZES, BUTTON_SPINNER_CONFIG, BUTTON_TYPES, BUTTON_VARIANTS, BrandLoaderComponent, ButtonComponent, ButtonDirective, ButtonStylesDirective, CHECKBOX_IMPORTS, CHEVRON_ICON, CHOICE_FIELD_IMPORTS, CLIPBOARD_CHECK_ICON, CheckboxComponent, CheckboxDirective, CheckboxGroupComponent, CheckboxOptionComponent, ChoiceFieldComponent, DAILYMOTION_PLAYER_TOKEN, DEFAULT_BREAKPOINTS, DEFAULT_ICON_VARIANT, DEFAULT_NOTIFICATION_MANAGER_CONFIG, DEFAULT_PIP_WINDOW_CONFIG, DEFAULT_STREAM_PLAYER_STATE, DROPZONE_ENTRY_STATUSES, DROPZONE_ERROR_CODES, DROPZONE_FILES_ERROR_KIND, DROPZONE_FILE_CONSTRAINTS, DROPZONE_FILE_REJECTION_REASONS, DROPZONE_IMPORTS, DailymotionPlayerComponent, DailymotionPlayerDirective, DailymotionPlayerParamsDirective, DailymotionPlayerSlotComponent, DescriptionComponent, DropzoneComponent, DropzoneDirective, FACEBOOK_PLAYER_TOKEN, FILE_ICON, FLOPPY_DISK_ICON, FOCUS_FRAME_ICON, FORM_FIELD_APPEARANCES, FORM_FIELD_CONTROL_TYPES, FORM_FIELD_ERROR_CODES, FORM_FIELD_FILLS, FORM_FIELD_IMPORTS, FORM_FIELD_LABEL_MODES, FORM_FIELD_SIZES, FORM_FIELD_TOKEN, FabComponent, FacebookPlayerComponent, FacebookPlayerDirective, FacebookPlayerParamsDirective, FacebookPlayerSlotComponent, FocusRingDirective, FormErrorComponent, FormFieldComponent, FormFieldDirective, GRID_2X2_ICON, GRID_ERROR_CODES, GRID_TOKEN, GridComponent, GridDebugComponent, GridDirective, GridDragDirective, GridImports, GridItemComponent, GridItemDefaultActionsComponent, GridItemDirective, GridItemRef, GridItemToolbarComponent, GridResizeDirective, HEADING_1_ICON, HEADING_2_ICON, HEADING_3_ICON, HintComponent, ICONS_TOKEN, ICON_DIRECTIVE_TOKEN, ICON_ERROR_CODES, ICON_IMPORTS, INPUT_IMPORTS, INPUT_TEXT_ALIGNMENTS, INPUT_TYPES, ITALIC_ICON, IconButtonComponent, IconDirective, InputComponent, InputDirective, InputPrefixDirective, InputSuffixDirective, KICK_PLAYER_TOKEN, KickPlayerComponent, KickPlayerDirective, KickPlayerParamsDirective, KickPlayerSlotComponent, LINK_ICON, LIST_BULLETED_ICON, LIST_NUMBERED_ICON, LOCK_ICON, LabelDirective, MENU_ERROR_CODES, MENU_IMPORTS, MENU_ITEM_VARIANTS, MENU_SELECTION_GROUP_MULTIPLE, MENU_SELECTION_GROUP_TOKEN, MENU_SELECTION_ITEM_KIND, MenuCheckboxGroupComponent, MenuCheckboxItemComponent, MenuComponent, MenuContextTriggerDirective, MenuDirective, MenuGroupLabelComponent, MenuItemComponent, MenuItemDirective, MenuItemShortcutComponent, MenuPanelDirective, MenuRadioGroupComponent, MenuRadioItemComponent, MenuSearchDirective, MenuSelectionGroupDirective, MenuSelectionItemDirective, MenuSeparatorComponent, MenuSurfaceDirective, MenuTriggerDirective, NAV_TABS_TOKEN, NOTIFICATION_ERROR_CODES, NOTIFICATION_IMPORTS, NOTIFICATION_STACK_CONTEXT_TOKEN, NOTIFICATION_STATUS, NavTabImports, NavTabLinkComponent, NavTabLinkDirective, NavTabsComponent, NavTabsDirective, NavTabsOutletComponent, NavTabsOutletDirective, NotificationActionDirective, NotificationComponent, NotificationDirective, NotificationDismissDirective, NotificationItemDirective, NotificationStackDirective, OVERLAY_BACK_OR_CLOSE_TOKEN, OVERLAY_BODY_TOKEN, OVERLAY_CONFIG_CLASS_KEYS, OVERLAY_CONTENT_IMPORTS, OVERLAY_ERROR_CODES, OVERLAY_FOOTER_TOKEN, OVERLAY_HEADER_TEMPLATE_TOKEN, OVERLAY_HEADER_TOKEN, OVERLAY_IMPORTS, OVERLAY_MAIN_TOKEN, OVERLAY_QUERY_PARAM_INPUT_NAME, OVERLAY_REF, OVERLAY_ROUTER_CONFIG_TOKEN, OVERLAY_ROUTER_LINK_TOKEN, OVERLAY_ROUTER_OUTLET_DISABLED_TEMPLATE_TOKEN, OVERLAY_ROUTER_OUTLET_TOKEN, OVERLAY_ROUTER_TOKEN, OVERLAY_SHARED_ROUTE_TEMPLATE_TOKEN, OverlayAnchorDirective, OverlayBackOrCloseDirective, OverlayBodyComponent, OverlayCloseDirective, OverlayContainerComponent, OverlayDirective, OverlayFooterDirective, OverlayHeaderDirective, OverlayHeaderTemplateDirective, OverlayMainDirective, OverlayOriginCloneComponent, OverlayRouteHeaderTemplateOutletComponent, OverlayRouterLinkDirective, OverlayRouterOutletComponent, OverlayRouterOutletDisabledTemplateDirective, OverlaySharedRouteTemplateDirective, OverlaySharedRouteTemplateOutletComponent, OverlaySidebarComponent, OverlaySidebarPageComponent, OverlaySurfaceDirective, OverlayTitleDirective, OverlayTriggerDirective, PENCIL_ICON, PIP_CHROME_REF_TOKEN, PIP_ENTRY_TOKEN, PIP_WINDOW_ASPECT_RATIO_TOKEN, PLUS_ICON, PipBackDirective, PipBringBackDirective, PipCellDirective, PipCloseDirective, PipCollapseOverlayDirective, PipGridToggleDirective, PipPlayerComponent, PipSlotPlaceholderComponent, PipStageDirective, PipTitleBarDirective, PipTitleBarTemplateDirective, PipWindowComponent, PipWindowParamsDirective, ProgressBarComponent, QueryParamOverlayLinkDirective, RICH_TEXT_EDITOR_IMPORTS, ROTATE_RIGHT_ICON, RadioComponent, RadioGroupComponent, RichTextEditorComponent, RichTextEditorDirective, RichTextEditorFloatingToolbarComponent, SCROLLABLE_ERROR_CODES, SCROLLABLE_IMPORTS, SELECTION_LIST_MULTIPLE, SELECTION_LIST_TOKEN, SIDEBAR_OVERLAY_CONFIG, SIDEBAR_OVERLAY_TOKEN, SNAP_HYSTERESIS, SOOP_PLAYER_TOKEN, SPLIT_BUTTON_ERROR_CODES, STREAM_CONSENT_TOKEN, STREAM_PLAYER_COMPONENT_TOKEN, STREAM_PLAYER_ERROR_CONTEXT_TOKEN, STREAM_PLAYER_ERROR_TOKEN, STREAM_PLAYER_PARAMS_TOKEN, STREAM_PLAYER_SLOT_TOKEN, STREAM_PLAYER_TOKEN, STREAM_SLOT_PLAYER_ID_TOKEN, STREAM_USER_CONSENT_PROVIDER_TOKEN, STRIKETHROUGH_ICON, SWITCH_IMPORTS, ScrollableActiveChildDirective, ScrollableButtonsDirective, ScrollableComponent, ScrollableDarkenDirective, ScrollableDirective, ScrollableDragDirective, ScrollableIgnoreChildDirective, ScrollableLoadingTemplateDirective, ScrollableMasksDirective, ScrollableNavigationDirective, ScrollableSnapDirective, SegmentedButtonComponent, SegmentedButtonGroupComponent, SelectionListControlDirective, SelectionListDirective, SelectionOptionDirective, SoopPlayerComponent, SoopPlayerDirective, SoopPlayerParamsDirective, SoopPlayerSlotComponent, SpinnerComponent, SplitButtonActionDirective, SplitButtonComponent, SplitButtonDirective, SplitButtonTriggerDirective, StreamConsentAcceptDirective, StreamConsentComponent, StreamConsentDirective, StreamImports, StreamPipChromeComponent, StreamPlayerErrorComponent, StreamPlayerErrorDirective, StreamPlayerLoadingComponent, StreamPlayerSlotDirective, SwitchComponent, SwitchDirective, TAB_BAR_FITS, TAB_BAR_ORIENTATIONS, TAB_BAR_TOKEN, TAB_BAR_TRIGGER_TOKEN, TAB_BAR_VARIANTS, TAB_ERROR_CODES, TAB_GROUP_TOKEN, TAB_PANEL_TOKEN, TAB_SIZES, TIKTOK_PLAYER_TOKEN, TIMES_ICON, TOGGLETIP_ERROR_CODES, TOGGLETIP_IMPORTS, TOOLTIP_ERROR_CODES, TOOLTIP_IMPORTS, TRIANGLE_EXCLAMATION_ICON, TWITCH_PLAYER_TOKEN, TabBarDirective, TabBarTriggerDirective, TabBarUnderlineDirective, TabComponent, TabGroupComponent, TabGroupDirective, TabImports, TabLabelDirective, TabPanelDirective, TabTriggerDirective, TextButtonComponent, TikTokPlayerComponent, TikTokPlayerDirective, TikTokPlayerParamsDirective, TikTokPlayerSlotComponent, ToggletipCloseDirective, ToggletipComponent, ToggletipDirective, ToggletipTriggerDirective, TooltipComponent, TooltipDirective, TwitchPlayerComponent, TwitchPlayerDirective, TwitchPlayerParamsDirective, TwitchPlayerSlotComponent, UPLOAD_ICON, VIMEO_PLAYER_TOKEN, VimeoPlayerComponent, VimeoPlayerDirective, VimeoPlayerParamsDirective, VimeoPlayerSlotComponent, WINDOW_CONTROL_BUTTON_KINDS, WINDOW_CONTROL_BUTTON_SIZES, WindowControlButtonComponent, YOUTUBE_PLAYER_SLOT_TOKEN, YOUTUBE_PLAYER_TOKEN, YoutubePlayerComponent, YoutubePlayerDirective, YoutubePlayerParamsDirective, YoutubePlayerSlotComponent, YoutubePlayerSlotDirective, abortFullscreenAnimation, anchoredDialogOverlayStrategy, anchoredOverlayStrategy, autoPlace, bottomSheetOverlayStrategy, buildAnchoredRuntimePositionStrategy, centeredOverlayStrategy, clampPosition, clampResizeRect, cleanupFullscreenAnimation, cleanupFullscreenAnimationStyles, compactLayout, computeGeometry, computeGridHeight, createAutoScroller, createDefaultDropzoneArgs, createDropzoneUpload, createExistingDropzoneEntry, createFileDropzoneEntry, createGridAdapter, createNotificationRef, createOverlayOpener, createOverlayRef, createOverlayStrategyController, createPipChromeAnimations, createPipChromeState, createStreamConfig, createStreamPlayerSlot, defaultDropzoneRejectionMessage, defineOverlay, defineQueryParamOverlay, deserializeGridLayout, dialogOverlayStrategy, disposeDropzoneEntry, dropzoneFiles, enableDragToDismiss, findCollision, findNextRelevantHtmlElement, findScrollableAncestor, formatFileSize, fromGridPosition, fullScreenDialogOverlayStrategy, getClosestOverlay, getOriginCoordinatesAndDimensions, hysteresisRound, iconRegistryKey, injectAnchoredDialogStrategy, injectAnchoredDialogStrategyDefaults, injectBottomSheetStrategy, injectBottomSheetStrategyDefaults, injectDialogStrategy, injectDialogStrategyDefaults, injectFormSupport, injectFullscreenDialogStrategy, injectFullscreenDialogStrategyDefaults, injectGridConfig, injectLeftSheetStrategy, injectLeftSheetStrategyDefaults, injectNotificationManager, injectNotificationManagerConfig, injectOverlayManager, injectOverlayRouter, injectOverlayScrollBlocker, injectPipChromeManager, injectPipManager, injectPipSlotPlaceholderConfig, injectRightSheetStrategy, injectRightSheetStrategyDefaults, injectSidebarOverlay, injectStreamConfig, injectStreamConsentConfig, injectStreamManager, injectStreamPlayerErrorConfig, injectStreamPlayerLoadingConfig, injectStreamScriptLoader, injectStreamUserConsentProvider, injectTopSheetStrategy, injectTopSheetStrategyDefaults, isFileAccepted, isHtmlElement, isPointerEvent, isTouchEvent, itemsCollide, leftSheetOverlayStrategy, mapLayoutToBreakpoint, mergeOverlayBreakpointConfigs, mergeOverlayConfigs, pixelRectsEqual, positionToPixelRect, positionsEqual, projectDragCell, provideAnchoredDialogStrategy, provideAnchoredDialogStrategyDefaults, provideBottomSheetStrategy, provideBottomSheetStrategyDefaults, provideDialogStrategy, provideDialogStrategyDefaults, provideFormSupport, provideFullscreenDialogStrategy, provideFullscreenDialogStrategyDefaults, provideGridConfig, provideIcons, provideLeftSheetStrategy, provideLeftSheetStrategyDefaults, provideNotificationManager, provideNotificationManagerConfig, provideNotificationManagerInstance, provideOverlay, provideOverlayManager, provideOverlayRouter, provideOverlayRouterConfig, provideOverlayRouterService, provideOverlayScrollBlocker, providePipChromeManager, providePipManager, providePipSlotPlaceholderConfig, provideRightSheetStrategy, provideRightSheetStrategyDefaults, provideSidebarOverlay, provideSidebarOverlayConfig, provideSidebarOverlayService, provideStreamConfig, provideStreamConsentConfig, provideStreamManager, provideStreamPlayerErrorConfig, provideStreamPlayerLoadingConfig, provideTopSheetStrategy, provideTopSheetStrategyDefaults, resizeSpanBounds, resolveBreakpoint, resolveClosestOverlay, resolveCollisions, rightSheetOverlayStrategy, rowsToPixelHeight, serializeGridLayout, snapResizeSpan, spanHeight, spanWidth, startFullscreenEnterAnimation, startFullscreenLeaveAnimation, toGridPosition, topSheetOverlayStrategy, transformingBottomSheetToDialogOverlayStrategy, transformingFullScreenDialogToDialogOverlayStrategy, transformingFullScreenDialogToRightSheetOverlayStrategy };
|
|
6079
|
+
export type { AnchoredDialogOverlayStrategyOptions, AnchoredOverlayStrategyOptions, AnchoredPositionOptions, AnyDropzoneUploadConfig, AutoPlaceOptions, AutoScrollPointer, AutoScroller, ButtonIconAlignment, ButtonSize, CenteredOverlayStrategyOptions, ClampPositionOptions, CompactLayoutOptions, CreateExistingDropzoneEntryOptions, CreateFileDropzoneEntryOptions, DragToDismissContext, DragToDismissRef, DropzoneEntry, DropzoneEntrySource, DropzoneEntryStatus, DropzoneExistingFileInfo, DropzoneFileConstraints, DropzoneFileRejection, DropzoneFileRejectionReason, DropzoneFileValidationChannel, DropzoneUploadConfig, EthleteIconNameRegistry, EthleteIconVariantRegistry, FacebookVideoPlayer, FacebookWindow, FindCollisionOptions, FormFieldAppearance, FormFieldControl, FormFieldControlType, FormFieldDirectiveBase, FormFieldFill, FormFieldLabelMode, FormFieldSize, FullscreenAnimationCancellable, FullscreenAnimationDeps, FullscreenAnimationState, GridAdapter, GridBreakpointConfig, GridBreakpointName, GridComponentRegistration, GridConfig, GridGeometry, GridItemActionsComponent, GridItemConfig, GridItemConstraints, GridItemPosition, GridLayoutEntry, GridSerializedState, HintComponentBase, IconDefinition, InputTextAlignment, LabelDirectiveBase, MapLayoutOptions, MenuAnchorPoint, MenuCloseReason, MenuItemActivationEvent, MenuItemActivationSource, MenuItemVariant, MenuOpenSource, MenuSelectionGroupDirectiveBase, MenuSelectionGroupItem, MenuSelectionItemKind, MenuSurfaceContext, NotificationAction, NotificationConfig, NotificationEntry, NotificationManager, NotificationManagerConfig, NotificationRef, NotificationStackContext, NotificationStatus, OverlayAutoFocusTarget, OverlayBodyDividerType, OverlayBreakpointConfig, OverlayConfig, OverlayDefinition, OverlayDefinitionConfig, OverlayDragToDismissConfig, OverlayLifecycleConfig, OverlayManager, OverlayMode, OverlayOpenConfig, OverlayOpener, OverlayOpenerConfig, OverlayRef, OverlayRole, OverlayRoute, OverlayRouter, OverlayRouterConfig, OverlayRouterNavigateConfig, OverlayRouterNavigationDirection, OverlayRouterResolvedPath, OverlayRouterTransitionType, OverlayStrategy, OverlayStrategyBreakpoint, OverlayStrategyContext, OverlayStrategyController, OverlayStrategyControllerMountConfig, OverlaySurfaceContext, PipCellData, PipChromeAnimations, PipChromeRef, PipChromeState, PipManager, PipSlotPlaceholderConfig, PixelRect, QueryParamOverlayDefinition, QueryParamOverlayDefinitionConfig, QueryParamOverlayHost, QueryParamOverlayOpener, QueryParamOverlayValue, RegisteredIconName, RegisteredIconVariant, ResizeSpanBounds, ResolveClosestOverlayOptions, ResolveCollisionsOptions, RowFloors, ScrollableActiveChildRef, ScrollableButtonPosition, ScrollableDirection, ScrollableIntersectionChange, ScrollableItemSize, ScrollableLoadingTemplatePosition, ScrollableLoadingTemplateRef, ScrollableMaskVariant, ScrollableNavigation, ScrollableNavigationItem, ScrollableScrollMode, ScrollableScrollOrigin, ScrollableScrollState, SelectionListDirectiveBase, SelectionListItem, SerializeOptions, SidebarOverlay, SidebarOverlayConfig, StreamConfig, StreamConsentConfig, StreamManager, StreamPipEntry, StreamPipWindowConfig, StreamPlayer, StreamPlayerCapabilities, StreamPlayerEntry, StreamPlayerErrorConfig, StreamPlayerErrorContext, StreamPlayerId, StreamPlayerLoadingConfig, StreamPlayerParams, StreamPlayerSlotHandle, StreamPlayerSlotOptions, StreamPlayerState, StreamScriptLoader, StreamSlotEntry, TabBarFit, TabBarOrientation, TabBarVariant, TabSize, ToggletipContent, TooltipContent, TwitchEmbed, TwitchEmbedConstructor, TwitchEmbedPlayer, TwitchPlayerParams, TwitchWindow, ViewportTransformData, VimeoDurationChangeEvent, VimeoPlaybackEvent, VimeoPlayer, VimeoPlayerOptions, VimeoWindow, WindowControlButtonKind, WindowControlButtonSize, YtPlayer, YtPlayerConfig, YtPlayerErrorEvent, YtPlayerEvent, YtPlayerStateChangeEvent, YtPlayerVars, YtWindow };
|