@agnos-ui/angular-bootstrap 0.4.4 → 0.5.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/README.md +2 -2
  2. package/agnos-ui-angular.module.d.ts +2 -1
  3. package/components/accordion/accordion.component.d.ts +40 -18
  4. package/components/accordion/accordion.gen.d.ts +37 -9
  5. package/components/alert/alert.component.d.ts +29 -17
  6. package/components/alert/alert.gen.d.ts +21 -2
  7. package/components/collapse/collapse.component.d.ts +79 -0
  8. package/components/collapse/collapse.gen.d.ts +146 -0
  9. package/components/collapse/index.d.ts +2 -0
  10. package/components/modal/modal.component.d.ts +13 -19
  11. package/components/modal/modal.gen.d.ts +35 -18
  12. package/components/modal/modal.service.d.ts +5 -1
  13. package/components/pagination/pagination.component.d.ts +20 -15
  14. package/components/pagination/pagination.gen.d.ts +49 -29
  15. package/components/progressbar/progressbar.component.d.ts +32 -16
  16. package/components/progressbar/progressbar.gen.d.ts +21 -4
  17. package/components/rating/rating.component.d.ts +11 -4
  18. package/components/rating/rating.gen.d.ts +25 -17
  19. package/components/select/select.component.d.ts +24 -4
  20. package/components/select/select.gen.d.ts +41 -25
  21. package/components/slider/slider.component.d.ts +32 -23
  22. package/components/slider/slider.gen.d.ts +54 -33
  23. package/components/toast/toast.component.d.ts +29 -17
  24. package/components/toast/toast.gen.d.ts +22 -2
  25. package/config.d.ts +16 -5
  26. package/config.gen.d.ts +5 -0
  27. package/esm2022/agnos-ui-angular.module.mjs +12 -5
  28. package/esm2022/components/accordion/accordion.component.mjs +165 -134
  29. package/esm2022/components/accordion/accordion.gen.mjs +1 -1
  30. package/esm2022/components/alert/alert.component.mjs +90 -65
  31. package/esm2022/components/alert/alert.gen.mjs +1 -1
  32. package/esm2022/components/collapse/collapse.component.mjs +89 -0
  33. package/esm2022/components/collapse/collapse.gen.mjs +15 -0
  34. package/esm2022/components/collapse/index.mjs +3 -0
  35. package/esm2022/components/modal/modal.component.mjs +111 -99
  36. package/esm2022/components/modal/modal.gen.mjs +1 -1
  37. package/esm2022/components/modal/modal.service.mjs +7 -5
  38. package/esm2022/components/pagination/pagination.component.mjs +138 -123
  39. package/esm2022/components/pagination/pagination.gen.mjs +1 -1
  40. package/esm2022/components/progressbar/progressbar.component.mjs +94 -55
  41. package/esm2022/components/progressbar/progressbar.gen.mjs +1 -1
  42. package/esm2022/components/rating/rating.component.mjs +41 -35
  43. package/esm2022/components/rating/rating.gen.mjs +1 -1
  44. package/esm2022/components/select/select.component.mjs +103 -118
  45. package/esm2022/components/select/select.gen.mjs +1 -1
  46. package/esm2022/components/slider/slider.component.mjs +126 -111
  47. package/esm2022/components/slider/slider.gen.mjs +1 -1
  48. package/esm2022/components/toast/toast.component.mjs +106 -81
  49. package/esm2022/components/toast/toast.gen.mjs +1 -1
  50. package/esm2022/config.gen.mjs +1 -1
  51. package/esm2022/config.mjs +17 -1
  52. package/esm2022/index.mjs +2 -1
  53. package/fesm2022/agnos-ui-angular-bootstrap.mjs +1085 -806
  54. package/fesm2022/agnos-ui-angular-bootstrap.mjs.map +1 -1
  55. package/index.d.ts +8 -7
  56. package/package.json +9 -8
@@ -1,9 +1,8 @@
1
- import { widgetsConfigFactory, SlotDirective, UseDirective, ComponentTemplate, BaseWidgetDirective, auBooleanAttribute, UseMultiDirective, ContentAsSlotDirective, auNumberAttribute, useDirectiveForHost } from '@agnos-ui/angular-headless';
1
+ import { widgetsConfigFactory, SlotDirective, UseDirective, ComponentTemplate, BaseWidgetDirective, auBooleanAttribute, UseMultiDirective, auNumberAttribute, useDirectiveForHost } from '@agnos-ui/angular-headless';
2
2
  export * from '@agnos-ui/angular-headless';
3
3
  import * as i0 from '@angular/core';
4
- import { InjectionToken, inject, TemplateRef, Directive, Component, ChangeDetectionStrategy, ViewChild, EventEmitter, Input, ContentChild, Output, ViewEncapsulation, forwardRef, NgZone, NgModule, Injector, ApplicationRef, createComponent, EnvironmentInjector, Injectable } from '@angular/core';
4
+ import { InjectionToken, inject, TemplateRef, Directive, Component, ChangeDetectionStrategy, ViewChild, EventEmitter, Input, ContentChild, Output, ViewEncapsulation, forwardRef, NgModule, Injector, ApplicationRef, createComponent, EnvironmentInjector, Injectable } from '@angular/core';
5
5
  import { getModalDefaultConfig, createModal, modalOutsideClick, modalCloseButtonClick } from '@agnos-ui/core-bootstrap/components/modal';
6
- import { writable } from '@amadeus-it-group/tansu';
7
6
  import { getPaginationDefaultConfig, createPagination } from '@agnos-ui/core-bootstrap/components/pagination';
8
7
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
9
8
  import { getRatingDefaultConfig, createRating } from '@agnos-ui/core-bootstrap/components/rating';
@@ -11,10 +10,10 @@ import { getSelectDefaultConfig, createSelect } from '@agnos-ui/core-bootstrap/c
11
10
  import { getAlertDefaultConfig, createAlert } from '@agnos-ui/core-bootstrap/components/alert';
12
11
  import { NgTemplateOutlet, NgClass } from '@angular/common';
13
12
  import { getAccordionDefaultConfig, createAccordionItem, createAccordion, factoryCreateAccordion } from '@agnos-ui/core-bootstrap/components/accordion';
14
- import { take } from 'rxjs';
15
13
  import { getSliderDefaultConfig, createSlider } from '@agnos-ui/core-bootstrap/components/slider';
16
14
  import { getProgressbarDefaultConfig, createProgressbar } from '@agnos-ui/core-bootstrap/components/progressbar';
17
15
  import { getToastDefaultConfig, createToast } from '@agnos-ui/core-bootstrap/components/toast';
16
+ import { createCollapse, getCollapseDefaultConfig } from '@agnos-ui/core-bootstrap/components/collapse';
18
17
  export * from '@agnos-ui/core-bootstrap/services/transitions';
19
18
  export * from '@agnos-ui/core-bootstrap/types';
20
19
 
@@ -40,18 +39,34 @@ const export_modalOutsideClick = modalOutsideClick;
40
39
  */
41
40
  const export_modalCloseButtonClick = modalCloseButtonClick;
42
41
 
42
+ /**
43
+ * @param factory - The widget factory.
44
+ * @param widgetName - The name of the widget.
45
+ * @param defaultConfig - The default configuration for the widget.
46
+ * @param events - The events for the widget.
47
+ * @param afterInit - The function to call after initialization.
48
+ */
43
49
  const widgetFactories = widgetsConfigFactory(new InjectionToken('bootstrapWidgetsConfig'));
50
+ /**
51
+ * Destructures and exports several functions and constants from the `widgetFactories` object.
52
+ *
53
+ * @constant {InjectionToken} widgetsConfigInjectionToken - Token used for injecting widget configuration.
54
+ * @function provideWidgetsConfig - Provides the widget configuration.
55
+ * @function injectWidgetConfig - Injects a single widget configuration.
56
+ * @function injectWidgetsConfig - Injects multiple widget configurations.
57
+ * @function callWidgetFactory - Calls the widget factory function.
58
+ */
44
59
  const { widgetsConfigInjectionToken, provideWidgetsConfig, injectWidgetConfig, injectWidgetsConfig, callWidgetFactory } = widgetFactories;
45
60
 
46
61
  const _c0$8 = ["header"];
47
62
  const _c1$8 = ["structure"];
48
- const _c2$8 = (a0, a1) => ({ state: a0, widget: a1 });
63
+ const _c2$8 = (a0, a1, a2) => ({ state: a0, api: a1, directives: a2 });
49
64
  function ModalDefaultSlotsComponent_ng_template_0_ng_template_1_Template(rf, ctx) { }
50
65
  function ModalDefaultSlotsComponent_ng_template_0_Conditional_2_Template(rf, ctx) { if (rf & 1) {
51
66
  i0.ɵɵelement(0, "button", 6);
52
67
  } if (rf & 2) {
53
- const widget_r1 = i0.ɵɵnextContext().widget;
54
- i0.ɵɵproperty("auUse", widget_r1.directives.closeButtonDirective);
68
+ const directives_r1 = i0.ɵɵnextContext().directives;
69
+ i0.ɵɵproperty("auUse", directives_r1.closeButtonDirective);
55
70
  } }
56
71
  function ModalDefaultSlotsComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
57
72
  i0.ɵɵelementStart(0, "h5", 4);
@@ -60,11 +75,12 @@ function ModalDefaultSlotsComponent_ng_template_0_Template(rf, ctx) { if (rf & 1
60
75
  i0.ɵɵtemplate(2, ModalDefaultSlotsComponent_ng_template_0_Conditional_2_Template, 1, 1, "button", 6);
61
76
  } if (rf & 2) {
62
77
  const state_r2 = ctx.state;
63
- const widget_r1 = ctx.widget;
78
+ const api_r3 = ctx.api;
79
+ const directives_r1 = ctx.directives;
64
80
  i0.ɵɵadvance();
65
- i0.ɵɵproperty("auSlot", state_r2.title)("auSlotProps", i0.ɵɵpureFunction2(3, _c2$8, state_r2, widget_r1));
81
+ i0.ɵɵproperty("auSlot", state_r2.title())("auSlotProps", i0.ɵɵpureFunction3(3, _c2$8, state_r2, api_r3, directives_r1));
66
82
  i0.ɵɵadvance();
67
- i0.ɵɵconditional(state_r2.closeButton ? 2 : -1);
83
+ i0.ɵɵconditional(state_r2.closeButton() ? 2 : -1);
68
84
  } }
69
85
  function ModalDefaultSlotsComponent_ng_template_2_Conditional_0_ng_template_1_Template(rf, ctx) { }
70
86
  function ModalDefaultSlotsComponent_ng_template_2_Conditional_0_Template(rf, ctx) { if (rf & 1) {
@@ -72,11 +88,12 @@ function ModalDefaultSlotsComponent_ng_template_2_Conditional_0_Template(rf, ctx
72
88
  i0.ɵɵtemplate(1, ModalDefaultSlotsComponent_ng_template_2_Conditional_0_ng_template_1_Template, 0, 0, "ng-template", 5);
73
89
  i0.ɵɵelementEnd();
74
90
  } if (rf & 2) {
75
- const ctx_r2 = i0.ɵɵnextContext();
76
- const state_r4 = ctx_r2.state;
77
- const widget_r5 = ctx_r2.widget;
91
+ const ctx_r3 = i0.ɵɵnextContext();
92
+ const state_r5 = ctx_r3.state;
93
+ const api_r6 = ctx_r3.api;
94
+ const directives_r7 = ctx_r3.directives;
78
95
  i0.ɵɵadvance();
79
- i0.ɵɵproperty("auSlot", state_r4.header)("auSlotProps", i0.ɵɵpureFunction2(2, _c2$8, state_r4, widget_r5));
96
+ i0.ɵɵproperty("auSlot", state_r5.header())("auSlotProps", i0.ɵɵpureFunction3(2, _c2$8, state_r5, api_r6, directives_r7));
80
97
  } }
81
98
  function ModalDefaultSlotsComponent_ng_template_2_ng_template_2_Template(rf, ctx) { }
82
99
  function ModalDefaultSlotsComponent_ng_template_2_Conditional_3_ng_template_1_Template(rf, ctx) { }
@@ -85,63 +102,67 @@ function ModalDefaultSlotsComponent_ng_template_2_Conditional_3_Template(rf, ctx
85
102
  i0.ɵɵtemplate(1, ModalDefaultSlotsComponent_ng_template_2_Conditional_3_ng_template_1_Template, 0, 0, "ng-template", 5);
86
103
  i0.ɵɵelementEnd();
87
104
  } if (rf & 2) {
88
- const ctx_r2 = i0.ɵɵnextContext();
89
- const state_r4 = ctx_r2.state;
90
- const widget_r5 = ctx_r2.widget;
105
+ const ctx_r3 = i0.ɵɵnextContext();
106
+ const state_r5 = ctx_r3.state;
107
+ const api_r6 = ctx_r3.api;
108
+ const directives_r7 = ctx_r3.directives;
91
109
  i0.ɵɵadvance();
92
- i0.ɵɵproperty("auSlot", state_r4.footer)("auSlotProps", i0.ɵɵpureFunction2(2, _c2$8, state_r4, widget_r5));
110
+ i0.ɵɵproperty("auSlot", state_r5.footer())("auSlotProps", i0.ɵɵpureFunction3(2, _c2$8, state_r5, api_r6, directives_r7));
93
111
  } }
94
112
  function ModalDefaultSlotsComponent_ng_template_2_Template(rf, ctx) { if (rf & 1) {
95
- i0.ɵɵtemplate(0, ModalDefaultSlotsComponent_ng_template_2_Conditional_0_Template, 2, 5, "div", 7);
113
+ i0.ɵɵtemplate(0, ModalDefaultSlotsComponent_ng_template_2_Conditional_0_Template, 2, 6, "div", 7);
96
114
  i0.ɵɵelementStart(1, "div", 8);
97
115
  i0.ɵɵtemplate(2, ModalDefaultSlotsComponent_ng_template_2_ng_template_2_Template, 0, 0, "ng-template", 5);
98
116
  i0.ɵɵelementEnd();
99
- i0.ɵɵtemplate(3, ModalDefaultSlotsComponent_ng_template_2_Conditional_3_Template, 2, 5, "div", 9);
117
+ i0.ɵɵtemplate(3, ModalDefaultSlotsComponent_ng_template_2_Conditional_3_Template, 2, 6, "div", 9);
100
118
  } if (rf & 2) {
101
- const state_r4 = ctx.state;
102
- const widget_r5 = ctx.widget;
103
- i0.ɵɵconditional(state_r4.title ? 0 : -1);
119
+ const state_r5 = ctx.state;
120
+ const api_r6 = ctx.api;
121
+ const directives_r7 = ctx.directives;
122
+ i0.ɵɵconditional(state_r5.title() ? 0 : -1);
104
123
  i0.ɵɵadvance(2);
105
- i0.ɵɵproperty("auSlot", state_r4.children)("auSlotProps", i0.ɵɵpureFunction2(4, _c2$8, state_r4, widget_r5));
124
+ i0.ɵɵproperty("auSlot", state_r5.children())("auSlotProps", i0.ɵɵpureFunction3(4, _c2$8, state_r5, api_r6, directives_r7));
106
125
  i0.ɵɵadvance();
107
- i0.ɵɵconditional(state_r4.footer ? 3 : -1);
126
+ i0.ɵɵconditional(state_r5.footer() ? 3 : -1);
108
127
  } }
109
- const _c3$7 = ["auModal", ""];
110
- const _c4$3 = ["*"];
111
- const _c5$2 = (a0, a1) => [a0, a1];
128
+ const _c3$7 = ["content"];
129
+ const _c4$6 = ["auModal", ""];
130
+ const _c5$4 = ["*"];
131
+ const _c6$2 = (a0, a1) => [a0, a1];
112
132
  function ModalComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
113
133
  i0.ɵɵprojection(0);
114
134
  } }
115
- function ModalComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
135
+ function ModalComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
116
136
  i0.ɵɵelement(0, "div", 1);
117
137
  } if (rf & 2) {
118
138
  const ctx_r0 = i0.ɵɵnextContext();
119
- i0.ɵɵproperty("auUseMulti", i0.ɵɵpureFunction2(1, _c5$2, ctx_r0.widget.directives.backdropPortalDirective, ctx_r0.widget.directives.backdropDirective));
139
+ i0.ɵɵproperty("auUseMulti", i0.ɵɵpureFunction2(1, _c6$2, ctx_r0.directives.backdropPortalDirective, ctx_r0.directives.backdropDirective));
120
140
  } }
121
- function ModalComponent_Conditional_2_ng_template_3_Template(rf, ctx) { }
122
- function ModalComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
141
+ function ModalComponent_Conditional_3_ng_template_3_Template(rf, ctx) { }
142
+ function ModalComponent_Conditional_3_Template(rf, ctx) { if (rf & 1) {
123
143
  i0.ɵɵelementStart(0, "div", 2)(1, "div")(2, "div", 3);
124
- i0.ɵɵtemplate(3, ModalComponent_Conditional_2_ng_template_3_Template, 0, 0, "ng-template", 4);
144
+ i0.ɵɵtemplate(3, ModalComponent_Conditional_3_ng_template_3_Template, 0, 0, "ng-template", 4);
125
145
  i0.ɵɵelementEnd()()();
126
146
  } if (rf & 2) {
127
147
  const ctx_r0 = i0.ɵɵnextContext();
128
- i0.ɵɵproperty("auUseMulti", i0.ɵɵpureFunction2(6, _c5$2, ctx_r0.widget.directives.modalPortalDirective, ctx_r0.widget.directives.modalDirective));
148
+ i0.ɵɵproperty("auUseMulti", i0.ɵɵpureFunction2(6, _c6$2, ctx_r0.directives.modalPortalDirective, ctx_r0.directives.modalDirective));
129
149
  i0.ɵɵadvance();
130
- i0.ɵɵclassMapInterpolate1("modal-dialog ", ctx_r0.state().fullscreen ? "modal-fullscreen" : "", "");
150
+ i0.ɵɵclassMapInterpolate1("modal-dialog ", ctx_r0.state.fullscreen() ? "modal-fullscreen" : "", "");
131
151
  i0.ɵɵadvance(2);
132
- i0.ɵɵproperty("auSlot", ctx_r0.state().structure)("auSlotProps", i0.ɵɵpureFunction2(9, _c2$8, ctx_r0.state(), ctx_r0.widget));
152
+ i0.ɵɵproperty("auSlot", ctx_r0.state.structure())("auSlotProps", i0.ɵɵpureFunction3(9, _c2$8, ctx_r0.state, ctx_r0.api, ctx_r0.directives));
133
153
  } }
134
154
  /**
135
155
  * Directive to provide the slot structure for the modal widget.
156
+ * This directive provides a template reference for the {@link ModalContext<Data>}.
136
157
  */
137
158
  class ModalStructureDirective {
138
159
  constructor() {
139
160
  this.templateRef = inject((TemplateRef));
140
161
  }
141
- static ngTemplateContextGuard(dir, context) {
162
+ static ngTemplateContextGuard(_dir, context) {
142
163
  return true;
143
164
  }
144
- static { this.ɵfac = function ModalStructureDirective_Factory(t) { return new (t || ModalStructureDirective)(); }; }
165
+ static { this.ɵfac = function ModalStructureDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ModalStructureDirective)(); }; }
145
166
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: ModalStructureDirective, selectors: [["ng-template", "auModalStructure", ""]], standalone: true }); }
146
167
  }
147
168
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ModalStructureDirective, [{
@@ -150,6 +171,7 @@ class ModalStructureDirective {
150
171
  }], null, null); })();
151
172
  /**
152
173
  * Directive to provide the slot header for the modal widget.
174
+ * This directive provides a template reference for the {@link ModalContext<Data>}.
153
175
  */
154
176
  class ModalHeaderDirective {
155
177
  constructor() {
@@ -158,7 +180,7 @@ class ModalHeaderDirective {
158
180
  static ngTemplateContextGuard(_dir, context) {
159
181
  return true;
160
182
  }
161
- static { this.ɵfac = function ModalHeaderDirective_Factory(t) { return new (t || ModalHeaderDirective)(); }; }
183
+ static { this.ɵfac = function ModalHeaderDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ModalHeaderDirective)(); }; }
162
184
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: ModalHeaderDirective, selectors: [["ng-template", "auModalHeader", ""]], standalone: true }); }
163
185
  }
164
186
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ModalHeaderDirective, [{
@@ -167,6 +189,7 @@ class ModalHeaderDirective {
167
189
  }], null, null); })();
168
190
  /**
169
191
  * Directive to provide the slot title for the modal widget.
192
+ * This directive provides a template reference for the {@link ModalContext<Data>}.
170
193
  */
171
194
  class ModalTitleDirective {
172
195
  constructor() {
@@ -175,7 +198,7 @@ class ModalTitleDirective {
175
198
  static ngTemplateContextGuard(_dir, context) {
176
199
  return true;
177
200
  }
178
- static { this.ɵfac = function ModalTitleDirective_Factory(t) { return new (t || ModalTitleDirective)(); }; }
201
+ static { this.ɵfac = function ModalTitleDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ModalTitleDirective)(); }; }
179
202
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: ModalTitleDirective, selectors: [["ng-template", "auModalTitle", ""]], standalone: true }); }
180
203
  }
181
204
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ModalTitleDirective, [{
@@ -184,6 +207,7 @@ class ModalTitleDirective {
184
207
  }], null, null); })();
185
208
  /**
186
209
  * Directive to provide the default slot for the modal widget.
210
+ * This directive provides a template reference for the {@link ModalContext<Data>}.
187
211
  */
188
212
  class ModalBodyDirective {
189
213
  constructor() {
@@ -192,7 +216,7 @@ class ModalBodyDirective {
192
216
  static ngTemplateContextGuard(_dir, context) {
193
217
  return true;
194
218
  }
195
- static { this.ɵfac = function ModalBodyDirective_Factory(t) { return new (t || ModalBodyDirective)(); }; }
219
+ static { this.ɵfac = function ModalBodyDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ModalBodyDirective)(); }; }
196
220
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: ModalBodyDirective, selectors: [["ng-template", "auModalBody", ""]], standalone: true }); }
197
221
  }
198
222
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ModalBodyDirective, [{
@@ -201,6 +225,7 @@ class ModalBodyDirective {
201
225
  }], null, null); })();
202
226
  /**
203
227
  * Directive to provide the slot footer for the modal widget.
228
+ * This directive provides a template reference for the {@link ModalContext<Data>}.
204
229
  */
205
230
  class ModalFooterDirective {
206
231
  constructor() {
@@ -209,7 +234,7 @@ class ModalFooterDirective {
209
234
  static ngTemplateContextGuard(_dir, context) {
210
235
  return true;
211
236
  }
212
- static { this.ɵfac = function ModalFooterDirective_Factory(t) { return new (t || ModalFooterDirective)(); }; }
237
+ static { this.ɵfac = function ModalFooterDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ModalFooterDirective)(); }; }
213
238
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: ModalFooterDirective, selectors: [["ng-template", "auModalFooter", ""]], standalone: true }); }
214
239
  }
215
240
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ModalFooterDirective, [{
@@ -220,7 +245,7 @@ class ModalFooterDirective {
220
245
  * Component containing the default slots for the modal.
221
246
  */
222
247
  class ModalDefaultSlotsComponent {
223
- static { this.ɵfac = function ModalDefaultSlotsComponent_Factory(t) { return new (t || ModalDefaultSlotsComponent)(); }; }
248
+ static { this.ɵfac = function ModalDefaultSlotsComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ModalDefaultSlotsComponent)(); }; }
224
249
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ModalDefaultSlotsComponent, selectors: [["ng-component"]], viewQuery: function ModalDefaultSlotsComponent_Query(rf, ctx) { if (rf & 1) {
225
250
  i0.ɵɵviewQuery(_c0$8, 7);
226
251
  i0.ɵɵviewQuery(_c1$8, 7);
@@ -229,7 +254,7 @@ class ModalDefaultSlotsComponent {
229
254
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.header = _t.first);
230
255
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.structure = _t.first);
231
256
  } }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 4, vars: 0, consts: [["header", ""], ["structure", ""], ["auModalHeader", ""], ["auModalStructure", ""], [1, "modal-title"], [3, "auSlot", "auSlotProps"], [1, "btn-close", 3, "auUse"], [1, "modal-header"], [1, "modal-body"], [1, "modal-footer"]], template: function ModalDefaultSlotsComponent_Template(rf, ctx) { if (rf & 1) {
232
- i0.ɵɵtemplate(0, ModalDefaultSlotsComponent_ng_template_0_Template, 3, 6, "ng-template", 2, 0, i0.ɵɵtemplateRefExtractor)(2, ModalDefaultSlotsComponent_ng_template_2_Template, 4, 7, "ng-template", 3, 1, i0.ɵɵtemplateRefExtractor);
257
+ i0.ɵɵtemplate(0, ModalDefaultSlotsComponent_ng_template_0_Template, 3, 7, "ng-template", 2, 0, i0.ɵɵtemplateRefExtractor)(2, ModalDefaultSlotsComponent_ng_template_2_Template, 4, 8, "ng-template", 3, 1, i0.ɵɵtemplateRefExtractor);
233
258
  } }, dependencies: [SlotDirective, ModalHeaderDirective, ModalStructureDirective, UseDirective], encapsulation: 2, changeDetection: 0 }); }
234
259
  }
235
260
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ModalDefaultSlotsComponent, [{
@@ -239,26 +264,26 @@ class ModalDefaultSlotsComponent {
239
264
  changeDetection: ChangeDetectionStrategy.OnPush,
240
265
  imports: [SlotDirective, ModalHeaderDirective, ModalStructureDirective, UseDirective],
241
266
  template: `
242
- <ng-template auModalHeader #header let-state="state" let-widget="widget">
267
+ <ng-template auModalHeader #header let-state="state" let-api="api" let-directives="directives">
243
268
  <h5 class="modal-title">
244
- <ng-template [auSlot]="state.title" [auSlotProps]="{state, widget}"></ng-template>
269
+ <ng-template [auSlot]="state.title()" [auSlotProps]="{state, api, directives}"></ng-template>
245
270
  </h5>
246
- @if (state.closeButton) {
247
- <button class="btn-close" [auUse]="widget.directives.closeButtonDirective"></button>
271
+ @if (state.closeButton()) {
272
+ <button class="btn-close" [auUse]="directives.closeButtonDirective"></button>
248
273
  }
249
274
  </ng-template>
250
- <ng-template auModalStructure #structure let-state="state" let-widget="widget">
251
- @if (state.title) {
275
+ <ng-template auModalStructure #structure let-state="state" let-api="api" let-directives="directives">
276
+ @if (state.title()) {
252
277
  <div class="modal-header">
253
- <ng-template [auSlot]="state.header" [auSlotProps]="{state, widget}"></ng-template>
278
+ <ng-template [auSlot]="state.header()" [auSlotProps]="{state, api, directives}"></ng-template>
254
279
  </div>
255
280
  }
256
281
  <div class="modal-body">
257
- <ng-template [auSlot]="state.children" [auSlotProps]="{state, widget}"></ng-template>
282
+ <ng-template [auSlot]="state.children()" [auSlotProps]="{state, api, directives}"></ng-template>
258
283
  </div>
259
- @if (state.footer) {
284
+ @if (state.footer()) {
260
285
  <div class="modal-footer">
261
- <ng-template [auSlot]="state.footer" [auSlotProps]="{state, widget}"></ng-template>
286
+ <ng-template [auSlot]="state.footer()" [auSlotProps]="{state, api, directives}"></ng-template>
262
287
  </div>
263
288
  }
264
289
  </ng-template>
@@ -271,7 +296,7 @@ class ModalDefaultSlotsComponent {
271
296
  type: ViewChild,
272
297
  args: ['structure', { static: true }]
273
298
  }] }); })();
274
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ModalDefaultSlotsComponent, { className: "ModalDefaultSlotsComponent", filePath: "components/modal/modal.component.ts", lineNumber: 117 }); })();
299
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ModalDefaultSlotsComponent, { className: "ModalDefaultSlotsComponent", filePath: "components/modal/modal.component.ts", lineNumber: 112 }); })();
275
300
  /**
276
301
  * Default slot for modal header.
277
302
  */
@@ -280,16 +305,33 @@ const modalDefaultSlotHeader = new ComponentTemplate(ModalDefaultSlotsComponent,
280
305
  * Default slot for modal structure.
281
306
  */
282
307
  const modalDefaultSlotStructure = new ComponentTemplate(ModalDefaultSlotsComponent, 'structure');
283
- const defaultConfig$6 = {
284
- header: modalDefaultSlotHeader,
285
- structure: modalDefaultSlotStructure,
286
- };
287
308
  /**
288
309
  * Modal component.
289
310
  */
290
311
  class ModalComponent extends BaseWidgetDirective {
291
312
  constructor() {
292
- super(...arguments);
313
+ super(callWidgetFactory({
314
+ factory: export_createModal,
315
+ widgetName: 'modal',
316
+ defaultConfig: {
317
+ header: modalDefaultSlotHeader,
318
+ structure: modalDefaultSlotStructure,
319
+ },
320
+ events: {
321
+ onShown: () => this.shown.emit(),
322
+ onHidden: () => this.hidden.emit(),
323
+ onBeforeClose: (event) => this.beforeClose.emit(event),
324
+ onVisibleChange: (event) => this.visibleChange.emit(event),
325
+ },
326
+ slotTemplates: () => ({
327
+ children: this.slotDefaultFromContent?.templateRef,
328
+ footer: this.slotFooterFromContent?.templateRef,
329
+ header: this.slotHeaderFromContent?.templateRef,
330
+ structure: this.slotStructureFromContent?.templateRef,
331
+ title: this.slotTitleFromContent?.templateRef,
332
+ }),
333
+ slotChildren: () => this.slotChildren,
334
+ }));
293
335
  /**
294
336
  * Event to be triggered when the visible property changes.
295
337
  *
@@ -331,29 +373,8 @@ class ModalComponent extends BaseWidgetDirective {
331
373
  * ```
332
374
  */
333
375
  this.shown = new EventEmitter();
334
- this.defaultSlots = writable(defaultConfig$6);
335
- this._widget = callWidgetFactory({
336
- factory: export_createModal,
337
- widgetName: 'modal',
338
- defaultConfig: this.defaultSlots,
339
- events: {
340
- onShown: () => this.shown.emit(),
341
- onHidden: () => this.hidden.emit(),
342
- onBeforeClose: (event) => this.beforeClose.emit(event),
343
- onVisibleChange: (event) => this.visibleChange.emit(event),
344
- },
345
- });
346
376
  }
347
- ngAfterContentChecked() {
348
- this._widget.patchSlots({
349
- children: this.slotDefaultFromContent?.templateRef,
350
- footer: this.slotFooterFromContent?.templateRef,
351
- header: this.slotHeaderFromContent?.templateRef,
352
- structure: this.slotStructureFromContent?.templateRef,
353
- title: this.slotTitleFromContent?.templateRef,
354
- });
355
- }
356
- static { this.ɵfac = /*@__PURE__*/ (() => { let ɵModalComponent_BaseFactory; return function ModalComponent_Factory(t) { return (ɵModalComponent_BaseFactory || (ɵModalComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ModalComponent)))(t || ModalComponent); }; })(); }
377
+ static { this.ɵfac = function ModalComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ModalComponent)(); }; }
357
378
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ModalComponent, selectors: [["", "auModal", ""]], contentQueries: function ModalComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
358
379
  i0.ɵɵcontentQuery(dirIndex, ModalStructureDirective, 5);
359
380
  i0.ɵɵcontentQuery(dirIndex, ModalHeaderDirective, 5);
@@ -367,16 +388,20 @@ class ModalComponent extends BaseWidgetDirective {
367
388
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotTitleFromContent = _t.first);
368
389
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotDefaultFromContent = _t.first);
369
390
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotFooterFromContent = _t.first);
370
- } }, inputs: { animated: [2, "auAnimated", "animated", auBooleanAttribute], backdropTransition: [0, "auBackdropTransition", "backdropTransition"], modalTransition: [0, "auModalTransition", "modalTransition"], visible: [2, "auVisible", "visible", auBooleanAttribute], backdrop: [2, "auBackdrop", "backdrop", auBooleanAttribute], closeOnOutsideClick: [2, "auCloseOnOutsideClick", "closeOnOutsideClick", auBooleanAttribute], container: [0, "auContainer", "container"], ariaCloseButtonLabel: [0, "auAriaCloseButtonLabel", "ariaCloseButtonLabel"], backdropClass: [0, "auBackdropClass", "backdropClass"], closeButton: [2, "auCloseButton", "closeButton", auBooleanAttribute], className: [0, "auClassName", "className"], fullscreen: [2, "auFullscreen", "fullscreen", auBooleanAttribute], structure: [0, "auStructure", "structure"], header: [0, "auHeader", "header"], title: [0, "auTitle", "title"], children: [0, "auChildren", "children"], footer: [0, "auFooter", "footer"], contentData: [0, "auContentData", "contentData"] }, outputs: { visibleChange: "auVisibleChange", beforeClose: "auBeforeClose", hidden: "auHidden", shown: "auShown" }, standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c3$7, ngContentSelectors: _c4$3, decls: 3, vars: 3, consts: [[3, "auContentAsSlot"], [1, "modal-backdrop", 3, "auUseMulti"], [1, "modal", "d-block", 3, "auUseMulti"], [1, "modal-content"], [3, "auSlot", "auSlotProps"]], template: function ModalComponent_Template(rf, ctx) { if (rf & 1) {
391
+ } }, viewQuery: function ModalComponent_Query(rf, ctx) { if (rf & 1) {
392
+ i0.ɵɵviewQuery(_c3$7, 7);
393
+ } if (rf & 2) {
394
+ let _t;
395
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotChildren = _t.first);
396
+ } }, inputs: { animated: [2, "auAnimated", "animated", auBooleanAttribute], backdropTransition: [0, "auBackdropTransition", "backdropTransition"], modalTransition: [0, "auModalTransition", "modalTransition"], visible: [2, "auVisible", "visible", auBooleanAttribute], backdrop: [2, "auBackdrop", "backdrop", auBooleanAttribute], closeOnOutsideClick: [2, "auCloseOnOutsideClick", "closeOnOutsideClick", auBooleanAttribute], container: [0, "auContainer", "container"], ariaCloseButtonLabel: [0, "auAriaCloseButtonLabel", "ariaCloseButtonLabel"], backdropClass: [0, "auBackdropClass", "backdropClass"], closeButton: [2, "auCloseButton", "closeButton", auBooleanAttribute], className: [0, "auClassName", "className"], fullscreen: [2, "auFullscreen", "fullscreen", auBooleanAttribute], structure: [0, "auStructure", "structure"], header: [0, "auHeader", "header"], title: [0, "auTitle", "title"], children: [0, "auChildren", "children"], footer: [0, "auFooter", "footer"], contentData: [0, "auContentData", "contentData"] }, outputs: { visibleChange: "auVisibleChange", beforeClose: "auBeforeClose", hidden: "auHidden", shown: "auShown" }, standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c4$6, ngContentSelectors: _c5$4, decls: 4, vars: 2, consts: [["content", ""], [1, "modal-backdrop", 3, "auUseMulti"], [1, "modal", "d-block", 3, "auUseMulti"], [1, "modal-content"], [3, "auSlot", "auSlotProps"]], template: function ModalComponent_Template(rf, ctx) { if (rf & 1) {
371
397
  i0.ɵɵprojectionDef();
372
- i0.ɵɵtemplate(0, ModalComponent_ng_template_0_Template, 1, 0, "ng-template", 0)(1, ModalComponent_Conditional_1_Template, 1, 4, "div", 1)(2, ModalComponent_Conditional_2_Template, 4, 12, "div", 2);
398
+ i0.ɵɵtemplate(0, ModalComponent_ng_template_0_Template, 1, 0, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor)(2, ModalComponent_Conditional_2_Template, 1, 4, "div", 1)(3, ModalComponent_Conditional_3_Template, 4, 13, "div", 2);
373
399
  } if (rf & 2) {
374
- i0.ɵɵproperty("auContentAsSlot", ctx.defaultSlots);
375
- i0.ɵɵadvance();
376
- i0.ɵɵconditional(!ctx.state().backdropHidden ? 1 : -1);
400
+ i0.ɵɵadvance(2);
401
+ i0.ɵɵconditional(!ctx.state.backdropHidden() ? 2 : -1);
377
402
  i0.ɵɵadvance();
378
- i0.ɵɵconditional(!ctx.state().hidden ? 2 : -1);
379
- } }, dependencies: [UseMultiDirective, SlotDirective, ContentAsSlotDirective], encapsulation: 2, changeDetection: 0 }); }
403
+ i0.ɵɵconditional(!ctx.state.hidden() ? 3 : -1);
404
+ } }, dependencies: [UseMultiDirective, SlotDirective], encapsulation: 2, changeDetection: 0 }); }
380
405
  }
381
406
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ModalComponent, [{
382
407
  type: Component,
@@ -384,24 +409,24 @@ class ModalComponent extends BaseWidgetDirective {
384
409
  selector: '[auModal]',
385
410
  standalone: true,
386
411
  changeDetection: ChangeDetectionStrategy.OnPush,
387
- imports: [UseMultiDirective, SlotDirective, ContentAsSlotDirective],
412
+ imports: [UseMultiDirective, SlotDirective],
388
413
  template: `
389
- <ng-template [auContentAsSlot]="defaultSlots"><ng-content></ng-content></ng-template>
390
- @if (!state().backdropHidden) {
391
- <div class="modal-backdrop" [auUseMulti]="[widget.directives.backdropPortalDirective, widget.directives.backdropDirective]"></div>
414
+ <ng-template #content><ng-content></ng-content></ng-template>
415
+ @if (!state.backdropHidden()) {
416
+ <div class="modal-backdrop" [auUseMulti]="[directives.backdropPortalDirective, directives.backdropDirective]"></div>
392
417
  }
393
- @if (!state().hidden) {
394
- <div class="modal d-block" [auUseMulti]="[widget.directives.modalPortalDirective, widget.directives.modalDirective]">
395
- <div class="modal-dialog {{ state().fullscreen ? 'modal-fullscreen' : '' }}">
418
+ @if (!state.hidden()) {
419
+ <div class="modal d-block" [auUseMulti]="[directives.modalPortalDirective, directives.modalDirective]">
420
+ <div class="modal-dialog {{ state.fullscreen() ? 'modal-fullscreen' : '' }}">
396
421
  <div class="modal-content">
397
- <ng-template [auSlot]="state().structure" [auSlotProps]="{state: state(), widget}"></ng-template>
422
+ <ng-template [auSlot]="state.structure()" [auSlotProps]="{state, api, directives}"></ng-template>
398
423
  </div>
399
424
  </div>
400
425
  </div>
401
426
  }
402
427
  `,
403
428
  }]
404
- }], null, { animated: [{
429
+ }], () => [], { animated: [{
405
430
  type: Input,
406
431
  args: [{ alias: 'auAnimated', transform: auBooleanAttribute }]
407
432
  }], backdropTransition: [{
@@ -482,8 +507,11 @@ class ModalComponent extends BaseWidgetDirective {
482
507
  }], shown: [{
483
508
  type: Output,
484
509
  args: ['auShown']
510
+ }], slotChildren: [{
511
+ type: ViewChild,
512
+ args: ['content', { static: true }]
485
513
  }] }); })();
486
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ModalComponent, { className: "ModalComponent", filePath: "components/modal/modal.component.ts", lineNumber: 161 }); })();
514
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ModalComponent, { className: "ModalComponent", filePath: "components/modal/modal.component.ts", lineNumber: 151 }); })();
487
515
 
488
516
  /**
489
517
  * Retrieve a shallow copy of the default Pagination config
@@ -499,11 +527,10 @@ const export_createPagination = createPagination;
499
527
 
500
528
  const _c0$7 = ["pages"];
501
529
  const _c1$7 = ["structure"];
502
- const _c2$7 = (a0, a1) => ({ state: a0, widget: a1 });
530
+ const _c2$7 = (a0, a1, a2) => ({ state: a0, api: a1, directives: a2 });
503
531
  const _c3$6 = a0 => ({ page: a0 });
504
- const _c4$2 = (a0, a1) => [a0, a1];
505
- const _c5$1 = (a0, a1, a2) => ({ state: a0, widget: a1, displayedPage: a2 });
506
- const _c6$1 = (a0, a1) => ({ widget: a0, state: a1 });
532
+ const _c4$5 = (a0, a1) => [a0, a1];
533
+ const _c5$3 = (a0, a1, a2, a3) => ({ state: a0, api: a1, directives: a2, displayedPage: a3 });
507
534
  function PaginationDefaultSlotsComponent_ng_template_0_For_1_Conditional_1_ng_template_1_Template(rf, ctx) { }
508
535
  function PaginationDefaultSlotsComponent_ng_template_0_For_1_Conditional_1_Template(rf, ctx) { if (rf & 1) {
509
536
  i0.ɵɵelementStart(0, "div", 7);
@@ -515,11 +542,12 @@ function PaginationDefaultSlotsComponent_ng_template_0_For_1_Conditional_1_Templ
515
542
  } if (rf & 2) {
516
543
  const ctx_r0 = i0.ɵɵnextContext(2);
517
544
  const state_r2 = ctx_r0.state;
518
- const widget_r3 = ctx_r0.widget;
545
+ const api_r3 = ctx_r0.api;
546
+ const directives_r4 = ctx_r0.directives;
519
547
  i0.ɵɵadvance();
520
- i0.ɵɵproperty("auSlot", state_r2.ellipsisLabel)("auSlotProps", i0.ɵɵpureFunction2(3, _c2$7, state_r2, widget_r3));
548
+ i0.ɵɵproperty("auSlot", state_r2.ellipsisLabel())("auSlotProps", i0.ɵɵpureFunction3(3, _c2$7, state_r2, api_r3, directives_r4));
521
549
  i0.ɵɵadvance(2);
522
- i0.ɵɵtextInterpolate(state_r2.ariaEllipsisLabel);
550
+ i0.ɵɵtextInterpolate(state_r2.ariaEllipsisLabel());
523
551
  } }
524
552
  function PaginationDefaultSlotsComponent_ng_template_0_For_1_Conditional_2_ng_template_1_Template(rf, ctx) { }
525
553
  function PaginationDefaultSlotsComponent_ng_template_0_For_1_Conditional_2_Conditional_2_Template(rf, ctx) { if (rf & 1) {
@@ -529,39 +557,40 @@ function PaginationDefaultSlotsComponent_ng_template_0_For_1_Conditional_2_Condi
529
557
  } if (rf & 2) {
530
558
  const state_r2 = i0.ɵɵnextContext(3).state;
531
559
  i0.ɵɵadvance();
532
- i0.ɵɵtextInterpolate(state_r2.activeLabel);
560
+ i0.ɵɵtextInterpolate(state_r2.activeLabel());
533
561
  } }
534
562
  function PaginationDefaultSlotsComponent_ng_template_0_For_1_Conditional_2_Template(rf, ctx) { if (rf & 1) {
535
563
  i0.ɵɵelementStart(0, "a", 6);
536
564
  i0.ɵɵtemplate(1, PaginationDefaultSlotsComponent_ng_template_0_For_1_Conditional_2_ng_template_1_Template, 0, 0, "ng-template", 8)(2, PaginationDefaultSlotsComponent_ng_template_0_For_1_Conditional_2_Conditional_2_Template, 2, 1, "span", 9);
537
565
  i0.ɵɵelementEnd();
538
566
  } if (rf & 2) {
539
- const page_r4 = i0.ɵɵnextContext().$implicit;
567
+ const page_r5 = i0.ɵɵnextContext().$implicit;
540
568
  const ctx_r0 = i0.ɵɵnextContext();
541
569
  const state_r2 = ctx_r0.state;
542
- const widget_r3 = ctx_r0.widget;
543
- i0.ɵɵproperty("auUse", i0.ɵɵpureFunction2(6, _c4$2, widget_r3.directives.pageLink, i0.ɵɵpureFunction1(4, _c3$6, page_r4)));
570
+ const api_r3 = ctx_r0.api;
571
+ const directives_r4 = ctx_r0.directives;
572
+ i0.ɵɵproperty("auUse", i0.ɵɵpureFunction2(6, _c4$5, directives_r4.pageLink, i0.ɵɵpureFunction1(4, _c3$6, page_r5)));
544
573
  i0.ɵɵadvance();
545
- i0.ɵɵproperty("auSlot", state_r2.numberLabel)("auSlotProps", i0.ɵɵpureFunction3(9, _c5$1, state_r2, widget_r3, page_r4));
574
+ i0.ɵɵproperty("auSlot", state_r2.numberLabel())("auSlotProps", i0.ɵɵpureFunction4(9, _c5$3, state_r2, api_r3, directives_r4, page_r5));
546
575
  i0.ɵɵadvance();
547
- i0.ɵɵconditional(state_r2.page === page_r4 ? 2 : -1);
576
+ i0.ɵɵconditional(state_r2.page() === page_r5 ? 2 : -1);
548
577
  } }
549
578
  function PaginationDefaultSlotsComponent_ng_template_0_For_1_Template(rf, ctx) { if (rf & 1) {
550
579
  i0.ɵɵelementStart(0, "li", 5);
551
- i0.ɵɵtemplate(1, PaginationDefaultSlotsComponent_ng_template_0_For_1_Conditional_1_Template, 4, 6)(2, PaginationDefaultSlotsComponent_ng_template_0_For_1_Conditional_2_Template, 3, 13, "a", 6);
580
+ i0.ɵɵtemplate(1, PaginationDefaultSlotsComponent_ng_template_0_For_1_Conditional_1_Template, 4, 7)(2, PaginationDefaultSlotsComponent_ng_template_0_For_1_Conditional_2_Template, 3, 14, "a", 6);
552
581
  i0.ɵɵelementEnd();
553
582
  } if (rf & 2) {
554
- const page_r4 = ctx.$implicit;
583
+ const page_r5 = ctx.$implicit;
555
584
  const state_r2 = i0.ɵɵnextContext().state;
556
- i0.ɵɵclassProp("active", page_r4 === state_r2.page)("disabled", page_r4 === -1 || state_r2.disabled);
585
+ i0.ɵɵclassProp("active", page_r5 === state_r2.page())("disabled", page_r5 === -1 || state_r2.disabled());
557
586
  i0.ɵɵadvance();
558
- i0.ɵɵconditional(page_r4 === -1 ? 1 : 2);
587
+ i0.ɵɵconditional(page_r5 === -1 ? 1 : 2);
559
588
  } }
560
589
  function PaginationDefaultSlotsComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
561
590
  i0.ɵɵrepeaterCreate(0, PaginationDefaultSlotsComponent_ng_template_0_For_1_Template, 3, 5, "li", 4, i0.ɵɵrepeaterTrackByIdentity);
562
591
  } if (rf & 2) {
563
592
  const state_r2 = ctx.state;
564
- i0.ɵɵrepeater(state_r2.pages);
593
+ i0.ɵɵrepeater(state_r2.pages());
565
594
  } }
566
595
  function PaginationDefaultSlotsComponent_ng_template_2_Conditional_1_ng_template_3_Template(rf, ctx) { }
567
596
  function PaginationDefaultSlotsComponent_ng_template_2_Conditional_1_Template(rf, ctx) { if (rf & 1) {
@@ -569,14 +598,15 @@ function PaginationDefaultSlotsComponent_ng_template_2_Conditional_1_Template(rf
569
598
  i0.ɵɵtemplate(3, PaginationDefaultSlotsComponent_ng_template_2_Conditional_1_ng_template_3_Template, 0, 0, "ng-template", 8);
570
599
  i0.ɵɵelementEnd()()();
571
600
  } if (rf & 2) {
572
- const ctx_r4 = i0.ɵɵnextContext();
573
- const state_r6 = ctx_r4.state;
574
- const widget_r7 = ctx_r4.widget;
575
- i0.ɵɵclassProp("disabled", state_r6.previousDisabled);
601
+ const ctx_r5 = i0.ɵɵnextContext();
602
+ const state_r7 = ctx_r5.state;
603
+ const api_r8 = ctx_r5.api;
604
+ const directives_r9 = ctx_r5.directives;
605
+ i0.ɵɵclassProp("disabled", state_r7.previousDisabled());
576
606
  i0.ɵɵadvance();
577
- i0.ɵɵproperty("auUse", widget_r7.directives.pageFirst);
607
+ i0.ɵɵproperty("auUse", directives_r9.pageFirst);
578
608
  i0.ɵɵadvance(2);
579
- i0.ɵɵproperty("auSlot", state_r6.firstPageLabel)("auSlotProps", i0.ɵɵpureFunction2(5, _c6$1, widget_r7, state_r6));
609
+ i0.ɵɵproperty("auSlot", state_r7.firstPageLabel())("auSlotProps", i0.ɵɵpureFunction3(5, _c2$7, state_r7, api_r8, directives_r9));
580
610
  } }
581
611
  function PaginationDefaultSlotsComponent_ng_template_2_Conditional_2_ng_template_3_Template(rf, ctx) { }
582
612
  function PaginationDefaultSlotsComponent_ng_template_2_Conditional_2_Template(rf, ctx) { if (rf & 1) {
@@ -584,14 +614,15 @@ function PaginationDefaultSlotsComponent_ng_template_2_Conditional_2_Template(rf
584
614
  i0.ɵɵtemplate(3, PaginationDefaultSlotsComponent_ng_template_2_Conditional_2_ng_template_3_Template, 0, 0, "ng-template", 8);
585
615
  i0.ɵɵelementEnd()()();
586
616
  } if (rf & 2) {
587
- const ctx_r4 = i0.ɵɵnextContext();
588
- const state_r6 = ctx_r4.state;
589
- const widget_r7 = ctx_r4.widget;
590
- i0.ɵɵclassProp("disabled", state_r6.previousDisabled);
617
+ const ctx_r5 = i0.ɵɵnextContext();
618
+ const state_r7 = ctx_r5.state;
619
+ const api_r8 = ctx_r5.api;
620
+ const directives_r9 = ctx_r5.directives;
621
+ i0.ɵɵclassProp("disabled", state_r7.previousDisabled());
591
622
  i0.ɵɵadvance();
592
- i0.ɵɵproperty("auUse", widget_r7.directives.pagePrev);
623
+ i0.ɵɵproperty("auUse", directives_r9.pagePrev);
593
624
  i0.ɵɵadvance(2);
594
- i0.ɵɵproperty("auSlot", state_r6.previousPageLabel)("auSlotProps", i0.ɵɵpureFunction2(5, _c6$1, widget_r7, state_r6));
625
+ i0.ɵɵproperty("auSlot", state_r7.previousPageLabel())("auSlotProps", i0.ɵɵpureFunction3(5, _c2$7, state_r7, api_r8, directives_r9));
595
626
  } }
596
627
  function PaginationDefaultSlotsComponent_ng_template_2_ng_template_3_Template(rf, ctx) { }
597
628
  function PaginationDefaultSlotsComponent_ng_template_2_Conditional_4_ng_template_3_Template(rf, ctx) { }
@@ -600,14 +631,15 @@ function PaginationDefaultSlotsComponent_ng_template_2_Conditional_4_Template(rf
600
631
  i0.ɵɵtemplate(3, PaginationDefaultSlotsComponent_ng_template_2_Conditional_4_ng_template_3_Template, 0, 0, "ng-template", 8);
601
632
  i0.ɵɵelementEnd()()();
602
633
  } if (rf & 2) {
603
- const ctx_r4 = i0.ɵɵnextContext();
604
- const state_r6 = ctx_r4.state;
605
- const widget_r7 = ctx_r4.widget;
606
- i0.ɵɵclassProp("disabled", state_r6.nextDisabled);
634
+ const ctx_r5 = i0.ɵɵnextContext();
635
+ const state_r7 = ctx_r5.state;
636
+ const api_r8 = ctx_r5.api;
637
+ const directives_r9 = ctx_r5.directives;
638
+ i0.ɵɵclassProp("disabled", state_r7.nextDisabled());
607
639
  i0.ɵɵadvance();
608
- i0.ɵɵproperty("auUse", widget_r7.directives.pageNext);
640
+ i0.ɵɵproperty("auUse", directives_r9.pageNext);
609
641
  i0.ɵɵadvance(2);
610
- i0.ɵɵproperty("auSlot", state_r6.nextPageLabel)("auSlotProps", i0.ɵɵpureFunction2(5, _c6$1, widget_r7, state_r6));
642
+ i0.ɵɵproperty("auSlot", state_r7.nextPageLabel())("auSlotProps", i0.ɵɵpureFunction3(5, _c2$7, state_r7, api_r8, directives_r9));
611
643
  } }
612
644
  function PaginationDefaultSlotsComponent_ng_template_2_Conditional_5_ng_template_3_Template(rf, ctx) { }
613
645
  function PaginationDefaultSlotsComponent_ng_template_2_Conditional_5_Template(rf, ctx) { if (rf & 1) {
@@ -615,43 +647,46 @@ function PaginationDefaultSlotsComponent_ng_template_2_Conditional_5_Template(rf
615
647
  i0.ɵɵtemplate(3, PaginationDefaultSlotsComponent_ng_template_2_Conditional_5_ng_template_3_Template, 0, 0, "ng-template", 8);
616
648
  i0.ɵɵelementEnd()()();
617
649
  } if (rf & 2) {
618
- const ctx_r4 = i0.ɵɵnextContext();
619
- const state_r6 = ctx_r4.state;
620
- const widget_r7 = ctx_r4.widget;
621
- i0.ɵɵclassProp("disabled", state_r6.nextDisabled);
650
+ const ctx_r5 = i0.ɵɵnextContext();
651
+ const state_r7 = ctx_r5.state;
652
+ const api_r8 = ctx_r5.api;
653
+ const directives_r9 = ctx_r5.directives;
654
+ i0.ɵɵclassProp("disabled", state_r7.nextDisabled());
622
655
  i0.ɵɵadvance();
623
- i0.ɵɵproperty("auUse", widget_r7.directives.pageLast);
656
+ i0.ɵɵproperty("auUse", directives_r9.pageLast);
624
657
  i0.ɵɵadvance(2);
625
- i0.ɵɵproperty("auSlot", state_r6.lastPageLabel)("auSlotProps", i0.ɵɵpureFunction2(5, _c6$1, widget_r7, state_r6));
658
+ i0.ɵɵproperty("auSlot", state_r7.lastPageLabel())("auSlotProps", i0.ɵɵpureFunction3(5, _c2$7, state_r7, api_r8, directives_r9));
626
659
  } }
627
660
  function PaginationDefaultSlotsComponent_ng_template_2_Template(rf, ctx) { if (rf & 1) {
628
661
  i0.ɵɵelementStart(0, "ul");
629
- i0.ɵɵtemplate(1, PaginationDefaultSlotsComponent_ng_template_2_Conditional_1_Template, 4, 8, "li", 10)(2, PaginationDefaultSlotsComponent_ng_template_2_Conditional_2_Template, 4, 8, "li", 10)(3, PaginationDefaultSlotsComponent_ng_template_2_ng_template_3_Template, 0, 0, "ng-template", 8)(4, PaginationDefaultSlotsComponent_ng_template_2_Conditional_4_Template, 4, 8, "li", 10)(5, PaginationDefaultSlotsComponent_ng_template_2_Conditional_5_Template, 4, 8, "li", 10);
662
+ i0.ɵɵtemplate(1, PaginationDefaultSlotsComponent_ng_template_2_Conditional_1_Template, 4, 9, "li", 10)(2, PaginationDefaultSlotsComponent_ng_template_2_Conditional_2_Template, 4, 9, "li", 10)(3, PaginationDefaultSlotsComponent_ng_template_2_ng_template_3_Template, 0, 0, "ng-template", 8)(4, PaginationDefaultSlotsComponent_ng_template_2_Conditional_4_Template, 4, 9, "li", 10)(5, PaginationDefaultSlotsComponent_ng_template_2_Conditional_5_Template, 4, 9, "li", 10);
630
663
  i0.ɵɵelementEnd();
631
664
  i0.ɵɵelementStart(6, "div", 11);
632
665
  i0.ɵɵtext(7);
633
666
  i0.ɵɵelementEnd();
634
667
  } if (rf & 2) {
635
- const state_r6 = ctx.state;
636
- const widget_r7 = ctx.widget;
637
- i0.ɵɵclassMap("au-pagination pagination" + (state_r6.size ? " pagination-" + state_r6.size : "") + " " + state_r6.className);
668
+ const state_r7 = ctx.state;
669
+ const api_r8 = ctx.api;
670
+ const directives_r9 = ctx.directives;
671
+ i0.ɵɵclassMap("au-pagination pagination" + (state_r7.size() ? " pagination-" + state_r7.size() : "") + " " + state_r7.className());
638
672
  i0.ɵɵadvance();
639
- i0.ɵɵconditional(state_r6.boundaryLinks ? 1 : -1);
673
+ i0.ɵɵconditional(state_r7.boundaryLinks() ? 1 : -1);
640
674
  i0.ɵɵadvance();
641
- i0.ɵɵconditional(state_r6.directionLinks ? 2 : -1);
675
+ i0.ɵɵconditional(state_r7.directionLinks() ? 2 : -1);
642
676
  i0.ɵɵadvance();
643
- i0.ɵɵproperty("auSlot", state_r6.pagesDisplay)("auSlotProps", i0.ɵɵpureFunction2(9, _c6$1, widget_r7, state_r6));
677
+ i0.ɵɵproperty("auSlot", state_r7.pagesDisplay())("auSlotProps", i0.ɵɵpureFunction3(9, _c2$7, state_r7, api_r8, directives_r9));
644
678
  i0.ɵɵadvance();
645
- i0.ɵɵconditional(state_r6.directionLinks ? 4 : -1);
679
+ i0.ɵɵconditional(state_r7.directionLinks() ? 4 : -1);
646
680
  i0.ɵɵadvance();
647
- i0.ɵɵconditional(state_r6.boundaryLinks ? 5 : -1);
681
+ i0.ɵɵconditional(state_r7.boundaryLinks() ? 5 : -1);
648
682
  i0.ɵɵadvance(2);
649
- i0.ɵɵtextInterpolate(state_r6.ariaLiveLabelText);
683
+ i0.ɵɵtextInterpolate(state_r7.ariaLiveLabelText());
650
684
  } }
651
- const _c7$1 = ["auPagination", ""];
685
+ const _c6$1 = ["auPagination", ""];
652
686
  function PaginationComponent_ng_template_0_Template(rf, ctx) { }
653
687
  /**
654
688
  * A directive to use to give the 'ellipsis' link template to the pagination component
689
+ * This directive provides a template reference for the {@link PaginationContext}.
655
690
  */
656
691
  class PaginationEllipsisDirective {
657
692
  constructor() {
@@ -660,7 +695,7 @@ class PaginationEllipsisDirective {
660
695
  static ngTemplateContextGuard(_dir, context) {
661
696
  return true;
662
697
  }
663
- static { this.ɵfac = function PaginationEllipsisDirective_Factory(t) { return new (t || PaginationEllipsisDirective)(); }; }
698
+ static { this.ɵfac = function PaginationEllipsisDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PaginationEllipsisDirective)(); }; }
664
699
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: PaginationEllipsisDirective, selectors: [["ng-template", "auPaginationEllipsis", ""]], standalone: true }); }
665
700
  }
666
701
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PaginationEllipsisDirective, [{
@@ -669,6 +704,7 @@ class PaginationEllipsisDirective {
669
704
  }], null, null); })();
670
705
  /**
671
706
  * A directive to use to give the 'first' link template to the pagination component
707
+ * This directive provides a template reference for the {@link PaginationContext}.
672
708
  */
673
709
  class PaginationFirstDirective {
674
710
  constructor() {
@@ -677,7 +713,7 @@ class PaginationFirstDirective {
677
713
  static ngTemplateContextGuard(_dir, context) {
678
714
  return true;
679
715
  }
680
- static { this.ɵfac = function PaginationFirstDirective_Factory(t) { return new (t || PaginationFirstDirective)(); }; }
716
+ static { this.ɵfac = function PaginationFirstDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PaginationFirstDirective)(); }; }
681
717
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: PaginationFirstDirective, selectors: [["ng-template", "auPaginationFirst", ""]], standalone: true }); }
682
718
  }
683
719
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PaginationFirstDirective, [{
@@ -686,6 +722,7 @@ class PaginationFirstDirective {
686
722
  }], null, null); })();
687
723
  /**
688
724
  * A directive to use to give the 'last' link template to the pagination component
725
+ * This directive provides a template reference for the {@link PaginationContext}.
689
726
  */
690
727
  class PaginationLastDirective {
691
728
  constructor() {
@@ -694,7 +731,7 @@ class PaginationLastDirective {
694
731
  static ngTemplateContextGuard(_dir, context) {
695
732
  return true;
696
733
  }
697
- static { this.ɵfac = function PaginationLastDirective_Factory(t) { return new (t || PaginationLastDirective)(); }; }
734
+ static { this.ɵfac = function PaginationLastDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PaginationLastDirective)(); }; }
698
735
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: PaginationLastDirective, selectors: [["ng-template", "auPaginationLast", ""]], standalone: true }); }
699
736
  }
700
737
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PaginationLastDirective, [{
@@ -703,6 +740,7 @@ class PaginationLastDirective {
703
740
  }], null, null); })();
704
741
  /**
705
742
  * A directive to use to give the 'next' link template to the pagination component
743
+ * This directive provides a template reference for the {@link PaginationContext}.
706
744
  */
707
745
  class PaginationNextDirective {
708
746
  constructor() {
@@ -711,7 +749,7 @@ class PaginationNextDirective {
711
749
  static ngTemplateContextGuard(_dir, context) {
712
750
  return true;
713
751
  }
714
- static { this.ɵfac = function PaginationNextDirective_Factory(t) { return new (t || PaginationNextDirective)(); }; }
752
+ static { this.ɵfac = function PaginationNextDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PaginationNextDirective)(); }; }
715
753
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: PaginationNextDirective, selectors: [["ng-template", "auPaginationNext", ""]], standalone: true }); }
716
754
  }
717
755
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PaginationNextDirective, [{
@@ -720,6 +758,7 @@ class PaginationNextDirective {
720
758
  }], null, null); })();
721
759
  /**
722
760
  * A directive to use to give the page 'number' template to the pagination component
761
+ * This directive provides a template reference for the {@link PaginationNumberContext}.
723
762
  */
724
763
  class PaginationNumberDirective {
725
764
  constructor() {
@@ -728,7 +767,7 @@ class PaginationNumberDirective {
728
767
  static ngTemplateContextGuard(_dir, context) {
729
768
  return true;
730
769
  }
731
- static { this.ɵfac = function PaginationNumberDirective_Factory(t) { return new (t || PaginationNumberDirective)(); }; }
770
+ static { this.ɵfac = function PaginationNumberDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PaginationNumberDirective)(); }; }
732
771
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: PaginationNumberDirective, selectors: [["ng-template", "auPaginationNumber", ""]], standalone: true }); }
733
772
  }
734
773
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PaginationNumberDirective, [{
@@ -737,6 +776,7 @@ class PaginationNumberDirective {
737
776
  }], null, null); })();
738
777
  /**
739
778
  * A directive to use to give the 'previous' link template to the pagination component
779
+ * This directive provides a template reference for the {@link PaginationContext}.
740
780
  */
741
781
  class PaginationPreviousDirective {
742
782
  constructor() {
@@ -745,7 +785,7 @@ class PaginationPreviousDirective {
745
785
  static ngTemplateContextGuard(_dir, context) {
746
786
  return true;
747
787
  }
748
- static { this.ɵfac = function PaginationPreviousDirective_Factory(t) { return new (t || PaginationPreviousDirective)(); }; }
788
+ static { this.ɵfac = function PaginationPreviousDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PaginationPreviousDirective)(); }; }
749
789
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: PaginationPreviousDirective, selectors: [["ng-template", "auPaginationPrevious", ""]], standalone: true }); }
750
790
  }
751
791
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PaginationPreviousDirective, [{
@@ -754,6 +794,7 @@ class PaginationPreviousDirective {
754
794
  }], null, null); })();
755
795
  /**
756
796
  * A directive to use to give the 'Pages' template for the Pages slot
797
+ * This directive provides a template reference for the {@link PaginationContext}.
757
798
  */
758
799
  class PaginationPagesDirective {
759
800
  constructor() {
@@ -762,7 +803,7 @@ class PaginationPagesDirective {
762
803
  static ngTemplateContextGuard(_dir, context) {
763
804
  return true;
764
805
  }
765
- static { this.ɵfac = function PaginationPagesDirective_Factory(t) { return new (t || PaginationPagesDirective)(); }; }
806
+ static { this.ɵfac = function PaginationPagesDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PaginationPagesDirective)(); }; }
766
807
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: PaginationPagesDirective, selectors: [["ng-template", "auPaginationPages", ""]], standalone: true }); }
767
808
  }
768
809
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PaginationPagesDirective, [{
@@ -771,15 +812,16 @@ class PaginationPagesDirective {
771
812
  }], null, null); })();
772
813
  /**
773
814
  * Directive to provide the slot structure for the pagination widget.
815
+ * This directive provides a template reference for the {@link PaginationContext}.
774
816
  */
775
817
  class PaginationStructureDirective {
776
818
  constructor() {
777
819
  this.templateRef = inject((TemplateRef));
778
820
  }
779
- static ngTemplateContextGuard(dir, context) {
821
+ static ngTemplateContextGuard(_dir, context) {
780
822
  return true;
781
823
  }
782
- static { this.ɵfac = function PaginationStructureDirective_Factory(t) { return new (t || PaginationStructureDirective)(); }; }
824
+ static { this.ɵfac = function PaginationStructureDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PaginationStructureDirective)(); }; }
783
825
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: PaginationStructureDirective, selectors: [["ng-template", "auPaginationStructure", ""]], standalone: true }); }
784
826
  }
785
827
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PaginationStructureDirective, [{
@@ -787,7 +829,7 @@ class PaginationStructureDirective {
787
829
  args: [{ selector: 'ng-template[auPaginationStructure]', standalone: true }]
788
830
  }], null, null); })();
789
831
  class PaginationDefaultSlotsComponent {
790
- static { this.ɵfac = function PaginationDefaultSlotsComponent_Factory(t) { return new (t || PaginationDefaultSlotsComponent)(); }; }
832
+ static { this.ɵfac = function PaginationDefaultSlotsComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PaginationDefaultSlotsComponent)(); }; }
791
833
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PaginationDefaultSlotsComponent, selectors: [["ng-component"]], viewQuery: function PaginationDefaultSlotsComponent_Query(rf, ctx) { if (rf & 1) {
792
834
  i0.ɵɵviewQuery(_c0$7, 7);
793
835
  i0.ɵɵviewQuery(_c1$7, 7);
@@ -796,7 +838,7 @@ class PaginationDefaultSlotsComponent {
796
838
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.pages = _t.first);
797
839
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.structure = _t.first);
798
840
  } }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 4, vars: 0, consts: [["pages", ""], ["structure", ""], ["auPaginationPages", ""], ["auPaginationStructure", ""], [1, "page-item", 3, "active", "disabled"], [1, "page-item"], [1, "page-link", 3, "auUse"], ["aria-hidden", "true", 1, "page-link", "au-ellipsis"], [3, "auSlot", "auSlotProps"], [1, "visually-hidden"], [1, "page-item", 3, "disabled"], ["aria-live", "polite", 1, "visually-hidden"], ["aria-hidden", "true"]], template: function PaginationDefaultSlotsComponent_Template(rf, ctx) { if (rf & 1) {
799
- i0.ɵɵtemplate(0, PaginationDefaultSlotsComponent_ng_template_0_Template, 2, 0, "ng-template", 2, 0, i0.ɵɵtemplateRefExtractor)(2, PaginationDefaultSlotsComponent_ng_template_2_Template, 8, 12, "ng-template", 3, 1, i0.ɵɵtemplateRefExtractor);
841
+ i0.ɵɵtemplate(0, PaginationDefaultSlotsComponent_ng_template_0_Template, 2, 0, "ng-template", 2, 0, i0.ɵɵtemplateRefExtractor)(2, PaginationDefaultSlotsComponent_ng_template_2_Template, 8, 13, "ng-template", 3, 1, i0.ɵɵtemplateRefExtractor);
800
842
  } }, dependencies: [SlotDirective, PaginationPagesDirective, PaginationStructureDirective, UseDirective], encapsulation: 2, changeDetection: 0 }); }
801
843
  }
802
844
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PaginationDefaultSlotsComponent, [{
@@ -806,66 +848,66 @@ class PaginationDefaultSlotsComponent {
806
848
  imports: [SlotDirective, PaginationPagesDirective, PaginationStructureDirective, UseDirective],
807
849
  changeDetection: ChangeDetectionStrategy.OnPush,
808
850
  template: `
809
- <ng-template auPaginationPages #pages let-state="state" let-widget="widget">
810
- @for (page of state.pages; track page; let i = $index) {
811
- <li class="page-item" [class.active]="page === state.page" [class.disabled]="page === -1 || state.disabled">
851
+ <ng-template auPaginationPages #pages let-state="state" let-api="api" let-directives="directives">
852
+ @for (page of state.pages(); track page; let i = $index) {
853
+ <li class="page-item" [class.active]="page === state.page()" [class.disabled]="page === -1 || state.disabled()">
812
854
  @if (page === -1) {
813
855
  <div class="page-link au-ellipsis" aria-hidden="true">
814
- <ng-template [auSlot]="state.ellipsisLabel" [auSlotProps]="{state, widget}"></ng-template>
856
+ <ng-template [auSlot]="state.ellipsisLabel()" [auSlotProps]="{state, api, directives}"></ng-template>
815
857
  </div>
816
- <span class="visually-hidden">{{ state.ariaEllipsisLabel }}</span>
858
+ <span class="visually-hidden">{{ state.ariaEllipsisLabel() }}</span>
817
859
  } @else {
818
- <a class="page-link" [auUse]="[widget.directives.pageLink, {page}]">
819
- <ng-template [auSlot]="state.numberLabel" [auSlotProps]="{state, widget, displayedPage: page}"></ng-template>
820
- @if (state.page === page) {
821
- <span class="visually-hidden">{{ state.activeLabel }}</span>
860
+ <a class="page-link" [auUse]="[directives.pageLink, {page}]">
861
+ <ng-template [auSlot]="state.numberLabel()" [auSlotProps]="{state, api, directives, displayedPage: page}"></ng-template>
862
+ @if (state.page() === page) {
863
+ <span class="visually-hidden">{{ state.activeLabel() }}</span>
822
864
  }
823
865
  </a>
824
866
  }
825
867
  </li>
826
868
  }
827
869
  </ng-template>
828
- <ng-template auPaginationStructure #structure let-state="state" let-widget="widget">
829
- <ul [class]="'au-pagination pagination' + (state.size ? ' pagination-' + state.size : '') + ' ' + state.className">
830
- @if (state.boundaryLinks) {
831
- <li class="page-item" [class.disabled]="state.previousDisabled">
832
- <a class="page-link" [auUse]="widget.directives.pageFirst">
870
+ <ng-template auPaginationStructure #structure let-state="state" let-api="api" let-directives="directives">
871
+ <ul [class]="'au-pagination pagination' + (state.size() ? ' pagination-' + state.size() : '') + ' ' + state.className()">
872
+ @if (state.boundaryLinks()) {
873
+ <li class="page-item" [class.disabled]="state.previousDisabled()">
874
+ <a class="page-link" [auUse]="directives.pageFirst">
833
875
  <span aria-hidden="true">
834
- <ng-template [auSlot]="state.firstPageLabel" [auSlotProps]="{widget, state}"></ng-template>
876
+ <ng-template [auSlot]="state.firstPageLabel()" [auSlotProps]="{state, api, directives}"></ng-template>
835
877
  </span>
836
878
  </a>
837
879
  </li>
838
880
  }
839
- @if (state.directionLinks) {
840
- <li class="page-item" [class.disabled]="state.previousDisabled">
841
- <a class="page-link" [auUse]="widget.directives.pagePrev">
881
+ @if (state.directionLinks()) {
882
+ <li class="page-item" [class.disabled]="state.previousDisabled()">
883
+ <a class="page-link" [auUse]="directives.pagePrev">
842
884
  <span aria-hidden="true">
843
- <ng-template [auSlot]="state.previousPageLabel" [auSlotProps]="{widget, state}"></ng-template>
885
+ <ng-template [auSlot]="state.previousPageLabel()" [auSlotProps]="{state, api, directives}"></ng-template>
844
886
  </span>
845
887
  </a>
846
888
  </li>
847
889
  }
848
- <ng-template [auSlot]="state.pagesDisplay" [auSlotProps]="{widget, state}"></ng-template>
849
- @if (state.directionLinks) {
850
- <li class="page-item" [class.disabled]="state.nextDisabled">
851
- <a class="page-link" [auUse]="widget.directives.pageNext">
890
+ <ng-template [auSlot]="state.pagesDisplay()" [auSlotProps]="{state, api, directives}"></ng-template>
891
+ @if (state.directionLinks()) {
892
+ <li class="page-item" [class.disabled]="state.nextDisabled()">
893
+ <a class="page-link" [auUse]="directives.pageNext">
852
894
  <span aria-hidden="true">
853
- <ng-template [auSlot]="state.nextPageLabel" [auSlotProps]="{widget, state}"></ng-template>
895
+ <ng-template [auSlot]="state.nextPageLabel()" [auSlotProps]="{state, api, directives}"></ng-template>
854
896
  </span>
855
897
  </a>
856
898
  </li>
857
899
  }
858
- @if (state.boundaryLinks) {
859
- <li class="page-item" [class.disabled]="state.nextDisabled">
860
- <a class="page-link" [auUse]="widget.directives.pageLast">
900
+ @if (state.boundaryLinks()) {
901
+ <li class="page-item" [class.disabled]="state.nextDisabled()">
902
+ <a class="page-link" [auUse]="directives.pageLast">
861
903
  <span aria-hidden="true">
862
- <ng-template [auSlot]="state.lastPageLabel" [auSlotProps]="{widget, state}"></ng-template>
904
+ <ng-template [auSlot]="state.lastPageLabel()" [auSlotProps]="{state, api, directives}"></ng-template>
863
905
  </span>
864
906
  </a>
865
907
  </li>
866
908
  }
867
909
  </ul>
868
- <div aria-live="polite" class="visually-hidden">{{ state.ariaLiveLabelText }}</div>
910
+ <div aria-live="polite" class="visually-hidden">{{ state.ariaLiveLabelText() }}</div>
869
911
  </ng-template>
870
912
  `,
871
913
  }]
@@ -876,7 +918,7 @@ class PaginationDefaultSlotsComponent {
876
918
  type: ViewChild,
877
919
  args: ['structure', { static: true }]
878
920
  }] }); })();
879
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PaginationDefaultSlotsComponent, { className: "PaginationDefaultSlotsComponent", filePath: "components/pagination/pagination.component.ts", lineNumber: 177 }); })();
921
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PaginationDefaultSlotsComponent, { className: "PaginationDefaultSlotsComponent", filePath: "components/pagination/pagination.component.ts", lineNumber: 184 }); })();
880
922
  /**
881
923
  * The default slot for the pages
882
924
  */
@@ -885,21 +927,34 @@ const paginationDefaultSlotPages = new ComponentTemplate(PaginationDefaultSlotsC
885
927
  * The default slot for the structure
886
928
  */
887
929
  const paginationDefaultSlotStructure = new ComponentTemplate(PaginationDefaultSlotsComponent, 'structure');
888
- const defaultConfig$5 = {
889
- structure: paginationDefaultSlotStructure,
890
- pagesDisplay: paginationDefaultSlotPages,
891
- };
930
+ /**
931
+ * The `PaginationComponent` is an Angular component that extends the `BaseWidgetDirective`
932
+ * to provide a customizable pagination widget. It includes various input properties
933
+ * to configure labels, templates, and behavior for accessibility and internationalization (i18n).
934
+ */
892
935
  class PaginationComponent extends BaseWidgetDirective {
893
936
  constructor() {
894
- super(...arguments);
895
- this._widget = callWidgetFactory({
937
+ super(callWidgetFactory({
896
938
  factory: export_createPagination,
897
939
  widgetName: 'pagination',
898
- defaultConfig: defaultConfig$5,
940
+ defaultConfig: {
941
+ structure: paginationDefaultSlotStructure,
942
+ pagesDisplay: paginationDefaultSlotPages,
943
+ },
899
944
  events: {
900
945
  onPageChange: (page) => this.pageChange.emit(page),
901
946
  },
902
- });
947
+ slotTemplates: () => ({
948
+ structure: this.slotStructureFromContent?.templateRef,
949
+ ellipsisLabel: this.slotEllipsisFromContent?.templateRef,
950
+ firstPageLabel: this.slotFirstFromContent?.templateRef,
951
+ previousPageLabel: this.slotPreviousFromContent?.templateRef,
952
+ nextPageLabel: this.slotNextFromContent?.templateRef,
953
+ lastPageLabel: this.slotLastFromContent?.templateRef,
954
+ pagesDisplay: this.slotPagesFromContent?.templateRef,
955
+ numberLabel: this.slotNumberLabelFromContent?.templateRef,
956
+ }),
957
+ }));
903
958
  /**
904
959
  * An event fired when the page is changed.
905
960
  *
@@ -913,19 +968,7 @@ class PaginationComponent extends BaseWidgetDirective {
913
968
  */
914
969
  this.pageChange = new EventEmitter();
915
970
  }
916
- ngAfterContentChecked() {
917
- this._widget.patchSlots({
918
- structure: this.slotStructureFromContent?.templateRef,
919
- ellipsisLabel: this.slotEllipsisFromContent?.templateRef,
920
- firstPageLabel: this.slotFirstFromContent?.templateRef,
921
- previousPageLabel: this.slotPreviousFromContent?.templateRef,
922
- nextPageLabel: this.slotNextFromContent?.templateRef,
923
- lastPageLabel: this.slotLastFromContent?.templateRef,
924
- pagesDisplay: this.slotPagesFromContent?.templateRef,
925
- numberLabel: this.slotNumberLabelFromContent?.templateRef,
926
- });
927
- }
928
- static { this.ɵfac = /*@__PURE__*/ (() => { let ɵPaginationComponent_BaseFactory; return function PaginationComponent_Factory(t) { return (ɵPaginationComponent_BaseFactory || (ɵPaginationComponent_BaseFactory = i0.ɵɵgetInheritedFactory(PaginationComponent)))(t || PaginationComponent); }; })(); }
971
+ static { this.ɵfac = function PaginationComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || PaginationComponent)(); }; }
929
972
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: PaginationComponent, selectors: [["", "auPagination", ""]], contentQueries: function PaginationComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
930
973
  i0.ɵɵcontentQuery(dirIndex, PaginationEllipsisDirective, 5);
931
974
  i0.ɵɵcontentQuery(dirIndex, PaginationFirstDirective, 5);
@@ -946,11 +989,11 @@ class PaginationComponent extends BaseWidgetDirective {
946
989
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotNumberLabelFromContent = _t.first);
947
990
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotStructureFromContent = _t.first);
948
991
  } }, hostVars: 1, hostBindings: function PaginationComponent_HostBindings(rf, ctx) { if (rf & 2) {
949
- i0.ɵɵattribute("aria-label", ctx.state().ariaLabel);
950
- } }, inputs: { ariaPageLabel: [0, "auAriaPageLabel", "ariaPageLabel"], ariaLiveLabel: [0, "auAriaLiveLabel", "ariaLiveLabel"], ariaLabel: [0, "auAriaLabel", "ariaLabel"], activeLabel: [0, "auActiveLabel", "activeLabel"], ariaFirstLabel: [0, "auAriaFirstLabel", "ariaFirstLabel"], ariaPreviousLabel: [0, "auAriaPreviousLabel", "ariaPreviousLabel"], ariaNextLabel: [0, "auAriaNextLabel", "ariaNextLabel"], ariaLastLabel: [0, "auAriaLastLabel", "ariaLastLabel"], ariaEllipsisLabel: [0, "auAriaEllipsisLabel", "ariaEllipsisLabel"], pageLink: [0, "auPageLink", "pageLink"], ellipsisLabel: [0, "auEllipsisLabel", "ellipsisLabel"], firstPageLabel: [0, "auFirstPageLabel", "firstPageLabel"], previousPageLabel: [0, "auPreviousPageLabel", "previousPageLabel"], nextPageLabel: [0, "auNextPageLabel", "nextPageLabel"], lastPageLabel: [0, "auLastPageLabel", "lastPageLabel"], pagesDisplay: [0, "auPagesDisplay", "pagesDisplay"], numberLabel: [0, "auNumberLabel", "numberLabel"], structure: [0, "auStructure", "structure"], disabled: [2, "auDisabled", "disabled", auBooleanAttribute], boundaryLinks: [2, "auBoundaryLinks", "boundaryLinks", auBooleanAttribute], directionLinks: [2, "auDirectionLinks", "directionLinks", auBooleanAttribute], collectionSize: [2, "auCollectionSize", "collectionSize", auNumberAttribute], page: [2, "auPage", "page", auNumberAttribute], pageSize: [2, "auPageSize", "pageSize", auNumberAttribute], size: [0, "auSize", "size"], pagesFactory: [0, "auPagesFactory", "pagesFactory"], className: [0, "auClassName", "className"] }, outputs: { pageChange: "auPageChange" }, standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c7$1, decls: 1, vars: 5, consts: [[3, "auSlotProps", "auSlot"]], template: function PaginationComponent_Template(rf, ctx) { if (rf & 1) {
992
+ i0.ɵɵattribute("aria-label", ctx.state.ariaLabel());
993
+ } }, inputs: { ariaPageLabel: [0, "auAriaPageLabel", "ariaPageLabel"], ariaLiveLabel: [0, "auAriaLiveLabel", "ariaLiveLabel"], ariaLabel: [0, "auAriaLabel", "ariaLabel"], activeLabel: [0, "auActiveLabel", "activeLabel"], ariaFirstLabel: [0, "auAriaFirstLabel", "ariaFirstLabel"], ariaPreviousLabel: [0, "auAriaPreviousLabel", "ariaPreviousLabel"], ariaNextLabel: [0, "auAriaNextLabel", "ariaNextLabel"], ariaLastLabel: [0, "auAriaLastLabel", "ariaLastLabel"], ariaEllipsisLabel: [0, "auAriaEllipsisLabel", "ariaEllipsisLabel"], pageLink: [0, "auPageLink", "pageLink"], ellipsisLabel: [0, "auEllipsisLabel", "ellipsisLabel"], firstPageLabel: [0, "auFirstPageLabel", "firstPageLabel"], previousPageLabel: [0, "auPreviousPageLabel", "previousPageLabel"], nextPageLabel: [0, "auNextPageLabel", "nextPageLabel"], lastPageLabel: [0, "auLastPageLabel", "lastPageLabel"], pagesDisplay: [0, "auPagesDisplay", "pagesDisplay"], numberLabel: [0, "auNumberLabel", "numberLabel"], structure: [0, "auStructure", "structure"], disabled: [2, "auDisabled", "disabled", auBooleanAttribute], boundaryLinks: [2, "auBoundaryLinks", "boundaryLinks", auBooleanAttribute], directionLinks: [2, "auDirectionLinks", "directionLinks", auBooleanAttribute], collectionSize: [2, "auCollectionSize", "collectionSize", auNumberAttribute], page: [2, "auPage", "page", auNumberAttribute], pageSize: [2, "auPageSize", "pageSize", auNumberAttribute], size: [0, "auSize", "size"], pagesFactory: [0, "auPagesFactory", "pagesFactory"], className: [0, "auClassName", "className"] }, outputs: { pageChange: "auPageChange" }, standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c6$1, decls: 1, vars: 6, consts: [[3, "auSlotProps", "auSlot"]], template: function PaginationComponent_Template(rf, ctx) { if (rf & 1) {
951
994
  i0.ɵɵtemplate(0, PaginationComponent_ng_template_0_Template, 0, 0, "ng-template", 0);
952
995
  } if (rf & 2) {
953
- i0.ɵɵproperty("auSlotProps", i0.ɵɵpureFunction2(2, _c2$7, ctx.state(), ctx.widget))("auSlot", ctx.state().structure);
996
+ i0.ɵɵproperty("auSlotProps", i0.ɵɵpureFunction3(2, _c2$7, ctx.state, ctx.api, ctx.directives))("auSlot", ctx.state.structure());
954
997
  } }, dependencies: [SlotDirective], encapsulation: 2, changeDetection: 0 }); }
955
998
  }
956
999
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PaginationComponent, [{
@@ -961,12 +1004,12 @@ class PaginationComponent extends BaseWidgetDirective {
961
1004
  imports: [SlotDirective],
962
1005
  changeDetection: ChangeDetectionStrategy.OnPush,
963
1006
  host: {
964
- '[attr.aria-label]': 'state().ariaLabel',
1007
+ '[attr.aria-label]': 'state.ariaLabel()',
965
1008
  },
966
1009
  encapsulation: ViewEncapsulation.None,
967
- template: `<ng-template [auSlotProps]="{state: state(), widget}" [auSlot]="state().structure"></ng-template>`,
1010
+ template: `<ng-template [auSlotProps]="{state, api, directives}" [auSlot]="state.structure()"></ng-template>`,
968
1011
  }]
969
- }], null, { ariaPageLabel: [{
1012
+ }], () => [], { ariaPageLabel: [{
970
1013
  type: Input,
971
1014
  args: ['auAriaPageLabel']
972
1015
  }], ariaLiveLabel: [{
@@ -1075,7 +1118,7 @@ class PaginationComponent extends BaseWidgetDirective {
1075
1118
  type: Input,
1076
1119
  args: ['auClassName']
1077
1120
  }] }); })();
1078
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PaginationComponent, { className: "PaginationComponent", filePath: "components/pagination/pagination.component.ts", lineNumber: 206 }); })();
1121
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(PaginationComponent, { className: "PaginationComponent", filePath: "components/pagination/pagination.component.ts", lineNumber: 213 }); })();
1079
1122
 
1080
1123
  /**
1081
1124
  * Retrieve a shallow copy of the default Rating config
@@ -1104,12 +1147,17 @@ function RatingComponent_For_1_Template(rf, ctx) { if (rf & 1) {
1104
1147
  const ɵ$index_1_r1 = ctx.$index;
1105
1148
  const ctx_r1 = i0.ɵɵnextContext();
1106
1149
  i0.ɵɵadvance();
1107
- i0.ɵɵtextInterpolate1("(", ɵ$index_1_r1 < ctx_r1.state().visibleRating ? "*" : " ", ")");
1150
+ i0.ɵɵtextInterpolate1("(", ɵ$index_1_r1 < ctx_r1.state.visibleRating() ? "*" : " ", ")");
1108
1151
  i0.ɵɵadvance();
1109
- i0.ɵɵproperty("auUse", i0.ɵɵpureFunction2(6, _c2$6, ctx_r1._widget.directives.starDirective, i0.ɵɵpureFunction1(4, _c1$6, ɵ$index_1_r1)));
1152
+ i0.ɵɵproperty("auUse", i0.ɵɵpureFunction2(6, _c2$6, ctx_r1.directives.starDirective, i0.ɵɵpureFunction1(4, _c1$6, ɵ$index_1_r1)));
1110
1153
  i0.ɵɵadvance();
1111
- i0.ɵɵproperty("auSlot", ctx_r1.state().star)("auSlotProps", ctx_r1.state().stars[ɵ$index_1_r1]);
1154
+ i0.ɵɵproperty("auSlot", ctx_r1.state.star())("auSlotProps", ctx_r1.state.stars()[ɵ$index_1_r1]);
1112
1155
  } }
1156
+ /**
1157
+ * Directive to represent a rating star.
1158
+ *
1159
+ * This directive uses a template reference to render the {@link StarContext}.
1160
+ */
1113
1161
  class RatingStarDirective {
1114
1162
  constructor() {
1115
1163
  this.templateRef = inject((TemplateRef));
@@ -1117,17 +1165,32 @@ class RatingStarDirective {
1117
1165
  static ngTemplateContextGuard(_dir, context) {
1118
1166
  return true;
1119
1167
  }
1120
- static { this.ɵfac = function RatingStarDirective_Factory(t) { return new (t || RatingStarDirective)(); }; }
1168
+ static { this.ɵfac = function RatingStarDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || RatingStarDirective)(); }; }
1121
1169
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: RatingStarDirective, selectors: [["ng-template", "auRatingStar", ""]], standalone: true }); }
1122
1170
  }
1123
1171
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RatingStarDirective, [{
1124
1172
  type: Directive,
1125
1173
  args: [{ selector: 'ng-template[auRatingStar]', standalone: true }]
1126
1174
  }], null, null); })();
1175
+ /**
1176
+ * The `RatingComponent` is an Angular component that allows users to provide a rating.
1177
+ * It extends `BaseWidgetDirective` and implements `ControlValueAccessor` to integrate with Angular forms.
1178
+ */
1127
1179
  class RatingComponent extends BaseWidgetDirective {
1180
+ writeValue(value) {
1181
+ this['_widget'].patch({ rating: value });
1182
+ }
1183
+ registerOnChange(fn) {
1184
+ this.onChange = fn;
1185
+ }
1186
+ registerOnTouched(fn) {
1187
+ this.onTouched = fn;
1188
+ }
1189
+ setDisabledState(disabled) {
1190
+ this['_widget'].patch({ disabled });
1191
+ }
1128
1192
  constructor() {
1129
- super(...arguments);
1130
- this._widget = callWidgetFactory({
1193
+ super(callWidgetFactory({
1131
1194
  factory: export_createRating,
1132
1195
  widgetName: 'rating',
1133
1196
  events: {
@@ -1138,10 +1201,13 @@ class RatingComponent extends BaseWidgetDirective {
1138
1201
  this.onChange(rating);
1139
1202
  },
1140
1203
  },
1141
- afterInit: () => {
1142
- useDirectiveForHost(this._widget.directives.containerDirective);
1204
+ afterInit: (widget) => {
1205
+ useDirectiveForHost(widget.directives.containerDirective);
1143
1206
  },
1144
- });
1207
+ slotTemplates: () => ({
1208
+ star: this.slotStarFromContent?.templateRef,
1209
+ }),
1210
+ }));
1145
1211
  this.onChange = (_) => { };
1146
1212
  this.onTouched = () => { };
1147
1213
  /**
@@ -1178,27 +1244,10 @@ class RatingComponent extends BaseWidgetDirective {
1178
1244
  */
1179
1245
  this.ratingChange = new EventEmitter();
1180
1246
  }
1181
- writeValue(value) {
1182
- this._widget.patch({ rating: value });
1183
- }
1184
- registerOnChange(fn) {
1185
- this.onChange = fn;
1186
- }
1187
- registerOnTouched(fn) {
1188
- this.onTouched = fn;
1189
- }
1190
- setDisabledState(disabled) {
1191
- this._widget.patch({ disabled });
1192
- }
1193
- ngAfterContentChecked() {
1194
- this._widget.patchSlots({
1195
- star: this.slotStarFromContent?.templateRef,
1196
- });
1197
- }
1198
1247
  trackByIndex(index) {
1199
1248
  return index;
1200
1249
  }
1201
- static { this.ɵfac = /*@__PURE__*/ (() => { let ɵRatingComponent_BaseFactory; return function RatingComponent_Factory(t) { return (ɵRatingComponent_BaseFactory || (ɵRatingComponent_BaseFactory = i0.ɵɵgetInheritedFactory(RatingComponent)))(t || RatingComponent); }; })(); }
1250
+ static { this.ɵfac = function RatingComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || RatingComponent)(); }; }
1202
1251
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: RatingComponent, selectors: [["", "auRating", ""]], contentQueries: function RatingComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
1203
1252
  i0.ɵɵcontentQuery(dirIndex, RatingStarDirective, 5);
1204
1253
  } if (rf & 2) {
@@ -1209,7 +1258,7 @@ class RatingComponent extends BaseWidgetDirective {
1209
1258
  } }, inputs: { ariaValueTextFn: [0, "auAriaValueTextFn", "ariaValueTextFn"], disabled: [2, "auDisabled", "disabled", auBooleanAttribute], maxRating: [2, "auMaxRating", "maxRating", auNumberAttribute], rating: [2, "auRating", "rating", auNumberAttribute], readonly: [2, "auReadonly", "readonly", auBooleanAttribute], resettable: [2, "auResettable", "resettable", auBooleanAttribute], star: [0, "auStar", "star"], tabindex: [2, "auTabindex", "tabindex", auNumberAttribute], className: [0, "auClassName", "className"], ariaLabel: [0, "auAriaLabel", "ariaLabel"], ariaLabelledBy: [0, "auAriaLabelledBy", "ariaLabelledBy"] }, outputs: { hover: "auHover", leave: "auLeave", ratingChange: "auRatingChange" }, standalone: true, features: [i0.ɵɵProvidersFeature([{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => RatingComponent), multi: true }]), i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c0$6, decls: 2, vars: 0, consts: [[1, "visually-hidden"], [3, "auUse"], [3, "auSlot", "auSlotProps"]], template: function RatingComponent_Template(rf, ctx) { if (rf & 1) {
1210
1259
  i0.ɵɵrepeaterCreate(0, RatingComponent_For_1_Template, 4, 9, null, null, ctx.trackByIndex, true);
1211
1260
  } if (rf & 2) {
1212
- i0.ɵɵrepeater(ctx.state().stars);
1261
+ i0.ɵɵrepeater(ctx.state.stars());
1213
1262
  } }, dependencies: [UseDirective, SlotDirective], encapsulation: 2, changeDetection: 0 }); }
1214
1263
  }
1215
1264
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(RatingComponent, [{
@@ -1225,16 +1274,16 @@ class RatingComponent extends BaseWidgetDirective {
1225
1274
  '(blur)': 'onTouched()',
1226
1275
  },
1227
1276
  template: `
1228
- @for (item of state().stars; track trackByIndex(index); let index = $index) {
1229
- <span class="visually-hidden">({{ index < state().visibleRating ? '*' : ' ' }})</span>
1230
- <span [auUse]="[_widget.directives.starDirective, {index}]">
1231
- <ng-template [auSlot]="state().star" [auSlotProps]="state().stars[index]"></ng-template>
1277
+ @for (item of state.stars(); track trackByIndex(index); let index = $index) {
1278
+ <span class="visually-hidden">({{ index < state.visibleRating() ? '*' : ' ' }})</span>
1279
+ <span [auUse]="[directives.starDirective, {index}]">
1280
+ <ng-template [auSlot]="state.star()" [auSlotProps]="state.stars()[index]"></ng-template>
1232
1281
  </span>
1233
1282
  }
1234
1283
  `,
1235
1284
  providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => RatingComponent), multi: true }],
1236
1285
  }]
1237
- }], null, { ariaValueTextFn: [{
1286
+ }], () => [], { ariaValueTextFn: [{
1238
1287
  type: Input,
1239
1288
  args: ['auAriaValueTextFn']
1240
1289
  }], disabled: [{
@@ -1280,7 +1329,7 @@ class RatingComponent extends BaseWidgetDirective {
1280
1329
  type: Output,
1281
1330
  args: ['auRatingChange']
1282
1331
  }] }); })();
1283
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RatingComponent, { className: "RatingComponent", filePath: "components/rating/rating.component.ts", lineNumber: 58 }); })();
1332
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(RatingComponent, { className: "RatingComponent", filePath: "components/rating/rating.component.ts", lineNumber: 66 }); })();
1284
1333
 
1285
1334
  /**
1286
1335
  * Retrieve a shallow copy of the default Select config
@@ -1296,72 +1345,55 @@ const export_createSelect = createSelect;
1296
1345
 
1297
1346
  const _c0$5 = ["auSelect", ""];
1298
1347
  const _c1$5 = (a0, a1) => [a0, a1];
1299
- const _c2$5 = (a0, a1, a2) => ({ state: a0, widget: a1, itemContext: a2 });
1348
+ const _c2$5 = (a0, a1, a2, a3) => ({ state: a0, api: a1, directives: a2, itemContext: a3 });
1300
1349
  const _c3$5 = (a0, a1, a2) => [a0, a1, a2];
1301
- function SelectComponent_Conditional_0_Conditional_1_For_1_ng_template_1_Template(rf, ctx) { }
1302
- function SelectComponent_Conditional_0_Conditional_1_For_1_Template(rf, ctx) { if (rf & 1) {
1350
+ function SelectComponent_Conditional_1_For_1_ng_template_1_Template(rf, ctx) { }
1351
+ function SelectComponent_Conditional_1_For_1_Template(rf, ctx) { if (rf & 1) {
1303
1352
  i0.ɵɵelementStart(0, "div", 3);
1304
- i0.ɵɵtemplate(1, SelectComponent_Conditional_0_Conditional_1_For_1_ng_template_1_Template, 0, 0, "ng-template", 4);
1353
+ i0.ɵɵtemplate(1, SelectComponent_Conditional_1_For_1_ng_template_1_Template, 0, 0, "ng-template", 4);
1305
1354
  i0.ɵɵelementEnd();
1306
1355
  } if (rf & 2) {
1307
- const itemContext_r2 = ctx.$implicit;
1308
- const state_r3 = i0.ɵɵnextContext(2);
1309
- const ctx_r3 = i0.ɵɵnextContext();
1310
- i0.ɵɵproperty("auUse", i0.ɵɵpureFunction2(3, _c1$5, ctx_r3._widget.directives.badgeAttributesDirective, itemContext_r2));
1356
+ const itemContext_r1 = ctx.$implicit;
1357
+ const ctx_r1 = i0.ɵɵnextContext(2);
1358
+ i0.ɵɵproperty("auUse", i0.ɵɵpureFunction2(3, _c1$5, ctx_r1.directives.badgeAttributesDirective, itemContext_r1));
1311
1359
  i0.ɵɵadvance();
1312
- i0.ɵɵproperty("auSlot", state_r3.badgeLabel)("auSlotProps", i0.ɵɵpureFunction3(6, _c2$5, state_r3, ctx_r3.widget, itemContext_r2));
1360
+ i0.ɵɵproperty("auSlot", ctx_r1.state.badgeLabel())("auSlotProps", i0.ɵɵpureFunction4(6, _c2$5, ctx_r1.state, ctx_r1.api, ctx_r1.directives, itemContext_r1));
1313
1361
  } }
1314
- function SelectComponent_Conditional_0_Conditional_1_Template(rf, ctx) { if (rf & 1) {
1315
- i0.ɵɵrepeaterCreate(0, SelectComponent_Conditional_0_Conditional_1_For_1_Template, 2, 10, "div", 3, i0.ɵɵcomponentInstance().itemCtxTrackBy, true);
1362
+ function SelectComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
1363
+ i0.ɵɵrepeaterCreate(0, SelectComponent_Conditional_1_For_1_Template, 2, 11, "div", 3, i0.ɵɵcomponentInstance().itemCtxTrackBy, true);
1316
1364
  } if (rf & 2) {
1317
1365
  i0.ɵɵrepeater(ctx);
1318
1366
  } }
1319
- function SelectComponent_Conditional_0_Conditional_3_For_2_ng_template_1_Template(rf, ctx) { }
1320
- function SelectComponent_Conditional_0_Conditional_3_For_2_Template(rf, ctx) { if (rf & 1) {
1367
+ function SelectComponent_Conditional_3_For_2_ng_template_1_Template(rf, ctx) { }
1368
+ function SelectComponent_Conditional_3_For_2_Template(rf, ctx) { if (rf & 1) {
1321
1369
  i0.ɵɵelementStart(0, "li", 6);
1322
- i0.ɵɵtemplate(1, SelectComponent_Conditional_0_Conditional_3_For_2_ng_template_1_Template, 0, 0, "ng-template", 4);
1370
+ i0.ɵɵtemplate(1, SelectComponent_Conditional_3_For_2_ng_template_1_Template, 0, 0, "ng-template", 4);
1323
1371
  i0.ɵɵelementEnd();
1324
1372
  } if (rf & 2) {
1325
- const itemContext_r5 = ctx.$implicit;
1326
- const state_r3 = i0.ɵɵnextContext(2);
1327
- const ctx_r3 = i0.ɵɵnextContext();
1328
- i0.ɵɵclassProp("text-bg-primary", itemContext_r5 === state_r3.highlighted);
1329
- i0.ɵɵproperty("auUse", i0.ɵɵpureFunction2(5, _c1$5, ctx_r3._widget.directives.itemAttributesDirective, itemContext_r5));
1373
+ const itemContext_r3 = ctx.$implicit;
1374
+ const ctx_r1 = i0.ɵɵnextContext(2);
1375
+ i0.ɵɵclassProp("text-bg-primary", itemContext_r3 === ctx_r1.state.highlighted());
1376
+ i0.ɵɵproperty("auUse", i0.ɵɵpureFunction2(5, _c1$5, ctx_r1.directives.itemAttributesDirective, itemContext_r3));
1330
1377
  i0.ɵɵadvance();
1331
- i0.ɵɵproperty("auSlot", state_r3.itemLabel)("auSlotProps", i0.ɵɵpureFunction3(8, _c2$5, state_r3, ctx_r3.widget, itemContext_r5));
1378
+ i0.ɵɵproperty("auSlot", ctx_r1.state.itemLabel())("auSlotProps", i0.ɵɵpureFunction4(8, _c2$5, ctx_r1.state, ctx_r1.api, ctx_r1.directives, itemContext_r3));
1332
1379
  } }
1333
- function SelectComponent_Conditional_0_Conditional_3_Template(rf, ctx) { if (rf & 1) {
1380
+ function SelectComponent_Conditional_3_Template(rf, ctx) { if (rf & 1) {
1334
1381
  i0.ɵɵelementStart(0, "ul", 2);
1335
- i0.ɵɵrepeaterCreate(1, SelectComponent_Conditional_0_Conditional_3_For_2_Template, 2, 12, "li", 5, i0.ɵɵcomponentInstance().itemCtxTrackBy, true);
1382
+ i0.ɵɵrepeaterCreate(1, SelectComponent_Conditional_3_For_2_Template, 2, 13, "li", 5, i0.ɵɵcomponentInstance().itemCtxTrackBy, true);
1336
1383
  i0.ɵɵelementEnd();
1337
1384
  } if (rf & 2) {
1338
- const state_r3 = i0.ɵɵnextContext();
1339
- const ctx_r3 = i0.ɵɵnextContext();
1340
- i0.ɵɵproperty("auUseMulti", i0.ɵɵpureFunction3(1, _c3$5, ctx_r3.widget.directives.hasFocusDirective, ctx_r3.widget.directives.floatingDirective, ctx_r3.widget.directives.menuAttributesDirective));
1341
- i0.ɵɵadvance();
1342
- i0.ɵɵrepeater(state_r3.visibleItems);
1343
- } }
1344
- function SelectComponent_Conditional_0_Template(rf, ctx) { if (rf & 1) {
1345
- const _r1 = i0.ɵɵgetCurrentView();
1346
- i0.ɵɵelementStart(0, "div", 0);
1347
- i0.ɵɵtemplate(1, SelectComponent_Conditional_0_Conditional_1_Template, 2, 0);
1348
- i0.ɵɵelementStart(2, "input", 1);
1349
- i0.ɵɵlistener("input", function SelectComponent_Conditional_0_Template_input_input_2_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r3 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r3._widget.actions.onInput($event)); })("keydown", function SelectComponent_Conditional_0_Template_input_keydown_2_listener($event) { i0.ɵɵrestoreView(_r1); const ctx_r3 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r3._widget.actions.onInputKeydown($event)); });
1350
- i0.ɵɵelementEnd()();
1351
- i0.ɵɵtemplate(3, SelectComponent_Conditional_0_Conditional_3_Template, 3, 5, "ul", 2);
1352
- } if (rf & 2) {
1353
- let tmp_3_0;
1354
- const state_r3 = ctx;
1355
- const ctx_r3 = i0.ɵɵnextContext();
1356
- i0.ɵɵproperty("auUseMulti", i0.ɵɵpureFunction2(6, _c1$5, ctx_r3.widget.directives.hasFocusDirective, ctx_r3.widget.directives.inputContainerDirective));
1357
- i0.ɵɵadvance();
1358
- i0.ɵɵconditional((tmp_3_0 = state_r3.selectedContexts) ? 1 : -1, tmp_3_0);
1359
- i0.ɵɵadvance();
1360
- i0.ɵɵproperty("value", state_r3.filterText);
1361
- i0.ɵɵattribute("id", state_r3.id)("aria-label", state_r3.ariaLabel);
1385
+ const ctx_r1 = i0.ɵɵnextContext();
1386
+ i0.ɵɵproperty("auUseMulti", i0.ɵɵpureFunction3(1, _c3$5, ctx_r1.directives.hasFocusDirective, ctx_r1.directives.floatingDirective, ctx_r1.directives.menuAttributesDirective));
1362
1387
  i0.ɵɵadvance();
1363
- i0.ɵɵconditional(state_r3.open && state_r3.visibleItems.length ? 3 : -1);
1388
+ i0.ɵɵrepeater(ctx_r1.state.visibleItems());
1364
1389
  } }
1390
+ /**
1391
+ * Directive to provide a custom template for the badge label in a select component.
1392
+ *
1393
+ * @template Item - The type of the item in the select component.
1394
+ *
1395
+ * This directive uses a template reference to render the {@link SelectItemContext<Item>}.
1396
+ */
1365
1397
  class SelectBadgeLabelDirective {
1366
1398
  constructor() {
1367
1399
  this.templateRef = inject((TemplateRef));
@@ -1369,13 +1401,23 @@ class SelectBadgeLabelDirective {
1369
1401
  static ngTemplateContextGuard(_dir, context) {
1370
1402
  return true;
1371
1403
  }
1372
- static { this.ɵfac = function SelectBadgeLabelDirective_Factory(t) { return new (t || SelectBadgeLabelDirective)(); }; }
1404
+ static { this.ɵfac = function SelectBadgeLabelDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SelectBadgeLabelDirective)(); }; }
1373
1405
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: SelectBadgeLabelDirective, selectors: [["ng-template", "auSelectBadgeLabel", ""]], standalone: true }); }
1374
1406
  }
1375
1407
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SelectBadgeLabelDirective, [{
1376
1408
  type: Directive,
1377
1409
  args: [{ selector: 'ng-template[auSelectBadgeLabel]', standalone: true }]
1378
1410
  }], null, null); })();
1411
+ /**
1412
+ * Directive to provide a custom label template for select items.
1413
+ *
1414
+ * This directive allows you to define a custom template for the labels of items
1415
+ * in a select component. The template can be specified using an Angular `TemplateRef`.
1416
+ *
1417
+ * @template Item - The type of the items in the select component.
1418
+ *
1419
+ * This directive uses a template reference to render the {@link SelectItemContext<Item>}.
1420
+ */
1379
1421
  class SelectItemLabelDirective {
1380
1422
  constructor() {
1381
1423
  this.templateRef = inject((TemplateRef));
@@ -1383,16 +1425,36 @@ class SelectItemLabelDirective {
1383
1425
  static ngTemplateContextGuard(_dir, context) {
1384
1426
  return true;
1385
1427
  }
1386
- static { this.ɵfac = function SelectItemLabelDirective_Factory(t) { return new (t || SelectItemLabelDirective)(); }; }
1428
+ static { this.ɵfac = function SelectItemLabelDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SelectItemLabelDirective)(); }; }
1387
1429
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: SelectItemLabelDirective, selectors: [["ng-template", "auSelectItemLabel", ""]], standalone: true }); }
1388
1430
  }
1389
1431
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SelectItemLabelDirective, [{
1390
1432
  type: Directive,
1391
1433
  args: [{ selector: 'ng-template[auSelectItemLabel]', standalone: true }]
1392
1434
  }], null, null); })();
1435
+ /**
1436
+ * A component that represents a customizable select dropdown widget.
1437
+ *
1438
+ * @template Item - The type of items in the select dropdown.
1439
+ */
1393
1440
  class SelectComponent extends BaseWidgetDirective {
1394
1441
  constructor() {
1395
- super(...arguments);
1442
+ super(callWidgetFactory({
1443
+ factory: export_createSelect,
1444
+ widgetName: 'select',
1445
+ events: {
1446
+ onOpenChange: (event) => this.openChange.emit(event),
1447
+ onSelectedChange: (event) => this.selectedChange.emit(event),
1448
+ onFilterTextChange: (event) => this.filterTextChange.emit(event),
1449
+ },
1450
+ afterInit: (widget) => {
1451
+ useDirectiveForHost(widget.directives.referenceDirective);
1452
+ },
1453
+ slotTemplates: () => ({
1454
+ badgeLabel: this.slotSelectBadgeLabelFromContent?.templateRef,
1455
+ itemLabel: this.slotSelectItemLabelFromContent?.templateRef,
1456
+ }),
1457
+ }));
1396
1458
  /**
1397
1459
  * Callback called when the text filter change
1398
1460
  * @param text - Filtered text
@@ -1422,29 +1484,11 @@ class SelectComponent extends BaseWidgetDirective {
1422
1484
  * ```
1423
1485
  */
1424
1486
  this.openChange = new EventEmitter();
1425
- this._widget = callWidgetFactory({
1426
- factory: export_createSelect,
1427
- widgetName: 'select',
1428
- events: {
1429
- onOpenChange: (event) => this.openChange.emit(event),
1430
- onSelectedChange: (event) => this.selectedChange.emit(event),
1431
- onFilterTextChange: (event) => this.filterTextChange.emit(event),
1432
- },
1433
- afterInit: () => {
1434
- useDirectiveForHost(this._widget.directives.referenceDirective);
1435
- },
1436
- });
1437
1487
  }
1438
1488
  itemCtxTrackBy(_, itemContext) {
1439
1489
  return itemContext.id;
1440
1490
  }
1441
- ngAfterContentChecked() {
1442
- this._widget.patchSlots({
1443
- badgeLabel: this.slotSelectBadgeLabelFromContent?.templateRef,
1444
- itemLabel: this.slotSelectItemLabelFromContent?.templateRef,
1445
- });
1446
- }
1447
- static { this.ɵfac = /*@__PURE__*/ (() => { let ɵSelectComponent_BaseFactory; return function SelectComponent_Factory(t) { return (ɵSelectComponent_BaseFactory || (ɵSelectComponent_BaseFactory = i0.ɵɵgetInheritedFactory(SelectComponent)))(t || SelectComponent); }; })(); }
1491
+ static { this.ɵfac = function SelectComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SelectComponent)(); }; }
1448
1492
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SelectComponent, selectors: [["", "auSelect", ""]], contentQueries: function SelectComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
1449
1493
  i0.ɵɵcontentQuery(dirIndex, SelectBadgeLabelDirective, 5);
1450
1494
  i0.ɵɵcontentQuery(dirIndex, SelectItemLabelDirective, 5);
@@ -1453,12 +1497,22 @@ class SelectComponent extends BaseWidgetDirective {
1453
1497
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotSelectBadgeLabelFromContent = _t.first);
1454
1498
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotSelectItemLabelFromContent = _t.first);
1455
1499
  } }, hostVars: 2, hostBindings: function SelectComponent_HostBindings(rf, ctx) { if (rf & 2) {
1456
- i0.ɵɵclassMap("au-select dropdown border border-1 p-1 mb-3 d-block" + ctx.state().className);
1457
- } }, inputs: { ariaLabel: [0, "auAriaLabel", "ariaLabel"], id: [0, "auId", "id"], items: [0, "auItems", "items"], allowedPlacements: [0, "auAllowedPlacements", "allowedPlacements"], open: [2, "auOpen", "open", auBooleanAttribute], filterText: [0, "auFilterText", "filterText"], className: [0, "auClassName", "className"], disabled: [2, "auDisabled", "disabled", auBooleanAttribute], selected: [0, "auSelected", "selected"], loading: [2, "auLoading", "loading", auBooleanAttribute], itemIdFn: [0, "auItemIdFn", "itemIdFn"], menuClassName: [0, "auMenuClassName", "menuClassName"], badgeLabel: [0, "auBadgeLabel", "badgeLabel"], itemLabel: [0, "auItemLabel", "itemLabel"], menuItemClassName: [0, "auMenuItemClassName", "menuItemClassName"], badgeClassName: [0, "auBadgeClassName", "badgeClassName"], navSelector: [0, "auNavSelector", "navSelector"] }, outputs: { filterTextChange: "auFilterTextChange", selectedChange: "auSelectedChange", openChange: "auOpenChange" }, standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c0$5, decls: 1, vars: 1, consts: [[1, "d-flex", "align-items-center", "flex-wrap", "gap-1", 3, "auUseMulti"], ["type", "text", "aria-autocomplete", "list", "autoCorrect", "off", "autoCapitalize", "none", "autoComplete", "off", 1, "au-select-input", "flex-grow-1", "border-0", 3, "input", "keydown", "value"], [1, "dropdown-menu", "show", 3, "auUseMulti"], [3, "auUse"], [3, "auSlot", "auSlotProps"], [1, "dropdown-item", "position-relative", 3, "auUse", "text-bg-primary"], [1, "dropdown-item", "position-relative", 3, "auUse"]], template: function SelectComponent_Template(rf, ctx) { if (rf & 1) {
1458
- i0.ɵɵtemplate(0, SelectComponent_Conditional_0_Template, 4, 9);
1500
+ i0.ɵɵclassMap("au-select dropdown border border-1 p-1 mb-3 d-block" + ctx.state.className());
1501
+ } }, inputs: { ariaLabel: [0, "auAriaLabel", "ariaLabel"], id: [0, "auId", "id"], items: [0, "auItems", "items"], allowedPlacements: [0, "auAllowedPlacements", "allowedPlacements"], open: [2, "auOpen", "open", auBooleanAttribute], filterText: [0, "auFilterText", "filterText"], className: [0, "auClassName", "className"], disabled: [2, "auDisabled", "disabled", auBooleanAttribute], selected: [0, "auSelected", "selected"], loading: [2, "auLoading", "loading", auBooleanAttribute], itemIdFn: [0, "auItemIdFn", "itemIdFn"], menuClassName: [0, "auMenuClassName", "menuClassName"], badgeLabel: [0, "auBadgeLabel", "badgeLabel"], itemLabel: [0, "auItemLabel", "itemLabel"], menuItemClassName: [0, "auMenuItemClassName", "menuItemClassName"], badgeClassName: [0, "auBadgeClassName", "badgeClassName"], navSelector: [0, "auNavSelector", "navSelector"] }, outputs: { filterTextChange: "auFilterTextChange", selectedChange: "auSelectedChange", openChange: "auOpenChange" }, standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c0$5, decls: 4, vars: 8, consts: [[1, "d-flex", "align-items-center", "flex-wrap", "gap-1", 3, "auUseMulti"], [3, "auUse", "value"], [1, "dropdown-menu", "show", 3, "auUseMulti"], [3, "auUse"], [3, "auSlot", "auSlotProps"], [1, "dropdown-item", "position-relative", 3, "auUse", "text-bg-primary"], [1, "dropdown-item", "position-relative", 3, "auUse"]], template: function SelectComponent_Template(rf, ctx) { if (rf & 1) {
1502
+ i0.ɵɵelementStart(0, "div", 0);
1503
+ i0.ɵɵtemplate(1, SelectComponent_Conditional_1_Template, 2, 0);
1504
+ i0.ɵɵelement(2, "input", 1);
1505
+ i0.ɵɵelementEnd();
1506
+ i0.ɵɵtemplate(3, SelectComponent_Conditional_3_Template, 3, 5, "ul", 2);
1459
1507
  } if (rf & 2) {
1460
- let tmp_0_0;
1461
- i0.ɵɵconditional((tmp_0_0 = ctx.state()) ? 0 : -1, tmp_0_0);
1508
+ let tmp_1_0;
1509
+ i0.ɵɵproperty("auUseMulti", i0.ɵɵpureFunction2(5, _c1$5, ctx.directives.hasFocusDirective, ctx.directives.inputContainerDirective));
1510
+ i0.ɵɵadvance();
1511
+ i0.ɵɵconditional((tmp_1_0 = ctx.state.selectedContexts()) ? 1 : -1, tmp_1_0);
1512
+ i0.ɵɵadvance();
1513
+ i0.ɵɵproperty("auUse", ctx.directives.inputDirective)("value", ctx.state.filterText());
1514
+ i0.ɵɵadvance();
1515
+ i0.ɵɵconditional(ctx.state.open() && ctx.state.visibleItems().length ? 3 : -1);
1462
1516
  } }, dependencies: [UseMultiDirective, SlotDirective, UseDirective], encapsulation: 2, changeDetection: 0 }); }
1463
1517
  }
1464
1518
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SelectComponent, [{
@@ -1469,55 +1523,35 @@ class SelectComponent extends BaseWidgetDirective {
1469
1523
  changeDetection: ChangeDetectionStrategy.OnPush,
1470
1524
  selector: '[auSelect]',
1471
1525
  host: {
1472
- '[class]': '"au-select dropdown border border-1 p-1 mb-3 d-block" + state().className',
1526
+ '[class]': '"au-select dropdown border border-1 p-1 mb-3 d-block" + state.className()',
1473
1527
  },
1474
1528
  template: `
1475
- @if (state(); as state) {
1476
- <div
1477
- [auUseMulti]="[widget.directives.hasFocusDirective, widget.directives.inputContainerDirective]"
1478
- class="d-flex align-items-center flex-wrap gap-1"
1479
- >
1480
- @if (state.selectedContexts; as selectedContexts) {
1481
- @for (itemContext of selectedContexts; track itemCtxTrackBy($index, itemContext)) {
1482
- <div [auUse]="[_widget.directives.badgeAttributesDirective, itemContext]">
1483
- <ng-template [auSlot]="state.badgeLabel" [auSlotProps]="{state, widget, itemContext}"></ng-template>
1484
- </div>
1485
- }
1529
+ <div [auUseMulti]="[directives.hasFocusDirective, directives.inputContainerDirective]" class="d-flex align-items-center flex-wrap gap-1">
1530
+ @if (state.selectedContexts(); as selectedContexts) {
1531
+ @for (itemContext of selectedContexts; track itemCtxTrackBy($index, itemContext)) {
1532
+ <div [auUse]="[directives.badgeAttributesDirective, itemContext]">
1533
+ <ng-template [auSlot]="state.badgeLabel()" [auSlotProps]="{state, api, directives, itemContext}"></ng-template>
1534
+ </div>
1486
1535
  }
1487
- <input
1488
- attr.id="{{ state.id }}"
1489
- attr.aria-label="{{ state.ariaLabel }}"
1490
- type="text"
1491
- class="au-select-input flex-grow-1 border-0"
1492
- [value]="state.filterText"
1493
- aria-autocomplete="list"
1494
- autoCorrect="off"
1495
- autoCapitalize="none"
1496
- autoComplete="off"
1497
- (input)="_widget.actions.onInput($event)"
1498
- (keydown)="_widget.actions.onInputKeydown($event)"
1499
- />
1500
- </div>
1501
- @if (state.open && state.visibleItems.length) {
1502
- <ul
1503
- [auUseMulti]="[widget.directives.hasFocusDirective, widget.directives.floatingDirective, widget.directives.menuAttributesDirective]"
1504
- class="dropdown-menu show"
1505
- >
1506
- @for (itemContext of state.visibleItems; track itemCtxTrackBy($index, itemContext)) {
1507
- <li
1508
- class="dropdown-item position-relative"
1509
- [auUse]="[_widget.directives.itemAttributesDirective, itemContext]"
1510
- [class.text-bg-primary]="itemContext === state.highlighted"
1511
- >
1512
- <ng-template [auSlot]="state.itemLabel" [auSlotProps]="{state, widget, itemContext}"></ng-template>
1513
- </li>
1514
- }
1515
- </ul>
1516
1536
  }
1537
+ <input [auUse]="directives.inputDirective" [value]="state.filterText()" />
1538
+ </div>
1539
+ @if (state.open() && state.visibleItems().length) {
1540
+ <ul [auUseMulti]="[directives.hasFocusDirective, directives.floatingDirective, directives.menuAttributesDirective]" class="dropdown-menu show">
1541
+ @for (itemContext of state.visibleItems(); track itemCtxTrackBy($index, itemContext)) {
1542
+ <li
1543
+ class="dropdown-item position-relative"
1544
+ [auUse]="[directives.itemAttributesDirective, itemContext]"
1545
+ [class.text-bg-primary]="itemContext === state.highlighted()"
1546
+ >
1547
+ <ng-template [auSlot]="state.itemLabel()" [auSlotProps]="{state, api, directives, itemContext}"></ng-template>
1548
+ </li>
1549
+ }
1550
+ </ul>
1517
1551
  }
1518
1552
  `,
1519
1553
  }]
1520
- }], null, { ariaLabel: [{
1554
+ }], () => [], { ariaLabel: [{
1521
1555
  type: Input,
1522
1556
  args: ['auAriaLabel']
1523
1557
  }], id: [{
@@ -1584,7 +1618,7 @@ class SelectComponent extends BaseWidgetDirective {
1584
1618
  type: Input,
1585
1619
  args: ['auNavSelector']
1586
1620
  }] }); })();
1587
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SelectComponent, { className: "SelectComponent", filePath: "components/select/select.component.ts", lineNumber: 87 }); })();
1621
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SelectComponent, { className: "SelectComponent", filePath: "components/select/select.component.ts", lineNumber: 88 }); })();
1588
1622
 
1589
1623
  /**
1590
1624
  * Retrieve a shallow copy of the default Alert config
@@ -1599,16 +1633,16 @@ const export_getAlertDefaultConfig = getAlertDefaultConfig;
1599
1633
  const export_createAlert = createAlert;
1600
1634
 
1601
1635
  const _c0$4 = ["structure"];
1602
- const _c1$4 = (a0, a1) => ({ state: a0, widget: a1 });
1636
+ const _c1$4 = (a0, a1, a2) => ({ state: a0, api: a1, directives: a2 });
1603
1637
  function AlertDefaultSlotsComponent_ng_template_0_ng_template_1_Template(rf, ctx) { }
1604
1638
  function AlertDefaultSlotsComponent_ng_template_0_Conditional_2_Template(rf, ctx) { if (rf & 1) {
1605
1639
  const _r1 = i0.ɵɵgetCurrentView();
1606
1640
  i0.ɵɵelementStart(0, "button", 5);
1607
- i0.ɵɵlistener("click", function AlertDefaultSlotsComponent_ng_template_0_Conditional_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r1); const widget_r2 = i0.ɵɵnextContext().widget; return i0.ɵɵresetView(widget_r2.api.close()); });
1641
+ i0.ɵɵlistener("click", function AlertDefaultSlotsComponent_ng_template_0_Conditional_2_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r1); const api_r2 = i0.ɵɵnextContext().api; return i0.ɵɵresetView(api_r2.close()); });
1608
1642
  i0.ɵɵelementEnd();
1609
1643
  } if (rf & 2) {
1610
1644
  const state_r3 = i0.ɵɵnextContext().state;
1611
- i0.ɵɵattribute("aria-label", state_r3.ariaCloseButtonLabel);
1645
+ i0.ɵɵattribute("aria-label", state_r3.ariaCloseButtonLabel());
1612
1646
  } }
1613
1647
  function AlertDefaultSlotsComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
1614
1648
  i0.ɵɵelementStart(0, "div", 2);
@@ -1617,51 +1651,63 @@ function AlertDefaultSlotsComponent_ng_template_0_Template(rf, ctx) { if (rf & 1
1617
1651
  i0.ɵɵtemplate(2, AlertDefaultSlotsComponent_ng_template_0_Conditional_2_Template, 1, 1, "button", 4);
1618
1652
  } if (rf & 2) {
1619
1653
  const state_r3 = ctx.state;
1620
- const widget_r2 = ctx.widget;
1654
+ const api_r2 = ctx.api;
1655
+ const directives_r4 = ctx.directives;
1621
1656
  i0.ɵɵadvance();
1622
- i0.ɵɵproperty("auSlot", state_r3.children)("auSlotProps", i0.ɵɵpureFunction2(3, _c1$4, state_r3, widget_r2));
1657
+ i0.ɵɵproperty("auSlot", state_r3.children())("auSlotProps", i0.ɵɵpureFunction3(3, _c1$4, state_r3, api_r2, directives_r4));
1623
1658
  i0.ɵɵadvance();
1624
- i0.ɵɵconditional(state_r3.dismissible ? 2 : -1);
1659
+ i0.ɵɵconditional(state_r3.dismissible() ? 2 : -1);
1625
1660
  } }
1626
- const _c2$4 = ["auAlert", ""];
1627
- const _c3$4 = ["*"];
1661
+ const _c2$4 = ["content"];
1662
+ const _c3$4 = ["auAlert", ""];
1663
+ const _c4$4 = ["*"];
1628
1664
  function AlertComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
1629
1665
  i0.ɵɵprojection(0);
1630
1666
  } }
1631
- function AlertComponent_Conditional_1_ng_template_1_Template(rf, ctx) { }
1632
- function AlertComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
1667
+ function AlertComponent_Conditional_2_ng_template_1_Template(rf, ctx) { }
1668
+ function AlertComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
1633
1669
  i0.ɵɵelementStart(0, "div", 2);
1634
- i0.ɵɵtemplate(1, AlertComponent_Conditional_1_ng_template_1_Template, 0, 0, "ng-template", 3);
1670
+ i0.ɵɵtemplate(1, AlertComponent_Conditional_2_ng_template_1_Template, 0, 0, "ng-template", 3);
1635
1671
  i0.ɵɵelementEnd();
1636
1672
  } if (rf & 2) {
1637
1673
  const ctx_r0 = i0.ɵɵnextContext();
1638
- i0.ɵɵclassMapInterpolate3("au-alert alert alert-", ctx_r0.state().type, " ", ctx_r0.state().className, " ", ctx_r0.state().dismissible ? "alert-dismissible" : "", "");
1639
- i0.ɵɵproperty("auUse", ctx_r0.widget.directives.transitionDirective);
1674
+ i0.ɵɵclassMapInterpolate3("au-alert alert alert-", ctx_r0.state.type(), " ", ctx_r0.state.className(), " ", ctx_r0.state.dismissible() ? "alert-dismissible" : "", "");
1675
+ i0.ɵɵproperty("auUse", ctx_r0.directives.transitionDirective);
1640
1676
  i0.ɵɵadvance();
1641
- i0.ɵɵproperty("auSlot", ctx_r0.state().structure)("auSlotProps", i0.ɵɵpureFunction2(8, _c1$4, ctx_r0.state(), ctx_r0.widget));
1677
+ i0.ɵɵproperty("auSlot", ctx_r0.state.structure())("auSlotProps", i0.ɵɵpureFunction3(8, _c1$4, ctx_r0.state, ctx_r0.api, ctx_r0.directives));
1642
1678
  } }
1679
+ /**
1680
+ * Directive to be used as a structural directive for the body of an alert component.
1681
+ *
1682
+ * This directive allows the use of a template reference for the alert body content, with type {@link AlertContext}.
1683
+ */
1643
1684
  class AlertBodyDirective {
1644
1685
  constructor() {
1645
1686
  this.templateRef = inject((TemplateRef));
1646
1687
  }
1647
- static ngTemplateContextGuard(dir, context) {
1688
+ static ngTemplateContextGuard(_dir, context) {
1648
1689
  return true;
1649
1690
  }
1650
- static { this.ɵfac = function AlertBodyDirective_Factory(t) { return new (t || AlertBodyDirective)(); }; }
1691
+ static { this.ɵfac = function AlertBodyDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || AlertBodyDirective)(); }; }
1651
1692
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: AlertBodyDirective, selectors: [["ng-template", "auAlertBody", ""]], standalone: true }); }
1652
1693
  }
1653
1694
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AlertBodyDirective, [{
1654
1695
  type: Directive,
1655
1696
  args: [{ selector: 'ng-template[auAlertBody]', standalone: true }]
1656
1697
  }], null, null); })();
1698
+ /**
1699
+ * Directive to define the structure of an alert component.
1700
+ *
1701
+ * This directive uses a `TemplateRef` to inject the template reference of the {@link AlertContext}.
1702
+ */
1657
1703
  class AlertStructureDirective {
1658
1704
  constructor() {
1659
1705
  this.templateRef = inject((TemplateRef));
1660
1706
  }
1661
- static ngTemplateContextGuard(dir, context) {
1707
+ static ngTemplateContextGuard(_dir, context) {
1662
1708
  return true;
1663
1709
  }
1664
- static { this.ɵfac = function AlertStructureDirective_Factory(t) { return new (t || AlertStructureDirective)(); }; }
1710
+ static { this.ɵfac = function AlertStructureDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || AlertStructureDirective)(); }; }
1665
1711
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: AlertStructureDirective, selectors: [["ng-template", "auAlertStructure", ""]], standalone: true }); }
1666
1712
  }
1667
1713
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AlertStructureDirective, [{
@@ -1669,14 +1715,14 @@ class AlertStructureDirective {
1669
1715
  args: [{ selector: 'ng-template[auAlertStructure]', standalone: true }]
1670
1716
  }], null, null); })();
1671
1717
  class AlertDefaultSlotsComponent {
1672
- static { this.ɵfac = function AlertDefaultSlotsComponent_Factory(t) { return new (t || AlertDefaultSlotsComponent)(); }; }
1718
+ static { this.ɵfac = function AlertDefaultSlotsComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || AlertDefaultSlotsComponent)(); }; }
1673
1719
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AlertDefaultSlotsComponent, selectors: [["ng-component"]], viewQuery: function AlertDefaultSlotsComponent_Query(rf, ctx) { if (rf & 1) {
1674
1720
  i0.ɵɵviewQuery(_c0$4, 7);
1675
1721
  } if (rf & 2) {
1676
1722
  let _t;
1677
1723
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.structure = _t.first);
1678
1724
  } }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 2, vars: 0, consts: [["structure", ""], ["auAlertStructure", ""], [1, "alert-body"], [3, "auSlot", "auSlotProps"], ["type", "button", 1, "btn-close"], ["type", "button", 1, "btn-close", 3, "click"]], template: function AlertDefaultSlotsComponent_Template(rf, ctx) { if (rf & 1) {
1679
- i0.ɵɵtemplate(0, AlertDefaultSlotsComponent_ng_template_0_Template, 3, 6, "ng-template", 1, 0, i0.ɵɵtemplateRefExtractor);
1725
+ i0.ɵɵtemplate(0, AlertDefaultSlotsComponent_ng_template_0_Template, 3, 7, "ng-template", 1, 0, i0.ɵɵtemplateRefExtractor);
1680
1726
  } }, dependencies: [SlotDirective, AlertStructureDirective], encapsulation: 2, changeDetection: 0 }); }
1681
1727
  }
1682
1728
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AlertDefaultSlotsComponent, [{
@@ -1685,12 +1731,12 @@ class AlertDefaultSlotsComponent {
1685
1731
  standalone: true,
1686
1732
  changeDetection: ChangeDetectionStrategy.OnPush,
1687
1733
  imports: [SlotDirective, AlertStructureDirective],
1688
- template: ` <ng-template auAlertStructure #structure let-state="state" let-widget="widget">
1734
+ template: ` <ng-template auAlertStructure #structure let-state="state" let-api="api" let-directives="directives">
1689
1735
  <div class="alert-body">
1690
- <ng-template [auSlot]="state.children" [auSlotProps]="{state, widget}"></ng-template>
1736
+ <ng-template [auSlot]="state.children()" [auSlotProps]="{state, api, directives}"></ng-template>
1691
1737
  </div>
1692
- @if (state.dismissible) {
1693
- <button type="button" class="btn-close" (click)="widget.api.close()" [attr.aria-label]="state.ariaCloseButtonLabel"></button>
1738
+ @if (state.dismissible()) {
1739
+ <button type="button" class="btn-close" (click)="api.close()" [attr.aria-label]="state.ariaCloseButtonLabel()"></button>
1694
1740
  }
1695
1741
  </ng-template>`,
1696
1742
  }]
@@ -1698,14 +1744,38 @@ class AlertDefaultSlotsComponent {
1698
1744
  type: ViewChild,
1699
1745
  args: ['structure', { static: true }]
1700
1746
  }] }); })();
1701
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AlertDefaultSlotsComponent, { className: "AlertDefaultSlotsComponent", filePath: "components/alert/alert.component.ts", lineNumber: 57 }); })();
1747
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AlertDefaultSlotsComponent, { className: "AlertDefaultSlotsComponent", filePath: "components/alert/alert.component.ts", lineNumber: 59 }); })();
1748
+ /**
1749
+ * Represents the default slot structure for the alert component.
1750
+ */
1702
1751
  const alertDefaultSlotStructure = new ComponentTemplate(AlertDefaultSlotsComponent, 'structure');
1703
- const defaultConfig$4 = {
1704
- structure: alertDefaultSlotStructure,
1705
- };
1752
+ /**
1753
+ * AlertComponent is a UI component that extends BaseWidgetDirective to provide
1754
+ * an alert box with various customizable properties and behaviors.
1755
+ *
1756
+ * @remarks
1757
+ * This component is designed to be used with Bootstrap styles and supports
1758
+ * various Bootstrap contextual classes for different alert types.
1759
+ */
1706
1760
  class AlertComponent extends BaseWidgetDirective {
1707
1761
  constructor() {
1708
- super(...arguments);
1762
+ super(callWidgetFactory({
1763
+ factory: export_createAlert,
1764
+ widgetName: 'alert',
1765
+ defaultConfig: {
1766
+ structure: alertDefaultSlotStructure,
1767
+ },
1768
+ events: {
1769
+ onVisibleChange: (event) => this.visibleChange.emit(event),
1770
+ onShown: () => this.shown.emit(),
1771
+ onHidden: () => this.hidden.emit(),
1772
+ },
1773
+ slotTemplates: () => ({
1774
+ children: this.slotDefaultFromContent?.templateRef,
1775
+ structure: this.slotStructureFromContent?.templateRef,
1776
+ }),
1777
+ slotChildren: () => this.slotChildren,
1778
+ }));
1709
1779
  /**
1710
1780
  * Callback called when the alert visibility changed.
1711
1781
  *
@@ -1733,25 +1803,8 @@ class AlertComponent extends BaseWidgetDirective {
1733
1803
  * ```
1734
1804
  */
1735
1805
  this.shown = new EventEmitter();
1736
- this.defaultSlots = writable(defaultConfig$4);
1737
- this._widget = callWidgetFactory({
1738
- factory: export_createAlert,
1739
- widgetName: 'alert',
1740
- defaultConfig: this.defaultSlots,
1741
- events: {
1742
- onVisibleChange: (event) => this.visibleChange.emit(event),
1743
- onShown: () => this.shown.emit(),
1744
- onHidden: () => this.hidden.emit(),
1745
- },
1746
- });
1747
1806
  }
1748
- ngAfterContentChecked() {
1749
- this._widget.patchSlots({
1750
- children: this.slotDefaultFromContent?.templateRef,
1751
- structure: this.slotStructureFromContent?.templateRef,
1752
- });
1753
- }
1754
- static { this.ɵfac = /*@__PURE__*/ (() => { let ɵAlertComponent_BaseFactory; return function AlertComponent_Factory(t) { return (ɵAlertComponent_BaseFactory || (ɵAlertComponent_BaseFactory = i0.ɵɵgetInheritedFactory(AlertComponent)))(t || AlertComponent); }; })(); }
1807
+ static { this.ɵfac = function AlertComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || AlertComponent)(); }; }
1755
1808
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AlertComponent, selectors: [["", "auAlert", ""]], contentQueries: function AlertComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
1756
1809
  i0.ɵɵcontentQuery(dirIndex, AlertBodyDirective, 5);
1757
1810
  i0.ɵɵcontentQuery(dirIndex, AlertStructureDirective, 5);
@@ -1759,14 +1812,18 @@ class AlertComponent extends BaseWidgetDirective {
1759
1812
  let _t;
1760
1813
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotDefaultFromContent = _t.first);
1761
1814
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotStructureFromContent = _t.first);
1762
- } }, inputs: { type: [0, "auType", "type"], dismissible: [2, "auDismissible", "dismissible", auBooleanAttribute], transition: [0, "auTransition", "transition"], visible: [2, "auVisible", "visible", auBooleanAttribute], animatedOnInit: [2, "auAnimatedOnInit", "animatedOnInit", auBooleanAttribute], animated: [2, "auAnimated", "animated", auBooleanAttribute], ariaCloseButtonLabel: [0, "auAriaCloseButtonLabel", "ariaCloseButtonLabel"], children: [0, "auChildren", "children"], structure: [0, "auStructure", "structure"], className: [0, "auClassName", "className"] }, outputs: { visibleChange: "auVisibleChange", hidden: "auHidden", shown: "auShown" }, standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c2$4, ngContentSelectors: _c3$4, decls: 2, vars: 2, consts: [[3, "auContentAsSlot"], ["role", "alert", 3, "auUse", "class"], ["role", "alert", 3, "auUse"], [3, "auSlot", "auSlotProps"]], template: function AlertComponent_Template(rf, ctx) { if (rf & 1) {
1815
+ } }, viewQuery: function AlertComponent_Query(rf, ctx) { if (rf & 1) {
1816
+ i0.ɵɵviewQuery(_c2$4, 7);
1817
+ } if (rf & 2) {
1818
+ let _t;
1819
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotChildren = _t.first);
1820
+ } }, inputs: { type: [0, "auType", "type"], dismissible: [2, "auDismissible", "dismissible", auBooleanAttribute], transition: [0, "auTransition", "transition"], visible: [2, "auVisible", "visible", auBooleanAttribute], animatedOnInit: [2, "auAnimatedOnInit", "animatedOnInit", auBooleanAttribute], animated: [2, "auAnimated", "animated", auBooleanAttribute], ariaCloseButtonLabel: [0, "auAriaCloseButtonLabel", "ariaCloseButtonLabel"], children: [0, "auChildren", "children"], structure: [0, "auStructure", "structure"], className: [0, "auClassName", "className"] }, outputs: { visibleChange: "auVisibleChange", hidden: "auHidden", shown: "auShown" }, standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c3$4, ngContentSelectors: _c4$4, decls: 3, vars: 1, consts: [["content", ""], ["role", "alert", 3, "auUse", "class"], ["role", "alert", 3, "auUse"], [3, "auSlot", "auSlotProps"]], template: function AlertComponent_Template(rf, ctx) { if (rf & 1) {
1763
1821
  i0.ɵɵprojectionDef();
1764
- i0.ɵɵtemplate(0, AlertComponent_ng_template_0_Template, 1, 0, "ng-template", 0)(1, AlertComponent_Conditional_1_Template, 2, 11, "div", 1);
1822
+ i0.ɵɵtemplate(0, AlertComponent_ng_template_0_Template, 1, 0, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor)(2, AlertComponent_Conditional_2_Template, 2, 12, "div", 1);
1765
1823
  } if (rf & 2) {
1766
- i0.ɵɵproperty("auContentAsSlot", ctx.defaultSlots);
1767
- i0.ɵɵadvance();
1768
- i0.ɵɵconditional(!ctx.state().hidden ? 1 : -1);
1769
- } }, dependencies: [SlotDirective, UseDirective, ContentAsSlotDirective], encapsulation: 2, changeDetection: 0 }); }
1824
+ i0.ɵɵadvance(2);
1825
+ i0.ɵɵconditional(!ctx.state.hidden() ? 2 : -1);
1826
+ } }, dependencies: [SlotDirective, UseDirective], encapsulation: 2, changeDetection: 0 }); }
1770
1827
  }
1771
1828
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AlertComponent, [{
1772
1829
  type: Component,
@@ -1774,22 +1831,22 @@ class AlertComponent extends BaseWidgetDirective {
1774
1831
  selector: '[auAlert]',
1775
1832
  standalone: true,
1776
1833
  changeDetection: ChangeDetectionStrategy.OnPush,
1777
- imports: [SlotDirective, UseDirective, ContentAsSlotDirective],
1778
- template: ` <ng-template [auContentAsSlot]="defaultSlots">
1834
+ imports: [SlotDirective, UseDirective],
1835
+ template: ` <ng-template #content>
1779
1836
  <ng-content></ng-content>
1780
1837
  </ng-template>
1781
1838
 
1782
- @if (!state().hidden) {
1839
+ @if (!state.hidden()) {
1783
1840
  <div
1784
- [auUse]="widget.directives.transitionDirective"
1785
- class="au-alert alert alert-{{ state().type }} {{ state().className }} {{ state().dismissible ? 'alert-dismissible' : '' }}"
1841
+ [auUse]="directives.transitionDirective"
1842
+ class="au-alert alert alert-{{ state.type() }} {{ state.className() }} {{ state.dismissible() ? 'alert-dismissible' : '' }}"
1786
1843
  role="alert"
1787
1844
  >
1788
- <ng-template [auSlot]="state().structure" [auSlotProps]="{state: state(), widget}"></ng-template>
1845
+ <ng-template [auSlot]="state.structure()" [auSlotProps]="{state, api, directives}"></ng-template>
1789
1846
  </div>
1790
1847
  }`,
1791
1848
  }]
1792
- }], null, { type: [{
1849
+ }], () => [], { type: [{
1793
1850
  type: Input,
1794
1851
  args: ['auType']
1795
1852
  }], dismissible: [{
@@ -1834,8 +1891,11 @@ class AlertComponent extends BaseWidgetDirective {
1834
1891
  }], className: [{
1835
1892
  type: Input,
1836
1893
  args: ['auClassName']
1894
+ }], slotChildren: [{
1895
+ type: ViewChild,
1896
+ args: ['content', { static: true }]
1837
1897
  }] }); })();
1838
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AlertComponent, { className: "AlertComponent", filePath: "components/alert/alert.component.ts", lineNumber: 87 }); })();
1898
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AlertComponent, { className: "AlertComponent", filePath: "components/alert/alert.component.ts", lineNumber: 95 }); })();
1839
1899
 
1840
1900
  /**
1841
1901
  * Retrieve a shallow copy of the default accordion config
@@ -1866,51 +1926,51 @@ const export_createAccordion = createAccordion;
1866
1926
  const export_factoryCreateAccordion = factoryCreateAccordion;
1867
1927
 
1868
1928
  const _c0$3 = ["structure"];
1869
- const _c1$3 = (a0, a1) => ({ state: a0, widget: a1 });
1929
+ const _c1$3 = (a0, a1, a2) => ({ state: a0, directives: a1, api: a2 });
1870
1930
  function AccordionItemDefaultSlotsComponent_ng_template_0_Case_0_Template(rf, ctx) { if (rf & 1) {
1871
- i0.ɵɵelementContainer(0, 8);
1931
+ i0.ɵɵelementContainer(0, 9);
1872
1932
  } if (rf & 2) {
1873
1933
  i0.ɵɵnextContext();
1874
1934
  const h1_r1 = i0.ɵɵreference(8);
1875
1935
  i0.ɵɵproperty("ngTemplateOutlet", h1_r1);
1876
1936
  } }
1877
1937
  function AccordionItemDefaultSlotsComponent_ng_template_0_Case_1_Template(rf, ctx) { if (rf & 1) {
1878
- i0.ɵɵelementContainer(0, 8);
1938
+ i0.ɵɵelementContainer(0, 9);
1879
1939
  } if (rf & 2) {
1880
1940
  i0.ɵɵnextContext();
1881
1941
  const h2_r2 = i0.ɵɵreference(10);
1882
1942
  i0.ɵɵproperty("ngTemplateOutlet", h2_r2);
1883
1943
  } }
1884
1944
  function AccordionItemDefaultSlotsComponent_ng_template_0_Case_2_Template(rf, ctx) { if (rf & 1) {
1885
- i0.ɵɵelementContainer(0, 8);
1945
+ i0.ɵɵelementContainer(0, 9);
1886
1946
  } if (rf & 2) {
1887
1947
  i0.ɵɵnextContext();
1888
1948
  const h3_r3 = i0.ɵɵreference(12);
1889
1949
  i0.ɵɵproperty("ngTemplateOutlet", h3_r3);
1890
1950
  } }
1891
1951
  function AccordionItemDefaultSlotsComponent_ng_template_0_Case_3_Template(rf, ctx) { if (rf & 1) {
1892
- i0.ɵɵelementContainer(0, 8);
1952
+ i0.ɵɵelementContainer(0, 9);
1893
1953
  } if (rf & 2) {
1894
1954
  i0.ɵɵnextContext();
1895
1955
  const h4_r4 = i0.ɵɵreference(14);
1896
1956
  i0.ɵɵproperty("ngTemplateOutlet", h4_r4);
1897
1957
  } }
1898
1958
  function AccordionItemDefaultSlotsComponent_ng_template_0_Case_4_Template(rf, ctx) { if (rf & 1) {
1899
- i0.ɵɵelementContainer(0, 8);
1959
+ i0.ɵɵelementContainer(0, 9);
1900
1960
  } if (rf & 2) {
1901
1961
  i0.ɵɵnextContext();
1902
1962
  const h5_r5 = i0.ɵɵreference(16);
1903
1963
  i0.ɵɵproperty("ngTemplateOutlet", h5_r5);
1904
1964
  } }
1905
1965
  function AccordionItemDefaultSlotsComponent_ng_template_0_Case_5_Template(rf, ctx) { if (rf & 1) {
1906
- i0.ɵɵelementContainer(0, 8);
1966
+ i0.ɵɵelementContainer(0, 9);
1907
1967
  } if (rf & 2) {
1908
1968
  i0.ɵɵnextContext();
1909
1969
  const h6_r6 = i0.ɵɵreference(18);
1910
1970
  i0.ɵɵproperty("ngTemplateOutlet", h6_r6);
1911
1971
  } }
1912
1972
  function AccordionItemDefaultSlotsComponent_ng_template_0_Case_6_Template(rf, ctx) { if (rf & 1) {
1913
- i0.ɵɵelementContainer(0, 8);
1973
+ i0.ɵɵelementContainer(0, 9);
1914
1974
  } if (rf & 2) {
1915
1975
  i0.ɵɵnextContext();
1916
1976
  const h2_r2 = i0.ɵɵreference(10);
@@ -1918,155 +1978,175 @@ function AccordionItemDefaultSlotsComponent_ng_template_0_Case_6_Template(rf, ct
1918
1978
  } }
1919
1979
  function AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_7_ng_template_1_Template(rf, ctx) { }
1920
1980
  function AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_7_Template(rf, ctx) { if (rf & 1) {
1921
- i0.ɵɵelementStart(0, "h1", 10);
1922
- i0.ɵɵtemplate(1, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_7_ng_template_1_Template, 0, 0, "ng-template", 8);
1981
+ i0.ɵɵelementStart(0, "h1", 11);
1982
+ i0.ɵɵtemplate(1, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_7_ng_template_1_Template, 0, 0, "ng-template", 9);
1923
1983
  i0.ɵɵelementEnd();
1924
1984
  } if (rf & 2) {
1925
- const widget_r7 = i0.ɵɵnextContext().widget;
1985
+ const directives_r7 = i0.ɵɵnextContext().directives;
1926
1986
  const button_r8 = i0.ɵɵreference(20);
1927
- i0.ɵɵproperty("auUse", widget_r7.directives.headerDirective);
1987
+ i0.ɵɵproperty("auUse", directives_r7.headerDirective);
1928
1988
  i0.ɵɵadvance();
1929
1989
  i0.ɵɵproperty("ngTemplateOutlet", button_r8);
1930
1990
  } }
1931
1991
  function AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_9_ng_template_1_Template(rf, ctx) { }
1932
1992
  function AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_9_Template(rf, ctx) { if (rf & 1) {
1933
- i0.ɵɵelementStart(0, "h2", 10);
1934
- i0.ɵɵtemplate(1, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_9_ng_template_1_Template, 0, 0, "ng-template", 8);
1993
+ i0.ɵɵelementStart(0, "h2", 11);
1994
+ i0.ɵɵtemplate(1, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_9_ng_template_1_Template, 0, 0, "ng-template", 9);
1935
1995
  i0.ɵɵelementEnd();
1936
1996
  } if (rf & 2) {
1937
- const widget_r7 = i0.ɵɵnextContext().widget;
1997
+ const directives_r7 = i0.ɵɵnextContext().directives;
1938
1998
  const button_r8 = i0.ɵɵreference(20);
1939
- i0.ɵɵproperty("auUse", widget_r7.directives.headerDirective);
1999
+ i0.ɵɵproperty("auUse", directives_r7.headerDirective);
1940
2000
  i0.ɵɵadvance();
1941
2001
  i0.ɵɵproperty("ngTemplateOutlet", button_r8);
1942
2002
  } }
1943
2003
  function AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_11_ng_template_1_Template(rf, ctx) { }
1944
2004
  function AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_11_Template(rf, ctx) { if (rf & 1) {
1945
- i0.ɵɵelementStart(0, "h3", 10);
1946
- i0.ɵɵtemplate(1, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_11_ng_template_1_Template, 0, 0, "ng-template", 8);
2005
+ i0.ɵɵelementStart(0, "h3", 11);
2006
+ i0.ɵɵtemplate(1, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_11_ng_template_1_Template, 0, 0, "ng-template", 9);
1947
2007
  i0.ɵɵelementEnd();
1948
2008
  } if (rf & 2) {
1949
- const widget_r7 = i0.ɵɵnextContext().widget;
2009
+ const directives_r7 = i0.ɵɵnextContext().directives;
1950
2010
  const button_r8 = i0.ɵɵreference(20);
1951
- i0.ɵɵproperty("auUse", widget_r7.directives.headerDirective);
2011
+ i0.ɵɵproperty("auUse", directives_r7.headerDirective);
1952
2012
  i0.ɵɵadvance();
1953
2013
  i0.ɵɵproperty("ngTemplateOutlet", button_r8);
1954
2014
  } }
1955
2015
  function AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_13_ng_template_1_Template(rf, ctx) { }
1956
2016
  function AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_13_Template(rf, ctx) { if (rf & 1) {
1957
- i0.ɵɵelementStart(0, "h4", 10);
1958
- i0.ɵɵtemplate(1, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_13_ng_template_1_Template, 0, 0, "ng-template", 8);
2017
+ i0.ɵɵelementStart(0, "h4", 11);
2018
+ i0.ɵɵtemplate(1, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_13_ng_template_1_Template, 0, 0, "ng-template", 9);
1959
2019
  i0.ɵɵelementEnd();
1960
2020
  } if (rf & 2) {
1961
- const widget_r7 = i0.ɵɵnextContext().widget;
2021
+ const directives_r7 = i0.ɵɵnextContext().directives;
1962
2022
  const button_r8 = i0.ɵɵreference(20);
1963
- i0.ɵɵproperty("auUse", widget_r7.directives.headerDirective);
2023
+ i0.ɵɵproperty("auUse", directives_r7.headerDirective);
1964
2024
  i0.ɵɵadvance();
1965
2025
  i0.ɵɵproperty("ngTemplateOutlet", button_r8);
1966
2026
  } }
1967
2027
  function AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_15_ng_template_1_Template(rf, ctx) { }
1968
2028
  function AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_15_Template(rf, ctx) { if (rf & 1) {
1969
- i0.ɵɵelementStart(0, "h5", 10);
1970
- i0.ɵɵtemplate(1, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_15_ng_template_1_Template, 0, 0, "ng-template", 8);
2029
+ i0.ɵɵelementStart(0, "h5", 11);
2030
+ i0.ɵɵtemplate(1, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_15_ng_template_1_Template, 0, 0, "ng-template", 9);
1971
2031
  i0.ɵɵelementEnd();
1972
2032
  } if (rf & 2) {
1973
- const widget_r7 = i0.ɵɵnextContext().widget;
2033
+ const directives_r7 = i0.ɵɵnextContext().directives;
1974
2034
  const button_r8 = i0.ɵɵreference(20);
1975
- i0.ɵɵproperty("auUse", widget_r7.directives.headerDirective);
2035
+ i0.ɵɵproperty("auUse", directives_r7.headerDirective);
1976
2036
  i0.ɵɵadvance();
1977
2037
  i0.ɵɵproperty("ngTemplateOutlet", button_r8);
1978
2038
  } }
1979
2039
  function AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_17_ng_template_1_Template(rf, ctx) { }
1980
2040
  function AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_17_Template(rf, ctx) { if (rf & 1) {
1981
- i0.ɵɵelementStart(0, "h6", 10);
1982
- i0.ɵɵtemplate(1, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_17_ng_template_1_Template, 0, 0, "ng-template", 8);
2041
+ i0.ɵɵelementStart(0, "h6", 11);
2042
+ i0.ɵɵtemplate(1, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_17_ng_template_1_Template, 0, 0, "ng-template", 9);
1983
2043
  i0.ɵɵelementEnd();
1984
2044
  } if (rf & 2) {
1985
- const widget_r7 = i0.ɵɵnextContext().widget;
2045
+ const directives_r7 = i0.ɵɵnextContext().directives;
1986
2046
  const button_r8 = i0.ɵɵreference(20);
1987
- i0.ɵɵproperty("auUse", widget_r7.directives.headerDirective);
2047
+ i0.ɵɵproperty("auUse", directives_r7.headerDirective);
1988
2048
  i0.ɵɵadvance();
1989
2049
  i0.ɵɵproperty("ngTemplateOutlet", button_r8);
1990
2050
  } }
1991
2051
  function AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_19_ng_template_1_Template(rf, ctx) { }
1992
2052
  function AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_19_Template(rf, ctx) { if (rf & 1) {
1993
- i0.ɵɵelementStart(0, "button", 11);
1994
- i0.ɵɵtemplate(1, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_19_ng_template_1_Template, 0, 0, "ng-template", 12);
2053
+ i0.ɵɵelementStart(0, "button", 12);
2054
+ i0.ɵɵtemplate(1, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_19_ng_template_1_Template, 0, 0, "ng-template", 13);
1995
2055
  i0.ɵɵelementEnd();
1996
2056
  } if (rf & 2) {
1997
2057
  const ctx_r8 = i0.ɵɵnextContext();
1998
2058
  const state_r10 = ctx_r8.state;
1999
- const widget_r7 = ctx_r8.widget;
2000
- i0.ɵɵproperty("auUse", widget_r7.directives.buttonDirective);
2059
+ const api_r11 = ctx_r8.api;
2060
+ const directives_r7 = ctx_r8.directives;
2061
+ i0.ɵɵproperty("auUse", directives_r7.buttonDirective);
2001
2062
  i0.ɵɵadvance();
2002
- i0.ɵɵproperty("auSlotProps", i0.ɵɵpureFunction2(3, _c1$3, state_r10, widget_r7))("auSlot", state_r10.header);
2063
+ i0.ɵɵproperty("auSlotProps", i0.ɵɵpureFunction3(3, _c1$3, state_r10, directives_r7, api_r11))("auSlot", state_r10.header());
2003
2064
  } }
2004
2065
  function AccordionItemDefaultSlotsComponent_ng_template_0_Conditional_21_ng_template_2_Template(rf, ctx) { }
2005
2066
  function AccordionItemDefaultSlotsComponent_ng_template_0_Conditional_21_Template(rf, ctx) { if (rf & 1) {
2006
- i0.ɵɵelementStart(0, "div", 9)(1, "div", 13);
2007
- i0.ɵɵtemplate(2, AccordionItemDefaultSlotsComponent_ng_template_0_Conditional_21_ng_template_2_Template, 0, 0, "ng-template", 12);
2067
+ i0.ɵɵelementStart(0, "div", 10)(1, "div", 14);
2068
+ i0.ɵɵtemplate(2, AccordionItemDefaultSlotsComponent_ng_template_0_Conditional_21_ng_template_2_Template, 0, 0, "ng-template", 13);
2008
2069
  i0.ɵɵelementEnd()();
2009
2070
  } if (rf & 2) {
2010
2071
  const ctx_r8 = i0.ɵɵnextContext();
2011
2072
  const state_r10 = ctx_r8.state;
2012
- const widget_r7 = ctx_r8.widget;
2013
- i0.ɵɵproperty("auUse", widget_r7.directives.bodyContainerDirective);
2073
+ const api_r11 = ctx_r8.api;
2074
+ const directives_r7 = ctx_r8.directives;
2075
+ i0.ɵɵproperty("auUse", directives_r7.bodyContainerDirective);
2014
2076
  i0.ɵɵadvance();
2015
- i0.ɵɵproperty("auUse", widget_r7.directives.bodyDirective);
2077
+ i0.ɵɵproperty("auUse", directives_r7.bodyDirective);
2016
2078
  i0.ɵɵadvance();
2017
- i0.ɵɵproperty("auSlotProps", i0.ɵɵpureFunction2(4, _c1$3, state_r10, widget_r7))("auSlot", state_r10.children);
2079
+ i0.ɵɵproperty("auSlotProps", i0.ɵɵpureFunction3(4, _c1$3, state_r10, directives_r7, api_r11))("auSlot", state_r10.children());
2018
2080
  } }
2019
2081
  function AccordionItemDefaultSlotsComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
2020
- i0.ɵɵtemplate(0, AccordionItemDefaultSlotsComponent_ng_template_0_Case_0_Template, 1, 1, "ng-container", 8)(1, AccordionItemDefaultSlotsComponent_ng_template_0_Case_1_Template, 1, 1, "ng-container", 8)(2, AccordionItemDefaultSlotsComponent_ng_template_0_Case_2_Template, 1, 1, "ng-container", 8)(3, AccordionItemDefaultSlotsComponent_ng_template_0_Case_3_Template, 1, 1, "ng-container", 8)(4, AccordionItemDefaultSlotsComponent_ng_template_0_Case_4_Template, 1, 1, "ng-container", 8)(5, AccordionItemDefaultSlotsComponent_ng_template_0_Case_5_Template, 1, 1, "ng-container", 8)(6, AccordionItemDefaultSlotsComponent_ng_template_0_Case_6_Template, 1, 1, "ng-container", 8)(7, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_7_Template, 2, 2, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor)(9, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_9_Template, 2, 2, "ng-template", null, 2, i0.ɵɵtemplateRefExtractor)(11, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_11_Template, 2, 2, "ng-template", null, 3, i0.ɵɵtemplateRefExtractor)(13, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_13_Template, 2, 2, "ng-template", null, 4, i0.ɵɵtemplateRefExtractor)(15, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_15_Template, 2, 2, "ng-template", null, 5, i0.ɵɵtemplateRefExtractor)(17, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_17_Template, 2, 2, "ng-template", null, 6, i0.ɵɵtemplateRefExtractor)(19, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_19_Template, 2, 6, "ng-template", null, 7, i0.ɵɵtemplateRefExtractor)(21, AccordionItemDefaultSlotsComponent_ng_template_0_Conditional_21_Template, 3, 7, "div", 9);
2082
+ i0.ɵɵtemplate(0, AccordionItemDefaultSlotsComponent_ng_template_0_Case_0_Template, 1, 1, "ng-container", 9)(1, AccordionItemDefaultSlotsComponent_ng_template_0_Case_1_Template, 1, 1, "ng-container", 9)(2, AccordionItemDefaultSlotsComponent_ng_template_0_Case_2_Template, 1, 1, "ng-container", 9)(3, AccordionItemDefaultSlotsComponent_ng_template_0_Case_3_Template, 1, 1, "ng-container", 9)(4, AccordionItemDefaultSlotsComponent_ng_template_0_Case_4_Template, 1, 1, "ng-container", 9)(5, AccordionItemDefaultSlotsComponent_ng_template_0_Case_5_Template, 1, 1, "ng-container", 9)(6, AccordionItemDefaultSlotsComponent_ng_template_0_Case_6_Template, 1, 1, "ng-container", 9)(7, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_7_Template, 2, 2, "ng-template", null, 1, i0.ɵɵtemplateRefExtractor)(9, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_9_Template, 2, 2, "ng-template", null, 2, i0.ɵɵtemplateRefExtractor)(11, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_11_Template, 2, 2, "ng-template", null, 3, i0.ɵɵtemplateRefExtractor)(13, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_13_Template, 2, 2, "ng-template", null, 4, i0.ɵɵtemplateRefExtractor)(15, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_15_Template, 2, 2, "ng-template", null, 5, i0.ɵɵtemplateRefExtractor)(17, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_17_Template, 2, 2, "ng-template", null, 6, i0.ɵɵtemplateRefExtractor)(19, AccordionItemDefaultSlotsComponent_ng_template_0_ng_template_19_Template, 2, 7, "ng-template", null, 7, i0.ɵɵtemplateRefExtractor)(21, AccordionItemDefaultSlotsComponent_ng_template_0_Conditional_21_Template, 3, 8, "div", 10);
2021
2083
  } if (rf & 2) {
2022
- let tmp_11_0;
2084
+ let tmp_12_0;
2023
2085
  const state_r10 = ctx.state;
2024
- i0.ɵɵconditional((tmp_11_0 = state_r10.itemHeadingTag) === "h1" ? 0 : tmp_11_0 === "h2" ? 1 : tmp_11_0 === "h3" ? 2 : tmp_11_0 === "h4" ? 3 : tmp_11_0 === "h5" ? 4 : tmp_11_0 === "h6" ? 5 : 6);
2086
+ i0.ɵɵconditional((tmp_12_0 = state_r10.headingTag()) === "h1" ? 0 : tmp_12_0 === "h2" ? 1 : tmp_12_0 === "h3" ? 2 : tmp_12_0 === "h4" ? 3 : tmp_12_0 === "h5" ? 4 : tmp_12_0 === "h6" ? 5 : 6);
2025
2087
  i0.ɵɵadvance(21);
2026
- i0.ɵɵconditional(state_r10.shouldBeInDOM ? 21 : -1);
2088
+ i0.ɵɵconditional(state_r10.shouldBeInDOM() ? 21 : -1);
2027
2089
  } }
2028
- const _c2$3 = ["auAccordionItem", ""];
2029
- const _c3$3 = ["*"];
2090
+ const _c2$3 = ["content"];
2091
+ const _c3$3 = ["auAccordionItem", ""];
2092
+ const _c4$3 = ["*"];
2093
+ const _c5$2 = (a0, a1, a2) => ({ state: a0, api: a1, directives: a2 });
2030
2094
  function AccordionItemComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
2031
2095
  i0.ɵɵprojection(0);
2032
2096
  } }
2033
- function AccordionItemComponent_ng_template_1_Template(rf, ctx) { }
2097
+ function AccordionItemComponent_ng_template_2_Template(rf, ctx) { }
2098
+ /**
2099
+ * Directive to represent the body of an accordion item.
2100
+ *
2101
+ * This directive provides a template reference for the {@link AccordionItemContext}.
2102
+ */
2034
2103
  class AccordionBodyDirective {
2035
2104
  constructor() {
2036
2105
  this.templateRef = inject((TemplateRef));
2037
2106
  }
2038
- static ngTemplateContextGuard(dir, context) {
2107
+ static ngTemplateContextGuard(_dir, context) {
2039
2108
  return true;
2040
2109
  }
2041
- static { this.ɵfac = function AccordionBodyDirective_Factory(t) { return new (t || AccordionBodyDirective)(); }; }
2110
+ static { this.ɵfac = function AccordionBodyDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || AccordionBodyDirective)(); }; }
2042
2111
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: AccordionBodyDirective, selectors: [["ng-template", "auAccordionItemBody", ""]], standalone: true }); }
2043
2112
  }
2044
2113
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AccordionBodyDirective, [{
2045
2114
  type: Directive,
2046
2115
  args: [{ selector: 'ng-template[auAccordionItemBody]', standalone: true }]
2047
2116
  }], null, null); })();
2117
+ /**
2118
+ * Directive to be used as an accordion header.
2119
+ *
2120
+ * This directive provides a template reference for the {@link AccordionItemContext}.
2121
+ */
2048
2122
  class AccordionHeaderDirective {
2049
2123
  constructor() {
2050
2124
  this.templateRef = inject((TemplateRef));
2051
2125
  }
2052
- static ngTemplateContextGuard(dir, context) {
2126
+ static ngTemplateContextGuard(_dir, context) {
2053
2127
  return true;
2054
2128
  }
2055
- static { this.ɵfac = function AccordionHeaderDirective_Factory(t) { return new (t || AccordionHeaderDirective)(); }; }
2129
+ static { this.ɵfac = function AccordionHeaderDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || AccordionHeaderDirective)(); }; }
2056
2130
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: AccordionHeaderDirective, selectors: [["ng-template", "auAccordionItemHeader", ""]], standalone: true }); }
2057
2131
  }
2058
2132
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AccordionHeaderDirective, [{
2059
2133
  type: Directive,
2060
2134
  args: [{ selector: 'ng-template[auAccordionItemHeader]', standalone: true }]
2061
2135
  }], null, null); })();
2136
+ /**
2137
+ * Directive that represents the structure of an accordion item.
2138
+ *
2139
+ * This directive provides a template reference for the {@link AccordionItemContext}.
2140
+ * It also includes a static method to guard the template context type.
2141
+ */
2062
2142
  class AccordionItemStructureDirective {
2063
2143
  constructor() {
2064
2144
  this.templateRef = inject((TemplateRef));
2065
2145
  }
2066
- static ngTemplateContextGuard(dir, context) {
2146
+ static ngTemplateContextGuard(_dir, context) {
2067
2147
  return true;
2068
2148
  }
2069
- static { this.ɵfac = function AccordionItemStructureDirective_Factory(t) { return new (t || AccordionItemStructureDirective)(); }; }
2149
+ static { this.ɵfac = function AccordionItemStructureDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || AccordionItemStructureDirective)(); }; }
2070
2150
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: AccordionItemStructureDirective, selectors: [["ng-template", "auAccordionItemStructure", ""]], standalone: true }); }
2071
2151
  }
2072
2152
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AccordionItemStructureDirective, [{
@@ -2074,25 +2154,25 @@ class AccordionItemStructureDirective {
2074
2154
  args: [{ selector: 'ng-template[auAccordionItemStructure]', standalone: true }]
2075
2155
  }], null, null); })();
2076
2156
  class AccordionItemDefaultSlotsComponent {
2077
- static { this.ɵfac = function AccordionItemDefaultSlotsComponent_Factory(t) { return new (t || AccordionItemDefaultSlotsComponent)(); }; }
2157
+ static { this.ɵfac = function AccordionItemDefaultSlotsComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || AccordionItemDefaultSlotsComponent)(); }; }
2078
2158
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AccordionItemDefaultSlotsComponent, selectors: [["ng-component"]], viewQuery: function AccordionItemDefaultSlotsComponent_Query(rf, ctx) { if (rf & 1) {
2079
2159
  i0.ɵɵviewQuery(_c0$3, 7);
2080
2160
  } if (rf & 2) {
2081
2161
  let _t;
2082
2162
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.structure = _t.first);
2083
- } }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 2, vars: 0, consts: [["structure", ""], ["h1", ""], ["h2", ""], ["h3", ""], ["h4", ""], ["h5", ""], ["h6", ""], ["button", ""], [3, "ngTemplateOutlet"], [1, "accordion-collapse", 3, "auUse"], [1, "accordion-header", 3, "auUse"], [1, "accordion-button", 3, "auUse"], [3, "auSlotProps", "auSlot"], [1, "accordion-body", 3, "auUse"]], template: function AccordionItemDefaultSlotsComponent_Template(rf, ctx) { if (rf & 1) {
2084
- i0.ɵɵtemplate(0, AccordionItemDefaultSlotsComponent_ng_template_0_Template, 22, 2, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor);
2085
- } }, dependencies: [UseDirective, SlotDirective, NgTemplateOutlet], encapsulation: 2, changeDetection: 0 }); }
2163
+ } }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 2, vars: 0, consts: [["structure", ""], ["h1", ""], ["h2", ""], ["h3", ""], ["h4", ""], ["h5", ""], ["h6", ""], ["button", ""], ["auAccordionItemStructure", ""], [3, "ngTemplateOutlet"], [1, "accordion-collapse", 3, "auUse"], [1, "accordion-header", 3, "auUse"], [1, "accordion-button", 3, "auUse"], [3, "auSlotProps", "auSlot"], [1, "accordion-body", 3, "auUse"]], template: function AccordionItemDefaultSlotsComponent_Template(rf, ctx) { if (rf & 1) {
2164
+ i0.ɵɵtemplate(0, AccordionItemDefaultSlotsComponent_ng_template_0_Template, 22, 2, "ng-template", 8, 0, i0.ɵɵtemplateRefExtractor);
2165
+ } }, dependencies: [UseDirective, SlotDirective, NgTemplateOutlet, AccordionItemStructureDirective], encapsulation: 2, changeDetection: 0 }); }
2086
2166
  }
2087
2167
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AccordionItemDefaultSlotsComponent, [{
2088
2168
  type: Component,
2089
2169
  args: [{
2090
2170
  standalone: true,
2091
2171
  changeDetection: ChangeDetectionStrategy.OnPush,
2092
- imports: [UseDirective, SlotDirective, AccordionHeaderDirective, AccordionBodyDirective, NgTemplateOutlet],
2172
+ imports: [UseDirective, SlotDirective, NgTemplateOutlet, AccordionItemStructureDirective],
2093
2173
  template: `
2094
- <ng-template #structure let-state="state" let-widget="widget">
2095
- @switch (state.itemHeadingTag) {
2174
+ <ng-template auAccordionItemStructure #structure let-state="state" let-api="api" let-directives="directives">
2175
+ @switch (state.headingTag()) {
2096
2176
  @case ('h1') {
2097
2177
  <ng-container [ngTemplateOutlet]="h1"></ng-container>
2098
2178
  }
@@ -2117,49 +2197,49 @@ class AccordionItemDefaultSlotsComponent {
2117
2197
  }
2118
2198
 
2119
2199
  <ng-template #h1>
2120
- <h1 class="accordion-header" [auUse]="widget.directives.headerDirective">
2200
+ <h1 class="accordion-header" [auUse]="directives.headerDirective">
2121
2201
  <ng-template [ngTemplateOutlet]="button"></ng-template>
2122
2202
  </h1>
2123
2203
  </ng-template>
2124
2204
 
2125
2205
  <ng-template #h2>
2126
- <h2 class="accordion-header" [auUse]="widget.directives.headerDirective">
2206
+ <h2 class="accordion-header" [auUse]="directives.headerDirective">
2127
2207
  <ng-template [ngTemplateOutlet]="button"></ng-template>
2128
2208
  </h2>
2129
2209
  </ng-template>
2130
2210
 
2131
2211
  <ng-template #h3>
2132
- <h3 class="accordion-header" [auUse]="widget.directives.headerDirective">
2212
+ <h3 class="accordion-header" [auUse]="directives.headerDirective">
2133
2213
  <ng-template [ngTemplateOutlet]="button"></ng-template>
2134
2214
  </h3>
2135
2215
  </ng-template>
2136
2216
 
2137
2217
  <ng-template #h4>
2138
- <h4 class="accordion-header" [auUse]="widget.directives.headerDirective">
2218
+ <h4 class="accordion-header" [auUse]="directives.headerDirective">
2139
2219
  <ng-template [ngTemplateOutlet]="button"></ng-template>
2140
2220
  </h4>
2141
2221
  </ng-template>
2142
2222
 
2143
2223
  <ng-template #h5>
2144
- <h5 class="accordion-header" [auUse]="widget.directives.headerDirective">
2224
+ <h5 class="accordion-header" [auUse]="directives.headerDirective">
2145
2225
  <ng-template [ngTemplateOutlet]="button"></ng-template>
2146
2226
  </h5>
2147
2227
  </ng-template>
2148
2228
  <ng-template #h6>
2149
- <h6 class="accordion-header" [auUse]="widget.directives.headerDirective">
2229
+ <h6 class="accordion-header" [auUse]="directives.headerDirective">
2150
2230
  <ng-template [ngTemplateOutlet]="button"></ng-template>
2151
2231
  </h6>
2152
2232
  </ng-template>
2153
2233
 
2154
2234
  <ng-template #button>
2155
- <button class="accordion-button " [auUse]="widget.directives.buttonDirective">
2156
- <ng-template [auSlotProps]="{state, widget}" [auSlot]="state.header"></ng-template>
2235
+ <button class="accordion-button " [auUse]="directives.buttonDirective">
2236
+ <ng-template [auSlotProps]="{state, directives, api}" [auSlot]="state.header()"></ng-template>
2157
2237
  </button>
2158
2238
  </ng-template>
2159
- @if (state.shouldBeInDOM) {
2160
- <div [auUse]="widget.directives.bodyContainerDirective" class="accordion-collapse">
2161
- <div class="accordion-body" [auUse]="widget.directives.bodyDirective">
2162
- <ng-template [auSlotProps]="{state, widget}" [auSlot]="state.children"></ng-template>
2239
+ @if (state.shouldBeInDOM()) {
2240
+ <div [auUse]="directives.bodyContainerDirective" class="accordion-collapse">
2241
+ <div class="accordion-body" [auUse]="directives.bodyDirective">
2242
+ <ng-template [auSlotProps]="{state, directives, api}" [auSlot]="state.children()"></ng-template>
2163
2243
  </div>
2164
2244
  </div>
2165
2245
  }
@@ -2170,14 +2250,36 @@ class AccordionItemDefaultSlotsComponent {
2170
2250
  type: ViewChild,
2171
2251
  args: ['structure', { static: true }]
2172
2252
  }] }); })();
2173
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AccordionItemDefaultSlotsComponent, { className: "AccordionItemDefaultSlotsComponent", filePath: "components/accordion/accordion.component.ts", lineNumber: 134 }); })();
2174
- const accordionItemDefaultSlotItemStructure = new ComponentTemplate(AccordionItemDefaultSlotsComponent, 'structure');
2175
- const defaultConfig$3 = {
2176
- structure: accordionItemDefaultSlotItemStructure,
2177
- };
2253
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AccordionItemDefaultSlotsComponent, { className: "AccordionItemDefaultSlotsComponent", filePath: "components/accordion/accordion.component.ts", lineNumber: 148 }); })();
2254
+ /**
2255
+ * Represents the default slot structure for an accordion item.
2256
+ */
2257
+ const accordionItemDefaultSlotStructure = new ComponentTemplate(AccordionItemDefaultSlotsComponent, 'structure');
2258
+ /**
2259
+ * AccordionItemComponent is a component that represents an item within an accordion.
2260
+ */
2178
2261
  class AccordionItemComponent extends BaseWidgetDirective {
2179
2262
  constructor() {
2180
- super(...arguments);
2263
+ super(callWidgetFactory({
2264
+ factory: (arg) => inject(AccordionDirective).api.registerItem(arg),
2265
+ defaultConfig: {
2266
+ structure: accordionItemDefaultSlotStructure,
2267
+ },
2268
+ events: {
2269
+ onVisibleChange: (visible) => this.visibleChange.emit(visible),
2270
+ onHidden: () => this.hidden.emit(),
2271
+ onShown: () => this.shown.emit(),
2272
+ },
2273
+ afterInit: (widget) => {
2274
+ useDirectiveForHost(widget.directives.itemDirective);
2275
+ },
2276
+ slotTemplates: () => ({
2277
+ structure: this.slotStructureFromContent?.templateRef,
2278
+ header: this.slotHeaderFromContent?.templateRef,
2279
+ children: this.slotBodyFromContent?.templateRef,
2280
+ }),
2281
+ slotChildren: () => this.slotChildren,
2282
+ }));
2181
2283
  /**
2182
2284
  * An event fired when an item is shown.
2183
2285
  */
@@ -2192,32 +2294,11 @@ class AccordionItemComponent extends BaseWidgetDirective {
2192
2294
  * Event payload is the new value of visible.
2193
2295
  */
2194
2296
  this.visibleChange = new EventEmitter();
2195
- this.ad = inject(AccordionDirective);
2196
- this.defaultSlots = writable(defaultConfig$3);
2197
- this._widget = callWidgetFactory({
2198
- factory: ((arg) => this.ad.api.registerItem(arg)),
2199
- defaultConfig: this.defaultSlots,
2200
- events: {
2201
- onVisibleChange: (visible) => this.visibleChange.emit(visible),
2202
- onHidden: () => this.hidden.emit(),
2203
- onShown: () => this.shown.emit(),
2204
- },
2205
- afterInit: () => {
2206
- useDirectiveForHost(this._widget.directives.itemDirective);
2207
- },
2208
- });
2209
- }
2210
- ngAfterContentChecked() {
2211
- this._widget.patchSlots({
2212
- structure: this.slotStructureFromContent?.templateRef,
2213
- header: this.slotHeaderFromContent?.templateRef,
2214
- children: this.slotBodyFromContent?.templateRef,
2215
- });
2216
2297
  }
2217
2298
  ngAfterViewInit() {
2218
2299
  queueMicrotask(() => this.api.initDone());
2219
2300
  }
2220
- static { this.ɵfac = /*@__PURE__*/ (() => { let ɵAccordionItemComponent_BaseFactory; return function AccordionItemComponent_Factory(t) { return (ɵAccordionItemComponent_BaseFactory || (ɵAccordionItemComponent_BaseFactory = i0.ɵɵgetInheritedFactory(AccordionItemComponent)))(t || AccordionItemComponent); }; })(); }
2301
+ static { this.ɵfac = function AccordionItemComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || AccordionItemComponent)(); }; }
2221
2302
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AccordionItemComponent, selectors: [["", "auAccordionItem", ""]], contentQueries: function AccordionItemComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
2222
2303
  i0.ɵɵcontentQuery(dirIndex, AccordionHeaderDirective, 5);
2223
2304
  i0.ɵɵcontentQuery(dirIndex, AccordionBodyDirective, 5);
@@ -2227,14 +2308,18 @@ class AccordionItemComponent extends BaseWidgetDirective {
2227
2308
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotHeaderFromContent = _t.first);
2228
2309
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotBodyFromContent = _t.first);
2229
2310
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotStructureFromContent = _t.first);
2230
- } }, hostAttrs: [1, "accordion-item"], inputs: { header: [0, "auHeader", "header"], children: [0, "auChildren", "children"], structure: [0, "auStructure", "structure"], id: [0, "auId", "id"], transition: [0, "auTransition", "transition"], className: [0, "auClassName", "className"], destroyOnHide: [2, "auDestroyOnHide", "destroyOnHide", auBooleanAttribute], disabled: [2, "auDisabled", "disabled", auBooleanAttribute], visible: [2, "auVisible", "visible", auBooleanAttribute], animated: [2, "auAnimated", "animated", auBooleanAttribute], headerClassName: [0, "auHeaderClassName", "headerClassName"], buttonClassName: [0, "auButtonClassName", "buttonClassName"], bodyContainerClassName: [0, "auBodyContainerClassName", "bodyContainerClassName"], bodyClassName: [0, "auBodyClassName", "bodyClassName"], headingTag: [0, "auHeadingTag", "headingTag"] }, outputs: { shown: "auShown", hidden: "auHidden", visibleChange: "auVisibleChange" }, exportAs: ["auAccordionItem"], standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c2$3, ngContentSelectors: _c3$3, decls: 2, vars: 6, consts: [[3, "auContentAsSlot"], [3, "auSlotProps", "auSlot"]], template: function AccordionItemComponent_Template(rf, ctx) { if (rf & 1) {
2311
+ } }, viewQuery: function AccordionItemComponent_Query(rf, ctx) { if (rf & 1) {
2312
+ i0.ɵɵviewQuery(_c2$3, 7);
2313
+ } if (rf & 2) {
2314
+ let _t;
2315
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotChildren = _t.first);
2316
+ } }, hostAttrs: [1, "accordion-item"], inputs: { header: [0, "auHeader", "header"], children: [0, "auChildren", "children"], structure: [0, "auStructure", "structure"], id: [0, "auId", "id"], transition: [0, "auTransition", "transition"], className: [0, "auClassName", "className"], destroyOnHide: [2, "auDestroyOnHide", "destroyOnHide", auBooleanAttribute], disabled: [2, "auDisabled", "disabled", auBooleanAttribute], visible: [2, "auVisible", "visible", auBooleanAttribute], animated: [2, "auAnimated", "animated", auBooleanAttribute], headerClassName: [0, "auHeaderClassName", "headerClassName"], buttonClassName: [0, "auButtonClassName", "buttonClassName"], bodyContainerClassName: [0, "auBodyContainerClassName", "bodyContainerClassName"], bodyClassName: [0, "auBodyClassName", "bodyClassName"], headingTag: [0, "auHeadingTag", "headingTag"] }, outputs: { shown: "auShown", hidden: "auHidden", visibleChange: "auVisibleChange" }, exportAs: ["auAccordionItem"], standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c3$3, ngContentSelectors: _c4$3, decls: 3, vars: 6, consts: [["content", ""], [3, "auSlotProps", "auSlot"]], template: function AccordionItemComponent_Template(rf, ctx) { if (rf & 1) {
2231
2317
  i0.ɵɵprojectionDef();
2232
- i0.ɵɵtemplate(0, AccordionItemComponent_ng_template_0_Template, 1, 0, "ng-template", 0)(1, AccordionItemComponent_ng_template_1_Template, 0, 0, "ng-template", 1);
2318
+ i0.ɵɵtemplate(0, AccordionItemComponent_ng_template_0_Template, 1, 0, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor)(2, AccordionItemComponent_ng_template_2_Template, 0, 0, "ng-template", 1);
2233
2319
  } if (rf & 2) {
2234
- i0.ɵɵproperty("auContentAsSlot", ctx.defaultSlots);
2235
- i0.ɵɵadvance();
2236
- i0.ɵɵproperty("auSlotProps", i0.ɵɵpureFunction2(3, _c1$3, ctx.state(), ctx.widget))("auSlot", ctx.state().structure);
2237
- } }, dependencies: [SlotDirective, ContentAsSlotDirective], encapsulation: 2, changeDetection: 0 }); }
2320
+ i0.ɵɵadvance(2);
2321
+ i0.ɵɵproperty("auSlotProps", i0.ɵɵpureFunction3(2, _c5$2, ctx.state, ctx.api, ctx.directives))("auSlot", ctx.state.structure());
2322
+ } }, dependencies: [SlotDirective], encapsulation: 2, changeDetection: 0 }); }
2238
2323
  }
2239
2324
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AccordionItemComponent, [{
2240
2325
  type: Component,
@@ -2246,15 +2331,13 @@ class AccordionItemComponent extends BaseWidgetDirective {
2246
2331
  host: {
2247
2332
  class: 'accordion-item',
2248
2333
  },
2249
- imports: [SlotDirective, UseDirective, ContentAsSlotDirective],
2334
+ imports: [SlotDirective, UseDirective],
2250
2335
  template: `
2251
- <ng-template [auContentAsSlot]="defaultSlots">
2252
- <ng-content></ng-content>
2253
- </ng-template>
2254
- <ng-template [auSlotProps]="{state: state(), widget}" [auSlot]="state().structure"></ng-template>
2336
+ <ng-template #content><ng-content></ng-content></ng-template>
2337
+ <ng-template [auSlotProps]="{state, api, directives}" [auSlot]="state.structure()"></ng-template>
2255
2338
  `,
2256
2339
  }]
2257
- }], null, { header: [{
2340
+ }], () => [], { header: [{
2258
2341
  type: Input,
2259
2342
  args: ['auHeader']
2260
2343
  }], slotHeaderFromContent: [{
@@ -2317,11 +2400,31 @@ class AccordionItemComponent extends BaseWidgetDirective {
2317
2400
  }], visibleChange: [{
2318
2401
  type: Output,
2319
2402
  args: ['auVisibleChange']
2403
+ }], slotChildren: [{
2404
+ type: ViewChild,
2405
+ args: ['content', { static: true }]
2320
2406
  }] }); })();
2321
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AccordionItemComponent, { className: "AccordionItemComponent", filePath: "components/accordion/accordion.component.ts", lineNumber: 159 }); })();
2407
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(AccordionItemComponent, { className: "AccordionItemComponent", filePath: "components/accordion/accordion.component.ts", lineNumber: 176 }); })();
2408
+ /**
2409
+ * Directive for creating an accordion component.
2410
+ *
2411
+ * This directive extends the `BaseWidgetDirective` and provides various inputs and outputs
2412
+ * to customize the behavior and appearance of the accordion and its items.
2413
+ *
2414
+ */
2322
2415
  class AccordionDirective extends BaseWidgetDirective {
2323
2416
  constructor() {
2324
- super(...arguments);
2417
+ super(callWidgetFactory({
2418
+ factory: export_createAccordion,
2419
+ widgetName: 'accordion',
2420
+ events: {
2421
+ onItemShown: (id) => this.itemShown.emit(id),
2422
+ onItemHidden: (id) => this.itemHidden.emit(id),
2423
+ },
2424
+ afterInit: (widget) => {
2425
+ useDirectiveForHost(widget.directives.accordionDirective);
2426
+ },
2427
+ }));
2325
2428
  /**
2326
2429
  * An event fired when an item is shown.
2327
2430
  *
@@ -2344,19 +2447,8 @@ class AccordionDirective extends BaseWidgetDirective {
2344
2447
  * ```
2345
2448
  */
2346
2449
  this.itemHidden = new EventEmitter();
2347
- this._widget = callWidgetFactory({
2348
- factory: export_createAccordion,
2349
- widgetName: 'accordion',
2350
- events: {
2351
- onItemShown: (id) => this.itemShown.emit(id),
2352
- onItemHidden: (id) => this.itemHidden.emit(id),
2353
- },
2354
- afterInit: () => {
2355
- useDirectiveForHost(this._widget.directives.accordionDirective);
2356
- },
2357
- });
2358
2450
  }
2359
- static { this.ɵfac = /*@__PURE__*/ (() => { let ɵAccordionDirective_BaseFactory; return function AccordionDirective_Factory(t) { return (ɵAccordionDirective_BaseFactory || (ɵAccordionDirective_BaseFactory = i0.ɵɵgetInheritedFactory(AccordionDirective)))(t || AccordionDirective); }; })(); }
2451
+ static { this.ɵfac = function AccordionDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || AccordionDirective)(); }; }
2360
2452
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: AccordionDirective, selectors: [["", "auAccordion", ""]], hostAttrs: [1, "accordion"], inputs: { closeOthers: [2, "auCloseOthers", "closeOthers", auBooleanAttribute], className: [0, "auClassName", "className"], itemDestroyOnHide: [2, "auItemDestroyOnHide", "itemDestroyOnHide", auBooleanAttribute], itemAnimated: [2, "auItemAnimated", "itemAnimated", auBooleanAttribute], itemTransition: [0, "auItemTransition", "itemTransition"], itemStructure: [0, "auItemStructure", "itemStructure"], itemClassName: [0, "auItemClassName", "itemClassName"], itemHeaderClassName: [0, "auItemHeaderClassName", "itemHeaderClassName"], itemButtonClassName: [0, "auItemButtonClassName", "itemButtonClassName"], itemBodyContainerClassName: [0, "auItemBodyContainerClassName", "itemBodyContainerClassName"], itemBodyClassName: [0, "auItemBodyClassName", "itemBodyClassName"], itemHeadingTag: [0, "auItemHeadingTag", "itemHeadingTag"] }, outputs: { itemShown: "auItemShown", itemHidden: "auItemHidden" }, exportAs: ["auAccordion"], standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature] }); }
2361
2453
  }
2362
2454
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AccordionDirective, [{
@@ -2369,7 +2461,7 @@ class AccordionDirective extends BaseWidgetDirective {
2369
2461
  class: 'accordion',
2370
2462
  },
2371
2463
  }]
2372
- }], null, { closeOthers: [{
2464
+ }], () => [], { closeOthers: [{
2373
2465
  type: Input,
2374
2466
  args: [{ alias: 'auCloseOthers', transform: auBooleanAttribute }]
2375
2467
  }], className: [{
@@ -2433,22 +2525,22 @@ function SliderDefaultHandleSlotComponent_ng_template_0_Template(rf, ctx) { if (
2433
2525
  i0.ɵɵtext(1, "\u00A0");
2434
2526
  i0.ɵɵelementEnd();
2435
2527
  } if (rf & 2) {
2436
- const widget_r1 = ctx.widget;
2528
+ const directives_r1 = ctx.directives;
2437
2529
  const item_r2 = ctx.item;
2438
- i0.ɵɵproperty("auUse", i0.ɵɵpureFunction2(3, _c2$2, widget_r1.directives.handleDirective, i0.ɵɵpureFunction1(1, _c1$2, item_r2)));
2530
+ i0.ɵɵproperty("auUse", i0.ɵɵpureFunction2(3, _c2$2, directives_r1.handleDirective, i0.ɵɵpureFunction1(1, _c1$2, item_r2)));
2439
2531
  } }
2440
2532
  const _c3$2 = ["structure"];
2441
2533
  const _forTrack0 = ($index, $item) => $item.id;
2442
- const _c4$1 = a0 => ({ option: a0 });
2443
- const _c5 = (a0, a1, a2) => ({ state: a0, widget: a1, value: a2 });
2444
- const _c6 = (a0, a1, a2) => ({ state: a0, widget: a1, item: a2 });
2534
+ const _c4$2 = a0 => ({ option: a0 });
2535
+ const _c5$1 = (a0, a1, a2, a3) => ({ state: a0, api: a1, directives: a2, value: a3 });
2536
+ const _c6 = (a0, a1, a2, a3) => ({ state: a0, api: a1, directives: a2, item: a3 });
2445
2537
  const _c7 = a0 => ({ index: a0 });
2446
2538
  function SliderDefaultStructureSlotComponent_ng_template_0_For_1_Template(rf, ctx) { if (rf & 1) {
2447
2539
  i0.ɵɵelement(0, "div", 2);
2448
2540
  } if (rf & 2) {
2449
2541
  const option_r1 = ctx.$implicit;
2450
- const widget_r2 = i0.ɵɵnextContext().widget;
2451
- i0.ɵɵproperty("auUse", i0.ɵɵpureFunction2(3, _c2$2, widget_r2.directives.progressDisplayDirective, i0.ɵɵpureFunction1(1, _c4$1, option_r1)));
2542
+ const directives_r2 = i0.ɵɵnextContext().directives;
2543
+ i0.ɵɵproperty("auUse", i0.ɵɵpureFunction2(3, _c2$2, directives_r2.progressDisplayDirective, i0.ɵɵpureFunction1(1, _c4$2, option_r1)));
2452
2544
  } }
2453
2545
  function SliderDefaultStructureSlotComponent_ng_template_0_Conditional_3_ng_template_1_Template(rf, ctx) { }
2454
2546
  function SliderDefaultStructureSlotComponent_ng_template_0_Conditional_3_ng_template_3_Template(rf, ctx) { }
@@ -2462,14 +2554,15 @@ function SliderDefaultStructureSlotComponent_ng_template_0_Conditional_3_Templat
2462
2554
  } if (rf & 2) {
2463
2555
  const ctx_r2 = i0.ɵɵnextContext();
2464
2556
  const state_r4 = ctx_r2.state;
2465
- const widget_r2 = ctx_r2.widget;
2466
- i0.ɵɵproperty("auUse", widget_r2.directives.minLabelDirective);
2557
+ const directives_r2 = ctx_r2.directives;
2558
+ const api_r5 = ctx_r2.api;
2559
+ i0.ɵɵproperty("auUse", directives_r2.minLabelDirective);
2467
2560
  i0.ɵɵadvance();
2468
- i0.ɵɵproperty("auSlot", state_r4.label)("auSlotProps", i0.ɵɵpureFunction3(6, _c5, state_r4, widget_r2, state_r4.min));
2561
+ i0.ɵɵproperty("auSlot", state_r4.label())("auSlotProps", i0.ɵɵpureFunction4(6, _c5$1, state_r4, api_r5, directives_r2, state_r4.min()));
2469
2562
  i0.ɵɵadvance();
2470
- i0.ɵɵproperty("auUse", widget_r2.directives.maxLabelDirective);
2563
+ i0.ɵɵproperty("auUse", directives_r2.maxLabelDirective);
2471
2564
  i0.ɵɵadvance();
2472
- i0.ɵɵproperty("auSlot", state_r4.label)("auSlotProps", i0.ɵɵpureFunction3(10, _c5, state_r4, widget_r2, state_r4.max));
2565
+ i0.ɵɵproperty("auSlot", state_r4.label())("auSlotProps", i0.ɵɵpureFunction4(11, _c5$1, state_r4, api_r5, directives_r2, state_r4.max()));
2473
2566
  } }
2474
2567
  function SliderDefaultStructureSlotComponent_ng_template_0_Conditional_4_Conditional_1_ng_template_0_Template(rf, ctx) { }
2475
2568
  function SliderDefaultStructureSlotComponent_ng_template_0_Conditional_4_Conditional_1_ng_template_2_Template(rf, ctx) { }
@@ -2480,10 +2573,11 @@ function SliderDefaultStructureSlotComponent_ng_template_0_Conditional_4_Conditi
2480
2573
  } if (rf & 2) {
2481
2574
  const ctx_r2 = i0.ɵɵnextContext(2);
2482
2575
  const state_r4 = ctx_r2.state;
2483
- const widget_r2 = ctx_r2.widget;
2484
- i0.ɵɵproperty("auSlot", state_r4.label)("auSlotProps", i0.ɵɵpureFunction3(4, _c5, state_r4, widget_r2, state_r4.sortedValues[1]));
2576
+ const directives_r2 = ctx_r2.directives;
2577
+ const api_r5 = ctx_r2.api;
2578
+ i0.ɵɵproperty("auSlot", state_r4.label())("auSlotProps", i0.ɵɵpureFunction4(4, _c5$1, state_r4, api_r5, directives_r2, state_r4.sortedValues()[1]));
2485
2579
  i0.ɵɵadvance(2);
2486
- i0.ɵɵproperty("auSlot", state_r4.label)("auSlotProps", i0.ɵɵpureFunction3(8, _c5, state_r4, widget_r2, state_r4.sortedValues[0]));
2580
+ i0.ɵɵproperty("auSlot", state_r4.label())("auSlotProps", i0.ɵɵpureFunction4(9, _c5$1, state_r4, api_r5, directives_r2, state_r4.sortedValues()[0]));
2487
2581
  } }
2488
2582
  function SliderDefaultStructureSlotComponent_ng_template_0_Conditional_4_Conditional_2_ng_template_0_Template(rf, ctx) { }
2489
2583
  function SliderDefaultStructureSlotComponent_ng_template_0_Conditional_4_Conditional_2_ng_template_2_Template(rf, ctx) { }
@@ -2494,22 +2588,23 @@ function SliderDefaultStructureSlotComponent_ng_template_0_Conditional_4_Conditi
2494
2588
  } if (rf & 2) {
2495
2589
  const ctx_r2 = i0.ɵɵnextContext(2);
2496
2590
  const state_r4 = ctx_r2.state;
2497
- const widget_r2 = ctx_r2.widget;
2498
- i0.ɵɵproperty("auSlot", state_r4.label)("auSlotProps", i0.ɵɵpureFunction3(4, _c5, state_r4, widget_r2, state_r4.sortedValues[0]));
2591
+ const directives_r2 = ctx_r2.directives;
2592
+ const api_r5 = ctx_r2.api;
2593
+ i0.ɵɵproperty("auSlot", state_r4.label())("auSlotProps", i0.ɵɵpureFunction4(4, _c5$1, state_r4, api_r5, directives_r2, state_r4.sortedValues()[0]));
2499
2594
  i0.ɵɵadvance(2);
2500
- i0.ɵɵproperty("auSlot", state_r4.label)("auSlotProps", i0.ɵɵpureFunction3(8, _c5, state_r4, widget_r2, state_r4.sortedValues[1]));
2595
+ i0.ɵɵproperty("auSlot", state_r4.label())("auSlotProps", i0.ɵɵpureFunction4(9, _c5$1, state_r4, api_r5, directives_r2, state_r4.sortedValues()[1]));
2501
2596
  } }
2502
2597
  function SliderDefaultStructureSlotComponent_ng_template_0_Conditional_4_Template(rf, ctx) { if (rf & 1) {
2503
2598
  i0.ɵɵelementStart(0, "div", 2);
2504
- i0.ɵɵtemplate(1, SliderDefaultStructureSlotComponent_ng_template_0_Conditional_4_Conditional_1_Template, 3, 12)(2, SliderDefaultStructureSlotComponent_ng_template_0_Conditional_4_Conditional_2_Template, 3, 12);
2599
+ i0.ɵɵtemplate(1, SliderDefaultStructureSlotComponent_ng_template_0_Conditional_4_Conditional_1_Template, 3, 14)(2, SliderDefaultStructureSlotComponent_ng_template_0_Conditional_4_Conditional_2_Template, 3, 14);
2505
2600
  i0.ɵɵelementEnd();
2506
2601
  } if (rf & 2) {
2507
2602
  const ctx_r2 = i0.ɵɵnextContext();
2508
2603
  const state_r4 = ctx_r2.state;
2509
- const widget_r2 = ctx_r2.widget;
2510
- i0.ɵɵproperty("auUse", widget_r2.directives.combinedHandleLabelDisplayDirective);
2604
+ const directives_r2 = ctx_r2.directives;
2605
+ i0.ɵɵproperty("auUse", directives_r2.combinedHandleLabelDisplayDirective);
2511
2606
  i0.ɵɵadvance();
2512
- i0.ɵɵconditional(state_r4.rtl ? 1 : 2);
2607
+ i0.ɵɵconditional(state_r4.rtl() ? 1 : 2);
2513
2608
  } }
2514
2609
  function SliderDefaultStructureSlotComponent_ng_template_0_For_6_ng_template_0_Template(rf, ctx) { }
2515
2610
  function SliderDefaultStructureSlotComponent_ng_template_0_For_6_Conditional_1_ng_template_1_Template(rf, ctx) { }
@@ -2518,46 +2613,53 @@ function SliderDefaultStructureSlotComponent_ng_template_0_For_6_Conditional_1_T
2518
2613
  i0.ɵɵtemplate(1, SliderDefaultStructureSlotComponent_ng_template_0_For_6_Conditional_1_ng_template_1_Template, 0, 0, "ng-template", 3);
2519
2614
  i0.ɵɵelementEnd();
2520
2615
  } if (rf & 2) {
2521
- const ɵ$index_32_r5 = i0.ɵɵnextContext().$index;
2616
+ const ɵ$index_32_r6 = i0.ɵɵnextContext().$index;
2522
2617
  const ctx_r2 = i0.ɵɵnextContext();
2523
2618
  const state_r4 = ctx_r2.state;
2524
- const widget_r2 = ctx_r2.widget;
2525
- i0.ɵɵproperty("auUse", i0.ɵɵpureFunction2(5, _c2$2, widget_r2.directives.handleLabelDisplayDirective, i0.ɵɵpureFunction1(3, _c7, ɵ$index_32_r5)));
2619
+ const directives_r2 = ctx_r2.directives;
2620
+ const api_r5 = ctx_r2.api;
2621
+ i0.ɵɵproperty("auUse", i0.ɵɵpureFunction2(5, _c2$2, directives_r2.handleLabelDisplayDirective, i0.ɵɵpureFunction1(3, _c7, ɵ$index_32_r6)));
2526
2622
  i0.ɵɵadvance();
2527
- i0.ɵɵproperty("auSlot", state_r4.label)("auSlotProps", i0.ɵɵpureFunction3(8, _c5, state_r4, widget_r2, state_r4.values[ɵ$index_32_r5]));
2623
+ i0.ɵɵproperty("auSlot", state_r4.label())("auSlotProps", i0.ɵɵpureFunction4(8, _c5$1, state_r4, api_r5, directives_r2, state_r4.values()[ɵ$index_32_r6]));
2528
2624
  } }
2529
2625
  function SliderDefaultStructureSlotComponent_ng_template_0_For_6_Template(rf, ctx) { if (rf & 1) {
2530
- i0.ɵɵtemplate(0, SliderDefaultStructureSlotComponent_ng_template_0_For_6_ng_template_0_Template, 0, 0, "ng-template", 3)(1, SliderDefaultStructureSlotComponent_ng_template_0_For_6_Conditional_1_Template, 2, 12, "div", 2);
2626
+ i0.ɵɵtemplate(0, SliderDefaultStructureSlotComponent_ng_template_0_For_6_ng_template_0_Template, 0, 0, "ng-template", 3)(1, SliderDefaultStructureSlotComponent_ng_template_0_For_6_Conditional_1_Template, 2, 13, "div", 2);
2531
2627
  } if (rf & 2) {
2532
- const item_r6 = ctx.$implicit;
2628
+ const item_r7 = ctx.$implicit;
2533
2629
  const ctx_r2 = i0.ɵɵnextContext();
2534
2630
  const state_r4 = ctx_r2.state;
2535
- const widget_r2 = ctx_r2.widget;
2536
- i0.ɵɵproperty("auSlot", state_r4.handle)("auSlotProps", i0.ɵɵpureFunction3(3, _c6, state_r4, widget_r2, item_r6));
2631
+ const directives_r2 = ctx_r2.directives;
2632
+ const api_r5 = ctx_r2.api;
2633
+ i0.ɵɵproperty("auSlot", state_r4.handle())("auSlotProps", i0.ɵɵpureFunction4(3, _c6, state_r4, api_r5, directives_r2, item_r7));
2537
2634
  i0.ɵɵadvance();
2538
- i0.ɵɵconditional(state_r4.showValueLabels && !state_r4.combinedLabelDisplay ? 1 : -1);
2635
+ i0.ɵɵconditional(state_r4.showValueLabels() && !state_r4.combinedLabelDisplay() ? 1 : -1);
2539
2636
  } }
2540
2637
  function SliderDefaultStructureSlotComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
2541
2638
  i0.ɵɵrepeaterCreate(0, SliderDefaultStructureSlotComponent_ng_template_0_For_1_Template, 1, 6, "div", 2, i0.ɵɵrepeaterTrackByIdentity);
2542
2639
  i0.ɵɵelement(2, "div", 2);
2543
- i0.ɵɵtemplate(3, SliderDefaultStructureSlotComponent_ng_template_0_Conditional_3_Template, 4, 14)(4, SliderDefaultStructureSlotComponent_ng_template_0_Conditional_4_Template, 3, 2, "div", 2);
2544
- i0.ɵɵrepeaterCreate(5, SliderDefaultStructureSlotComponent_ng_template_0_For_6_Template, 2, 7, null, null, _forTrack0);
2640
+ i0.ɵɵtemplate(3, SliderDefaultStructureSlotComponent_ng_template_0_Conditional_3_Template, 4, 16)(4, SliderDefaultStructureSlotComponent_ng_template_0_Conditional_4_Template, 3, 2, "div", 2);
2641
+ i0.ɵɵrepeaterCreate(5, SliderDefaultStructureSlotComponent_ng_template_0_For_6_Template, 2, 8, null, null, _forTrack0);
2545
2642
  } if (rf & 2) {
2546
2643
  const state_r4 = ctx.state;
2547
- const widget_r2 = ctx.widget;
2548
- i0.ɵɵrepeater(state_r4.progressDisplayOptions);
2644
+ const directives_r2 = ctx.directives;
2645
+ i0.ɵɵrepeater(state_r4.progressDisplayOptions());
2549
2646
  i0.ɵɵadvance(2);
2550
- i0.ɵɵproperty("auUse", widget_r2.directives.clickableAreaDirective);
2647
+ i0.ɵɵproperty("auUse", directives_r2.clickableAreaDirective);
2551
2648
  i0.ɵɵadvance();
2552
- i0.ɵɵconditional(state_r4.showMinMaxLabels ? 3 : -1);
2649
+ i0.ɵɵconditional(state_r4.showMinMaxLabels() ? 3 : -1);
2553
2650
  i0.ɵɵadvance();
2554
- i0.ɵɵconditional(state_r4.showValueLabels && state_r4.combinedLabelDisplay ? 4 : -1);
2651
+ i0.ɵɵconditional(state_r4.showValueLabels() && state_r4.combinedLabelDisplay() ? 4 : -1);
2555
2652
  i0.ɵɵadvance();
2556
- i0.ɵɵrepeater(state_r4.sortedHandles);
2653
+ i0.ɵɵrepeater(state_r4.sortedHandles());
2557
2654
  } }
2558
2655
  const _c8 = ["auSlider", ""];
2559
- const _c9 = (a0, a1) => ({ state: a0, widget: a1 });
2656
+ const _c9 = (a0, a1, a2) => ({ state: a0, api: a1, directives: a2 });
2560
2657
  function SliderComponent_ng_template_0_Template(rf, ctx) { }
2658
+ /**
2659
+ * Directive to provide a template reference for slider labels.
2660
+ *
2661
+ * This directive uses a template reference to render the {@link SliderSlotLabelContext}.
2662
+ */
2561
2663
  class SliderLabelDirective {
2562
2664
  constructor() {
2563
2665
  this.templateRef = inject((TemplateRef));
@@ -2565,13 +2667,18 @@ class SliderLabelDirective {
2565
2667
  static ngTemplateContextGuard(_dir, context) {
2566
2668
  return true;
2567
2669
  }
2568
- static { this.ɵfac = function SliderLabelDirective_Factory(t) { return new (t || SliderLabelDirective)(); }; }
2670
+ static { this.ɵfac = function SliderLabelDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SliderLabelDirective)(); }; }
2569
2671
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: SliderLabelDirective, selectors: [["ng-template", "auSliderLabel", ""]], standalone: true }); }
2570
2672
  }
2571
2673
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SliderLabelDirective, [{
2572
2674
  type: Directive,
2573
2675
  args: [{ selector: 'ng-template[auSliderLabel]', standalone: true }]
2574
2676
  }], null, null); })();
2677
+ /**
2678
+ * Directive representing a handle for a slider component.
2679
+ *
2680
+ * This directive uses a template reference to render the {@link SliderSlotLabelContext}.
2681
+ */
2575
2682
  class SliderHandleDirective {
2576
2683
  constructor() {
2577
2684
  this.templateRef = inject((TemplateRef));
@@ -2579,7 +2686,7 @@ class SliderHandleDirective {
2579
2686
  static ngTemplateContextGuard(_dir, context) {
2580
2687
  return true;
2581
2688
  }
2582
- static { this.ɵfac = function SliderHandleDirective_Factory(t) { return new (t || SliderHandleDirective)(); }; }
2689
+ static { this.ɵfac = function SliderHandleDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SliderHandleDirective)(); }; }
2583
2690
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: SliderHandleDirective, selectors: [["ng-template", "auSliderHandle", ""]], standalone: true }); }
2584
2691
  }
2585
2692
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SliderHandleDirective, [{
@@ -2587,16 +2694,7 @@ class SliderHandleDirective {
2587
2694
  args: [{ selector: 'ng-template[auSliderHandle]', standalone: true }]
2588
2695
  }], null, null); })();
2589
2696
  class SliderDefaultHandleSlotComponent {
2590
- constructor() {
2591
- this._zone = inject(NgZone);
2592
- }
2593
- onKeyDown(event, handleId, widgetOnKeyDownFn) {
2594
- widgetOnKeyDownFn(event, handleId);
2595
- this._zone.onStable.pipe(take(1)).subscribe(() => {
2596
- event.target.focus();
2597
- });
2598
- }
2599
- static { this.ɵfac = function SliderDefaultHandleSlotComponent_Factory(t) { return new (t || SliderDefaultHandleSlotComponent)(); }; }
2697
+ static { this.ɵfac = function SliderDefaultHandleSlotComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SliderDefaultHandleSlotComponent)(); }; }
2600
2698
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SliderDefaultHandleSlotComponent, selectors: [["ng-component"]], viewQuery: function SliderDefaultHandleSlotComponent_Query(rf, ctx) { if (rf & 1) {
2601
2699
  i0.ɵɵviewQuery(_c0$2, 7);
2602
2700
  } if (rf & 2) {
@@ -2613,8 +2711,8 @@ class SliderDefaultHandleSlotComponent {
2613
2711
  changeDetection: ChangeDetectionStrategy.OnPush,
2614
2712
  imports: [UseDirective, SliderHandleDirective],
2615
2713
  template: `
2616
- <ng-template auSliderHandle #handle let-state="state" let-widget="widget" let-item="item">
2617
- <button [auUse]="[widget.directives.handleDirective, {item}]">&nbsp;</button>
2714
+ <ng-template auSliderHandle #handle let-state="state" let-directives="directives" let-item="item">
2715
+ <button [auUse]="[directives.handleDirective, {item}]">&nbsp;</button>
2618
2716
  </ng-template>
2619
2717
  `,
2620
2718
  }]
@@ -2622,8 +2720,16 @@ class SliderDefaultHandleSlotComponent {
2622
2720
  type: ViewChild,
2623
2721
  args: ['handle', { static: true }]
2624
2722
  }] }); })();
2625
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SliderDefaultHandleSlotComponent, { className: "SliderDefaultHandleSlotComponent", filePath: "components/slider/slider.component.ts", lineNumber: 60 }); })();
2723
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SliderDefaultHandleSlotComponent, { className: "SliderDefaultHandleSlotComponent", filePath: "components/slider/slider.component.ts", lineNumber: 65 }); })();
2724
+ /**
2725
+ * A constant representing the default slot handle for the slider component.
2726
+ */
2626
2727
  const sliderDefaultSlotHandle = new ComponentTemplate(SliderDefaultHandleSlotComponent, 'handle');
2728
+ /**
2729
+ * Directive that provides structure for the slider component.
2730
+ *
2731
+ * This directive uses a `TemplateRef` to handle the context of the slider slot.
2732
+ */
2627
2733
  class SliderStructureDirective {
2628
2734
  constructor() {
2629
2735
  this.templateRef = inject((TemplateRef));
@@ -2631,7 +2737,7 @@ class SliderStructureDirective {
2631
2737
  static ngTemplateContextGuard(_dir, context) {
2632
2738
  return true;
2633
2739
  }
2634
- static { this.ɵfac = function SliderStructureDirective_Factory(t) { return new (t || SliderStructureDirective)(); }; }
2740
+ static { this.ɵfac = function SliderStructureDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SliderStructureDirective)(); }; }
2635
2741
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: SliderStructureDirective, selectors: [["ng-template", "auSliderStructure", ""]], standalone: true }); }
2636
2742
  }
2637
2743
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SliderStructureDirective, [{
@@ -2639,7 +2745,7 @@ class SliderStructureDirective {
2639
2745
  args: [{ selector: 'ng-template[auSliderStructure]', standalone: true }]
2640
2746
  }], null, null); })();
2641
2747
  class SliderDefaultStructureSlotComponent {
2642
- static { this.ɵfac = function SliderDefaultStructureSlotComponent_Factory(t) { return new (t || SliderDefaultStructureSlotComponent)(); }; }
2748
+ static { this.ɵfac = function SliderDefaultStructureSlotComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SliderDefaultStructureSlotComponent)(); }; }
2643
2749
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SliderDefaultStructureSlotComponent, selectors: [["ng-component"]], viewQuery: function SliderDefaultStructureSlotComponent_Query(rf, ctx) { if (rf & 1) {
2644
2750
  i0.ɵɵviewQuery(_c3$2, 7);
2645
2751
  } if (rf & 2) {
@@ -2656,35 +2762,35 @@ class SliderDefaultStructureSlotComponent {
2656
2762
  changeDetection: ChangeDetectionStrategy.OnPush,
2657
2763
  imports: [SlotDirective, SliderStructureDirective, UseDirective],
2658
2764
  template: `
2659
- <ng-template auSliderStructure #structure let-state="state" let-widget="widget">
2660
- @for (option of state.progressDisplayOptions; track option) {
2661
- <div [auUse]="[widget.directives.progressDisplayDirective, {option}]"></div>
2765
+ <ng-template auSliderStructure #structure let-state="state" let-directives="directives" let-api="api">
2766
+ @for (option of state.progressDisplayOptions(); track option) {
2767
+ <div [auUse]="[directives.progressDisplayDirective, {option}]"></div>
2662
2768
  }
2663
- <div [auUse]="widget.directives.clickableAreaDirective"></div>
2664
- @if (state.showMinMaxLabels) {
2665
- <div [auUse]="widget.directives.minLabelDirective">
2666
- <ng-template [auSlot]="state.label" [auSlotProps]="{state, widget, value: state.min}"></ng-template>
2769
+ <div [auUse]="directives.clickableAreaDirective"></div>
2770
+ @if (state.showMinMaxLabels()) {
2771
+ <div [auUse]="directives.minLabelDirective">
2772
+ <ng-template [auSlot]="state.label()" [auSlotProps]="{state, api, directives, value: state.min()}"></ng-template>
2667
2773
  </div>
2668
- <div [auUse]="widget.directives.maxLabelDirective">
2669
- <ng-template [auSlot]="state.label" [auSlotProps]="{state, widget, value: state.max}"></ng-template>
2774
+ <div [auUse]="directives.maxLabelDirective">
2775
+ <ng-template [auSlot]="state.label()" [auSlotProps]="{state, api, directives, value: state.max()}"></ng-template>
2670
2776
  </div>
2671
2777
  }
2672
- @if (state.showValueLabels && state.combinedLabelDisplay) {
2673
- <div [auUse]="widget.directives.combinedHandleLabelDisplayDirective">
2674
- @if (state.rtl) {
2675
- <ng-template [auSlot]="state.label" [auSlotProps]="{state, widget, value: state.sortedValues[1]}"></ng-template> -
2676
- <ng-template [auSlot]="state.label" [auSlotProps]="{state, widget, value: state.sortedValues[0]}"></ng-template>
2778
+ @if (state.showValueLabels() && state.combinedLabelDisplay()) {
2779
+ <div [auUse]="directives.combinedHandleLabelDisplayDirective">
2780
+ @if (state.rtl()) {
2781
+ <ng-template [auSlot]="state.label()" [auSlotProps]="{state, api, directives, value: state.sortedValues()[1]}"></ng-template> -
2782
+ <ng-template [auSlot]="state.label()" [auSlotProps]="{state, api, directives, value: state.sortedValues()[0]}"></ng-template>
2677
2783
  } @else {
2678
- <ng-template [auSlot]="state.label" [auSlotProps]="{state, widget, value: state.sortedValues[0]}"></ng-template> -
2679
- <ng-template [auSlot]="state.label" [auSlotProps]="{state, widget, value: state.sortedValues[1]}"></ng-template>
2784
+ <ng-template [auSlot]="state.label()" [auSlotProps]="{state, api, directives, value: state.sortedValues()[0]}"></ng-template> -
2785
+ <ng-template [auSlot]="state.label()" [auSlotProps]="{state, api, directives, value: state.sortedValues()[1]}"></ng-template>
2680
2786
  }
2681
2787
  </div>
2682
2788
  }
2683
- @for (item of state.sortedHandles; track item.id; let i = $index) {
2684
- <ng-template [auSlot]="state.handle" [auSlotProps]="{state, widget, item}"></ng-template>
2685
- @if (state.showValueLabels && !state.combinedLabelDisplay) {
2686
- <div [auUse]="[widget.directives.handleLabelDisplayDirective, {index: i}]">
2687
- <ng-template [auSlot]="state.label" [auSlotProps]="{state, widget, value: state.values[i]}"></ng-template>
2789
+ @for (item of state.sortedHandles(); track item.id; let i = $index) {
2790
+ <ng-template [auSlot]="state.handle()" [auSlotProps]="{state, api, directives, item}"></ng-template>
2791
+ @if (state.showValueLabels() && !state.combinedLabelDisplay()) {
2792
+ <div [auUse]="[directives.handleLabelDisplayDirective, {index: i}]">
2793
+ <ng-template [auSlot]="state.label()" [auSlotProps]="{state, api, directives, value: state.values()[i]}"></ng-template>
2688
2794
  </div>
2689
2795
  }
2690
2796
  }
@@ -2695,20 +2801,25 @@ class SliderDefaultStructureSlotComponent {
2695
2801
  type: ViewChild,
2696
2802
  args: ['structure', { static: true }]
2697
2803
  }] }); })();
2698
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SliderDefaultStructureSlotComponent, { className: "SliderDefaultStructureSlotComponent", filePath: "components/slider/slider.component.ts", lineNumber: 123 }); })();
2804
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SliderDefaultStructureSlotComponent, { className: "SliderDefaultStructureSlotComponent", filePath: "components/slider/slider.component.ts", lineNumber: 127 }); })();
2805
+ /**
2806
+ * Represents the default slot structure for the slider component.
2807
+ */
2699
2808
  const sliderDefaultSlotStructure = new ComponentTemplate(SliderDefaultStructureSlotComponent, 'structure');
2700
- const defaultConfig$2 = {
2701
- structure: sliderDefaultSlotStructure,
2702
- handle: sliderDefaultSlotHandle,
2703
- };
2809
+ /**
2810
+ * SliderComponent is an Angular component that extends the BaseWidgetDirective
2811
+ * to provide a customizable slider widget. This component allows for various
2812
+ * configurations and customizations through its inputs and outputs.
2813
+ */
2704
2814
  class SliderComponent extends BaseWidgetDirective {
2705
2815
  constructor() {
2706
- super(...arguments);
2707
- this.defaultSlots = writable(defaultConfig$2);
2708
- this._widget = callWidgetFactory({
2816
+ super(callWidgetFactory({
2709
2817
  factory: export_createSlider,
2710
2818
  widgetName: 'slider',
2711
- defaultConfig: this.defaultSlots,
2819
+ defaultConfig: {
2820
+ structure: sliderDefaultSlotStructure,
2821
+ handle: sliderDefaultSlotHandle,
2822
+ },
2712
2823
  events: {
2713
2824
  onValuesChange: (event) => {
2714
2825
  this.onChange(event);
@@ -2716,10 +2827,15 @@ class SliderComponent extends BaseWidgetDirective {
2716
2827
  this.valuesChange.emit(event);
2717
2828
  },
2718
2829
  },
2719
- afterInit: () => {
2720
- useDirectiveForHost(this._widget.directives.sliderDirective);
2830
+ afterInit: (widget) => {
2831
+ useDirectiveForHost(widget.directives.sliderDirective);
2721
2832
  },
2722
- });
2833
+ slotTemplates: () => ({
2834
+ structure: this.slotStructureFromContent?.templateRef,
2835
+ handle: this.slotHandleFromContent?.templateRef,
2836
+ label: this.slotLabelFromContent?.templateRef,
2837
+ }),
2838
+ }));
2723
2839
  /**
2724
2840
  * An event emitted when slider values are changed
2725
2841
  *
@@ -2745,32 +2861,25 @@ class SliderComponent extends BaseWidgetDirective {
2745
2861
  }
2746
2862
  writeValue(value) {
2747
2863
  if (Array.isArray(value)) {
2748
- this._widget.patch({
2864
+ this['_widget'].patch({
2749
2865
  values: value,
2750
2866
  });
2751
2867
  }
2752
2868
  else {
2753
- this._widget.patch({
2869
+ this['_widget'].patch({
2754
2870
  values: [value],
2755
2871
  });
2756
2872
  }
2757
2873
  }
2758
2874
  setDisabledState(isDisabled) {
2759
- this._widget.patch({
2875
+ this['_widget'].patch({
2760
2876
  disabled: isDisabled,
2761
2877
  });
2762
2878
  }
2763
2879
  handleBlur() {
2764
2880
  this.onTouched();
2765
2881
  }
2766
- ngAfterContentChecked() {
2767
- this._widget.patchSlots({
2768
- structure: this.slotStructureFromContent?.templateRef,
2769
- handle: this.slotHandleFromContent?.templateRef,
2770
- label: this.slotLabelFromContent?.templateRef,
2771
- });
2772
- }
2773
- static { this.ɵfac = /*@__PURE__*/ (() => { let ɵSliderComponent_BaseFactory; return function SliderComponent_Factory(t) { return (ɵSliderComponent_BaseFactory || (ɵSliderComponent_BaseFactory = i0.ɵɵgetInheritedFactory(SliderComponent)))(t || SliderComponent); }; })(); }
2882
+ static { this.ɵfac = function SliderComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SliderComponent)(); }; }
2774
2883
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SliderComponent, selectors: [["", "auSlider", ""]], contentQueries: function SliderComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
2775
2884
  i0.ɵɵcontentQuery(dirIndex, SliderLabelDirective, 5);
2776
2885
  i0.ɵɵcontentQuery(dirIndex, SliderStructureDirective, 5);
@@ -2782,10 +2891,10 @@ class SliderComponent extends BaseWidgetDirective {
2782
2891
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotHandleFromContent = _t.first);
2783
2892
  } }, hostBindings: function SliderComponent_HostBindings(rf, ctx) { if (rf & 1) {
2784
2893
  i0.ɵɵlistener("blur", function SliderComponent_blur_HostBindingHandler() { return ctx.handleBlur(); });
2785
- } }, inputs: { className: [0, "auClassName", "className"], min: [2, "auMin", "min", auNumberAttribute], max: [2, "auMax", "max", auNumberAttribute], stepSize: [2, "auStepSize", "stepSize", auNumberAttribute], values: [0, "auValues", "values"], rtl: [2, "auRtl", "rtl", auBooleanAttribute], showValueLabels: [2, "auShowValueLabels", "showValueLabels", auBooleanAttribute], showMinMaxLabels: [2, "auShowMinMaxLabels", "showMinMaxLabels", auBooleanAttribute], ariaLabelHandle: [0, "auAriaLabelHandle", "ariaLabelHandle"], ariaValueText: [0, "auAriaValueText", "ariaValueText"], readonly: [2, "auReadonly", "readonly", auBooleanAttribute], disabled: [2, "auDisabled", "disabled", auBooleanAttribute], vertical: [2, "auVertical", "vertical", auBooleanAttribute], label: [0, "auLabel", "label"], structure: [0, "auStructure", "structure"], handle: [0, "auHandle", "handle"] }, outputs: { valuesChange: "auValuesChange" }, standalone: true, features: [i0.ɵɵProvidersFeature([{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => SliderComponent), multi: true }]), i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c8, decls: 1, vars: 5, consts: [[3, "auSlot", "auSlotProps"]], template: function SliderComponent_Template(rf, ctx) { if (rf & 1) {
2894
+ } }, inputs: { className: [0, "auClassName", "className"], min: [2, "auMin", "min", auNumberAttribute], max: [2, "auMax", "max", auNumberAttribute], stepSize: [2, "auStepSize", "stepSize", auNumberAttribute], values: [0, "auValues", "values"], rtl: [2, "auRtl", "rtl", auBooleanAttribute], showValueLabels: [2, "auShowValueLabels", "showValueLabels", auBooleanAttribute], showMinMaxLabels: [2, "auShowMinMaxLabels", "showMinMaxLabels", auBooleanAttribute], ariaLabelHandle: [0, "auAriaLabelHandle", "ariaLabelHandle"], ariaValueText: [0, "auAriaValueText", "ariaValueText"], readonly: [2, "auReadonly", "readonly", auBooleanAttribute], disabled: [2, "auDisabled", "disabled", auBooleanAttribute], vertical: [2, "auVertical", "vertical", auBooleanAttribute], label: [0, "auLabel", "label"], structure: [0, "auStructure", "structure"], handle: [0, "auHandle", "handle"] }, outputs: { valuesChange: "auValuesChange" }, standalone: true, features: [i0.ɵɵProvidersFeature([{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => SliderComponent), multi: true }]), i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c8, decls: 1, vars: 6, consts: [[3, "auSlot", "auSlotProps"]], template: function SliderComponent_Template(rf, ctx) { if (rf & 1) {
2786
2895
  i0.ɵɵtemplate(0, SliderComponent_ng_template_0_Template, 0, 0, "ng-template", 0);
2787
2896
  } if (rf & 2) {
2788
- i0.ɵɵproperty("auSlot", ctx.state().structure)("auSlotProps", i0.ɵɵpureFunction2(2, _c9, ctx.state(), ctx.widget));
2897
+ i0.ɵɵproperty("auSlot", ctx.state.structure())("auSlotProps", i0.ɵɵpureFunction3(2, _c9, ctx.state, ctx.api, ctx.directives));
2789
2898
  } }, dependencies: [SlotDirective], encapsulation: 2, changeDetection: 0 }); }
2790
2899
  }
2791
2900
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SliderComponent, [{
@@ -2800,9 +2909,9 @@ class SliderComponent extends BaseWidgetDirective {
2800
2909
  host: {
2801
2910
  '(blur)': 'handleBlur()',
2802
2911
  },
2803
- template: ` <ng-template [auSlot]="state().structure" [auSlotProps]="{state: state(), widget}"></ng-template> `,
2912
+ template: ` <ng-template [auSlot]="state.structure()" [auSlotProps]="{state, api, directives}"></ng-template> `,
2804
2913
  }]
2805
- }], null, { className: [{
2914
+ }], () => [], { className: [{
2806
2915
  type: Input,
2807
2916
  args: ['auClassName']
2808
2917
  }], min: [{
@@ -2863,7 +2972,7 @@ class SliderComponent extends BaseWidgetDirective {
2863
2972
  type: ContentChild,
2864
2973
  args: [SliderHandleDirective, { static: false }]
2865
2974
  }] }); })();
2866
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SliderComponent, { className: "SliderComponent", filePath: "components/slider/slider.component.ts", lineNumber: 147 }); })();
2975
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SliderComponent, { className: "SliderComponent", filePath: "components/slider/slider.component.ts", lineNumber: 153 }); })();
2867
2976
 
2868
2977
  /**
2869
2978
  * Retrieve a shallow copy of the default Progressbar config
@@ -2878,7 +2987,7 @@ const export_getProgressbarDefaultConfig = getProgressbarDefaultConfig;
2878
2987
  const export_createProgressbar = createProgressbar;
2879
2988
 
2880
2989
  const _c0$1 = ["structure"];
2881
- const _c1$1 = (a0, a1) => ({ state: a0, widget: a1 });
2990
+ const _c1$1 = (a0, a1, a2) => ({ state: a0, api: a1, directives: a2 });
2882
2991
  function ProgressbarDefaultSlotsComponent_ng_template_0_ng_template_2_Template(rf, ctx) { }
2883
2992
  function ProgressbarDefaultSlotsComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
2884
2993
  i0.ɵɵelementStart(0, "div", 2)(1, "div", 3);
@@ -2886,21 +2995,46 @@ function ProgressbarDefaultSlotsComponent_ng_template_0_Template(rf, ctx) { if (
2886
2995
  i0.ɵɵelementEnd()();
2887
2996
  } if (rf & 2) {
2888
2997
  const state_r1 = ctx.state;
2889
- const widget_r2 = ctx.widget;
2890
- i0.ɵɵstyleProp("height", state_r1.height);
2998
+ const api_r2 = ctx.api;
2999
+ const directives_r3 = ctx.directives;
3000
+ i0.ɵɵstyleProp("height", state_r1.height());
2891
3001
  i0.ɵɵadvance();
2892
- i0.ɵɵstyleProp("width", state_r1.percentage, "%");
2893
- i0.ɵɵclassProp("progress-bar-striped", state_r1.striped)("progress-bar-animated", state_r1.animated);
2894
- i0.ɵɵproperty("ngClass", state_r1.type ? "text-bg-" + state_r1.type : undefined);
3002
+ i0.ɵɵstyleProp("width", state_r1.percentage(), "%");
3003
+ i0.ɵɵclassProp("progress-bar-striped", state_r1.striped())("progress-bar-animated", state_r1.animated());
3004
+ i0.ɵɵproperty("ngClass", state_r1.type() ? "text-bg-" + state_r1.type() : undefined);
2895
3005
  i0.ɵɵadvance();
2896
- i0.ɵɵproperty("auSlot", state_r1.children)("auSlotProps", i0.ɵɵpureFunction2(11, _c1$1, state_r1, widget_r2));
3006
+ i0.ɵɵproperty("auSlot", state_r1.children())("auSlotProps", i0.ɵɵpureFunction3(11, _c1$1, state_r1, api_r2, directives_r3));
2897
3007
  } }
2898
- const _c2$1 = ["auProgressbar", ""];
2899
- const _c3$1 = ["*"];
3008
+ const _c2$1 = ["content"];
3009
+ const _c3$1 = ["auProgressbar", ""];
3010
+ const _c4$1 = ["*"];
2900
3011
  function ProgressbarComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
2901
3012
  i0.ɵɵprojection(0);
2902
3013
  } }
2903
- function ProgressbarComponent_ng_template_1_Template(rf, ctx) { }
3014
+ function ProgressbarComponent_ng_template_2_Template(rf, ctx) { }
3015
+ /**
3016
+ * Directive that provides a template reference for the progress bar context.
3017
+ * This directive provides a template reference for the {@link ProgressbarContext}.
3018
+ */
3019
+ class ProgressbarBodyDirective {
3020
+ constructor() {
3021
+ this.templateRef = inject((TemplateRef));
3022
+ }
3023
+ static ngTemplateContextGuard(_dir, context) {
3024
+ return true;
3025
+ }
3026
+ static { this.ɵfac = function ProgressbarBodyDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ProgressbarBodyDirective)(); }; }
3027
+ static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: ProgressbarBodyDirective, selectors: [["ng-template", "auProgressbarBody", ""]], standalone: true }); }
3028
+ }
3029
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ProgressbarBodyDirective, [{
3030
+ type: Directive,
3031
+ args: [{ selector: 'ng-template[auProgressbarBody]', standalone: true }]
3032
+ }], null, null); })();
3033
+ /**
3034
+ * Directive to define the structure of a progress bar.
3035
+ *
3036
+ * This directive provides a template reference for the {@link ProgressbarContext}.
3037
+ */
2904
3038
  class ProgressbarStructureDirective {
2905
3039
  constructor() {
2906
3040
  this.templateRef = inject((TemplateRef));
@@ -2908,7 +3042,7 @@ class ProgressbarStructureDirective {
2908
3042
  static ngTemplateContextGuard(_dir, context) {
2909
3043
  return true;
2910
3044
  }
2911
- static { this.ɵfac = function ProgressbarStructureDirective_Factory(t) { return new (t || ProgressbarStructureDirective)(); }; }
3045
+ static { this.ɵfac = function ProgressbarStructureDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ProgressbarStructureDirective)(); }; }
2912
3046
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: ProgressbarStructureDirective, selectors: [["ng-template", "auProgressbarStructure", ""]], standalone: true }); }
2913
3047
  }
2914
3048
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ProgressbarStructureDirective, [{
@@ -2916,14 +3050,14 @@ class ProgressbarStructureDirective {
2916
3050
  args: [{ selector: 'ng-template[auProgressbarStructure]', standalone: true }]
2917
3051
  }], null, null); })();
2918
3052
  class ProgressbarDefaultSlotsComponent {
2919
- static { this.ɵfac = function ProgressbarDefaultSlotsComponent_Factory(t) { return new (t || ProgressbarDefaultSlotsComponent)(); }; }
3053
+ static { this.ɵfac = function ProgressbarDefaultSlotsComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ProgressbarDefaultSlotsComponent)(); }; }
2920
3054
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ProgressbarDefaultSlotsComponent, selectors: [["ng-component"]], viewQuery: function ProgressbarDefaultSlotsComponent_Query(rf, ctx) { if (rf & 1) {
2921
3055
  i0.ɵɵviewQuery(_c0$1, 7);
2922
3056
  } if (rf & 2) {
2923
3057
  let _t;
2924
3058
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.structure = _t.first);
2925
3059
  } }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 2, vars: 0, consts: [["structure", ""], ["auProgressbarStructure", ""], [1, "progress"], [1, "progress-bar", 3, "ngClass"], [3, "auSlot", "auSlotProps"]], template: function ProgressbarDefaultSlotsComponent_Template(rf, ctx) { if (rf & 1) {
2926
- i0.ɵɵtemplate(0, ProgressbarDefaultSlotsComponent_ng_template_0_Template, 3, 14, "ng-template", 1, 0, i0.ɵɵtemplateRefExtractor);
3060
+ i0.ɵɵtemplate(0, ProgressbarDefaultSlotsComponent_ng_template_0_Template, 3, 15, "ng-template", 1, 0, i0.ɵɵtemplateRefExtractor);
2927
3061
  } }, dependencies: [NgClass, SlotDirective, ProgressbarStructureDirective], encapsulation: 2, changeDetection: 0 }); }
2928
3062
  }
2929
3063
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ProgressbarDefaultSlotsComponent, [{
@@ -2933,16 +3067,16 @@ class ProgressbarDefaultSlotsComponent {
2933
3067
  changeDetection: ChangeDetectionStrategy.OnPush,
2934
3068
  imports: [NgClass, SlotDirective, ProgressbarStructureDirective],
2935
3069
  template: `
2936
- <ng-template auProgressbarStructure #structure let-state="state" let-widget="widget">
2937
- <div class="progress" [style.height]="state.height">
3070
+ <ng-template auProgressbarStructure #structure let-state="state" let-api="api" let-directives="directives">
3071
+ <div class="progress" [style.height]="state.height()">
2938
3072
  <div
2939
3073
  class="progress-bar"
2940
- [class.progress-bar-striped]="state.striped"
2941
- [class.progress-bar-animated]="state.animated"
2942
- [ngClass]="state.type ? 'text-bg-' + state.type : undefined"
2943
- [style.width.%]="state.percentage"
3074
+ [class.progress-bar-striped]="state.striped()"
3075
+ [class.progress-bar-animated]="state.animated()"
3076
+ [ngClass]="state.type() ? 'text-bg-' + state.type() : undefined"
3077
+ [style.width.%]="state.percentage()"
2944
3078
  >
2945
- <ng-template [auSlot]="state.children" [auSlotProps]="{state, widget}"></ng-template>
3079
+ <ng-template [auSlot]="state.children()" [auSlotProps]="{state, api, directives}"></ng-template>
2946
3080
  </div>
2947
3081
  </div>
2948
3082
  </ng-template>
@@ -2952,63 +3086,72 @@ class ProgressbarDefaultSlotsComponent {
2952
3086
  type: ViewChild,
2953
3087
  args: ['structure', { static: true }]
2954
3088
  }] }); })();
2955
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProgressbarDefaultSlotsComponent, { className: "ProgressbarDefaultSlotsComponent", filePath: "components/progressbar/progressbar.component.ts", lineNumber: 49 }); })();
3089
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProgressbarDefaultSlotsComponent, { className: "ProgressbarDefaultSlotsComponent", filePath: "components/progressbar/progressbar.component.ts", lineNumber: 63 }); })();
3090
+ /**
3091
+ * Represents the default slot structure for the progress bar component.
3092
+ */
2956
3093
  const progressbarDefaultSlotStructure = new ComponentTemplate(ProgressbarDefaultSlotsComponent, 'structure');
2957
- const defaultConfig$1 = {
2958
- structure: progressbarDefaultSlotStructure,
2959
- };
3094
+ /**
3095
+ * ProgressbarComponent is a UI component that extends the BaseWidgetDirective
3096
+ * to create a customizable progress bar widget. It provides various inputs
3097
+ * to configure the appearance and behavior of the progress bar.
3098
+ *
3099
+ */
2960
3100
  class ProgressbarComponent extends BaseWidgetDirective {
2961
3101
  constructor() {
2962
- super(...arguments);
2963
- this.defaultSlots = writable(defaultConfig$1);
2964
- this._widget = callWidgetFactory({
3102
+ super(callWidgetFactory({
2965
3103
  factory: export_createProgressbar,
2966
3104
  widgetName: 'progressbar',
2967
- defaultConfig: this.defaultSlots,
2968
- afterInit: () => {
2969
- useDirectiveForHost(this._widget.directives.ariaDirective);
3105
+ defaultConfig: {
3106
+ structure: progressbarDefaultSlotStructure,
2970
3107
  },
2971
- });
2972
- }
2973
- ngAfterContentChecked() {
2974
- this._widget.patchSlots({
2975
- children: undefined,
2976
- structure: this.slotStructureFromContent?.templateRef,
2977
- });
2978
- }
2979
- static { this.ɵfac = /*@__PURE__*/ (() => { let ɵProgressbarComponent_BaseFactory; return function ProgressbarComponent_Factory(t) { return (ɵProgressbarComponent_BaseFactory || (ɵProgressbarComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ProgressbarComponent)))(t || ProgressbarComponent); }; })(); }
3108
+ afterInit: (widget) => useDirectiveForHost(widget.directives.ariaDirective),
3109
+ slotTemplates: () => ({
3110
+ structure: this.slotStructureFromContent?.templateRef,
3111
+ children: this.slotDefaultFromContent?.templateRef,
3112
+ }),
3113
+ slotChildren: () => this.slotChildren,
3114
+ }));
3115
+ }
3116
+ static { this.ɵfac = function ProgressbarComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ProgressbarComponent)(); }; }
2980
3117
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ProgressbarComponent, selectors: [["", "auProgressbar", ""]], contentQueries: function ProgressbarComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
3118
+ i0.ɵɵcontentQuery(dirIndex, ProgressbarBodyDirective, 5);
2981
3119
  i0.ɵɵcontentQuery(dirIndex, ProgressbarStructureDirective, 5);
2982
3120
  } if (rf & 2) {
2983
3121
  let _t;
3122
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotDefaultFromContent = _t.first);
2984
3123
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotStructureFromContent = _t.first);
3124
+ } }, viewQuery: function ProgressbarComponent_Query(rf, ctx) { if (rf & 1) {
3125
+ i0.ɵɵviewQuery(_c2$1, 7);
3126
+ } if (rf & 2) {
3127
+ let _t;
3128
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotChildren = _t.first);
2985
3129
  } }, hostVars: 2, hostBindings: function ProgressbarComponent_HostBindings(rf, ctx) { if (rf & 2) {
2986
- i0.ɵɵclassMap(ctx.state().className);
2987
- } }, inputs: { ariaLabel: [0, "auAriaLabel", "ariaLabel"], min: [2, "auMin", "min", auNumberAttribute], max: [2, "auMax", "max", auNumberAttribute], value: [2, "auValue", "value", auNumberAttribute], className: [0, "auClassName", "className"], children: [0, "auChildren", "children"], structure: [0, "auStructure", "structure"], height: [0, "auHeight", "height"], animated: [2, "auAnimated", "animated", auBooleanAttribute], striped: [2, "auStriped", "striped", auBooleanAttribute], ariaValueTextFn: [0, "auAriaValueTextFn", "ariaValueTextFn"], type: [0, "auType", "type"] }, standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c2$1, ngContentSelectors: _c3$1, decls: 2, vars: 6, consts: [[3, "auContentAsSlot"], [3, "auSlot", "auSlotProps"]], template: function ProgressbarComponent_Template(rf, ctx) { if (rf & 1) {
3130
+ i0.ɵɵclassMap(ctx.state.className());
3131
+ } }, inputs: { ariaLabel: [0, "auAriaLabel", "ariaLabel"], min: [2, "auMin", "min", auNumberAttribute], max: [2, "auMax", "max", auNumberAttribute], value: [2, "auValue", "value", auNumberAttribute], className: [0, "auClassName", "className"], children: [0, "auChildren", "children"], structure: [0, "auStructure", "structure"], height: [0, "auHeight", "height"], animated: [2, "auAnimated", "animated", auBooleanAttribute], striped: [2, "auStriped", "striped", auBooleanAttribute], ariaValueTextFn: [0, "auAriaValueTextFn", "ariaValueTextFn"], type: [0, "auType", "type"] }, standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c3$1, ngContentSelectors: _c4$1, decls: 3, vars: 6, consts: [["content", ""], [3, "auSlot", "auSlotProps"]], template: function ProgressbarComponent_Template(rf, ctx) { if (rf & 1) {
2988
3132
  i0.ɵɵprojectionDef();
2989
- i0.ɵɵtemplate(0, ProgressbarComponent_ng_template_0_Template, 1, 0, "ng-template", 0)(1, ProgressbarComponent_ng_template_1_Template, 0, 0, "ng-template", 1);
3133
+ i0.ɵɵtemplate(0, ProgressbarComponent_ng_template_0_Template, 1, 0, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor)(2, ProgressbarComponent_ng_template_2_Template, 0, 0, "ng-template", 1);
2990
3134
  } if (rf & 2) {
2991
- i0.ɵɵproperty("auContentAsSlot", ctx.defaultSlots);
2992
- i0.ɵɵadvance();
2993
- i0.ɵɵproperty("auSlot", ctx.state().structure)("auSlotProps", i0.ɵɵpureFunction2(3, _c1$1, ctx.state(), ctx.widget));
2994
- } }, dependencies: [SlotDirective, ContentAsSlotDirective], encapsulation: 2, changeDetection: 0 }); }
3135
+ i0.ɵɵadvance(2);
3136
+ i0.ɵɵproperty("auSlot", ctx.state.structure())("auSlotProps", i0.ɵɵpureFunction3(2, _c1$1, ctx.state, ctx.api, ctx.directives));
3137
+ } }, dependencies: [SlotDirective], encapsulation: 2, changeDetection: 0 }); }
2995
3138
  }
2996
3139
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ProgressbarComponent, [{
2997
3140
  type: Component,
2998
3141
  args: [{
2999
3142
  selector: '[auProgressbar]',
3000
3143
  standalone: true,
3001
- imports: [SlotDirective, ContentAsSlotDirective],
3144
+ imports: [SlotDirective],
3002
3145
  changeDetection: ChangeDetectionStrategy.OnPush,
3003
3146
  host: {
3004
- '[class]': 'state().className',
3147
+ '[class]': 'state.className()',
3005
3148
  },
3006
3149
  template: `
3007
- <ng-template [auContentAsSlot]="defaultSlots"><ng-content></ng-content></ng-template>
3008
- <ng-template [auSlot]="state().structure" [auSlotProps]="{state: state(), widget}"></ng-template>
3150
+ <ng-template #content><ng-content></ng-content></ng-template>
3151
+ <ng-template [auSlot]="state.structure()" [auSlotProps]="{state, api, directives}"></ng-template>
3009
3152
  `,
3010
3153
  }]
3011
- }], null, { ariaLabel: [{
3154
+ }], () => [], { ariaLabel: [{
3012
3155
  type: Input,
3013
3156
  args: ['auAriaLabel']
3014
3157
  }], min: [{
@@ -3026,6 +3169,9 @@ class ProgressbarComponent extends BaseWidgetDirective {
3026
3169
  }], children: [{
3027
3170
  type: Input,
3028
3171
  args: ['auChildren']
3172
+ }], slotDefaultFromContent: [{
3173
+ type: ContentChild,
3174
+ args: [ProgressbarBodyDirective, { static: false }]
3029
3175
  }], structure: [{
3030
3176
  type: Input,
3031
3177
  args: ['auStructure']
@@ -3047,8 +3193,11 @@ class ProgressbarComponent extends BaseWidgetDirective {
3047
3193
  }], type: [{
3048
3194
  type: Input,
3049
3195
  args: ['auType']
3196
+ }], slotChildren: [{
3197
+ type: ViewChild,
3198
+ args: ['content', { static: true }]
3050
3199
  }] }); })();
3051
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProgressbarComponent, { className: "ProgressbarComponent", filePath: "components/progressbar/progressbar.component.ts", lineNumber: 73 }); })();
3200
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ProgressbarComponent, { className: "ProgressbarComponent", filePath: "components/progressbar/progressbar.component.ts", lineNumber: 91 }); })();
3052
3201
 
3053
3202
  /**
3054
3203
  * Retrieve a shallow copy of the default Toast config
@@ -3063,13 +3212,13 @@ const export_getToastDefaultConfig = getToastDefaultConfig;
3063
3212
  const export_createToast = createToast;
3064
3213
 
3065
3214
  const _c0 = ["structure"];
3066
- const _c1 = (a0, a1) => ({ state: a0, widget: a1 });
3215
+ const _c1 = (a0, a1, a2) => ({ state: a0, api: a1, directives: a2 });
3067
3216
  function ToastDefaultSlotsComponent_ng_template_0_Conditional_0_ng_template_1_Template(rf, ctx) { }
3068
3217
  function ToastDefaultSlotsComponent_ng_template_0_Conditional_0_Conditional_2_Template(rf, ctx) { if (rf & 1) {
3069
3218
  i0.ɵɵelement(0, "button", 6);
3070
3219
  } if (rf & 2) {
3071
- const widget_r1 = i0.ɵɵnextContext(2).widget;
3072
- i0.ɵɵproperty("auUse", widget_r1.directives.closeButtonDirective);
3220
+ const directives_r1 = i0.ɵɵnextContext(2).directives;
3221
+ i0.ɵɵproperty("auUse", directives_r1.closeButtonDirective);
3073
3222
  } }
3074
3223
  function ToastDefaultSlotsComponent_ng_template_0_Conditional_0_Template(rf, ctx) { if (rf & 1) {
3075
3224
  i0.ɵɵelementStart(0, "div", 2);
@@ -3078,88 +3227,103 @@ function ToastDefaultSlotsComponent_ng_template_0_Conditional_0_Template(rf, ctx
3078
3227
  } if (rf & 2) {
3079
3228
  const ctx_r1 = i0.ɵɵnextContext();
3080
3229
  const state_r3 = ctx_r1.state;
3081
- const widget_r1 = ctx_r1.widget;
3230
+ const api_r4 = ctx_r1.api;
3231
+ const directives_r1 = ctx_r1.directives;
3082
3232
  i0.ɵɵadvance();
3083
- i0.ɵɵproperty("auSlot", state_r3.header)("auSlotProps", i0.ɵɵpureFunction2(3, _c1, state_r3, widget_r1));
3233
+ i0.ɵɵproperty("auSlot", state_r3.header())("auSlotProps", i0.ɵɵpureFunction3(3, _c1, state_r3, api_r4, directives_r1));
3084
3234
  i0.ɵɵadvance();
3085
- i0.ɵɵconditional(state_r3.dismissible ? 2 : -1);
3235
+ i0.ɵɵconditional(state_r3.dismissible() ? 2 : -1);
3086
3236
  } }
3087
3237
  function ToastDefaultSlotsComponent_ng_template_0_ng_template_2_Template(rf, ctx) { }
3088
3238
  function ToastDefaultSlotsComponent_ng_template_0_Conditional_3_Template(rf, ctx) { if (rf & 1) {
3089
3239
  i0.ɵɵelement(0, "button", 5);
3090
3240
  } if (rf & 2) {
3091
- const widget_r1 = i0.ɵɵnextContext().widget;
3092
- i0.ɵɵproperty("auUse", widget_r1.directives.closeButtonDirective);
3241
+ const directives_r1 = i0.ɵɵnextContext().directives;
3242
+ i0.ɵɵproperty("auUse", directives_r1.closeButtonDirective);
3093
3243
  } }
3094
3244
  function ToastDefaultSlotsComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
3095
- i0.ɵɵtemplate(0, ToastDefaultSlotsComponent_ng_template_0_Conditional_0_Template, 3, 6, "div", 2);
3245
+ i0.ɵɵtemplate(0, ToastDefaultSlotsComponent_ng_template_0_Conditional_0_Template, 3, 7, "div", 2);
3096
3246
  i0.ɵɵelementStart(1, "div", 3);
3097
3247
  i0.ɵɵtemplate(2, ToastDefaultSlotsComponent_ng_template_0_ng_template_2_Template, 0, 0, "ng-template", 4);
3098
3248
  i0.ɵɵelementEnd();
3099
3249
  i0.ɵɵtemplate(3, ToastDefaultSlotsComponent_ng_template_0_Conditional_3_Template, 1, 1, "button", 5);
3100
3250
  } if (rf & 2) {
3101
3251
  const state_r3 = ctx.state;
3102
- const widget_r1 = ctx.widget;
3103
- i0.ɵɵconditional(state_r3.header ? 0 : -1);
3252
+ const api_r4 = ctx.api;
3253
+ const directives_r1 = ctx.directives;
3254
+ i0.ɵɵconditional(state_r3.header() ? 0 : -1);
3104
3255
  i0.ɵɵadvance(2);
3105
- i0.ɵɵproperty("auSlot", state_r3.children)("auSlotProps", i0.ɵɵpureFunction2(4, _c1, state_r3, widget_r1));
3256
+ i0.ɵɵproperty("auSlot", state_r3.children())("auSlotProps", i0.ɵɵpureFunction3(4, _c1, state_r3, api_r4, directives_r1));
3106
3257
  i0.ɵɵadvance();
3107
- i0.ɵɵconditional(state_r3.dismissible && !state_r3.header ? 3 : -1);
3258
+ i0.ɵɵconditional(state_r3.dismissible() && !state_r3.header() ? 3 : -1);
3108
3259
  } }
3109
- const _c2 = ["auToast", ""];
3110
- const _c3 = ["*"];
3111
- const _c4 = (a0, a1, a2) => [a0, a1, a2];
3260
+ const _c2 = ["content"];
3261
+ const _c3 = ["auToast", ""];
3262
+ const _c4 = ["*"];
3263
+ const _c5 = (a0, a1, a2) => [a0, a1, a2];
3112
3264
  function ToastComponent_ng_template_0_Template(rf, ctx) { if (rf & 1) {
3113
3265
  i0.ɵɵprojection(0);
3114
3266
  } }
3115
- function ToastComponent_Conditional_1_ng_template_1_Template(rf, ctx) { }
3116
- function ToastComponent_Conditional_1_Template(rf, ctx) { if (rf & 1) {
3267
+ function ToastComponent_Conditional_2_ng_template_1_Template(rf, ctx) { }
3268
+ function ToastComponent_Conditional_2_Template(rf, ctx) { if (rf & 1) {
3117
3269
  i0.ɵɵelementStart(0, "div", 2);
3118
- i0.ɵɵtemplate(1, ToastComponent_Conditional_1_ng_template_1_Template, 0, 0, "ng-template", 3);
3270
+ i0.ɵɵtemplate(1, ToastComponent_Conditional_2_ng_template_1_Template, 0, 0, "ng-template", 3);
3119
3271
  i0.ɵɵelementEnd();
3120
3272
  } if (rf & 2) {
3121
3273
  const ctx_r0 = i0.ɵɵnextContext();
3122
- i0.ɵɵclassProp("d-flex", !ctx_r0.state().header)("toast-dismissible", ctx_r0.state().dismissible);
3123
- i0.ɵɵproperty("auUseMulti", i0.ɵɵpureFunction3(7, _c4, ctx_r0.widget.directives.autoHideDirective, ctx_r0.widget.directives.transitionDirective, ctx_r0.widget.directives.bodyDirective));
3274
+ i0.ɵɵclassProp("d-flex", !ctx_r0.state.header())("toast-dismissible", ctx_r0.state.dismissible());
3275
+ i0.ɵɵproperty("auUseMulti", i0.ɵɵpureFunction3(7, _c5, ctx_r0.directives.autoHideDirective, ctx_r0.directives.transitionDirective, ctx_r0.directives.bodyDirective));
3124
3276
  i0.ɵɵadvance();
3125
- i0.ɵɵproperty("auSlot", ctx_r0.state().structure)("auSlotProps", i0.ɵɵpureFunction2(11, _c1, ctx_r0.state(), ctx_r0.widget));
3277
+ i0.ɵɵproperty("auSlot", ctx_r0.state.structure())("auSlotProps", i0.ɵɵpureFunction3(11, _c1, ctx_r0.state, ctx_r0.api, ctx_r0.directives));
3126
3278
  } }
3279
+ /**
3280
+ * Directive to represent the body of a toast notification.
3281
+ * This directive uses a template reference to render the {@link ToastContext}.
3282
+ */
3127
3283
  class ToastBodyDirective {
3128
3284
  constructor() {
3129
3285
  this.templateRef = inject((TemplateRef));
3130
3286
  }
3131
- static ngTemplateContextGuard(dir, context) {
3287
+ static ngTemplateContextGuard(_dir, context) {
3132
3288
  return true;
3133
3289
  }
3134
- static { this.ɵfac = function ToastBodyDirective_Factory(t) { return new (t || ToastBodyDirective)(); }; }
3290
+ static { this.ɵfac = function ToastBodyDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ToastBodyDirective)(); }; }
3135
3291
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: ToastBodyDirective, selectors: [["ng-template", "auToastBody", ""]], standalone: true }); }
3136
3292
  }
3137
3293
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToastBodyDirective, [{
3138
3294
  type: Directive,
3139
3295
  args: [{ selector: 'ng-template[auToastBody]', standalone: true }]
3140
3296
  }], null, null); })();
3297
+ /**
3298
+ * Directive to define the structure of a toast component.
3299
+ * This directive uses a template reference to render the {@link ToastContext}.
3300
+ */
3141
3301
  class ToastStructureDirective {
3142
3302
  constructor() {
3143
3303
  this.templateRef = inject((TemplateRef));
3144
3304
  }
3145
- static ngTemplateContextGuard(dir, context) {
3305
+ static ngTemplateContextGuard(_dir, context) {
3146
3306
  return true;
3147
3307
  }
3148
- static { this.ɵfac = function ToastStructureDirective_Factory(t) { return new (t || ToastStructureDirective)(); }; }
3308
+ static { this.ɵfac = function ToastStructureDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ToastStructureDirective)(); }; }
3149
3309
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: ToastStructureDirective, selectors: [["ng-template", "auToastStructure", ""]], standalone: true }); }
3150
3310
  }
3151
3311
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToastStructureDirective, [{
3152
3312
  type: Directive,
3153
3313
  args: [{ selector: 'ng-template[auToastStructure]', standalone: true }]
3154
3314
  }], null, null); })();
3315
+ /**
3316
+ * Directive representing the header of a toast component.
3317
+ * This directive uses a template reference to render the {@link ToastContext}.
3318
+ */
3155
3319
  class ToastHeaderDirective {
3156
3320
  constructor() {
3157
3321
  this.templateRef = inject((TemplateRef));
3158
3322
  }
3159
- static ngTemplateContextGuard(dir, context) {
3323
+ static ngTemplateContextGuard(_dir, context) {
3160
3324
  return true;
3161
3325
  }
3162
- static { this.ɵfac = function ToastHeaderDirective_Factory(t) { return new (t || ToastHeaderDirective)(); }; }
3326
+ static { this.ɵfac = function ToastHeaderDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ToastHeaderDirective)(); }; }
3163
3327
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: ToastHeaderDirective, selectors: [["ng-template", "auToastHeader", ""]], standalone: true }); }
3164
3328
  }
3165
3329
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToastHeaderDirective, [{
@@ -3167,14 +3331,14 @@ class ToastHeaderDirective {
3167
3331
  args: [{ selector: 'ng-template[auToastHeader]', standalone: true }]
3168
3332
  }], null, null); })();
3169
3333
  class ToastDefaultSlotsComponent {
3170
- static { this.ɵfac = function ToastDefaultSlotsComponent_Factory(t) { return new (t || ToastDefaultSlotsComponent)(); }; }
3334
+ static { this.ɵfac = function ToastDefaultSlotsComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ToastDefaultSlotsComponent)(); }; }
3171
3335
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ToastDefaultSlotsComponent, selectors: [["ng-component"]], viewQuery: function ToastDefaultSlotsComponent_Query(rf, ctx) { if (rf & 1) {
3172
3336
  i0.ɵɵviewQuery(_c0, 7);
3173
3337
  } if (rf & 2) {
3174
3338
  let _t;
3175
3339
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.structure = _t.first);
3176
3340
  } }, standalone: true, features: [i0.ɵɵStandaloneFeature], decls: 2, vars: 0, consts: [["structure", ""], ["auToastStructure", ""], [1, "toast-header"], [1, "toast-body"], [3, "auSlot", "auSlotProps"], [1, "btn-close", "btn-close-white", "me-2", "m-auto", 3, "auUse"], [1, "btn-close", "me-0", "ms-auto", 3, "auUse"]], template: function ToastDefaultSlotsComponent_Template(rf, ctx) { if (rf & 1) {
3177
- i0.ɵɵtemplate(0, ToastDefaultSlotsComponent_ng_template_0_Template, 4, 7, "ng-template", 1, 0, i0.ɵɵtemplateRefExtractor);
3341
+ i0.ɵɵtemplate(0, ToastDefaultSlotsComponent_ng_template_0_Template, 4, 8, "ng-template", 1, 0, i0.ɵɵtemplateRefExtractor);
3178
3342
  } }, dependencies: [SlotDirective, ToastStructureDirective, UseDirective], encapsulation: 2, changeDetection: 0 }); }
3179
3343
  }
3180
3344
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToastDefaultSlotsComponent, [{
@@ -3183,20 +3347,20 @@ class ToastDefaultSlotsComponent {
3183
3347
  standalone: true,
3184
3348
  changeDetection: ChangeDetectionStrategy.OnPush,
3185
3349
  imports: [SlotDirective, ToastStructureDirective, UseDirective],
3186
- template: ` <ng-template auToastStructure #structure let-state="state" let-widget="widget">
3187
- @if (state.header) {
3350
+ template: ` <ng-template auToastStructure #structure let-state="state" let-api="api" let-directives="directives">
3351
+ @if (state.header()) {
3188
3352
  <div class="toast-header">
3189
- <ng-template [auSlot]="state.header" [auSlotProps]="{state, widget}"></ng-template>
3190
- @if (state.dismissible) {
3191
- <button class="btn-close me-0 ms-auto" [auUse]="widget.directives.closeButtonDirective"></button>
3353
+ <ng-template [auSlot]="state.header()" [auSlotProps]="{state, api, directives}"></ng-template>
3354
+ @if (state.dismissible()) {
3355
+ <button class="btn-close me-0 ms-auto" [auUse]="directives.closeButtonDirective"></button>
3192
3356
  }
3193
3357
  </div>
3194
3358
  }
3195
3359
  <div class="toast-body">
3196
- <ng-template [auSlot]="state.children" [auSlotProps]="{state, widget}"></ng-template>
3360
+ <ng-template [auSlot]="state.children()" [auSlotProps]="{state, api, directives}"></ng-template>
3197
3361
  </div>
3198
- @if (state.dismissible && !state.header) {
3199
- <button class="btn-close btn-close-white me-2 m-auto" [auUse]="widget.directives.closeButtonDirective"></button>
3362
+ @if (state.dismissible() && !state.header()) {
3363
+ <button class="btn-close btn-close-white me-2 m-auto" [auUse]="directives.closeButtonDirective"></button>
3200
3364
  }
3201
3365
  </ng-template>`,
3202
3366
  }]
@@ -3204,14 +3368,36 @@ class ToastDefaultSlotsComponent {
3204
3368
  type: ViewChild,
3205
3369
  args: ['structure', { static: true }]
3206
3370
  }] }); })();
3207
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ToastDefaultSlotsComponent, { className: "ToastDefaultSlotsComponent", filePath: "components/toast/toast.component.ts", lineNumber: 76 }); })();
3371
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ToastDefaultSlotsComponent, { className: "ToastDefaultSlotsComponent", filePath: "components/toast/toast.component.ts", lineNumber: 84 }); })();
3372
+ /**
3373
+ * Represents the default slot structure for the toast component.
3374
+ */
3208
3375
  const toastDefaultSlotStructure = new ComponentTemplate(ToastDefaultSlotsComponent, 'structure');
3209
- const defaultConfig = {
3210
- structure: toastDefaultSlotStructure,
3211
- };
3376
+ /**
3377
+ * The `ToastComponent` is a UI component that displays a toast notification.
3378
+ * It extends the `BaseWidgetDirective` and provides various configurable properties
3379
+ * and events to control the behavior and appearance of the toast.
3380
+ */
3212
3381
  class ToastComponent extends BaseWidgetDirective {
3213
3382
  constructor() {
3214
- super(...arguments);
3383
+ super(callWidgetFactory({
3384
+ factory: export_createToast,
3385
+ widgetName: 'toast',
3386
+ defaultConfig: {
3387
+ structure: toastDefaultSlotStructure,
3388
+ },
3389
+ events: {
3390
+ onVisibleChange: (event) => this.visibleChange.emit(event),
3391
+ onShown: () => this.shown.emit(),
3392
+ onHidden: () => this.hidden.emit(),
3393
+ },
3394
+ slotTemplates: () => ({
3395
+ children: this.slotDefaultFromContent?.templateRef,
3396
+ structure: this.slotStructureFromContent?.templateRef,
3397
+ header: this.slotHeaderFromContent?.templateRef,
3398
+ }),
3399
+ slotChildren: () => this.slotChildren,
3400
+ }));
3215
3401
  /**
3216
3402
  * Callback called when the alert visibility changed.
3217
3403
  *
@@ -3239,26 +3425,8 @@ class ToastComponent extends BaseWidgetDirective {
3239
3425
  * ```
3240
3426
  */
3241
3427
  this.shown = new EventEmitter();
3242
- this.defaultSlots = writable(defaultConfig);
3243
- this._widget = callWidgetFactory({
3244
- factory: export_createToast,
3245
- widgetName: 'toast',
3246
- defaultConfig: this.defaultSlots,
3247
- events: {
3248
- onVisibleChange: (event) => this.visibleChange.emit(event),
3249
- onShown: () => this.shown.emit(),
3250
- onHidden: () => this.hidden.emit(),
3251
- },
3252
- });
3253
3428
  }
3254
- ngAfterContentChecked() {
3255
- this._widget.patchSlots({
3256
- children: this.slotDefaultFromContent?.templateRef,
3257
- structure: this.slotStructureFromContent?.templateRef,
3258
- header: this.slotHeaderFromContent?.templateRef,
3259
- });
3260
- }
3261
- static { this.ɵfac = /*@__PURE__*/ (() => { let ɵToastComponent_BaseFactory; return function ToastComponent_Factory(t) { return (ɵToastComponent_BaseFactory || (ɵToastComponent_BaseFactory = i0.ɵɵgetInheritedFactory(ToastComponent)))(t || ToastComponent); }; })(); }
3429
+ static { this.ɵfac = function ToastComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ToastComponent)(); }; }
3262
3430
  static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ToastComponent, selectors: [["", "auToast", ""]], contentQueries: function ToastComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {
3263
3431
  i0.ɵɵcontentQuery(dirIndex, ToastBodyDirective, 5);
3264
3432
  i0.ɵɵcontentQuery(dirIndex, ToastStructureDirective, 5);
@@ -3268,14 +3436,18 @@ class ToastComponent extends BaseWidgetDirective {
3268
3436
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotDefaultFromContent = _t.first);
3269
3437
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotStructureFromContent = _t.first);
3270
3438
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotHeaderFromContent = _t.first);
3271
- } }, inputs: { dismissible: [2, "auDismissible", "dismissible", auBooleanAttribute], transition: [0, "auTransition", "transition"], visible: [2, "auVisible", "visible", auBooleanAttribute], animatedOnInit: [2, "auAnimatedOnInit", "animatedOnInit", auBooleanAttribute], animated: [2, "auAnimated", "animated", auBooleanAttribute], autoHide: [2, "auAutoHide", "autoHide", auBooleanAttribute], delay: [2, "auDelay", "delay", auNumberAttribute], ariaCloseButtonLabel: [0, "auAriaCloseButtonLabel", "ariaCloseButtonLabel"], children: [0, "auChildren", "children"], structure: [0, "auStructure", "structure"], header: [0, "auHeader", "header"], className: [0, "auClassName", "className"] }, outputs: { visibleChange: "auVisibleChange", hidden: "auHidden", shown: "auShown" }, standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c2, ngContentSelectors: _c3, decls: 2, vars: 2, consts: [[3, "auContentAsSlot"], [1, "toast", 3, "d-flex", "toast-dismissible", "auUseMulti"], [1, "toast", 3, "auUseMulti"], [3, "auSlot", "auSlotProps"]], template: function ToastComponent_Template(rf, ctx) { if (rf & 1) {
3439
+ } }, viewQuery: function ToastComponent_Query(rf, ctx) { if (rf & 1) {
3440
+ i0.ɵɵviewQuery(_c2, 7);
3441
+ } if (rf & 2) {
3442
+ let _t;
3443
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.slotChildren = _t.first);
3444
+ } }, inputs: { dismissible: [2, "auDismissible", "dismissible", auBooleanAttribute], transition: [0, "auTransition", "transition"], visible: [2, "auVisible", "visible", auBooleanAttribute], animatedOnInit: [2, "auAnimatedOnInit", "animatedOnInit", auBooleanAttribute], animated: [2, "auAnimated", "animated", auBooleanAttribute], autoHide: [2, "auAutoHide", "autoHide", auBooleanAttribute], delay: [2, "auDelay", "delay", auNumberAttribute], ariaCloseButtonLabel: [0, "auAriaCloseButtonLabel", "ariaCloseButtonLabel"], children: [0, "auChildren", "children"], structure: [0, "auStructure", "structure"], header: [0, "auHeader", "header"], className: [0, "auClassName", "className"] }, outputs: { visibleChange: "auVisibleChange", hidden: "auHidden", shown: "auShown" }, standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature, i0.ɵɵStandaloneFeature], attrs: _c3, ngContentSelectors: _c4, decls: 3, vars: 1, consts: [["content", ""], [1, "toast", 3, "d-flex", "toast-dismissible", "auUseMulti"], [1, "toast", 3, "auUseMulti"], [3, "auSlot", "auSlotProps"]], template: function ToastComponent_Template(rf, ctx) { if (rf & 1) {
3272
3445
  i0.ɵɵprojectionDef();
3273
- i0.ɵɵtemplate(0, ToastComponent_ng_template_0_Template, 1, 0, "ng-template", 0)(1, ToastComponent_Conditional_1_Template, 2, 14, "div", 1);
3446
+ i0.ɵɵtemplate(0, ToastComponent_ng_template_0_Template, 1, 0, "ng-template", null, 0, i0.ɵɵtemplateRefExtractor)(2, ToastComponent_Conditional_2_Template, 2, 15, "div", 1);
3274
3447
  } if (rf & 2) {
3275
- i0.ɵɵproperty("auContentAsSlot", ctx.defaultSlots);
3276
- i0.ɵɵadvance();
3277
- i0.ɵɵconditional(!ctx.state().hidden ? 1 : -1);
3278
- } }, dependencies: [SlotDirective, UseMultiDirective, ContentAsSlotDirective], encapsulation: 2, changeDetection: 0 }); }
3448
+ i0.ɵɵadvance(2);
3449
+ i0.ɵɵconditional(!ctx.state.hidden() ? 2 : -1);
3450
+ } }, dependencies: [SlotDirective, UseMultiDirective], encapsulation: 2, changeDetection: 0 }); }
3279
3451
  }
3280
3452
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToastComponent, [{
3281
3453
  type: Component,
@@ -3283,22 +3455,22 @@ class ToastComponent extends BaseWidgetDirective {
3283
3455
  selector: '[auToast]',
3284
3456
  standalone: true,
3285
3457
  changeDetection: ChangeDetectionStrategy.OnPush,
3286
- imports: [SlotDirective, UseMultiDirective, ContentAsSlotDirective],
3287
- template: ` <ng-template [auContentAsSlot]="defaultSlots">
3458
+ imports: [SlotDirective, UseMultiDirective],
3459
+ template: ` <ng-template #content>
3288
3460
  <ng-content></ng-content>
3289
3461
  </ng-template>
3290
- @if (!state().hidden) {
3462
+ @if (!state.hidden()) {
3291
3463
  <div
3292
3464
  class="toast"
3293
- [class.d-flex]="!state().header"
3294
- [class.toast-dismissible]="state().dismissible"
3295
- [auUseMulti]="[widget.directives.autoHideDirective, widget.directives.transitionDirective, widget.directives.bodyDirective]"
3465
+ [class.d-flex]="!state.header()"
3466
+ [class.toast-dismissible]="state.dismissible()"
3467
+ [auUseMulti]="[directives.autoHideDirective, directives.transitionDirective, directives.bodyDirective]"
3296
3468
  >
3297
- <ng-template [auSlot]="state().structure" [auSlotProps]="{state: state(), widget}"></ng-template>
3469
+ <ng-template [auSlot]="state.structure()" [auSlotProps]="{state, api, directives}"></ng-template>
3298
3470
  </div>
3299
3471
  }`,
3300
3472
  }]
3301
- }], null, { dismissible: [{
3473
+ }], () => [], { dismissible: [{
3302
3474
  type: Input,
3303
3475
  args: [{ alias: 'auDismissible', transform: auBooleanAttribute }]
3304
3476
  }], transition: [{
@@ -3352,8 +3524,107 @@ class ToastComponent extends BaseWidgetDirective {
3352
3524
  }], className: [{
3353
3525
  type: Input,
3354
3526
  args: ['auClassName']
3527
+ }], slotChildren: [{
3528
+ type: ViewChild,
3529
+ args: ['content', { static: true }]
3355
3530
  }] }); })();
3356
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ToastComponent, { className: "ToastComponent", filePath: "components/toast/toast.component.ts", lineNumber: 105 }); })();
3531
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ToastComponent, { className: "ToastComponent", filePath: "components/toast/toast.component.ts", lineNumber: 117 }); })();
3532
+
3533
+ /**
3534
+ * Directive to control the collapse behavior of an element.
3535
+ */
3536
+ class CollapseDirective extends BaseWidgetDirective {
3537
+ constructor() {
3538
+ super(callWidgetFactory({
3539
+ factory: createCollapse,
3540
+ widgetName: 'collapse',
3541
+ events: {
3542
+ onVisibleChange: (event) => this.visibleChange.emit(event),
3543
+ onShown: () => this.shown.emit(),
3544
+ onHidden: () => this.hidden.emit(),
3545
+ },
3546
+ afterInit: (widget) => {
3547
+ useDirectiveForHost(widget.directives.collapseDirective);
3548
+ },
3549
+ }));
3550
+ /**
3551
+ * Callback called when the collapse visibility changed.
3552
+ *
3553
+ * @defaultValue
3554
+ * ```ts
3555
+ * () => {}
3556
+ * ```
3557
+ */
3558
+ this.visibleChange = new EventEmitter();
3559
+ /**
3560
+ * Callback called when the collapse is hidden.
3561
+ *
3562
+ * @defaultValue
3563
+ * ```ts
3564
+ * () => {}
3565
+ * ```
3566
+ */
3567
+ this.hidden = new EventEmitter();
3568
+ /**
3569
+ * Callback called when the collapse is shown.
3570
+ *
3571
+ * @defaultValue
3572
+ * ```ts
3573
+ * () => {}
3574
+ * ```
3575
+ */
3576
+ this.shown = new EventEmitter();
3577
+ }
3578
+ static { this.ɵfac = function CollapseDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CollapseDirective)(); }; }
3579
+ static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: CollapseDirective, selectors: [["", "auCollapse", ""]], inputs: { animatedOnInit: [2, "auAnimatedOnInit", "animatedOnInit", auBooleanAttribute], animated: [2, "auAnimated", "animated", auBooleanAttribute], className: [0, "auClassName", "className"], horizontal: [2, "auHorizontal", "horizontal", auBooleanAttribute], visible: [2, "auVisible", "visible", auBooleanAttribute], id: [0, "auId", "id"] }, outputs: { visibleChange: "auVisibleChange", hidden: "auHidden", shown: "auShown" }, exportAs: ["auCollapse"], standalone: true, features: [i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature] }); }
3580
+ }
3581
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CollapseDirective, [{
3582
+ type: Directive,
3583
+ args: [{
3584
+ selector: '[auCollapse]',
3585
+ standalone: true,
3586
+ exportAs: 'auCollapse',
3587
+ }]
3588
+ }], () => [], { animatedOnInit: [{
3589
+ type: Input,
3590
+ args: [{ alias: 'auAnimatedOnInit', transform: auBooleanAttribute }]
3591
+ }], animated: [{
3592
+ type: Input,
3593
+ args: [{ alias: 'auAnimated', transform: auBooleanAttribute }]
3594
+ }], className: [{
3595
+ type: Input,
3596
+ args: ['auClassName']
3597
+ }], horizontal: [{
3598
+ type: Input,
3599
+ args: [{ alias: 'auHorizontal', transform: auBooleanAttribute }]
3600
+ }], visible: [{
3601
+ type: Input,
3602
+ args: [{ alias: 'auVisible', transform: auBooleanAttribute }]
3603
+ }], id: [{
3604
+ type: Input,
3605
+ args: ['auId']
3606
+ }], visibleChange: [{
3607
+ type: Output,
3608
+ args: ['auVisibleChange']
3609
+ }], hidden: [{
3610
+ type: Output,
3611
+ args: ['auHidden']
3612
+ }], shown: [{
3613
+ type: Output,
3614
+ args: ['auShown']
3615
+ }] }); })();
3616
+
3617
+ /**
3618
+ * Retrieve a shallow copy of the default collapse config
3619
+ * @returns the default collapse config
3620
+ */
3621
+ const export_getCollapseDefaultConfig = getCollapseDefaultConfig;
3622
+ /**
3623
+ * Create an CollapseWidget with given config props
3624
+ * @param config - an optional collapse config
3625
+ * @returns an CollapseWidget
3626
+ */
3627
+ const export_createCollapse = createCollapse;
3357
3628
 
3358
3629
  /* istanbul ignore next */
3359
3630
  const components = [
@@ -3394,13 +3665,15 @@ const components = [
3394
3665
  SliderStructureDirective,
3395
3666
  ProgressbarComponent,
3396
3667
  ProgressbarStructureDirective,
3668
+ ProgressbarBodyDirective,
3397
3669
  ToastComponent,
3398
3670
  ToastStructureDirective,
3399
3671
  ToastBodyDirective,
3400
3672
  ToastHeaderDirective,
3673
+ CollapseDirective,
3401
3674
  ];
3402
3675
  class AgnosUIAngularModule {
3403
- static { this.ɵfac = function AgnosUIAngularModule_Factory(t) { return new (t || AgnosUIAngularModule)(); }; }
3676
+ static { this.ɵfac = function AgnosUIAngularModule_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || AgnosUIAngularModule)(); }; }
3404
3677
  static { this.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: AgnosUIAngularModule }); }
3405
3678
  static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({}); }
3406
3679
  }
@@ -3449,10 +3722,12 @@ class AgnosUIAngularModule {
3449
3722
  SliderStructureDirective,
3450
3723
  ProgressbarComponent,
3451
3724
  ProgressbarStructureDirective,
3725
+ ProgressbarBodyDirective,
3452
3726
  ToastComponent,
3453
3727
  ToastStructureDirective,
3454
3728
  ToastBodyDirective,
3455
- ToastHeaderDirective], exports: [SlotDirective,
3729
+ ToastHeaderDirective,
3730
+ CollapseDirective], exports: [SlotDirective,
3456
3731
  SelectComponent,
3457
3732
  SelectBadgeLabelDirective,
3458
3733
  SelectItemLabelDirective,
@@ -3489,11 +3764,16 @@ class AgnosUIAngularModule {
3489
3764
  SliderStructureDirective,
3490
3765
  ProgressbarComponent,
3491
3766
  ProgressbarStructureDirective,
3767
+ ProgressbarBodyDirective,
3492
3768
  ToastComponent,
3493
3769
  ToastStructureDirective,
3494
3770
  ToastBodyDirective,
3495
- ToastHeaderDirective] }); })();
3771
+ ToastHeaderDirective,
3772
+ CollapseDirective] }); })();
3496
3773
 
3774
+ /**
3775
+ * Service to handle the opening and management of modal components.
3776
+ */
3497
3777
  class ModalService {
3498
3778
  constructor() {
3499
3779
  this._injector = inject(Injector);
@@ -3506,8 +3786,7 @@ class ModalService {
3506
3786
  });
3507
3787
  const subscriptions = [];
3508
3788
  try {
3509
- for (const prop of Object.keys(options)) {
3510
- const value = options[prop];
3789
+ for (const [prop, value] of Object.entries(options)) {
3511
3790
  if (prop.startsWith('on')) {
3512
3791
  const eventName = `${prop[2].toLowerCase()}${prop.substring(3)}`;
3513
3792
  const eventEmitter = component.instance[eventName];
@@ -3520,7 +3799,7 @@ class ModalService {
3520
3799
  }
3521
3800
  }
3522
3801
  this._applicationRef.attachView(component.hostView);
3523
- await component.instance._widget.initialized;
3802
+ await component.instance['_widget'].initialized;
3524
3803
  return await component.instance.api.open();
3525
3804
  }
3526
3805
  finally {
@@ -3530,7 +3809,7 @@ class ModalService {
3530
3809
  }
3531
3810
  }
3532
3811
  }
3533
- static { this.ɵfac = function ModalService_Factory(t) { return new (t || ModalService)(); }; }
3812
+ static { this.ɵfac = function ModalService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ModalService)(); }; }
3534
3813
  static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ModalService, factory: ModalService.ɵfac, providedIn: 'root' }); }
3535
3814
  }
3536
3815
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ModalService, [{
@@ -3546,5 +3825,5 @@ class ModalService {
3546
3825
  * Generated bundle index. Do not edit.
3547
3826
  */
3548
3827
 
3549
- export { AccordionBodyDirective, AccordionDirective, AccordionHeaderDirective, AccordionItemComponent, AccordionItemDefaultSlotsComponent, AccordionItemStructureDirective, AgnosUIAngularModule, AlertBodyDirective, AlertComponent, AlertDefaultSlotsComponent, AlertStructureDirective, ModalBodyDirective, ModalComponent, ModalDefaultSlotsComponent, ModalFooterDirective, ModalHeaderDirective, ModalService, ModalStructureDirective, ModalTitleDirective, PaginationComponent, PaginationDefaultSlotsComponent, PaginationEllipsisDirective, PaginationFirstDirective, PaginationLastDirective, PaginationNextDirective, PaginationNumberDirective, PaginationPagesDirective, PaginationPreviousDirective, PaginationStructureDirective, ProgressbarComponent, ProgressbarDefaultSlotsComponent, ProgressbarStructureDirective, RatingComponent, RatingStarDirective, SelectBadgeLabelDirective, SelectComponent, SelectItemLabelDirective, SliderComponent, SliderDefaultHandleSlotComponent, SliderDefaultStructureSlotComponent, SliderHandleDirective, SliderLabelDirective, SliderStructureDirective, ToastBodyDirective, ToastComponent, ToastDefaultSlotsComponent, ToastHeaderDirective, ToastStructureDirective, accordionItemDefaultSlotItemStructure, alertDefaultSlotStructure, callWidgetFactory, export_createAccordion as createAccordion, export_createAccordionItem as createAccordionItem, export_createAlert as createAlert, export_createModal as createModal, export_createPagination as createPagination, export_createProgressbar as createProgressbar, export_createRating as createRating, export_createSelect as createSelect, export_createSlider as createSlider, export_createToast as createToast, export_factoryCreateAccordion as factoryCreateAccordion, export_getAccordionDefaultConfig as getAccordionDefaultConfig, export_getAlertDefaultConfig as getAlertDefaultConfig, export_getModalDefaultConfig as getModalDefaultConfig, export_getPaginationDefaultConfig as getPaginationDefaultConfig, export_getProgressbarDefaultConfig as getProgressbarDefaultConfig, export_getRatingDefaultConfig as getRatingDefaultConfig, export_getSelectDefaultConfig as getSelectDefaultConfig, export_getSliderDefaultConfig as getSliderDefaultConfig, export_getToastDefaultConfig as getToastDefaultConfig, injectWidgetConfig, injectWidgetsConfig, export_modalCloseButtonClick as modalCloseButtonClick, modalDefaultSlotHeader, modalDefaultSlotStructure, export_modalOutsideClick as modalOutsideClick, paginationDefaultSlotPages, paginationDefaultSlotStructure, progressbarDefaultSlotStructure, provideWidgetsConfig, sliderDefaultSlotHandle, sliderDefaultSlotStructure, toastDefaultSlotStructure, widgetsConfigInjectionToken };
3828
+ export { AccordionBodyDirective, AccordionDirective, AccordionHeaderDirective, AccordionItemComponent, AccordionItemStructureDirective, AgnosUIAngularModule, AlertBodyDirective, AlertComponent, AlertStructureDirective, CollapseDirective, ModalBodyDirective, ModalComponent, ModalFooterDirective, ModalHeaderDirective, ModalService, ModalStructureDirective, ModalTitleDirective, PaginationComponent, PaginationEllipsisDirective, PaginationFirstDirective, PaginationLastDirective, PaginationNextDirective, PaginationNumberDirective, PaginationPagesDirective, PaginationPreviousDirective, PaginationStructureDirective, ProgressbarBodyDirective, ProgressbarComponent, ProgressbarStructureDirective, RatingComponent, RatingStarDirective, SelectBadgeLabelDirective, SelectComponent, SelectItemLabelDirective, SliderComponent, SliderHandleDirective, SliderLabelDirective, SliderStructureDirective, ToastBodyDirective, ToastComponent, ToastHeaderDirective, ToastStructureDirective, accordionItemDefaultSlotStructure, alertDefaultSlotStructure, callWidgetFactory, export_createAccordion as createAccordion, export_createAccordionItem as createAccordionItem, export_createAlert as createAlert, export_createCollapse as createCollapse, export_createModal as createModal, export_createPagination as createPagination, export_createProgressbar as createProgressbar, export_createRating as createRating, export_createSelect as createSelect, export_createSlider as createSlider, export_createToast as createToast, export_factoryCreateAccordion as factoryCreateAccordion, export_getAccordionDefaultConfig as getAccordionDefaultConfig, export_getAlertDefaultConfig as getAlertDefaultConfig, export_getCollapseDefaultConfig as getCollapseDefaultConfig, export_getModalDefaultConfig as getModalDefaultConfig, export_getPaginationDefaultConfig as getPaginationDefaultConfig, export_getProgressbarDefaultConfig as getProgressbarDefaultConfig, export_getRatingDefaultConfig as getRatingDefaultConfig, export_getSelectDefaultConfig as getSelectDefaultConfig, export_getSliderDefaultConfig as getSliderDefaultConfig, export_getToastDefaultConfig as getToastDefaultConfig, injectWidgetConfig, injectWidgetsConfig, export_modalCloseButtonClick as modalCloseButtonClick, modalDefaultSlotHeader, modalDefaultSlotStructure, export_modalOutsideClick as modalOutsideClick, paginationDefaultSlotPages, paginationDefaultSlotStructure, progressbarDefaultSlotStructure, provideWidgetsConfig, sliderDefaultSlotHandle, sliderDefaultSlotStructure, toastDefaultSlotStructure, widgetsConfigInjectionToken };
3550
3829
  //# sourceMappingURL=agnos-ui-angular-bootstrap.mjs.map