@acontplus/ng-components 3.1.0 → 3.2.1

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.
@@ -1,9 +1,10 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { EventEmitter, TemplateRef, InjectionToken, OnDestroy, OnInit, ElementRef, Type, AfterViewInit, Signal, ViewContainerRef, OnChanges, SimpleChanges, NgZone, QueryList, TrackByFunction, KeyValueChangeRecord, OutputEmitterRef, WritableSignal, ComponentRef, AfterContentInit, PipeTransform } from '@angular/core';
2
+ import { EventEmitter, TemplateRef, InjectionToken, OnDestroy, OnInit, ElementRef, Signal, ViewContainerRef, Injector, Binding, Type, ComponentRef, AfterViewInit, EnvironmentProviders, OnChanges, SimpleChanges, NgZone, QueryList, TrackByFunction, KeyValueChangeRecord, OutputEmitterRef, WritableSignal, AfterContentInit, PipeTransform } from '@angular/core';
3
3
  import * as rxjs from 'rxjs';
4
4
  import { Observable, Subject } from 'rxjs';
5
- import { MatDialogRef } from '@angular/material/dialog';
5
+ import { DialogPosition, MatDialogRef, MatDialogState } from '@angular/material/dialog';
6
6
  import { ScrollStrategy } from '@angular/cdk/overlay';
7
+ import * as _acontplus_ng_components from '@acontplus/ng-components';
7
8
  import { FormControl, ControlValueAccessor, FormGroup } from '@angular/forms';
8
9
  import { SelectOption, IconDefinition, ButtonVariant, ButtonType, MaterialButtonStyle, REPORT_FORMAT } from '@acontplus/ui-kit';
9
10
  import { SafeHtml } from '@angular/platform-browser';
@@ -27,7 +28,6 @@ import { Direction } from '@angular/cdk/bidi';
27
28
  import { DialogRole, CdkDialogContainer, DialogRef } from '@angular/cdk/dialog';
28
29
  import { DateRange, MatCalendar } from '@angular/material/datepicker';
29
30
  import { MatCheckbox, MatCheckboxChange } from '@angular/material/checkbox';
30
- import * as _acontplus_ng_components from '@acontplus/ng-components';
31
31
  import { MatSidenav, MatSidenavContent } from '@angular/material/sidenav';
32
32
  import { RouterLinkActive } from '@angular/router';
33
33
 
@@ -659,6 +659,637 @@ declare class AcpContextMenu implements OnDestroy {
659
659
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AcpContextMenu, "acp-contextmenu", ["acpContextMenu"], { "model": { "alias": "model"; "required": true; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; }, { "hide": "hide"; "itemSelected": "itemSelected"; }, never, never, true, never>;
660
660
  }
661
661
 
662
+ /**
663
+ * Declarative dialog structure wrapper. Use it inside a dialog content template
664
+ * to group the titlebar, body and actions sections.
665
+ *
666
+ * @example
667
+ * ```html
668
+ * <acp-dialog>
669
+ * <acp-dialog-titlebar title="Edit user" icon="person" />
670
+ * <acp-dialog-content>
671
+ * <p>Dialog body</p>
672
+ * </acp-dialog-content>
673
+ * <acp-dialog-actions align="end">
674
+ * <acp-button text="Cancel" appearance="text" (clicked)="ref.close()" />
675
+ * <acp-button text="Save" color="success" (clicked)="ref.close(user)" />
676
+ * </acp-dialog-actions>
677
+ * </acp-dialog>
678
+ * ```
679
+ */
680
+ declare class AcpDialog {
681
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AcpDialog, never>;
682
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AcpDialog, "acp-dialog", never, {}, {}, never, ["acp-dialog-titlebar", "acp-dialog-content", "acp-dialog-actions", "*"], true, never>;
683
+ }
684
+
685
+ /**
686
+ * Declarative dialog content body. Use it inside `<acp-dialog>` or any dialog
687
+ * content template to mark the scrollable body section.
688
+ *
689
+ * @example
690
+ * ```html
691
+ * <acp-dialog-content>
692
+ * <p>Dialog body</p>
693
+ * </acp-dialog-content>
694
+ * ```
695
+ */
696
+ declare class AcpDialogContent {
697
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AcpDialogContent, never>;
698
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AcpDialogContent, "acp-dialog-content", never, {}, {}, never, ["*"], true, never>;
699
+ }
700
+
701
+ /** Layout direction for a dialog's content. Mirrors `Direction` from `@angular/cdk/bidi`. */
702
+ type AcpDialogDirection = 'ltr' | 'rtl';
703
+ /**
704
+ * Focus restoration behavior. Mirrors `RestoreFocusValue` from `@angular/cdk/dialog`.
705
+ * - `boolean`: restore focus to the previously-focused element.
706
+ * - `string`: restore focus to the first element matching the CSS selector.
707
+ * - `HTMLElement`: restore focus to the specific element.
708
+ */
709
+ type AcpDialogRestoreFocus = boolean | string | HTMLElement;
710
+ /**
711
+ * Named width presets for dialogs opened through {@link AcpDialogService}.
712
+ * `full` forces a full-screen dialog regardless of the viewport.
713
+ */
714
+ type AcpDialogSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl' | 'full';
715
+ /**
716
+ * Header configuration. When `header` is present in {@link AcpDialogConfig},
717
+ * the content is rendered inside the branded shell: a draggable
718
+ * title bar with an optional icon and a close button.
719
+ *
720
+ * As a shortcut, {@link AcpDialogConfig.title} can be used instead of
721
+ * `header.title`.
722
+ */
723
+ interface AcpDialogHeaderConfig {
724
+ /** Title text shown in the header. */
725
+ title: string;
726
+ /** Optional subtitle shown below the title. */
727
+ subtitle?: string;
728
+ /** Optional Material icon name displayed before the title. */
729
+ icon?: string;
730
+ /** Whether the header shows a close button. @default true */
731
+ closable?: boolean;
732
+ /** Accessible label for the close button. @default 'Close dialog' */
733
+ closeLabel?: string;
734
+ /** Whether the dialog can be dragged by its header. @default true */
735
+ draggable?: boolean;
736
+ /** Predefined color theme for the header. */
737
+ color?: AcpButtonColor$1;
738
+ /** Additional CSS class names to apply to the header for custom styling. */
739
+ colorClass?: string;
740
+ /** Color of the close icon. Defaults to a contrasting value based on `color`. */
741
+ closeColor?: 'dark' | 'light';
742
+ }
743
+ /**
744
+ * Outlet used by the declarative `<acp-dialog-actions>` component to register
745
+ * its content with `AcpDialogContainer`. The container then renders that
746
+ * content inside `<mat-dialog-actions>` instead of the configured `actions` list.
747
+ */
748
+ interface AcpDialogActionsOutlet {
749
+ /** Registers the declarative action template and its desired alignment. */
750
+ register(template: TemplateRef<unknown>, align?: 'start' | 'center' | 'end'): void;
751
+ /** Whether a declarative actions template has been registered. */
752
+ readonly hasActions: Signal<boolean>;
753
+ }
754
+ /**
755
+ * Outlet used by the declarative `<acp-dialog-titlebar>` component to register
756
+ * its template with `AcpDialogContainer`. The container renders it in the
757
+ * header area, outside the scrollable content.
758
+ */
759
+ interface AcpDialogTitlebarOutlet {
760
+ /** Registers the declarative titlebar template and its title. */
761
+ register(template: TemplateRef<unknown>, title?: string): void;
762
+ /** Whether a declarative titlebar template has been registered. */
763
+ readonly hasTitlebar: Signal<boolean>;
764
+ }
765
+ /**
766
+ * Which gestures are allowed to close the dialog. Both default to `true`.
767
+ */
768
+ interface AcpDialogCloseConfig {
769
+ /** Whether clicking the backdrop closes the dialog. @default true */
770
+ backdropClick?: boolean;
771
+ /** Whether pressing Escape closes the dialog. @default true */
772
+ escapeKey?: boolean;
773
+ }
774
+ /** Reactive state that can be bound to an action button. */
775
+ type AcpDialogActionState = boolean | Signal<boolean> | Observable<boolean>;
776
+ /** Payload emitted when a configured footer action is clicked. */
777
+ interface AcpDialogActionClick<R = unknown> {
778
+ /** The action that was clicked. */
779
+ action: AcpDialogAction<R>;
780
+ /** The original click event. Callers may call `event.preventDefault()` to stop the default close. */
781
+ event: MouseEvent;
782
+ }
783
+ /** Color variants supported by `acp-button`. */
784
+ type AcpButtonColor$1 = 'primary' | 'secondary' | 'accent' | 'error' | 'danger' | 'success' | 'warning' | 'info' | 'dark';
785
+ /** Button variants supported by `acp-button`. */
786
+ type AcpButtonVariant$1 = 'basic' | 'icon' | 'fab' | 'mini-fab';
787
+ /** Button appearances supported by `acp-button`. */
788
+ type AcpButtonAppearance$1 = 'text' | 'filled' | 'elevated' | 'outlined' | 'tonal';
789
+ /** Button types supported by `acp-button`. */
790
+ type AcpButtonType$1 = 'button' | 'submit' | 'reset';
791
+ /** Button sizes supported by `acp-button`. */
792
+ type AcpButtonSize = 'small' | 'medium' | 'large';
793
+ /**
794
+ * Action button rendered in the dialog footer.
795
+ * Uses the same property names as `acp-button`.
796
+ */
797
+ interface AcpDialogAction<R = unknown> {
798
+ /** Label shown in the button. */
799
+ text: string;
800
+ /** Unique key to identify this action in `actionClicked` or `afterClosed`. */
801
+ key?: string;
802
+ /** Color variant. */
803
+ color?: AcpButtonColor$1;
804
+ /** Button variant. @default 'basic' */
805
+ variant?: AcpButtonVariant$1;
806
+ /** Button appearance. @default 'filled' */
807
+ appearance?: AcpButtonAppearance$1;
808
+ /** Optional Material icon name. */
809
+ icon?: string;
810
+ /** Optional Material icon name displayed after the text. */
811
+ suffixIcon?: string;
812
+ /** Whether the action is disabled. Accepts a boolean, a signal or an observable. @default false */
813
+ disabled?: AcpDialogActionState;
814
+ /** Whether the action shows a loading state. Accepts a boolean, a signal or an observable. @default false */
815
+ loading?: AcpDialogActionState;
816
+ /** Accessible label for the button. */
817
+ ariaLabel?: string;
818
+ /** Button size. @default 'large' */
819
+ size?: AcpButtonSize;
820
+ /** Whether the button spans the full width. @default false */
821
+ block?: boolean;
822
+ /** Whether the FAB button is extended. @default false */
823
+ extended?: boolean;
824
+ /** HTML button type. @default 'button' */
825
+ type?: AcpButtonType$1;
826
+ /** ID of the form the button is associated with. */
827
+ form?: string;
828
+ /** Value returned when the dialog closes after clicking this action. */
829
+ result?: R;
830
+ }
831
+ /**
832
+ * Lazy loader for a dialog content component. Lets callers split the component
833
+ * into its own bundle and only load it when the dialog is actually opened.
834
+ *
835
+ * Usage:
836
+ * ```ts
837
+ * this.dialogs.open({ loadComponent: () => import('./edit-form').then(m => m.EditForm) }, {
838
+ * title: 'Edit',
839
+ * data: { id: 5 },
840
+ * });
841
+ * ```
842
+ * @template C Type of the content component class.
843
+ */
844
+ interface AcpDialogComponentLoader<C = unknown> {
845
+ loadComponent: () => Promise<Type<C>>;
846
+ }
847
+ /**
848
+ * Factory that returns dialog content (a component class, a `TemplateRef`,
849
+ * a string, another factory, or a lazy loader).
850
+ */
851
+ type AcpDialogContentFunction<C = unknown> = (data?: unknown) => AcpDialogContentInput<C> | Promise<AcpDialogContentInput<C>>;
852
+ /**
853
+ * Accepted `content` values for {@link AcpDialogService.open}.
854
+ *
855
+ * - `Type<C>`: a component class to render inside the dialog.
856
+ * - `AcpDialogComponentLoader<C>`: a lazy loader that resolves to a component.
857
+ * - `TemplateRef<unknown>`: an inline template rendered with dialog context.
858
+ * - `string`: a plain text/HTML message rendered in the content area.
859
+ * - `AcpDialogContentFunction<C>`: a function returning any of the above.
860
+ */
861
+ type AcpDialogContentInput<C = unknown> = Type<C> | AcpDialogComponentLoader<C> | TemplateRef<unknown> | string | AcpDialogContentFunction<C>;
862
+ /**
863
+ * Content after {@link AcpDialogService} has resolved lazy loaders and factories.
864
+ * @internal
865
+ */
866
+ type AcpDialogResolvedContent<C = unknown> = Type<C> | TemplateRef<unknown> | string;
867
+ /**
868
+ * Main configuration object for {@link AcpDialogService.open}.
869
+ *
870
+ * `content` can also be supplied here when calling `open()` with a single
871
+ * config object.
872
+ *
873
+ * @template D Type of the data delivered to the content component.
874
+ */
875
+ interface AcpDialogConfig<D = unknown> {
876
+ /** ID for the dialog. If omitted, a unique one will be generated. */
877
+ id?: string;
878
+ /**
879
+ * Data delivered to the content component. The component always reads it by
880
+ * injecting `ACP_DIALOG_DATA`, whether it renders bare or inside the shell.
881
+ */
882
+ data?: D;
883
+ /** Optional header. When present, the content renders inside the shell. */
884
+ header?: AcpDialogHeaderConfig;
885
+ /** Shortcut for `header.title`. Ignored when `header` is provided. */
886
+ title?: string;
887
+ /** Whether to show the branded header/titlebar. Set to `false` to hide it. @default true */
888
+ showHeader?: boolean;
889
+ /** Optional footer actions rendered as `acp-button` instances. */
890
+ actions?: AcpDialogAction[];
891
+ /** Whether to show the configured footer actions. Set to `false` to hide them. @default true */
892
+ showActions?: boolean;
893
+ /** Alignment of the footer actions. @default 'end' */
894
+ actionsAlign?: 'start' | 'center' | 'end';
895
+ /** Named size preset. Ignored when `width` is set. @default 'md' */
896
+ size?: AcpDialogSize;
897
+ /** Explicit width, takes precedence over `size`. Numbers are treated as pixels. */
898
+ width?: string | number;
899
+ /** Dialog height. Numbers are treated as pixels. */
900
+ height?: string | number;
901
+ /** Minimum width. Numbers are treated as pixels. */
902
+ minWidth?: string | number;
903
+ /** Minimum height. Numbers are treated as pixels. */
904
+ minHeight?: string | number;
905
+ /** @default '95vw' */
906
+ maxWidth?: string | number;
907
+ /** Maximum height. Numbers are treated as pixels. */
908
+ maxHeight?: string | number;
909
+ /** Whether the dialog goes full-screen on handset viewports. @default false */
910
+ fullScreenOnMobile?: boolean;
911
+ position?: DialogPosition;
912
+ /** Extra panel classes. `acp-dialog` and `acp-dialog-{size}` are always added. */
913
+ panelClass?: string | string[];
914
+ backdropClass?: string | string[];
915
+ /** @default true */
916
+ hasBackdrop?: boolean;
917
+ /**
918
+ * Whether the user can use Escape or backdrop click to close the dialog.
919
+ * When set, it overrides `closeOn` for both gestures.
920
+ */
921
+ disableClose?: boolean;
922
+ /** Independent close gestures. @default { backdropClick: true, escapeKey: true } */
923
+ closeOn?: AcpDialogCloseConfig;
924
+ /** Whether the dialog closes on browser back/forward navigation. @default true */
925
+ closeOnNavigation?: boolean;
926
+ /** Layout direction for the dialog's content. @default 'ltr' */
927
+ direction?: AcpDialogDirection;
928
+ /**
929
+ * Function used to determine whether the dialog is allowed to close.
930
+ * Receives the attempted result, the config and the component instance.
931
+ */
932
+ closePredicate?: <Result = unknown, Component = unknown, Config extends AcpDialogConfig = AcpDialogConfig>(result: Result | undefined, config: Config, componentInstance: Component | null) => boolean;
933
+ /**
934
+ * Where the dialog component should live in Angular's logical component tree.
935
+ * Forwarded to `MatDialogConfig.viewContainerRef`; use this when the dialog
936
+ * needs access to providers scoped to a lazy-loaded feature or route.
937
+ */
938
+ viewContainerRef?: ViewContainerRef;
939
+ /** Injector used to instantiate the content component. Takes precedence over `viewContainerRef`. */
940
+ injector?: Injector;
941
+ /** Bindings to apply to a component rendered inside the dialog. Does nothing for template-based content. */
942
+ bindings?: Binding[];
943
+ /** @default 'first-tabbable' */
944
+ autoFocus?: boolean | 'first-tabbable' | 'dialog' | 'first-heading';
945
+ /** Whether to wait for the opening animation before trapping focus. @default false */
946
+ delayFocusTrap?: boolean;
947
+ /** @default true */
948
+ restoreFocus?: AcpDialogRestoreFocus;
949
+ ariaLabel?: string;
950
+ ariaLabelledBy?: string;
951
+ ariaDescribedBy?: string;
952
+ /** Whether to set `aria-modal` on the dialog element. @default false */
953
+ ariaModal?: boolean;
954
+ role?: 'dialog' | 'alertdialog';
955
+ /** Scroll behavior: a CDK ScrollStrategy or a shortcut name ('block', 'close', 'noop'). */
956
+ scrollStrategy?: ScrollStrategy | 'block' | 'close' | 'noop';
957
+ /** @default '300ms' */
958
+ enterAnimationDuration?: number | string;
959
+ /** @default '200ms' */
960
+ exitAnimationDuration?: number | string;
961
+ }
962
+ /**
963
+ * Payload delivered through `MAT_DIALOG_DATA` to {@link AcpDialogContainer}.
964
+ * @internal Not part of the public API contract.
965
+ */
966
+ interface AcpDialogContainerData<D = unknown> {
967
+ /** The resolved content rendered inside the shell. */
968
+ content: AcpDialogResolvedContent<unknown>;
969
+ /** The public configuration provided by the caller. */
970
+ config: AcpDialogConfig<D>;
971
+ /** Shared action-click stream so the caller and content observe the same events. */
972
+ actionClicks?: Subject<AcpDialogActionClick>;
973
+ }
974
+
975
+ /**
976
+ * Reference to a dialog opened via `AcpDialogService`. Mirrors the public surface
977
+ * of `MatDialogRef` so consumers can subscribe to `afterClosed()`, close manually,
978
+ * inspect the component instance, etc.
979
+ *
980
+ * It is both the value returned by `AcpDialogService.open()` and an injectable
981
+ * token: content components can `inject(AcpDialogRef)` to close themselves.
982
+ */
983
+ declare class AcpDialogRef<R = unknown> {
984
+ private readonly matDialogRef;
985
+ /** Emits every time a configured dialog action is clicked, before it closes. */
986
+ clickedResult: Subject<AcpDialogActionClick<R>>;
987
+ /** Observable mirror of {@link clickedResult}. */
988
+ get actionClicked$(): Observable<AcpDialogActionClick<R>>;
989
+ constructor(matDialogRef: MatDialogRef<unknown, R> | Promise<MatDialogRef<unknown, R>>, clickedResult?: Subject<AcpDialogActionClick<R>>);
990
+ /** The instance of the component opened into the dialog. */
991
+ get componentInstance(): unknown;
992
+ /** `ComponentRef` of the component opened into the dialog. */
993
+ get componentRef(): ComponentRef<unknown> | null;
994
+ /** Whether the user is allowed to close the dialog. */
995
+ get disableClose(): boolean | undefined;
996
+ /** Unique ID for the dialog. */
997
+ get id(): string;
998
+ /** Gets an observable that is notified when the dialog is finished closing. */
999
+ afterClosed(): Observable<R | undefined>;
1000
+ /** Gets an observable that is notified when the dialog is finished opening. */
1001
+ afterOpened(): Observable<void>;
1002
+ /** Gets an observable that is notified when the dialog has started closing. */
1003
+ beforeClosed(): Observable<R | undefined>;
1004
+ /** Gets an observable that emits when the overlay's backdrop has been clicked. */
1005
+ backdropClick(): Observable<MouseEvent>;
1006
+ /** Gets an observable that emits when keydown events are targeted on the overlay. */
1007
+ keydownEvents(): Observable<KeyboardEvent>;
1008
+ /** Gets the current lifecycle state of the dialog. */
1009
+ getState(): MatDialogState | undefined;
1010
+ /** Resolves with the result once the dialog finishes closing. */
1011
+ get closed(): Promise<R | undefined>;
1012
+ /** Observable that emits the result once the dialog finishes closing. */
1013
+ get closed$(): Observable<R | undefined>;
1014
+ /** Closes the dialog, optionally returning a result. */
1015
+ close(result?: R): void;
1016
+ /** Updates the dialog's position. */
1017
+ updatePosition(position?: {
1018
+ left?: string;
1019
+ top?: string;
1020
+ right?: string;
1021
+ bottom?: string;
1022
+ }): this;
1023
+ /** Updates the dialog's width and height. */
1024
+ updateSize(width?: string, height?: string): this;
1025
+ /** Add a CSS class or an array of classes to the overlay pane. */
1026
+ addPanelClass(classes: string | string[]): this;
1027
+ /** Remove a CSS class or an array of classes from the overlay pane. */
1028
+ removePanelClass(classes: string | string[]): this;
1029
+ private fromRef;
1030
+ private readRef;
1031
+ private withRef;
1032
+ }
1033
+
1034
+ /**
1035
+ * Reusable dialog service — a branded alternative to `MatDialog`. Every dialog
1036
+ * renders inside `AcpDialogContainer`, so content always works the same way:
1037
+ *
1038
+ * - read data with `inject(ACP_DIALOG_DATA)`,
1039
+ * - close the dialog with `inject(AcpDialogRef).close(result)`.
1040
+ *
1041
+ * Usage:
1042
+ * ```ts
1043
+ * private dialogs = inject(AcpDialogService);
1044
+ *
1045
+ * this.dialogs.open(UserForm, {
1046
+ * title: 'Edit user',
1047
+ * actions: [
1048
+ * { text: 'Cancel' },
1049
+ * { text: 'Save', color: 'success', result: user },
1050
+ * ],
1051
+ * size: 'lg',
1052
+ * data: { userId: 5 },
1053
+ * }).afterClosed().subscribe(saved => {
1054
+ * // handle result
1055
+ * });
1056
+ *
1057
+ * // or with a single config object:
1058
+ * this.dialogs.open({
1059
+ * content: UserForm,
1060
+ * title: 'Edit user',
1061
+ * actions: [{ text: 'Save', color: 'success' }],
1062
+ * data: { userId: 5 },
1063
+ * }).afterClosed().subscribe(saved => {
1064
+ * // handle result
1065
+ * });
1066
+ * ```
1067
+ */
1068
+ declare class AcpDialogService {
1069
+ private readonly dialog;
1070
+ private readonly overlay;
1071
+ private readonly breakpointObserver;
1072
+ private readonly defaults;
1073
+ /** Stream that emits when all open dialogs have finished closing. */
1074
+ get afterAllClosed(): Observable<void>;
1075
+ /** Stream that emits when a dialog has been opened. */
1076
+ get afterOpened(): Observable<MatDialogRef<unknown>>;
1077
+ /** Keeps track of the currently-open dialogs. */
1078
+ get openDialogs(): MatDialogRef<unknown>[];
1079
+ /**
1080
+ * Opens a dialog with a component class.
1081
+ * @param component The content component to render.
1082
+ * @param config Dialog configuration (merged over `provideAcpDialogDefaults`).
1083
+ * @returns An {@link AcpDialogRef}; subscribe to `ref.afterClosed()` for the result.
1084
+ */
1085
+ open<T, D = unknown, R = unknown>(component: Type<T>, config?: AcpDialogConfig<D>): AcpDialogRef<R>;
1086
+ /**
1087
+ * Opens a dialog with a `TemplateRef`.
1088
+ * @param template The inline template to render.
1089
+ * @param config Dialog configuration (merged over `provideAcpDialogDefaults`).
1090
+ * @returns An {@link AcpDialogRef}; subscribe to `ref.afterClosed()` for the result.
1091
+ */
1092
+ open<D = unknown, R = unknown>(template: TemplateRef<unknown>, config?: AcpDialogConfig<D>): AcpDialogRef<R>;
1093
+ /**
1094
+ * Opens a dialog from a single config object.
1095
+ * @param config Dialog configuration that includes the `content` to render.
1096
+ * @returns An {@link AcpDialogRef}; subscribe to `ref.afterClosed()` for the result.
1097
+ */
1098
+ open<D = unknown, R = unknown>(config: AcpDialogConfig<D> & {
1099
+ content: AcpDialogContentInput;
1100
+ }): AcpDialogRef<R>;
1101
+ /** Closes all currently open dialogs. */
1102
+ closeAll(): void;
1103
+ /** Finds an open dialog by its id. */
1104
+ getDialogById(id: string): AcpDialogRef | undefined;
1105
+ private openWithContent;
1106
+ private createMatRef;
1107
+ private resolveContent;
1108
+ private mergeDefaults;
1109
+ private buildMatConfig;
1110
+ private normalizeCloseOn;
1111
+ private toMatSize;
1112
+ private resolveScrollStrategy;
1113
+ private wireCloseGestures;
1114
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AcpDialogService, never>;
1115
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<AcpDialogService>;
1116
+ }
1117
+
1118
+ /**
1119
+ * Shell that hosts any content inside an `AcpDialog`. Renders the optional
1120
+ * branded header (draggable title bar with icon, title and close button) and
1121
+ * optional footer actions.
1122
+ *
1123
+ * Content can be a component class, a `TemplateRef`, or a plain string. It is
1124
+ * created with a child `Injector` that provides `ACP_DIALOG_DATA` (the caller's
1125
+ * `config.data`) and `AcpDialogRef` (a typed handle to close the dialog).
1126
+ *
1127
+ * Opened exclusively through `AcpDialogService`; not meant to be used in templates.
1128
+ */
1129
+ declare class AcpDialogContainer implements AfterViewInit {
1130
+ private readonly parentInjector;
1131
+ private readonly containerData;
1132
+ private readonly actionClicks;
1133
+ private readonly dialogRef;
1134
+ /** Outlet where the configured content is rendered. */
1135
+ private readonly contentHost;
1136
+ /** Outlet where declarative `acp-dialog-actions` content is rendered. */
1137
+ private readonly actionOutlet;
1138
+ /** Outlet where declarative `acp-dialog-titlebar` content is rendered. */
1139
+ private readonly titlebarOutletRef;
1140
+ /** Template used to render a plain string content. */
1141
+ private readonly stringTemplate;
1142
+ /** Whether the content has registered a declarative `acp-dialog-actions` template. */
1143
+ protected readonly hasDeclarativeActions: _angular_core.WritableSignal<boolean>;
1144
+ /** Whether the content has registered a declarative `acp-dialog-titlebar` template. */
1145
+ protected readonly hasDeclarativeTitlebar: _angular_core.WritableSignal<boolean>;
1146
+ /** Pending declarative actions template, captured before the outlet is ready. */
1147
+ private readonly pendingActionTemplate;
1148
+ /** Pending declarative titlebar template, captured before the outlet is ready. */
1149
+ private readonly pendingTitlebarTemplate;
1150
+ /** Alignment requested by a declarative actions template. */
1151
+ protected readonly declarativeActionsAlign: _angular_core.WritableSignal<"start" | "end" | "center" | undefined>;
1152
+ /** Title requested by a declarative titlebar template. */
1153
+ protected readonly declarativeTitle: _angular_core.WritableSignal<string | undefined>;
1154
+ /** Outlet object provided to content so `acp-dialog-actions` can register itself. */
1155
+ private readonly actionsOutlet;
1156
+ /** Outlet object provided to content so `acp-dialog-titlebar` can register itself. */
1157
+ private readonly titlebarOutlet;
1158
+ /** Exposed header configuration, including the `title` shortcut. */
1159
+ protected readonly headerConfig: Signal<AcpDialogHeaderConfig | undefined>;
1160
+ /** Title used for the actions footer label. */
1161
+ protected readonly resolvedDialogTitle: Signal<string | undefined>;
1162
+ /** Alignment used for the actions footer. */
1163
+ protected readonly resolvedActionsAlign: Signal<"start" | "end" | "center">;
1164
+ /** Whether the current content is a plain string. */
1165
+ protected readonly isStringContent: _angular_core.WritableSignal<boolean>;
1166
+ get config(): _acontplus_ng_components.AcpDialogConfig<unknown>;
1167
+ get content(): _acontplus_ng_components.AcpDialogResolvedContent<unknown>;
1168
+ constructor();
1169
+ ngAfterViewInit(): void;
1170
+ private createContentInjector;
1171
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AcpDialogContainer, never>;
1172
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AcpDialogContainer, "acp-dialog-container", never, {}, {}, never, never, true, never>;
1173
+ }
1174
+
1175
+ /**
1176
+ * Dialog title bar. Use it inside a dialog content template for a declarative
1177
+ * header, or let `AcpDialogContainer` instantiate it from `config.header`.
1178
+ *
1179
+ * @example
1180
+ * ```html
1181
+ * <acp-dialog-titlebar title="Edit user" icon="person">
1182
+ * <acp-dialog-actions align="end">
1183
+ * <acp-button text="Cancel" appearance="text" (clicked)="ref.close()" />
1184
+ * <acp-button text="Save" color="success" (clicked)="ref.close(user)" />
1185
+ * </acp-dialog-actions>
1186
+ * </acp-dialog-titlebar>
1187
+ * ```
1188
+ */
1189
+ declare class AcpDialogTitlebar implements AfterViewInit {
1190
+ private readonly elementRef;
1191
+ private readonly matDialogRef;
1192
+ private readonly outlet;
1193
+ private readonly titlebarTemplateRef;
1194
+ protected readonly renderInline: _angular_core.WritableSignal<boolean>;
1195
+ protected readonly hostDisplay: _angular_core.WritableSignal<string>;
1196
+ /** CSS classes applied to the header element. */
1197
+ protected readonly headerClasses: Signal<string>;
1198
+ /** Close-button color resolved from `closeColor` or the header background. */
1199
+ protected readonly resolvedCloseColor: Signal<"dark" | "light">;
1200
+ /** Title text shown in the header. */
1201
+ title: _angular_core.InputSignal<string | undefined>;
1202
+ /** Optional subtitle shown below the title. */
1203
+ subtitle: _angular_core.InputSignal<string | undefined>;
1204
+ /** Optional Material icon name displayed before the title. */
1205
+ icon: _angular_core.InputSignal<string | undefined>;
1206
+ /** Whether the close button is shown. @default true */
1207
+ closable: _angular_core.InputSignal<boolean>;
1208
+ /** Accessible label for the close button. @default 'Close dialog' */
1209
+ closeLabel: _angular_core.InputSignal<string>;
1210
+ /** Whether the dialog can be dragged by its header. @default true */
1211
+ draggable: _angular_core.InputSignal<boolean>;
1212
+ /** Predefined header color theme. */
1213
+ color: _angular_core.InputSignal<AcpButtonColor$1 | undefined>;
1214
+ /** Additional CSS class names to apply to the header. */
1215
+ colorClass: _angular_core.InputSignal<string | undefined>;
1216
+ /** Explicit close icon color. If omitted, it is chosen from the header `color`. */
1217
+ closeColor: _angular_core.InputSignal<"dark" | "light" | undefined>;
1218
+ /** Emitted when the close button is clicked and no `MatDialogRef` is available. */
1219
+ closed: _angular_core.OutputEmitterRef<void>;
1220
+ close(): void;
1221
+ bringToFront(): void;
1222
+ ngAfterViewInit(): void;
1223
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AcpDialogTitlebar, never>;
1224
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AcpDialogTitlebar, "acp-dialog-titlebar", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "subtitle": { "alias": "subtitle"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "closable": { "alias": "closable"; "required": false; "isSignal": true; }; "closeLabel": { "alias": "closeLabel"; "required": false; "isSignal": true; }; "draggable": { "alias": "draggable"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "colorClass": { "alias": "colorClass"; "required": false; "isSignal": true; }; "closeColor": { "alias": "closeColor"; "required": false; "isSignal": true; }; }, { "closed": "closed"; }, never, ["*"], true, never>;
1225
+ }
1226
+
1227
+ /**
1228
+ * Dialog actions container. Use it declaratively inside a dialog content
1229
+ * template, or let `AcpDialogContainer` instantiate it from `config.actions`.
1230
+ *
1231
+ * @example
1232
+ * ```html
1233
+ * <acp-dialog-actions align="end">
1234
+ * <acp-button text="Cancel" appearance="text" (clicked)="ref.close()" />
1235
+ * <acp-button text="Save" color="success" (clicked)="ref.close(user)" />
1236
+ * </acp-dialog-actions>
1237
+ * ```
1238
+ */
1239
+ declare class AcpDialogActions implements AfterViewInit {
1240
+ private readonly outlet;
1241
+ private readonly matDialogRef;
1242
+ private readonly containerData;
1243
+ private readonly injector;
1244
+ private readonly actionsTemplateRef;
1245
+ private readonly actionStateSignals;
1246
+ protected readonly renderInline: _angular_core.WritableSignal<boolean>;
1247
+ protected readonly hostDisplay: _angular_core.WritableSignal<string>;
1248
+ /** Alignment of the action buttons. @default 'end' */
1249
+ align: _angular_core.InputSignal<"start" | "end" | "center">;
1250
+ /** Configured footer actions. When omitted, the component works as a declarative slot. */
1251
+ actions: _angular_core.InputSignal<AcpDialogAction<unknown>[] | undefined>;
1252
+ /** Optional title used to label the actions footer. */
1253
+ dialogTitle: _angular_core.InputSignal<string | undefined>;
1254
+ /** Accessible label for the actions footer. Falls back to a generated one. */
1255
+ ariaLabel: Signal<string>;
1256
+ ngAfterViewInit(): void;
1257
+ /** Resolves an action's boolean state (boolean, signal or observable). */
1258
+ protected resolveActionState(state: AcpDialogActionState | undefined): boolean;
1259
+ /** Broadcasts the click and closes the dialog unless the event is prevented. */
1260
+ protected handleActionClick(event: MouseEvent, action: AcpDialogAction): void;
1261
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<AcpDialogActions, never>;
1262
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AcpDialogActions, "acp-dialog-actions", never, { "align": { "alias": "align"; "required": false; "isSignal": true; }; "actions": { "alias": "actions"; "required": false; "isSignal": true; }; "dialogTitle": { "alias": "dialogTitle"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
1263
+ }
1264
+
1265
+ /**
1266
+ * Token used to deliver `AcpDialogConfig.data` to the content component.
1267
+ * Content components read it with `inject(ACP_DIALOG_DATA)` (typed as `D`).
1268
+ * This is the single data channel, used identically for bare and shell dialogs.
1269
+ */
1270
+ declare const ACP_DIALOG_DATA: InjectionToken<unknown>;
1271
+ /**
1272
+ * Application-wide defaults for every dialog opened through `AcpDialogService`.
1273
+ * Mirrors `MAT_DIALOG_DEFAULT_OPTIONS` from Angular Material.
1274
+ * Per-call config always wins over these defaults.
1275
+ */
1276
+ declare const ACP_DIALOG_DEFAULT_OPTIONS: InjectionToken<AcpDialogConfig<unknown>>;
1277
+ /**
1278
+ * Token used by the declarative `<acp-dialog-actions>` component to register
1279
+ * its action buttons with the hosting `AcpDialogContainer`.
1280
+ */
1281
+ declare const ACP_DIALOG_ACTIONS: InjectionToken<AcpDialogActionsOutlet>;
1282
+ /**
1283
+ * Token used by the declarative `<acp-dialog-titlebar>` component to register
1284
+ * its template with the hosting `AcpDialogContainer`.
1285
+ */
1286
+ declare const ACP_DIALOG_TITLEBAR: InjectionToken<AcpDialogTitlebarOutlet>;
1287
+ /**
1288
+ * Registers application-wide dialog defaults, e.g.:
1289
+ * `provideAcpDialogDefaults({ fullScreenOnMobile: true })`.
1290
+ */
1291
+ declare function provideAcpDialogDefaults(defaults: AcpDialogConfig): EnvironmentProviders;
1292
+
662
1293
  type DialogSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'xxl' | 'full';
663
1294
  /**
664
1295
  * @interface MatCustomDialogConfig
@@ -683,7 +1314,16 @@ interface MatCustomDialogConfig<T = unknown> {
683
1314
  panelClass?: string | string[];
684
1315
  backdropClass?: string | string[];
685
1316
  hasBackdrop?: boolean;
1317
+ /**
1318
+ * Whether clicking the backdrop closes the dialog.
1319
+ * @default true
1320
+ */
686
1321
  backdropClickClosable?: boolean;
1322
+ /**
1323
+ * Whether pressing Escape closes the dialog. Handled independently from
1324
+ * `backdropClickClosable`.
1325
+ * @default true
1326
+ */
687
1327
  escapeKeyClosable?: boolean;
688
1328
  isMobileFullScreen?: boolean;
689
1329
  autoFocus?: boolean | 'first-tabbable' | 'dialog' | 'first-heading';
@@ -734,6 +1374,12 @@ interface DialogWrapperConfig<T = unknown> {
734
1374
  * @default true
735
1375
  */
736
1376
  showCloseButton?: boolean;
1377
+ /**
1378
+ * Accessible label for the header close button.
1379
+ * Useful to provide a localized label for screen readers.
1380
+ * @default 'Close dialog'
1381
+ */
1382
+ closeAriaLabel?: string;
737
1383
  }
738
1384
 
739
1385
  declare class AdvancedDialogService {
@@ -770,6 +1416,11 @@ declare class AdvancedDialogService {
770
1416
  private applyFullScreenConfig;
771
1417
  private applyStandardConfig;
772
1418
  private applyCommonConfig;
1419
+ /**
1420
+ * Re-enables a single close gesture (backdrop click or Escape) when the other
1421
+ * one is disabled, since MatDialog's `disableClose` blocks both at once.
1422
+ */
1423
+ private wireCloseBehavior;
773
1424
  private getDialogWidth;
774
1425
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AdvancedDialogService, never>;
775
1426
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AdvancedDialogService>;
@@ -777,54 +1428,55 @@ declare class AdvancedDialogService {
777
1428
 
778
1429
  type DialogType = 'normal' | 'alert';
779
1430
  /**
780
- * Servicio centralizado para manejar z-index de todos los diálogos
781
- * Asegura que los diálogos siempre aparezcan en el orden correcto
782
- * Los AlertDialogs siempre tienen prioridad sobre otros diálogos
1431
+ * Centralized service that manages z-index stacking for all dialogs.
1432
+ * Ensures dialogs always appear in the correct order.
1433
+ * Alert dialogs always take priority over regular dialogs.
783
1434
  */
784
1435
  declare class DialogZIndexService {
785
1436
  private static readonly Z_INDEX_RANGES;
786
1437
  private static readonly Z_INDEX_INCREMENT;
787
1438
  /**
788
- * Obtiene el siguiente z-index disponible para un tipo específico de diálogo
789
- * @param type Tipo de diálogo (normal, alert)
790
- * @returns El próximo z-index a usar
1439
+ * Gets the next available z-index for a specific dialog type.
1440
+ * @param type Dialog type (normal, alert)
1441
+ * @returns The next z-index to use
791
1442
  */
792
1443
  getNextZIndex(type?: DialogType): number;
793
1444
  /**
794
- * Obtiene el z-index actual más alto para un tipo específico
795
- * @param type Tipo de diálogo
796
- * @returns El z-index más alto actualmente en uso para ese tipo
1445
+ * Gets the highest z-index currently in use for a specific type.
1446
+ * @param type Dialog type
1447
+ * @returns The highest z-index currently in use for that type
797
1448
  */
798
1449
  getCurrentZIndex(type?: DialogType): number;
799
1450
  /**
800
- * Obtiene el z-index más alto de todos los tipos
801
- * @returns El z-index más alto de todos los diálogos
1451
+ * Gets the highest z-index across all dialog types.
1452
+ * @returns The highest z-index of all dialogs
802
1453
  */
803
1454
  getHighestZIndex(): number;
804
1455
  /**
805
- * Resetea el contador de z-index (útil para testing)
806
- * @param type Tipo específico a resetear, o undefined para resetear todos
1456
+ * Resets the z-index counter (useful for testing).
1457
+ * @param type Specific type to reset, or undefined to reset all
807
1458
  */
808
1459
  reset(type?: DialogType): void;
809
1460
  /**
810
- * Aplica z-index a un diálogo específico
811
- * @param dialogRef Referencia al diálogo
812
- * @param type Tipo de diálogo (determina el rango de z-index)
813
- * @param zIndex Z-index específico a aplicar (opcional)
1461
+ * Applies a z-index to a specific dialog.
1462
+ * @param dialogRef Dialog reference
1463
+ * @param type Dialog type (determines the z-index range)
1464
+ * @param zIndex Specific z-index to apply (optional)
814
1465
  */
815
- applyZIndex(dialogRef: any, type?: DialogType, zIndex?: number): void;
1466
+ applyZIndex(dialogRef: MatDialogRef<unknown>, type?: DialogType, zIndex?: number): void;
816
1467
  /**
817
- * Trae un diálogo al frente (usado por drag functionality)
818
- * @param element Elemento del diálogo a traer al frente
819
- * @param type Tipo de diálogo
1468
+ * Brings a dialog to the front (used by the drag functionality).
1469
+ * @param element Dialog element to bring to the front
1470
+ * @param type Dialog type
820
1471
  */
821
1472
  bringToFront(element: HTMLElement, type?: DialogType): void;
822
1473
  /**
823
- * Fuerza un diálogo a estar siempre encima de todos los demás
824
- * Útil para alertas críticas que deben tener máxima prioridad
825
- * @param dialogRef Referencia al diálogo
1474
+ * Forces a dialog to stay above every other dialog.
1475
+ * Useful for critical alerts that must have maximum priority.
1476
+ * @param dialogRef Dialog reference
826
1477
  */
827
- forceToTop(dialogRef: any): void;
1478
+ forceToTop(dialogRef: MatDialogRef<unknown>): void;
1479
+ private getOverlayRef;
828
1480
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DialogZIndexService, never>;
829
1481
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<DialogZIndexService>;
830
1482
  }
@@ -856,7 +1508,7 @@ declare class ThemeSwitcher {
856
1508
  *
857
1509
  * This component is typically used with the AdvancedDialogService's openInWrapper method.
858
1510
  */
859
- declare class DialogWrapper implements AfterViewInit, OnDestroy {
1511
+ declare class DialogWrapper implements AfterViewInit {
860
1512
  dialogRef: MatDialogRef<DialogWrapper, any>;
861
1513
  config: DialogWrapperConfig<unknown>;
862
1514
  private zIndexService;
@@ -870,26 +1522,11 @@ declare class DialogWrapper implements AfterViewInit, OnDestroy {
870
1522
  * Used to bring the dialog to the front when clicked.
871
1523
  */
872
1524
  readonly header: Signal<ElementRef | undefined>;
873
- /**
874
- * Timeout ID for debouncing z-index updates to prevent excessive DOM manipulations.
875
- */
876
- private bringToFrontTimeoutId;
877
- /**
878
- * Creates an instance of DialogWrapper.
879
- *
880
- * @param dialogRef Reference to the dialog opened via the Material Dialog service
881
- * @param config Configuration for the dialog wrapper, injected from MAT_DIALOG_DATA
882
- */
883
- constructor();
884
1525
  /**
885
1526
  * Lifecycle hook that initializes the dynamic content after the view is ready.
886
1527
  * Creates the component specified in the config and passes data to it.
887
1528
  */
888
1529
  ngAfterViewInit(): void;
889
- /**
890
- * Cleanup lifecycle hook to cancel any pending animation frame requests.
891
- */
892
- ngOnDestroy(): void;
893
1530
  /**
894
1531
  * Closes the dialog.
895
1532
  * Called when the close button in the header is clicked.
@@ -1136,7 +1773,7 @@ declare class Button {
1136
1773
  type AcpButtonVariant = 'basic' | 'icon' | 'fab' | 'mini-fab';
1137
1774
  type AcpButtonAppearance = 'text' | 'filled' | 'elevated' | 'outlined' | 'tonal';
1138
1775
  type AcpButtonType = 'button' | 'submit' | 'reset';
1139
- type AcpButtonColor = 'primary' | 'secondary' | 'accent' | 'error' | 'success' | 'warning' | 'info' | 'dark';
1776
+ type AcpButtonColor = 'primary' | 'secondary' | 'accent' | 'error' | 'danger' | 'success' | 'warning' | 'info' | 'dark' | 'light';
1140
1777
  declare abstract class BaseButton {
1141
1778
  color: _angular_core.InputSignal<AcpButtonColor>;
1142
1779
  square: _angular_core.InputSignalWithTransform<boolean, unknown>;
@@ -1155,6 +1792,8 @@ declare abstract class BaseButton {
1155
1792
  block: _angular_core.InputSignalWithTransform<boolean, unknown>;
1156
1793
  size: _angular_core.InputSignal<"small" | "medium" | "large">;
1157
1794
  text: _angular_core.InputSignal<string | undefined>;
1795
+ ariaLabel: _angular_core.InputSignal<string | undefined>;
1796
+ form: _angular_core.InputSignal<string | undefined>;
1158
1797
  hasText: _angular_core.Signal<boolean>;
1159
1798
  clicked: _angular_core.OutputEmitterRef<void>;
1160
1799
  focused: _angular_core.OutputEmitterRef<void>;
@@ -1166,7 +1805,7 @@ declare abstract class BaseButton {
1166
1805
  isDisabled: _angular_core.Signal<boolean>;
1167
1806
  pointerEvents: _angular_core.Signal<"none" | "auto">;
1168
1807
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<BaseButton, never>;
1169
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BaseButton, never, never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "square": { "alias": "square"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "suffixIcon": { "alias": "suffixIcon"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "showProgress": { "alias": "showProgress"; "required": false; "isSignal": true; }; "progressType": { "alias": "progressType"; "required": false; "isSignal": true; }; "progressText": { "alias": "progressText"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "disableRipple": { "alias": "disableRipple"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "extended": { "alias": "extended"; "required": false; "isSignal": true; }; "block": { "alias": "block"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; }, { "clicked": "clicked"; "focused": "focused"; "blurred": "blurred"; }, never, never, true, never>;
1808
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<BaseButton, never, never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "square": { "alias": "square"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "suffixIcon": { "alias": "suffixIcon"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "showProgress": { "alias": "showProgress"; "required": false; "isSignal": true; }; "progressType": { "alias": "progressType"; "required": false; "isSignal": true; }; "progressText": { "alias": "progressText"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "disableRipple": { "alias": "disableRipple"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "type": { "alias": "type"; "required": false; "isSignal": true; }; "extended": { "alias": "extended"; "required": false; "isSignal": true; }; "block": { "alias": "block"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "form": { "alias": "form"; "required": false; "isSignal": true; }; }, { "clicked": "clicked"; "focused": "focused"; "blurred": "blurred"; }, never, never, true, never>;
1170
1809
  }
1171
1810
 
1172
1811
  declare class AcpButton extends BaseButton {
@@ -1665,7 +2304,7 @@ declare class AcpGridExpansionToggle {
1665
2304
 
1666
2305
  declare const DATA_GRID_DEFAULT_OPTIONS: InjectionToken<DataGridDefaultOptions>;
1667
2306
  declare class DataGrid implements AfterViewInit, OnChanges {
1668
- size: _angular_core.InputSignal<"normal" | "small" | "medium">;
2307
+ size: _angular_core.InputSignal<"small" | "medium" | "normal">;
1669
2308
  protected _animationsDisabled: boolean;
1670
2309
  private readonly _utils;
1671
2310
  private readonly _changeDetectorRef;
@@ -4755,5 +5394,5 @@ declare class StatusDisplayPipe implements PipeTransform {
4755
5394
  static ɵpipe: _angular_core.ɵɵPipeDeclaration<StatusDisplayPipe, "statusDisplay", true>;
4756
5395
  }
4757
5396
 
4758
- export { ACP_ACTIVE_DATE_DEBOUNCE, ACP_BADGE_COLORS, ACP_BADGE_SHAPES, ACP_BADGE_SIZES, ACP_BADGE_VARIANTS, ACP_DATE_OPTION_TYPE, ACP_DEFAULT_DATE_OPTIONS, ACP_DRAWER_DATA, ACP_DRAWER_DEFAULT_OPTIONS, ACP_POPOVER_CONTENT, ACP_POPOVER_DEFAULT_OPTIONS, ACP_POPOVER_SCROLL_STRATEGY, AcpAlert, AcpBadge, AcpButton, AcpCard, AcpCheckboxBase, AcpCheckboxGroup, AcpContextMenu, AcpContextMenuDirective, AcpContextMenuPanel, AcpContextMenuService, AcpDateRangeInput, AcpDrawer, AcpDrawerConfig, AcpDrawerContainer, AcpDrawerRef, AcpHeader, AcpHeaderActions, AcpHeaderBranding, AcpHeaderCenter, AcpHeaderEnd, AcpHeaderLanguage, AcpHeaderNotifications, AcpHeaderStart, AcpHeaderTheme, AcpHeaderWorkspace, AcpKpiCard, AcpPopover, AcpPopoverContent, AcpPopoverTarget, AcpPopoverTrigger, AcpSelectDateOption, AcpShellLayout, AcpShellSlotHeader, AcpShellSlotSidebar, AcpShellSlotSidebarFooter, AcpShellSlotToolbar, AcpShellSlotTopmenu, AcpSidebar, AcpSidebarBranding, AcpSidebarContent, AcpSidebarHeader, AcpSidebarToggle, AcpSidebarUserPanel, AcpTopmenu, AcpTopmenuPanel, AdvancedDialogService, Branding, Button, CONTEXT_MENU_DATA, CONTEXT_MENU_ITEMS, DATA_GRID_DEFAULT_OPTIONS, DataGrid, DateRangePicker, DialogWrapper, DialogZIndexService, DynamicCard, DynamicSelect, GetTotalPipe, IconRegistryService, InputChip, KPI_CARD_TOKENS, KPI_CARD_TREND_CONFIGS, KeyboardNavigationService, NavAccordionDirective, NavAccordionItemDirective, NavAccordionToggleDirective, OverlayService, Pagination, SidemenuComponent, Spinner, StatusDisplayPipe, SvgIcon, TREND_CONFIGS, TabulatorTable, ThemeSwitcher, ThemeToggle, ToUpperCase, UserIcon, UserMenu, UserPanel, _AcpPopoverContentBase, formatValue };
4759
- export type { AcpAlertType, AcpBadgeColor, AcpBadgeShape, AcpBadgeSize, AcpBadgeTrend, AcpBadgeTrendConfig, AcpBadgeVariant, AcpCardAppearance, AcpCardBackgroundColor, AcpCardBadge, AcpCardConfig, AcpCardElevation, AcpCardImageRatio, AcpCardPadding, AcpCardPassThroughOptions, AcpCardPassThroughSection, AcpCheckboxGroupOption, AcpContextMenuItem, AcpContextMenuItemContext, AcpContextMenuOpenConfig, AcpContextMenuPosition, AcpContextMenuRef, AcpContextMenuTriggerConfig, AcpDir, AcpHeaderAction, AcpHeaderActionEvent, AcpHeaderBrandingConfig, AcpHeaderConfig, AcpHeaderPos, AcpHeaderUserMenuConfig, AcpHeaderUserMenuItem, AcpHeaderUserMenuItemEvent, AcpKpiCardColor, AcpKpiCardLayout, AcpKpiCardSize, AcpKpiCardTrend, AcpKpiCardTrendConfig, AcpKpiCardVariant, AcpLanguageItem, AcpNavPos, AcpNotificationItem, AcpPopoverDefaultOptions, AcpPopoverPanel, AcpPopoverPosition, AcpPopoverPositionEnd, AcpPopoverPositionStart, AcpPopoverTriggerEvent, AcpSelectedDateEvent, AcpThemeVariant, AcpTopmenuChildItem, AcpTopmenuItem, AcpTopmenuPermissions, AcpTopmenuTag, AcpWorkspaceItem, AutoFocusTarget, DataGridButtonType, DataGridCellTemplate, DataGridColumn, DataGridColumnButton, DataGridColumnButtonBadge, DataGridColumnButtonPop, DataGridColumnButtonTooltip, DataGridColumnPinOption, DataGridColumnPinValue, DataGridColumnTag, DataGridColumnTagValue, DataGridColumnType, DataGridColumnTypeParameter, DataGridDefaultOptions, DataGridMenuItem, DataGridRowClassFormatter, DataGridRowSelectionFormatter, DataGridSortProp, DateRangePickerOptions, DateRangeValue, DialogSize, DialogType, DialogWrapperConfig, DrawerPosition, FocusableElement, IAcpSelectDateOption, IconRegistryConfig, MatCustomDialogConfig, MenuItem, MenuPermissions, MenuTag, PaginationOptions, PopoverCloseReason, TabulatorColumn, TabulatorConfig, TabulatorEventHandlers, TabulatorTheme, UserMenuItem, UserMenuSelectedEvent, UserProfile };
5397
+ export { ACP_ACTIVE_DATE_DEBOUNCE, ACP_BADGE_COLORS, ACP_BADGE_SHAPES, ACP_BADGE_SIZES, ACP_BADGE_VARIANTS, ACP_DATE_OPTION_TYPE, ACP_DEFAULT_DATE_OPTIONS, ACP_DIALOG_ACTIONS, ACP_DIALOG_DATA, ACP_DIALOG_DEFAULT_OPTIONS, ACP_DIALOG_TITLEBAR, ACP_DRAWER_DATA, ACP_DRAWER_DEFAULT_OPTIONS, ACP_POPOVER_CONTENT, ACP_POPOVER_DEFAULT_OPTIONS, ACP_POPOVER_SCROLL_STRATEGY, AcpAlert, AcpBadge, AcpButton, AcpCard, AcpCheckboxBase, AcpCheckboxGroup, AcpContextMenu, AcpContextMenuDirective, AcpContextMenuPanel, AcpContextMenuService, AcpDateRangeInput, AcpDialog, AcpDialogActions, AcpDialogContainer, AcpDialogContent, AcpDialogRef, AcpDialogService, AcpDialogTitlebar, AcpDrawer, AcpDrawerConfig, AcpDrawerContainer, AcpDrawerRef, AcpHeader, AcpHeaderActions, AcpHeaderBranding, AcpHeaderCenter, AcpHeaderEnd, AcpHeaderLanguage, AcpHeaderNotifications, AcpHeaderStart, AcpHeaderTheme, AcpHeaderWorkspace, AcpKpiCard, AcpPopover, AcpPopoverContent, AcpPopoverTarget, AcpPopoverTrigger, AcpSelectDateOption, AcpShellLayout, AcpShellSlotHeader, AcpShellSlotSidebar, AcpShellSlotSidebarFooter, AcpShellSlotToolbar, AcpShellSlotTopmenu, AcpSidebar, AcpSidebarBranding, AcpSidebarContent, AcpSidebarHeader, AcpSidebarToggle, AcpSidebarUserPanel, AcpTopmenu, AcpTopmenuPanel, AdvancedDialogService, Branding, Button, CONTEXT_MENU_DATA, CONTEXT_MENU_ITEMS, DATA_GRID_DEFAULT_OPTIONS, DataGrid, DateRangePicker, DialogWrapper, DialogZIndexService, DynamicCard, DynamicSelect, GetTotalPipe, IconRegistryService, InputChip, KPI_CARD_TOKENS, KPI_CARD_TREND_CONFIGS, KeyboardNavigationService, NavAccordionDirective, NavAccordionItemDirective, NavAccordionToggleDirective, OverlayService, Pagination, SidemenuComponent, Spinner, StatusDisplayPipe, SvgIcon, TREND_CONFIGS, TabulatorTable, ThemeSwitcher, ThemeToggle, ToUpperCase, UserIcon, UserMenu, UserPanel, _AcpPopoverContentBase, formatValue, provideAcpDialogDefaults };
5398
+ export type { AcpAlertType, AcpBadgeColor, AcpBadgeShape, AcpBadgeSize, AcpBadgeTrend, AcpBadgeTrendConfig, AcpBadgeVariant, AcpButtonAppearance$1 as AcpButtonAppearance, AcpButtonColor$1 as AcpButtonColor, AcpButtonSize, AcpButtonType$1 as AcpButtonType, AcpButtonVariant$1 as AcpButtonVariant, AcpCardAppearance, AcpCardBackgroundColor, AcpCardBadge, AcpCardConfig, AcpCardElevation, AcpCardImageRatio, AcpCardPadding, AcpCardPassThroughOptions, AcpCardPassThroughSection, AcpCheckboxGroupOption, AcpContextMenuItem, AcpContextMenuItemContext, AcpContextMenuOpenConfig, AcpContextMenuPosition, AcpContextMenuRef, AcpContextMenuTriggerConfig, AcpDialogAction, AcpDialogActionClick, AcpDialogActionState, AcpDialogActionsOutlet, AcpDialogCloseConfig, AcpDialogComponentLoader, AcpDialogConfig, AcpDialogContainerData, AcpDialogContentFunction, AcpDialogContentInput, AcpDialogDirection, AcpDialogHeaderConfig, AcpDialogResolvedContent, AcpDialogRestoreFocus, AcpDialogSize, AcpDialogTitlebarOutlet, AcpDir, AcpHeaderAction, AcpHeaderActionEvent, AcpHeaderBrandingConfig, AcpHeaderConfig, AcpHeaderPos, AcpHeaderUserMenuConfig, AcpHeaderUserMenuItem, AcpHeaderUserMenuItemEvent, AcpKpiCardColor, AcpKpiCardLayout, AcpKpiCardSize, AcpKpiCardTrend, AcpKpiCardTrendConfig, AcpKpiCardVariant, AcpLanguageItem, AcpNavPos, AcpNotificationItem, AcpPopoverDefaultOptions, AcpPopoverPanel, AcpPopoverPosition, AcpPopoverPositionEnd, AcpPopoverPositionStart, AcpPopoverTriggerEvent, AcpSelectedDateEvent, AcpThemeVariant, AcpTopmenuChildItem, AcpTopmenuItem, AcpTopmenuPermissions, AcpTopmenuTag, AcpWorkspaceItem, AutoFocusTarget, DataGridButtonType, DataGridCellTemplate, DataGridColumn, DataGridColumnButton, DataGridColumnButtonBadge, DataGridColumnButtonPop, DataGridColumnButtonTooltip, DataGridColumnPinOption, DataGridColumnPinValue, DataGridColumnTag, DataGridColumnTagValue, DataGridColumnType, DataGridColumnTypeParameter, DataGridDefaultOptions, DataGridMenuItem, DataGridRowClassFormatter, DataGridRowSelectionFormatter, DataGridSortProp, DateRangePickerOptions, DateRangeValue, DialogSize, DialogType, DialogWrapperConfig, DrawerPosition, FocusableElement, IAcpSelectDateOption, IconRegistryConfig, MatCustomDialogConfig, MenuItem, MenuPermissions, MenuTag, PaginationOptions, PopoverCloseReason, TabulatorColumn, TabulatorConfig, TabulatorEventHandlers, TabulatorTheme, UserMenuItem, UserMenuSelectedEvent, UserProfile };