@acorex/components 21.0.1-next.0 → 21.0.1-next.2

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 (230) hide show
  1. package/accordion/index.d.ts +1 -0
  2. package/action-sheet/index.d.ts +41 -19
  3. package/button-group/index.d.ts +4 -6
  4. package/chips/index.d.ts +8 -3
  5. package/collapse/index.d.ts +6 -4
  6. package/data-table/index.d.ts +253 -4
  7. package/dialog/index.d.ts +19 -15
  8. package/dropdown/index.d.ts +3 -4
  9. package/fesm2022/acorex-components-accordion.mjs +13 -8
  10. package/fesm2022/acorex-components-accordion.mjs.map +1 -1
  11. package/fesm2022/acorex-components-action-sheet.mjs +141 -93
  12. package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
  13. package/fesm2022/acorex-components-alert.mjs +6 -6
  14. package/fesm2022/acorex-components-alert.mjs.map +1 -1
  15. package/fesm2022/acorex-components-aspect-ratio.mjs.map +1 -1
  16. package/fesm2022/acorex-components-audio-wave.mjs +4 -5
  17. package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
  18. package/fesm2022/acorex-components-autocomplete.mjs.map +1 -1
  19. package/fesm2022/acorex-components-avatar.mjs +3 -3
  20. package/fesm2022/acorex-components-avatar.mjs.map +1 -1
  21. package/fesm2022/acorex-components-badge.mjs +3 -3
  22. package/fesm2022/acorex-components-badge.mjs.map +1 -1
  23. package/fesm2022/acorex-components-bottom-navigation.mjs +2 -2
  24. package/fesm2022/acorex-components-bottom-navigation.mjs.map +1 -1
  25. package/fesm2022/acorex-components-breadcrumbs.mjs +2 -2
  26. package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
  27. package/fesm2022/acorex-components-button-group.mjs +11 -15
  28. package/fesm2022/acorex-components-button-group.mjs.map +1 -1
  29. package/fesm2022/acorex-components-button.mjs +5 -5
  30. package/fesm2022/acorex-components-button.mjs.map +1 -1
  31. package/fesm2022/acorex-components-calendar.mjs +4 -4
  32. package/fesm2022/acorex-components-calendar.mjs.map +1 -1
  33. package/fesm2022/acorex-components-check-box.mjs +3 -3
  34. package/fesm2022/acorex-components-check-box.mjs.map +1 -1
  35. package/fesm2022/acorex-components-chips.mjs +8 -6
  36. package/fesm2022/acorex-components-chips.mjs.map +1 -1
  37. package/fesm2022/acorex-components-circular-progress.mjs +4 -6
  38. package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
  39. package/fesm2022/acorex-components-code-editor.mjs.map +1 -1
  40. package/fesm2022/acorex-components-collapse.mjs +10 -13
  41. package/fesm2022/acorex-components-collapse.mjs.map +1 -1
  42. package/fesm2022/acorex-components-color-box.mjs +2 -2
  43. package/fesm2022/acorex-components-color-box.mjs.map +1 -1
  44. package/fesm2022/acorex-components-color-palette.mjs +2 -2
  45. package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
  46. package/fesm2022/acorex-components-command.mjs +2 -2
  47. package/fesm2022/acorex-components-command.mjs.map +1 -1
  48. package/fesm2022/acorex-components-comment.mjs +8 -8
  49. package/fesm2022/acorex-components-comment.mjs.map +1 -1
  50. package/fesm2022/acorex-components-conversation.mjs +2 -2
  51. package/fesm2022/acorex-components-conversation.mjs.map +1 -1
  52. package/fesm2022/acorex-components-conversation2.mjs +2 -2
  53. package/fesm2022/acorex-components-conversation2.mjs.map +1 -1
  54. package/fesm2022/acorex-components-cron-job.mjs.map +1 -1
  55. package/fesm2022/acorex-components-data-list.mjs.map +1 -1
  56. package/fesm2022/acorex-components-data-pager.mjs +2 -2
  57. package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
  58. package/fesm2022/acorex-components-data-table.mjs +452 -16
  59. package/fesm2022/acorex-components-data-table.mjs.map +1 -1
  60. package/fesm2022/acorex-components-datetime-box.mjs +2 -2
  61. package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
  62. package/fesm2022/acorex-components-datetime-input.mjs +2 -2
  63. package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
  64. package/fesm2022/acorex-components-datetime-picker.mjs +8 -2
  65. package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
  66. package/fesm2022/acorex-components-decorators.mjs +13 -20
  67. package/fesm2022/acorex-components-decorators.mjs.map +1 -1
  68. package/fesm2022/acorex-components-dialog.mjs +67 -47
  69. package/fesm2022/acorex-components-dialog.mjs.map +1 -1
  70. package/fesm2022/acorex-components-drawer-legacy.mjs.map +1 -1
  71. package/fesm2022/acorex-components-drawer.mjs +7 -6
  72. package/fesm2022/acorex-components-drawer.mjs.map +1 -1
  73. package/fesm2022/acorex-components-dropdown-button.mjs +2 -2
  74. package/fesm2022/acorex-components-dropdown-button.mjs.map +1 -1
  75. package/fesm2022/acorex-components-dropdown.mjs +3 -9
  76. package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
  77. package/fesm2022/acorex-components-editor.mjs +4 -4
  78. package/fesm2022/acorex-components-editor.mjs.map +1 -1
  79. package/fesm2022/acorex-components-file-explorer.mjs.map +1 -1
  80. package/fesm2022/acorex-components-flow-chart.mjs.map +1 -1
  81. package/fesm2022/acorex-components-form.mjs +9 -17
  82. package/fesm2022/acorex-components-form.mjs.map +1 -1
  83. package/fesm2022/acorex-components-grid-layout-builder.mjs +5 -4
  84. package/fesm2022/acorex-components-grid-layout-builder.mjs.map +1 -1
  85. package/fesm2022/acorex-components-image-editor.mjs +18 -18
  86. package/fesm2022/acorex-components-image-editor.mjs.map +1 -1
  87. package/fesm2022/acorex-components-image.mjs +2 -2
  88. package/fesm2022/acorex-components-image.mjs.map +1 -1
  89. package/fesm2022/acorex-components-json-viewer.mjs +2 -2
  90. package/fesm2022/acorex-components-json-viewer.mjs.map +1 -1
  91. package/fesm2022/acorex-components-kanban.mjs +4 -6
  92. package/fesm2022/acorex-components-kanban.mjs.map +1 -1
  93. package/fesm2022/acorex-components-kbd.mjs +7 -25
  94. package/fesm2022/acorex-components-kbd.mjs.map +1 -1
  95. package/fesm2022/acorex-components-label.mjs +2 -2
  96. package/fesm2022/acorex-components-label.mjs.map +1 -1
  97. package/fesm2022/acorex-components-list.mjs +2 -2
  98. package/fesm2022/acorex-components-list.mjs.map +1 -1
  99. package/fesm2022/acorex-components-loading-dialog.mjs +73 -36
  100. package/fesm2022/acorex-components-loading-dialog.mjs.map +1 -1
  101. package/fesm2022/acorex-components-loading.mjs +8 -8
  102. package/fesm2022/acorex-components-loading.mjs.map +1 -1
  103. package/fesm2022/acorex-components-map.mjs +2 -2
  104. package/fesm2022/acorex-components-map.mjs.map +1 -1
  105. package/fesm2022/acorex-components-media-viewer.mjs +10 -10
  106. package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
  107. package/fesm2022/acorex-components-menu.mjs +27 -6
  108. package/fesm2022/acorex-components-menu.mjs.map +1 -1
  109. package/fesm2022/{acorex-components-modal-acorex-components-modal-BnUdtPke.mjs → acorex-components-modal-acorex-components-modal-Bmoz9DL5.mjs} +29 -5
  110. package/fesm2022/acorex-components-modal-acorex-components-modal-Bmoz9DL5.mjs.map +1 -0
  111. package/fesm2022/{acorex-components-modal-modal-content.component-Cgq-wx_m.mjs → acorex-components-modal-modal-content.component-CSJU1vRi.mjs} +5 -7
  112. package/fesm2022/acorex-components-modal-modal-content.component-CSJU1vRi.mjs.map +1 -0
  113. package/fesm2022/acorex-components-modal.mjs +1 -1
  114. package/fesm2022/acorex-components-navbar.mjs +3 -3
  115. package/fesm2022/acorex-components-navbar.mjs.map +1 -1
  116. package/fesm2022/acorex-components-notification.mjs +374 -246
  117. package/fesm2022/acorex-components-notification.mjs.map +1 -1
  118. package/fesm2022/acorex-components-number-box-legacy.mjs +2 -2
  119. package/fesm2022/acorex-components-number-box-legacy.mjs.map +1 -1
  120. package/fesm2022/acorex-components-number-box.mjs +6 -7
  121. package/fesm2022/acorex-components-number-box.mjs.map +1 -1
  122. package/fesm2022/acorex-components-otp.mjs +2 -2
  123. package/fesm2022/acorex-components-otp.mjs.map +1 -1
  124. package/fesm2022/acorex-components-page.mjs.map +1 -1
  125. package/fesm2022/acorex-components-paint.mjs +19 -14
  126. package/fesm2022/acorex-components-paint.mjs.map +1 -1
  127. package/fesm2022/acorex-components-password-box.mjs +4 -4
  128. package/fesm2022/acorex-components-password-box.mjs.map +1 -1
  129. package/fesm2022/acorex-components-pdf-reader.mjs +2 -2
  130. package/fesm2022/acorex-components-pdf-reader.mjs.map +1 -1
  131. package/fesm2022/acorex-components-phone-box.mjs +2 -2
  132. package/fesm2022/acorex-components-phone-box.mjs.map +1 -1
  133. package/fesm2022/acorex-components-picker.mjs +6 -6
  134. package/fesm2022/acorex-components-picker.mjs.map +1 -1
  135. package/fesm2022/acorex-components-popover.mjs +136 -175
  136. package/fesm2022/acorex-components-popover.mjs.map +1 -1
  137. package/fesm2022/acorex-components-popup.mjs +308 -105
  138. package/fesm2022/acorex-components-popup.mjs.map +1 -1
  139. package/fesm2022/acorex-components-progress-bar.mjs +3 -5
  140. package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
  141. package/fesm2022/acorex-components-qrcode.mjs +2 -2
  142. package/fesm2022/acorex-components-qrcode.mjs.map +1 -1
  143. package/fesm2022/acorex-components-query-builder.mjs +2 -2
  144. package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
  145. package/fesm2022/acorex-components-radio.mjs +2 -2
  146. package/fesm2022/acorex-components-radio.mjs.map +1 -1
  147. package/fesm2022/acorex-components-rail-navigation.mjs +25 -27
  148. package/fesm2022/acorex-components-rail-navigation.mjs.map +1 -1
  149. package/fesm2022/acorex-components-range-slider.mjs +3 -3
  150. package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
  151. package/fesm2022/acorex-components-rate-picker.mjs +29 -14
  152. package/fesm2022/acorex-components-rate-picker.mjs.map +1 -1
  153. package/fesm2022/acorex-components-rest-api-generator.mjs.map +1 -1
  154. package/fesm2022/acorex-components-result.mjs +2 -2
  155. package/fesm2022/acorex-components-result.mjs.map +1 -1
  156. package/fesm2022/acorex-components-routing-progress.mjs +2 -2
  157. package/fesm2022/acorex-components-routing-progress.mjs.map +1 -1
  158. package/fesm2022/acorex-components-rrule.mjs.map +1 -1
  159. package/fesm2022/acorex-components-scheduler-picker.mjs +2 -2
  160. package/fesm2022/acorex-components-scheduler-picker.mjs.map +1 -1
  161. package/fesm2022/acorex-components-scheduler.mjs +18 -18
  162. package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
  163. package/fesm2022/acorex-components-scss.mjs.map +1 -1
  164. package/fesm2022/acorex-components-search-box.mjs +3 -9
  165. package/fesm2022/acorex-components-search-box.mjs.map +1 -1
  166. package/fesm2022/acorex-components-select-box.mjs +2 -4
  167. package/fesm2022/acorex-components-select-box.mjs.map +1 -1
  168. package/fesm2022/acorex-components-selection-list-2.mjs +4 -4
  169. package/fesm2022/acorex-components-selection-list-2.mjs.map +1 -1
  170. package/fesm2022/acorex-components-selection-list.mjs +2 -2
  171. package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
  172. package/fesm2022/acorex-components-side-menu.mjs +14 -63
  173. package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
  174. package/fesm2022/acorex-components-skeleton.mjs +2 -2
  175. package/fesm2022/acorex-components-skeleton.mjs.map +1 -1
  176. package/fesm2022/acorex-components-slider.mjs +5 -5
  177. package/fesm2022/acorex-components-slider.mjs.map +1 -1
  178. package/fesm2022/acorex-components-sliding-item.mjs +2 -2
  179. package/fesm2022/acorex-components-sliding-item.mjs.map +1 -1
  180. package/fesm2022/acorex-components-step-wizard.mjs +2 -2
  181. package/fesm2022/acorex-components-step-wizard.mjs.map +1 -1
  182. package/fesm2022/acorex-components-switch.mjs +4 -4
  183. package/fesm2022/acorex-components-switch.mjs.map +1 -1
  184. package/fesm2022/acorex-components-tabs.mjs +2 -2
  185. package/fesm2022/acorex-components-tabs.mjs.map +1 -1
  186. package/fesm2022/acorex-components-tag-box.mjs +2 -2
  187. package/fesm2022/acorex-components-tag-box.mjs.map +1 -1
  188. package/fesm2022/acorex-components-tag.mjs +3 -3
  189. package/fesm2022/acorex-components-tag.mjs.map +1 -1
  190. package/fesm2022/acorex-components-text-area.mjs +2 -2
  191. package/fesm2022/acorex-components-text-area.mjs.map +1 -1
  192. package/fesm2022/acorex-components-text-box.mjs +2 -2
  193. package/fesm2022/acorex-components-text-box.mjs.map +1 -1
  194. package/fesm2022/acorex-components-time-duration.mjs.map +1 -1
  195. package/fesm2022/acorex-components-time-line.mjs +4 -4
  196. package/fesm2022/acorex-components-time-line.mjs.map +1 -1
  197. package/fesm2022/acorex-components-toast.mjs +233 -125
  198. package/fesm2022/acorex-components-toast.mjs.map +1 -1
  199. package/fesm2022/acorex-components-toolbar.mjs +2 -2
  200. package/fesm2022/acorex-components-toolbar.mjs.map +1 -1
  201. package/fesm2022/acorex-components-tooltip.mjs +12 -12
  202. package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
  203. package/fesm2022/acorex-components-tree-view-legacy.mjs.map +1 -1
  204. package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
  205. package/fesm2022/acorex-components-uploader.mjs +6 -6
  206. package/fesm2022/acorex-components-uploader.mjs.map +1 -1
  207. package/fesm2022/acorex-components-video-player.mjs +2 -2
  208. package/fesm2022/acorex-components-video-player.mjs.map +1 -1
  209. package/fesm2022/acorex-components-wysiwyg.mjs +12 -12
  210. package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
  211. package/fesm2022/acorex-components.mjs.map +1 -1
  212. package/grid-layout-builder/index.d.ts +2 -1
  213. package/kbd/index.d.ts +7 -13
  214. package/loading/index.d.ts +1 -1
  215. package/loading-dialog/index.d.ts +31 -15
  216. package/menu/index.d.ts +4 -0
  217. package/modal/index.d.ts +7 -0
  218. package/notification/index.d.ts +47 -28
  219. package/number-box/index.d.ts +1 -1
  220. package/package.json +7 -7
  221. package/paint/index.d.ts +6 -1
  222. package/popover/index.d.ts +20 -27
  223. package/popup/index.d.ts +103 -27
  224. package/rate-picker/index.d.ts +15 -5
  225. package/side-menu/index.d.ts +2 -9
  226. package/slider/index.d.ts +2 -2
  227. package/toast/index.d.ts +24 -18
  228. package/tooltip/index.d.ts +2 -2
  229. package/fesm2022/acorex-components-modal-acorex-components-modal-BnUdtPke.mjs.map +0 -1
  230. package/fesm2022/acorex-components-modal-modal-content.component-Cgq-wx_m.mjs.map +0 -1
package/popup/index.d.ts CHANGED
@@ -1,17 +1,14 @@
1
- import * as i5 from '@angular/cdk/portal';
2
- import { ComponentType, Portal, CdkPortalOutletAttachedRef } from '@angular/cdk/portal';
1
+ import { AXComponentType, AXComponentInputs } from '@acorex/core/components';
3
2
  import * as i0 from '@angular/core';
4
- import { TemplateRef, ViewContainerRef, StaticProvider, OnInit } from '@angular/core';
3
+ import { TemplateRef, ViewContainerRef, StaticProvider, OnInit, OnDestroy } from '@angular/core';
4
+ import { Subject } from 'rxjs';
5
5
  import * as i2 from '@acorex/cdk/common';
6
6
  import { MXBaseComponent, AXComponentClosedPromise } from '@acorex/cdk/common';
7
7
  import * as i1 from '@angular/common';
8
- import * as i3 from '@angular/cdk/drag-drop';
9
- import * as i4 from '@angular/cdk/a11y';
10
- import * as i6 from '@acorex/components/decorators';
11
- import * as i7 from '@angular/cdk/dialog';
12
- import * as i8 from '@acorex/core/translation';
8
+ import * as i3 from '@acorex/components/decorators';
9
+ import * as i4 from '@acorex/core/translation';
13
10
 
14
- type AXPopupContentType = TemplateRef<unknown> | ComponentType<unknown>;
11
+ type AXPopupContentType = TemplateRef<unknown> | AXComponentType<unknown>;
15
12
  type AXPopupSizeType = 'sm' | 'md' | 'lg' | 'full' | 'fit';
16
13
  interface AXPopupConfig {
17
14
  title?: string;
@@ -39,19 +36,77 @@ interface AXPopupData {
39
36
  draggable: boolean;
40
37
  content: AXPopupContentType;
41
38
  }
39
+ interface AXPopupRef<TResult = any> {
40
+ close: (data?: TResult) => void;
41
+ setInputs: (values: AXComponentInputs) => void;
42
+ setTitle: (title: string) => void;
43
+ /** Brings this popup to the front of all other overlays */
44
+ bringToFront: () => void;
45
+ onClose: Subject<TResult>;
46
+ }
47
+ declare abstract class AXPopupComponentBase {
48
+ __popup__: i0.InputSignal<AXPopupRef<any>>;
49
+ close(data?: any): void;
50
+ setTitle(title: string): void;
51
+ bringToFront(): void;
52
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPopupComponentBase, never>;
53
+ static ɵdir: i0.ɵɵDirectiveDeclaration<AXPopupComponentBase, never, never, { "__popup__": { "alias": "__popup__"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
54
+ }
55
+
56
+ declare class AXPopupStateService {
57
+ private popupList;
58
+ private overlayService;
59
+ /**
60
+ * Opens a popup with the specified content and configuration.
61
+ * @param content - Component or template to display
62
+ * @param config - Configuration options for the popup
63
+ * @returns Promise<AXPopupRef> - Reference to the opened popup
64
+ */
65
+ open<TResult = any>(content: AXPopupContentType, config: AXPopupConfig): Promise<AXPopupRef<TResult>>;
66
+ /**
67
+ * Closes a popup by its ID.
68
+ * @param id - The popup ID to close
69
+ * @param data - Optional data to pass to the close event
70
+ */
71
+ close<TResult = any>(id: number, data?: TResult): Promise<void>;
72
+ /**
73
+ * Sets input values for a popup by its ID.
74
+ * @param id - The popup ID
75
+ * @param values - Object containing input values to set
76
+ */
77
+ setInputs(id: number, values: AXComponentInputs): Promise<void>;
78
+ /**
79
+ * Sets the title for a popup by its ID.
80
+ * @param id - The popup ID
81
+ * @param title - The new title
82
+ */
83
+ setTitle(id: number, title: string): Promise<void>;
84
+ /**
85
+ * Brings a popup to the front of all other overlays.
86
+ * @param id - The popup ID to bring to front
87
+ */
88
+ bringToFront(id: number): void;
89
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPopupStateService, never>;
90
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPopupStateService>;
91
+ }
42
92
 
43
93
  /**
44
- * The Button is a component which detects user interaction and triggers a corresponding event
94
+ * The Popup is a component which displays content in a dialog overlay
45
95
  *
46
96
  * @category Components
47
97
  */
48
- declare class AXPopupComponent extends MXBaseComponent implements OnInit {
98
+ declare class AXPopupComponent extends MXBaseComponent implements OnInit, OnDestroy {
49
99
  private _zone;
50
- private _viewContainerRef;
100
+ private _document;
51
101
  private loadingService;
52
102
  private _platform;
53
- protected data: AXPopupData;
54
- private dialogRef;
103
+ private componentService;
104
+ private contentContainerRef;
105
+ private contentContainerEl;
106
+ readonly __content__: i0.InputSignal<AXPopupContentType>;
107
+ readonly __config__: i0.InputSignal<AXPopupConfig>;
108
+ readonly __popupRef__: i0.InputSignal<AXPopupRef<any>>;
109
+ readonly __id__: i0.InputSignal<number>;
55
110
  /**
56
111
  * Indicates whether the component is loading.
57
112
  * @defaultValue true
@@ -60,19 +115,28 @@ declare class AXPopupComponent extends MXBaseComponent implements OnInit {
60
115
  /** @ignore */
61
116
  private _loadingId;
62
117
  /** @ignore */
63
- protected _selectedPortal: Portal<unknown>;
118
+ private _componentRef;
119
+ /** Current title */
120
+ protected title: i0.WritableSignal<string>;
64
121
  /** @ignore */
65
- protected _footerPortal: Portal<unknown>;
122
+ protected isDragging: i0.WritableSignal<boolean>;
66
123
  /** @ignore */
67
- protected _headerPortal: Portal<unknown>;
124
+ protected dragOffset: i0.WritableSignal<{
125
+ x: number;
126
+ y: number;
127
+ }>;
68
128
  /** @ignore */
69
- private _componentRef;
129
+ private dragStartPos;
130
+ /** @ignore */
131
+ private elementStartPos;
70
132
  /** @ignore */
71
133
  ngOnInit(): void;
72
134
  /** @ignore */
73
- protected _handleAttched(ref: CdkPortalOutletAttachedRef): void;
135
+ private renderContent;
74
136
  /** @ignore */
75
- onKeydownHandler(event: KeyboardEvent): void;
137
+ private handleContentRendered;
138
+ /** @ignore */
139
+ onKeydownHandler(): void;
76
140
  /** @ignore */
77
141
  protected _handleCloseClick(): void;
78
142
  /** @ignore */
@@ -82,17 +146,30 @@ declare class AXPopupComponent extends MXBaseComponent implements OnInit {
82
146
  */
83
147
  focus(): void;
84
148
  /**
85
- * Closes the dialog, emitting component reference, host element, and optional data.
149
+ * Closes the popup, emitting component reference, host element, and optional data.
86
150
  * @param {unknown} [data]
87
151
  */
88
152
  close(data?: unknown): void;
153
+ /**
154
+ * Sets inputs on the content component.
155
+ * @param values - Object containing input values to set
156
+ */
157
+ setContentInputs(values: AXComponentInputs): void;
158
+ /**
159
+ * Sets the popup title.
160
+ * @param title - The new title
161
+ */
162
+ setTitle(title: string): void;
163
+ protected onDragStart(event: MouseEvent): void;
164
+ onDragMove(event: MouseEvent): void;
165
+ onDragEnd(): void;
89
166
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPopupComponent, never>;
90
- static ɵcmp: i0.ɵɵComponentDeclaration<AXPopupComponent, "ax-popup", never, {}, {}, never, never, true, never>;
167
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPopupComponent, "ax-popup", never, { "__content__": { "alias": "__content__"; "required": false; "isSignal": true; }; "__config__": { "alias": "__config__"; "required": false; "isSignal": true; }; "__popupRef__": { "alias": "__popupRef__"; "required": false; "isSignal": true; }; "__id__": { "alias": "__id__"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
91
168
  }
92
169
 
93
170
  declare class AXPopupModule {
94
171
  static ɵfac: i0.ɵɵFactoryDeclaration<AXPopupModule, never>;
95
- static ɵmod: i0.ɵɵNgModuleDeclaration<AXPopupModule, never, [typeof i1.CommonModule, typeof i2.AXCommonModule, typeof i3.DragDropModule, typeof i4.A11yModule, typeof i5.PortalModule, typeof i6.AXDecoratorModule, typeof i7.DialogModule, typeof i8.AXTranslationModule, typeof AXPopupComponent], [typeof AXPopupComponent]>;
172
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AXPopupModule, never, [typeof i1.CommonModule, typeof i2.AXCommonModule, typeof i3.AXDecoratorModule, typeof i4.AXTranslationModule, typeof AXPopupComponent], [typeof AXPopupComponent]>;
96
173
  static ɵinj: i0.ɵɵInjectorDeclaration<AXPopupModule>;
97
174
  }
98
175
 
@@ -102,8 +179,7 @@ declare class AXPopupModule {
102
179
  * @category Components
103
180
  */
104
181
  declare class AXPopupService {
105
- #private;
106
- private dialog;
182
+ private stateService;
107
183
  /**
108
184
  * Open popup 1
109
185
  */
@@ -116,5 +192,5 @@ declare class AXPopupService {
116
192
  static ɵprov: i0.ɵɵInjectableDeclaration<AXPopupService>;
117
193
  }
118
194
 
119
- export { AXPopupComponent, AXPopupModule, AXPopupService };
120
- export type { AXPopupConfig, AXPopupContentType, AXPopupData, AXPopupSizeType };
195
+ export { AXPopupComponent, AXPopupComponentBase, AXPopupModule, AXPopupService, AXPopupStateService };
196
+ export type { AXPopupConfig, AXPopupContentType, AXPopupData, AXPopupRef, AXPopupSizeType };
@@ -1,6 +1,6 @@
1
1
  import * as _angular_core from '@angular/core';
2
2
  import { ElementRef, Renderer2 } from '@angular/core';
3
- import { MXValueComponent, AXStyleColorType } from '@acorex/cdk/common';
3
+ import { MXValueComponent } from '@acorex/cdk/common';
4
4
  import * as i1 from '@angular/common';
5
5
 
6
6
  /**
@@ -19,7 +19,6 @@ declare class AXRatePickerComponent extends MXValueComponent<number> {
19
19
  * @default 'fa-star'
20
20
  */
21
21
  readonly iconName: _angular_core.InputSignal<string>;
22
- readonly color: _angular_core.InputSignal<AXStyleColorType>;
23
22
  /**
24
23
  * @description
25
24
  * Maximum value for the rating.
@@ -115,11 +114,22 @@ declare class AXRatePickerComponent extends MXValueComponent<number> {
115
114
  private onEnd;
116
115
  private countDecimals;
117
116
  /**
118
- * @ignore
117
+ * @description
118
+ * Determines if the component is active (i.e., not readonly or disabled).
119
+ */
120
+ get isActive(): boolean;
121
+ /**
122
+ * @description
123
+ * Determines if the component is in readonly mode.
124
+ */
125
+ get isReadonly(): boolean;
126
+ /**
127
+ * @description
128
+ * Determines if the component is disabled.
119
129
  */
120
- private get __hostClass();
130
+ get isDisabled(): boolean;
121
131
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXRatePickerComponent, never>;
122
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXRatePickerComponent, "ax-rate-picker", never, { "readonly": { "alias": "readonly"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "iconName": { "alias": "iconName"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "hasTransition": { "alias": "hasTransition"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
132
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXRatePickerComponent, "ax-rate-picker", never, { "readonly": { "alias": "readonly"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "iconName": { "alias": "iconName"; "required": false; "isSignal": true; }; "max": { "alias": "max"; "required": false; "isSignal": true; }; "step": { "alias": "step"; "required": false; "isSignal": true; }; "hasTransition": { "alias": "hasTransition"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
123
133
  }
124
134
 
125
135
  declare class AXRatePickerModule {
@@ -18,8 +18,6 @@ declare class AXSideMenuItemComponent extends MXInteractiveComponent {
18
18
  isLoading: _angular_core.ModelSignal<boolean>;
19
19
  isCollapsed: _angular_core.ModelSignal<boolean>;
20
20
  onClick: _angular_core.OutputEmitterRef<AXSideMenuItemClickEvent>;
21
- tooltipStatus: _angular_core.WritableSignal<boolean>;
22
- tooltipText: _angular_core.InputSignal<string>;
23
21
  private elem;
24
22
  readonly toggleOnClick: _angular_core.InputSignal<boolean>;
25
23
  readonly href: _angular_core.InputSignal<string>;
@@ -29,7 +27,6 @@ declare class AXSideMenuItemComponent extends MXInteractiveComponent {
29
27
  exact: boolean;
30
28
  } | IsActiveMatchOptions>;
31
29
  readonly target: _angular_core.InputSignal<"_blank" | "_self" | "_parent" | "_top">;
32
- private childItems;
33
30
  protected hasChild: _angular_core.WritableSignal<boolean>;
34
31
  private checkForChildren;
35
32
  protected _handleClickEvent(e: MouseEvent): void;
@@ -37,7 +34,7 @@ declare class AXSideMenuItemComponent extends MXInteractiveComponent {
37
34
  open(): void;
38
35
  close(): void;
39
36
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSideMenuItemComponent, never>;
40
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSideMenuItemComponent, "ax-side-menu-item", never, { "disabled": { "alias": "disabled"; "required": false; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": false; "isSignal": true; }; "isCollapsed": { "alias": "isCollapsed"; "required": false; "isSignal": true; }; "tooltipText": { "alias": "tooltipText"; "required": false; "isSignal": true; }; "toggleOnClick": { "alias": "toggleOnClick"; "required": false; "isSignal": true; }; "href": { "alias": "href"; "required": false; "isSignal": true; }; "routerLink": { "alias": "routerLink"; "required": false; "isSignal": true; }; "routerLinkActive": { "alias": "routerLinkActive"; "required": false; "isSignal": true; }; "routerLinkActiveOptions": { "alias": "routerLinkActiveOptions"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; }, { "text": "textChange"; "active": "activeChange"; "isLoading": "isLoadingChange"; "isCollapsed": "isCollapsedChange"; "onClick": "onClick"; }, ["childItems"], ["ax-title", "ax-side-menu-item, ng-container", "ax-divider", "ax-prefix", "ax-text", "*", "ax-suffix"], true, never>;
37
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSideMenuItemComponent, "ax-side-menu-item", never, { "disabled": { "alias": "disabled"; "required": false; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "active": { "alias": "active"; "required": false; "isSignal": true; }; "isLoading": { "alias": "isLoading"; "required": false; "isSignal": true; }; "isCollapsed": { "alias": "isCollapsed"; "required": false; "isSignal": true; }; "toggleOnClick": { "alias": "toggleOnClick"; "required": false; "isSignal": true; }; "href": { "alias": "href"; "required": false; "isSignal": true; }; "routerLink": { "alias": "routerLink"; "required": false; "isSignal": true; }; "routerLinkActive": { "alias": "routerLinkActive"; "required": false; "isSignal": true; }; "routerLinkActiveOptions": { "alias": "routerLinkActiveOptions"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; }, { "text": "textChange"; "active": "activeChange"; "isLoading": "isLoadingChange"; "isCollapsed": "isCollapsedChange"; "onClick": "onClick"; }, never, ["ax-title", "ax-side-menu-item, ng-container", "ax-divider", "ax-prefix", "ax-text", "*", "ax-suffix"], true, never>;
41
38
  }
42
39
 
43
40
  type AXSideMenuLook = 'pills' | 'with-line' | 'with-line-color' | 'default';
@@ -67,18 +64,14 @@ type AXSideMenuItem = {
67
64
  * A component for displaying a side menu with customizable content.
68
65
  */
69
66
  declare class AXSideMenuComponent extends NXComponent {
70
- #private;
71
67
  items: _angular_core.ModelSignal<AXSideMenuItem[]>;
72
68
  readonly look: _angular_core.InputSignal<AXSideMenuLook>;
73
69
  readonly location: _angular_core.InputSignal<AXSideMenuLocation>;
74
- readonly mode: _angular_core.InputSignal<"full" | "compact">;
75
70
  children: _angular_core.Signal<readonly AXSideMenuItemComponent[]>;
76
- private elementRef;
77
- private firstLevelItems;
78
71
  /** @ignore */
79
72
  private get __hostClass();
80
73
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXSideMenuComponent, never>;
81
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSideMenuComponent, "ax-side-menu", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "look": { "alias": "look"; "required": false; "isSignal": true; }; "location": { "alias": "location"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; }, { "items": "itemsChange"; }, ["children"], ["ax-side-menu-item,ax-title,ng-container,ng-content"], true, never>;
74
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXSideMenuComponent, "ax-side-menu", never, { "items": { "alias": "items"; "required": false; "isSignal": true; }; "look": { "alias": "look"; "required": false; "isSignal": true; }; "location": { "alias": "location"; "required": false; "isSignal": true; }; }, { "items": "itemsChange"; }, never, ["ax-side-menu-item,ax-title,ng-container,ng-content"], true, never>;
82
75
  }
83
76
 
84
77
  declare class AXOutlineSideMenuDirective {
package/slider/index.d.ts CHANGED
@@ -11,8 +11,8 @@ declare const AXSliderComponent_base: polytype.Polytype.ClusteredConstructor<[{
11
11
  ɵprov: i0.ɵɵInjectableDeclaration<MXValueComponent<any>>;
12
12
  }, typeof MXColorComponent]>;
13
13
  /**
14
- * @deprecated Use `range slider` instead.
15
- * This component deprecated and no longer support.
14
+ * @category
15
+ * A customizable slider component for selecting a value within a range.
16
16
  */
17
17
  declare class AXSliderComponent extends AXSliderComponent_base {
18
18
  private _zone;
package/toast/index.d.ts CHANGED
@@ -1,15 +1,13 @@
1
- import { AXLocation, AXStyleColorType, MXBaseComponent, AXComponentCloseEvent } from '@acorex/cdk/common';
1
+ import { AXLocation, AXStyleColorType, MXBaseComponent } from '@acorex/cdk/common';
2
+ import { AXOverlayRef } from '@acorex/cdk/overlay';
2
3
  import * as i0 from '@angular/core';
3
4
  import { OnInit, InjectionToken } from '@angular/core';
4
5
  import * as i2 from '@acorex/components/button';
5
6
  import { AXButtonItem } from '@acorex/components/button';
6
- import * as i5 from '@angular/cdk/dialog';
7
- import { DialogRef } from '@angular/cdk/dialog';
8
- import { ScrollStrategy } from '@angular/cdk/overlay';
9
7
  import * as i1 from '@angular/common';
10
8
  import * as i3 from '@acorex/components/decorators';
11
9
  import * as i4 from '@acorex/components/loading';
12
- import * as i6 from '@acorex/core/translation';
10
+ import * as i5 from '@acorex/core/translation';
13
11
 
14
12
  interface AXToastDisplayConfig {
15
13
  icon?: string;
@@ -37,19 +35,26 @@ interface AXToastData {
37
35
  interface AXToastRef {
38
36
  close(): void;
39
37
  }
38
+ /**
39
+ * @internal
40
+ * Internal reference used by toast service to manage overlay instances
41
+ */
42
+ interface AXToastInternalRef {
43
+ id: string;
44
+ overlayRef: AXOverlayRef<unknown>;
45
+ config: AXToastData;
46
+ close: () => void;
47
+ }
40
48
 
41
49
  declare class AXToastService {
42
- private readonly scrollStrategyOptions;
43
- private dialog;
50
+ private overlayService;
44
51
  private defaultConfig;
45
52
  private translationService;
46
53
  private reserveCounter;
47
54
  private activeToasts;
48
55
  private reservedToasts;
49
- private toastCounterElement;
56
+ private toastCounterRef;
50
57
  private moreToastsConfig;
51
- scrollStrategy: ScrollStrategy;
52
- constructor();
53
58
  /**
54
59
  * Shows a primary toast notification.
55
60
  *
@@ -101,10 +106,11 @@ declare class AXToastService {
101
106
  private handleShowReservedToast;
102
107
  private handleReservedToastCounter;
103
108
  private createReservedCounterToast;
109
+ private positionToast;
104
110
  private reposition;
105
111
  private getRepositionPosition;
112
+ private applyRepositionPosition;
106
113
  private getPosition;
107
- private getPositionStrategy;
108
114
  static ɵfac: i0.ɵɵFactoryDeclaration<AXToastService, never>;
109
115
  static ɵprov: i0.ɵɵInjectableDeclaration<AXToastService>;
110
116
  }
@@ -115,8 +121,10 @@ declare class AXToastService {
115
121
  * @category Components
116
122
  */
117
123
  declare class AXToastComponent extends MXBaseComponent implements OnInit {
118
- config: AXToastData;
119
- dialogRef: DialogRef<AXComponentCloseEvent, unknown>;
124
+ /** Toast configuration data */
125
+ config: i0.InputSignal<AXToastData>;
126
+ /** @internal Callback function to close the toast */
127
+ onClose: i0.InputSignal<() => void>;
120
128
  toastService: AXToastService;
121
129
  createdDate: i0.WritableSignal<number>;
122
130
  private intervalId;
@@ -134,8 +142,6 @@ declare class AXToastComponent extends MXBaseComponent implements OnInit {
134
142
  private _initIcon;
135
143
  /** @ignore */
136
144
  _handleButtonClick(button: AXButtonItem): void;
137
- /** @ignore */
138
- private get __hostClass();
139
145
  /**
140
146
  * Closes the toast notification.
141
147
  */
@@ -145,7 +151,7 @@ declare class AXToastComponent extends MXBaseComponent implements OnInit {
145
151
  */
146
152
  closeAll(): void;
147
153
  static ɵfac: i0.ɵɵFactoryDeclaration<AXToastComponent, never>;
148
- static ɵcmp: i0.ɵɵComponentDeclaration<AXToastComponent, "ax-toast", never, {}, {}, never, never, true, never>;
154
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXToastComponent, "ax-toast", never, { "config": { "alias": "config"; "required": true; "isSignal": true; }; "onClose": { "alias": "onClose"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
149
155
  }
150
156
 
151
157
  interface AXToastConfig {
@@ -163,9 +169,9 @@ declare function toastConfig(config?: PartialToastConfig): AXToastConfig;
163
169
 
164
170
  declare class AXToastModule {
165
171
  static ɵfac: i0.ɵɵFactoryDeclaration<AXToastModule, never>;
166
- static ɵmod: i0.ɵɵNgModuleDeclaration<AXToastModule, never, [typeof i1.CommonModule, typeof i2.AXButtonModule, typeof i3.AXDecoratorModule, typeof i4.AXLoadingModule, typeof i5.DialogModule, typeof i6.AXTranslationModule, typeof AXToastComponent], [typeof AXToastComponent]>;
172
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AXToastModule, never, [typeof i1.CommonModule, typeof i2.AXButtonModule, typeof i3.AXDecoratorModule, typeof i4.AXLoadingModule, typeof i5.AXTranslationModule, typeof AXToastComponent], [typeof AXToastComponent]>;
167
173
  static ɵinj: i0.ɵɵInjectorDeclaration<AXToastModule>;
168
174
  }
169
175
 
170
176
  export { AXToastComponent, AXToastDefaultConfig, AXToastModule, AXToastService, AX_TOAST_CONFIG, toastConfig };
171
- export type { AXToastConfig, AXToastData, AXToastDisplayConfig, AXToastRef, PartialToastConfig };
177
+ export type { AXToastConfig, AXToastData, AXToastDisplayConfig, AXToastInternalRef, AXToastRef, PartialToastConfig };
@@ -3,7 +3,6 @@ import * as i0 from '@angular/core';
3
3
  import { OnInit, TemplateRef } from '@angular/core';
4
4
  import { AXPopoverComponent } from '@acorex/components/popover';
5
5
  import * as i1 from '@angular/common';
6
- import * as i2 from '@angular/cdk/overlay';
7
6
 
8
7
  /**
9
8
  * A component for displaying tooltips with additional information or context when hovering over elements.
@@ -29,6 +28,7 @@ declare class AXTooltipDirective implements OnInit {
29
28
  #private;
30
29
  private vc;
31
30
  private elementRef;
31
+ private dragRef;
32
32
  axTooltipDisabled: i0.InputSignal<boolean>;
33
33
  content: i0.InputSignal<string | TemplateRef<unknown>>;
34
34
  context: i0.InputSignal<unknown>;
@@ -56,7 +56,7 @@ declare class AXTooltipDirective implements OnInit {
56
56
 
57
57
  declare class AXTooltipModule {
58
58
  static ɵfac: i0.ɵɵFactoryDeclaration<AXTooltipModule, never>;
59
- static ɵmod: i0.ɵɵNgModuleDeclaration<AXTooltipModule, never, [typeof i1.CommonModule, typeof i2.OverlayModule, typeof AXTooltipComponent, typeof AXTooltipDirective], [typeof AXTooltipComponent, typeof AXTooltipDirective]>;
59
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AXTooltipModule, never, [typeof i1.CommonModule, typeof AXTooltipComponent, typeof AXTooltipDirective], [typeof AXTooltipComponent, typeof AXTooltipDirective]>;
60
60
  static ɵinj: i0.ɵɵInjectorDeclaration<AXTooltipModule>;
61
61
  }
62
62
 
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-components-modal-acorex-components-modal-BnUdtPke.mjs","sources":["../../../../packages/components/modal/src/lib/modal-footer/modal-footer.component.ts","../../../../packages/components/modal/src/lib/modal-footer/modal-footer.component.html","../../../../packages/components/modal/src/lib/modal-state.service.ts","../../../../packages/components/modal/src/lib/modal.component.ts","../../../../packages/components/modal/src/lib/modal.module.ts","../../../../packages/components/modal/src/lib/modal.service.ts","../../../../packages/components/modal/src/lib/modal.types.ts","../../../../packages/components/modal/src/acorex-components-modal.ts"],"sourcesContent":["import { AXComponent } from '@acorex/cdk/common';\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'ax-modal-footer',\n templateUrl: './modal-footer.component.html',\n styleUrl: './modal-footer.component.compiled.css',\n imports: [],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: AXComponent, useExisting: AXModalFooterComponent }],\n})\nexport class AXModalFooterComponent {}\n","<ng-content select=\"ax-modal-footer\">\n <ng-content select=\"ax-prefix\"></ng-content>\n <ng-content select=\"ax-suffix\"></ng-content>\n</ng-content>\n","import { AXOverlayRef, AXOverlayService } from '@acorex/cdk/overlay';\nimport { AXComponentContent, AXComponentInputs } from '@acorex/core/components';\nimport { ComponentRef, inject, Injectable, signal } from '@angular/core';\nimport { cloneDeep, set } from 'lodash-es';\nimport { Subject } from 'rxjs';\nimport { AXModalContentComponent } from './modal-content/modal-content.component';\nimport { AXModalOptions, AXModalRef } from './modal.types';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXModalStateService {\n private modalList = new Map<number, { overlay: AXOverlayRef<AXModalContentComponent>; modal: AXModalRef }>();\n private overlayService = inject(AXOverlayService);\n modalOption = signal<AXModalOptions>(null);\n\n /**\n * Opens a modal with the specified content and options.\n * @param content - Component, template, or HTML element to display\n * @param options - Configuration options for the modal\n * @returns Promise<AXModalRef> - Reference to the opened modal\n */\n async open<TResult = any>(\n content: AXComponentContent | HTMLElement,\n options?: AXModalOptions,\n ): Promise<AXModalRef<TResult>> {\n this.modalOption.set(options);\n const randomId = Math.floor(Math.random() * 100000000000);\n const modalContentComp = (await import('./modal-content/modal-content.component')).AXModalContentComponent;\n const onClose = new Subject<TResult>();\n\n const returnRef: AXModalRef = {\n close: (data) => {\n this.close(randomId, data);\n },\n setInputs: (values: AXComponentInputs) => {\n this.setInputs(randomId, values);\n },\n minimize: () => {\n this.minimize(randomId);\n },\n maximize: () => {\n this.maximize(randomId);\n },\n restore: () => {\n this.restore(randomId);\n },\n onClose,\n };\n\n const finalInputs = { ...(cloneDeep(options?.inputs) ?? {}), ...{ __modal__: returnRef } };\n const finalOptions = set(cloneDeep(options) ?? {}, 'inputs', finalInputs);\n\n const ref = await this.overlayService.create(modalContentComp, {\n position: options?.position,\n backdrop: options?.backdrop,\n inputs: {\n __content__: content,\n inputs: {\n ...finalOptions?.inputs,\n },\n id: randomId,\n },\n });\n\n this.modalList.set(randomId, { overlay: ref, modal: returnRef });\n\n return returnRef;\n }\n\n /**\n * Closes a modal by its ID.\n * @param id - The modal ID to close\n * @param data - Optional data to pass to the close event\n */\n async close<TResult = any>(id: number, data?: TResult) {\n const ref = this.modalList.get(id);\n if (!ref) return;\n ref.modal.onClose.next(data);\n ref.overlay.instance.destroy();\n this.modalList.delete(id);\n }\n\n /**\n * Sets input values for a modal by its ID.\n * @param id - The modal ID\n * @param values - Object containing input values to set\n */\n async setInputs(id: number, values: AXComponentInputs) {\n const ref = this.modalList.get(id).overlay.instance;\n if (!ref) return;\n if (ref instanceof ComponentRef) {\n const comRef = ref as ComponentRef<any>;\n Object.entries(values).forEach((v) => {\n comRef.setInput(v[0], v[1]);\n });\n } else {\n ref.context.inputs.set(values);\n }\n }\n\n /**\n * Minimizes a modal by its ID.\n * @param id - The modal ID to minimize\n */\n async minimize(id: number) {\n const ref = this.modalList.get(id).overlay.instance;\n if (!ref) return;\n if (ref instanceof ComponentRef) {\n ref.instance.minimize();\n } else {\n ref.context.minimize();\n }\n }\n\n /**\n * Maximizes a modal by its ID.\n * @param id - The modal ID to maximize\n */\n async maximize(id: number) {\n const ref = this.modalList.get(id).overlay.instance;\n if (!ref) return;\n if (ref instanceof ComponentRef) {\n ref.instance.maximize();\n } else {\n ref.context.maximize();\n }\n }\n\n /**\n * Restores a modal by its ID.\n * @param id - The modal ID to restore\n */\n async restore(id: number) {\n const ref = this.modalList.get(id).overlay.instance;\n if (!ref) return;\n if (ref instanceof ComponentRef) {\n ref.instance.restore();\n } else {\n ref.context.restore();\n }\n }\n\n /**\n * Gets the index of a modal in the minimized stack.\n * @param targetKey - The modal ID to find\n * @returns number - The index position in the stack\n */\n getMapIndexOf(targetKey: any) {\n let index = 0;\n for (const key of this.modalList.keys()) {\n if (key === targetKey) {\n return index;\n }\n index++;\n }\n return -1;\n }\n}\n","import { AXComponent, NXComponent } from '@acorex/cdk/common';\nimport { AXComponentInputs } from '@acorex/core/components';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n signal,\n TemplateRef,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXModalStateService } from './modal-state.service';\nimport { AXModalOptions, AXModalRef } from './modal.types';\n\n@Component({\n selector: 'ax-modal',\n template: `\n <ng-template #contentTemplate>\n <ng-content></ng-content>\n </ng-template>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{ provide: AXComponent, useExisting: AXModalComponent }],\n})\nexport class AXModalComponent extends NXComponent {\n private service = inject(AXModalStateService);\n protected template = viewChild(TemplateRef);\n private ref = signal<AXModalRef<any>>(null);\n\n /**\n * Opens the modal with the specified options.\n * @param options - Configuration options for the modal\n * @returns Promise<AXModalRef> - Reference to the opened modal\n */\n async open(options?: AXModalOptions) {\n const ref = await this.service.open(this.template(), options);\n this.ref.set(ref);\n return ref;\n }\n\n /**\n * Closes the currently open modal.\n */\n async close() {\n if (this.ref()) return;\n this.ref().close();\n }\n\n /**\n * Sets input values for the modal content component.\n * @param values - Object containing input values to set\n */\n async setInputs(values: AXComponentInputs) {\n if (!this.ref()) return;\n const transform = { inputs: values };\n this.ref().setInputs(transform);\n }\n\n /**\n * Minimizes the modal to the bottom bar.\n */\n async minimize() {\n if (!this.ref()) return;\n this.ref().minimize();\n }\n\n /**\n * Maximizes the modal to fullscreen.\n */\n async maximize() {\n if (!this.ref()) return;\n this.ref().maximize();\n }\n\n /**\n * Restores the modal from minimized or maximized state.\n */\n async restore() {\n if (!this.ref()) return;\n this.ref().restore();\n }\n}\n","import { NgModule } from '@angular/core';\nimport { AXModalFooterComponent } from './modal-footer/modal-footer.component';\nimport { AXModalComponent } from './modal.component';\n\n@NgModule({\n imports: [AXModalComponent, AXModalFooterComponent],\n exports: [AXModalComponent, AXModalFooterComponent],\n})\nexport class AXModalModule {}\n","import { AXComponentContent, AXComponentInputs } from '@acorex/core/components';\nimport { inject, Injectable, signal } from '@angular/core';\nimport { AXModalStateService } from './modal-state.service';\nimport { AXModalOptions, AXModalRef } from './modal.types';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AXModalService {\n private stateService = inject(AXModalStateService);\n private ref = signal<AXModalRef<any>>(null);\n\n /**\n * Opens a modal with the specified content and options.\n * @param content - Component, template, or HTML element to display\n * @param options - Configuration options for the modal\n * @returns Promise<AXModalRef> - Reference to the opened modal\n */\n async open(content: AXComponentContent | HTMLElement, options?: AXModalOptions): Promise<AXModalRef> {\n const ref = await this.stateService.open(content, options);\n this.ref.set(ref);\n return ref;\n }\n\n /**\n * Closes the currently open modal.\n */\n async close() {\n if (!this.ref()) return;\n this.ref().close();\n }\n\n /**\n * Sets input values for the modal content component.\n * @param values - Object containing input values to set\n */\n async setInputs(values: AXComponentInputs) {\n if (!this.ref()) return;\n const transform = { inputs: values };\n this.ref().setInputs(transform);\n }\n\n /**\n * Minimizes the modal to the bottom bar.\n */\n async minimize() {\n if (!this.ref()) return;\n this.ref().minimize();\n }\n\n /**\n * Maximizes the modal to fullscreen.\n */\n async maximize() {\n if (!this.ref()) return;\n this.ref().maximize();\n }\n\n /**\n * Restores the modal from minimized or maximized state.\n */\n async restore() {\n if (!this.ref()) return;\n this.ref().restore();\n }\n}\n","import { AXOverlayOptions } from '@acorex/cdk/overlay';\nimport { AXComponentInputs } from '@acorex/core/components';\nimport { Directive, input } from '@angular/core';\nimport { Subject } from 'rxjs';\n\nexport interface AXModalOptions extends AXOverlayOptions {\n title?: string;\n buttons?: {\n minimize?: {\n enable: boolean;\n position: 'bottom-right' | 'bottom-left';\n };\n maximize?: boolean;\n close?: boolean;\n };\n draggable?: boolean;\n size?: 'sm' | 'md' | 'lg' | 'full' | 'fit';\n header?: boolean;\n footer?: boolean;\n panelClass?: string;\n closeOnEscape?: boolean;\n}\n\nexport interface AXModalRef<TResult = any> {\n minimize: () => void;\n maximize: () => void;\n restore: () => void;\n close: (data?: TResult) => void;\n setInputs: (values: AXComponentInputs) => void;\n onClose: Subject<TResult>;\n}\n\n@Directive()\nexport abstract class AXModalComponentBase {\n __modal__ = input<AXModalRef>();\n\n public close(data: any = null) {\n this.__modal__().close(data);\n }\n\n public minimize() {\n this.__modal__().minimize();\n }\n\n public restore() {\n this.__modal__().restore();\n }\n\n public maximize() {\n this.__modal__().maximize();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MAYa,sBAAsB,CAAA;+GAAtB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,SAAA,EAFtB,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,sBAAsB,EAAE,CAAC,0BCV5E,8JAIA,EAAA,MAAA,EAAA,CAAA,2MAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FDQa,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBATlC,SAAS;+BACE,iBAAiB,EAAA,OAAA,EAGlB,EAAE,EAAA,aAAA,EACI,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,aACpC,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAA,sBAAwB,EAAE,CAAC,EAAA,QAAA,EAAA,8JAAA,EAAA,MAAA,EAAA,CAAA,2MAAA,CAAA,EAAA;;;MEC/D,mBAAmB,CAAA;AAHhC,IAAA,WAAA,GAAA;AAIU,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,GAAG,EAAiF;AACpG,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACjD,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAiB,IAAI,uDAAC;AAgJ3C,IAAA;AA9IC;;;;;AAKG;AACH,IAAA,MAAM,IAAI,CACR,OAAyC,EACzC,OAAwB,EAAA;AAExB,QAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC;AAC7B,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,YAAY,CAAC;QACzD,MAAM,gBAAgB,GAAG,CAAC,MAAM,OAAO,gEAAyC,CAAC,EAAE,uBAAuB;AAC1G,QAAA,MAAM,OAAO,GAAG,IAAI,OAAO,EAAW;AAEtC,QAAA,MAAM,SAAS,GAAe;AAC5B,YAAA,KAAK,EAAE,CAAC,IAAI,KAAI;AACd,gBAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC;YAC5B,CAAC;AACD,YAAA,SAAS,EAAE,CAAC,MAAyB,KAAI;AACvC,gBAAA,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;YAClC,CAAC;YACD,QAAQ,EAAE,MAAK;AACb,gBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACzB,CAAC;YACD,QAAQ,EAAE,MAAK;AACb,gBAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACzB,CAAC;YACD,OAAO,EAAE,MAAK;AACZ,gBAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;YACxB,CAAC;YACD,OAAO;SACR;QAED,MAAM,WAAW,GAAG,EAAE,IAAI,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE;AAC1F,QAAA,MAAM,YAAY,GAAG,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,WAAW,CAAC;QAEzE,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,gBAAgB,EAAE;YAC7D,QAAQ,EAAE,OAAO,EAAE,QAAQ;YAC3B,QAAQ,EAAE,OAAO,EAAE,QAAQ;AAC3B,YAAA,MAAM,EAAE;AACN,gBAAA,WAAW,EAAE,OAAO;AACpB,gBAAA,MAAM,EAAE;oBACN,GAAG,YAAY,EAAE,MAAM;AACxB,iBAAA;AACD,gBAAA,EAAE,EAAE,QAAQ;AACb,aAAA;AACF,SAAA,CAAC;AAEF,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;AAEhE,QAAA,OAAO,SAAS;IAClB;AAEA;;;;AAIG;AACH,IAAA,MAAM,KAAK,CAAgB,EAAU,EAAE,IAAc,EAAA;QACnD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;AAClC,QAAA,IAAI,CAAC,GAAG;YAAE;QACV,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;AAC5B,QAAA,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE;AAC9B,QAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;IAC3B;AAEA;;;;AAIG;AACH,IAAA,MAAM,SAAS,CAAC,EAAU,EAAE,MAAyB,EAAA;AACnD,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ;AACnD,QAAA,IAAI,CAAC,GAAG;YAAE;AACV,QAAA,IAAI,GAAG,YAAY,YAAY,EAAE;YAC/B,MAAM,MAAM,GAAG,GAAwB;YACvC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAI;AACnC,gBAAA,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7B,YAAA,CAAC,CAAC;QACJ;aAAO;YACL,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;QAChC;IACF;AAEA;;;AAGG;IACH,MAAM,QAAQ,CAAC,EAAU,EAAA;AACvB,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ;AACnD,QAAA,IAAI,CAAC,GAAG;YAAE;AACV,QAAA,IAAI,GAAG,YAAY,YAAY,EAAE;AAC/B,YAAA,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE;QACzB;aAAO;AACL,YAAA,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE;QACxB;IACF;AAEA;;;AAGG;IACH,MAAM,QAAQ,CAAC,EAAU,EAAA;AACvB,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ;AACnD,QAAA,IAAI,CAAC,GAAG;YAAE;AACV,QAAA,IAAI,GAAG,YAAY,YAAY,EAAE;AAC/B,YAAA,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE;QACzB;aAAO;AACL,YAAA,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE;QACxB;IACF;AAEA;;;AAGG;IACH,MAAM,OAAO,CAAC,EAAU,EAAA;AACtB,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ;AACnD,QAAA,IAAI,CAAC,GAAG;YAAE;AACV,QAAA,IAAI,GAAG,YAAY,YAAY,EAAE;AAC/B,YAAA,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE;QACxB;aAAO;AACL,YAAA,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE;QACvB;IACF;AAEA;;;;AAIG;AACH,IAAA,aAAa,CAAC,SAAc,EAAA;QAC1B,IAAI,KAAK,GAAG,CAAC;QACb,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE;AACvC,YAAA,IAAI,GAAG,KAAK,SAAS,EAAE;AACrB,gBAAA,OAAO,KAAK;YACd;AACA,YAAA,KAAK,EAAE;QACT;QACA,OAAO,CAAC,CAAC;IACX;+GAlJW,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAnB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,cAFlB,MAAM,EAAA,CAAA,CAAA;;4FAEP,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAH/B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;ACeK,MAAO,gBAAiB,SAAQ,WAAW,CAAA;AAXjD,IAAA,WAAA,GAAA;;AAYU,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,mBAAmB,CAAC;AACnC,QAAA,IAAA,CAAA,QAAQ,GAAG,SAAS,CAAC,WAAW,oDAAC;AACnC,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAkB,IAAI,+CAAC;AAsD5C,IAAA;AApDC;;;;AAIG;IACH,MAAM,IAAI,CAAC,OAAwB,EAAA;AACjC,QAAA,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC;AAC7D,QAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;AACjB,QAAA,OAAO,GAAG;IACZ;AAEA;;AAEG;AACH,IAAA,MAAM,KAAK,GAAA;QACT,IAAI,IAAI,CAAC,GAAG,EAAE;YAAE;AAChB,QAAA,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE;IACpB;AAEA;;;AAGG;IACH,MAAM,SAAS,CAAC,MAAyB,EAAA;AACvC,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YAAE;AACjB,QAAA,MAAM,SAAS,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE;QACpC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC;IACjC;AAEA;;AAEG;AACH,IAAA,MAAM,QAAQ,GAAA;AACZ,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YAAE;AACjB,QAAA,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACvB;AAEA;;AAEG;AACH,IAAA,MAAM,QAAQ,GAAA;AACZ,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YAAE;AACjB,QAAA,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACvB;AAEA;;AAEG;AACH,IAAA,MAAM,OAAO,GAAA;AACX,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YAAE;AACjB,QAAA,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;IACtB;+GAxDW,gBAAgB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,UAAA,EAAA,SAAA,EAFhB,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAIrC,WAAW,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAXhC;;;;AAIT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAKU,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAX5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,QAAQ,EAAE;;;;AAIT,EAAA,CAAA;oBACD,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAA,gBAAkB,EAAE,CAAC;AACrE,iBAAA;0FAGgC,WAAW,CAAA,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;MCnB/B,aAAa,CAAA;+GAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAb,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAHd,gBAAgB,EAAE,sBAAsB,CAAA,EAAA,OAAA,EAAA,CACxC,gBAAgB,EAAE,sBAAsB,CAAA,EAAA,CAAA,CAAA;gHAEvC,aAAa,EAAA,CAAA,CAAA;;4FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBAJzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;AACnD,oBAAA,OAAO,EAAE,CAAC,gBAAgB,EAAE,sBAAsB,CAAC;AACpD,iBAAA;;;MCCY,cAAc,CAAA;AAH3B,IAAA,WAAA,GAAA;AAIU,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,mBAAmB,CAAC;AAC1C,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAkB,IAAI,+CAAC;AAuD5C,IAAA;AArDC;;;;;AAKG;AACH,IAAA,MAAM,IAAI,CAAC,OAAyC,EAAE,OAAwB,EAAA;AAC5E,QAAA,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC;AAC1D,QAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;AACjB,QAAA,OAAO,GAAG;IACZ;AAEA;;AAEG;AACH,IAAA,MAAM,KAAK,GAAA;AACT,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YAAE;AACjB,QAAA,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE;IACpB;AAEA;;;AAGG;IACH,MAAM,SAAS,CAAC,MAAyB,EAAA;AACvC,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YAAE;AACjB,QAAA,MAAM,SAAS,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE;QACpC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC;IACjC;AAEA;;AAEG;AACH,IAAA,MAAM,QAAQ,GAAA;AACZ,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YAAE;AACjB,QAAA,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACvB;AAEA;;AAEG;AACH,IAAA,MAAM,QAAQ,GAAA;AACZ,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YAAE;AACjB,QAAA,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACvB;AAEA;;AAEG;AACH,IAAA,MAAM,OAAO,GAAA;AACX,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YAAE;AACjB,QAAA,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;IACtB;+GAxDW,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAd,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,cAFb,MAAM,EAAA,CAAA,CAAA;;4FAEP,cAAc,EAAA,UAAA,EAAA,CAAA;kBAH1B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE,MAAM;AACnB,iBAAA;;;MC0BqB,oBAAoB,CAAA;AAD1C,IAAA,WAAA,GAAA;QAEE,IAAA,CAAA,SAAS,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAc;AAiBhC,IAAA;IAfQ,KAAK,CAAC,OAAY,IAAI,EAAA;QAC3B,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;IAC9B;IAEO,QAAQ,GAAA;AACb,QAAA,IAAI,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE;IAC7B;IAEO,OAAO,GAAA;AACZ,QAAA,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE;IAC5B;IAEO,QAAQ,GAAA;AACb,QAAA,IAAI,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE;IAC7B;+GAjBoB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBADzC;;;AChCD;;AAEG;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-components-modal-modal-content.component-Cgq-wx_m.mjs","sources":["../../../../packages/components/modal/src/lib/modal-content/modal-content.component.ts","../../../../packages/components/modal/src/lib/modal-content/modal-content.component.html"],"sourcesContent":["import { AXComponent, NXComponent } from '@acorex/cdk/common';\nimport { AXFocusTrapDirective } from '@acorex/cdk/focus-trap';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXComponentContent, AXComponentInputs, AXComponentType } from '@acorex/core/components';\nimport { CommonModule } from '@angular/common';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n computed,\n effect,\n ElementRef,\n HostBinding,\n HostListener,\n inject,\n input,\n model,\n signal,\n TemplateRef,\n viewChild,\n ViewEncapsulation,\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { AXModalFooterComponent } from '../modal-footer/modal-footer.component';\nimport { AXModalStateService } from '../modal-state.service';\n\n@Component({\n selector: 'ax-modal-content',\n templateUrl: './modal-content.component.html',\n styleUrl: './modal-content.component.compiled.css',\n imports: [CommonModule, AXButtonComponent, AXDecoratorModule],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [AXFocusTrapDirective],\n providers: [{ provide: AXComponent, useExisting: AXModalContentComponent }],\n})\nexport class AXModalContentComponent extends NXComponent {\n __content__ = input.required<AXComponentContent | HTMLElement>();\n public id = input<number>();\n public inputs = model<AXComponentInputs>();\n private serviceState = inject(AXModalStateService);\n protected sanitizer = inject(DomSanitizer);\n\n protected modalContainer = viewChild<ElementRef>('c');\n protected footer = viewChild<AXModalFooterComponent>(AXModalFooterComponent);\n\n protected isTemplate = computed(() => this.__content__() instanceof TemplateRef);\n protected isHtmlElement = computed(() => this.__content__() instanceof HTMLElement);\n\n public component = computed(() => this.__content__() as AXComponentType<any>);\n public template = computed(() => this.__content__() as TemplateRef<any>);\n public element = computed(() => this.__content__() as HTMLElement);\n\n protected modalSizeState = signal<'minimize' | 'normal'>('normal');\n protected fullScreenState = signal(false);\n private isMouseDown = signal(false);\n private offsetX = signal(0);\n private offsetY = signal(0);\n private prevLeft = signal('');\n private prevTop = signal('');\n private backdropState = computed(() => this.serviceState.modalOption()?.backdrop?.enabled ?? true);\n private closeOnEscape = computed(() => this.serviceState.modalOption()?.closeOnEscape ?? true);\n protected panelClass = computed(() => this.serviceState.modalOption()?.panelClass ?? '');\n protected headerState = computed(() => this.serviceState.modalOption()?.header ?? false);\n protected footerState = computed(() => this.serviceState.modalOption()?.footer ?? false);\n protected closeHeaderButton = computed(() => this.serviceState.modalOption()?.buttons?.close ?? true);\n private backdropBackground = computed(() => this.serviceState.modalOption()?.backdrop?.background ?? true);\n private backdropClass = computed(() => this.serviceState.modalOption()?.backdrop?.backdropClass ?? '');\n private backdropCloseOnClick = computed(() => this.serviceState.modalOption()?.backdrop?.closeOnClick ?? true);\n private minimizePosition = computed(\n () => this.serviceState.modalOption()?.buttons?.minimize?.position ?? 'bottom-right',\n );\n protected minimizeState = computed(() => this.serviceState.modalOption()?.buttons?.minimize?.enable ?? false);\n protected maximizeState = computed(() => this.serviceState.modalOption()?.buttons?.maximize ?? false);\n protected modalSize = computed(() => this.serviceState.modalOption()?.size ?? 'lg');\n protected headerTitle = computed(() => this.serviceState.modalOption()?.title ?? '');\n private draggable = computed(() => this.serviceState.modalOption()?.draggable ?? true);\n\n #init = afterNextRender(() => {\n this.nativeElement.focus();\n const popFooter = this.nativeElement.querySelector<HTMLDivElement>('.ax-modal-footer');\n const footer = this.nativeElement.querySelector<HTMLDivElement>('.ax-modal-content ax-modal-footer');\n if (footer) {\n setTimeout(() => {\n popFooter?.append(footer);\n });\n }\n });\n\n protected close() {\n this.serviceState.close(this.id());\n }\n\n minimize() {\n if (this.fullScreenState()) document.exitFullscreen();\n this.modalContainer().nativeElement.style.transition = 'all 200ms ease-out';\n\n this.modalContainer().nativeElement.style.top = `auto`;\n this.modalContainer().nativeElement.style.bottom = `0`;\n\n if (this.backdropState()) this.removeBackdrop();\n this.modalContainer().nativeElement.classList.remove('ax-normal-modal');\n this.modalContainer().nativeElement.classList.add('ax-minimize-modal');\n\n requestAnimationFrame(() => {\n const width = this.modalContainer().nativeElement.offsetWidth;\n const index = this.serviceState.getMapIndexOf(this.id());\n\n if (this.minimizePosition() === 'bottom-right') {\n this.modalContainer().nativeElement.style.left = `auto`;\n this.modalContainer().nativeElement.style.right = `${index * (width + 10)}px`;\n } else {\n this.modalContainer().nativeElement.style.right = `auto`;\n this.modalContainer().nativeElement.style.left = `${index * (width + 10)}px`;\n }\n });\n\n this.modalSizeState.set('minimize');\n }\n\n maximize() {\n this.modalContainer().nativeElement.style.transition = 'none';\n\n if (this.modalSizeState() === 'minimize') this.restore();\n\n if (!document.fullscreenElement) {\n this.modalContainer().nativeElement.requestFullscreen();\n this.fullScreenState.set(true);\n } else {\n document.exitFullscreen();\n }\n\n document.addEventListener('fullscreenchange', () => {\n if (!document.fullscreenElement) {\n this.fullScreenState.set(false);\n }\n });\n }\n\n restore() {\n setTimeout(() => {\n this.modalContainer().nativeElement.style.transition = 'none';\n }, 200);\n\n if (this.fullScreenState()) {\n document.exitFullscreen();\n return;\n }\n\n this.modalContainer().nativeElement.style.bottom = `auto`;\n this.modalContainer().nativeElement.style.right = `auto`;\n this.modalContainer().nativeElement.style.left = this.prevLeft();\n this.modalContainer().nativeElement.style.top = this.prevTop();\n\n if (this.backdropState()) this.addBackdrop();\n this.modalContainer().nativeElement.classList.remove(`ax-minimize-modal`);\n this.modalContainer().nativeElement.classList.add('ax-normal-modal');\n this.modalSizeState.set('normal');\n }\n\n protected pointerDownHandler(e: MouseEvent) {\n if (!this.draggable() || this.modalSizeState() === 'minimize' || this.fullScreenState()) return;\n this.isMouseDown.set(true);\n this.offsetX.set(e.clientX - this.modalContainer().nativeElement.offsetLeft);\n this.offsetY.set(e.clientY - this.modalContainer().nativeElement.offsetTop);\n }\n\n private addBackdrop() {\n const backdropElem = document.createElement('div');\n backdropElem.classList.add('ax-modal-drawer-backdrop');\n\n if (this.backdropClass()) {\n backdropElem.classList.add(...this.backdropClass().split(' '));\n } else {\n backdropElem.classList.add('ax-default-backdrop');\n }\n\n backdropElem.addEventListener('pointerdown', (e: MouseEvent) => {\n if (!this.backdropCloseOnClick()) return;\n if (e.target === e.currentTarget) {\n this.close();\n }\n });\n\n this.nativeElement.appendChild(backdropElem);\n }\n\n private removeBackdrop() {\n const backdropElem = this.nativeElement.querySelector('.ax-modal-drawer-backdrop');\n if (backdropElem) {\n backdropElem.remove();\n }\n }\n\n @HostListener('pointermove', ['$event'])\n protected pointerMoveHandler(e: MouseEvent) {\n if (!this.draggable() || this.modalSizeState() === 'minimize' || this.fullScreenState()) return;\n if (!this.isMouseDown()) return;\n this.modalContainer().nativeElement.style.left = `${e.clientX - this.offsetX()}px`;\n this.modalContainer().nativeElement.style.top = `${e.clientY - this.offsetY()}px`;\n this.prevLeft.set(`${e.clientX - this.offsetX()}px`);\n this.prevTop.set(`${e.clientY - this.offsetY()}px`);\n }\n\n @HostListener('pointerup', ['$event'])\n @HostListener('pointerleave', ['$event'])\n protected pointerUpHandler() {\n if (!this.draggable() || this.modalSizeState() === 'minimize' || this.fullScreenState()) return;\n this.isMouseDown.set(false);\n }\n\n @HostBinding('attr.tabindex') get role() {\n return '0';\n }\n\n @HostListener('keydown', ['$event'])\n protected escapeHandler(e: KeyboardEvent) {\n if (e.key === 'Escape' && this.closeOnEscape()) {\n this.close();\n }\n }\n\n #eff = effect(() => {\n const host = this.nativeElement;\n if (this.draggable()) host.classList.add('ax-draggable');\n if (!this.backdropState()) return;\n this.addBackdrop();\n if (!this.backdropBackground()) return;\n });\n}\n","<div\n #c\n class=\"ax-modal-container ax-{{ modalSizeState() }}-modal ax-modal-{{ modalSize() }} {{ panelClass() }}\"\n animate.enter=\"ax-fade-slide-in\"\n>\n @if (headerState()) {\n <div (pointerdown)=\"pointerDownHandler($event)\" class=\"ax-modal-header\">\n <ax-text>{{ headerTitle() }}</ax-text>\n\n <div class=\"flex\">\n @if (minimizeState()) {\n <ax-button class=\"ax-sm\" (onClick)=\"minimize()\" look=\"blank\" color=\"default\">\n <ax-icon class=\"ax-icon ax-icon-minimize\"> </ax-icon>\n </ax-button>\n }\n\n @if (modalSizeState() !== 'normal' || fullScreenState()) {\n <ax-button class=\"ax-sm\" (onClick)=\"restore()\" look=\"blank\" color=\"default\">\n <ax-icon class=\"ax-icon ax-icon-maximize\"> </ax-icon>\n </ax-button>\n }\n\n @if (maximizeState()) {\n <ax-button class=\"ax-sm\" (onClick)=\"maximize()\" look=\"blank\" color=\"default\">\n <ax-icon class=\"ax-icon ax-icon-full-screen\"> </ax-icon>\n </ax-button>\n }\n\n @if (closeHeaderButton()) {\n <ax-button class=\"ax-sm\" look=\"blank\" (onClick)=\"close()\" color=\"default\">\n <ax-icon class=\"ax-icon ax-icon-close\"> </ax-icon>\n </ax-button>\n }\n </div>\n </div>\n }\n\n <div class=\"ax-modal-content\">\n @if (isTemplate()) {\n <ng-container [ngTemplateOutlet]=\"this.template()\" [ngTemplateOutletContext]=\"inputs()\"></ng-container>\n } @else if (isHtmlElement()) {\n <div [innerHTML]=\"sanitizer.bypassSecurityTrustHtml(this.element().outerHTML)\"></div>\n } @else {\n <ng-container [ngComponentOutlet]=\"this.component()\" [ngComponentOutletInputs]=\"inputs()\"></ng-container>\n }\n </div>\n\n @if (footerState()) {\n <div class=\"ax-modal-footer\"></div>\n }\n</div>\n"],"names":[],"mappings":"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"}