ng-primitives 0.90.0 → 0.91.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.
Files changed (95) hide show
  1. package/a11y/index.d.ts +38 -46
  2. package/accordion/index.d.ts +252 -104
  3. package/ai/index.d.ts +1 -1
  4. package/autofill/index.d.ts +49 -9
  5. package/avatar/index.d.ts +96 -61
  6. package/breadcrumbs/index.d.ts +156 -16
  7. package/button/index.d.ts +23 -28
  8. package/checkbox/index.d.ts +93 -14
  9. package/combobox/index.d.ts +1 -1
  10. package/date-picker/index.d.ts +12 -11
  11. package/fesm2022/ng-primitives-a11y.mjs +36 -52
  12. package/fesm2022/ng-primitives-a11y.mjs.map +1 -1
  13. package/fesm2022/ng-primitives-accordion.mjs +210 -189
  14. package/fesm2022/ng-primitives-accordion.mjs.map +1 -1
  15. package/fesm2022/ng-primitives-ai.mjs +4 -4
  16. package/fesm2022/ng-primitives-ai.mjs.map +1 -1
  17. package/fesm2022/ng-primitives-autofill.mjs +53 -36
  18. package/fesm2022/ng-primitives-autofill.mjs.map +1 -1
  19. package/fesm2022/ng-primitives-avatar.mjs +97 -138
  20. package/fesm2022/ng-primitives-avatar.mjs.map +1 -1
  21. package/fesm2022/ng-primitives-breadcrumbs.mjs +92 -35
  22. package/fesm2022/ng-primitives-breadcrumbs.mjs.map +1 -1
  23. package/fesm2022/ng-primitives-button.mjs +14 -36
  24. package/fesm2022/ng-primitives-button.mjs.map +1 -1
  25. package/fesm2022/ng-primitives-checkbox.mjs +87 -65
  26. package/fesm2022/ng-primitives-checkbox.mjs.map +1 -1
  27. package/fesm2022/ng-primitives-combobox.mjs +9 -9
  28. package/fesm2022/ng-primitives-combobox.mjs.map +1 -1
  29. package/fesm2022/ng-primitives-date-picker.mjs +5 -4
  30. package/fesm2022/ng-primitives-date-picker.mjs.map +1 -1
  31. package/fesm2022/ng-primitives-form-field.mjs +48 -16
  32. package/fesm2022/ng-primitives-form-field.mjs.map +1 -1
  33. package/fesm2022/ng-primitives-input.mjs +32 -48
  34. package/fesm2022/ng-primitives-input.mjs.map +1 -1
  35. package/fesm2022/ng-primitives-interactions.mjs +4 -4
  36. package/fesm2022/ng-primitives-interactions.mjs.map +1 -1
  37. package/fesm2022/ng-primitives-listbox.mjs.map +1 -1
  38. package/fesm2022/ng-primitives-menu.mjs +13 -6
  39. package/fesm2022/ng-primitives-menu.mjs.map +1 -1
  40. package/fesm2022/ng-primitives-pagination.mjs +6 -6
  41. package/fesm2022/ng-primitives-pagination.mjs.map +1 -1
  42. package/fesm2022/ng-primitives-progress.mjs +16 -4
  43. package/fesm2022/ng-primitives-progress.mjs.map +1 -1
  44. package/fesm2022/ng-primitives-radio.mjs +3 -3
  45. package/fesm2022/ng-primitives-radio.mjs.map +1 -1
  46. package/fesm2022/ng-primitives-roving-focus.mjs +259 -236
  47. package/fesm2022/ng-primitives-roving-focus.mjs.map +1 -1
  48. package/fesm2022/ng-primitives-search.mjs.map +1 -1
  49. package/fesm2022/ng-primitives-select.mjs +8 -8
  50. package/fesm2022/ng-primitives-select.mjs.map +1 -1
  51. package/fesm2022/ng-primitives-slider.mjs +195 -172
  52. package/fesm2022/ng-primitives-slider.mjs.map +1 -1
  53. package/fesm2022/ng-primitives-state.mjs +172 -2
  54. package/fesm2022/ng-primitives-state.mjs.map +1 -1
  55. package/fesm2022/ng-primitives-switch.mjs +90 -88
  56. package/fesm2022/ng-primitives-switch.mjs.map +1 -1
  57. package/fesm2022/ng-primitives-tabs.mjs +4 -1
  58. package/fesm2022/ng-primitives-tabs.mjs.map +1 -1
  59. package/fesm2022/ng-primitives-textarea.mjs +27 -35
  60. package/fesm2022/ng-primitives-textarea.mjs.map +1 -1
  61. package/fesm2022/ng-primitives-toggle-group.mjs +134 -136
  62. package/fesm2022/ng-primitives-toggle-group.mjs.map +1 -1
  63. package/fesm2022/ng-primitives-toggle.mjs +69 -58
  64. package/fesm2022/ng-primitives-toggle.mjs.map +1 -1
  65. package/fesm2022/ng-primitives-toolbar.mjs +26 -35
  66. package/fesm2022/ng-primitives-toolbar.mjs.map +1 -1
  67. package/fesm2022/ng-primitives-utils.mjs +48 -35
  68. package/fesm2022/ng-primitives-utils.mjs.map +1 -1
  69. package/form-field/index.d.ts +7 -3
  70. package/input/index.d.ts +61 -24
  71. package/interactions/index.d.ts +5 -5
  72. package/listbox/index.d.ts +1 -1
  73. package/menu/index.d.ts +3 -2
  74. package/package.json +1 -1
  75. package/pagination/index.d.ts +7 -7
  76. package/progress/index.d.ts +9 -1
  77. package/roving-focus/index.d.ts +77 -101
  78. package/schematics/ng-add/schema.d.ts +0 -1
  79. package/schematics/ng-generate/templates/checkbox/checkbox.__fileSuffix@dasherize__.ts.template +2 -2
  80. package/schematics/ng-generate/templates/progress/progress.__fileSuffix@dasherize__.ts.template +1 -1
  81. package/schematics/ng-generate/templates/slider/slider.__fileSuffix@dasherize__.ts.template +6 -3
  82. package/schematics/ng-generate/templates/switch/switch.__fileSuffix@dasherize__.ts.template +2 -2
  83. package/schematics/ng-generate/templates/toggle/toggle.__fileSuffix@dasherize__.ts.template +2 -2
  84. package/schematics/ng-generate/templates/toggle-group/toggle-group.__fileSuffix@dasherize__.ts.template +2 -2
  85. package/schematics/ng-generate/templates/toolbar/toolbar.__fileSuffix@dasherize__.ts.template +1 -1
  86. package/search/index.d.ts +1 -1
  87. package/select/index.d.ts +2 -2
  88. package/slider/index.d.ts +195 -56
  89. package/state/index.d.ts +57 -3
  90. package/switch/index.d.ts +103 -28
  91. package/textarea/index.d.ts +63 -8
  92. package/toggle/index.d.ts +65 -24
  93. package/toggle-group/index.d.ts +79 -54
  94. package/toolbar/index.d.ts +27 -17
  95. package/utils/index.d.ts +1 -0
package/a11y/index.d.ts CHANGED
@@ -1,6 +1,5 @@
1
1
  import * as _angular_core from '@angular/core';
2
2
  import { Signal, ElementRef } from '@angular/core';
3
- import * as ng_primitives_state from 'ng-primitives/state';
4
3
 
5
4
  interface ActiveDescendantManagerOptions<T extends NgpActivatable> {
6
5
  /**
@@ -44,63 +43,56 @@ declare function activeDescendantManager<T extends NgpActivatable>(options: Acti
44
43
  };
45
44
 
46
45
  /**
47
- * Hide an element visually while keeping it present in the DOM.
46
+ * The state interface for the VisuallyHidden pattern.
48
47
  */
49
- declare class NgpVisuallyHidden {
50
- private readonly changeDetector;
48
+ interface NgpVisuallyHiddenState {
51
49
  /**
52
50
  * Whether the element is hidden.
53
51
  */
54
- protected readonly hidden: _angular_core.WritableSignal<boolean>;
55
- protected readonly style: _angular_core.Signal<{
56
- position?: undefined;
57
- width?: undefined;
58
- height?: undefined;
59
- margin?: undefined;
60
- padding?: undefined;
61
- overflow?: undefined;
62
- clip?: undefined;
63
- whiteSpace?: undefined;
64
- border?: undefined;
65
- wordWrap?: undefined;
66
- outline?: undefined;
67
- '-webkit-appearance'?: undefined;
68
- '-moz-appearance'?: undefined;
69
- 'inset-inline-start'?: undefined;
70
- } | {
71
- position: string;
72
- width: string;
73
- height: string;
74
- margin: string;
75
- padding: string;
76
- overflow: string;
77
- clip: string;
78
- whiteSpace: string;
79
- border: string;
80
- wordWrap: string;
81
- outline: string;
82
- '-webkit-appearance': string;
83
- '-moz-appearance': string;
84
- 'inset-inline-start': string;
85
- }>;
86
- protected readonly state: ng_primitives_state.CreatedState<NgpVisuallyHidden>;
52
+ readonly hidden: Signal<boolean>;
87
53
  /**
88
54
  * Set the element visibility.
89
55
  * @param visible
90
56
  */
91
57
  setVisibility(visible: boolean): void;
92
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgpVisuallyHidden, never>;
93
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgpVisuallyHidden, "[ngpVisuallyHidden]", ["ngpVisuallyHidden"], {}, {}, never, never, true, never>;
94
58
  }
95
-
96
59
  /**
97
- * Provides the VisuallyHidden state.
60
+ * The props interface for the VisuallyHidden pattern.
98
61
  */
99
- declare const provideVisuallyHiddenState: (options?: ng_primitives_state.CreateStateProviderOptions) => _angular_core.FactoryProvider;
62
+ interface NgpVisuallyHiddenProps {
63
+ /**
64
+ * Whether the element is hidden. Default is true.
65
+ */
66
+ readonly hidden?: Signal<boolean>;
67
+ }
68
+ declare const NgpVisuallyHiddenStateToken: _angular_core.InjectionToken<_angular_core.WritableSignal<NgpVisuallyHiddenState>>;
69
+ declare const ngpVisuallyHidden: ({ hidden: _hidden }: NgpVisuallyHiddenProps) => NgpVisuallyHiddenState;
70
+ declare const injectVisuallyHiddenState: {
71
+ (): Signal<NgpVisuallyHiddenState>;
72
+ (options: {
73
+ hoisted: true;
74
+ }): Signal<NgpVisuallyHiddenState | null>;
75
+ (options?: {
76
+ hoisted?: boolean;
77
+ }): Signal<NgpVisuallyHiddenState | null>;
78
+ };
79
+ declare const provideVisuallyHiddenState: (opts?: {
80
+ inherit?: boolean;
81
+ }) => _angular_core.FactoryProvider;
82
+
100
83
  /**
101
- * Injects the VisuallyHidden state.
84
+ * Hide an element visually while keeping it present in the DOM.
102
85
  */
103
- declare const injectVisuallyHiddenState: <U = NgpVisuallyHidden>(injectOptions?: _angular_core.InjectOptions) => _angular_core.Signal<ng_primitives_state.State<U>>;
86
+ declare class NgpVisuallyHidden {
87
+ protected readonly state: NgpVisuallyHiddenState;
88
+ /**
89
+ * Set the element visibility.
90
+ * @param visible
91
+ */
92
+ setVisibility(visible: boolean): void;
93
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgpVisuallyHidden, never>;
94
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgpVisuallyHidden, "[ngpVisuallyHidden]", ["ngpVisuallyHidden"], {}, {}, never, never, true, never>;
95
+ }
104
96
 
105
- export { NgpVisuallyHidden, activeDescendantManager, injectVisuallyHiddenState, provideVisuallyHiddenState };
106
- export type { NgpActivatable };
97
+ export { NgpVisuallyHidden, NgpVisuallyHiddenStateToken, activeDescendantManager, injectVisuallyHiddenState, ngpVisuallyHidden, provideVisuallyHiddenState };
98
+ export type { NgpActivatable, NgpVisuallyHiddenProps, NgpVisuallyHiddenState };
@@ -1,118 +1,237 @@
1
- import * as ng_primitives_accordion from 'ng-primitives/accordion';
2
1
  import * as _angular_core from '@angular/core';
3
- import { Provider } from '@angular/core';
4
- import * as ng_primitives_state from 'ng-primitives/state';
5
- import { BooleanInput } from '@angular/cdk/coercion';
2
+ import { Signal, WritableSignal, Provider } from '@angular/core';
6
3
  import { NgpOrientation } from 'ng-primitives/common';
4
+ import { BooleanInput } from '@angular/cdk/coercion';
7
5
 
8
6
  /**
9
- * Apply the `ngpAccordion` directive to an element that represents the group of accordion items.
7
+ * Apply the `ngpAccordionContent` directive to an element that represents the content of an accordion item.
10
8
  */
11
- declare class NgpAccordion<T> {
9
+ declare class NgpAccordionContent<T> {
12
10
  /**
13
- * Access the global accordion configuration.
11
+ * The id of the content region
14
12
  */
15
- private readonly config;
13
+ readonly id: _angular_core.InputSignal<string>;
14
+ constructor();
15
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgpAccordionContent<any>, never>;
16
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgpAccordionContent<any>, "[ngpAccordionContent]", ["ngpAccordionContent"], { "id": { "alias": "id"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
17
+ }
18
+
19
+ interface NgpAccordionContentState {
16
20
  /**
17
- * The type of the accordion.
21
+ * The id of the content region
18
22
  */
19
- readonly type: _angular_core.InputSignal<NgpAccordionType>;
23
+ readonly id: Signal<string>;
24
+ }
25
+ interface NgpAccordionContentProps {
20
26
  /**
21
- * Whether the accordion is collapsible.
27
+ * The id of the content region
22
28
  */
23
- readonly collapsible: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
29
+ readonly id?: Signal<string>;
30
+ }
31
+ declare const NgpAccordionContentStateToken: _angular_core.InjectionToken<_angular_core.WritableSignal<{}>>;
32
+ declare const ngpAccordionContent: <T>({ id }: NgpAccordionContentProps) => {};
33
+ declare const injectAccordionContentState: {
34
+ (): Signal<{}>;
35
+ (options: {
36
+ hoisted: true;
37
+ }): Signal<{} | null>;
38
+ (options?: {
39
+ hoisted?: boolean;
40
+ }): Signal<{} | null>;
41
+ };
42
+ declare const provideAccordionContentState: (opts?: {
43
+ inherit?: boolean;
44
+ }) => _angular_core.FactoryProvider;
45
+
46
+ /**
47
+ * The state interface for the Accordion pattern.
48
+ */
49
+ interface NgpAccordionState<T> {
24
50
  /**
25
51
  * The value of the accordion.
26
52
  */
27
- readonly value: _angular_core.InputSignal<T | T[] | null>;
28
- /**
29
- * Event emitted when the accordion value changes.
30
- */
31
- readonly valueChange: _angular_core.OutputEmitterRef<T | T[] | null>;
53
+ readonly value: WritableSignal<T | T[] | null>;
32
54
  /**
33
55
  * Whether the accordion is disabled.
34
56
  */
35
- readonly disabled: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
57
+ readonly disabled: WritableSignal<boolean>;
36
58
  /**
37
59
  * The accordion orientation.
38
60
  */
39
- readonly orientation: _angular_core.InputSignal<NgpOrientation>;
61
+ readonly orientation: WritableSignal<NgpOrientation>;
40
62
  /**
41
- * The accordion state.
63
+ * Set the value of the accordion.
42
64
  */
43
- private readonly state;
65
+ setValue(value: T | T[] | null): void;
44
66
  /**
45
- * @param value The value to check.
46
- * @returns Whether the value is open.
47
- * @internal
67
+ * Set the disabled state of the accordion.
68
+ */
69
+ setDisabled(value: boolean): void;
70
+ /**
71
+ * Set the orientation of the accordion.
72
+ */
73
+ setOrientation(value: NgpOrientation): void;
74
+ /**
75
+ * Whether the specified value is open.
48
76
  */
49
77
  isOpen(value: T): boolean;
78
+ /**
79
+ * Toggle the specified value.
80
+ */
50
81
  toggle(value: T): void;
51
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgpAccordion<any>, never>;
52
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgpAccordion<any>, "[ngpAccordion]", ["ngpAccordion"], { "type": { "alias": "ngpAccordionType"; "required": false; "isSignal": true; }; "collapsible": { "alias": "ngpAccordionCollapsible"; "required": false; "isSignal": true; }; "value": { "alias": "ngpAccordionValue"; "required": false; "isSignal": true; }; "disabled": { "alias": "ngpAccordionDisabled"; "required": false; "isSignal": true; }; "orientation": { "alias": "ngpAccordionOrientation"; "required": false; "isSignal": true; }; }, { "valueChange": "ngpAccordionValueChange"; }, never, never, true, never>;
53
82
  }
54
- type NgpAccordionType = 'single' | 'multiple';
55
-
56
83
  /**
57
- * Apply the `ngpAccordionContent` directive to an element that represents the content of an accordion item.
84
+ * The props interface for the Accordion pattern.
58
85
  */
59
- declare class NgpAccordionContent<T> {
60
- /**
61
- * Access the accordion content element reference
62
- */
63
- private readonly elementRef;
86
+ interface NgpAccordionProps<T> {
64
87
  /**
65
- * Access the accordion
88
+ * The type of the accordion.
66
89
  */
67
- protected readonly accordion: _angular_core.Signal<ng_primitives_state.State<NgpAccordion<T>>>;
90
+ readonly type: Signal<NgpAccordionType>;
68
91
  /**
69
- * Access the accordion item
92
+ * Whether the accordion is collapsible.
70
93
  */
71
- protected readonly accordionItem: _angular_core.Signal<ng_primitives_state.State<ng_primitives_accordion.NgpAccordionItem<unknown>>>;
94
+ readonly collapsible: Signal<boolean>;
72
95
  /**
73
- * The id of the content region
96
+ * The value of the accordion.
74
97
  */
75
- readonly id: _angular_core.InputSignal<string>;
98
+ readonly value: Signal<T | T[] | null>;
76
99
  /**
77
- * The dimensions of the content
100
+ * Whether the accordion is disabled.
78
101
  */
79
- private dimensions;
102
+ readonly disabled?: Signal<boolean>;
80
103
  /**
81
- * The hidden until-found state of the content
104
+ * The accordion orientation.
82
105
  */
83
- protected readonly hidden: _angular_core.Signal<"until-found" | null>;
84
- constructor();
106
+ readonly orientation: Signal<NgpOrientation>;
85
107
  /**
86
- * Handle the beforematch event to automatically open the accordion item
87
- * when the browser's find-in-page functionality tries to reveal hidden content.
108
+ * Callback fired when valueChange is emitted.
88
109
  */
89
- protected onBeforeMatch(): void;
90
- private updateDimensions;
91
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgpAccordionContent<any>, never>;
92
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgpAccordionContent<any>, "[ngpAccordionContent]", ["ngpAccordionContent"], { "id": { "alias": "id"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
110
+ readonly onValueChange?: (value: T | T[] | null) => void;
93
111
  }
112
+ declare const NgpAccordionStateToken: _angular_core.InjectionToken<WritableSignal<NgpAccordionState<unknown>>>;
113
+ declare const ngpAccordion: <T>({ type, collapsible, value: _value, disabled: _disabled, orientation: _orientation, onValueChange, }: NgpAccordionProps<T>) => NgpAccordionState<T>;
114
+ declare const provideAccordionState: (opts?: {
115
+ inherit?: boolean;
116
+ }) => _angular_core.FactoryProvider;
117
+ type NgpAccordionType = 'single' | 'multiple';
118
+ declare function injectAccordionState<T>(): Signal<NgpAccordionState<T>>;
94
119
 
95
120
  /**
96
- * Apply the `ngpAccordionTrigger` directive to an element that represents the trigger for an accordion item, such as a button.
121
+ * Apply the `ngpAccordionItem` directive to an element that represents an accordion item.
97
122
  */
98
- declare class NgpAccordionTrigger<T> {
123
+ declare class NgpAccordionItem<T> {
124
+ /**
125
+ * Access the accordion.
126
+ */
127
+ protected readonly accordion: _angular_core.Signal<NgpAccordionState<T>>;
128
+ /**
129
+ * The value of the accordion item.
130
+ */
131
+ readonly value: _angular_core.InputSignal<T>;
132
+ /**
133
+ * Whether the accordion item is disabled.
134
+ */
135
+ readonly disabled: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
136
+ /**
137
+ * The accordion item state.
138
+ */
139
+ protected readonly state: {
140
+ value: _angular_core.Signal<T>;
141
+ open: _angular_core.Signal<boolean>;
142
+ disabled: _angular_core.WritableSignal<boolean>;
143
+ triggerId: _angular_core.WritableSignal<string | undefined>;
144
+ contentId: _angular_core.WritableSignal<string | undefined>;
145
+ setDisabled: (value: boolean) => void;
146
+ setTrigger: (id: string) => void;
147
+ setContent: (id: string) => void;
148
+ };
149
+ /**
150
+ * The open state of the accordion item.
151
+ */
152
+ readonly open: _angular_core.Signal<boolean>;
153
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgpAccordionItem<any>, never>;
154
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgpAccordionItem<any>, "[ngpAccordionItem]", ["ngpAccordionItem"], { "value": { "alias": "ngpAccordionItemValue"; "required": false; "isSignal": true; }; "disabled": { "alias": "ngpAccordionItemDisabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
155
+ }
156
+
157
+ interface NgpAccordionItemState<T> {
158
+ /**
159
+ * The value of the accordion item.
160
+ */
161
+ readonly value: Signal<T>;
162
+ /**
163
+ * Whether the accordion item is disabled.
164
+ */
165
+ readonly disabled: Signal<boolean>;
166
+ /**
167
+ * Whether the accordion item is expanded.
168
+ */
169
+ readonly open: Signal<boolean>;
170
+ /**
171
+ * The trigger id.
172
+ */
173
+ readonly triggerId: Signal<string | undefined>;
99
174
  /**
100
- * The tag name of the element.
175
+ * The content id.
101
176
  */
102
- protected readonly tagName: string;
177
+ readonly contentId: Signal<string | undefined>;
103
178
  /**
104
- * Access the parent accordion.
179
+ * Set the disabled state of the accordion item.
105
180
  */
106
- protected readonly accordion: _angular_core.Signal<ng_primitives_state.State<NgpAccordion<T>>>;
181
+ setDisabled(value: boolean): void;
107
182
  /**
108
- * The item instance.
183
+ * Set the trigger of the accordion item.
109
184
  */
110
- protected readonly accordionItem: _angular_core.Signal<ng_primitives_state.State<NgpAccordionItem<T>>>;
185
+ setTrigger(id: string): void;
186
+ /**
187
+ * Set the content of the accordion item.
188
+ */
189
+ setContent(id: string): void;
190
+ }
191
+ interface NgpAccordionItemProps<T> {
192
+ /**
193
+ * The value of the accordion item.
194
+ */
195
+ readonly value: Signal<T>;
196
+ /**
197
+ * Whether the accordion item is disabled.
198
+ */
199
+ readonly disabled?: Signal<boolean>;
200
+ }
201
+ declare const NgpAccordionItemStateToken: _angular_core.InjectionToken<_angular_core.WritableSignal<{
202
+ value: Signal<unknown>;
203
+ open: Signal<boolean>;
204
+ disabled: _angular_core.WritableSignal<boolean>;
205
+ triggerId: _angular_core.WritableSignal<string | undefined>;
206
+ contentId: _angular_core.WritableSignal<string | undefined>;
207
+ setDisabled: (value: boolean) => void;
208
+ setTrigger: (id: string) => void;
209
+ setContent: (id: string) => void;
210
+ }>>;
211
+ declare const ngpAccordionItem: <T>({ value, disabled: _disabled }: NgpAccordionItemProps<T>) => {
212
+ value: Signal<T>;
213
+ open: Signal<boolean>;
214
+ disabled: _angular_core.WritableSignal<boolean>;
215
+ triggerId: _angular_core.WritableSignal<string | undefined>;
216
+ contentId: _angular_core.WritableSignal<string | undefined>;
217
+ setDisabled: (value: boolean) => void;
218
+ setTrigger: (id: string) => void;
219
+ setContent: (id: string) => void;
220
+ };
221
+ declare const provideAccordionItemState: (opts?: {
222
+ inherit?: boolean;
223
+ }) => _angular_core.FactoryProvider;
224
+ declare function injectAccordionItemState<T>(): Signal<NgpAccordionItemState<T>>;
225
+
226
+ /**
227
+ * Apply the `ngpAccordionTrigger` directive to an element that represents the trigger for an accordion item, such as a button.
228
+ */
229
+ declare class NgpAccordionTrigger<T> {
111
230
  /**
112
231
  * The id of the trigger.
113
232
  */
114
233
  readonly id: _angular_core.InputSignal<string>;
115
- constructor();
234
+ private readonly state;
116
235
  /**
117
236
  * Toggle the accordion item.
118
237
  */
@@ -122,69 +241,52 @@ declare class NgpAccordionTrigger<T> {
122
241
  }
123
242
 
124
243
  /**
125
- * Apply the `ngpAccordionItem` directive to an element that represents an accordion item.
244
+ * Apply the `ngpAccordion` directive to an element that represents the group of accordion items.
126
245
  */
127
- declare class NgpAccordionItem<T> {
246
+ declare class NgpAccordion<T> {
128
247
  /**
129
- * Access the accordion.
248
+ * Access the global accordion configuration.
130
249
  */
131
- protected readonly accordion: _angular_core.Signal<ng_primitives_state.State<NgpAccordion<T>>>;
250
+ private readonly config;
132
251
  /**
133
- * The value of the accordion item.
252
+ * The type of the accordion.
134
253
  */
135
- readonly value: _angular_core.InputSignal<T>;
254
+ readonly type: _angular_core.InputSignal<NgpAccordionType>;
136
255
  /**
137
- * Whether the accordion item is disabled.
256
+ * Whether the accordion is collapsible.
138
257
  */
139
- readonly disabled: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
258
+ readonly collapsible: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
140
259
  /**
141
- * Access the accordion trigger
142
- * @internal
260
+ * The value of the accordion.
143
261
  */
144
- readonly trigger: _angular_core.WritableSignal<NgpAccordionTrigger<T> | undefined>;
262
+ readonly value: _angular_core.InputSignal<T | T[] | null>;
145
263
  /**
146
- * Access the accordion content
147
- * @internal
264
+ * Event emitted when the accordion value changes.
148
265
  */
149
- readonly content: _angular_core.WritableSignal<NgpAccordionContent<T> | undefined>;
266
+ readonly valueChange: _angular_core.OutputEmitterRef<T | T[] | null>;
150
267
  /**
151
- * Whether the accordion item is expanded.
268
+ * Whether the accordion is disabled.
152
269
  */
153
- readonly open: _angular_core.Signal<boolean>;
270
+ readonly disabled: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
154
271
  /**
155
- * The trigger id.
272
+ * The accordion orientation.
156
273
  */
157
- readonly triggerId: _angular_core.Signal<string | undefined>;
274
+ readonly orientation: _angular_core.InputSignal<NgpOrientation>;
158
275
  /**
159
- * The content id.
276
+ * The accordion state.
160
277
  */
161
- readonly contentId: _angular_core.Signal<string | undefined>;
278
+ protected readonly state: NgpAccordionState<T>;
162
279
  /**
163
- * The accordion item state.
280
+ * @param value The value to check.
281
+ * @returns Whether the value is open.
282
+ * @internal
164
283
  */
165
- private readonly state;
166
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgpAccordionItem<any>, never>;
167
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgpAccordionItem<any>, "[ngpAccordionItem]", ["ngpAccordionItem"], { "value": { "alias": "ngpAccordionItemValue"; "required": false; "isSignal": true; }; "disabled": { "alias": "ngpAccordionItemDisabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
284
+ isOpen(value: T): boolean;
285
+ toggle(value: T): void;
286
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgpAccordion<any>, never>;
287
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgpAccordion<any>, "[ngpAccordion]", ["ngpAccordion"], { "type": { "alias": "ngpAccordionType"; "required": false; "isSignal": true; }; "collapsible": { "alias": "ngpAccordionCollapsible"; "required": false; "isSignal": true; }; "value": { "alias": "ngpAccordionValue"; "required": false; "isSignal": true; }; "disabled": { "alias": "ngpAccordionDisabled"; "required": false; "isSignal": true; }; "orientation": { "alias": "ngpAccordionOrientation"; "required": false; "isSignal": true; }; }, { "valueChange": "ngpAccordionValueChange"; }, never, never, true, never>;
168
288
  }
169
289
 
170
- /**
171
- * Provides the AccordionItem state.
172
- */
173
- declare const provideAccordionItemState: (options?: ng_primitives_state.CreateStateProviderOptions) => _angular_core.FactoryProvider;
174
- /**
175
- * Injects the AccordionItem state.
176
- */
177
- declare const injectAccordionItemState: <U = NgpAccordionItem<unknown>>(injectOptions?: _angular_core.InjectOptions) => _angular_core.Signal<ng_primitives_state.State<U>>;
178
-
179
- /**
180
- * Provides the Accordion state.
181
- */
182
- declare const provideAccordionState: (options?: ng_primitives_state.CreateStateProviderOptions) => _angular_core.FactoryProvider;
183
- /**
184
- * Injects the Accordion state.
185
- */
186
- declare const injectAccordionState: <U = NgpAccordion<unknown>>(injectOptions?: _angular_core.InjectOptions) => _angular_core.Signal<ng_primitives_state.State<U>>;
187
-
188
290
  interface NgpAccordionConfig {
189
291
  /**
190
292
  * The default type of the accordion
@@ -209,5 +311,51 @@ interface NgpAccordionConfig {
209
311
  */
210
312
  declare function provideAccordionConfig(config: Partial<NgpAccordionConfig>): Provider[];
211
313
 
212
- export { NgpAccordion, NgpAccordionContent, NgpAccordionItem, NgpAccordionTrigger, injectAccordionItemState, injectAccordionState, provideAccordionConfig, provideAccordionItemState, provideAccordionState };
213
- export type { NgpAccordionConfig };
314
+ interface NgpAccordionTriggerState {
315
+ /**
316
+ * The id of the trigger button
317
+ */
318
+ readonly id: Signal<string>;
319
+ /**
320
+ * Toggle the accordion item.
321
+ */
322
+ toggle(): void;
323
+ }
324
+ interface NgpAccordionTriggerProps {
325
+ /**
326
+ * The id of the trigger button
327
+ */
328
+ readonly id?: Signal<string>;
329
+ }
330
+ declare const NgpAccordionTriggerStateToken: _angular_core.InjectionToken<_angular_core.WritableSignal<{
331
+ id: Signal<string>;
332
+ toggle: () => void;
333
+ }>>;
334
+ declare const ngpAccordionTrigger: <T>({ id }: NgpAccordionTriggerProps) => {
335
+ id: Signal<string>;
336
+ toggle: () => void;
337
+ };
338
+ declare const injectAccordionTriggerState: {
339
+ (): Signal<{
340
+ id: Signal<string>;
341
+ toggle: () => void;
342
+ }>;
343
+ (options: {
344
+ hoisted: true;
345
+ }): Signal<{
346
+ id: Signal<string>;
347
+ toggle: () => void;
348
+ } | null>;
349
+ (options?: {
350
+ hoisted?: boolean;
351
+ }): Signal<{
352
+ id: Signal<string>;
353
+ toggle: () => void;
354
+ } | null>;
355
+ };
356
+ declare const provideAccordionTriggerState: (opts?: {
357
+ inherit?: boolean;
358
+ }) => _angular_core.FactoryProvider;
359
+
360
+ export { NgpAccordion, NgpAccordionContent, NgpAccordionContentStateToken, NgpAccordionItem, NgpAccordionItemStateToken, NgpAccordionStateToken, NgpAccordionTrigger, NgpAccordionTriggerStateToken, injectAccordionContentState, injectAccordionItemState, injectAccordionState, injectAccordionTriggerState, ngpAccordion, ngpAccordionContent, ngpAccordionItem, ngpAccordionTrigger, provideAccordionConfig, provideAccordionContentState, provideAccordionItemState, provideAccordionState, provideAccordionTriggerState };
361
+ export type { NgpAccordionConfig, NgpAccordionContentProps, NgpAccordionContentState, NgpAccordionItemProps, NgpAccordionItemState, NgpAccordionProps, NgpAccordionState, NgpAccordionTriggerProps, NgpAccordionTriggerState, NgpAccordionType };
package/ai/index.d.ts CHANGED
@@ -16,7 +16,7 @@ declare class NgpPromptComposerInput {
16
16
  * If the user presses Enter, the form will be submitted, unless they are holding Shift.
17
17
  * This directive automatically handles that behavior.
18
18
  */
19
- protected onEnterKey(event: KeyboardEvent): void;
19
+ protected onEnterKey(event: Event): void;
20
20
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgpPromptComposerInput, never>;
21
21
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgpPromptComposerInput, "input[ngpPromptComposerInput], textarea[ngpPromptComposerInput]", ["ngpPromptComposerInput"], {}, {}, never, never, true, never>;
22
22
  }
@@ -1,22 +1,62 @@
1
1
  import * as _angular_core from '@angular/core';
2
+ import { Signal } from '@angular/core';
2
3
 
4
+ /**
5
+ * Apply the `ngpAutofill` directive to an element to detect browser autofill.
6
+ */
3
7
  declare class NgpAutofill {
4
8
  /**
5
- * Access the style injector.
9
+ * Event emitted when the autofill state changes.
6
10
  */
7
- private readonly styleInjector;
11
+ readonly autofillChange: _angular_core.OutputEmitterRef<boolean>;
8
12
  /**
9
- * Store the autofill state.
13
+ * The autofill state.
10
14
  */
11
- protected readonly autofilled: _angular_core.WritableSignal<boolean>;
15
+ private readonly state;
12
16
  /**
13
- * Emit when the autofill state changes.
17
+ * Whether the element is autofilled.
14
18
  */
15
- readonly autofillChange: _angular_core.OutputEmitterRef<boolean>;
16
- constructor();
17
- protected onAnimationStart(event: AnimationEvent): void;
19
+ readonly autofilled: _angular_core.WritableSignal<boolean>;
18
20
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgpAutofill, never>;
19
21
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<NgpAutofill, "[ngpAutofill]", ["ngpAutofill"], {}, { "autofillChange": "ngpAutofill"; }, never, never, true, never>;
20
22
  }
21
23
 
22
- export { NgpAutofill };
24
+ interface NgpAutofillState {
25
+ /**
26
+ * Whether the element is autofilled.
27
+ */
28
+ readonly autofilled: Signal<boolean>;
29
+ }
30
+ interface NgpAutofillProps {
31
+ /**
32
+ * Callback fired when the autofill state changes.
33
+ */
34
+ onAutofillChange?: (value: boolean) => void;
35
+ }
36
+ declare const NgpAutofillStateToken: _angular_core.InjectionToken<_angular_core.WritableSignal<{
37
+ autofilled: _angular_core.WritableSignal<boolean>;
38
+ }>>;
39
+ declare const ngpAutofill: ({ onAutofillChange }: NgpAutofillProps) => {
40
+ autofilled: _angular_core.WritableSignal<boolean>;
41
+ };
42
+ declare const injectAutofillState: {
43
+ (): Signal<{
44
+ autofilled: _angular_core.WritableSignal<boolean>;
45
+ }>;
46
+ (options: {
47
+ hoisted: true;
48
+ }): Signal<{
49
+ autofilled: _angular_core.WritableSignal<boolean>;
50
+ } | null>;
51
+ (options?: {
52
+ hoisted?: boolean;
53
+ }): Signal<{
54
+ autofilled: _angular_core.WritableSignal<boolean>;
55
+ } | null>;
56
+ };
57
+ declare const provideAutofillState: (opts?: {
58
+ inherit?: boolean;
59
+ }) => _angular_core.FactoryProvider;
60
+
61
+ export { NgpAutofill, NgpAutofillStateToken, injectAutofillState, ngpAutofill, provideAutofillState };
62
+ export type { NgpAutofillProps, NgpAutofillState };