@loomui-ng/ui 0.0.0-stage → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (270) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +46 -2
  3. package/accordion/README.md +38 -0
  4. package/alert/README.md +32 -0
  5. package/alert-dialog/README.md +37 -0
  6. package/aspect-ratio/README.md +24 -0
  7. package/attachment/README.md +40 -0
  8. package/avatar/README.md +34 -0
  9. package/badge/README.md +29 -0
  10. package/breadcrumb/README.md +33 -0
  11. package/bubble/README.md +32 -0
  12. package/button/README.md +31 -0
  13. package/button-group/README.md +30 -0
  14. package/calendar/README.md +35 -0
  15. package/card/README.md +41 -0
  16. package/carousel/README.md +41 -0
  17. package/chart/README.md +25 -0
  18. package/checkbox/README.md +31 -0
  19. package/collapsible/README.md +31 -0
  20. package/combobox/README.md +47 -0
  21. package/command/README.md +44 -0
  22. package/context-menu/README.md +36 -0
  23. package/data-table/README.md +39 -0
  24. package/date-picker/README.md +23 -0
  25. package/dialog/README.md +52 -0
  26. package/direction/README.md +19 -0
  27. package/drawer/README.md +37 -0
  28. package/dropdown-menu/README.md +46 -0
  29. package/empty/README.md +38 -0
  30. package/fesm2022/loomui-ng-ui-accordion.mjs +555 -0
  31. package/fesm2022/loomui-ng-ui-accordion.mjs.map +1 -0
  32. package/fesm2022/loomui-ng-ui-alert-dialog.mjs +652 -0
  33. package/fesm2022/loomui-ng-ui-alert-dialog.mjs.map +1 -0
  34. package/fesm2022/loomui-ng-ui-alert.mjs +286 -0
  35. package/fesm2022/loomui-ng-ui-alert.mjs.map +1 -0
  36. package/fesm2022/loomui-ng-ui-aspect-ratio.mjs +97 -0
  37. package/fesm2022/loomui-ng-ui-aspect-ratio.mjs.map +1 -0
  38. package/fesm2022/loomui-ng-ui-attachment.mjs +713 -0
  39. package/fesm2022/loomui-ng-ui-attachment.mjs.map +1 -0
  40. package/fesm2022/loomui-ng-ui-avatar.mjs +561 -0
  41. package/fesm2022/loomui-ng-ui-avatar.mjs.map +1 -0
  42. package/fesm2022/loomui-ng-ui-badge.mjs +102 -0
  43. package/fesm2022/loomui-ng-ui-badge.mjs.map +1 -0
  44. package/fesm2022/loomui-ng-ui-breadcrumb.mjs +520 -0
  45. package/fesm2022/loomui-ng-ui-breadcrumb.mjs.map +1 -0
  46. package/fesm2022/loomui-ng-ui-bubble.mjs +386 -0
  47. package/fesm2022/loomui-ng-ui-bubble.mjs.map +1 -0
  48. package/fesm2022/loomui-ng-ui-button-group.mjs +193 -0
  49. package/fesm2022/loomui-ng-ui-button-group.mjs.map +1 -0
  50. package/fesm2022/loomui-ng-ui-button.mjs +162 -0
  51. package/fesm2022/loomui-ng-ui-button.mjs.map +1 -0
  52. package/fesm2022/loomui-ng-ui-calendar.mjs +681 -0
  53. package/fesm2022/loomui-ng-ui-calendar.mjs.map +1 -0
  54. package/fesm2022/loomui-ng-ui-card.mjs +461 -0
  55. package/fesm2022/loomui-ng-ui-card.mjs.map +1 -0
  56. package/fesm2022/loomui-ng-ui-carousel.mjs +532 -0
  57. package/fesm2022/loomui-ng-ui-carousel.mjs.map +1 -0
  58. package/fesm2022/loomui-ng-ui-chart.mjs +373 -0
  59. package/fesm2022/loomui-ng-ui-chart.mjs.map +1 -0
  60. package/fesm2022/loomui-ng-ui-checkbox.mjs +265 -0
  61. package/fesm2022/loomui-ng-ui-checkbox.mjs.map +1 -0
  62. package/fesm2022/loomui-ng-ui-collapsible.mjs +274 -0
  63. package/fesm2022/loomui-ng-ui-collapsible.mjs.map +1 -0
  64. package/fesm2022/loomui-ng-ui-combobox.mjs +971 -0
  65. package/fesm2022/loomui-ng-ui-combobox.mjs.map +1 -0
  66. package/fesm2022/loomui-ng-ui-command.mjs +982 -0
  67. package/fesm2022/loomui-ng-ui-command.mjs.map +1 -0
  68. package/fesm2022/loomui-ng-ui-context-menu.mjs +1359 -0
  69. package/fesm2022/loomui-ng-ui-context-menu.mjs.map +1 -0
  70. package/fesm2022/loomui-ng-ui-data-table.mjs +535 -0
  71. package/fesm2022/loomui-ng-ui-data-table.mjs.map +1 -0
  72. package/fesm2022/loomui-ng-ui-date-picker.mjs +312 -0
  73. package/fesm2022/loomui-ng-ui-date-picker.mjs.map +1 -0
  74. package/fesm2022/loomui-ng-ui-dialog.mjs +508 -0
  75. package/fesm2022/loomui-ng-ui-dialog.mjs.map +1 -0
  76. package/fesm2022/loomui-ng-ui-direction.mjs +112 -0
  77. package/fesm2022/loomui-ng-ui-direction.mjs.map +1 -0
  78. package/fesm2022/loomui-ng-ui-drawer.mjs +590 -0
  79. package/fesm2022/loomui-ng-ui-drawer.mjs.map +1 -0
  80. package/fesm2022/loomui-ng-ui-dropdown-menu.mjs +1322 -0
  81. package/fesm2022/loomui-ng-ui-dropdown-menu.mjs.map +1 -0
  82. package/fesm2022/loomui-ng-ui-empty.mjs +408 -0
  83. package/fesm2022/loomui-ng-ui-empty.mjs.map +1 -0
  84. package/fesm2022/loomui-ng-ui-field.mjs +630 -0
  85. package/fesm2022/loomui-ng-ui-field.mjs.map +1 -0
  86. package/fesm2022/loomui-ng-ui-hover-card.mjs +230 -0
  87. package/fesm2022/loomui-ng-ui-hover-card.mjs.map +1 -0
  88. package/fesm2022/loomui-ng-ui-icon.mjs +498 -0
  89. package/fesm2022/loomui-ng-ui-icon.mjs.map +1 -0
  90. package/fesm2022/loomui-ng-ui-input-group.mjs +463 -0
  91. package/fesm2022/loomui-ng-ui-input-group.mjs.map +1 -0
  92. package/fesm2022/loomui-ng-ui-input-otp.mjs +586 -0
  93. package/fesm2022/loomui-ng-ui-input-otp.mjs.map +1 -0
  94. package/fesm2022/loomui-ng-ui-input.mjs +289 -0
  95. package/fesm2022/loomui-ng-ui-input.mjs.map +1 -0
  96. package/fesm2022/loomui-ng-ui-item.mjs +598 -0
  97. package/fesm2022/loomui-ng-ui-item.mjs.map +1 -0
  98. package/fesm2022/loomui-ng-ui-kbd.mjs +129 -0
  99. package/fesm2022/loomui-ng-ui-kbd.mjs.map +1 -0
  100. package/fesm2022/loomui-ng-ui-label.mjs +68 -0
  101. package/fesm2022/loomui-ng-ui-label.mjs.map +1 -0
  102. package/fesm2022/loomui-ng-ui-marker.mjs +234 -0
  103. package/fesm2022/loomui-ng-ui-marker.mjs.map +1 -0
  104. package/fesm2022/loomui-ng-ui-menubar.mjs +1523 -0
  105. package/fesm2022/loomui-ng-ui-menubar.mjs.map +1 -0
  106. package/fesm2022/loomui-ng-ui-message-scroller.mjs +519 -0
  107. package/fesm2022/loomui-ng-ui-message-scroller.mjs.map +1 -0
  108. package/fesm2022/loomui-ng-ui-message.mjs +408 -0
  109. package/fesm2022/loomui-ng-ui-message.mjs.map +1 -0
  110. package/fesm2022/loomui-ng-ui-native-select.mjs +389 -0
  111. package/fesm2022/loomui-ng-ui-native-select.mjs.map +1 -0
  112. package/fesm2022/loomui-ng-ui-navigation-menu.mjs +609 -0
  113. package/fesm2022/loomui-ng-ui-navigation-menu.mjs.map +1 -0
  114. package/fesm2022/loomui-ng-ui-pagination.mjs +611 -0
  115. package/fesm2022/loomui-ng-ui-pagination.mjs.map +1 -0
  116. package/fesm2022/loomui-ng-ui-popover.mjs +358 -0
  117. package/fesm2022/loomui-ng-ui-popover.mjs.map +1 -0
  118. package/fesm2022/loomui-ng-ui-progress.mjs +159 -0
  119. package/fesm2022/loomui-ng-ui-progress.mjs.map +1 -0
  120. package/fesm2022/loomui-ng-ui-questionnaire.mjs +1012 -0
  121. package/fesm2022/loomui-ng-ui-questionnaire.mjs.map +1 -0
  122. package/fesm2022/loomui-ng-ui-radio-group.mjs +399 -0
  123. package/fesm2022/loomui-ng-ui-radio-group.mjs.map +1 -0
  124. package/fesm2022/loomui-ng-ui-resizable.mjs +518 -0
  125. package/fesm2022/loomui-ng-ui-resizable.mjs.map +1 -0
  126. package/fesm2022/loomui-ng-ui-scroll-area.mjs +135 -0
  127. package/fesm2022/loomui-ng-ui-scroll-area.mjs.map +1 -0
  128. package/fesm2022/loomui-ng-ui-select.mjs +863 -0
  129. package/fesm2022/loomui-ng-ui-select.mjs.map +1 -0
  130. package/fesm2022/loomui-ng-ui-separator.mjs +114 -0
  131. package/fesm2022/loomui-ng-ui-separator.mjs.map +1 -0
  132. package/fesm2022/loomui-ng-ui-sheet.mjs +530 -0
  133. package/fesm2022/loomui-ng-ui-sheet.mjs.map +1 -0
  134. package/fesm2022/loomui-ng-ui-sidebar.mjs +1918 -0
  135. package/fesm2022/loomui-ng-ui-sidebar.mjs.map +1 -0
  136. package/fesm2022/loomui-ng-ui-skeleton.mjs +69 -0
  137. package/fesm2022/loomui-ng-ui-skeleton.mjs.map +1 -0
  138. package/fesm2022/loomui-ng-ui-slider.mjs +390 -0
  139. package/fesm2022/loomui-ng-ui-slider.mjs.map +1 -0
  140. package/fesm2022/loomui-ng-ui-spinner.mjs +85 -0
  141. package/fesm2022/loomui-ng-ui-spinner.mjs.map +1 -0
  142. package/fesm2022/loomui-ng-ui-switch.mjs +212 -0
  143. package/fesm2022/loomui-ng-ui-switch.mjs.map +1 -0
  144. package/fesm2022/loomui-ng-ui-table.mjs +559 -0
  145. package/fesm2022/loomui-ng-ui-table.mjs.map +1 -0
  146. package/fesm2022/loomui-ng-ui-tabs.mjs +544 -0
  147. package/fesm2022/loomui-ng-ui-tabs.mjs.map +1 -0
  148. package/fesm2022/loomui-ng-ui-textarea.mjs +206 -0
  149. package/fesm2022/loomui-ng-ui-textarea.mjs.map +1 -0
  150. package/fesm2022/loomui-ng-ui-toast.mjs +432 -0
  151. package/fesm2022/loomui-ng-ui-toast.mjs.map +1 -0
  152. package/fesm2022/loomui-ng-ui-toggle-group.mjs +477 -0
  153. package/fesm2022/loomui-ng-ui-toggle-group.mjs.map +1 -0
  154. package/fesm2022/loomui-ng-ui-toggle.mjs +219 -0
  155. package/fesm2022/loomui-ng-ui-toggle.mjs.map +1 -0
  156. package/fesm2022/loomui-ng-ui-tooltip.mjs +240 -0
  157. package/fesm2022/loomui-ng-ui-tooltip.mjs.map +1 -0
  158. package/fesm2022/loomui-ng-ui-typography.mjs +129 -0
  159. package/fesm2022/loomui-ng-ui-typography.mjs.map +1 -0
  160. package/fesm2022/loomui-ng-ui-utils.mjs +1533 -0
  161. package/fesm2022/loomui-ng-ui-utils.mjs.map +1 -0
  162. package/fesm2022/loomui-ng-ui.mjs +4 -0
  163. package/fesm2022/loomui-ng-ui.mjs.map +1 -0
  164. package/field/README.md +43 -0
  165. package/hover-card/README.md +31 -0
  166. package/icon/README.md +42 -0
  167. package/input/README.md +26 -0
  168. package/input-group/README.md +40 -0
  169. package/input-otp/README.md +35 -0
  170. package/item/README.md +33 -0
  171. package/kbd/README.md +21 -0
  172. package/label/README.md +24 -0
  173. package/marker/README.md +24 -0
  174. package/menubar/README.md +40 -0
  175. package/message/README.md +32 -0
  176. package/message-scroller/README.md +40 -0
  177. package/native-select/README.md +26 -0
  178. package/navigation-menu/README.md +39 -0
  179. package/package.json +325 -3
  180. package/pagination/README.md +37 -0
  181. package/popover/README.md +37 -0
  182. package/progress/README.md +25 -0
  183. package/questionnaire/README.md +52 -0
  184. package/radio-group/README.md +33 -0
  185. package/resizable/README.md +37 -0
  186. package/scroll-area/README.md +25 -0
  187. package/select/README.md +45 -0
  188. package/separator/README.md +28 -0
  189. package/sheet/README.md +38 -0
  190. package/sidebar/README.md +60 -0
  191. package/skeleton/README.md +21 -0
  192. package/slider/README.md +29 -0
  193. package/spinner/README.md +15 -0
  194. package/styles/loomui.css +330 -0
  195. package/switch/README.md +29 -0
  196. package/table/README.md +31 -0
  197. package/tabs/README.md +42 -0
  198. package/textarea/README.md +28 -0
  199. package/toast/README.md +27 -0
  200. package/toggle/README.md +27 -0
  201. package/toggle-group/README.md +37 -0
  202. package/tooltip/README.md +31 -0
  203. package/types/loomui-ng-ui-accordion.d.ts +141 -0
  204. package/types/loomui-ng-ui-alert-dialog.d.ts +175 -0
  205. package/types/loomui-ng-ui-alert.d.ts +77 -0
  206. package/types/loomui-ng-ui-aspect-ratio.d.ts +31 -0
  207. package/types/loomui-ng-ui-attachment.d.ts +192 -0
  208. package/types/loomui-ng-ui-avatar.d.ts +147 -0
  209. package/types/loomui-ng-ui-badge.d.ts +32 -0
  210. package/types/loomui-ng-ui-breadcrumb.d.ts +118 -0
  211. package/types/loomui-ng-ui-bubble.d.ts +100 -0
  212. package/types/loomui-ng-ui-button-group.d.ts +51 -0
  213. package/types/loomui-ng-ui-button.d.ts +57 -0
  214. package/types/loomui-ng-ui-calendar.d.ts +171 -0
  215. package/types/loomui-ng-ui-card.d.ts +123 -0
  216. package/types/loomui-ng-ui-carousel.d.ts +140 -0
  217. package/types/loomui-ng-ui-chart.d.ts +95 -0
  218. package/types/loomui-ng-ui-checkbox.d.ts +62 -0
  219. package/types/loomui-ng-ui-collapsible.d.ts +74 -0
  220. package/types/loomui-ng-ui-combobox.d.ts +229 -0
  221. package/types/loomui-ng-ui-command.d.ts +231 -0
  222. package/types/loomui-ng-ui-context-menu.d.ts +288 -0
  223. package/types/loomui-ng-ui-data-table.d.ts +111 -0
  224. package/types/loomui-ng-ui-date-picker.d.ts +63 -0
  225. package/types/loomui-ng-ui-dialog.d.ts +127 -0
  226. package/types/loomui-ng-ui-direction.d.ts +42 -0
  227. package/types/loomui-ng-ui-drawer.d.ts +149 -0
  228. package/types/loomui-ng-ui-dropdown-menu.d.ts +258 -0
  229. package/types/loomui-ng-ui-empty.d.ts +109 -0
  230. package/types/loomui-ng-ui-field.d.ts +169 -0
  231. package/types/loomui-ng-ui-hover-card.d.ts +62 -0
  232. package/types/loomui-ng-ui-icon.d.ts +156 -0
  233. package/types/loomui-ng-ui-input-group.d.ts +130 -0
  234. package/types/loomui-ng-ui-input-otp.d.ts +149 -0
  235. package/types/loomui-ng-ui-input.d.ts +89 -0
  236. package/types/loomui-ng-ui-item.d.ts +157 -0
  237. package/types/loomui-ng-ui-kbd.d.ts +36 -0
  238. package/types/loomui-ng-ui-label.d.ts +19 -0
  239. package/types/loomui-ng-ui-marker.d.ts +61 -0
  240. package/types/loomui-ng-ui-menubar.d.ts +321 -0
  241. package/types/loomui-ng-ui-message-scroller.d.ts +138 -0
  242. package/types/loomui-ng-ui-message.d.ts +109 -0
  243. package/types/loomui-ng-ui-native-select.d.ts +84 -0
  244. package/types/loomui-ng-ui-navigation-menu.d.ts +160 -0
  245. package/types/loomui-ng-ui-pagination.d.ts +130 -0
  246. package/types/loomui-ng-ui-popover.d.ts +90 -0
  247. package/types/loomui-ng-ui-progress.d.ts +39 -0
  248. package/types/loomui-ng-ui-questionnaire.d.ts +274 -0
  249. package/types/loomui-ng-ui-radio-group.d.ts +109 -0
  250. package/types/loomui-ng-ui-resizable.d.ts +121 -0
  251. package/types/loomui-ng-ui-scroll-area.d.ts +44 -0
  252. package/types/loomui-ng-ui-select.d.ts +204 -0
  253. package/types/loomui-ng-ui-separator.d.ts +35 -0
  254. package/types/loomui-ng-ui-sheet.d.ts +124 -0
  255. package/types/loomui-ng-ui-sidebar.d.ts +485 -0
  256. package/types/loomui-ng-ui-skeleton.d.ts +20 -0
  257. package/types/loomui-ng-ui-slider.d.ts +103 -0
  258. package/types/loomui-ng-ui-spinner.d.ts +19 -0
  259. package/types/loomui-ng-ui-switch.d.ts +56 -0
  260. package/types/loomui-ng-ui-table.d.ts +148 -0
  261. package/types/loomui-ng-ui-tabs.d.ts +148 -0
  262. package/types/loomui-ng-ui-textarea.d.ts +52 -0
  263. package/types/loomui-ng-ui-toast.d.ts +97 -0
  264. package/types/loomui-ng-ui-toggle-group.d.ts +138 -0
  265. package/types/loomui-ng-ui-toggle.d.ts +63 -0
  266. package/types/loomui-ng-ui-tooltip.d.ts +63 -0
  267. package/types/loomui-ng-ui-typography.d.ts +42 -0
  268. package/types/loomui-ng-ui-utils.d.ts +392 -0
  269. package/types/loomui-ng-ui.d.ts +5 -0
  270. package/typography/README.md +29 -0
@@ -0,0 +1,652 @@
1
+ import * as i0 from "@angular/core";
2
+ import { Directive, ElementRef, booleanAttribute, computed, inject, input } from "@angular/core";
3
+ import { buttonVariants } from "@loomui-ng/ui/button";
4
+ import * as i1 from "@loomui-ng/ui/utils";
5
+ import { UiElementHost, UiModalContentBase, UiModalRoot, cn } from "@loomui-ng/ui/utils";
6
+ const alertDialogOverlayClass = "fixed inset-0 z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0";
7
+ const alertDialogContentClass = "group/alert-dialog-content fixed start-1/2 top-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-sm rtl:translate-x-1/2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95";
8
+ const alertDialogHeaderClass = "grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-4 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-start sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]";
9
+ const alertDialogTitleClass = "text-base font-medium sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2";
10
+ const alertDialogDescriptionClass = "text-sm text-balance text-muted-foreground md:text-pretty *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground";
11
+ const alertDialogFooterClass = "-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end";
12
+ const UI_ALERT_DIALOG_GENERATED = [];
13
+ var UiAlertDialog = class UiAlertDialog extends UiModalRoot {
14
+ static ɵfac = i0.ɵɵngDeclareFactory({
15
+ minVersion: "12.0.0",
16
+ version: "22.2.2",
17
+ ngImport: i0,
18
+ type: UiAlertDialog,
19
+ deps: null,
20
+ target: i0.ɵɵFactoryTarget.Directive
21
+ });
22
+ static ɵdir = i0.ɵɵngDeclareDirective({
23
+ minVersion: "14.0.0",
24
+ version: "22.2.2",
25
+ type: UiAlertDialog,
26
+ isStandalone: true,
27
+ selector: "[uiAlertDialog], ui-alert-dialog",
28
+ exportAs: ["uiAlertDialog"],
29
+ usesInheritance: true,
30
+ hostDirectives: [{ directive: i1.UiElementHost }],
31
+ ngImport: i0
32
+ });
33
+ };
34
+ i0.ɵɵngDeclareClassMetadata({
35
+ minVersion: "12.0.0",
36
+ version: "22.2.2",
37
+ ngImport: i0,
38
+ type: UiAlertDialog,
39
+ decorators: [{
40
+ type: Directive,
41
+ args: [{
42
+ selector: "[uiAlertDialog], ui-alert-dialog",
43
+ hostDirectives: [UiElementHost],
44
+ exportAs: "uiAlertDialog"
45
+ }]
46
+ }]
47
+ });
48
+ var UiAlertDialogTrigger = class UiAlertDialogTrigger {
49
+ root = inject(UiAlertDialog);
50
+ constructor() {
51
+ this.root.trigger.set(inject(ElementRef).nativeElement);
52
+ }
53
+ static ɵfac = i0.ɵɵngDeclareFactory({
54
+ minVersion: "12.0.0",
55
+ version: "22.2.2",
56
+ ngImport: i0,
57
+ type: UiAlertDialogTrigger,
58
+ deps: [],
59
+ target: i0.ɵɵFactoryTarget.Directive
60
+ });
61
+ static ɵdir = i0.ɵɵngDeclareDirective({
62
+ minVersion: "14.0.0",
63
+ version: "22.2.2",
64
+ type: UiAlertDialogTrigger,
65
+ isStandalone: true,
66
+ selector: "[uiAlertDialogTrigger], ui-alert-dialog-trigger",
67
+ host: {
68
+ attributes: {
69
+ "data-slot": "alert-dialog-trigger",
70
+ "aria-haspopup": "dialog"
71
+ },
72
+ listeners: { "click": "root.toggle()" },
73
+ properties: {
74
+ "attr.aria-expanded": "root.open()",
75
+ "attr.aria-controls": "root.id",
76
+ "attr.data-state": "root.open() ? \"open\" : \"closed\""
77
+ }
78
+ },
79
+ hostDirectives: [{ directive: i1.UiElementHost }],
80
+ ngImport: i0
81
+ });
82
+ };
83
+ i0.ɵɵngDeclareClassMetadata({
84
+ minVersion: "12.0.0",
85
+ version: "22.2.2",
86
+ ngImport: i0,
87
+ type: UiAlertDialogTrigger,
88
+ decorators: [{
89
+ type: Directive,
90
+ args: [{
91
+ selector: "[uiAlertDialogTrigger], ui-alert-dialog-trigger",
92
+ hostDirectives: [UiElementHost],
93
+ host: {
94
+ "data-slot": "alert-dialog-trigger",
95
+ "aria-haspopup": "dialog",
96
+ "[attr.aria-expanded]": "root.open()",
97
+ "[attr.aria-controls]": "root.id",
98
+ "[attr.data-state]": "root.open() ? \"open\" : \"closed\"",
99
+ "(click)": "root.toggle()"
100
+ }
101
+ }]
102
+ }],
103
+ ctorParameters: () => []
104
+ });
105
+ var UiAlertDialogContent = class UiAlertDialogContent extends UiModalContentBase {
106
+ root = inject(UiAlertDialog);
107
+ config = {
108
+ slot: "alert-dialog",
109
+ backdropClass: alertDialogOverlayClass,
110
+ closeOnBackdrop: false,
111
+ initialFocusSelector: "[data-slot=alert-dialog-cancel]"
112
+ };
113
+ size = input("default", ...ngDevMode ? [{ debugName: "size" }] : /* istanbul ignore next */ []);
114
+ classes = computed(() => cn(alertDialogContentClass, this.userClass()), ...ngDevMode ? [{ debugName: "classes" }] : /* istanbul ignore next */ []);
115
+ constructor() {
116
+ super();
117
+ this.init();
118
+ }
119
+ static ɵfac = i0.ɵɵngDeclareFactory({
120
+ minVersion: "12.0.0",
121
+ version: "22.2.2",
122
+ ngImport: i0,
123
+ type: UiAlertDialogContent,
124
+ deps: [],
125
+ target: i0.ɵɵFactoryTarget.Directive
126
+ });
127
+ static ɵdir = i0.ɵɵngDeclareDirective({
128
+ minVersion: "17.1.0",
129
+ version: "22.2.2",
130
+ type: UiAlertDialogContent,
131
+ isStandalone: true,
132
+ selector: "[uiAlertDialogContent], ui-alert-dialog-content",
133
+ inputs: { size: {
134
+ classPropertyName: "size",
135
+ publicName: "size",
136
+ isSignal: true,
137
+ isRequired: false,
138
+ transformFunction: null
139
+ } },
140
+ host: {
141
+ attributes: {
142
+ "role": "alertdialog",
143
+ "data-slot": "alert-dialog-content",
144
+ "tabindex": "-1"
145
+ },
146
+ properties: {
147
+ "id": "root.id",
148
+ "attr.aria-labelledby": "root.titleId",
149
+ "attr.aria-describedby": "root.descriptionId",
150
+ "attr.data-state": "root.state()",
151
+ "attr.data-size": "size()",
152
+ "attr.class": "classes()"
153
+ }
154
+ },
155
+ usesInheritance: true,
156
+ hostDirectives: [{ directive: i1.UiElementHost }],
157
+ ngImport: i0
158
+ });
159
+ };
160
+ i0.ɵɵngDeclareClassMetadata({
161
+ minVersion: "12.0.0",
162
+ version: "22.2.2",
163
+ ngImport: i0,
164
+ type: UiAlertDialogContent,
165
+ decorators: [{
166
+ type: Directive,
167
+ args: [{
168
+ selector: "[uiAlertDialogContent], ui-alert-dialog-content",
169
+ hostDirectives: [UiElementHost],
170
+ host: {
171
+ role: "alertdialog",
172
+ "data-slot": "alert-dialog-content",
173
+ tabindex: "-1",
174
+ "[id]": "root.id",
175
+ "[attr.aria-labelledby]": "root.titleId",
176
+ "[attr.aria-describedby]": "root.descriptionId",
177
+ "[attr.data-state]": "root.state()",
178
+ "[attr.data-size]": "size()",
179
+ "[attr.class]": "classes()"
180
+ }
181
+ }]
182
+ }],
183
+ ctorParameters: () => [],
184
+ propDecorators: { size: [{
185
+ type: i0.Input,
186
+ args: [{
187
+ isSignal: true,
188
+ alias: "size",
189
+ required: false
190
+ }]
191
+ }] }
192
+ });
193
+ var UiAlertDialogHeader = class UiAlertDialogHeader {
194
+ userClass = input("", {
195
+ ...ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {},
196
+ alias: "class"
197
+ });
198
+ classes = computed(() => cn(alertDialogHeaderClass, this.userClass()), ...ngDevMode ? [{ debugName: "classes" }] : /* istanbul ignore next */ []);
199
+ static ɵfac = i0.ɵɵngDeclareFactory({
200
+ minVersion: "12.0.0",
201
+ version: "22.2.2",
202
+ ngImport: i0,
203
+ type: UiAlertDialogHeader,
204
+ deps: [],
205
+ target: i0.ɵɵFactoryTarget.Directive
206
+ });
207
+ static ɵdir = i0.ɵɵngDeclareDirective({
208
+ minVersion: "17.1.0",
209
+ version: "22.2.2",
210
+ type: UiAlertDialogHeader,
211
+ isStandalone: true,
212
+ selector: "[uiAlertDialogHeader], ui-alert-dialog-header",
213
+ inputs: { userClass: {
214
+ classPropertyName: "userClass",
215
+ publicName: "class",
216
+ isSignal: true,
217
+ isRequired: false,
218
+ transformFunction: null
219
+ } },
220
+ host: {
221
+ attributes: { "data-slot": "alert-dialog-header" },
222
+ properties: { "attr.class": "classes()" }
223
+ },
224
+ hostDirectives: [{ directive: i1.UiElementHost }],
225
+ ngImport: i0
226
+ });
227
+ };
228
+ i0.ɵɵngDeclareClassMetadata({
229
+ minVersion: "12.0.0",
230
+ version: "22.2.2",
231
+ ngImport: i0,
232
+ type: UiAlertDialogHeader,
233
+ decorators: [{
234
+ type: Directive,
235
+ args: [{
236
+ selector: "[uiAlertDialogHeader], ui-alert-dialog-header",
237
+ hostDirectives: [UiElementHost],
238
+ host: {
239
+ "data-slot": "alert-dialog-header",
240
+ "[attr.class]": "classes()"
241
+ }
242
+ }]
243
+ }],
244
+ propDecorators: { userClass: [{
245
+ type: i0.Input,
246
+ args: [{
247
+ isSignal: true,
248
+ alias: "class",
249
+ required: false
250
+ }]
251
+ }] }
252
+ });
253
+ var UiAlertDialogFooter = class UiAlertDialogFooter {
254
+ userClass = input("", {
255
+ ...ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {},
256
+ alias: "class"
257
+ });
258
+ classes = computed(() => cn(alertDialogFooterClass, this.userClass()), ...ngDevMode ? [{ debugName: "classes" }] : /* istanbul ignore next */ []);
259
+ static ɵfac = i0.ɵɵngDeclareFactory({
260
+ minVersion: "12.0.0",
261
+ version: "22.2.2",
262
+ ngImport: i0,
263
+ type: UiAlertDialogFooter,
264
+ deps: [],
265
+ target: i0.ɵɵFactoryTarget.Directive
266
+ });
267
+ static ɵdir = i0.ɵɵngDeclareDirective({
268
+ minVersion: "17.1.0",
269
+ version: "22.2.2",
270
+ type: UiAlertDialogFooter,
271
+ isStandalone: true,
272
+ selector: "[uiAlertDialogFooter], ui-alert-dialog-footer",
273
+ inputs: { userClass: {
274
+ classPropertyName: "userClass",
275
+ publicName: "class",
276
+ isSignal: true,
277
+ isRequired: false,
278
+ transformFunction: null
279
+ } },
280
+ host: {
281
+ attributes: { "data-slot": "alert-dialog-footer" },
282
+ properties: { "attr.class": "classes()" }
283
+ },
284
+ hostDirectives: [{ directive: i1.UiElementHost }],
285
+ ngImport: i0
286
+ });
287
+ };
288
+ i0.ɵɵngDeclareClassMetadata({
289
+ minVersion: "12.0.0",
290
+ version: "22.2.2",
291
+ ngImport: i0,
292
+ type: UiAlertDialogFooter,
293
+ decorators: [{
294
+ type: Directive,
295
+ args: [{
296
+ selector: "[uiAlertDialogFooter], ui-alert-dialog-footer",
297
+ hostDirectives: [UiElementHost],
298
+ host: {
299
+ "data-slot": "alert-dialog-footer",
300
+ "[attr.class]": "classes()"
301
+ }
302
+ }]
303
+ }],
304
+ propDecorators: { userClass: [{
305
+ type: i0.Input,
306
+ args: [{
307
+ isSignal: true,
308
+ alias: "class",
309
+ required: false
310
+ }]
311
+ }] }
312
+ });
313
+ var UiAlertDialogTitle = class UiAlertDialogTitle {
314
+ root = inject(UiAlertDialog);
315
+ userClass = input("", {
316
+ ...ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {},
317
+ alias: "class"
318
+ });
319
+ classes = computed(() => cn(alertDialogTitleClass, this.userClass()), ...ngDevMode ? [{ debugName: "classes" }] : /* istanbul ignore next */ []);
320
+ static ɵfac = i0.ɵɵngDeclareFactory({
321
+ minVersion: "12.0.0",
322
+ version: "22.2.2",
323
+ ngImport: i0,
324
+ type: UiAlertDialogTitle,
325
+ deps: [],
326
+ target: i0.ɵɵFactoryTarget.Directive
327
+ });
328
+ static ɵdir = i0.ɵɵngDeclareDirective({
329
+ minVersion: "17.1.0",
330
+ version: "22.2.2",
331
+ type: UiAlertDialogTitle,
332
+ isStandalone: true,
333
+ selector: "[uiAlertDialogTitle], ui-alert-dialog-title",
334
+ inputs: { userClass: {
335
+ classPropertyName: "userClass",
336
+ publicName: "class",
337
+ isSignal: true,
338
+ isRequired: false,
339
+ transformFunction: null
340
+ } },
341
+ host: {
342
+ attributes: { "data-slot": "alert-dialog-title" },
343
+ properties: {
344
+ "id": "root.titleId",
345
+ "attr.class": "classes()"
346
+ }
347
+ },
348
+ hostDirectives: [{ directive: i1.UiElementHost }],
349
+ ngImport: i0
350
+ });
351
+ };
352
+ i0.ɵɵngDeclareClassMetadata({
353
+ minVersion: "12.0.0",
354
+ version: "22.2.2",
355
+ ngImport: i0,
356
+ type: UiAlertDialogTitle,
357
+ decorators: [{
358
+ type: Directive,
359
+ args: [{
360
+ selector: "[uiAlertDialogTitle], ui-alert-dialog-title",
361
+ hostDirectives: [UiElementHost],
362
+ host: {
363
+ "data-slot": "alert-dialog-title",
364
+ "[id]": "root.titleId",
365
+ "[attr.class]": "classes()"
366
+ }
367
+ }]
368
+ }],
369
+ propDecorators: { userClass: [{
370
+ type: i0.Input,
371
+ args: [{
372
+ isSignal: true,
373
+ alias: "class",
374
+ required: false
375
+ }]
376
+ }] }
377
+ });
378
+ var UiAlertDialogDescription = class UiAlertDialogDescription {
379
+ root = inject(UiAlertDialog);
380
+ userClass = input("", {
381
+ ...ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {},
382
+ alias: "class"
383
+ });
384
+ classes = computed(() => cn(alertDialogDescriptionClass, this.userClass()), ...ngDevMode ? [{ debugName: "classes" }] : /* istanbul ignore next */ []);
385
+ static ɵfac = i0.ɵɵngDeclareFactory({
386
+ minVersion: "12.0.0",
387
+ version: "22.2.2",
388
+ ngImport: i0,
389
+ type: UiAlertDialogDescription,
390
+ deps: [],
391
+ target: i0.ɵɵFactoryTarget.Directive
392
+ });
393
+ static ɵdir = i0.ɵɵngDeclareDirective({
394
+ minVersion: "17.1.0",
395
+ version: "22.2.2",
396
+ type: UiAlertDialogDescription,
397
+ isStandalone: true,
398
+ selector: "[uiAlertDialogDescription], ui-alert-dialog-description",
399
+ inputs: { userClass: {
400
+ classPropertyName: "userClass",
401
+ publicName: "class",
402
+ isSignal: true,
403
+ isRequired: false,
404
+ transformFunction: null
405
+ } },
406
+ host: {
407
+ attributes: { "data-slot": "alert-dialog-description" },
408
+ properties: {
409
+ "id": "root.descriptionId",
410
+ "attr.class": "classes()"
411
+ }
412
+ },
413
+ hostDirectives: [{ directive: i1.UiElementHost }],
414
+ ngImport: i0
415
+ });
416
+ };
417
+ i0.ɵɵngDeclareClassMetadata({
418
+ minVersion: "12.0.0",
419
+ version: "22.2.2",
420
+ ngImport: i0,
421
+ type: UiAlertDialogDescription,
422
+ decorators: [{
423
+ type: Directive,
424
+ args: [{
425
+ selector: "[uiAlertDialogDescription], ui-alert-dialog-description",
426
+ hostDirectives: [UiElementHost],
427
+ host: {
428
+ "data-slot": "alert-dialog-description",
429
+ "[id]": "root.descriptionId",
430
+ "[attr.class]": "classes()"
431
+ }
432
+ }]
433
+ }],
434
+ propDecorators: { userClass: [{
435
+ type: i0.Input,
436
+ args: [{
437
+ isSignal: true,
438
+ alias: "class",
439
+ required: false
440
+ }]
441
+ }] }
442
+ });
443
+ var UiAlertDialogCancel = class UiAlertDialogCancel {
444
+ disabled = input(false, {
445
+ ...ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {},
446
+ transform: booleanAttribute
447
+ });
448
+ root = inject(UiAlertDialog);
449
+ userClass = input("", {
450
+ ...ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {},
451
+ alias: "class"
452
+ });
453
+ classes = computed(() => cn(buttonVariants({ variant: "outline" }), this.userClass()), ...ngDevMode ? [{ debugName: "classes" }] : /* istanbul ignore next */ []);
454
+ static ɵfac = i0.ɵɵngDeclareFactory({
455
+ minVersion: "12.0.0",
456
+ version: "22.2.2",
457
+ ngImport: i0,
458
+ type: UiAlertDialogCancel,
459
+ deps: [],
460
+ target: i0.ɵɵFactoryTarget.Directive
461
+ });
462
+ static ɵdir = i0.ɵɵngDeclareDirective({
463
+ minVersion: "17.1.0",
464
+ version: "22.2.2",
465
+ type: UiAlertDialogCancel,
466
+ isStandalone: true,
467
+ selector: "button[uiAlertDialogCancel], ui-alert-dialog-cancel",
468
+ inputs: {
469
+ disabled: {
470
+ classPropertyName: "disabled",
471
+ publicName: "disabled",
472
+ isSignal: true,
473
+ isRequired: false,
474
+ transformFunction: null
475
+ },
476
+ userClass: {
477
+ classPropertyName: "userClass",
478
+ publicName: "class",
479
+ isSignal: true,
480
+ isRequired: false,
481
+ transformFunction: null
482
+ }
483
+ },
484
+ host: {
485
+ attributes: {
486
+ "type": "button",
487
+ "data-slot": "alert-dialog-cancel",
488
+ "data-variant": "outline",
489
+ "data-size": "default"
490
+ },
491
+ listeners: { "click": "root.close()" },
492
+ properties: {
493
+ "attr.disabled": "disabled() ? \"\" : null",
494
+ "attr.class": "classes()"
495
+ }
496
+ },
497
+ hostDirectives: [{ directive: i1.UiElementHost }],
498
+ ngImport: i0
499
+ });
500
+ };
501
+ i0.ɵɵngDeclareClassMetadata({
502
+ minVersion: "12.0.0",
503
+ version: "22.2.2",
504
+ ngImport: i0,
505
+ type: UiAlertDialogCancel,
506
+ decorators: [{
507
+ type: Directive,
508
+ args: [{
509
+ selector: "button[uiAlertDialogCancel], ui-alert-dialog-cancel",
510
+ hostDirectives: [UiElementHost],
511
+ host: {
512
+ "[attr.disabled]": "disabled() ? \"\" : null",
513
+ type: "button",
514
+ "data-slot": "alert-dialog-cancel",
515
+ "data-variant": "outline",
516
+ "data-size": "default",
517
+ "[attr.class]": "classes()",
518
+ "(click)": "root.close()"
519
+ }
520
+ }]
521
+ }],
522
+ propDecorators: {
523
+ disabled: [{
524
+ type: i0.Input,
525
+ args: [{
526
+ isSignal: true,
527
+ alias: "disabled",
528
+ required: false
529
+ }]
530
+ }],
531
+ userClass: [{
532
+ type: i0.Input,
533
+ args: [{
534
+ isSignal: true,
535
+ alias: "class",
536
+ required: false
537
+ }]
538
+ }]
539
+ }
540
+ });
541
+ var UiAlertDialogAction = class UiAlertDialogAction {
542
+ disabled = input(false, {
543
+ ...ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {},
544
+ transform: booleanAttribute
545
+ });
546
+ root = inject(UiAlertDialog);
547
+ userClass = input("", {
548
+ ...ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {},
549
+ alias: "class"
550
+ });
551
+ classes = computed(() => cn(buttonVariants({ variant: "default" }), this.userClass()), ...ngDevMode ? [{ debugName: "classes" }] : /* istanbul ignore next */ []);
552
+ static ɵfac = i0.ɵɵngDeclareFactory({
553
+ minVersion: "12.0.0",
554
+ version: "22.2.2",
555
+ ngImport: i0,
556
+ type: UiAlertDialogAction,
557
+ deps: [],
558
+ target: i0.ɵɵFactoryTarget.Directive
559
+ });
560
+ static ɵdir = i0.ɵɵngDeclareDirective({
561
+ minVersion: "17.1.0",
562
+ version: "22.2.2",
563
+ type: UiAlertDialogAction,
564
+ isStandalone: true,
565
+ selector: "button[uiAlertDialogAction], ui-alert-dialog-action",
566
+ inputs: {
567
+ disabled: {
568
+ classPropertyName: "disabled",
569
+ publicName: "disabled",
570
+ isSignal: true,
571
+ isRequired: false,
572
+ transformFunction: null
573
+ },
574
+ userClass: {
575
+ classPropertyName: "userClass",
576
+ publicName: "class",
577
+ isSignal: true,
578
+ isRequired: false,
579
+ transformFunction: null
580
+ }
581
+ },
582
+ host: {
583
+ attributes: {
584
+ "type": "button",
585
+ "data-slot": "alert-dialog-action",
586
+ "data-variant": "default",
587
+ "data-size": "default"
588
+ },
589
+ listeners: { "click": "root.close()" },
590
+ properties: {
591
+ "attr.disabled": "disabled() ? \"\" : null",
592
+ "attr.class": "classes()"
593
+ }
594
+ },
595
+ hostDirectives: [{ directive: i1.UiElementHost }],
596
+ ngImport: i0
597
+ });
598
+ };
599
+ i0.ɵɵngDeclareClassMetadata({
600
+ minVersion: "12.0.0",
601
+ version: "22.2.2",
602
+ ngImport: i0,
603
+ type: UiAlertDialogAction,
604
+ decorators: [{
605
+ type: Directive,
606
+ args: [{
607
+ selector: "button[uiAlertDialogAction], ui-alert-dialog-action",
608
+ hostDirectives: [UiElementHost],
609
+ host: {
610
+ "[attr.disabled]": "disabled() ? \"\" : null",
611
+ type: "button",
612
+ "data-slot": "alert-dialog-action",
613
+ "data-variant": "default",
614
+ "data-size": "default",
615
+ "[attr.class]": "classes()",
616
+ "(click)": "root.close()"
617
+ }
618
+ }]
619
+ }],
620
+ propDecorators: {
621
+ disabled: [{
622
+ type: i0.Input,
623
+ args: [{
624
+ isSignal: true,
625
+ alias: "disabled",
626
+ required: false
627
+ }]
628
+ }],
629
+ userClass: [{
630
+ type: i0.Input,
631
+ args: [{
632
+ isSignal: true,
633
+ alias: "class",
634
+ required: false
635
+ }]
636
+ }]
637
+ }
638
+ });
639
+ const UI_ALERT_DIALOG = [
640
+ UiAlertDialog,
641
+ UiAlertDialogTrigger,
642
+ UiAlertDialogContent,
643
+ UiAlertDialogHeader,
644
+ UiAlertDialogFooter,
645
+ UiAlertDialogTitle,
646
+ UiAlertDialogDescription,
647
+ UiAlertDialogCancel,
648
+ UiAlertDialogAction
649
+ ];
650
+ export { UI_ALERT_DIALOG, UI_ALERT_DIALOG_GENERATED, UiAlertDialog, UiAlertDialogAction, UiAlertDialogCancel, UiAlertDialogContent, UiAlertDialogDescription, UiAlertDialogFooter, UiAlertDialogHeader, UiAlertDialogTitle, UiAlertDialogTrigger, alertDialogContentClass, alertDialogDescriptionClass, alertDialogFooterClass, alertDialogHeaderClass, alertDialogOverlayClass, alertDialogTitleClass };
651
+
652
+ //# sourceMappingURL=loomui-ng-ui-alert-dialog.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loomui-ng-ui-alert-dialog.mjs","names":[],"sources":["../../../libs/ui/alert-dialog/alert-dialog.ts","../../../libs/ui/alert-dialog/alert-dialog.manual.ts"],"sourcesContent":["// GENERATED by tools/gen-ui.mjs from docs/evidence/slots/alert-dialog.json.\n// Change tools/ui-specs.mjs and regenerate; hand-written parts live in ./alert-dialog.manual.ts.\nimport { Directive, computed, input } from '@angular/core';\nimport { cn } from '@loomui-ng/ui/utils';\n\nexport const alertDialogOverlayClass =\n 'fixed inset-0 z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0';\n\nexport const alertDialogContentClass =\n 'group/alert-dialog-content fixed start-1/2 top-1/2 z-50 grid w-full -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-popover p-4 text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-sm rtl:translate-x-1/2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95';\n\nexport const alertDialogHeaderClass =\n 'grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-4 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-start sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]';\n\nexport const alertDialogTitleClass =\n 'text-base font-medium sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2';\n\nexport const alertDialogDescriptionClass =\n 'text-sm text-balance text-muted-foreground md:text-pretty *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground';\n\nexport const alertDialogFooterClass =\n '-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end';\n\nexport const UI_ALERT_DIALOG_GENERATED = [] as const;\n","import { computed, Directive, ElementRef, inject, input, booleanAttribute } from '@angular/core';\nimport { buttonVariants } from '@loomui-ng/ui/button';\nimport { cn } from '@loomui-ng/ui/utils';\nimport { UiModalContentBase, UiModalRoot, type ModalContentConfig } from '@loomui-ng/ui/utils';\nimport {\n alertDialogContentClass,\n alertDialogDescriptionClass,\n alertDialogFooterClass,\n alertDialogHeaderClass,\n alertDialogOverlayClass,\n alertDialogTitleClass,\n} from './alert-dialog';\nimport { UiElementHost } from '@loomui-ng/ui/utils';\n\n/**\n * <div uiAlertDialog class=\"contents\">\n * <button uiButton variant=\"outline\" uiAlertDialogTrigger>Delete</button>\n * <div uiAlertDialogContent>\n * <div uiAlertDialogHeader><h2 uiAlertDialogTitle>Are you sure?</h2><p uiAlertDialogDescription>…</p></div>\n * <div uiAlertDialogFooter><button uiAlertDialogCancel>Cancel</button><button uiAlertDialogAction>Continue</button></div>\n * </div>\n * </div>\n * Differences from Dialog (Radix AlertDialog): role=\"alertdialog\", clicking the overlay does NOT dismiss, no corner close\n * button, and initial focus goes to the Cancel button.\n */\n@Directive({ selector: '[uiAlertDialog], ui-alert-dialog', hostDirectives: [UiElementHost], exportAs: 'uiAlertDialog' })\nexport class UiAlertDialog extends UiModalRoot {}\n\n@Directive({\n selector: '[uiAlertDialogTrigger], ui-alert-dialog-trigger', hostDirectives: [UiElementHost],\n host: {\n 'data-slot': 'alert-dialog-trigger',\n 'aria-haspopup': 'dialog',\n '[attr.aria-expanded]': 'root.open()',\n '[attr.aria-controls]': 'root.id',\n '[attr.data-state]': 'root.open() ? \"open\" : \"closed\"',\n '(click)': 'root.toggle()',\n },\n})\nexport class UiAlertDialogTrigger {\n protected readonly root = inject(UiAlertDialog);\n constructor() {\n this.root.trigger.set(inject<ElementRef<HTMLElement>>(ElementRef).nativeElement);\n }\n}\n\n@Directive({\n selector: '[uiAlertDialogContent], ui-alert-dialog-content', hostDirectives: [UiElementHost],\n host: {\n role: 'alertdialog',\n 'data-slot': 'alert-dialog-content',\n tabindex: '-1',\n '[id]': 'root.id',\n '[attr.aria-labelledby]': 'root.titleId',\n '[attr.aria-describedby]': 'root.descriptionId',\n '[attr.data-state]': 'root.state()',\n '[attr.data-size]': 'size()',\n '[attr.class]': 'classes()',\n },\n})\nexport class UiAlertDialogContent extends UiModalContentBase {\n protected readonly root = inject(UiAlertDialog);\n protected readonly config: ModalContentConfig = {\n slot: 'alert-dialog',\n backdropClass: alertDialogOverlayClass,\n closeOnBackdrop: false,\n initialFocusSelector: '[data-slot=alert-dialog-cancel]',\n };\n readonly size = input<'default' | 'sm'>('default');\n protected readonly classes = computed(() => cn(alertDialogContentClass, this.userClass()));\n constructor() {\n super();\n this.init();\n }\n}\n\n@Directive({\n selector: '[uiAlertDialogHeader], ui-alert-dialog-header', hostDirectives: [UiElementHost],\n host: { 'data-slot': 'alert-dialog-header', '[attr.class]': 'classes()' },\n})\nexport class UiAlertDialogHeader {\n readonly userClass = input<string>('', { alias: 'class' });\n protected readonly classes = computed(() => cn(alertDialogHeaderClass, this.userClass()));\n}\n\n@Directive({\n selector: '[uiAlertDialogFooter], ui-alert-dialog-footer', hostDirectives: [UiElementHost],\n host: { 'data-slot': 'alert-dialog-footer', '[attr.class]': 'classes()' },\n})\nexport class UiAlertDialogFooter {\n readonly userClass = input<string>('', { alias: 'class' });\n protected readonly classes = computed(() => cn(alertDialogFooterClass, this.userClass()));\n}\n\n@Directive({\n selector: '[uiAlertDialogTitle], ui-alert-dialog-title', hostDirectives: [UiElementHost],\n host: { 'data-slot': 'alert-dialog-title', '[id]': 'root.titleId', '[attr.class]': 'classes()' },\n})\nexport class UiAlertDialogTitle {\n protected readonly root = inject(UiAlertDialog);\n readonly userClass = input<string>('', { alias: 'class' });\n protected readonly classes = computed(() => cn(alertDialogTitleClass, this.userClass()));\n}\n\n@Directive({\n selector: '[uiAlertDialogDescription], ui-alert-dialog-description', hostDirectives: [UiElementHost],\n host: { 'data-slot': 'alert-dialog-description', '[id]': 'root.descriptionId', '[attr.class]': 'classes()' },\n})\nexport class UiAlertDialogDescription {\n protected readonly root = inject(UiAlertDialog);\n readonly userClass = input<string>('', { alias: 'class' });\n protected readonly classes = computed(() => cn(alertDialogDescriptionClass, this.userClass()));\n}\n\n/** Observed: outline Button. Closes the dialog. */\n@Directive({\n selector: 'button[uiAlertDialogCancel], ui-alert-dialog-cancel', hostDirectives: [UiElementHost],\n host: { '[attr.disabled]': 'disabled() ? \"\" : null',\n type: 'button',\n 'data-slot': 'alert-dialog-cancel',\n 'data-variant': 'outline',\n 'data-size': 'default',\n '[attr.class]': 'classes()',\n '(click)': 'root.close()',\n },\n})\nexport class UiAlertDialogCancel {\n /** Reflected as the `disabled` attribute so it also works on the custom element. */\n readonly disabled = input(false, { transform: booleanAttribute });\n protected readonly root = inject(UiAlertDialog);\n readonly userClass = input<string>('', { alias: 'class' });\n protected readonly classes = computed(() => cn(buttonVariants({ variant: 'outline' }), this.userClass()));\n}\n\n/** Observed: default Button. Closes the dialog after your own (click) handler runs. */\n@Directive({\n selector: 'button[uiAlertDialogAction], ui-alert-dialog-action', hostDirectives: [UiElementHost],\n host: { '[attr.disabled]': 'disabled() ? \"\" : null',\n type: 'button',\n 'data-slot': 'alert-dialog-action',\n 'data-variant': 'default',\n 'data-size': 'default',\n '[attr.class]': 'classes()',\n '(click)': 'root.close()',\n },\n})\nexport class UiAlertDialogAction {\n /** Reflected as the `disabled` attribute so it also works on the custom element. */\n readonly disabled = input(false, { transform: booleanAttribute });\n protected readonly root = inject(UiAlertDialog);\n readonly userClass = input<string>('', { alias: 'class' });\n protected readonly classes = computed(() => cn(buttonVariants({ variant: 'default' }), this.userClass()));\n}\n\nexport const UI_ALERT_DIALOG = [\n UiAlertDialog,\n UiAlertDialogTrigger,\n UiAlertDialogContent,\n UiAlertDialogHeader,\n UiAlertDialogFooter,\n UiAlertDialogTitle,\n UiAlertDialogDescription,\n UiAlertDialogCancel,\n UiAlertDialogAction,\n] as const;\n"],"mappings":";;;;;AAKA,MAAa,0BACX;AAEF,MAAa,0BACX;AAEF,MAAa,yBACX;AAEF,MAAa,wBACX;AAEF,MAAa,8BACX;AAEF,MAAa,yBACX;AAEF,MAAa,4BAA4B,CAAA;ACGzC,IAAa,gBAAb,MAAa,sBAAsB,YAAW;CAAjC,OAAA,OAAA,GAAA,mBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,UAAA;EAAA,MAAA;EAAa,MAAA;EAAA,QAAA,GAAA,gBAAA;CAAA,CAAA;CAAb,OAAA,OAAA,GAAA,qBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,MAAA;EAAa,cAAA;EAAA,UAAA;EAAA,UAAA,CAAA,eAAA;EAAA,iBAAA;EAAA,gBAAA,CAAA,EAAA,WAAA,GAAA,cAAA,CAAA;EAAA,UAAA;CAAA,CAAA;;AAAb,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAa,YAAA,CAAA;EADzB,MAAA;EAAU,MAAA,CAAA;GAAE,UAAU;GAAoC,gBAAgB,CAAC,aAAa;GAAG,UAAU;EAAe,CAAE;;;AAcvH,IAAa,uBAAb,MAAa,qBAAoB;CACZ,OAAO,OAAO,aAAa;CAC9C,cAAA;EACE,KAAK,KAAK,QAAQ,IAAI,OAAgC,UAAU,CAAC,CAAC,aAAa;CACjF;CAJW,OAAA,OAAA,GAAA,mBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,UAAA;EAAA,MAAA;EAAoB,MAAA,CAAA;EAAA,QAAA,GAAA,gBAAA;CAAA,CAAA;CAApB,OAAA,OAAA,GAAA,qBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,MAAA;EAAoB,cAAA;EAAA,UAAA;EAAA,MAAA;GAAA,YAAA;IAAA,aAAA;IAAA,iBAAA;GAAA;GAAA,WAAA,EAAA,SAAA,gBAAA;GAAA,YAAA;IAAA,sBAAA;IAAA,sBAAA;IAAA,mBAAA;GAAA;EAAA;EAAA,gBAAA,CAAA,EAAA,WAAA,GAAA,cAAA,CAAA;EAAA,UAAA;CAAA,CAAA;;AAApB,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAoB,YAAA,CAAA;EAXhC,MAAA;EAAU,MAAA,CAAA;GACT,UAAU;GAAmD,gBAAgB,CAAC,aAAa;GAC3F,MAAM;IACJ,aAAa;IACb,iBAAiB;IACjB,wBAAwB;IACxB,wBAAwB;IACxB,qBAAqB;IACrB,WAAW;GACZ;EACF,CAAA;;;;AAsBD,IAAa,uBAAb,MAAa,6BAA6B,mBAAkB;CACvC,OAAO,OAAO,aAAa;CAC3B,SAA6B;EAC9C,MAAM;EACN,eAAe;EACf,iBAAiB;EACjB,sBAAsB;CACvB;CACQ,OAAO,MAAwB,WAAU,GAAA,YAAA,CAAA,EAAA,WAAA,OAAA,CAAA,+BAAA,CAAA,CAAA;CAC/B,UAAU,eAAe,GAAG,yBAAyB,KAAK,UAAS,CAAE,GAAE,GAAA,YAAA,CAAA,EAAA,WAAA,UAAA,CAAA,+BAAA,CAAA,CAAA;CAC1F,cAAA;EACE,MAAK;EACL,KAAK,KAAI;CACX;CAbW,OAAA,OAAA,GAAA,mBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,UAAA;EAAA,MAAA;EAAoB,MAAA,CAAA;EAAA,QAAA,GAAA,gBAAA;CAAA,CAAA;CAApB,OAAA,OAAA,GAAA,qBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,MAAA;EAAoB,cAAA;EAAA,UAAA;EAAA,QAAA,EAAA,MAAA;GAAA,mBAAA;GAAA,YAAA;GAAA,UAAA;GAAA,YAAA;GAAA,mBAAA;EAAA,EAAA;EAAA,MAAA;GAAA,YAAA;IAAA,QAAA;IAAA,aAAA;IAAA,YAAA;GAAA;GAAA,YAAA;IAAA,MAAA;IAAA,wBAAA;IAAA,yBAAA;IAAA,mBAAA;IAAA,kBAAA;IAAA,cAAA;GAAA;EAAA;EAAA,iBAAA;EAAA,gBAAA,CAAA,EAAA,WAAA,GAAA,cAAA,CAAA;EAAA,UAAA;CAAA,CAAA;;AAApB,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAoB,YAAA,CAAA;EAdhC,MAAA;EAAU,MAAA,CAAA;GACT,UAAU;GAAmD,gBAAgB,CAAC,aAAa;GAC3F,MAAM;IACJ,MAAM;IACN,aAAa;IACb,UAAU;IACV,QAAQ;IACR,0BAA0B;IAC1B,2BAA2B;IAC3B,qBAAqB;IACrB,oBAAoB;IACpB,gBAAgB;GACjB;EACF,CAAA;;;;;;;;;;;;AAqBD,IAAa,sBAAb,MAAa,oBAAmB;CACrB,YAAY,MAAc,IAAE;EAAA,GAAA,YAAA,EAAA,WAAA,YAAA,+BAAA,CAAA;EAAI,OAAO;CAAO,CAAA;CACpC,UAAU,eAAe,GAAG,wBAAwB,KAAK,UAAS,CAAE,GAAE,GAAA,YAAA,CAAA,EAAA,WAAA,UAAA,CAAA,+BAAA,CAAA,CAAA;CAF9E,OAAA,OAAA,GAAA,mBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,UAAA;EAAA,MAAA;EAAmB,MAAA,CAAA;EAAA,QAAA,GAAA,gBAAA;CAAA,CAAA;CAAnB,OAAA,OAAA,GAAA,qBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,MAAA;EAAmB,cAAA;EAAA,UAAA;EAAA,QAAA,EAAA,WAAA;GAAA,mBAAA;GAAA,YAAA;GAAA,UAAA;GAAA,YAAA;GAAA,mBAAA;EAAA,EAAA;EAAA,MAAA;GAAA,YAAA,EAAA,aAAA,sBAAA;GAAA,YAAA,EAAA,cAAA,YAAA;EAAA;EAAA,gBAAA,CAAA,EAAA,WAAA,GAAA,cAAA,CAAA;EAAA,UAAA;CAAA,CAAA;;AAAnB,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAmB,YAAA,CAAA;EAJ/B,MAAA;EAAU,MAAA,CAAA;GACT,UAAU;GAAiD,gBAAgB,CAAC,aAAa;GACzF,MAAM;IAAE,aAAa;IAAuB,gBAAgB;GAAW;EACxE,CAAA;;;;;;;;;;;AAUD,IAAa,sBAAb,MAAa,oBAAmB;CACrB,YAAY,MAAc,IAAE;EAAA,GAAA,YAAA,EAAA,WAAA,YAAA,+BAAA,CAAA;EAAI,OAAO;CAAO,CAAA;CACpC,UAAU,eAAe,GAAG,wBAAwB,KAAK,UAAS,CAAE,GAAE,GAAA,YAAA,CAAA,EAAA,WAAA,UAAA,CAAA,+BAAA,CAAA,CAAA;CAF9E,OAAA,OAAA,GAAA,mBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,UAAA;EAAA,MAAA;EAAmB,MAAA,CAAA;EAAA,QAAA,GAAA,gBAAA;CAAA,CAAA;CAAnB,OAAA,OAAA,GAAA,qBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,MAAA;EAAmB,cAAA;EAAA,UAAA;EAAA,QAAA,EAAA,WAAA;GAAA,mBAAA;GAAA,YAAA;GAAA,UAAA;GAAA,YAAA;GAAA,mBAAA;EAAA,EAAA;EAAA,MAAA;GAAA,YAAA,EAAA,aAAA,sBAAA;GAAA,YAAA,EAAA,cAAA,YAAA;EAAA;EAAA,gBAAA,CAAA,EAAA,WAAA,GAAA,cAAA,CAAA;EAAA,UAAA;CAAA,CAAA;;AAAnB,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAmB,YAAA,CAAA;EAJ/B,MAAA;EAAU,MAAA,CAAA;GACT,UAAU;GAAiD,gBAAgB,CAAC,aAAa;GACzF,MAAM;IAAE,aAAa;IAAuB,gBAAgB;GAAW;EACxE,CAAA;;;;;;;;;;;AAUD,IAAa,qBAAb,MAAa,mBAAkB;CACV,OAAO,OAAO,aAAa;CACrC,YAAY,MAAc,IAAE;EAAA,GAAA,YAAA,EAAA,WAAA,YAAA,+BAAA,CAAA;EAAI,OAAO;CAAO,CAAA;CACpC,UAAU,eAAe,GAAG,uBAAuB,KAAK,UAAS,CAAE,GAAE,GAAA,YAAA,CAAA,EAAA,WAAA,UAAA,CAAA,+BAAA,CAAA,CAAA;CAH7E,OAAA,OAAA,GAAA,mBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,UAAA;EAAA,MAAA;EAAkB,MAAA,CAAA;EAAA,QAAA,GAAA,gBAAA;CAAA,CAAA;CAAlB,OAAA,OAAA,GAAA,qBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,MAAA;EAAkB,cAAA;EAAA,UAAA;EAAA,QAAA,EAAA,WAAA;GAAA,mBAAA;GAAA,YAAA;GAAA,UAAA;GAAA,YAAA;GAAA,mBAAA;EAAA,EAAA;EAAA,MAAA;GAAA,YAAA,EAAA,aAAA,qBAAA;GAAA,YAAA;IAAA,MAAA;IAAA,cAAA;GAAA;EAAA;EAAA,gBAAA,CAAA,EAAA,WAAA,GAAA,cAAA,CAAA;EAAA,UAAA;CAAA,CAAA;;AAAlB,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAkB,YAAA,CAAA;EAJ9B,MAAA;EAAU,MAAA,CAAA;GACT,UAAU;GAA+C,gBAAgB,CAAC,aAAa;GACvF,MAAM;IAAE,aAAa;IAAsB,QAAQ;IAAgB,gBAAgB;GAAW;EAC/F,CAAA;;;;;;;;;;;AAWD,IAAa,2BAAb,MAAa,yBAAwB;CAChB,OAAO,OAAO,aAAa;CACrC,YAAY,MAAc,IAAE;EAAA,GAAA,YAAA,EAAA,WAAA,YAAA,+BAAA,CAAA;EAAI,OAAO;CAAO,CAAA;CACpC,UAAU,eAAe,GAAG,6BAA6B,KAAK,UAAS,CAAE,GAAE,GAAA,YAAA,CAAA,EAAA,WAAA,UAAA,CAAA,+BAAA,CAAA,CAAA;CAHnF,OAAA,OAAA,GAAA,mBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,UAAA;EAAA,MAAA;EAAwB,MAAA,CAAA;EAAA,QAAA,GAAA,gBAAA;CAAA,CAAA;CAAxB,OAAA,OAAA,GAAA,qBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,MAAA;EAAwB,cAAA;EAAA,UAAA;EAAA,QAAA,EAAA,WAAA;GAAA,mBAAA;GAAA,YAAA;GAAA,UAAA;GAAA,YAAA;GAAA,mBAAA;EAAA,EAAA;EAAA,MAAA;GAAA,YAAA,EAAA,aAAA,2BAAA;GAAA,YAAA;IAAA,MAAA;IAAA,cAAA;GAAA;EAAA;EAAA,gBAAA,CAAA,EAAA,WAAA,GAAA,cAAA,CAAA;EAAA,UAAA;CAAA,CAAA;;AAAxB,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAwB,YAAA,CAAA;EAJpC,MAAA;EAAU,MAAA,CAAA;GACT,UAAU;GAA2D,gBAAgB,CAAC,aAAa;GACnG,MAAM;IAAE,aAAa;IAA4B,QAAQ;IAAsB,gBAAgB;GAAW;EAC3G,CAAA;;;;;;;;;;;AAmBD,IAAa,sBAAb,MAAa,oBAAmB;CAErB,WAAW,MAAM,OAAK;EAAA,GAAA,YAAA,EAAA,WAAA,WAAA,+BAAA,CAAA;EAAI,WAAW;CAAgB,CAAA;CAC3C,OAAO,OAAO,aAAa;CACrC,YAAY,MAAc,IAAE;EAAA,GAAA,YAAA,EAAA,WAAA,YAAA,+BAAA,CAAA;EAAI,OAAO;CAAO,CAAA;CACpC,UAAU,eAAe,GAAG,eAAe,EAAE,SAAS,UAAS,CAAE,GAAG,KAAK,UAAS,CAAE,GAAE,GAAA,YAAA,CAAA,EAAA,WAAA,UAAA,CAAA,+BAAA,CAAA,CAAA;CAL9F,OAAA,OAAA,GAAA,mBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,UAAA;EAAA,MAAA;EAAmB,MAAA,CAAA;EAAA,QAAA,GAAA,gBAAA;CAAA,CAAA;CAAnB,OAAA,OAAA,GAAA,qBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,MAAA;EAAmB,cAAA;EAAA,UAAA;EAAA,QAAA;GAAA,UAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,WAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;EAAA;EAAA,MAAA;GAAA,YAAA;IAAA,QAAA;IAAA,aAAA;IAAA,gBAAA;IAAA,aAAA;GAAA;GAAA,WAAA,EAAA,SAAA,eAAA;GAAA,YAAA;IAAA,iBAAA;IAAA,cAAA;GAAA;EAAA;EAAA,gBAAA,CAAA,EAAA,WAAA,GAAA,cAAA,CAAA;EAAA,UAAA;CAAA,CAAA;;AAAnB,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAmB,YAAA,CAAA;EAX/B,MAAA;EAAU,MAAA,CAAA;GACT,UAAU;GAAuD,gBAAgB,CAAC,aAAa;GAC/F,MAAM;IAAE,mBAAmB;IACzB,MAAM;IACN,aAAa;IACb,gBAAgB;IAChB,aAAa;IACb,gBAAgB;IAChB,WAAW;GACZ;EACF,CAAA;;;;;;;;;;;;;;;;;;;;;AAqBD,IAAa,sBAAb,MAAa,oBAAmB;CAErB,WAAW,MAAM,OAAK;EAAA,GAAA,YAAA,EAAA,WAAA,WAAA,+BAAA,CAAA;EAAI,WAAW;CAAgB,CAAA;CAC3C,OAAO,OAAO,aAAa;CACrC,YAAY,MAAc,IAAE;EAAA,GAAA,YAAA,EAAA,WAAA,YAAA,+BAAA,CAAA;EAAI,OAAO;CAAO,CAAA;CACpC,UAAU,eAAe,GAAG,eAAe,EAAE,SAAS,UAAS,CAAE,GAAG,KAAK,UAAS,CAAE,GAAE,GAAA,YAAA,CAAA,EAAA,WAAA,UAAA,CAAA,+BAAA,CAAA,CAAA;CAL9F,OAAA,OAAA,GAAA,mBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,UAAA;EAAA,MAAA;EAAmB,MAAA,CAAA;EAAA,QAAA,GAAA,gBAAA;CAAA,CAAA;CAAnB,OAAA,OAAA,GAAA,qBAAA;EAAA,YAAA;EAAA,SAAA;EAAA,MAAA;EAAmB,cAAA;EAAA,UAAA;EAAA,QAAA;GAAA,UAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;GAAA,WAAA;IAAA,mBAAA;IAAA,YAAA;IAAA,UAAA;IAAA,YAAA;IAAA,mBAAA;GAAA;EAAA;EAAA,MAAA;GAAA,YAAA;IAAA,QAAA;IAAA,aAAA;IAAA,gBAAA;IAAA,aAAA;GAAA;GAAA,WAAA,EAAA,SAAA,eAAA;GAAA,YAAA;IAAA,iBAAA;IAAA,cAAA;GAAA;EAAA;EAAA,gBAAA,CAAA,EAAA,WAAA,GAAA,cAAA,CAAA;EAAA,UAAA;CAAA,CAAA;;AAAnB,GAAA,yBAAA;CAAA,YAAA;CAAA,SAAA;CAAA,UAAA;CAAA,MAAA;CAAmB,YAAA,CAAA;EAX/B,MAAA;EAAU,MAAA,CAAA;GACT,UAAU;GAAuD,gBAAgB,CAAC,aAAa;GAC/F,MAAM;IAAE,mBAAmB;IACzB,MAAM;IACN,aAAa;IACb,gBAAgB;IAChB,aAAa;IACb,gBAAgB;IAChB,WAAW;GACZ;EACF,CAAA;;;;;;;;;;;;;;;;;;;;;AASD,MAAa,kBAAkB;CAC7B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACQ"}