atomicuilibrary 0.0.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 (1108) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +111 -0
  3. package/dist/cjs/category-section.cjs.entry.js +30 -0
  4. package/dist/cjs/component-size-DsYFUZcz.js +29 -0
  5. package/dist/cjs/dom-oP1E4Rd3.js +267 -0
  6. package/dist/cjs/event-bus-B6M2f8CQ.js +23 -0
  7. package/dist/cjs/exploration-project-tailwind.cjs.js +24 -0
  8. package/dist/cjs/focus-trap-i9T6oXLc.js +139 -0
  9. package/dist/cjs/index-ClkOYpT8.js +2275 -0
  10. package/dist/cjs/index.cjs.js +260 -0
  11. package/dist/cjs/layout-manager.cjs.entry.js +616 -0
  12. package/dist/cjs/library-card.cjs.entry.js +63 -0
  13. package/dist/cjs/lm-container_2.cjs.entry.js +79 -0
  14. package/dist/cjs/lm-panel_3.cjs.entry.js +108 -0
  15. package/dist/cjs/loader.cjs.js +12 -0
  16. package/dist/cjs/my-component.cjs.entry.js +33 -0
  17. package/dist/cjs/my-step.cjs.entry.js +29 -0
  18. package/dist/cjs/nav-bar.cjs.entry.js +247 -0
  19. package/dist/cjs/security-E1JcwxGc.js +1547 -0
  20. package/dist/cjs/smart-step.cjs.entry.js +47 -0
  21. package/dist/cjs/timeline-item.cjs.entry.js +29 -0
  22. package/dist/cjs/ui-accordion_10.cjs.entry.js +5733 -0
  23. package/dist/cjs/ui-advanced-data-table.cjs.entry.js +2684 -0
  24. package/dist/cjs/ui-anchor.cjs.entry.js +558 -0
  25. package/dist/cjs/ui-animate-on-scroll.cjs.entry.js +285 -0
  26. package/dist/cjs/ui-aside-panel.cjs.entry.js +638 -0
  27. package/dist/cjs/ui-avatar-group_3.cjs.entry.js +634 -0
  28. package/dist/cjs/ui-breadcrumb-item.cjs.entry.js +56 -0
  29. package/dist/cjs/ui-breadcrumb.cjs.entry.js +201 -0
  30. package/dist/cjs/ui-callout-banner.cjs.entry.js +291 -0
  31. package/dist/cjs/ui-card.cjs.entry.js +411 -0
  32. package/dist/cjs/ui-carousel.cjs.entry.js +547 -0
  33. package/dist/cjs/ui-checkbox-group.cjs.entry.js +330 -0
  34. package/dist/cjs/ui-checkbox.cjs.entry.js +260 -0
  35. package/dist/cjs/ui-code-editor.cjs.entry.js +961 -0
  36. package/dist/cjs/ui-code-preview.cjs.entry.js +315 -0
  37. package/dist/cjs/ui-color-controller.cjs.entry.js +150 -0
  38. package/dist/cjs/ui-color-picker.cjs.entry.js +658 -0
  39. package/dist/cjs/ui-command-palette.cjs.entry.js +178 -0
  40. package/dist/cjs/ui-dialog-box.cjs.entry.js +1808 -0
  41. package/dist/cjs/ui-dialog-content.cjs.entry.js +31 -0
  42. package/dist/cjs/ui-dialog-footer_2.cjs.entry.js +193 -0
  43. package/dist/cjs/ui-divider.cjs.entry.js +481 -0
  44. package/dist/cjs/ui-dock-host.cjs.entry.js +128 -0
  45. package/dist/cjs/ui-dock.cjs.entry.js +221 -0
  46. package/dist/cjs/ui-drag-drop.cjs.entry.js +172 -0
  47. package/dist/cjs/ui-dropdown_2.cjs.entry.js +1552 -0
  48. package/dist/cjs/ui-empty-state.cjs.entry.js +398 -0
  49. package/dist/cjs/ui-fab-item.cjs.entry.js +39 -0
  50. package/dist/cjs/ui-fab.cjs.entry.js +277 -0
  51. package/dist/cjs/ui-file-upload.cjs.entry.js +418 -0
  52. package/dist/cjs/ui-horizontal-nav.cjs.entry.js +135 -0
  53. package/dist/cjs/ui-image-button.cjs.entry.js +67 -0
  54. package/dist/cjs/ui-input-pair.cjs.entry.js +44 -0
  55. package/dist/cjs/ui-knob.cjs.entry.js +447 -0
  56. package/dist/cjs/ui-library.cjs.entry.js +134 -0
  57. package/dist/cjs/ui-list-group_2.cjs.entry.js +586 -0
  58. package/dist/cjs/ui-list.cjs.entry.js +732 -0
  59. package/dist/cjs/ui-masonry.cjs.entry.js +478 -0
  60. package/dist/cjs/ui-meter-group.cjs.entry.js +173 -0
  61. package/dist/cjs/ui-navigation-item.cjs.entry.js +104 -0
  62. package/dist/cjs/ui-number-input.cjs.entry.js +191 -0
  63. package/dist/cjs/ui-otp-input.cjs.entry.js +246 -0
  64. package/dist/cjs/ui-pagination_3.cjs.entry.js +1621 -0
  65. package/dist/cjs/ui-panel.cjs.entry.js +614 -0
  66. package/dist/cjs/ui-pattern-input.cjs.entry.js +278 -0
  67. package/dist/cjs/ui-popover.cjs.entry.js +517 -0
  68. package/dist/cjs/ui-progress.cjs.entry.js +516 -0
  69. package/dist/cjs/ui-radio-group.cjs.entry.js +205 -0
  70. package/dist/cjs/ui-radio.cjs.entry.js +206 -0
  71. package/dist/cjs/ui-range-slider.cjs.entry.js +637 -0
  72. package/dist/cjs/ui-resizable-panel.cjs.entry.js +484 -0
  73. package/dist/cjs/ui-scroll-top.cjs.entry.js +459 -0
  74. package/dist/cjs/ui-smart-context-menu.cjs.entry.js +376 -0
  75. package/dist/cjs/ui-smart-location-dropdown.cjs.entry.js +565 -0
  76. package/dist/cjs/ui-smart-stepper.cjs.entry.js +137 -0
  77. package/dist/cjs/ui-snackbar.cjs.entry.js +863 -0
  78. package/dist/cjs/ui-speed-dial.cjs.entry.js +520 -0
  79. package/dist/cjs/ui-speedometer.cjs.entry.js +428 -0
  80. package/dist/cjs/ui-splitter.cjs.entry.js +282 -0
  81. package/dist/cjs/ui-step.cjs.entry.js +30 -0
  82. package/dist/cjs/ui-stepper.cjs.entry.js +640 -0
  83. package/dist/cjs/ui-switch.cjs.entry.js +405 -0
  84. package/dist/cjs/ui-tabs.cjs.entry.js +703 -0
  85. package/dist/cjs/ui-tag.cjs.entry.js +299 -0
  86. package/dist/cjs/ui-timeline.cjs.entry.js +267 -0
  87. package/dist/cjs/ui-timer.cjs.entry.js +502 -0
  88. package/dist/cjs/ui-toolbar.cjs.entry.js +619 -0
  89. package/dist/cjs/ui-tooltip.cjs.entry.js +697 -0
  90. package/dist/cjs/ui-top-bar.cjs.entry.js +121 -0
  91. package/dist/cjs/ui-transfer-list.cjs.entry.js +592 -0
  92. package/dist/cjs/ui-tree.cjs.entry.js +874 -0
  93. package/dist/cjs/ui-workspace-manager.cjs.entry.js +1201 -0
  94. package/dist/cjs/utils-DVZ6gul6.js +26 -0
  95. package/dist/collection/assets/js/component-config.js +41 -0
  96. package/dist/collection/assets/js/demo-loader.js +147 -0
  97. package/dist/collection/assets/js/demo-nav.js +273 -0
  98. package/dist/collection/assets/js/demos/about-demo.js +60 -0
  99. package/dist/collection/assets/js/demos/accordion-demo.js +1954 -0
  100. package/dist/collection/assets/js/demos/advanced-data-table-demo.js +2952 -0
  101. package/dist/collection/assets/js/demos/anchor-demo.js +527 -0
  102. package/dist/collection/assets/js/demos/animate-on-scroll-demo.js +174 -0
  103. package/dist/collection/assets/js/demos/aside-panel-demo.js +1109 -0
  104. package/dist/collection/assets/js/demos/avatar-demo.js +508 -0
  105. package/dist/collection/assets/js/demos/badge-demo.js +620 -0
  106. package/dist/collection/assets/js/demos/breadcrumb-demo.js +365 -0
  107. package/dist/collection/assets/js/demos/button-demo.js +1223 -0
  108. package/dist/collection/assets/js/demos/button-toggle-demo.js +978 -0
  109. package/dist/collection/assets/js/demos/callout-banner-demo.js +366 -0
  110. package/dist/collection/assets/js/demos/card-demo.js +427 -0
  111. package/dist/collection/assets/js/demos/carousel-demo.js +360 -0
  112. package/dist/collection/assets/js/demos/checkbox-demo.js +489 -0
  113. package/dist/collection/assets/js/demos/code-preview-demo.js +216 -0
  114. package/dist/collection/assets/js/demos/color-picker-demo.js +117 -0
  115. package/dist/collection/assets/js/demos/command-palette-demo.js +105 -0
  116. package/dist/collection/assets/js/demos/complex-form-demo.js +45 -0
  117. package/dist/collection/assets/js/demos/context-menu-data.js +436 -0
  118. package/dist/collection/assets/js/demos/context-menu-demo.js +829 -0
  119. package/dist/collection/assets/js/demos/dashboard-demo.js +5 -0
  120. package/dist/collection/assets/js/demos/dialog-demo-temp.js +411 -0
  121. package/dist/collection/assets/js/demos/dialog-demo.js +2567 -0
  122. package/dist/collection/assets/js/demos/divider-demo.js +853 -0
  123. package/dist/collection/assets/js/demos/dock-demo.js +422 -0
  124. package/dist/collection/assets/js/demos/dock-host-init.js +117 -0
  125. package/dist/collection/assets/js/demos/dock-host-playground.js +59 -0
  126. package/dist/collection/assets/js/demos/documentation-demo.js +34 -0
  127. package/dist/collection/assets/js/demos/drag-drop-demo.js +132 -0
  128. package/dist/collection/assets/js/demos/dropdown-demo.js +1410 -0
  129. package/dist/collection/assets/js/demos/dropdown-subtitle-demo.js +18 -0
  130. package/dist/collection/assets/js/demos/empty-state-demo.js +580 -0
  131. package/dist/collection/assets/js/demos/fab-demo.js +374 -0
  132. package/dist/collection/assets/js/demos/file-upload-demo.js +171 -0
  133. package/dist/collection/assets/js/demos/home-components.js +750 -0
  134. package/dist/collection/assets/js/demos/home-demo.js +441 -0
  135. package/dist/collection/assets/js/demos/horizontal-nav-demo.js +277 -0
  136. package/dist/collection/assets/js/demos/icon-demo.js +380 -0
  137. package/dist/collection/assets/js/demos/input-demo.js +1932 -0
  138. package/dist/collection/assets/js/demos/knob-demo.js +570 -0
  139. package/dist/collection/assets/js/demos/layout-manager-demo.js +918 -0
  140. package/dist/collection/assets/js/demos/list-demo.js +1402 -0
  141. package/dist/collection/assets/js/demos/loader-demo.js +453 -0
  142. package/dist/collection/assets/js/demos/meter-group-demo.js +499 -0
  143. package/dist/collection/assets/js/demos/multi-level-context-menu-demo.js +924 -0
  144. package/dist/collection/assets/js/demos/my-profile-demo.js +237 -0
  145. package/dist/collection/assets/js/demos/nav-bar-demo.js +187 -0
  146. package/dist/collection/assets/js/demos/number-input-demo.js +242 -0
  147. package/dist/collection/assets/js/demos/overview-demo.js +11 -0
  148. package/dist/collection/assets/js/demos/pagination-demo.js +1042 -0
  149. package/dist/collection/assets/js/demos/panel-demo.js +789 -0
  150. package/dist/collection/assets/js/demos/pattern-input-demo.js +241 -0
  151. package/dist/collection/assets/js/demos/popover-demo.js +882 -0
  152. package/dist/collection/assets/js/demos/progress-demo.js +462 -0
  153. package/dist/collection/assets/js/demos/radio-demo.js +413 -0
  154. package/dist/collection/assets/js/demos/range-slider-demo.js +1217 -0
  155. package/dist/collection/assets/js/demos/rating-demo.js +383 -0
  156. package/dist/collection/assets/js/demos/scroll-top-demo.js +353 -0
  157. package/dist/collection/assets/js/demos/skeleton-demo.js +490 -0
  158. package/dist/collection/assets/js/demos/skeleton-performance-demo.js +26 -0
  159. package/dist/collection/assets/js/demos/smart-dialog-demo.js +552 -0
  160. package/dist/collection/assets/js/demos/smart-menu-demo.js +375 -0
  161. package/dist/collection/assets/js/demos/smart-stepper-demo.js +50 -0
  162. package/dist/collection/assets/js/demos/snackbar-demo.js +1040 -0
  163. package/dist/collection/assets/js/demos/speed-dial-demo.js +764 -0
  164. package/dist/collection/assets/js/demos/speedometer-demo.js +425 -0
  165. package/dist/collection/assets/js/demos/split-button-demo.js +201 -0
  166. package/dist/collection/assets/js/demos/stack-demo.js +228 -0
  167. package/dist/collection/assets/js/demos/stepper-demo.js +798 -0
  168. package/dist/collection/assets/js/demos/switch-demo.js +849 -0
  169. package/dist/collection/assets/js/demos/tabs-demo.js +1032 -0
  170. package/dist/collection/assets/js/demos/tag-demo.js +842 -0
  171. package/dist/collection/assets/js/demos/theme-selector-demo.js +466 -0
  172. package/dist/collection/assets/js/demos/timeline-demo.js +365 -0
  173. package/dist/collection/assets/js/demos/timeline-playground.js +59 -0
  174. package/dist/collection/assets/js/demos/timer-demo.js +313 -0
  175. package/dist/collection/assets/js/demos/toolbar-demo.js +643 -0
  176. package/dist/collection/assets/js/demos/tooltip-demo.js +730 -0
  177. package/dist/collection/assets/js/demos/top-bar-demo.js +417 -0
  178. package/dist/collection/assets/js/demos/transfer-list-demo.js +555 -0
  179. package/dist/collection/assets/js/demos/tree-demo.js +693 -0
  180. package/dist/collection/assets/js/demos/workspace-manager-demo.js +241 -0
  181. package/dist/collection/assets/js/index-boot.js +104 -0
  182. package/dist/collection/assets/js/nav-bar-demo.js +20 -0
  183. package/dist/collection/assets/js/nav-bar-init.js +119 -0
  184. package/dist/collection/assets/js/utils/layout-loader.js +80 -0
  185. package/dist/collection/collection-manifest.json +113 -0
  186. package/dist/collection/components/accordion/accordion.css +2090 -0
  187. package/dist/collection/components/accordion/accordion.js +2955 -0
  188. package/dist/collection/components/accordion/types.js +1 -0
  189. package/dist/collection/components/advanced-data-table/advanced-data-table.css +2606 -0
  190. package/dist/collection/components/advanced-data-table/advanced-data-table.js +5394 -0
  191. package/dist/collection/components/advanced-data-table/types.js +1 -0
  192. package/dist/collection/components/anchor/anchor.css +395 -0
  193. package/dist/collection/components/anchor/anchor.js +1404 -0
  194. package/dist/collection/components/anchor/types.js +1 -0
  195. package/dist/collection/components/animate-on-scroll/animate-on-scroll.css +804 -0
  196. package/dist/collection/components/animate-on-scroll/animate-on-scroll.js +696 -0
  197. package/dist/collection/components/aside-panel/aside-panel.css +472 -0
  198. package/dist/collection/components/aside-panel/aside-panel.js +1697 -0
  199. package/dist/collection/components/avatar/avatar.css +696 -0
  200. package/dist/collection/components/avatar/avatar.js +2007 -0
  201. package/dist/collection/components/avatar/types.js +1 -0
  202. package/dist/collection/components/avatar-group/avatar-group.css +253 -0
  203. package/dist/collection/components/avatar-group/avatar-group.js +405 -0
  204. package/dist/collection/components/avatar-group/types.js +1 -0
  205. package/dist/collection/components/badge/badge.css +580 -0
  206. package/dist/collection/components/badge/badge.js +723 -0
  207. package/dist/collection/components/badge/types.js +1 -0
  208. package/dist/collection/components/breadcrumb/breadcrumb-item.js +231 -0
  209. package/dist/collection/components/breadcrumb/breadcrumb.css +313 -0
  210. package/dist/collection/components/breadcrumb/breadcrumb.js +510 -0
  211. package/dist/collection/components/breadcrumb/types.js +1 -0
  212. package/dist/collection/components/button/button.css +1862 -0
  213. package/dist/collection/components/button/button.js +1380 -0
  214. package/dist/collection/components/button/types.js +1 -0
  215. package/dist/collection/components/button-toggle/button-toggle.css +97 -0
  216. package/dist/collection/components/button-toggle/button-toggle.js +620 -0
  217. package/dist/collection/components/button-toggle-group/button-toggle-group.css +401 -0
  218. package/dist/collection/components/button-toggle-group/button-toggle-group.js +1572 -0
  219. package/dist/collection/components/button-toggle-group/types.js +1 -0
  220. package/dist/collection/components/callout-banner/callout-banner.css +684 -0
  221. package/dist/collection/components/callout-banner/callout-banner.js +1076 -0
  222. package/dist/collection/components/callout-banner/types.js +1 -0
  223. package/dist/collection/components/card/card.css +663 -0
  224. package/dist/collection/components/card/card.js +1697 -0
  225. package/dist/collection/components/card/types.js +1 -0
  226. package/dist/collection/components/carousel/carousel.css +549 -0
  227. package/dist/collection/components/carousel/carousel.js +1512 -0
  228. package/dist/collection/components/carousel/types.js +1 -0
  229. package/dist/collection/components/checkbox/checkbox.css +863 -0
  230. package/dist/collection/components/checkbox/checkbox.js +1201 -0
  231. package/dist/collection/components/checkbox/types.js +1 -0
  232. package/dist/collection/components/checkbox-group/checkbox-group.css +223 -0
  233. package/dist/collection/components/checkbox-group/checkbox-group.js +1001 -0
  234. package/dist/collection/components/checkbox-group/types.js +1 -0
  235. package/dist/collection/components/code-editor/code-editor.css +1081 -0
  236. package/dist/collection/components/code-editor/code-editor.js +1211 -0
  237. package/dist/collection/components/code-editor/types.js +1 -0
  238. package/dist/collection/components/code-preview/types.js +1 -0
  239. package/dist/collection/components/code-preview/ui-code-preview.css +209 -0
  240. package/dist/collection/components/code-preview/ui-code-preview.js +548 -0
  241. package/dist/collection/components/color-controller/color-controller.css +108 -0
  242. package/dist/collection/components/color-controller/color-controller.js +224 -0
  243. package/dist/collection/components/color-picker/color-picker.css +323 -0
  244. package/dist/collection/components/color-picker/color-picker.js +1139 -0
  245. package/dist/collection/components/color-picker/types.js +1 -0
  246. package/dist/collection/components/command-palette/command-palette.css +260 -0
  247. package/dist/collection/components/command-palette/command-palette.js +429 -0
  248. package/dist/collection/components/command-palette/types.js +1 -0
  249. package/dist/collection/components/context-menu/context-menu.css +388 -0
  250. package/dist/collection/components/context-menu/context-menu.js +1412 -0
  251. package/dist/collection/components/context-menu/types.js +1 -0
  252. package/dist/collection/components/dialog-box/dialog-box.css +1261 -0
  253. package/dist/collection/components/dialog-box/dialog-box.js +4314 -0
  254. package/dist/collection/components/dialog-box/dialog-tray.css +268 -0
  255. package/dist/collection/components/dialog-box/types.js +1 -0
  256. package/dist/collection/components/dialog-content/dialog-content.css +83 -0
  257. package/dist/collection/components/dialog-content/dialog-content.js +96 -0
  258. package/dist/collection/components/dialog-footer/dialog-footer.css +89 -0
  259. package/dist/collection/components/dialog-footer/dialog-footer.js +94 -0
  260. package/dist/collection/components/dialog-footer/types.js +1 -0
  261. package/dist/collection/components/dialog-header/dialog-header.css +203 -0
  262. package/dist/collection/components/dialog-header/dialog-header.js +630 -0
  263. package/dist/collection/components/dialog-header/types.js +1 -0
  264. package/dist/collection/components/divider/divider.css +948 -0
  265. package/dist/collection/components/divider/divider.js +1612 -0
  266. package/dist/collection/components/divider/types.js +1 -0
  267. package/dist/collection/components/dock/dock.css +348 -0
  268. package/dist/collection/components/dock/dock.js +464 -0
  269. package/dist/collection/components/dock/types.js +1 -0
  270. package/dist/collection/components/dock-host/index.js +1 -0
  271. package/dist/collection/components/dock-host/types.js +1 -0
  272. package/dist/collection/components/dock-host/ui-dock-host.css +155 -0
  273. package/dist/collection/components/dock-host/ui-dock-host.js +226 -0
  274. package/dist/collection/components/drag-drop/drag-drop.css +103 -0
  275. package/dist/collection/components/drag-drop/drag-drop.js +385 -0
  276. package/dist/collection/components/drag-drop/types.js +1 -0
  277. package/dist/collection/components/dropdown/dropdown.css +1142 -0
  278. package/dist/collection/components/dropdown/dropdown.js +2033 -0
  279. package/dist/collection/components/dropdown/types.js +1 -0
  280. package/dist/collection/components/empty-state/empty-state.css +712 -0
  281. package/dist/collection/components/empty-state/empty-state.js +1256 -0
  282. package/dist/collection/components/empty-state/types.js +1 -0
  283. package/dist/collection/components/fab/fab.css +601 -0
  284. package/dist/collection/components/fab/fab.js +1124 -0
  285. package/dist/collection/components/fab-item/fab-item.css +107 -0
  286. package/dist/collection/components/fab-item/fab-item.js +177 -0
  287. package/dist/collection/components/fab-item/types.js +1 -0
  288. package/dist/collection/components/file-upload/file-upload.css +243 -0
  289. package/dist/collection/components/file-upload/file-upload.js +1022 -0
  290. package/dist/collection/components/file-upload/types.js +1 -0
  291. package/dist/collection/components/horizontal-nav/horizontal-nav.css +394 -0
  292. package/dist/collection/components/horizontal-nav/horizontal-nav.js +375 -0
  293. package/dist/collection/components/icon/icon.css +113 -0
  294. package/dist/collection/components/icon/icon.js +583 -0
  295. package/dist/collection/components/image-button/image-button.css +154 -0
  296. package/dist/collection/components/image-button/image-button.js +310 -0
  297. package/dist/collection/components/image-button/types.js +1 -0
  298. package/dist/collection/components/input/input.css +1544 -0
  299. package/dist/collection/components/input/input.js +3690 -0
  300. package/dist/collection/components/input/types.js +1 -0
  301. package/dist/collection/components/input-pair/input-pair.css +72 -0
  302. package/dist/collection/components/input-pair/input-pair.js +309 -0
  303. package/dist/collection/components/knob/knob.css +162 -0
  304. package/dist/collection/components/knob/knob.js +986 -0
  305. package/dist/collection/components/knob/types.js +1 -0
  306. package/dist/collection/components/layout-manager/layout-manager.css +41 -0
  307. package/dist/collection/components/layout-manager/layout-manager.js +525 -0
  308. package/dist/collection/components/layout-manager/lm-container/lm-container.css +117 -0
  309. package/dist/collection/components/layout-manager/lm-container/lm-container.js +110 -0
  310. package/dist/collection/components/layout-manager/lm-floating-window/lm-floating-window.css +0 -0
  311. package/dist/collection/components/layout-manager/lm-floating-window/lm-floating-window.js +49 -0
  312. package/dist/collection/components/layout-manager/lm-panel/lm-panel.css +97 -0
  313. package/dist/collection/components/layout-manager/lm-panel/lm-panel.js +58 -0
  314. package/dist/collection/components/layout-manager/lm-splitter/lm-splitter.css +57 -0
  315. package/dist/collection/components/layout-manager/lm-splitter/lm-splitter.js +120 -0
  316. package/dist/collection/components/layout-manager/lm-tabs/lm-tabs.css +149 -0
  317. package/dist/collection/components/layout-manager/lm-tabs/lm-tabs.js +130 -0
  318. package/dist/collection/components/layout-manager/types.js +1 -0
  319. package/dist/collection/components/library/category-section.css +147 -0
  320. package/dist/collection/components/library/category-section.js +139 -0
  321. package/dist/collection/components/library/data.js +74 -0
  322. package/dist/collection/components/library/library-card.css +181 -0
  323. package/dist/collection/components/library/library-card.js +203 -0
  324. package/dist/collection/components/library/library.css +358 -0
  325. package/dist/collection/components/library/library.js +91 -0
  326. package/dist/collection/components/list/list.css +1029 -0
  327. package/dist/collection/components/list/list.js +2167 -0
  328. package/dist/collection/components/list-group/list-group.css +275 -0
  329. package/dist/collection/components/list-group/list-group.js +356 -0
  330. package/dist/collection/components/list-item/list-item.css +1491 -0
  331. package/dist/collection/components/list-item/list-item.js +2184 -0
  332. package/dist/collection/components/masonry/masonry.css +414 -0
  333. package/dist/collection/components/masonry/masonry.js +1104 -0
  334. package/dist/collection/components/masonry/types.js +1 -0
  335. package/dist/collection/components/meter-group/meter-group.css +184 -0
  336. package/dist/collection/components/meter-group/meter-group.js +471 -0
  337. package/dist/collection/components/meter-group/types.js +1 -0
  338. package/dist/collection/components/my-component/my-component.css +27 -0
  339. package/dist/collection/components/my-component/my-component.js +95 -0
  340. package/dist/collection/components/my-step/my-step.css +25 -0
  341. package/dist/collection/components/my-step/my-step.js +237 -0
  342. package/dist/collection/components/nav-bar/nav-bar.css +448 -0
  343. package/dist/collection/components/nav-bar/nav-bar.js +608 -0
  344. package/dist/collection/components/number-input/number-input.css +200 -0
  345. package/dist/collection/components/number-input/number-input.js +695 -0
  346. package/dist/collection/components/otp-input/otp-input.css +243 -0
  347. package/dist/collection/components/otp-input/otp-input.js +761 -0
  348. package/dist/collection/components/otp-input/types.js +1 -0
  349. package/dist/collection/components/pagination/pagination.css +1399 -0
  350. package/dist/collection/components/pagination/pagination.js +2033 -0
  351. package/dist/collection/components/pagination/types.js +1 -0
  352. package/dist/collection/components/panel/panel.css +837 -0
  353. package/dist/collection/components/panel/panel.js +1842 -0
  354. package/dist/collection/components/panel/types.js +1 -0
  355. package/dist/collection/components/pattern-input/pattern-input.css +252 -0
  356. package/dist/collection/components/pattern-input/pattern-input.js +788 -0
  357. package/dist/collection/components/popover/popover.css +399 -0
  358. package/dist/collection/components/popover/popover.js +1449 -0
  359. package/dist/collection/components/popover/types.js +1 -0
  360. package/dist/collection/components/progress/progress.css +588 -0
  361. package/dist/collection/components/progress/progress.js +1414 -0
  362. package/dist/collection/components/progress/types.js +1 -0
  363. package/dist/collection/components/radio/radio.css +773 -0
  364. package/dist/collection/components/radio/radio.js +1059 -0
  365. package/dist/collection/components/radio/types.js +1 -0
  366. package/dist/collection/components/radio-group/radio-group.css +202 -0
  367. package/dist/collection/components/radio-group/radio-group.js +903 -0
  368. package/dist/collection/components/radio-group/types.js +1 -0
  369. package/dist/collection/components/range-slider/range-slider.css +602 -0
  370. package/dist/collection/components/range-slider/range-slider.js +1369 -0
  371. package/dist/collection/components/range-slider/types.js +1 -0
  372. package/dist/collection/components/rating/rating.css +768 -0
  373. package/dist/collection/components/rating/rating.js +1062 -0
  374. package/dist/collection/components/rating/types.js +1 -0
  375. package/dist/collection/components/resizable-panel/resizable-panel.css +247 -0
  376. package/dist/collection/components/resizable-panel/resizable-panel.js +874 -0
  377. package/dist/collection/components/resizable-panel/types.js +1 -0
  378. package/dist/collection/components/scroll-top/scroll-top.css +397 -0
  379. package/dist/collection/components/scroll-top/scroll-top.js +1178 -0
  380. package/dist/collection/components/scroll-top/types.js +1 -0
  381. package/dist/collection/components/skeleton/skeleton-loader.css +429 -0
  382. package/dist/collection/components/skeleton/skeleton-loader.js +1193 -0
  383. package/dist/collection/components/skeleton/types.js +1 -0
  384. package/dist/collection/components/smart-location-dropdown/smart-location-dropdown.css +357 -0
  385. package/dist/collection/components/smart-location-dropdown/smart-location-dropdown.js +1190 -0
  386. package/dist/collection/components/smart-location-dropdown/types.js +1 -0
  387. package/dist/collection/components/smart-menu/menu-item.interface.js +1 -0
  388. package/dist/collection/components/smart-menu/smart-menu.css +119 -0
  389. package/dist/collection/components/smart-menu/smart-menu.js +544 -0
  390. package/dist/collection/components/smart-stepper/smart-step.css +213 -0
  391. package/dist/collection/components/smart-stepper/smart-step.js +170 -0
  392. package/dist/collection/components/smart-stepper/smart-stepper.css +146 -0
  393. package/dist/collection/components/smart-stepper/smart-stepper.js +338 -0
  394. package/dist/collection/components/snackbar/snackbar.css +1480 -0
  395. package/dist/collection/components/snackbar/snackbar.js +1759 -0
  396. package/dist/collection/components/snackbar/types.js +1 -0
  397. package/dist/collection/components/speed-dial/speed-dial.css +478 -0
  398. package/dist/collection/components/speed-dial/speed-dial.js +1183 -0
  399. package/dist/collection/components/speed-dial/types.js +1 -0
  400. package/dist/collection/components/speedometer/speedometer.css +95 -0
  401. package/dist/collection/components/speedometer/speedometer.js +868 -0
  402. package/dist/collection/components/speedometer/types.js +1 -0
  403. package/dist/collection/components/splitter/splitter.css +269 -0
  404. package/dist/collection/components/splitter/splitter.js +713 -0
  405. package/dist/collection/components/splitter/types.js +1 -0
  406. package/dist/collection/components/stack/stack.css +269 -0
  407. package/dist/collection/components/stack/stack.js +297 -0
  408. package/dist/collection/components/stack/types.js +1 -0
  409. package/dist/collection/components/step/step.css +77 -0
  410. package/dist/collection/components/step/step.js +214 -0
  411. package/dist/collection/components/step/types.js +1 -0
  412. package/dist/collection/components/stepper/stepper.css +1079 -0
  413. package/dist/collection/components/stepper/stepper.js +1850 -0
  414. package/dist/collection/components/stepper/types.js +1 -0
  415. package/dist/collection/components/switch/switch.css +1099 -0
  416. package/dist/collection/components/switch/switch.js +1578 -0
  417. package/dist/collection/components/tabs/tabs.css +1355 -0
  418. package/dist/collection/components/tabs/tabs.js +1474 -0
  419. package/dist/collection/components/tabs/types.js +1 -0
  420. package/dist/collection/components/tag/tag.css +893 -0
  421. package/dist/collection/components/tag/tag.js +1119 -0
  422. package/dist/collection/components/tag/types.js +1 -0
  423. package/dist/collection/components/tag-group/tag-group.css +144 -0
  424. package/dist/collection/components/tag-group/tag-group.js +887 -0
  425. package/dist/collection/components/tag-group/types.js +1 -0
  426. package/dist/collection/components/timeline/timeline.css +1850 -0
  427. package/dist/collection/components/timeline/timeline.js +889 -0
  428. package/dist/collection/components/timeline/types.js +1 -0
  429. package/dist/collection/components/timeline/ui-timeline.stories.js +19 -0
  430. package/dist/collection/components/timeline-item/timeline-item.css +75 -0
  431. package/dist/collection/components/timeline-item/timeline-item.js +91 -0
  432. package/dist/collection/components/timer/timer.css +367 -0
  433. package/dist/collection/components/timer/timer.js +1292 -0
  434. package/dist/collection/components/timer/types.js +1 -0
  435. package/dist/collection/components/timer/ui-timer.stories.js +19 -0
  436. package/dist/collection/components/toggle-group/toggle-group.css +361 -0
  437. package/dist/collection/components/toggle-group/toggle-group.js +1212 -0
  438. package/dist/collection/components/toggle-group/types.js +1 -0
  439. package/dist/collection/components/toolbar/toolbar-types.js +1 -0
  440. package/dist/collection/components/toolbar/toolbar.css +1186 -0
  441. package/dist/collection/components/toolbar/toolbar.js +1635 -0
  442. package/dist/collection/components/tooltip/tooltip.css +609 -0
  443. package/dist/collection/components/tooltip/tooltip.js +1882 -0
  444. package/dist/collection/components/tooltip/types.js +1 -0
  445. package/dist/collection/components/top-bar/top-bar.css +274 -0
  446. package/dist/collection/components/top-bar/top-bar.js +383 -0
  447. package/dist/collection/components/transfer-list/transfer-list.css +520 -0
  448. package/dist/collection/components/transfer-list/transfer-list.js +1225 -0
  449. package/dist/collection/components/transfer-list/types.js +1 -0
  450. package/dist/collection/components/tree/tree.css +1197 -0
  451. package/dist/collection/components/tree/tree.js +2509 -0
  452. package/dist/collection/components/tree/types.js +1 -0
  453. package/dist/collection/components/ui-navigation-bar/navigation-bar/navigation-bar.css +830 -0
  454. package/dist/collection/components/ui-navigation-bar/navigation-bar/navigation-bar.js +1231 -0
  455. package/dist/collection/components/ui-navigation-bar/navigation-bar/navigation-types.js +1 -0
  456. package/dist/collection/components/ui-navigation-bar/navigation-item.css +679 -0
  457. package/dist/collection/components/ui-navigation-bar/navigation-item.js +385 -0
  458. package/dist/collection/components/ui-navigation-bar/navigation-types.js +1 -0
  459. package/dist/collection/components/workspace-manager/types.js +1 -0
  460. package/dist/collection/components/workspace-manager/workspace-manager.css +1094 -0
  461. package/dist/collection/components/workspace-manager/workspace-manager.js +1914 -0
  462. package/dist/collection/components.js +51 -0
  463. package/dist/collection/index.js +108 -0
  464. package/dist/collection/service/drag-manager.js +23 -0
  465. package/dist/collection/service/event-bus.js +19 -0
  466. package/dist/collection/service/serialization.js +8 -0
  467. package/dist/collection/service/state-engine.js +247 -0
  468. package/dist/collection/service/theme-switcher.js +146 -0
  469. package/dist/collection/stories/Button.stories.js +15 -0
  470. package/dist/collection/types/common.js +1 -0
  471. package/dist/collection/types/index.js +4 -0
  472. package/dist/collection/utils/aria-live.js +60 -0
  473. package/dist/collection/utils/component-size.js +25 -0
  474. package/dist/collection/utils/dom.js +260 -0
  475. package/dist/collection/utils/focus-trap.js +135 -0
  476. package/dist/collection/utils/security.js +10 -0
  477. package/dist/collection/utils/test/setup-component-test-env.js +92 -0
  478. package/dist/collection/utils/utils.js +21 -0
  479. package/dist/collection/utils/validation.js +74 -0
  480. package/dist/components/avatar-group.js +1 -0
  481. package/dist/components/avatar.js +1 -0
  482. package/dist/components/badge.js +1 -0
  483. package/dist/components/button-toggle.js +1 -0
  484. package/dist/components/category-section.d.ts +11 -0
  485. package/dist/components/category-section.js +1 -0
  486. package/dist/components/category-section2.js +1 -0
  487. package/dist/components/checkbox.js +1 -0
  488. package/dist/components/context-menu.js +1 -0
  489. package/dist/components/dialog-footer.js +1 -0
  490. package/dist/components/dialog-header.js +1 -0
  491. package/dist/components/dom.js +1 -0
  492. package/dist/components/dropdown.js +1 -0
  493. package/dist/components/event-bus.js +1 -0
  494. package/dist/components/focus-trap.js +1 -0
  495. package/dist/components/icon.js +2 -0
  496. package/dist/components/index.d.ts +35 -0
  497. package/dist/components/index.js +1 -0
  498. package/dist/components/input.js +1 -0
  499. package/dist/components/layout-manager.d.ts +11 -0
  500. package/dist/components/layout-manager.js +1 -0
  501. package/dist/components/library-card.d.ts +11 -0
  502. package/dist/components/library-card.js +1 -0
  503. package/dist/components/library-card2.js +1 -0
  504. package/dist/components/list-group.js +1 -0
  505. package/dist/components/list-item.js +1 -0
  506. package/dist/components/lm-container.d.ts +11 -0
  507. package/dist/components/lm-container.js +1 -0
  508. package/dist/components/lm-container2.js +1 -0
  509. package/dist/components/lm-floating-window.d.ts +11 -0
  510. package/dist/components/lm-floating-window.js +1 -0
  511. package/dist/components/lm-floating-window2.js +1 -0
  512. package/dist/components/lm-panel.d.ts +11 -0
  513. package/dist/components/lm-panel.js +1 -0
  514. package/dist/components/lm-panel2.js +1 -0
  515. package/dist/components/lm-splitter.d.ts +11 -0
  516. package/dist/components/lm-splitter.js +1 -0
  517. package/dist/components/lm-splitter2.js +1 -0
  518. package/dist/components/lm-tabs.d.ts +11 -0
  519. package/dist/components/lm-tabs.js +1 -0
  520. package/dist/components/lm-tabs2.js +1 -0
  521. package/dist/components/my-component.d.ts +11 -0
  522. package/dist/components/my-component.js +1 -0
  523. package/dist/components/my-step.d.ts +11 -0
  524. package/dist/components/my-step.js +1 -0
  525. package/dist/components/nav-bar.d.ts +11 -0
  526. package/dist/components/nav-bar.js +1 -0
  527. package/dist/components/pagination.js +1 -0
  528. package/dist/components/radio.js +1 -0
  529. package/dist/components/range-slider.js +1 -0
  530. package/dist/components/rating.js +1 -0
  531. package/dist/components/resizable-panel.js +1 -0
  532. package/dist/components/skeleton-loader.js +1 -0
  533. package/dist/components/smart-step.d.ts +11 -0
  534. package/dist/components/smart-step.js +1 -0
  535. package/dist/components/stack.js +1 -0
  536. package/dist/components/switch.js +1 -0
  537. package/dist/components/tag-group.js +1 -0
  538. package/dist/components/tag.js +1 -0
  539. package/dist/components/timeline-item.d.ts +11 -0
  540. package/dist/components/timeline-item.js +1 -0
  541. package/dist/components/toggle-group.js +1 -0
  542. package/dist/components/tooltip.js +1 -0
  543. package/dist/components/ui-accordion.d.ts +11 -0
  544. package/dist/components/ui-accordion.js +1 -0
  545. package/dist/components/ui-advanced-data-table.d.ts +11 -0
  546. package/dist/components/ui-advanced-data-table.js +1 -0
  547. package/dist/components/ui-anchor.d.ts +11 -0
  548. package/dist/components/ui-anchor.js +1 -0
  549. package/dist/components/ui-animate-on-scroll.d.ts +11 -0
  550. package/dist/components/ui-animate-on-scroll.js +1 -0
  551. package/dist/components/ui-aside-panel.d.ts +11 -0
  552. package/dist/components/ui-aside-panel.js +1 -0
  553. package/dist/components/ui-avatar-group.d.ts +11 -0
  554. package/dist/components/ui-avatar-group.js +1 -0
  555. package/dist/components/ui-avatar.d.ts +11 -0
  556. package/dist/components/ui-avatar.js +1 -0
  557. package/dist/components/ui-badge.d.ts +11 -0
  558. package/dist/components/ui-badge.js +1 -0
  559. package/dist/components/ui-breadcrumb-item.d.ts +11 -0
  560. package/dist/components/ui-breadcrumb-item.js +1 -0
  561. package/dist/components/ui-breadcrumb.d.ts +11 -0
  562. package/dist/components/ui-breadcrumb.js +1 -0
  563. package/dist/components/ui-button-toggle-group.d.ts +11 -0
  564. package/dist/components/ui-button-toggle-group.js +1 -0
  565. package/dist/components/ui-button-toggle.d.ts +11 -0
  566. package/dist/components/ui-button-toggle.js +1 -0
  567. package/dist/components/ui-button.d.ts +11 -0
  568. package/dist/components/ui-button.js +1 -0
  569. package/dist/components/ui-callout-banner.d.ts +11 -0
  570. package/dist/components/ui-callout-banner.js +1 -0
  571. package/dist/components/ui-card.d.ts +11 -0
  572. package/dist/components/ui-card.js +1 -0
  573. package/dist/components/ui-carousel.d.ts +11 -0
  574. package/dist/components/ui-carousel.js +1 -0
  575. package/dist/components/ui-checkbox-group.d.ts +11 -0
  576. package/dist/components/ui-checkbox-group.js +1 -0
  577. package/dist/components/ui-checkbox.d.ts +11 -0
  578. package/dist/components/ui-checkbox.js +1 -0
  579. package/dist/components/ui-code-editor.d.ts +11 -0
  580. package/dist/components/ui-code-editor.js +1 -0
  581. package/dist/components/ui-code-preview.d.ts +11 -0
  582. package/dist/components/ui-code-preview.js +1 -0
  583. package/dist/components/ui-color-controller.d.ts +11 -0
  584. package/dist/components/ui-color-controller.js +1 -0
  585. package/dist/components/ui-color-picker.d.ts +11 -0
  586. package/dist/components/ui-color-picker.js +1 -0
  587. package/dist/components/ui-command-palette.d.ts +11 -0
  588. package/dist/components/ui-command-palette.js +1 -0
  589. package/dist/components/ui-context-menu.d.ts +11 -0
  590. package/dist/components/ui-context-menu.js +1 -0
  591. package/dist/components/ui-dialog-box.d.ts +11 -0
  592. package/dist/components/ui-dialog-box.js +1 -0
  593. package/dist/components/ui-dialog-content.d.ts +11 -0
  594. package/dist/components/ui-dialog-content.js +1 -0
  595. package/dist/components/ui-dialog-footer.d.ts +11 -0
  596. package/dist/components/ui-dialog-footer.js +1 -0
  597. package/dist/components/ui-dialog-header.d.ts +11 -0
  598. package/dist/components/ui-dialog-header.js +1 -0
  599. package/dist/components/ui-divider.d.ts +11 -0
  600. package/dist/components/ui-divider.js +1 -0
  601. package/dist/components/ui-dock-host.d.ts +11 -0
  602. package/dist/components/ui-dock-host.js +1 -0
  603. package/dist/components/ui-dock.d.ts +11 -0
  604. package/dist/components/ui-dock.js +1 -0
  605. package/dist/components/ui-drag-drop.d.ts +11 -0
  606. package/dist/components/ui-drag-drop.js +1 -0
  607. package/dist/components/ui-dropdown.d.ts +11 -0
  608. package/dist/components/ui-dropdown.js +1 -0
  609. package/dist/components/ui-empty-state.d.ts +11 -0
  610. package/dist/components/ui-empty-state.js +1 -0
  611. package/dist/components/ui-fab-item.d.ts +11 -0
  612. package/dist/components/ui-fab-item.js +1 -0
  613. package/dist/components/ui-fab.d.ts +11 -0
  614. package/dist/components/ui-fab.js +1 -0
  615. package/dist/components/ui-file-upload.d.ts +11 -0
  616. package/dist/components/ui-file-upload.js +1 -0
  617. package/dist/components/ui-horizontal-nav.d.ts +11 -0
  618. package/dist/components/ui-horizontal-nav.js +1 -0
  619. package/dist/components/ui-icon.d.ts +11 -0
  620. package/dist/components/ui-icon.js +1 -0
  621. package/dist/components/ui-image-button.d.ts +11 -0
  622. package/dist/components/ui-image-button.js +1 -0
  623. package/dist/components/ui-input-pair.d.ts +11 -0
  624. package/dist/components/ui-input-pair.js +1 -0
  625. package/dist/components/ui-input.d.ts +11 -0
  626. package/dist/components/ui-input.js +1 -0
  627. package/dist/components/ui-knob.d.ts +11 -0
  628. package/dist/components/ui-knob.js +1 -0
  629. package/dist/components/ui-library.d.ts +11 -0
  630. package/dist/components/ui-library.js +1 -0
  631. package/dist/components/ui-list-group.d.ts +11 -0
  632. package/dist/components/ui-list-group.js +1 -0
  633. package/dist/components/ui-list-item.d.ts +11 -0
  634. package/dist/components/ui-list-item.js +1 -0
  635. package/dist/components/ui-list.d.ts +11 -0
  636. package/dist/components/ui-list.js +1 -0
  637. package/dist/components/ui-masonry.d.ts +11 -0
  638. package/dist/components/ui-masonry.js +1 -0
  639. package/dist/components/ui-meter-group.d.ts +11 -0
  640. package/dist/components/ui-meter-group.js +1 -0
  641. package/dist/components/ui-navigation-bar.d.ts +11 -0
  642. package/dist/components/ui-navigation-bar.js +1 -0
  643. package/dist/components/ui-navigation-item.d.ts +11 -0
  644. package/dist/components/ui-navigation-item.js +1 -0
  645. package/dist/components/ui-number-input.d.ts +11 -0
  646. package/dist/components/ui-number-input.js +1 -0
  647. package/dist/components/ui-otp-input.d.ts +11 -0
  648. package/dist/components/ui-otp-input.js +1 -0
  649. package/dist/components/ui-pagination.d.ts +11 -0
  650. package/dist/components/ui-pagination.js +1 -0
  651. package/dist/components/ui-panel.d.ts +11 -0
  652. package/dist/components/ui-panel.js +1 -0
  653. package/dist/components/ui-pattern-input.d.ts +11 -0
  654. package/dist/components/ui-pattern-input.js +1 -0
  655. package/dist/components/ui-popover.d.ts +11 -0
  656. package/dist/components/ui-popover.js +1 -0
  657. package/dist/components/ui-progress.d.ts +11 -0
  658. package/dist/components/ui-progress.js +1 -0
  659. package/dist/components/ui-radio-group.d.ts +11 -0
  660. package/dist/components/ui-radio-group.js +1 -0
  661. package/dist/components/ui-radio.d.ts +11 -0
  662. package/dist/components/ui-radio.js +1 -0
  663. package/dist/components/ui-range-slider.d.ts +11 -0
  664. package/dist/components/ui-range-slider.js +1 -0
  665. package/dist/components/ui-rating.d.ts +11 -0
  666. package/dist/components/ui-rating.js +1 -0
  667. package/dist/components/ui-resizable-panel.d.ts +11 -0
  668. package/dist/components/ui-resizable-panel.js +1 -0
  669. package/dist/components/ui-scroll-top.d.ts +11 -0
  670. package/dist/components/ui-scroll-top.js +1 -0
  671. package/dist/components/ui-skeleton.d.ts +11 -0
  672. package/dist/components/ui-skeleton.js +1 -0
  673. package/dist/components/ui-smart-context-menu.d.ts +11 -0
  674. package/dist/components/ui-smart-context-menu.js +1 -0
  675. package/dist/components/ui-smart-location-dropdown.d.ts +11 -0
  676. package/dist/components/ui-smart-location-dropdown.js +1 -0
  677. package/dist/components/ui-smart-stepper.d.ts +11 -0
  678. package/dist/components/ui-smart-stepper.js +1 -0
  679. package/dist/components/ui-snackbar.d.ts +11 -0
  680. package/dist/components/ui-snackbar.js +1 -0
  681. package/dist/components/ui-speed-dial.d.ts +11 -0
  682. package/dist/components/ui-speed-dial.js +1 -0
  683. package/dist/components/ui-speedometer.d.ts +11 -0
  684. package/dist/components/ui-speedometer.js +1 -0
  685. package/dist/components/ui-splitter.d.ts +11 -0
  686. package/dist/components/ui-splitter.js +1 -0
  687. package/dist/components/ui-stack.d.ts +11 -0
  688. package/dist/components/ui-stack.js +1 -0
  689. package/dist/components/ui-step.d.ts +11 -0
  690. package/dist/components/ui-step.js +1 -0
  691. package/dist/components/ui-stepper.d.ts +11 -0
  692. package/dist/components/ui-stepper.js +1 -0
  693. package/dist/components/ui-switch.d.ts +11 -0
  694. package/dist/components/ui-switch.js +1 -0
  695. package/dist/components/ui-tabs.d.ts +11 -0
  696. package/dist/components/ui-tabs.js +1 -0
  697. package/dist/components/ui-tag-group.d.ts +11 -0
  698. package/dist/components/ui-tag-group.js +1 -0
  699. package/dist/components/ui-tag.d.ts +11 -0
  700. package/dist/components/ui-tag.js +1 -0
  701. package/dist/components/ui-timeline.d.ts +11 -0
  702. package/dist/components/ui-timeline.js +1 -0
  703. package/dist/components/ui-timer.d.ts +11 -0
  704. package/dist/components/ui-timer.js +1 -0
  705. package/dist/components/ui-toggle-group.d.ts +11 -0
  706. package/dist/components/ui-toggle-group.js +1 -0
  707. package/dist/components/ui-toolbar.d.ts +11 -0
  708. package/dist/components/ui-toolbar.js +1 -0
  709. package/dist/components/ui-tooltip.d.ts +11 -0
  710. package/dist/components/ui-tooltip.js +1 -0
  711. package/dist/components/ui-top-bar.d.ts +11 -0
  712. package/dist/components/ui-top-bar.js +1 -0
  713. package/dist/components/ui-transfer-list.d.ts +11 -0
  714. package/dist/components/ui-transfer-list.js +1 -0
  715. package/dist/components/ui-tree.d.ts +11 -0
  716. package/dist/components/ui-tree.js +1 -0
  717. package/dist/components/ui-workspace-manager.d.ts +11 -0
  718. package/dist/components/ui-workspace-manager.js +1 -0
  719. package/dist/components/utils.js +1 -0
  720. package/dist/esm/category-section.entry.js +28 -0
  721. package/dist/esm/component-size-C7gf39HE.js +27 -0
  722. package/dist/esm/dom-BMFah5q3.js +262 -0
  723. package/dist/esm/event-bus-vwwmWKs9.js +21 -0
  724. package/dist/esm/exploration-project-tailwind.js +20 -0
  725. package/dist/esm/focus-trap-BSQ8klD4.js +137 -0
  726. package/dist/esm/index-DUsoYu9r.js +2264 -0
  727. package/dist/esm/index.js +256 -0
  728. package/dist/esm/layout-manager.entry.js +614 -0
  729. package/dist/esm/library-card.entry.js +61 -0
  730. package/dist/esm/lm-container_2.entry.js +76 -0
  731. package/dist/esm/lm-panel_3.entry.js +104 -0
  732. package/dist/esm/loader.js +10 -0
  733. package/dist/esm/my-component.entry.js +31 -0
  734. package/dist/esm/my-step.entry.js +27 -0
  735. package/dist/esm/nav-bar.entry.js +245 -0
  736. package/dist/esm/security-D2WzX6vR.js +1545 -0
  737. package/dist/esm/smart-step.entry.js +45 -0
  738. package/dist/esm/timeline-item.entry.js +27 -0
  739. package/dist/esm/ui-accordion_10.entry.js +5722 -0
  740. package/dist/esm/ui-advanced-data-table.entry.js +2682 -0
  741. package/dist/esm/ui-anchor.entry.js +556 -0
  742. package/dist/esm/ui-animate-on-scroll.entry.js +283 -0
  743. package/dist/esm/ui-aside-panel.entry.js +636 -0
  744. package/dist/esm/ui-avatar-group_3.entry.js +630 -0
  745. package/dist/esm/ui-breadcrumb-item.entry.js +54 -0
  746. package/dist/esm/ui-breadcrumb.entry.js +199 -0
  747. package/dist/esm/ui-callout-banner.entry.js +289 -0
  748. package/dist/esm/ui-card.entry.js +409 -0
  749. package/dist/esm/ui-carousel.entry.js +545 -0
  750. package/dist/esm/ui-checkbox-group.entry.js +328 -0
  751. package/dist/esm/ui-checkbox.entry.js +258 -0
  752. package/dist/esm/ui-code-editor.entry.js +959 -0
  753. package/dist/esm/ui-code-preview.entry.js +313 -0
  754. package/dist/esm/ui-color-controller.entry.js +148 -0
  755. package/dist/esm/ui-color-picker.entry.js +656 -0
  756. package/dist/esm/ui-command-palette.entry.js +176 -0
  757. package/dist/esm/ui-dialog-box.entry.js +1806 -0
  758. package/dist/esm/ui-dialog-content.entry.js +29 -0
  759. package/dist/esm/ui-dialog-footer_2.entry.js +190 -0
  760. package/dist/esm/ui-divider.entry.js +479 -0
  761. package/dist/esm/ui-dock-host.entry.js +126 -0
  762. package/dist/esm/ui-dock.entry.js +219 -0
  763. package/dist/esm/ui-drag-drop.entry.js +170 -0
  764. package/dist/esm/ui-dropdown_2.entry.js +1549 -0
  765. package/dist/esm/ui-empty-state.entry.js +396 -0
  766. package/dist/esm/ui-fab-item.entry.js +37 -0
  767. package/dist/esm/ui-fab.entry.js +275 -0
  768. package/dist/esm/ui-file-upload.entry.js +416 -0
  769. package/dist/esm/ui-horizontal-nav.entry.js +133 -0
  770. package/dist/esm/ui-image-button.entry.js +65 -0
  771. package/dist/esm/ui-input-pair.entry.js +42 -0
  772. package/dist/esm/ui-knob.entry.js +445 -0
  773. package/dist/esm/ui-library.entry.js +132 -0
  774. package/dist/esm/ui-list-group_2.entry.js +583 -0
  775. package/dist/esm/ui-list.entry.js +730 -0
  776. package/dist/esm/ui-masonry.entry.js +476 -0
  777. package/dist/esm/ui-meter-group.entry.js +171 -0
  778. package/dist/esm/ui-navigation-item.entry.js +102 -0
  779. package/dist/esm/ui-number-input.entry.js +189 -0
  780. package/dist/esm/ui-otp-input.entry.js +244 -0
  781. package/dist/esm/ui-pagination_3.entry.js +1617 -0
  782. package/dist/esm/ui-panel.entry.js +612 -0
  783. package/dist/esm/ui-pattern-input.entry.js +276 -0
  784. package/dist/esm/ui-popover.entry.js +515 -0
  785. package/dist/esm/ui-progress.entry.js +514 -0
  786. package/dist/esm/ui-radio-group.entry.js +203 -0
  787. package/dist/esm/ui-radio.entry.js +204 -0
  788. package/dist/esm/ui-range-slider.entry.js +635 -0
  789. package/dist/esm/ui-resizable-panel.entry.js +482 -0
  790. package/dist/esm/ui-scroll-top.entry.js +457 -0
  791. package/dist/esm/ui-smart-context-menu.entry.js +374 -0
  792. package/dist/esm/ui-smart-location-dropdown.entry.js +563 -0
  793. package/dist/esm/ui-smart-stepper.entry.js +135 -0
  794. package/dist/esm/ui-snackbar.entry.js +861 -0
  795. package/dist/esm/ui-speed-dial.entry.js +518 -0
  796. package/dist/esm/ui-speedometer.entry.js +426 -0
  797. package/dist/esm/ui-splitter.entry.js +280 -0
  798. package/dist/esm/ui-step.entry.js +28 -0
  799. package/dist/esm/ui-stepper.entry.js +638 -0
  800. package/dist/esm/ui-switch.entry.js +403 -0
  801. package/dist/esm/ui-tabs.entry.js +701 -0
  802. package/dist/esm/ui-tag.entry.js +297 -0
  803. package/dist/esm/ui-timeline.entry.js +265 -0
  804. package/dist/esm/ui-timer.entry.js +500 -0
  805. package/dist/esm/ui-toolbar.entry.js +617 -0
  806. package/dist/esm/ui-tooltip.entry.js +695 -0
  807. package/dist/esm/ui-top-bar.entry.js +119 -0
  808. package/dist/esm/ui-transfer-list.entry.js +590 -0
  809. package/dist/esm/ui-tree.entry.js +872 -0
  810. package/dist/esm/ui-workspace-manager.entry.js +1199 -0
  811. package/dist/esm/utils-Ck6jDuhz.js +23 -0
  812. package/dist/exploration-project-tailwind/exploration-project-tailwind.css +1 -0
  813. package/dist/exploration-project-tailwind/exploration-project-tailwind.esm.js +1 -0
  814. package/dist/exploration-project-tailwind/index.esm.js +1 -0
  815. package/dist/exploration-project-tailwind/p-01c7db7a.entry.js +1 -0
  816. package/dist/exploration-project-tailwind/p-049744f9.entry.js +1 -0
  817. package/dist/exploration-project-tailwind/p-06f0c679.entry.js +1 -0
  818. package/dist/exploration-project-tailwind/p-0b004861.entry.js +1 -0
  819. package/dist/exploration-project-tailwind/p-0d31c9e9.entry.js +1 -0
  820. package/dist/exploration-project-tailwind/p-148e81df.entry.js +1 -0
  821. package/dist/exploration-project-tailwind/p-200241f8.entry.js +1 -0
  822. package/dist/exploration-project-tailwind/p-287dbf09.entry.js +1 -0
  823. package/dist/exploration-project-tailwind/p-2d273118.entry.js +1 -0
  824. package/dist/exploration-project-tailwind/p-2f1aebb3.entry.js +1 -0
  825. package/dist/exploration-project-tailwind/p-2f961934.entry.js +1 -0
  826. package/dist/exploration-project-tailwind/p-35296877.entry.js +1 -0
  827. package/dist/exploration-project-tailwind/p-36861546.entry.js +1 -0
  828. package/dist/exploration-project-tailwind/p-3d3d48fd.entry.js +1 -0
  829. package/dist/exploration-project-tailwind/p-41cd6bf0.entry.js +1 -0
  830. package/dist/exploration-project-tailwind/p-45482d86.entry.js +1 -0
  831. package/dist/exploration-project-tailwind/p-46596a28.entry.js +1 -0
  832. package/dist/exploration-project-tailwind/p-46efdea3.entry.js +1 -0
  833. package/dist/exploration-project-tailwind/p-47e2a7ee.entry.js +1 -0
  834. package/dist/exploration-project-tailwind/p-4d73c143.entry.js +1 -0
  835. package/dist/exploration-project-tailwind/p-4de419d5.entry.js +1 -0
  836. package/dist/exploration-project-tailwind/p-4f6bba75.entry.js +1 -0
  837. package/dist/exploration-project-tailwind/p-5508874f.entry.js +1 -0
  838. package/dist/exploration-project-tailwind/p-5ce0dbd8.entry.js +1 -0
  839. package/dist/exploration-project-tailwind/p-5e3e80ae.entry.js +1 -0
  840. package/dist/exploration-project-tailwind/p-61717490.entry.js +1 -0
  841. package/dist/exploration-project-tailwind/p-62352ef2.entry.js +1 -0
  842. package/dist/exploration-project-tailwind/p-64e3a484.entry.js +1 -0
  843. package/dist/exploration-project-tailwind/p-6ab80ead.entry.js +1 -0
  844. package/dist/exploration-project-tailwind/p-6e9694f2.entry.js +1 -0
  845. package/dist/exploration-project-tailwind/p-6fa9dc15.entry.js +1 -0
  846. package/dist/exploration-project-tailwind/p-70d82d79.entry.js +1 -0
  847. package/dist/exploration-project-tailwind/p-717dad1f.entry.js +1 -0
  848. package/dist/exploration-project-tailwind/p-7376ac95.entry.js +1 -0
  849. package/dist/exploration-project-tailwind/p-73d29a4a.entry.js +1 -0
  850. package/dist/exploration-project-tailwind/p-7515b1e3.entry.js +1 -0
  851. package/dist/exploration-project-tailwind/p-77124686.entry.js +1 -0
  852. package/dist/exploration-project-tailwind/p-77a21491.entry.js +1 -0
  853. package/dist/exploration-project-tailwind/p-77cc333a.entry.js +1 -0
  854. package/dist/exploration-project-tailwind/p-7f91d949.entry.js +1 -0
  855. package/dist/exploration-project-tailwind/p-807c6555.entry.js +1 -0
  856. package/dist/exploration-project-tailwind/p-81961fb1.entry.js +1 -0
  857. package/dist/exploration-project-tailwind/p-85bf89fd.entry.js +1 -0
  858. package/dist/exploration-project-tailwind/p-85e36111.entry.js +1 -0
  859. package/dist/exploration-project-tailwind/p-875be805.entry.js +1 -0
  860. package/dist/exploration-project-tailwind/p-898dd0fa.entry.js +1 -0
  861. package/dist/exploration-project-tailwind/p-8d951aef.entry.js +1 -0
  862. package/dist/exploration-project-tailwind/p-9d0c8760.entry.js +1 -0
  863. package/dist/exploration-project-tailwind/p-9fa70359.entry.js +1 -0
  864. package/dist/exploration-project-tailwind/p-9fc06ff0.entry.js +1 -0
  865. package/dist/exploration-project-tailwind/p-BMFah5q3.js +1 -0
  866. package/dist/exploration-project-tailwind/p-BSQ8klD4.js +1 -0
  867. package/dist/exploration-project-tailwind/p-C7gf39HE.js +1 -0
  868. package/dist/exploration-project-tailwind/p-Ck6jDuhz.js +1 -0
  869. package/dist/exploration-project-tailwind/p-D2WzX6vR.js +2 -0
  870. package/dist/exploration-project-tailwind/p-DUsoYu9r.js +2 -0
  871. package/dist/exploration-project-tailwind/p-a1ad32a2.entry.js +1 -0
  872. package/dist/exploration-project-tailwind/p-a3f465d9.entry.js +1 -0
  873. package/dist/exploration-project-tailwind/p-a42fdc33.entry.js +1 -0
  874. package/dist/exploration-project-tailwind/p-a4f52a76.entry.js +1 -0
  875. package/dist/exploration-project-tailwind/p-aa85ff78.entry.js +1 -0
  876. package/dist/exploration-project-tailwind/p-ab752761.entry.js +1 -0
  877. package/dist/exploration-project-tailwind/p-ba21fed3.entry.js +1 -0
  878. package/dist/exploration-project-tailwind/p-c174a372.entry.js +1 -0
  879. package/dist/exploration-project-tailwind/p-c2ca71ac.entry.js +1 -0
  880. package/dist/exploration-project-tailwind/p-c4ba7e52.entry.js +1 -0
  881. package/dist/exploration-project-tailwind/p-c5ddc817.entry.js +1 -0
  882. package/dist/exploration-project-tailwind/p-c69dd43e.entry.js +1 -0
  883. package/dist/exploration-project-tailwind/p-c6fd72e1.entry.js +1 -0
  884. package/dist/exploration-project-tailwind/p-c7e87fbb.entry.js +1 -0
  885. package/dist/exploration-project-tailwind/p-c87aeab6.entry.js +1 -0
  886. package/dist/exploration-project-tailwind/p-c90722ec.entry.js +1 -0
  887. package/dist/exploration-project-tailwind/p-ccb5c737.entry.js +1 -0
  888. package/dist/exploration-project-tailwind/p-ce1222a1.entry.js +1 -0
  889. package/dist/exploration-project-tailwind/p-d16c9635.entry.js +1 -0
  890. package/dist/exploration-project-tailwind/p-d2308a00.entry.js +1 -0
  891. package/dist/exploration-project-tailwind/p-d30e24bd.entry.js +1 -0
  892. package/dist/exploration-project-tailwind/p-d419eaf0.entry.js +1 -0
  893. package/dist/exploration-project-tailwind/p-debede45.entry.js +1 -0
  894. package/dist/exploration-project-tailwind/p-e5322e59.entry.js +1 -0
  895. package/dist/exploration-project-tailwind/p-e8ba0c95.entry.js +1 -0
  896. package/dist/exploration-project-tailwind/p-e90d5307.entry.js +1 -0
  897. package/dist/exploration-project-tailwind/p-ea51c5d8.entry.js +1 -0
  898. package/dist/exploration-project-tailwind/p-ecda1cc3.entry.js +1 -0
  899. package/dist/exploration-project-tailwind/p-f0830120.entry.js +1 -0
  900. package/dist/exploration-project-tailwind/p-f11e5cae.entry.js +1 -0
  901. package/dist/exploration-project-tailwind/p-f5719913.entry.js +1 -0
  902. package/dist/exploration-project-tailwind/p-ffb1754a.entry.js +1 -0
  903. package/dist/exploration-project-tailwind/p-vwwmWKs9.js +1 -0
  904. package/dist/index.cjs.js +1 -0
  905. package/dist/index.js +1 -0
  906. package/dist/types/components/accordion/accordion.d.ts +352 -0
  907. package/dist/types/components/accordion/types.d.ts +69 -0
  908. package/dist/types/components/advanced-data-table/advanced-data-table.d.ts +697 -0
  909. package/dist/types/components/advanced-data-table/types.d.ts +120 -0
  910. package/dist/types/components/anchor/anchor.d.ts +133 -0
  911. package/dist/types/components/anchor/types.d.ts +17 -0
  912. package/dist/types/components/animate-on-scroll/animate-on-scroll.d.ts +101 -0
  913. package/dist/types/components/aside-panel/aside-panel.d.ts +249 -0
  914. package/dist/types/components/avatar/avatar.d.ts +201 -0
  915. package/dist/types/components/avatar/types.d.ts +132 -0
  916. package/dist/types/components/avatar-group/avatar-group.d.ts +52 -0
  917. package/dist/types/components/avatar-group/types.d.ts +31 -0
  918. package/dist/types/components/badge/badge.d.ts +109 -0
  919. package/dist/types/components/badge/types.d.ts +6 -0
  920. package/dist/types/components/breadcrumb/breadcrumb-item.d.ts +36 -0
  921. package/dist/types/components/breadcrumb/breadcrumb.d.ts +73 -0
  922. package/dist/types/components/breadcrumb/types.d.ts +5 -0
  923. package/dist/types/components/button/button.d.ts +133 -0
  924. package/dist/types/components/button/types.d.ts +1 -0
  925. package/dist/types/components/button-toggle/button-toggle.d.ts +64 -0
  926. package/dist/types/components/button-toggle-group/button-toggle-group.d.ts +141 -0
  927. package/dist/types/components/button-toggle-group/types.d.ts +7 -0
  928. package/dist/types/components/callout-banner/callout-banner.d.ts +115 -0
  929. package/dist/types/components/callout-banner/types.d.ts +7 -0
  930. package/dist/types/components/card/card.d.ts +160 -0
  931. package/dist/types/components/card/types.d.ts +13 -0
  932. package/dist/types/components/carousel/carousel.d.ts +150 -0
  933. package/dist/types/components/carousel/types.d.ts +8 -0
  934. package/dist/types/components/checkbox/checkbox.d.ts +92 -0
  935. package/dist/types/components/checkbox/types.d.ts +5 -0
  936. package/dist/types/components/checkbox-group/checkbox-group.d.ts +87 -0
  937. package/dist/types/components/checkbox-group/types.d.ts +8 -0
  938. package/dist/types/components/code-editor/code-editor.d.ts +147 -0
  939. package/dist/types/components/code-editor/types.d.ts +20 -0
  940. package/dist/types/components/code-preview/types.d.ts +5 -0
  941. package/dist/types/components/code-preview/ui-code-preview.d.ts +69 -0
  942. package/dist/types/components/color-controller/color-controller.d.ts +24 -0
  943. package/dist/types/components/color-picker/color-picker.d.ts +116 -0
  944. package/dist/types/components/color-picker/types.d.ts +24 -0
  945. package/dist/types/components/command-palette/command-palette.d.ts +41 -0
  946. package/dist/types/components/command-palette/types.d.ts +7 -0
  947. package/dist/types/components/context-menu/context-menu.d.ts +135 -0
  948. package/dist/types/components/context-menu/types.d.ts +20 -0
  949. package/dist/types/components/dialog-box/dialog-box.d.ts +648 -0
  950. package/dist/types/components/dialog-box/types.d.ts +1 -0
  951. package/dist/types/components/dialog-content/dialog-content.d.ts +9 -0
  952. package/dist/types/components/dialog-footer/dialog-footer.d.ts +9 -0
  953. package/dist/types/components/dialog-footer/types.d.ts +1 -0
  954. package/dist/types/components/dialog-header/dialog-header.d.ts +102 -0
  955. package/dist/types/components/dialog-header/types.d.ts +2 -0
  956. package/dist/types/components/divider/divider.d.ts +245 -0
  957. package/dist/types/components/divider/types.d.ts +14 -0
  958. package/dist/types/components/dock/dock.d.ts +37 -0
  959. package/dist/types/components/dock/types.d.ts +11 -0
  960. package/dist/types/components/dock-host/index.d.ts +1 -0
  961. package/dist/types/components/dock-host/types.d.ts +1 -0
  962. package/dist/types/components/dock-host/ui-dock-host.d.ts +23 -0
  963. package/dist/types/components/drag-drop/drag-drop.d.ts +52 -0
  964. package/dist/types/components/drag-drop/types.d.ts +9 -0
  965. package/dist/types/components/dropdown/dropdown.d.ts +264 -0
  966. package/dist/types/components/dropdown/types.d.ts +19 -0
  967. package/dist/types/components/empty-state/empty-state.d.ts +74 -0
  968. package/dist/types/components/empty-state/types.d.ts +13 -0
  969. package/dist/types/components/fab/fab.d.ts +73 -0
  970. package/dist/types/components/fab-item/fab-item.d.ts +14 -0
  971. package/dist/types/components/fab-item/types.d.ts +3 -0
  972. package/dist/types/components/file-upload/file-upload.d.ts +91 -0
  973. package/dist/types/components/file-upload/types.d.ts +15 -0
  974. package/dist/types/components/horizontal-nav/horizontal-nav.d.ts +68 -0
  975. package/dist/types/components/icon/icon.d.ts +66 -0
  976. package/dist/types/components/image-button/image-button.d.ts +31 -0
  977. package/dist/types/components/image-button/types.d.ts +1 -0
  978. package/dist/types/components/input/input.d.ts +217 -0
  979. package/dist/types/components/input/types.d.ts +6 -0
  980. package/dist/types/components/input-pair/input-pair.d.ts +28 -0
  981. package/dist/types/components/knob/knob.d.ts +147 -0
  982. package/dist/types/components/knob/types.d.ts +4 -0
  983. package/dist/types/components/layout-manager/layout-manager.d.ts +32 -0
  984. package/dist/types/components/layout-manager/lm-container/lm-container.d.ts +7 -0
  985. package/dist/types/components/layout-manager/lm-floating-window/lm-floating-window.d.ts +6 -0
  986. package/dist/types/components/layout-manager/lm-panel/lm-panel.d.ts +7 -0
  987. package/dist/types/components/layout-manager/lm-splitter/lm-splitter.d.ts +12 -0
  988. package/dist/types/components/layout-manager/lm-tabs/lm-tabs.d.ts +12 -0
  989. package/dist/types/components/layout-manager/types.d.ts +1 -0
  990. package/dist/types/components/library/category-section.d.ts +15 -0
  991. package/dist/types/components/library/data.d.ts +11 -0
  992. package/dist/types/components/library/library-card.d.ts +19 -0
  993. package/dist/types/components/library/library.d.ts +9 -0
  994. package/dist/types/components/list/list.d.ts +183 -0
  995. package/dist/types/components/list-group/list-group.d.ts +28 -0
  996. package/dist/types/components/list-item/list-item.d.ts +200 -0
  997. package/dist/types/components/masonry/masonry.d.ts +105 -0
  998. package/dist/types/components/masonry/types.d.ts +5 -0
  999. package/dist/types/components/meter-group/meter-group.d.ts +66 -0
  1000. package/dist/types/components/meter-group/types.d.ts +12 -0
  1001. package/dist/types/components/my-component/my-component.d.ts +16 -0
  1002. package/dist/types/components/my-step/index.d.ts +12 -0
  1003. package/dist/types/components/my-step/my-step.d.ts +13 -0
  1004. package/dist/types/components/nav-bar/nav-bar.d.ts +119 -0
  1005. package/dist/types/components/number-input/number-input.d.ts +72 -0
  1006. package/dist/types/components/otp-input/otp-input.d.ts +64 -0
  1007. package/dist/types/components/otp-input/types.d.ts +3 -0
  1008. package/dist/types/components/pagination/pagination.d.ts +295 -0
  1009. package/dist/types/components/pagination/types.d.ts +1 -0
  1010. package/dist/types/components/panel/panel.d.ts +275 -0
  1011. package/dist/types/components/panel/types.d.ts +7 -0
  1012. package/dist/types/components/pattern-input/pattern-input.d.ts +88 -0
  1013. package/dist/types/components/popover/popover.d.ts +161 -0
  1014. package/dist/types/components/popover/types.d.ts +3 -0
  1015. package/dist/types/components/progress/progress.d.ts +224 -0
  1016. package/dist/types/components/progress/types.d.ts +6 -0
  1017. package/dist/types/components/radio/radio.d.ts +87 -0
  1018. package/dist/types/components/radio/types.d.ts +7 -0
  1019. package/dist/types/components/radio-group/radio-group.d.ts +74 -0
  1020. package/dist/types/components/radio-group/types.d.ts +2 -0
  1021. package/dist/types/components/range-slider/range-slider.d.ts +201 -0
  1022. package/dist/types/components/range-slider/types.d.ts +4 -0
  1023. package/dist/types/components/rating/rating.d.ts +127 -0
  1024. package/dist/types/components/rating/types.d.ts +1 -0
  1025. package/dist/types/components/resizable-panel/resizable-panel.d.ts +59 -0
  1026. package/dist/types/components/resizable-panel/types.d.ts +11 -0
  1027. package/dist/types/components/scroll-top/scroll-top.d.ts +186 -0
  1028. package/dist/types/components/scroll-top/types.d.ts +1 -0
  1029. package/dist/types/components/skeleton/skeleton-loader.d.ts +149 -0
  1030. package/dist/types/components/skeleton/types.d.ts +1 -0
  1031. package/dist/types/components/smart-location-dropdown/smart-location-dropdown.d.ts +119 -0
  1032. package/dist/types/components/smart-location-dropdown/types.d.ts +37 -0
  1033. package/dist/types/components/smart-menu/menu-item.interface.d.ts +10 -0
  1034. package/dist/types/components/smart-menu/smart-menu.d.ts +64 -0
  1035. package/dist/types/components/smart-stepper/smart-step.d.ts +29 -0
  1036. package/dist/types/components/smart-stepper/smart-stepper.d.ts +53 -0
  1037. package/dist/types/components/snackbar/snackbar.d.ts +223 -0
  1038. package/dist/types/components/snackbar/types.d.ts +104 -0
  1039. package/dist/types/components/speed-dial/speed-dial.d.ts +171 -0
  1040. package/dist/types/components/speed-dial/types.d.ts +11 -0
  1041. package/dist/types/components/speedometer/speedometer.d.ts +125 -0
  1042. package/dist/types/components/speedometer/types.d.ts +8 -0
  1043. package/dist/types/components/splitter/splitter.d.ts +63 -0
  1044. package/dist/types/components/splitter/types.d.ts +9 -0
  1045. package/dist/types/components/stack/stack.d.ts +34 -0
  1046. package/dist/types/components/stack/types.d.ts +3 -0
  1047. package/dist/types/components/step/step.d.ts +16 -0
  1048. package/dist/types/components/step/types.d.ts +1 -0
  1049. package/dist/types/components/stepper/stepper.d.ts +218 -0
  1050. package/dist/types/components/stepper/types.d.ts +39 -0
  1051. package/dist/types/components/switch/switch.d.ts +162 -0
  1052. package/dist/types/components/tabs/tabs.d.ts +182 -0
  1053. package/dist/types/components/tabs/types.d.ts +17 -0
  1054. package/dist/types/components/tag/tag.d.ts +172 -0
  1055. package/dist/types/components/tag/types.d.ts +4 -0
  1056. package/dist/types/components/tag-group/tag-group.d.ts +107 -0
  1057. package/dist/types/components/tag-group/types.d.ts +2 -0
  1058. package/dist/types/components/timeline/timeline.d.ts +73 -0
  1059. package/dist/types/components/timeline/types.d.ts +28 -0
  1060. package/dist/types/components/timeline/ui-timeline.stories.d.ts +9 -0
  1061. package/dist/types/components/timeline-item/timeline-item.d.ts +15 -0
  1062. package/dist/types/components/timer/timer.d.ts +123 -0
  1063. package/dist/types/components/timer/types.d.ts +18 -0
  1064. package/dist/types/components/timer/ui-timer.stories.d.ts +9 -0
  1065. package/dist/types/components/toggle-group/toggle-group.d.ts +136 -0
  1066. package/dist/types/components/toggle-group/types.d.ts +5 -0
  1067. package/dist/types/components/toolbar/toolbar-types.d.ts +189 -0
  1068. package/dist/types/components/toolbar/toolbar.d.ts +150 -0
  1069. package/dist/types/components/tooltip/tooltip.d.ts +166 -0
  1070. package/dist/types/components/tooltip/types.d.ts +3 -0
  1071. package/dist/types/components/top-bar/top-bar.d.ts +76 -0
  1072. package/dist/types/components/transfer-list/transfer-list.d.ts +137 -0
  1073. package/dist/types/components/transfer-list/types.d.ts +13 -0
  1074. package/dist/types/components/tree/tree.d.ts +180 -0
  1075. package/dist/types/components/tree/types.d.ts +76 -0
  1076. package/dist/types/components/ui-navigation-bar/navigation-bar/navigation-bar.d.ts +108 -0
  1077. package/dist/types/components/ui-navigation-bar/navigation-bar/navigation-types.d.ts +17 -0
  1078. package/dist/types/components/ui-navigation-bar/navigation-item.d.ts +26 -0
  1079. package/dist/types/components/ui-navigation-bar/navigation-types.d.ts +19 -0
  1080. package/dist/types/components/workspace-manager/types.d.ts +48 -0
  1081. package/dist/types/components/workspace-manager/workspace-manager.d.ts +211 -0
  1082. package/dist/types/components.d.ts +29634 -0
  1083. package/dist/types/index.d.ts +21 -0
  1084. package/dist/types/service/drag-manager.d.ts +8 -0
  1085. package/dist/types/service/event-bus.d.ts +9 -0
  1086. package/dist/types/service/serialization.d.ts +5 -0
  1087. package/dist/types/service/state-engine.d.ts +25 -0
  1088. package/dist/types/service/theme-switcher.d.ts +46 -0
  1089. package/dist/types/stencil-public-runtime.d.ts +1860 -0
  1090. package/dist/types/types/animation.type.d.ts +96 -0
  1091. package/dist/types/types/common.d.ts +52 -0
  1092. package/dist/types/types/common.type.d.ts +608 -0
  1093. package/dist/types/types/index.d.ts +37 -0
  1094. package/dist/types/types/text.type.d.ts +32 -0
  1095. package/dist/types/utils/aria-live.d.ts +20 -0
  1096. package/dist/types/utils/component-size.d.ts +2 -0
  1097. package/dist/types/utils/dom.d.ts +58 -0
  1098. package/dist/types/utils/focus-trap.d.ts +35 -0
  1099. package/dist/types/utils/security.d.ts +5 -0
  1100. package/dist/types/utils/test/setup-component-test-env.d.ts +14 -0
  1101. package/dist/types/utils/utils.d.ts +7 -0
  1102. package/dist/types/utils/validation.d.ts +43 -0
  1103. package/loader/cdn.js +1 -0
  1104. package/loader/index.cjs.js +1 -0
  1105. package/loader/index.d.ts +24 -0
  1106. package/loader/index.es2017.js +1 -0
  1107. package/loader/index.js +2 -0
  1108. package/package.json +77 -0
@@ -0,0 +1,4314 @@
1
+ import { h, Host } from "@stencil/core";
2
+ import { sanitizeHTML } from "../../utils/security";
3
+ import { FocusTrap } from "../../utils/focus-trap";
4
+ // ─── Global tray registry ────────────────────────────────────────────────────
5
+ // Dock bar: [‹ arrow] [scrollable tab row] [› arrow] [≡ all-tabs menu]
6
+ const DialogTray = new class {
7
+ _items = [];
8
+ _outer = null;
9
+ _row = null;
10
+ _menuBtn = null;
11
+ _menuPanel = null;
12
+ _menuList = null;
13
+ _menuOpen = false;
14
+ _originals = new Map();
15
+ _moving = new Set();
16
+ _injectStyles() {
17
+ if (document.getElementById('db-tray-dynamic-styles'))
18
+ return;
19
+ const s = document.createElement('style');
20
+ s.id = 'db-tray-dynamic-styles';
21
+ s.textContent = `
22
+ #db-tray-dock { position: fixed; bottom: 0; left: 0; right: 0; height: 52px; z-index: 1000000; pointer-events: none; display: flex; flex-direction: row; align-items: flex-end; justify-content: center; }
23
+ #db-tray-bar { max-width: 95vw; height: 52px; display: flex; flex-direction: row; align-items: stretch; pointer-events: auto; overflow: hidden; border-radius: 16px 16px 0 0; background: rgba(13, 17, 23, 0.98); backdrop-filter: blur(24px); -webkit-backdrop-filter: blur(24px); border: 1px solid rgba(255, 255, 255, 0.1); border-bottom: none; box-shadow: 0 -8px 32px rgba(0, 0, 0, 0.6); }
24
+ #db-tray-bar .db-dock-row { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: stretch; flex: 1; min-width: 0; overflow-x: hidden; scroll-behavior: smooth; justify-content: center; }
25
+ #db-tray-bar .db-dock-row::-webkit-scrollbar { display: none; }
26
+ .db-dock-arrow { display: flex; align-items: center; justify-content: center; width: 36px; background: transparent; border: none; cursor: pointer; color: #fff; opacity: 0; pointer-events: none; transition: all 0.2s; font-size: 20px; }
27
+ .db-dock-arrow.visible { opacity: 1; pointer-events: auto; }
28
+ #db-dock-menu-btn { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 0 16px; background: rgba(255, 255, 255, 0.05); margin: 6px; border-radius: 10px; border: 1px solid rgba(255, 255, 255, 0.1); cursor: pointer; color: #fff; transition: all 0.2s; min-width: 64px; }
29
+ #db-dock-menu-btn .db-badge { min-width: 20px; height: 20px; border-radius: 10px; background: #4f46e5; color: #fff; font-size: 11px; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; }
30
+ .ui-tray-tab { min-width: 160px; max-width: 300px; height: 52px; display: flex; align-items: center; justify-content: center; padding: 0 32px; gap: 12px; cursor: pointer; border-right: 1px solid rgba(255,255,255,0.1); transition: all 0.2s; color: #fff !important; }
31
+ .ui-tray-tab * { color: #fff !important; }
32
+ .ui-tray-tab:hover { background: rgba(255,255,255,0.08); }
33
+ .ui-tray-tab .tab-label { font-size: 13.5px; font-weight: 600; color:red; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; flex: 0 1 auto; margin: 0 4px; }
34
+ .ui-tray-btn { display: flex; align-items: center; justify-content: center; width: 20px; height: 20px; border-radius: 6px; border: none; background: rgba(255,255,255,0.12); cursor: pointer; }
35
+ .ui-tray-btn:hover { background: #ef4444; }
36
+ `;
37
+ document.head.appendChild(s);
38
+ }
39
+ _ensureDock() {
40
+ if (this._outer)
41
+ return;
42
+ this._injectStyles(); // Fail-safe injection
43
+ const outer = document.createElement('div');
44
+ outer.id = 'db-tray-dock';
45
+ // Use JS for critical layout to ensure it doesn't impact page height even if CSS is delayed
46
+ Object.assign(outer.style, {
47
+ position: 'fixed',
48
+ bottom: '0',
49
+ left: '0',
50
+ right: '0',
51
+ zIndex: '1000000',
52
+ display: 'none',
53
+ pointerEvents: 'none'
54
+ });
55
+ const bar = document.createElement('div');
56
+ bar.id = 'db-tray-bar';
57
+ const btnL = document.createElement('button');
58
+ btnL.className = 'db-dock-arrow db-dock-arrow-left';
59
+ btnL.textContent = '\u2039'; // ‹
60
+ const row = document.createElement('div');
61
+ row.className = 'db-dock-row';
62
+ const btnR = document.createElement('button');
63
+ btnR.className = 'db-dock-arrow db-dock-arrow-right';
64
+ btnR.textContent = '\u203A'; // ›
65
+ const menuBtn = document.createElement('button');
66
+ menuBtn.id = 'db-dock-menu-btn';
67
+ const menuIcon = document.createElement('span');
68
+ menuIcon.textContent = '\u2630'; // ☰
69
+ const badge = document.createElement('span');
70
+ badge.className = 'db-badge';
71
+ badge.textContent = '0';
72
+ menuBtn.append(menuIcon, badge);
73
+ bar.append(btnL, row, btnR, menuBtn);
74
+ outer.appendChild(bar);
75
+ document.body.appendChild(outer);
76
+ const overlay = document.createElement('div');
77
+ overlay.id = 'db-tray-overlay';
78
+ const panel = document.createElement('div');
79
+ panel.id = 'db-tray-menu-panel';
80
+ // Safety position for panel too
81
+ Object.assign(panel.style, {
82
+ position: 'fixed',
83
+ zIndex: '1000003',
84
+ display: 'none'
85
+ });
86
+ const hdr = document.createElement('div');
87
+ hdr.id = 'db-tray-menu-hdr';
88
+ hdr.textContent = 'Minimized Windows';
89
+ const list = document.createElement('div');
90
+ list.id = 'db-tray-menu-list';
91
+ panel.append(hdr, list);
92
+ document.body.append(overlay, panel);
93
+ btnL.onclick = () => { row.scrollLeft -= 180; };
94
+ btnR.onclick = () => { row.scrollLeft += 180; };
95
+ menuBtn.onclick = () => { this._menuOpen ? this._closeMenu() : this._openMenu(); };
96
+ overlay.onclick = () => this._closeMenu();
97
+ const syncArrows = () => {
98
+ btnL.classList.toggle('visible', row.scrollLeft > 5);
99
+ btnR.classList.toggle('visible', row.scrollLeft < row.scrollWidth - row.clientWidth - 5);
100
+ };
101
+ row.onscroll = syncArrows;
102
+ if (window.ResizeObserver)
103
+ new ResizeObserver(syncArrows).observe(row);
104
+ this._outer = outer;
105
+ this._row = row;
106
+ this._menuBtn = menuBtn;
107
+ this._menuPanel = panel;
108
+ this._menuList = list;
109
+ }
110
+ _openMenu() {
111
+ if (!this._menuBtn || !this._menuPanel)
112
+ return;
113
+ this._menuOpen = true;
114
+ this._syncMenu();
115
+ const r = this._menuBtn.getBoundingClientRect();
116
+ const p = this._menuPanel;
117
+ p.style.display = 'flex'; // Ensure it's rendered to get dimensions
118
+ const pr = p.getBoundingClientRect();
119
+ // Position fixed at bottom-right based on button position
120
+ p.style.left = `${r.right - pr.width}px`;
121
+ p.style.top = `${r.top - pr.height - 12}px`;
122
+ p.classList.add('open');
123
+ document.getElementById('db-tray-overlay')?.classList.add('open');
124
+ }
125
+ _closeMenu() {
126
+ this._menuOpen = false;
127
+ this._menuPanel?.classList.remove('open');
128
+ document.getElementById('db-tray-overlay')?.classList.remove('open');
129
+ }
130
+ _syncMenu() {
131
+ if (!this._menuList || !this._menuBtn)
132
+ return;
133
+ const items = this.minimized();
134
+ const badge = this._menuBtn.querySelector('.db-badge');
135
+ if (badge)
136
+ badge.textContent = String(items.length);
137
+ while (this._menuList.firstChild)
138
+ this._menuList.removeChild(this._menuList.firstChild);
139
+ if (!items.length) {
140
+ const empty = document.createElement('div');
141
+ empty.style.cssText = 'padding:16px;font-size:11px;color:#666;text-align:center;';
142
+ empty.textContent = 'No minimized windows';
143
+ this._menuList.appendChild(empty);
144
+ }
145
+ items.forEach(d => {
146
+ const row = document.createElement('div');
147
+ row.className = 'db-mi';
148
+ const dot = document.createElement('span');
149
+ dot.className = `db-mi-dot ${d.status}`;
150
+ const label = document.createElement('span');
151
+ label.className = 'db-mi-label';
152
+ label.textContent = d.dockLabel || d.dialogTitle || 'Dialog';
153
+ row.append(dot, label);
154
+ row.onclick = () => { this.openPeekFor(d); this._closeMenu(); };
155
+ this._menuList?.appendChild(row);
156
+ });
157
+ }
158
+ openPeekFor(d) {
159
+ const wasPeek = d._dockPeek;
160
+ this.minimized().forEach(i => i._dockPeek = false);
161
+ if (wasPeek) {
162
+ d.restore(); // If was already peeking, clicking again restores it
163
+ }
164
+ else {
165
+ d._dockPeek = true;
166
+ }
167
+ this._syncMenu();
168
+ requestAnimationFrame(() => d.el.scrollIntoView({ behavior: 'smooth', inline: 'center' }));
169
+ }
170
+ register(d) {
171
+ if (!this._items.includes(d)) {
172
+ this._items.push(d);
173
+ this._reflow(); // Update counter when added
174
+ }
175
+ }
176
+ unregister(d) {
177
+ if (this._moving.has(d))
178
+ return;
179
+ this._originals.forEach((orig, item) => {
180
+ if (item === d && this._row && d.el.parentElement === this._row) {
181
+ orig.parent.insertBefore(d.el, orig.nextSibling);
182
+ this._originals.delete(d);
183
+ }
184
+ });
185
+ this._items = this._items.filter(i => i !== d);
186
+ this._reflow();
187
+ }
188
+ minimized() { return this._items.filter(d => d.minimized && d.open); }
189
+ // Only items that should physically live inside the tray bar row (non-peeked tabs)
190
+ inTray() { return this.minimized().filter(d => !d._dockPeek); }
191
+ reflow() { this._reflow(); }
192
+ get() { return this; }
193
+ getAll() { return this._items; }
194
+ getMinimized() { return this.minimized(); }
195
+ _reflow() {
196
+ const allMin = this.minimized();
197
+ const itemsInTray = this.inTray();
198
+ if (allMin.length > 0)
199
+ this._ensureDock();
200
+ const row = this._row;
201
+ if (!row)
202
+ return;
203
+ itemsInTray.forEach(d => {
204
+ if (d.el.parentElement !== row) {
205
+ // Only save original parent if it's NOT the tray bar itself
206
+ const parent = d.el.parentNode;
207
+ if (parent && parent !== row) {
208
+ this._originals.set(d, { parent: parent, nextSibling: d.el.nextSibling });
209
+ }
210
+ else if (!this._originals.has(d)) {
211
+ this._originals.set(d, { parent: document.body, nextSibling: null });
212
+ }
213
+ this._moving.add(d);
214
+ row.appendChild(d.el);
215
+ this._moving.delete(d);
216
+ }
217
+ });
218
+ this._originals.forEach((orig, d) => {
219
+ const shouldBeInTray = itemsInTray.includes(d);
220
+ if (!shouldBeInTray && d.el.parentElement === row) {
221
+ // Safe restoration: check if nextSibling is still valid/attached
222
+ if (orig.nextSibling && orig.nextSibling.parentNode === orig.parent) {
223
+ orig.parent.insertBefore(d.el, orig.nextSibling);
224
+ }
225
+ else {
226
+ // Fallback to append if sibling is gone or parent is inconsistent
227
+ orig.parent.appendChild(d.el);
228
+ }
229
+ this._originals.delete(d);
230
+ }
231
+ });
232
+ if (this._outer)
233
+ this._outer.style.display = allMin.length > 0 ? 'flex' : 'none';
234
+ this._syncMenu();
235
+ }
236
+ }();
237
+ /**
238
+ * Enterprise-grade Dialog (Modal) component built for scalability and accessibility.
239
+ * Supports multiple types (Modal, Drawer, Fullscreen, Alert, Confirm) and framework-agnostic usage.
240
+ *
241
+ * @slot header - Replaces the default header content
242
+ * @slot title - Replaces the title in the header
243
+ * @slot subtitle - Replaces the subtitle in the header
244
+ * @slot body - Main content of the dialog
245
+ * @slot footer - Replaces the default footer content
246
+ * @slot actions - Custom actions in the bottom-right of the footer
247
+ *
248
+ * @part backdrop - The backdrop overlay
249
+ * @part panel - The main dialog container/panel
250
+ * @part header - The header section
251
+ * @part body - The content section
252
+ * @part footer - The footer section
253
+ * @part close-btn - The header close button
254
+ */
255
+ export class DialogBox {
256
+ _defaultDialogTitle = '';
257
+ _defaultOkText = '';
258
+ el;
259
+ _restoredLayout = undefined;
260
+ _isShaking = false;
261
+ _sessionTimedOut = false;
262
+ /**
263
+ * Whether the dialog is open
264
+ */
265
+ open = false;
266
+ /**
267
+ * Dialog title
268
+ */
269
+ dialogTitle = '';
270
+ /**
271
+ * Dialog subtitle
272
+ */
273
+ subtitle = '';
274
+ /**
275
+ * Whether the dialog is maximized
276
+ */
277
+ maximized = false;
278
+ /**
279
+ * Whether the dialog is minimized
280
+ */
281
+ minimized = false;
282
+ /**
283
+ * Dialog width. Explicit width takes precedence over size if size is 'custom'.
284
+ */
285
+ width = '500px';
286
+ /**
287
+ * Dialog height
288
+ */
289
+ height = 'auto';
290
+ /**
291
+ * Path to header image
292
+ */
293
+ headerImage;
294
+ /**
295
+ * Icon name to show in the header
296
+ */
297
+ icon = '';
298
+ /**
299
+ * User avatar URL to show in the header
300
+ */
301
+ avatar = '';
302
+ /**
303
+ * Whether to show maximize button
304
+ */
305
+ showMaximize = false;
306
+ /**
307
+ * Whether to show minimize button
308
+ */
309
+ showMinimize = false;
310
+ /**
311
+ * Whether to show close button
312
+ */
313
+ showClose = true;
314
+ /**
315
+ * Whether to show menu button (Action Menu)
316
+ */
317
+ showMenu = false;
318
+ /**
319
+ * Icon for the menu trigger button in the header.
320
+ * Defaults to 'more-horizontal' (⋯). Use 'settings' for a gear, 'sliders-horizontal' for filters, etc.
321
+ */
322
+ menuIcon = 'more-horizontal';
323
+ /**
324
+ * Tooltip text for the menu trigger button.
325
+ */
326
+ menuTitle = 'Menu';
327
+ /**
328
+ * Whether to show the header
329
+ */
330
+ showHeader = true;
331
+ /**
332
+ * Whether to show the footer
333
+ */
334
+ showFooter = true;
335
+ /**
336
+ * Dialog variant style
337
+ */
338
+ variant = 'outlined';
339
+ /**
340
+ * Dialog status/type
341
+ */
342
+ status = 'default';
343
+ /**
344
+ * Backdrop Behavior. 'default' (closes on click), 'static' (no close), 'none' (no backdrop).
345
+ */
346
+ backdrop = 'default';
347
+ /**
348
+ * Scroll behavior. 'paper' (scroll inside content), 'body' (scroll whole dialog).
349
+ */
350
+ scrollArea = 'paper';
351
+ /**
352
+ * Dialog functional type.
353
+ * - 'modal': Standard centered modal.
354
+ * - 'drawer': Slides from an edge (determined by position).
355
+ * - 'fullscreen': Occupies entire screen.
356
+ * - 'alert': Emphasis on the message, simple actions.
357
+ * - 'confirm': Standard confirmation with OK/Cancel flow.
358
+ * - 'prompt': Modal with an input field for user entry.
359
+ * - 'messagebox': Simplified modal for informational messages.
360
+ * - (Legacy): 'default' | 'delete' | 'upload' | 'session' | 'terms'
361
+ */
362
+ type = 'modal';
363
+ /**
364
+ * Label for the input field (only for 'prompt' type).
365
+ */
366
+ promptLabel = '';
367
+ /**
368
+ * Placeholder text for the prompt input.
369
+ */
370
+ promptPlaceholder = '';
371
+ /**
372
+ * Input type for the prompt (text, password, etc.).
373
+ */
374
+ promptType = 'text';
375
+ /**
376
+ * Initial value for the prompt input.
377
+ */
378
+ promptInitialValue = '';
379
+ /**
380
+ * Session timeout duration in seconds (only for 'session' type).
381
+ */
382
+ sessionTimeout = 60;
383
+ /**
384
+ * Whether to automatically submit 'session' dialog on timeout.
385
+ * If false, it will just close (cancel).
386
+ */
387
+ autoSubmitOnTimeout = false;
388
+ /**
389
+ * Position of the dialog.
390
+ * For 'drawer' type, these determine the slide direction.
391
+ */
392
+ position = 'center';
393
+ /**
394
+ * Predefined horizontal sizing.
395
+ */
396
+ size = 'md';
397
+ /**
398
+ * Visual density mode.
399
+ */
400
+ density = 'cozy';
401
+ /**
402
+ * Whether clicking the backdrop closes the dialog.
403
+ */
404
+ closeOnBackdrop = true;
405
+ /**
406
+ * Whether the ESC key closes the dialog.
407
+ */
408
+ closeOnEsc = true;
409
+ /**
410
+ * Draggable dialog (only for 'modal' type).
411
+ */
412
+ isDraggable = false;
413
+ /**
414
+ * Resizable dialog.
415
+ */
416
+ resizable = false;
417
+ /**
418
+ * Stepper steps for Wizard mode. Either an array of strings or a number.
419
+ */
420
+ steps = 0;
421
+ /**
422
+ * Current step in Wizard mode (1-indexed).
423
+ */
424
+ currentStep = 1;
425
+ _currentStep = 1;
426
+ currentStepChanged(newValue) {
427
+ this._currentStep = newValue;
428
+ }
429
+ /**
430
+ * Whether to blur the entire webpage behind this dialog.
431
+ */
432
+ globalBlur = false;
433
+ /**
434
+ * Dialog layout mode.
435
+ * 'default': Standard dialog
436
+ * 'side-nav': Includes a sidebar for master/detail views
437
+ */
438
+ layout = 'default';
439
+ /**
440
+ * Whether to show a toolbar below the header
441
+ */
442
+ showToolbar = false;
443
+ /**
444
+ * Whether to show a status bar above the footer
445
+ */
446
+ showStatusBar = false;
447
+ /**
448
+ * Snap to screen edges when dragging
449
+ */
450
+ snapToEdges = true;
451
+ /**
452
+ * Skeleton loading state. Transforms the dialog UI into placeholders.
453
+ */
454
+ loading = false;
455
+ /**
456
+ * Enable OS-level shortcuts (Ctrl+Enter to OK, Esc to Close).
457
+ */
458
+ shortcuts = true;
459
+ /**
460
+ * Whether the dialog contents are "dirty" (unsaved changes).
461
+ * Triggers the confirmation prompt on close.
462
+ */
463
+ dirty = false;
464
+ /**
465
+ * Animation duration in ms.
466
+ */
467
+ animationDuration = 250;
468
+ /**
469
+ * CSS selector for the element to focus initially when opened.
470
+ */
471
+ initialFocus;
472
+ /**
473
+ * Show a "pop-out" button to open content in a separate browser window.
474
+ */
475
+ allowPopOut = false;
476
+ /**
477
+ * Whether the dialog is starred/favorited
478
+ */
479
+ starred = false;
480
+ /**
481
+ * Label for the dock when minimized.
482
+ */
483
+ dockLabel = '';
484
+ /**
485
+ * Confirmation text for checkbox (e.g. "I accept the Terms & Conditions").
486
+ * If provided, the OK button will be disabled until checked.
487
+ */
488
+ confirmationText = '';
489
+ promptValue = '';
490
+ isConfirmed = false;
491
+ _sessionTimeLeft = 0;
492
+ _termsScrolled = false;
493
+ /**
494
+ * Header size.
495
+ */
496
+ headerSize = 'md';
497
+ /**
498
+ * Header background color override.
499
+ */
500
+ headerColor;
501
+ /**
502
+ * Whether the dialog should have a more pronounced border.
503
+ */
504
+ bordered = false;
505
+ /**
506
+ * Text for the OK button. If provided, renders an OK button in the footer.
507
+ */
508
+ okText;
509
+ /**
510
+ * Preset button set for confirmation dialogs.
511
+ * - `'ok-cancel'` → OK / Cancel
512
+ * - `'yes-no'` → Yes / No
513
+ * - `'yes-no-cancel'` → Yes / No / Cancel (No maps to resetText slot, left-aligned)
514
+ * - `'save-discard'` → Save / Discard
515
+ * - `'retry-cancel'` → Retry / Cancel
516
+ * Explicit `okText` / `cancelText` / `resetText` props always override the preset labels.
517
+ */
518
+ buttonSet = 'custom';
519
+ /**
520
+ * Text for the Cancel button. If provided, renders a Cancel button in the footer.
521
+ */
522
+ /**
523
+ * Text for the Cancel button.
524
+ */
525
+ cancelText;
526
+ /**
527
+ * Whether to portal the dialog to body
528
+ */
529
+ portal = false;
530
+ /**
531
+ * Loading state for the OK button.
532
+ */
533
+ okLoading = false;
534
+ /**
535
+ * Disable the OK button.
536
+ */
537
+ okDisabled = false;
538
+ /**
539
+ * Text for the Reset button (left-aligned).
540
+ */
541
+ resetText;
542
+ /**
543
+ * Disable the Cancel button.
544
+ */
545
+ cancelDisabled = false;
546
+ // ── Button-set resolution ─────────────────────────────────────────────────
547
+ // Returns the effective {okLabel, cancelLabel, resetLabel} for the footer,
548
+ // merging the `buttonSet` preset with any explicit text prop overrides.
549
+ _resolveButtons() {
550
+ const presets = {
551
+ 'ok-cancel': { ok: 'OK', cancel: 'Cancel', reset: '' },
552
+ 'yes-no': { ok: 'Yes', cancel: 'No', reset: '' },
553
+ 'yes-no-cancel': { ok: 'Yes', cancel: 'Cancel', reset: 'No' },
554
+ 'save-discard': { ok: 'Save', cancel: 'Discard', reset: '' },
555
+ 'retry-cancel': { ok: 'Retry', cancel: 'Cancel', reset: '' },
556
+ 'custom': { ok: '', cancel: '', reset: '' },
557
+ };
558
+ const p = presets[this.buttonSet] ?? presets['custom'];
559
+ return {
560
+ okLabel: this.okText ?? p.ok,
561
+ cancelLabel: this.cancelText ?? p.cancel,
562
+ resetLabel: this.resetText ?? p.reset,
563
+ };
564
+ }
565
+ /**
566
+ * Fullscreen on mobile devices automatically.
567
+ */
568
+ fullscreenOnMobile = true;
569
+ /**
570
+ * Keep content mounted when closed.
571
+ */
572
+ keepMounted = false;
573
+ /**
574
+ * Custom animation name.
575
+ */
576
+ animation = 'scale';
577
+ /**
578
+ * Return focus to trigger element on close.
579
+ */
580
+ returnFocus = true;
581
+ /**
582
+ * Z-Index for the dialog. Useful for nested dialogs.
583
+ */
584
+ zIndex = 10000;
585
+ /**
586
+ * Minimum Width
587
+ */
588
+ minWidth;
589
+ /**
590
+ * Minimum Height
591
+ */
592
+ minHeight;
593
+ /**
594
+ * Maximum Width
595
+ */
596
+ maxWidth;
597
+ /**
598
+ * Maximum Height
599
+ */
600
+ maxHeight;
601
+ /**
602
+ * Remember dialog position and size between sessions (requires id).
603
+ */
604
+ remember = false;
605
+ /**
606
+ * Allow swipe-to-close gesture on mobile devices.
607
+ */
608
+ swipeToClose = false;
609
+ /**
610
+ * Fire confetti when the dialog opens.
611
+ */
612
+ confetti = false;
613
+ /**
614
+ * Enable glassmorphism effect (blur) on backdrop.
615
+ */
616
+ glass = false;
617
+ /**
618
+ * Background color of the dialog panel
619
+ */
620
+ backgroundColor = 'white';
621
+ /**
622
+ * Visual progress bar percentage (0-100).
623
+ */
624
+ progress = -1;
625
+ /**
626
+ * Whether the dialog is nested (inside another dialog).
627
+ * Triggers visual differentiation (smer size, deeper shadow).
628
+ */
629
+ isNested = false;
630
+ /**
631
+ * Whether the primary action is sensitive (requires double-confirmation).
632
+ */
633
+ sensitive = false;
634
+ /**
635
+ * Auto-close timeout in milliseconds.
636
+ */
637
+ autoClose = 0;
638
+ /**
639
+ * Alias for autoClose.
640
+ */
641
+ timeout = 0;
642
+ /**
643
+ * Enable subtle sound feedback for interactions.
644
+ */
645
+ sound = false;
646
+ /**
647
+ * Enable haptic feedback for mobile devices.
648
+ */
649
+ haptics = false;
650
+ /**
651
+ * Required permissions to view this dialog.
652
+ */
653
+ permissions = [];
654
+ /**
655
+ * Enable debug mode (shows layout boundaries and metadata).
656
+ */
657
+ debug = false;
658
+ /**
659
+ * Optional callback function to execute before closing.
660
+ * Return false or a Promise resolving to false to prevent closing.
661
+ */
662
+ beforeClose;
663
+ /**
664
+ * Library to use for icons
665
+ */
666
+ iconLibrary = 'default';
667
+ /**
668
+ * Semantic tag for the title (h1-h6)
669
+ */
670
+ titleTag = 'h3';
671
+ /**
672
+ * Position of the icon/avatar relative to the title
673
+ */
674
+ iconPosition = 'left';
675
+ /**
676
+ * Event emitted when dialog is closed
677
+ */
678
+ dialogClosed;
679
+ /**
680
+ * Event emitted for undo action
681
+ */
682
+ undo;
683
+ /**
684
+ * Event emitted for redo action
685
+ */
686
+ redo;
687
+ /**
688
+ * Event emitted when the dialog is opened.
689
+ */
690
+ dialogOpened;
691
+ /**
692
+ * Event emitted to request a toast notification.
693
+ */
694
+ toastRequest;
695
+ /**
696
+ * Event emitted for security audit logging.
697
+ */
698
+ auditLog;
699
+ /**
700
+ * Emitted before the dialog opens. Can be cancelled via event.preventDefault().
701
+ */
702
+ beforeOpen;
703
+ /**
704
+ * Emitted when opening animation starts.
705
+ */
706
+ openStarted;
707
+ /**
708
+ * Emitted when opening animation finishes.
709
+ */
710
+ afterOpen;
711
+ /**
712
+ * Emitted before the dialog closes. Can be cancelled by event.preventDefault().
713
+ */
714
+ beforeCloseEvent;
715
+ /**
716
+ * Emitted when closing animation starts.
717
+ */
718
+ closeStarted;
719
+ /**
720
+ * Emitted when closing animation finishes.
721
+ */
722
+ afterClose;
723
+ /**
724
+ * Menu items for the built-in context menu.
725
+ * Can be a JSON string or an array of objects.
726
+ * If provided, clicking the menu button automatically opens a context menu.
727
+ */
728
+ menuItems = [];
729
+ /**
730
+ * Event emitted when a menu item is clicked (if using built-in menuItems)
731
+ */
732
+ menuAction;
733
+ /**
734
+ * Event emitted when OK button is clicked
735
+ */
736
+ ok;
737
+ /**
738
+ * Event emitted when Cancel button is clicked
739
+ */
740
+ cancel;
741
+ /**
742
+ * Event emitted when Reset button is clicked
743
+ */
744
+ dialogReset;
745
+ /**
746
+ * Event emitted when dialog is maximized
747
+ */
748
+ dialogMaximized;
749
+ /**
750
+ * Event emitted when dialog is minimized
751
+ */
752
+ dialogMinimized;
753
+ /**
754
+ * Event emitted when menu button is clicked
755
+ */
756
+ menu;
757
+ dragStartX = 0;
758
+ dragStartY = 0;
759
+ isDragging = false;
760
+ dragAnchored = false;
761
+ isClosing = false;
762
+ snappedEdge = 'none';
763
+ subOverlay = null;
764
+ minimizedToDock = false;
765
+ _dockPeek = false;
766
+ _autoCloseTimer = null;
767
+ resultResolver;
768
+ resultRejecter;
769
+ returnValue = null;
770
+ // Previously saved position before minimization
771
+ lastPosition = null;
772
+ // Resize state
773
+ isResizing = false;
774
+ resizeStartX = 0;
775
+ resizeStartY = 0;
776
+ initialWidth = 0;
777
+ initialHeight = 0;
778
+ initialLeft = 0;
779
+ initialTop = 0;
780
+ dialogElement;
781
+ backdropElement;
782
+ // Gmail Style Organizer for minimized tabs
783
+ minimizedChanged(newValue) {
784
+ if (newValue) {
785
+ this._dockPeek = false;
786
+ // Saving current position state
787
+ if (this.dialogElement) {
788
+ this.lastPosition = {
789
+ left: this.dialogElement.style.left,
790
+ top: this.dialogElement.style.top,
791
+ transform: this.dialogElement.style.transform,
792
+ position: this.dialogElement.style.position,
793
+ margin: this.dialogElement.style.margin
794
+ };
795
+ }
796
+ this.unlockScroll();
797
+ if (this.focusTrap)
798
+ this.focusTrap.deactivate();
799
+ DialogTray.reflow();
800
+ this.dialogMinimized.emit({ minimized: true });
801
+ }
802
+ else {
803
+ this._dockPeek = false;
804
+ DialogTray.reflow();
805
+ this.dialogMinimized.emit({ minimized: false });
806
+ requestAnimationFrame(() => {
807
+ // Restoring position (deferred until DOM is rendered and ref is ready)
808
+ if (this.lastPosition && this.dialogElement) {
809
+ Object.assign(this.dialogElement.style, this.lastPosition);
810
+ }
811
+ else if (this.remember && this.el.id) {
812
+ this.loadLayout();
813
+ }
814
+ this.initFocusTrap();
815
+ });
816
+ }
817
+ }
818
+ onDockPeekChange(val) {
819
+ if (val) {
820
+ document.addEventListener('pointerdown', this._onDocPeekOutside, true);
821
+ }
822
+ else {
823
+ document.removeEventListener('pointerdown', this._onDocPeekOutside, true);
824
+ }
825
+ // Sync the tray menu badge etc
826
+ DialogTray.reflow();
827
+ }
828
+ _onDocPeekOutside = (e) => {
829
+ if (!e.composedPath().includes(this.el)) {
830
+ this._dockPeek = false;
831
+ }
832
+ };
833
+ focusTrap;
834
+ ignoreBackdropClick = false;
835
+ componentWillLoad() {
836
+ this._currentStep = this.currentStep;
837
+ // Detect nesting
838
+ this.isNested = !!this.el.parentElement?.closest('ui-dialog-box');
839
+ // Presets: set local defaults, do not mutate props
840
+ this._defaultDialogTitle = '';
841
+ this._defaultOkText = '';
842
+ if (this.type === 'delete') {
843
+ this._defaultDialogTitle = 'Confirm Deletion';
844
+ this._defaultOkText = 'Delete';
845
+ this.headerColor = '#fee2e2'; // Light red background (for header component)
846
+ this.bordered = true;
847
+ }
848
+ else if (this.type === 'session') {
849
+ this._defaultDialogTitle = 'Session Timeout';
850
+ this._defaultOkText = 'Extend Session';
851
+ }
852
+ else if (this.type === 'terms') {
853
+ this._defaultDialogTitle = 'Terms & Conditions';
854
+ this._defaultOkText = 'Accept & Continue';
855
+ this.scrollArea = 'paper';
856
+ // Do NOT mutate this.size here
857
+ }
858
+ // Automatic Z-Index for Nested Dialogs
859
+ const openDialogs = DialogTray.get().getAll().filter(w => w.open).length;
860
+ if (this.zIndex === 10000) { // If default
861
+ this.zIndex = 10000 + (openDialogs * 10);
862
+ }
863
+ // Check Widget drag compatibility
864
+ if (this.el.getAttribute('draggable') === 'true' && !this.isDraggable) {
865
+ this.isDraggable = true;
866
+ }
867
+ // Restore layout if needed
868
+ if (this.remember && this.el.id) {
869
+ this.loadLayout();
870
+ }
871
+ }
872
+ connectedCallback() {
873
+ // Fires on initial connect AND after a tray reflow move.
874
+ DialogTray.register(this);
875
+ }
876
+ disconnectedCallback() {
877
+ DialogTray.unregister(this);
878
+ }
879
+ componentDidLoad() {
880
+ // register() already called by connectedCallback above;
881
+ // just handle open/layout init here.
882
+ if (this.open) {
883
+ this.lockScroll();
884
+ this.initFocusTrap();
885
+ if (this.portal) {
886
+ document.body.appendChild(this.el);
887
+ }
888
+ }
889
+ }
890
+ saveLayout() {
891
+ if (!this.el.id || !this.dialogElement)
892
+ return;
893
+ const rect = this.dialogElement.getBoundingClientRect();
894
+ const state = {
895
+ left: rect.left,
896
+ top: rect.top,
897
+ width: rect.width,
898
+ height: rect.height,
899
+ maximized: this.maximized
900
+ };
901
+ this._restoredLayout = state;
902
+ localStorage.setItem(`ui-dialog-layout-${this.el.id}`, JSON.stringify(state));
903
+ }
904
+ loadLayout() {
905
+ if (!this.el.id)
906
+ return;
907
+ const saved = localStorage.getItem(`ui-dialog-layout-${this.el.id}`);
908
+ if (saved) {
909
+ try {
910
+ const state = JSON.parse(saved);
911
+ if (state.maximized) {
912
+ this.maximized = true;
913
+ }
914
+ else {
915
+ this._restoredLayout = state;
916
+ if (state.width)
917
+ this.width = `${state.width}px`;
918
+ if (state.height)
919
+ this.height = `${state.height}px`;
920
+ }
921
+ }
922
+ catch (e) { /* ignore */ }
923
+ }
924
+ }
925
+ async openChanged(newValue) {
926
+ if (newValue) {
927
+ if (typeof this.beforeOpen?.emit === 'function') {
928
+ const { defaultPrevented } = this.beforeOpen.emit();
929
+ if (defaultPrevented) {
930
+ this.open = false;
931
+ return;
932
+ }
933
+ }
934
+ this.isClosing = false;
935
+ this.openStarted.emit();
936
+ // Always rise above all currently open dialogs
937
+ this.handleDialogClick();
938
+ if (this.remember && this.el.id) {
939
+ this.loadLayout();
940
+ }
941
+ this.lockScroll();
942
+ // Elite/Security Hooks
943
+ if (this.permissions && this.permissions.length > 0) {
944
+ this.auditLog.emit({ action: 'permission_check', timestamp: Date.now(), metadata: { required: this.permissions } });
945
+ }
946
+ if (this.type === 'prompt') {
947
+ this.promptValue = this.promptInitialValue;
948
+ }
949
+ this.dialogOpened.emit();
950
+ this.auditLog.emit({ action: 'dialog_open', timestamp: Date.now() });
951
+ const delay = this.autoClose || this.timeout;
952
+ if (delay > 0) {
953
+ if (this._autoCloseTimer)
954
+ clearTimeout(this._autoCloseTimer);
955
+ this._autoCloseTimer = setTimeout(() => this.hide('timeout'), delay);
956
+ }
957
+ if (this.sound) {
958
+ // Accessibility/UX Audio Hook
959
+ this.auditLog.emit({ action: 'sound_feedback', timestamp: Date.now() });
960
+ }
961
+ // Initialize/Activate Focus Trap
962
+ if (this.type === 'session') {
963
+ this.startSessionTimer();
964
+ }
965
+ if (this.type === 'terms') {
966
+ this._termsScrolled = false;
967
+ }
968
+ requestAnimationFrame(() => {
969
+ setTimeout(() => {
970
+ if (!this.minimized) {
971
+ this.initFocusTrap();
972
+ this.autoFocusFirstElement();
973
+ }
974
+ if (this.globalBlur)
975
+ this.updateBodyBlur();
976
+ if (this.confetti)
977
+ this.triggerConfetti();
978
+ this.afterOpen.emit();
979
+ }, 50);
980
+ });
981
+ }
982
+ else {
983
+ if (!this.isClosing) {
984
+ await this.hide('programmatic');
985
+ }
986
+ }
987
+ DialogTray.reflow();
988
+ }
989
+ updateBodyBlur() {
990
+ if (this.globalBlur && this.open) {
991
+ document.body.classList.add('dialog-blur-active');
992
+ }
993
+ else {
994
+ document.body.classList.remove('dialog-blur-active');
995
+ }
996
+ }
997
+ initFocusTrap() {
998
+ if (!this.dialogElement)
999
+ return;
1000
+ if (!this.focusTrap) {
1001
+ this.focusTrap = new FocusTrap(this.dialogElement, {
1002
+ returnFocus: this.returnFocus,
1003
+ escapeDeactivates: false, // We handle Escape manually
1004
+ clickOutsideDeactivates: false
1005
+ });
1006
+ }
1007
+ this.focusTrap.activate();
1008
+ }
1009
+ autoFocusFirstElement() {
1010
+ if (!this.dialogElement)
1011
+ return;
1012
+ // 1. Check explicit initialFocus selector
1013
+ if (this.initialFocus) {
1014
+ const el = this.dialogElement.querySelector(this.initialFocus);
1015
+ if (el) {
1016
+ el.focus();
1017
+ return;
1018
+ }
1019
+ }
1020
+ // 2. Look for autofocus attribute first, then common inputs
1021
+ const el = this.dialogElement.querySelector('[autofocus]') ||
1022
+ this.dialogElement.querySelector('input:not([disabled]), textarea:not([disabled]), select:not([disabled]), .ui-dialog-btn-ok');
1023
+ if (el)
1024
+ el.focus();
1025
+ }
1026
+ lockScroll() {
1027
+ if (this.scrollArea !== 'body') {
1028
+ document.body.style.overflow = 'hidden';
1029
+ }
1030
+ }
1031
+ unlockScroll() {
1032
+ document.body.style.overflow = '';
1033
+ }
1034
+ /**
1035
+ * Open the dialog
1036
+ */
1037
+ /**
1038
+ * Open the dialog and return a promise that resolves to true when OK is clicked, false on Cancel/Close.
1039
+ */
1040
+ async openDialog() {
1041
+ this.open = true;
1042
+ return new Promise((resolve) => {
1043
+ this.resultResolver = (val) => resolve(!!val);
1044
+ });
1045
+ }
1046
+ /**
1047
+ * Show dialog and return a promise that resolves with data when closed via OK.
1048
+ * Standardizes the return value as { data: any, canceled: boolean }.
1049
+ */
1050
+ async showWithResult() {
1051
+ this.returnValue = null;
1052
+ this.open = true;
1053
+ return new Promise((resolve) => {
1054
+ // Use resultResolver as a way to send the final object back
1055
+ this.resultResolver = (data) => resolve({ data, canceled: false });
1056
+ this.resultRejecter = () => resolve({ data: null, canceled: true });
1057
+ });
1058
+ }
1059
+ /**
1060
+ * Set the value to be returned when showWithResult resolves.
1061
+ */
1062
+ async setReturnValue(value) {
1063
+ this.returnValue = value;
1064
+ }
1065
+ async show() {
1066
+ this.returnValue = null;
1067
+ this.open = true;
1068
+ }
1069
+ /**
1070
+ * Close the dialog
1071
+ */
1072
+ async hide(source = 'programmatic') {
1073
+ if (this.resultResolver || this.resultRejecter) {
1074
+ if (this.resultRejecter)
1075
+ this.resultRejecter('Closed');
1076
+ this.resultResolver = undefined;
1077
+ this.resultRejecter = undefined;
1078
+ }
1079
+ if (this.dirty && !this.subOverlay?.visible) {
1080
+ this.showConfirmation("Unsaved Changes", "You have unsaved changes. Are you sure you want to close?", () => { this.dirty = false; this.hide(source); });
1081
+ return;
1082
+ }
1083
+ const { defaultPrevented } = this.beforeCloseEvent.emit({ source });
1084
+ if (defaultPrevented)
1085
+ return;
1086
+ if (this.beforeClose) {
1087
+ const shouldClose = await this.beforeClose();
1088
+ if (shouldClose === false)
1089
+ return;
1090
+ }
1091
+ this.isClosing = true;
1092
+ this.closeStarted.emit();
1093
+ this.stopSessionTimer();
1094
+ if (this.focusTrap)
1095
+ this.focusTrap.deactivate();
1096
+ setTimeout(() => {
1097
+ this.open = false;
1098
+ this.isClosing = false;
1099
+ this.unlockScroll();
1100
+ this.updateBodyBlur(); // remove blur
1101
+ this.dialogClosed.emit();
1102
+ if (this.el.isConnected) {
1103
+ this.afterClose.emit();
1104
+ }
1105
+ }, this.animationDuration);
1106
+ }
1107
+ /**
1108
+ * Maximize the dialog
1109
+ */
1110
+ async maximize() {
1111
+ this.maximized = !this.maximized;
1112
+ if (this.maximized) {
1113
+ this.minimized = false;
1114
+ }
1115
+ if (this.remember)
1116
+ this.saveLayout();
1117
+ this.dialogMaximized.emit({ maximized: this.maximized });
1118
+ }
1119
+ /**
1120
+ * Show an internal sub-overlay prompt (e.g., for diskard changes).
1121
+ */
1122
+ async showConfirmation(title, message, onConfirm) {
1123
+ this.subOverlay = { visible: true, title, message, onConfirm };
1124
+ }
1125
+ /**
1126
+ * Cascade all open dialogs
1127
+ */
1128
+ static async cascade() {
1129
+ const wins = DialogTray.get().getAll().filter(w => w.open && !w.minimized);
1130
+ wins.forEach((win, i) => {
1131
+ win.dialogElement.style.left = `${50 + (i * 30)}px`;
1132
+ win.dialogElement.style.top = `${50 + (i * 30)}px`;
1133
+ win.dialogElement.style.margin = '0';
1134
+ win.dialogElement.style.position = 'fixed';
1135
+ if (win.remember)
1136
+ win.saveLayout();
1137
+ });
1138
+ }
1139
+ /**
1140
+ * Tile all open dialogs
1141
+ */
1142
+ static async tile() {
1143
+ const wins = DialogTray.get().getAll().filter(w => w.open && !w.minimized);
1144
+ if (wins.length === 0)
1145
+ return;
1146
+ const cols = Math.ceil(Math.sqrt(wins.length));
1147
+ const rows = Math.ceil(wins.length / cols);
1148
+ const winW = window.innerWidth / cols;
1149
+ const winH = window.innerHeight / rows;
1150
+ wins.forEach((win, i) => {
1151
+ const r = Math.floor(i / cols);
1152
+ const c = i % cols;
1153
+ win.dialogElement.style.left = `${c * winW}px`;
1154
+ win.dialogElement.style.top = `${r * winH}px`;
1155
+ win.dialogElement.style.width = `${winW}px`;
1156
+ win.dialogElement.style.height = `${winH}px`;
1157
+ win.dialogElement.style.margin = '0';
1158
+ win.dialogElement.style.position = 'fixed';
1159
+ if (win.remember)
1160
+ win.saveLayout();
1161
+ });
1162
+ }
1163
+ /**
1164
+ * Detach the dialog content to a separate browser window
1165
+ */
1166
+ async popOut() {
1167
+ const popup = window.open('', '_blank', 'width=600,height=400');
1168
+ if (popup) {
1169
+ popup.document.title = this.dialogTitle || 'DreamUI Detached Window';
1170
+ popup.document.body.innerHTML = sanitizeHTML(this.el.innerHTML);
1171
+ // Copy styles
1172
+ document.querySelectorAll('style, link[rel="stylesheet"]').forEach(s => {
1173
+ popup.document.head.appendChild(s.cloneNode(true));
1174
+ });
1175
+ this.hide();
1176
+ }
1177
+ }
1178
+ /**
1179
+ * Minimize the dialog
1180
+ */
1181
+ async minimize() {
1182
+ this.minimized = !this.minimized;
1183
+ if (this.minimized) {
1184
+ this._dockPeek = false;
1185
+ this.minimizedToDock = true;
1186
+ }
1187
+ else {
1188
+ this.restore();
1189
+ }
1190
+ this.dialogMinimized.emit({ minimized: this.minimized });
1191
+ }
1192
+ /**
1193
+ * Restore the dialog from minimized or maximized state
1194
+ */
1195
+ async restore() {
1196
+ this.minimized = false;
1197
+ this.maximized = false;
1198
+ this._dockPeek = false;
1199
+ this.minimizedToDock = false;
1200
+ if (this.remember) {
1201
+ setTimeout(() => this.loadLayout(), 50);
1202
+ }
1203
+ this.dialogMinimized.emit({ minimized: false });
1204
+ this.dialogMaximized.emit({ maximized: false });
1205
+ DialogTray.reflow();
1206
+ }
1207
+ handleMenu = (e) => {
1208
+ // If we have built-in menu items, handle opening the context menu
1209
+ // Ensure we parse if it's a string looking like an array
1210
+ let items = this.menuItems;
1211
+ if (typeof items === 'string') {
1212
+ try {
1213
+ items = JSON.parse(items);
1214
+ }
1215
+ catch (ex) { /* ignore */ }
1216
+ }
1217
+ if (items && Array.isArray(items) && items.length > 0) {
1218
+ e.stopPropagation();
1219
+ // Pass parsed items if possible, or reliance on original prop
1220
+ this.openContextMenu(e);
1221
+ return;
1222
+ }
1223
+ this.menu.emit(e.detail);
1224
+ };
1225
+ openContextMenu(e, explicitItems) {
1226
+ let menu = document.getElementById(`ctx-menu-${this.el.id}`);
1227
+ if (!menu) {
1228
+ menu = document.createElement('ui-context-menu');
1229
+ menu.id = `ctx-menu-${this.el.id}`;
1230
+ menu.style.zIndex = (this.zIndex + 10).toString();
1231
+ document.body.appendChild(menu);
1232
+ menu.addEventListener('menuItemClick', (ev) => {
1233
+ const detail = ev.detail;
1234
+ this.menuAction.emit(detail);
1235
+ // Also emit standard menu event with action details for convenience
1236
+ this.menu.emit(detail);
1237
+ // Handle specialized built-in actions if we want (like 'close', 'minimize')
1238
+ if (detail && detail.item && detail.item.id) {
1239
+ if (detail.item.id === 'close')
1240
+ this.hide();
1241
+ if (detail.item.id === 'minimize')
1242
+ this.minimize();
1243
+ if (detail.item.id === 'maximize')
1244
+ this.maximize();
1245
+ }
1246
+ });
1247
+ }
1248
+ // Update items
1249
+ // Parse again to be safe or use what we know
1250
+ const itemsVal = explicitItems ? JSON.stringify(explicitItems) : (typeof this.menuItems === 'string' ? this.menuItems : JSON.stringify(this.menuItems));
1251
+ menu.items = itemsVal;
1252
+ // Position at trigger
1253
+ let rect;
1254
+ if (e.detail && e.detail.trigger) {
1255
+ rect = e.detail.trigger.getBoundingClientRect();
1256
+ }
1257
+ else if (e.detail && e.detail.originalEvent && e.detail.originalEvent.target) {
1258
+ rect = e.detail.originalEvent.target.getBoundingClientRect();
1259
+ }
1260
+ else {
1261
+ // Fallback to searching for the menu button
1262
+ const header = this.el.shadowRoot?.querySelector('ui-dialog-header');
1263
+ const btn = header?.shadowRoot?.querySelector('.dialog-btn-menu')
1264
+ || header?.querySelector('.dialog-btn-menu');
1265
+ rect = btn ? btn.getBoundingClientRect() : this.dialogElement.getBoundingClientRect();
1266
+ }
1267
+ // Slight offset
1268
+ if (rect) {
1269
+ menu.openAt({ x: rect.left, y: rect.bottom + 5 });
1270
+ }
1271
+ }
1272
+ collectFormValues() {
1273
+ const result = {};
1274
+ const processedNames = new Set();
1275
+ /**
1276
+ * Recursively scan elements for named inputs/selects/textareas.
1277
+ * This piercings into slots by looking at the Host element's Light DOM children.
1278
+ */
1279
+ const scan = (root) => {
1280
+ if (!root || typeof root.tagName !== 'string')
1281
+ return;
1282
+ const tagName = root.tagName.toUpperCase();
1283
+ const el = root;
1284
+ if (el.name && (tagName === 'INPUT' || tagName === 'SELECT' || tagName === 'TEXTAREA')) {
1285
+ const input = root;
1286
+ const type = (input.type || '').toLowerCase();
1287
+ if (type === 'checkbox') {
1288
+ if (!result[el.name])
1289
+ result[el.name] = [];
1290
+ if (input.checked)
1291
+ result[el.name].push(input.value);
1292
+ }
1293
+ else if (type === 'radio') {
1294
+ if (input.checked)
1295
+ result[el.name] = input.value;
1296
+ }
1297
+ else if (type === 'submit' || type === 'button' || type === 'reset') {
1298
+ // Ignore buttons
1299
+ }
1300
+ else {
1301
+ result[el.name] = el.value;
1302
+ }
1303
+ processedNames.add(el.name);
1304
+ }
1305
+ // Recurse light-DOM children
1306
+ if (root.children) {
1307
+ for (const child of Array.from(root.children)) {
1308
+ scan(child);
1309
+ }
1310
+ }
1311
+ };
1312
+ // Begin scan from the host element (captures all Light DOM descendants in slots)
1313
+ scan(this.el);
1314
+ // If we found nothing in Light DOM, check Shadow DOM (for built-in prompts)
1315
+ if (processedNames.size === 0 && this.el.shadowRoot) {
1316
+ scan(this.el.shadowRoot);
1317
+ }
1318
+ return processedNames.size > 0 ? result : null;
1319
+ }
1320
+ _sessionInterval;
1321
+ startSessionTimer() {
1322
+ this._sessionTimeLeft = this.sessionTimeout;
1323
+ clearInterval(this._sessionInterval);
1324
+ this._sessionInterval = setInterval(() => {
1325
+ this._sessionTimeLeft--;
1326
+ if (this._sessionTimeLeft <= 0) {
1327
+ clearInterval(this._sessionInterval);
1328
+ this._sessionTimedOut = true;
1329
+ this.dialogTitle = "Session Expired";
1330
+ this.status = "error";
1331
+ // Do NOT auto-close if we want to show the logout message
1332
+ if (this.autoSubmitOnTimeout)
1333
+ this.handleOk();
1334
+ }
1335
+ }, 1000);
1336
+ }
1337
+ stopSessionTimer() {
1338
+ clearInterval(this._sessionInterval);
1339
+ }
1340
+ handleTermsScroll = (e) => {
1341
+ if (this.type !== 'terms' || this._termsScrolled)
1342
+ return;
1343
+ const el = e.target;
1344
+ if (el.scrollHeight - el.scrollTop <= el.clientHeight + 20) {
1345
+ this._termsScrolled = true;
1346
+ }
1347
+ };
1348
+ handleOk = () => {
1349
+ if (this.sensitive && !this.subOverlay?.visible) {
1350
+ this.showConfirmation("Sensitive Action", "This action has security implications. Are you sure you want to proceed?", () => { this.sensitive = false; this.handleOk(); });
1351
+ return;
1352
+ }
1353
+ if (this.haptics && window.navigator.vibrate) {
1354
+ window.navigator.vibrate(50);
1355
+ }
1356
+ if (this.resultResolver) {
1357
+ // Auto-collect form values when no explicit returnValue was set
1358
+ if (this.returnValue === null) {
1359
+ this.returnValue = this.collectFormValues();
1360
+ }
1361
+ this.ok.emit(this.returnValue);
1362
+ // Pass the collected data to the specific resolver format
1363
+ this.resultResolver(this.returnValue);
1364
+ this.resultResolver = undefined;
1365
+ this.resultRejecter = undefined;
1366
+ }
1367
+ else {
1368
+ this.ok.emit(this.returnValue);
1369
+ }
1370
+ this.hide();
1371
+ };
1372
+ /**
1373
+ * Programmatically submit the dialog (resolves the promise).
1374
+ * Optional value overrides auto-collection.
1375
+ */
1376
+ async submit(value) {
1377
+ if (value !== undefined) {
1378
+ this.returnValue = value;
1379
+ }
1380
+ this.handleOk();
1381
+ }
1382
+ /**
1383
+ * Programmatically cancel the dialog (rejects the promise).
1384
+ */
1385
+ async cancelDialog() {
1386
+ this.handleCancel();
1387
+ }
1388
+ handleCancel = () => {
1389
+ if (this.resultRejecter) {
1390
+ this.resultRejecter(); // Triggers the resolver with {canceled: true} logic inside showWithResult
1391
+ this.resultRejecter = undefined;
1392
+ this.resultResolver = undefined;
1393
+ }
1394
+ this.cancel.emit();
1395
+ this.hide();
1396
+ };
1397
+ handleReset = () => {
1398
+ this.auditLog.emit({ action: 'reset_clicked', timestamp: Date.now() });
1399
+ this.dialogReset.emit();
1400
+ };
1401
+ handleGlobalShortcuts(e) {
1402
+ if (!this.open || !this.shortcuts)
1403
+ return;
1404
+ // Ctrl+Enter = OK (Global)
1405
+ if (e.ctrlKey && e.key === 'Enter' && this.okText) {
1406
+ this.handleOk();
1407
+ return;
1408
+ }
1409
+ // Enter in Input = OK (Standard Form behavior)
1410
+ if (e.key === 'Enter' && this.okText) {
1411
+ const target = e.target;
1412
+ if (['INPUT', 'SELECT'].includes(target.tagName) && !target.classList.contains('no-submit')) {
1413
+ this.handleOk();
1414
+ }
1415
+ }
1416
+ }
1417
+ handleBackdropClick = (e) => {
1418
+ if (this.ignoreBackdropClick)
1419
+ return;
1420
+ if (this.backdrop === 'default' && e.target === this.backdropElement) {
1421
+ this.hide();
1422
+ }
1423
+ else if (this.backdrop === 'static' && e.target === this.backdropElement) {
1424
+ e.preventDefault();
1425
+ e.stopPropagation();
1426
+ this._isShaking = true;
1427
+ setTimeout(() => {
1428
+ this._isShaking = false;
1429
+ }, 400); // Match SCSS duration (0.4s)
1430
+ }
1431
+ };
1432
+ handleKeyDown(e) {
1433
+ // If minimized, don't trap focus or handle escape close immediately
1434
+ if (this.minimized)
1435
+ return;
1436
+ if (e.key === 'Escape' && this.open && this.closeOnEsc) {
1437
+ this.hide('esc');
1438
+ return;
1439
+ }
1440
+ // FocusTrap handles Tab
1441
+ }
1442
+ // Bring to front on any click inside the dialog
1443
+ handleDialogClick = () => {
1444
+ // Wrap in microtask to avoid "changed during rendering" warning if called from Watchers/render-adjacent paths
1445
+ requestAnimationFrame(() => {
1446
+ // Logic to increment zIndex among currently open dialogs
1447
+ const allOpened = DialogTray.get().getAll()
1448
+ .filter(w => w.open)
1449
+ .sort((a, b) => a.zIndex - b.zIndex);
1450
+ const maxZ = allOpened.length > 0 ? allOpened[allOpened.length - 1].zIndex : 10000;
1451
+ if (this.zIndex <= maxZ) {
1452
+ this.zIndex = maxZ + 1;
1453
+ }
1454
+ });
1455
+ };
1456
+ // Dragging Logic
1457
+ handlePointerDown = (e) => {
1458
+ this.handleDialogClick();
1459
+ if (this.maximized || !this.isDraggable || this.minimized)
1460
+ return;
1461
+ // Ignore if clicking on interactive elements
1462
+ const path = e.composedPath();
1463
+ const isInteractive = path.some(el => el instanceof HTMLElement &&
1464
+ (['BUTTON', 'INPUT', 'TEXTAREA', 'SELECT', 'A', 'UI-ICON'].includes(el.tagName) || el.classList.contains('dialog-btn')));
1465
+ if (isInteractive)
1466
+ return;
1467
+ // Only allow drag from header
1468
+ const header = this.dialogElement.querySelector('ui-dialog-header');
1469
+ const isHeaderClick = path.some(p => p === header || (p instanceof HTMLElement && p.localName === 'ui-dialog-header'));
1470
+ if (!isHeaderClick)
1471
+ return;
1472
+ e.preventDefault(); // Prevent scrolling on touch
1473
+ e.stopPropagation();
1474
+ this.isDragging = true;
1475
+ this.dragAnchored = false;
1476
+ // Handle Touch/Pointer coordinates
1477
+ this.dragStartX = e.clientX;
1478
+ this.dragStartY = e.clientY;
1479
+ const rect = this.dialogElement.getBoundingClientRect();
1480
+ this.initialLeft = rect.left;
1481
+ this.initialTop = rect.top;
1482
+ this.dragStartX = e.clientX;
1483
+ this.dragStartY = e.clientY;
1484
+ // Do NOT modify styles here — wait until movement threshold is crossed
1485
+ // to avoid snapping the dialog on a plain click.
1486
+ // Capture pointer
1487
+ if (this.dialogElement.setPointerCapture) {
1488
+ try {
1489
+ this.dialogElement.setPointerCapture(e.pointerId);
1490
+ }
1491
+ catch (ex) { }
1492
+ }
1493
+ document.addEventListener('pointermove', this.handlePointerMove);
1494
+ document.addEventListener('pointerup', this.handlePointerUp);
1495
+ document.body.style.userSelect = 'none';
1496
+ document.body.style.cursor = 'grabbing';
1497
+ };
1498
+ checkSnapping = (clientX, clientY) => {
1499
+ const threshold = 50;
1500
+ const winW = window.innerWidth;
1501
+ const winH = window.innerHeight;
1502
+ if (clientX < threshold) {
1503
+ this.snappedEdge = 'left';
1504
+ }
1505
+ else if (clientX > winW - threshold) {
1506
+ this.snappedEdge = 'right';
1507
+ }
1508
+ else if (clientY < threshold) {
1509
+ this.snappedEdge = 'top';
1510
+ }
1511
+ else if (clientY > winH - threshold) {
1512
+ this.snappedEdge = 'bottom';
1513
+ }
1514
+ else {
1515
+ this.snappedEdge = 'none';
1516
+ }
1517
+ };
1518
+ handlePointerMove = (e) => {
1519
+ if (!this.dialogElement)
1520
+ return;
1521
+ if (this.isDragging) {
1522
+ const dx = e.clientX - this.dragStartX;
1523
+ const dy = e.clientY - this.dragStartY;
1524
+ // Anti-jitter: Avoid resetting styles until true movement occurs
1525
+ if (!this.dragAnchored) {
1526
+ if (Math.abs(dx) < 5 && Math.abs(dy) < 5)
1527
+ return;
1528
+ this.dragAnchored = true;
1529
+ this.dialogElement.style.margin = '0';
1530
+ this.dialogElement.style.position = 'fixed';
1531
+ this.dialogElement.style.left = `${this.initialLeft}px`;
1532
+ this.dialogElement.style.top = `${this.initialTop}px`;
1533
+ this.dialogElement.style.transform = 'none';
1534
+ this.dialogElement.style.width = `${this.dialogElement.offsetWidth}px`; // Lock width
1535
+ this.dialogElement.classList.add('is-dragging');
1536
+ }
1537
+ this.dialogElement.style.left = `${this.initialLeft + dx}px`;
1538
+ this.dialogElement.style.top = `${this.initialTop + dy}px`;
1539
+ if (this.snapToEdges) {
1540
+ this.checkSnapping(e.clientX, e.clientY);
1541
+ }
1542
+ }
1543
+ else if (this.isResizing) {
1544
+ const dx = e.clientX - this.resizeStartX;
1545
+ const dy = e.clientY - this.resizeStartY;
1546
+ let newWidth = this.initialWidth + dx;
1547
+ let newHeight = this.initialHeight + dy;
1548
+ // Helper to parse pixel values safely
1549
+ const parseVal = (v) => v ? parseInt(v, 10) : null;
1550
+ if (this.minWidth)
1551
+ newWidth = Math.max(newWidth, parseVal(this.minWidth) || 0);
1552
+ if (this.minHeight)
1553
+ newHeight = Math.max(newHeight, parseVal(this.minHeight) || 0);
1554
+ if (this.maxWidth)
1555
+ newWidth = Math.min(newWidth, parseVal(this.maxWidth) || 9999);
1556
+ if (this.maxHeight)
1557
+ newHeight = Math.min(newHeight, parseVal(this.maxHeight) || 9999);
1558
+ this.dialogElement.style.width = `${newWidth}px`;
1559
+ this.dialogElement.style.height = `${newHeight}px`;
1560
+ }
1561
+ };
1562
+ handlePointerUp = (e) => {
1563
+ if (!this.dialogElement) {
1564
+ this.isDragging = false;
1565
+ this.isResizing = false;
1566
+ return;
1567
+ }
1568
+ // Release capture
1569
+ if (this.isDragging && this.dialogElement.releasePointerCapture) {
1570
+ try {
1571
+ this.dialogElement.releasePointerCapture(e.pointerId);
1572
+ }
1573
+ catch (ex) { }
1574
+ }
1575
+ if (this.isResizing && e.target.releasePointerCapture) {
1576
+ try {
1577
+ e.target.releasePointerCapture(e.pointerId);
1578
+ }
1579
+ catch (ex) { }
1580
+ }
1581
+ if (this.isDragging || this.isResizing) {
1582
+ this.ignoreBackdropClick = true;
1583
+ setTimeout(() => {
1584
+ this.ignoreBackdropClick = false;
1585
+ }, 100);
1586
+ }
1587
+ if (this.isDragging && this.snapToEdges && this.snappedEdge !== 'none') {
1588
+ this.maximize(); // Changed from applySnap to maximize as per user edit
1589
+ }
1590
+ // Reset global styles
1591
+ if (this.isDragging) {
1592
+ document.body.style.userSelect = '';
1593
+ document.body.style.cursor = '';
1594
+ }
1595
+ // Commit final position so next drag starts cleanly from the landed location
1596
+ if (this.isDragging && this.dragAnchored && this.dialogElement) {
1597
+ const rect = this.dialogElement.getBoundingClientRect();
1598
+ this.dialogElement.style.left = `${rect.left}px`;
1599
+ this.dialogElement.style.top = `${rect.top}px`;
1600
+ this.dialogElement.style.transform = 'none';
1601
+ }
1602
+ this.isDragging = false;
1603
+ this.dragAnchored = false;
1604
+ this.isResizing = false;
1605
+ this.snappedEdge = 'none';
1606
+ // Persistence
1607
+ if (this.remember)
1608
+ this.saveLayout();
1609
+ // Swipe to Close detection
1610
+ if (this.swipeToClose && !this.isResizing && !this.isDragging) {
1611
+ const dx = e.clientX - this.dragStartX;
1612
+ if (Math.abs(dx) > 150) { // Swipe threshold
1613
+ this.hide();
1614
+ }
1615
+ }
1616
+ document.removeEventListener('pointermove', this.handlePointerMove);
1617
+ document.removeEventListener('pointerup', this.handlePointerUp);
1618
+ };
1619
+ handleResizePointerDown = (e) => {
1620
+ if (!this.resizable || this.maximized)
1621
+ return;
1622
+ e.stopPropagation();
1623
+ e.preventDefault();
1624
+ this.isResizing = true;
1625
+ this.resizeStartX = e.clientX;
1626
+ this.resizeStartY = e.clientY;
1627
+ const rect = this.dialogElement.getBoundingClientRect();
1628
+ this.initialWidth = rect.width;
1629
+ this.initialHeight = rect.height;
1630
+ // Lock position
1631
+ this.dialogElement.style.margin = '0';
1632
+ this.dialogElement.style.position = 'fixed';
1633
+ this.dialogElement.style.left = `${rect.left}px`;
1634
+ this.dialogElement.style.top = `${rect.top}px`;
1635
+ // Capture pointer
1636
+ try {
1637
+ e.target.setPointerCapture(e.pointerId);
1638
+ }
1639
+ catch (ex) { }
1640
+ // Alternatively capture on dialog if handle is sm
1641
+ // try { this.dialogElement.setPointerCapture(e.pointerId); } catch(ex) {}
1642
+ document.addEventListener('pointermove', this.handlePointerMove);
1643
+ document.addEventListener('pointerup', this.handlePointerUp);
1644
+ };
1645
+ renderHeader(isPeek = false) {
1646
+ if (!this.showHeader)
1647
+ return null;
1648
+ // Provide default cancelText for session/terms types if not set
1649
+ let cancelLabel = this.cancelText;
1650
+ if (!cancelLabel) {
1651
+ if (this.type === 'session')
1652
+ cancelLabel = 'Logout';
1653
+ else if (this.type === 'terms')
1654
+ cancelLabel = 'Decline';
1655
+ else
1656
+ cancelLabel = this._resolveButtons().cancelLabel;
1657
+ }
1658
+ // Use local defaults for okLabel and dialogTitle
1659
+ let okLabel = this.okText;
1660
+ if (!okLabel) {
1661
+ okLabel = this._defaultOkText || this._resolveButtons().okLabel;
1662
+ }
1663
+ let dialogTitle = this.dialogTitle;
1664
+ if (!dialogTitle) {
1665
+ dialogTitle = this._defaultDialogTitle;
1666
+ }
1667
+ return (h("ui-dialog-header", { part: "header", dialogTitle: dialogTitle, subtitle: this.subtitle, showMinimize: !isPeek && this.showMinimize && !this.maximized && this.type !== 'messagebox', showMaximize: !isPeek && this.showMaximize && this.type !== 'messagebox', showClose: this.showClose, showMenu: !isPeek && (this.showMenu || (Array.isArray(this.menuItems) ? this.menuItems.length > 0 : !!this.menuItems)), menuItems: this.menuItems, menuIcon: this.menuIcon, menuTitle: this.menuTitle, titleTag: this.titleTag, iconPosition: this.iconPosition, type: this.type, variant: this.variant, status: this.status, icon: this.icon, avatar: this.avatar, onMinimize: (e) => { e.stopImmediatePropagation(); this.minimize(); }, onMaximize: (e) => { e.stopImmediatePropagation(); this.maximize(); }, onClose: (e) => { e.stopImmediatePropagation(); this.hide('close-btn'); }, onMenu: (e) => { e.stopImmediatePropagation(); this.handleMenu(e); }, iconLibrary: this.iconLibrary, style: this.headerColor ? { backgroundColor: this.headerColor, color: '#fff' } : {} }, (this.headerImage || this.el.querySelector('[slot="header-icon"]')) && (h("div", { slot: "icon", style: { display: 'flex', alignItems: 'center', gap: '8px' } }, this.headerImage && h("img", { src: this.headerImage, alt: "", style: { width: '20px', height: '20px', borderRadius: '4px' } }), h("slot", { name: "header-icon" }))), h("slot", { name: "title", slot: "title" }), h("slot", { name: "subtitle", slot: "subtitle" }), h("slot", { name: "header-actions", slot: "actions" }), h("slot", { name: "menu-list", slot: "menu-list" }), this.allowPopOut && !isPeek && (h("ui-button", { variant: "ghost", size: "sm", icon: "external-link", iconLibrary: this.iconLibrary, iconSize: "1.2em", ariaLabel: "Pop out Window", onClick: () => this.popOut(), slot: "actions", part: "popout-btn" }))));
1668
+ }
1669
+ renderStepper() {
1670
+ if (!this.steps || (typeof this.steps === 'number' ? this.steps <= 0 : this.steps.length <= 0))
1671
+ return null;
1672
+ return (h("div", { class: "ui-dialog-stepper" }, Array.from({ length: typeof this.steps === 'number' ? this.steps : this.steps.length }).map((_, i) => (h("div", { class: {
1673
+ 'step-item': true,
1674
+ 'active': this._currentStep === i + 1,
1675
+ 'completed': this._currentStep > i + 1
1676
+ } }, h("div", { class: "step-dot" }, i + 1), Array.isArray(this.steps) && h("div", { class: "step-label" }, this.steps[i]), i < (typeof this.steps === 'number' ? this.steps : this.steps.length) - 1 && h("div", { class: "step-line" }))))));
1677
+ }
1678
+ renderBodyContent() {
1679
+ return (h("div", { class: { 'ui-dialog-main-container': true, 'has-side-nav': this.layout === 'side-nav' } }, this.layout === 'side-nav' && (h("div", { class: "ui-dialog-side-nav" }, h("slot", { name: "side-nav" }))), h("div", { class: { 'ui-dialog-content-wrapper': true, 'type-messagebox': this.type === 'messagebox' }, part: "body", onScroll: this.handleTermsScroll }, this.type === 'session' && (h("div", { class: `ui-dialog-session-alert ${this._sessionTimedOut ? 'is-timeout' : ''}` }, h("ui-icon", { name: this._sessionTimedOut ? 'log-out' : 'clock', library: "lucide" }), this._sessionTimedOut ? (h("div", { class: "timeout-content" }, h("p", { style: { fontWeight: '600', color: '#ef4444', margin: '0 0 8px' } }, "Due to inactivity, you have been logged out."), h("p", { style: { fontSize: '13px', color: '#666', margin: '0' } }, "Please log in again to continue working on your tasks."))) : (h("span", null, "Session expiring in ", h("strong", null, this._sessionTimeLeft, "s"))))), h("slot", { name: "body" }, h("slot", null), this.type === 'prompt' && (h("div", { class: "ui-dialog-prompt-container" }, h("ui-input", { type: this.promptType, name: "prompt", class: "ui-dialog-prompt-input", value: this.promptValue, placeholder: this.promptPlaceholder, label: this.promptLabel, onInputChange: (e) => {
1680
+ this.promptValue = e.detail;
1681
+ this.returnValue = this.promptValue;
1682
+ }, autofocus: true, fullWidth: true })))))));
1683
+ }
1684
+ renderFooterContent() {
1685
+ if (!this.showFooter)
1686
+ return null;
1687
+ const { okLabel, cancelLabel, resetLabel } = this._resolveButtons();
1688
+ // If no buttons at all and no slots, skip the footer entirely
1689
+ const hasButtons = okLabel || cancelLabel || resetLabel;
1690
+ const hasSlots = !!this.confirmationText;
1691
+ if (!hasButtons && !hasSlots)
1692
+ return null;
1693
+ return (h("ui-dialog-footer", { class: "ui-dialog-footer-wrapper", part: "footer" }, h("div", { class: "footer-left" }, this.confirmationText && (h("div", { class: "ui-dialog-confirmation" }, h("ui-checkbox", { class: "confirmation-checkbox", checked: this.isConfirmed, label: this.confirmationText, onCheckboxChange: (e) => {
1694
+ this.isConfirmed = e.detail.checked;
1695
+ } }))), h("slot", { name: "footer-left" })), h("div", { class: "footer-right", part: "footer-actions" }, h("slot", { name: "actions" }, resetLabel && (h("ui-button", { variant: "outline", size: "md", onButtonClick: this.handleReset }, resetLabel)), cancelLabel && (h("ui-button", { variant: "outline", size: "md", onButtonClick: this.handleCancel, disabled: this.cancelDisabled }, cancelLabel)), okLabel && (h("ui-button", { variant: (this.status === 'default' || this.status === 'info') ? 'primary' : this.status, size: "md", onButtonClick: this._sessionTimedOut ? () => window.location.href = '/login' : this.handleOk, loading: this.okLoading, disabled: this.okDisabled || (!!this.confirmationText && !this.isConfirmed) || (this.type === 'terms' && !this._termsScrolled) }, this._sessionTimedOut ? "Go to Login" : okLabel))), h("div", { class: "footer-custom-slot" }, h("slot", { name: "footer" })))));
1696
+ }
1697
+ render() {
1698
+ if (!this.open && !this.isClosing && !this.keepMounted)
1699
+ return null;
1700
+ // ── Minimized tray render ──────────────────────────────────────────────
1701
+ if (this.minimized && this.open && !this._dockPeek) {
1702
+ return (h(Host, { class: { 'minimized': true, 'open': this.open } }, h("div", { class: `ui-tray-tab status-${this.status} ${this.variant === 'glass' ? 'variant-glass' : ''}`, onClick: () => this.restore(), onDblClick: () => this.restore(), title: `Click to Restore ${this.dialogTitle}`, style: {
1703
+ color: '#ffffff',
1704
+ display: 'flex',
1705
+ alignItems: 'center',
1706
+ justifyContent: 'center',
1707
+ padding: '0 8px',
1708
+ gap: '12px',
1709
+ height: '100%',
1710
+ width: '100%',
1711
+ minWidth: '100px',
1712
+ fontWeight: '600'
1713
+ } }, this.icon && h("ui-icon", { name: this.icon, color: "white", library: this.iconLibrary, size: "1rem", style: { flexShrink: '0' } }), h("span", { class: "tab-label", style: { color: '#ffffff', flex: '0 1 auto', whiteSpace: 'nowrap' } }, this.dockLabel || this.dialogTitle || 'Dialog'), h("ui-button", { variant: "ghost", size: "sm", class: "ui-tray-btn", icon: "x", iconLibrary: "lucide", iconSize: "14px", ariaLabel: "Close", onClick: (e) => { e.stopPropagation(); this.hide(); } }))));
1714
+ }
1715
+ const isHidden = !this.open && !this.isClosing && this.keepMounted;
1716
+ // Use a local variable for effective size (do not mutate prop)
1717
+ const effectiveSize = this.type === 'terms' && this.size === 'md' ? 'lg' : this.size;
1718
+ const dialogClasses = {
1719
+ 'ui-dialog-box': true,
1720
+ 'closing': this.isClosing,
1721
+ 'maximized': this.maximized,
1722
+ 'minimized': this.minimized,
1723
+ [`variant-${this.variant}`]: true,
1724
+ [`status-${this.status}`]: this.status !== 'default',
1725
+ [`size-${effectiveSize}`]: effectiveSize !== 'custom',
1726
+ 'scroll-paper': this.scrollArea === 'paper',
1727
+ 'scroll-body': this.scrollArea === 'body',
1728
+ [`animation-${this.animation}`]: true,
1729
+ 'fullscreen-mobile': this.fullscreenOnMobile,
1730
+ 'hidden-mounted': isHidden,
1731
+ 'draggable': this.isDraggable,
1732
+ 'is-dragging': this.isDragging,
1733
+ 'loading-active': this.loading,
1734
+ 'is-bordered': this.bordered,
1735
+ 'is-nested': this.isNested,
1736
+ 'debug-mode': this.debug,
1737
+ 'glass-effect': this.glass || this.variant === 'glass',
1738
+ [`type-${this.type}`]: true,
1739
+ [`density-${this.density}`]: true,
1740
+ 'shake': this._isShaking
1741
+ };
1742
+ const dialogStyles = {
1743
+ '--dialog-bg': this.backgroundColor || 'white',
1744
+ backgroundColor: 'var(--dialog-bg, #ffffff)'
1745
+ };
1746
+ if (!this.maximized) {
1747
+ const isDefaultWidth = this.width === '500px';
1748
+ const isDefaultHeight = this.height === 'auto';
1749
+ if (effectiveSize === 'custom' || !isDefaultWidth || !isDefaultHeight || this._restoredLayout) {
1750
+ if (this.width)
1751
+ dialogStyles.width = this.width;
1752
+ if (this.height && this.scrollArea !== 'body')
1753
+ dialogStyles.height = this.height;
1754
+ }
1755
+ if (this._restoredLayout) {
1756
+ dialogStyles.position = 'fixed';
1757
+ dialogStyles.margin = '0';
1758
+ dialogStyles.left = `${this._restoredLayout.left}px`;
1759
+ dialogStyles.top = `${this._restoredLayout.top}px`;
1760
+ }
1761
+ }
1762
+ const dialogId = this.el.id || `dialog-idx-${Math.random().toString(36).substr(2, 5)}`;
1763
+ const posClass = `position-${this.position}`;
1764
+ return (h(Host, { class: { 'open': this.open, 'minimized': this.minimized, 'dock-peek': this._dockPeek } }, this.minimized && this._dockPeek && (h("div", { class: `ui-peek-panel variant-${this.variant} status-${this.status}`, onClick: (e) => e.stopPropagation() }, this.renderHeader(true), h("div", { class: "ui-dialog-content-wrapper" }, h("slot", { name: "body" }, h("slot", null))))), (!this.minimized || this._dockPeek) && (h("div", { class: `ui-dialog-backdrop ${this.backdrop === 'none' ? 'backdrop-none' : ''} ${this.scrollArea === 'body' ? 'scroll-body-active' : ''} ${posClass} ${this.isClosing ? 'closing' : ''} ${this.glass ? 'glass-backdrop' : ''} ${isHidden ? 'hidden-mounted' : ''}`, onClick: this.handleBackdropClick, part: "backdrop", ref: (el) => (this.backdropElement = el), style: { zIndex: `${this.zIndex}` } }, h("div", { ref: (el) => (this.dialogElement = el), class: dialogClasses, style: dialogStyles, part: "panel", onPointerDown: this.handlePointerDown, tabIndex: -1, role: "dialog", "aria-modal": "true", id: dialogId }, h("div", { class: "ui-dialog-box-container", onPointerUp: this.handlePointerUp }, this.renderHeader(), this.showHeader && h("div", { class: "ui-dialog-divider-line" }), this.progress >= 0 && (h("div", { class: "ui-dialog-progress-container", title: `Progress: ${this.progress}%` }, h("div", { class: "ui-dialog-progress-bar", style: { width: `${this.progress}%` } }))), this.renderStepper(), this.showToolbar && (h("div", { class: "ui-dialog-toolbar" }, h("slot", { name: "toolbar" }))), this.renderBodyContent(), this.showStatusBar && (h("div", { class: "ui-dialog-status-bar" }, h("slot", { name: "status-bar" }))), this.showFooter && h("div", { class: "ui-dialog-divider-line" }), this.renderFooterContent(), this.resizable && !this.maximized && (h("div", { class: "resize-handle", onPointerDown: this.handleResizePointerDown })), this.subOverlay?.visible && (h("div", { class: "ui-dialog-sub-overlay" }, h("div", { class: "sub-overlay-card" }, h("h4", null, this.subOverlay.title), h("p", null, this.subOverlay.message), h("div", { class: "sub-overlay-actions" }, h("ui-button", { variant: "outline", onButtonClick: () => this.subOverlay = null }, "Cancel"), h("ui-button", { variant: "primary", onButtonClick: () => { this.subOverlay.onConfirm(); this.subOverlay = null; } }, "Confirm")))))))))));
1765
+ }
1766
+ triggerConfetti() {
1767
+ const count = 200;
1768
+ const defaults = { origin: { y: 0.7 }, zIndex: this.zIndex + 10 };
1769
+ function fire(particleRatio, opts) {
1770
+ if (window.confetti) {
1771
+ window.confetti(Object.assign({}, defaults, opts, {
1772
+ particleCount: Math.floor(count * particleRatio)
1773
+ }));
1774
+ }
1775
+ }
1776
+ fire(0.25, { spread: 26, startVelocity: 55 });
1777
+ fire(0.2, { spread: 60 });
1778
+ fire(0.35, { spread: 100, decay: 0.91, scalar: 0.8 });
1779
+ fire(0.1, { spread: 120, startVelocity: 25, decay: 0.92, scalar: 1.2 });
1780
+ fire(0.1, { spread: 120, startVelocity: 45 });
1781
+ }
1782
+ static get is() { return "ui-dialog-box"; }
1783
+ static get encapsulation() { return "shadow"; }
1784
+ static get originalStyleUrls() {
1785
+ return {
1786
+ "$": ["dialog-box.scss", "dialog-tray.scss"]
1787
+ };
1788
+ }
1789
+ static get styleUrls() {
1790
+ return {
1791
+ "$": ["dialog-box.css", "dialog-tray.css"]
1792
+ };
1793
+ }
1794
+ static get properties() {
1795
+ return {
1796
+ "open": {
1797
+ "type": "boolean",
1798
+ "mutable": true,
1799
+ "complexType": {
1800
+ "original": "boolean",
1801
+ "resolved": "boolean",
1802
+ "references": {}
1803
+ },
1804
+ "required": false,
1805
+ "optional": false,
1806
+ "docs": {
1807
+ "tags": [],
1808
+ "text": "Whether the dialog is open"
1809
+ },
1810
+ "getter": false,
1811
+ "setter": false,
1812
+ "reflect": true,
1813
+ "attribute": "open",
1814
+ "defaultValue": "false"
1815
+ },
1816
+ "dialogTitle": {
1817
+ "type": "string",
1818
+ "mutable": true,
1819
+ "complexType": {
1820
+ "original": "string",
1821
+ "resolved": "string",
1822
+ "references": {}
1823
+ },
1824
+ "required": false,
1825
+ "optional": false,
1826
+ "docs": {
1827
+ "tags": [],
1828
+ "text": "Dialog title"
1829
+ },
1830
+ "getter": false,
1831
+ "setter": false,
1832
+ "reflect": false,
1833
+ "attribute": "dialog-title",
1834
+ "defaultValue": "''"
1835
+ },
1836
+ "subtitle": {
1837
+ "type": "string",
1838
+ "mutable": false,
1839
+ "complexType": {
1840
+ "original": "string",
1841
+ "resolved": "string",
1842
+ "references": {}
1843
+ },
1844
+ "required": false,
1845
+ "optional": false,
1846
+ "docs": {
1847
+ "tags": [],
1848
+ "text": "Dialog subtitle"
1849
+ },
1850
+ "getter": false,
1851
+ "setter": false,
1852
+ "reflect": false,
1853
+ "attribute": "subtitle",
1854
+ "defaultValue": "''"
1855
+ },
1856
+ "maximized": {
1857
+ "type": "boolean",
1858
+ "mutable": true,
1859
+ "complexType": {
1860
+ "original": "boolean",
1861
+ "resolved": "boolean",
1862
+ "references": {}
1863
+ },
1864
+ "required": false,
1865
+ "optional": false,
1866
+ "docs": {
1867
+ "tags": [],
1868
+ "text": "Whether the dialog is maximized"
1869
+ },
1870
+ "getter": false,
1871
+ "setter": false,
1872
+ "reflect": true,
1873
+ "attribute": "maximized",
1874
+ "defaultValue": "false"
1875
+ },
1876
+ "minimized": {
1877
+ "type": "boolean",
1878
+ "mutable": true,
1879
+ "complexType": {
1880
+ "original": "boolean",
1881
+ "resolved": "boolean",
1882
+ "references": {}
1883
+ },
1884
+ "required": false,
1885
+ "optional": false,
1886
+ "docs": {
1887
+ "tags": [],
1888
+ "text": "Whether the dialog is minimized"
1889
+ },
1890
+ "getter": false,
1891
+ "setter": false,
1892
+ "reflect": true,
1893
+ "attribute": "minimized",
1894
+ "defaultValue": "false"
1895
+ },
1896
+ "width": {
1897
+ "type": "string",
1898
+ "mutable": true,
1899
+ "complexType": {
1900
+ "original": "string",
1901
+ "resolved": "string",
1902
+ "references": {}
1903
+ },
1904
+ "required": false,
1905
+ "optional": false,
1906
+ "docs": {
1907
+ "tags": [],
1908
+ "text": "Dialog width. Explicit width takes precedence over size if size is 'custom'."
1909
+ },
1910
+ "getter": false,
1911
+ "setter": false,
1912
+ "reflect": false,
1913
+ "attribute": "width",
1914
+ "defaultValue": "'500px'"
1915
+ },
1916
+ "height": {
1917
+ "type": "string",
1918
+ "mutable": true,
1919
+ "complexType": {
1920
+ "original": "string",
1921
+ "resolved": "string",
1922
+ "references": {}
1923
+ },
1924
+ "required": false,
1925
+ "optional": false,
1926
+ "docs": {
1927
+ "tags": [],
1928
+ "text": "Dialog height"
1929
+ },
1930
+ "getter": false,
1931
+ "setter": false,
1932
+ "reflect": false,
1933
+ "attribute": "height",
1934
+ "defaultValue": "'auto'"
1935
+ },
1936
+ "headerImage": {
1937
+ "type": "string",
1938
+ "mutable": false,
1939
+ "complexType": {
1940
+ "original": "string",
1941
+ "resolved": "string",
1942
+ "references": {}
1943
+ },
1944
+ "required": false,
1945
+ "optional": true,
1946
+ "docs": {
1947
+ "tags": [],
1948
+ "text": "Path to header image"
1949
+ },
1950
+ "getter": false,
1951
+ "setter": false,
1952
+ "reflect": false,
1953
+ "attribute": "header-image"
1954
+ },
1955
+ "icon": {
1956
+ "type": "string",
1957
+ "mutable": false,
1958
+ "complexType": {
1959
+ "original": "string",
1960
+ "resolved": "string",
1961
+ "references": {}
1962
+ },
1963
+ "required": false,
1964
+ "optional": false,
1965
+ "docs": {
1966
+ "tags": [],
1967
+ "text": "Icon name to show in the header"
1968
+ },
1969
+ "getter": false,
1970
+ "setter": false,
1971
+ "reflect": false,
1972
+ "attribute": "icon",
1973
+ "defaultValue": "''"
1974
+ },
1975
+ "avatar": {
1976
+ "type": "string",
1977
+ "mutable": false,
1978
+ "complexType": {
1979
+ "original": "string",
1980
+ "resolved": "string",
1981
+ "references": {}
1982
+ },
1983
+ "required": false,
1984
+ "optional": false,
1985
+ "docs": {
1986
+ "tags": [],
1987
+ "text": "User avatar URL to show in the header"
1988
+ },
1989
+ "getter": false,
1990
+ "setter": false,
1991
+ "reflect": false,
1992
+ "attribute": "avatar",
1993
+ "defaultValue": "''"
1994
+ },
1995
+ "showMaximize": {
1996
+ "type": "boolean",
1997
+ "mutable": false,
1998
+ "complexType": {
1999
+ "original": "boolean",
2000
+ "resolved": "boolean",
2001
+ "references": {}
2002
+ },
2003
+ "required": false,
2004
+ "optional": false,
2005
+ "docs": {
2006
+ "tags": [],
2007
+ "text": "Whether to show maximize button"
2008
+ },
2009
+ "getter": false,
2010
+ "setter": false,
2011
+ "reflect": false,
2012
+ "attribute": "show-maximize",
2013
+ "defaultValue": "false"
2014
+ },
2015
+ "showMinimize": {
2016
+ "type": "boolean",
2017
+ "mutable": false,
2018
+ "complexType": {
2019
+ "original": "boolean",
2020
+ "resolved": "boolean",
2021
+ "references": {}
2022
+ },
2023
+ "required": false,
2024
+ "optional": false,
2025
+ "docs": {
2026
+ "tags": [],
2027
+ "text": "Whether to show minimize button"
2028
+ },
2029
+ "getter": false,
2030
+ "setter": false,
2031
+ "reflect": false,
2032
+ "attribute": "show-minimize",
2033
+ "defaultValue": "false"
2034
+ },
2035
+ "showClose": {
2036
+ "type": "boolean",
2037
+ "mutable": false,
2038
+ "complexType": {
2039
+ "original": "boolean",
2040
+ "resolved": "boolean",
2041
+ "references": {}
2042
+ },
2043
+ "required": false,
2044
+ "optional": false,
2045
+ "docs": {
2046
+ "tags": [],
2047
+ "text": "Whether to show close button"
2048
+ },
2049
+ "getter": false,
2050
+ "setter": false,
2051
+ "reflect": false,
2052
+ "attribute": "show-close",
2053
+ "defaultValue": "true"
2054
+ },
2055
+ "showMenu": {
2056
+ "type": "boolean",
2057
+ "mutable": false,
2058
+ "complexType": {
2059
+ "original": "boolean",
2060
+ "resolved": "boolean",
2061
+ "references": {}
2062
+ },
2063
+ "required": false,
2064
+ "optional": false,
2065
+ "docs": {
2066
+ "tags": [],
2067
+ "text": "Whether to show menu button (Action Menu)"
2068
+ },
2069
+ "getter": false,
2070
+ "setter": false,
2071
+ "reflect": false,
2072
+ "attribute": "show-menu",
2073
+ "defaultValue": "false"
2074
+ },
2075
+ "menuIcon": {
2076
+ "type": "string",
2077
+ "mutable": false,
2078
+ "complexType": {
2079
+ "original": "string",
2080
+ "resolved": "string",
2081
+ "references": {}
2082
+ },
2083
+ "required": false,
2084
+ "optional": false,
2085
+ "docs": {
2086
+ "tags": [],
2087
+ "text": "Icon for the menu trigger button in the header.\r\nDefaults to 'more-horizontal' (\u22EF). Use 'settings' for a gear, 'sliders-horizontal' for filters, etc."
2088
+ },
2089
+ "getter": false,
2090
+ "setter": false,
2091
+ "reflect": false,
2092
+ "attribute": "menu-icon",
2093
+ "defaultValue": "'more-horizontal'"
2094
+ },
2095
+ "menuTitle": {
2096
+ "type": "string",
2097
+ "mutable": false,
2098
+ "complexType": {
2099
+ "original": "string",
2100
+ "resolved": "string",
2101
+ "references": {}
2102
+ },
2103
+ "required": false,
2104
+ "optional": false,
2105
+ "docs": {
2106
+ "tags": [],
2107
+ "text": "Tooltip text for the menu trigger button."
2108
+ },
2109
+ "getter": false,
2110
+ "setter": false,
2111
+ "reflect": false,
2112
+ "attribute": "menu-title",
2113
+ "defaultValue": "'Menu'"
2114
+ },
2115
+ "showHeader": {
2116
+ "type": "boolean",
2117
+ "mutable": false,
2118
+ "complexType": {
2119
+ "original": "boolean",
2120
+ "resolved": "boolean",
2121
+ "references": {}
2122
+ },
2123
+ "required": false,
2124
+ "optional": false,
2125
+ "docs": {
2126
+ "tags": [],
2127
+ "text": "Whether to show the header"
2128
+ },
2129
+ "getter": false,
2130
+ "setter": false,
2131
+ "reflect": false,
2132
+ "attribute": "show-header",
2133
+ "defaultValue": "true"
2134
+ },
2135
+ "showFooter": {
2136
+ "type": "boolean",
2137
+ "mutable": false,
2138
+ "complexType": {
2139
+ "original": "boolean",
2140
+ "resolved": "boolean",
2141
+ "references": {}
2142
+ },
2143
+ "required": false,
2144
+ "optional": false,
2145
+ "docs": {
2146
+ "tags": [],
2147
+ "text": "Whether to show the footer"
2148
+ },
2149
+ "getter": false,
2150
+ "setter": false,
2151
+ "reflect": false,
2152
+ "attribute": "show-footer",
2153
+ "defaultValue": "true"
2154
+ },
2155
+ "variant": {
2156
+ "type": "string",
2157
+ "mutable": false,
2158
+ "complexType": {
2159
+ "original": "ComponentVariant",
2160
+ "resolved": "\"bordered\" | \"borderless\" | \"color\" | \"danger\" | \"dark\" | \"default\" | \"dots-only\" | \"elevated\" | \"error\" | \"filled\" | \"flat\" | \"ghost\" | \"glass\" | \"gradient\" | \"info\" | \"inverse\" | \"light\" | \"minimal\" | \"neutral\" | \"outlined\" | \"panel\" | \"plain\" | \"primary\" | \"quaternary\" | \"raised\" | \"secondary\" | \"segmented\" | \"soft\" | \"solid\" | \"standard\" | \"success\" | \"surface\" | \"tertiary\" | \"text\" | \"underlined\" | \"warning\"",
2161
+ "references": {
2162
+ "ComponentVariant": {
2163
+ "location": "import",
2164
+ "path": "../../types/common.type",
2165
+ "id": "src/types/common.type.d.ts::ComponentVariant",
2166
+ "referenceLocation": "ComponentVariant"
2167
+ }
2168
+ }
2169
+ },
2170
+ "required": false,
2171
+ "optional": false,
2172
+ "docs": {
2173
+ "tags": [],
2174
+ "text": "Dialog variant style"
2175
+ },
2176
+ "getter": false,
2177
+ "setter": false,
2178
+ "reflect": false,
2179
+ "attribute": "variant",
2180
+ "defaultValue": "'outlined'"
2181
+ },
2182
+ "status": {
2183
+ "type": "string",
2184
+ "mutable": true,
2185
+ "complexType": {
2186
+ "original": "StatusColor",
2187
+ "resolved": "\"borderless\" | \"danger\" | \"default\" | \"elevated\" | \"error\" | \"flat\" | \"ghost\" | \"glass\" | \"info\" | \"inverse\" | \"loading\" | \"neutral\" | \"none\" | \"outline\" | \"plain\" | \"primary\" | \"raised\" | \"secondary\" | \"soft\" | \"sovereign\" | \"success\" | \"surface\" | \"tertiary\" | \"warning\"",
2188
+ "references": {
2189
+ "StatusColor": {
2190
+ "location": "import",
2191
+ "path": "../../types/common.type",
2192
+ "id": "src/types/common.type.d.ts::StatusColor",
2193
+ "referenceLocation": "StatusColor"
2194
+ }
2195
+ }
2196
+ },
2197
+ "required": false,
2198
+ "optional": false,
2199
+ "docs": {
2200
+ "tags": [],
2201
+ "text": "Dialog status/type"
2202
+ },
2203
+ "getter": false,
2204
+ "setter": false,
2205
+ "reflect": false,
2206
+ "attribute": "status",
2207
+ "defaultValue": "'default'"
2208
+ },
2209
+ "backdrop": {
2210
+ "type": "string",
2211
+ "mutable": false,
2212
+ "complexType": {
2213
+ "original": "BackdropType",
2214
+ "resolved": "\"default\" | \"none\" | \"static\"",
2215
+ "references": {
2216
+ "BackdropType": {
2217
+ "location": "import",
2218
+ "path": "../../types/common.type",
2219
+ "id": "src/types/common.type.d.ts::BackdropType",
2220
+ "referenceLocation": "BackdropType"
2221
+ }
2222
+ }
2223
+ },
2224
+ "required": false,
2225
+ "optional": false,
2226
+ "docs": {
2227
+ "tags": [],
2228
+ "text": "Backdrop Behavior. 'default' (closes on click), 'static' (no close), 'none' (no backdrop)."
2229
+ },
2230
+ "getter": false,
2231
+ "setter": false,
2232
+ "reflect": false,
2233
+ "attribute": "backdrop",
2234
+ "defaultValue": "'default'"
2235
+ },
2236
+ "scrollArea": {
2237
+ "type": "string",
2238
+ "mutable": true,
2239
+ "complexType": {
2240
+ "original": "ScrollArea",
2241
+ "resolved": "\"body\" | \"paper\"",
2242
+ "references": {
2243
+ "ScrollArea": {
2244
+ "location": "import",
2245
+ "path": "../../types/common.type",
2246
+ "id": "src/types/common.type.d.ts::ScrollArea",
2247
+ "referenceLocation": "ScrollArea"
2248
+ }
2249
+ }
2250
+ },
2251
+ "required": false,
2252
+ "optional": false,
2253
+ "docs": {
2254
+ "tags": [],
2255
+ "text": "Scroll behavior. 'paper' (scroll inside content), 'body' (scroll whole dialog)."
2256
+ },
2257
+ "getter": false,
2258
+ "setter": false,
2259
+ "reflect": false,
2260
+ "attribute": "scroll-area",
2261
+ "defaultValue": "'paper'"
2262
+ },
2263
+ "type": {
2264
+ "type": "string",
2265
+ "mutable": false,
2266
+ "complexType": {
2267
+ "original": "DialogType",
2268
+ "resolved": "\"alert\" | \"confirm\" | \"default\" | \"delete\" | \"drawer\" | \"fullscreen\" | \"messagebox\" | \"modal\" | \"pre-session\" | \"prompt\" | \"session\" | \"terms\" | \"upload\"",
2269
+ "references": {
2270
+ "DialogType": {
2271
+ "location": "import",
2272
+ "path": "./types",
2273
+ "id": "src/components/dialog-box/types.ts::DialogType",
2274
+ "referenceLocation": "DialogType"
2275
+ }
2276
+ }
2277
+ },
2278
+ "required": false,
2279
+ "optional": false,
2280
+ "docs": {
2281
+ "tags": [],
2282
+ "text": "Dialog functional type.\r\n- 'modal': Standard centered modal.\r\n- 'drawer': Slides from an edge (determined by position).\r\n- 'fullscreen': Occupies entire screen.\r\n- 'alert': Emphasis on the message, simple actions.\r\n- 'confirm': Standard confirmation with OK/Cancel flow.\r\n- 'prompt': Modal with an input field for user entry.\r\n- 'messagebox': Simplified modal for informational messages.\r\n- (Legacy): 'default' | 'delete' | 'upload' | 'session' | 'terms'"
2283
+ },
2284
+ "getter": false,
2285
+ "setter": false,
2286
+ "reflect": false,
2287
+ "attribute": "type",
2288
+ "defaultValue": "'modal'"
2289
+ },
2290
+ "promptLabel": {
2291
+ "type": "string",
2292
+ "mutable": false,
2293
+ "complexType": {
2294
+ "original": "string",
2295
+ "resolved": "string",
2296
+ "references": {}
2297
+ },
2298
+ "required": false,
2299
+ "optional": false,
2300
+ "docs": {
2301
+ "tags": [],
2302
+ "text": "Label for the input field (only for 'prompt' type)."
2303
+ },
2304
+ "getter": false,
2305
+ "setter": false,
2306
+ "reflect": false,
2307
+ "attribute": "prompt-label",
2308
+ "defaultValue": "''"
2309
+ },
2310
+ "promptPlaceholder": {
2311
+ "type": "string",
2312
+ "mutable": false,
2313
+ "complexType": {
2314
+ "original": "string",
2315
+ "resolved": "string",
2316
+ "references": {}
2317
+ },
2318
+ "required": false,
2319
+ "optional": false,
2320
+ "docs": {
2321
+ "tags": [],
2322
+ "text": "Placeholder text for the prompt input."
2323
+ },
2324
+ "getter": false,
2325
+ "setter": false,
2326
+ "reflect": false,
2327
+ "attribute": "prompt-placeholder",
2328
+ "defaultValue": "''"
2329
+ },
2330
+ "promptType": {
2331
+ "type": "string",
2332
+ "mutable": false,
2333
+ "complexType": {
2334
+ "original": "PromptType",
2335
+ "resolved": "\"email\" | \"number\" | \"password\" | \"tel\" | \"text\"",
2336
+ "references": {
2337
+ "PromptType": {
2338
+ "location": "import",
2339
+ "path": "../../types/common.type",
2340
+ "id": "src/types/common.type.d.ts::PromptType",
2341
+ "referenceLocation": "PromptType"
2342
+ }
2343
+ }
2344
+ },
2345
+ "required": false,
2346
+ "optional": false,
2347
+ "docs": {
2348
+ "tags": [],
2349
+ "text": "Input type for the prompt (text, password, etc.)."
2350
+ },
2351
+ "getter": false,
2352
+ "setter": false,
2353
+ "reflect": false,
2354
+ "attribute": "prompt-type",
2355
+ "defaultValue": "'text'"
2356
+ },
2357
+ "promptInitialValue": {
2358
+ "type": "string",
2359
+ "mutable": false,
2360
+ "complexType": {
2361
+ "original": "string",
2362
+ "resolved": "string",
2363
+ "references": {}
2364
+ },
2365
+ "required": false,
2366
+ "optional": false,
2367
+ "docs": {
2368
+ "tags": [],
2369
+ "text": "Initial value for the prompt input."
2370
+ },
2371
+ "getter": false,
2372
+ "setter": false,
2373
+ "reflect": false,
2374
+ "attribute": "prompt-initial-value",
2375
+ "defaultValue": "''"
2376
+ },
2377
+ "sessionTimeout": {
2378
+ "type": "number",
2379
+ "mutable": false,
2380
+ "complexType": {
2381
+ "original": "number",
2382
+ "resolved": "number",
2383
+ "references": {}
2384
+ },
2385
+ "required": false,
2386
+ "optional": false,
2387
+ "docs": {
2388
+ "tags": [],
2389
+ "text": "Session timeout duration in seconds (only for 'session' type)."
2390
+ },
2391
+ "getter": false,
2392
+ "setter": false,
2393
+ "reflect": false,
2394
+ "attribute": "session-timeout",
2395
+ "defaultValue": "60"
2396
+ },
2397
+ "autoSubmitOnTimeout": {
2398
+ "type": "boolean",
2399
+ "mutable": false,
2400
+ "complexType": {
2401
+ "original": "boolean",
2402
+ "resolved": "boolean",
2403
+ "references": {}
2404
+ },
2405
+ "required": false,
2406
+ "optional": false,
2407
+ "docs": {
2408
+ "tags": [],
2409
+ "text": "Whether to automatically submit 'session' dialog on timeout.\r\nIf false, it will just close (cancel)."
2410
+ },
2411
+ "getter": false,
2412
+ "setter": false,
2413
+ "reflect": false,
2414
+ "attribute": "auto-submit-on-timeout",
2415
+ "defaultValue": "false"
2416
+ },
2417
+ "position": {
2418
+ "type": "string",
2419
+ "mutable": false,
2420
+ "complexType": {
2421
+ "original": "'center' | FourSidePosition|FourCornerPosition",
2422
+ "resolved": "\"bottom\" | \"bottom-left\" | \"bottom-right\" | \"center\" | \"left\" | \"right\" | \"top\" | \"top-left\" | \"top-right\"",
2423
+ "references": {
2424
+ "FourSidePosition": {
2425
+ "location": "import",
2426
+ "path": "../../types/common.type",
2427
+ "id": "src/types/common.type.d.ts::FourSidePosition",
2428
+ "referenceLocation": "FourSidePosition"
2429
+ },
2430
+ "FourCornerPosition": {
2431
+ "location": "import",
2432
+ "path": "../../types/common.type",
2433
+ "id": "src/types/common.type.d.ts::FourCornerPosition",
2434
+ "referenceLocation": "FourCornerPosition"
2435
+ }
2436
+ }
2437
+ },
2438
+ "required": false,
2439
+ "optional": false,
2440
+ "docs": {
2441
+ "tags": [],
2442
+ "text": "Position of the dialog. \r\nFor 'drawer' type, these determine the slide direction."
2443
+ },
2444
+ "getter": false,
2445
+ "setter": false,
2446
+ "reflect": true,
2447
+ "attribute": "position",
2448
+ "defaultValue": "'center'"
2449
+ },
2450
+ "size": {
2451
+ "type": "string",
2452
+ "mutable": false,
2453
+ "complexType": {
2454
+ "original": "ComponentSize | 'custom'",
2455
+ "resolved": "\"custom\" | \"default\" | \"large\" | \"lg\" | \"md\" | \"medium\" | \"sm\" | \"small\" | \"xl\" | \"xs\" | \"xxl\" | \"xxs\" | \"xxxl\" | \"xxxs\"",
2456
+ "references": {
2457
+ "ComponentSize": {
2458
+ "location": "import",
2459
+ "path": "../../types/common.type",
2460
+ "id": "src/types/common.type.d.ts::ComponentSize",
2461
+ "referenceLocation": "ComponentSize"
2462
+ }
2463
+ }
2464
+ },
2465
+ "required": false,
2466
+ "optional": false,
2467
+ "docs": {
2468
+ "tags": [],
2469
+ "text": "Predefined horizontal sizing."
2470
+ },
2471
+ "getter": false,
2472
+ "setter": false,
2473
+ "reflect": true,
2474
+ "attribute": "size",
2475
+ "defaultValue": "'md'"
2476
+ },
2477
+ "density": {
2478
+ "type": "string",
2479
+ "mutable": false,
2480
+ "complexType": {
2481
+ "original": "Density",
2482
+ "resolved": "\"comfortable\" | \"compact\" | \"cozy\" | \"normal\"",
2483
+ "references": {
2484
+ "Density": {
2485
+ "location": "import",
2486
+ "path": "../../types/common.type",
2487
+ "id": "src/types/common.type.d.ts::Density",
2488
+ "referenceLocation": "Density"
2489
+ }
2490
+ }
2491
+ },
2492
+ "required": false,
2493
+ "optional": false,
2494
+ "docs": {
2495
+ "tags": [],
2496
+ "text": "Visual density mode."
2497
+ },
2498
+ "getter": false,
2499
+ "setter": false,
2500
+ "reflect": true,
2501
+ "attribute": "density",
2502
+ "defaultValue": "'cozy'"
2503
+ },
2504
+ "closeOnBackdrop": {
2505
+ "type": "boolean",
2506
+ "mutable": false,
2507
+ "complexType": {
2508
+ "original": "boolean",
2509
+ "resolved": "boolean",
2510
+ "references": {}
2511
+ },
2512
+ "required": false,
2513
+ "optional": false,
2514
+ "docs": {
2515
+ "tags": [],
2516
+ "text": "Whether clicking the backdrop closes the dialog."
2517
+ },
2518
+ "getter": false,
2519
+ "setter": false,
2520
+ "reflect": false,
2521
+ "attribute": "close-on-backdrop",
2522
+ "defaultValue": "true"
2523
+ },
2524
+ "closeOnEsc": {
2525
+ "type": "boolean",
2526
+ "mutable": false,
2527
+ "complexType": {
2528
+ "original": "boolean",
2529
+ "resolved": "boolean",
2530
+ "references": {}
2531
+ },
2532
+ "required": false,
2533
+ "optional": false,
2534
+ "docs": {
2535
+ "tags": [],
2536
+ "text": "Whether the ESC key closes the dialog."
2537
+ },
2538
+ "getter": false,
2539
+ "setter": false,
2540
+ "reflect": false,
2541
+ "attribute": "close-on-esc",
2542
+ "defaultValue": "true"
2543
+ },
2544
+ "isDraggable": {
2545
+ "type": "boolean",
2546
+ "mutable": true,
2547
+ "complexType": {
2548
+ "original": "boolean",
2549
+ "resolved": "boolean",
2550
+ "references": {}
2551
+ },
2552
+ "required": false,
2553
+ "optional": false,
2554
+ "docs": {
2555
+ "tags": [],
2556
+ "text": "Draggable dialog (only for 'modal' type)."
2557
+ },
2558
+ "getter": false,
2559
+ "setter": false,
2560
+ "reflect": false,
2561
+ "attribute": "is-draggable",
2562
+ "defaultValue": "false"
2563
+ },
2564
+ "resizable": {
2565
+ "type": "boolean",
2566
+ "mutable": false,
2567
+ "complexType": {
2568
+ "original": "boolean",
2569
+ "resolved": "boolean",
2570
+ "references": {}
2571
+ },
2572
+ "required": false,
2573
+ "optional": false,
2574
+ "docs": {
2575
+ "tags": [],
2576
+ "text": "Resizable dialog."
2577
+ },
2578
+ "getter": false,
2579
+ "setter": false,
2580
+ "reflect": false,
2581
+ "attribute": "resizable",
2582
+ "defaultValue": "false"
2583
+ },
2584
+ "steps": {
2585
+ "type": "number",
2586
+ "mutable": false,
2587
+ "complexType": {
2588
+ "original": "string[] | number",
2589
+ "resolved": "number | string[]",
2590
+ "references": {}
2591
+ },
2592
+ "required": false,
2593
+ "optional": false,
2594
+ "docs": {
2595
+ "tags": [],
2596
+ "text": "Stepper steps for Wizard mode. Either an array of strings or a number."
2597
+ },
2598
+ "getter": false,
2599
+ "setter": false,
2600
+ "reflect": false,
2601
+ "attribute": "steps",
2602
+ "defaultValue": "0"
2603
+ },
2604
+ "currentStep": {
2605
+ "type": "number",
2606
+ "mutable": false,
2607
+ "complexType": {
2608
+ "original": "number",
2609
+ "resolved": "number",
2610
+ "references": {}
2611
+ },
2612
+ "required": false,
2613
+ "optional": false,
2614
+ "docs": {
2615
+ "tags": [],
2616
+ "text": "Current step in Wizard mode (1-indexed)."
2617
+ },
2618
+ "getter": false,
2619
+ "setter": false,
2620
+ "reflect": false,
2621
+ "attribute": "current-step",
2622
+ "defaultValue": "1"
2623
+ },
2624
+ "globalBlur": {
2625
+ "type": "boolean",
2626
+ "mutable": false,
2627
+ "complexType": {
2628
+ "original": "boolean",
2629
+ "resolved": "boolean",
2630
+ "references": {}
2631
+ },
2632
+ "required": false,
2633
+ "optional": false,
2634
+ "docs": {
2635
+ "tags": [],
2636
+ "text": "Whether to blur the entire webpage behind this dialog."
2637
+ },
2638
+ "getter": false,
2639
+ "setter": false,
2640
+ "reflect": false,
2641
+ "attribute": "global-blur",
2642
+ "defaultValue": "false"
2643
+ },
2644
+ "layout": {
2645
+ "type": "string",
2646
+ "mutable": false,
2647
+ "complexType": {
2648
+ "original": "DialogLayout",
2649
+ "resolved": "\"default\" | \"side-nav\"",
2650
+ "references": {
2651
+ "DialogLayout": {
2652
+ "location": "import",
2653
+ "path": "./types",
2654
+ "id": "src/components/dialog-box/types.ts::DialogLayout",
2655
+ "referenceLocation": "DialogLayout"
2656
+ }
2657
+ }
2658
+ },
2659
+ "required": false,
2660
+ "optional": false,
2661
+ "docs": {
2662
+ "tags": [],
2663
+ "text": "Dialog layout mode.\r\n'default': Standard dialog\r\n'side-nav': Includes a sidebar for master/detail views"
2664
+ },
2665
+ "getter": false,
2666
+ "setter": false,
2667
+ "reflect": false,
2668
+ "attribute": "layout",
2669
+ "defaultValue": "'default'"
2670
+ },
2671
+ "showToolbar": {
2672
+ "type": "boolean",
2673
+ "mutable": false,
2674
+ "complexType": {
2675
+ "original": "boolean",
2676
+ "resolved": "boolean",
2677
+ "references": {}
2678
+ },
2679
+ "required": false,
2680
+ "optional": false,
2681
+ "docs": {
2682
+ "tags": [],
2683
+ "text": "Whether to show a toolbar below the header"
2684
+ },
2685
+ "getter": false,
2686
+ "setter": false,
2687
+ "reflect": false,
2688
+ "attribute": "show-toolbar",
2689
+ "defaultValue": "false"
2690
+ },
2691
+ "showStatusBar": {
2692
+ "type": "boolean",
2693
+ "mutable": false,
2694
+ "complexType": {
2695
+ "original": "boolean",
2696
+ "resolved": "boolean",
2697
+ "references": {}
2698
+ },
2699
+ "required": false,
2700
+ "optional": false,
2701
+ "docs": {
2702
+ "tags": [],
2703
+ "text": "Whether to show a status bar above the footer"
2704
+ },
2705
+ "getter": false,
2706
+ "setter": false,
2707
+ "reflect": false,
2708
+ "attribute": "show-status-bar",
2709
+ "defaultValue": "false"
2710
+ },
2711
+ "snapToEdges": {
2712
+ "type": "boolean",
2713
+ "mutable": false,
2714
+ "complexType": {
2715
+ "original": "boolean",
2716
+ "resolved": "boolean",
2717
+ "references": {}
2718
+ },
2719
+ "required": false,
2720
+ "optional": false,
2721
+ "docs": {
2722
+ "tags": [],
2723
+ "text": "Snap to screen edges when dragging"
2724
+ },
2725
+ "getter": false,
2726
+ "setter": false,
2727
+ "reflect": false,
2728
+ "attribute": "snap-to-edges",
2729
+ "defaultValue": "true"
2730
+ },
2731
+ "loading": {
2732
+ "type": "boolean",
2733
+ "mutable": false,
2734
+ "complexType": {
2735
+ "original": "boolean",
2736
+ "resolved": "boolean",
2737
+ "references": {}
2738
+ },
2739
+ "required": false,
2740
+ "optional": false,
2741
+ "docs": {
2742
+ "tags": [],
2743
+ "text": "Skeleton loading state. Transforms the dialog UI into placeholders."
2744
+ },
2745
+ "getter": false,
2746
+ "setter": false,
2747
+ "reflect": false,
2748
+ "attribute": "loading",
2749
+ "defaultValue": "false"
2750
+ },
2751
+ "shortcuts": {
2752
+ "type": "boolean",
2753
+ "mutable": false,
2754
+ "complexType": {
2755
+ "original": "boolean",
2756
+ "resolved": "boolean",
2757
+ "references": {}
2758
+ },
2759
+ "required": false,
2760
+ "optional": false,
2761
+ "docs": {
2762
+ "tags": [],
2763
+ "text": "Enable OS-level shortcuts (Ctrl+Enter to OK, Esc to Close)."
2764
+ },
2765
+ "getter": false,
2766
+ "setter": false,
2767
+ "reflect": false,
2768
+ "attribute": "shortcuts",
2769
+ "defaultValue": "true"
2770
+ },
2771
+ "dirty": {
2772
+ "type": "boolean",
2773
+ "mutable": false,
2774
+ "complexType": {
2775
+ "original": "boolean",
2776
+ "resolved": "boolean",
2777
+ "references": {}
2778
+ },
2779
+ "required": false,
2780
+ "optional": false,
2781
+ "docs": {
2782
+ "tags": [],
2783
+ "text": "Whether the dialog contents are \"dirty\" (unsaved changes). \r\nTriggers the confirmation prompt on close."
2784
+ },
2785
+ "getter": false,
2786
+ "setter": false,
2787
+ "reflect": false,
2788
+ "attribute": "dirty",
2789
+ "defaultValue": "false"
2790
+ },
2791
+ "animationDuration": {
2792
+ "type": "number",
2793
+ "mutable": false,
2794
+ "complexType": {
2795
+ "original": "number",
2796
+ "resolved": "number",
2797
+ "references": {}
2798
+ },
2799
+ "required": false,
2800
+ "optional": false,
2801
+ "docs": {
2802
+ "tags": [],
2803
+ "text": "Animation duration in ms."
2804
+ },
2805
+ "getter": false,
2806
+ "setter": false,
2807
+ "reflect": false,
2808
+ "attribute": "animation-duration",
2809
+ "defaultValue": "250"
2810
+ },
2811
+ "initialFocus": {
2812
+ "type": "string",
2813
+ "mutable": false,
2814
+ "complexType": {
2815
+ "original": "string",
2816
+ "resolved": "string",
2817
+ "references": {}
2818
+ },
2819
+ "required": false,
2820
+ "optional": true,
2821
+ "docs": {
2822
+ "tags": [],
2823
+ "text": "CSS selector for the element to focus initially when opened."
2824
+ },
2825
+ "getter": false,
2826
+ "setter": false,
2827
+ "reflect": false,
2828
+ "attribute": "initial-focus"
2829
+ },
2830
+ "allowPopOut": {
2831
+ "type": "boolean",
2832
+ "mutable": false,
2833
+ "complexType": {
2834
+ "original": "boolean",
2835
+ "resolved": "boolean",
2836
+ "references": {}
2837
+ },
2838
+ "required": false,
2839
+ "optional": false,
2840
+ "docs": {
2841
+ "tags": [],
2842
+ "text": "Show a \"pop-out\" button to open content in a separate browser window."
2843
+ },
2844
+ "getter": false,
2845
+ "setter": false,
2846
+ "reflect": false,
2847
+ "attribute": "allow-pop-out",
2848
+ "defaultValue": "false"
2849
+ },
2850
+ "starred": {
2851
+ "type": "boolean",
2852
+ "mutable": true,
2853
+ "complexType": {
2854
+ "original": "boolean",
2855
+ "resolved": "boolean",
2856
+ "references": {}
2857
+ },
2858
+ "required": false,
2859
+ "optional": false,
2860
+ "docs": {
2861
+ "tags": [],
2862
+ "text": "Whether the dialog is starred/favorited"
2863
+ },
2864
+ "getter": false,
2865
+ "setter": false,
2866
+ "reflect": true,
2867
+ "attribute": "starred",
2868
+ "defaultValue": "false"
2869
+ },
2870
+ "dockLabel": {
2871
+ "type": "string",
2872
+ "mutable": false,
2873
+ "complexType": {
2874
+ "original": "string",
2875
+ "resolved": "string",
2876
+ "references": {}
2877
+ },
2878
+ "required": false,
2879
+ "optional": false,
2880
+ "docs": {
2881
+ "tags": [],
2882
+ "text": "Label for the dock when minimized."
2883
+ },
2884
+ "getter": false,
2885
+ "setter": false,
2886
+ "reflect": false,
2887
+ "attribute": "dock-label",
2888
+ "defaultValue": "''"
2889
+ },
2890
+ "confirmationText": {
2891
+ "type": "string",
2892
+ "mutable": false,
2893
+ "complexType": {
2894
+ "original": "string",
2895
+ "resolved": "string",
2896
+ "references": {}
2897
+ },
2898
+ "required": false,
2899
+ "optional": false,
2900
+ "docs": {
2901
+ "tags": [],
2902
+ "text": "Confirmation text for checkbox (e.g. \"I accept the Terms & Conditions\").\r\nIf provided, the OK button will be disabled until checked."
2903
+ },
2904
+ "getter": false,
2905
+ "setter": false,
2906
+ "reflect": false,
2907
+ "attribute": "confirmation-text",
2908
+ "defaultValue": "''"
2909
+ },
2910
+ "headerSize": {
2911
+ "type": "string",
2912
+ "mutable": false,
2913
+ "complexType": {
2914
+ "original": "BasicSize",
2915
+ "resolved": "\"default\" | \"large\" | \"lg\" | \"md\" | \"medium\" | \"sm\" | \"small\"",
2916
+ "references": {
2917
+ "BasicSize": {
2918
+ "location": "import",
2919
+ "path": "../../types/common.type",
2920
+ "id": "src/types/common.type.d.ts::BasicSize",
2921
+ "referenceLocation": "BasicSize"
2922
+ }
2923
+ }
2924
+ },
2925
+ "required": false,
2926
+ "optional": false,
2927
+ "docs": {
2928
+ "tags": [],
2929
+ "text": "Header size."
2930
+ },
2931
+ "getter": false,
2932
+ "setter": false,
2933
+ "reflect": false,
2934
+ "attribute": "header-size",
2935
+ "defaultValue": "'md'"
2936
+ },
2937
+ "headerColor": {
2938
+ "type": "string",
2939
+ "mutable": true,
2940
+ "complexType": {
2941
+ "original": "string",
2942
+ "resolved": "string",
2943
+ "references": {}
2944
+ },
2945
+ "required": false,
2946
+ "optional": true,
2947
+ "docs": {
2948
+ "tags": [],
2949
+ "text": "Header background color override."
2950
+ },
2951
+ "getter": false,
2952
+ "setter": false,
2953
+ "reflect": false,
2954
+ "attribute": "header-color"
2955
+ },
2956
+ "bordered": {
2957
+ "type": "boolean",
2958
+ "mutable": true,
2959
+ "complexType": {
2960
+ "original": "boolean",
2961
+ "resolved": "boolean",
2962
+ "references": {}
2963
+ },
2964
+ "required": false,
2965
+ "optional": false,
2966
+ "docs": {
2967
+ "tags": [],
2968
+ "text": "Whether the dialog should have a more pronounced border."
2969
+ },
2970
+ "getter": false,
2971
+ "setter": false,
2972
+ "reflect": false,
2973
+ "attribute": "bordered",
2974
+ "defaultValue": "false"
2975
+ },
2976
+ "okText": {
2977
+ "type": "string",
2978
+ "mutable": true,
2979
+ "complexType": {
2980
+ "original": "string",
2981
+ "resolved": "string",
2982
+ "references": {}
2983
+ },
2984
+ "required": false,
2985
+ "optional": true,
2986
+ "docs": {
2987
+ "tags": [],
2988
+ "text": "Text for the OK button. If provided, renders an OK button in the footer."
2989
+ },
2990
+ "getter": false,
2991
+ "setter": false,
2992
+ "reflect": false,
2993
+ "attribute": "ok-text"
2994
+ },
2995
+ "buttonSet": {
2996
+ "type": "string",
2997
+ "mutable": false,
2998
+ "complexType": {
2999
+ "original": "'ok-cancel' | 'yes-no' | 'yes-no-cancel' | 'save-discard' | 'retry-cancel' | 'custom'",
3000
+ "resolved": "\"custom\" | \"ok-cancel\" | \"retry-cancel\" | \"save-discard\" | \"yes-no\" | \"yes-no-cancel\"",
3001
+ "references": {}
3002
+ },
3003
+ "required": false,
3004
+ "optional": false,
3005
+ "docs": {
3006
+ "tags": [],
3007
+ "text": "Preset button set for confirmation dialogs.\r\n- `'ok-cancel'` \u2192 OK / Cancel\r\n- `'yes-no'` \u2192 Yes / No\r\n- `'yes-no-cancel'` \u2192 Yes / No / Cancel (No maps to resetText slot, left-aligned)\r\n- `'save-discard'` \u2192 Save / Discard\r\n- `'retry-cancel'` \u2192 Retry / Cancel\r\nExplicit `okText` / `cancelText` / `resetText` props always override the preset labels."
3008
+ },
3009
+ "getter": false,
3010
+ "setter": false,
3011
+ "reflect": false,
3012
+ "attribute": "button-set",
3013
+ "defaultValue": "'custom'"
3014
+ },
3015
+ "cancelText": {
3016
+ "type": "string",
3017
+ "mutable": true,
3018
+ "complexType": {
3019
+ "original": "string",
3020
+ "resolved": "string",
3021
+ "references": {}
3022
+ },
3023
+ "required": false,
3024
+ "optional": true,
3025
+ "docs": {
3026
+ "tags": [],
3027
+ "text": "Text for the Cancel button."
3028
+ },
3029
+ "getter": false,
3030
+ "setter": false,
3031
+ "reflect": false,
3032
+ "attribute": "cancel-text"
3033
+ },
3034
+ "portal": {
3035
+ "type": "boolean",
3036
+ "mutable": false,
3037
+ "complexType": {
3038
+ "original": "boolean",
3039
+ "resolved": "boolean",
3040
+ "references": {}
3041
+ },
3042
+ "required": false,
3043
+ "optional": false,
3044
+ "docs": {
3045
+ "tags": [],
3046
+ "text": "Whether to portal the dialog to body"
3047
+ },
3048
+ "getter": false,
3049
+ "setter": false,
3050
+ "reflect": false,
3051
+ "attribute": "portal",
3052
+ "defaultValue": "false"
3053
+ },
3054
+ "okLoading": {
3055
+ "type": "boolean",
3056
+ "mutable": false,
3057
+ "complexType": {
3058
+ "original": "boolean",
3059
+ "resolved": "boolean",
3060
+ "references": {}
3061
+ },
3062
+ "required": false,
3063
+ "optional": false,
3064
+ "docs": {
3065
+ "tags": [],
3066
+ "text": "Loading state for the OK button."
3067
+ },
3068
+ "getter": false,
3069
+ "setter": false,
3070
+ "reflect": false,
3071
+ "attribute": "ok-loading",
3072
+ "defaultValue": "false"
3073
+ },
3074
+ "okDisabled": {
3075
+ "type": "boolean",
3076
+ "mutable": false,
3077
+ "complexType": {
3078
+ "original": "boolean",
3079
+ "resolved": "boolean",
3080
+ "references": {}
3081
+ },
3082
+ "required": false,
3083
+ "optional": false,
3084
+ "docs": {
3085
+ "tags": [],
3086
+ "text": "Disable the OK button."
3087
+ },
3088
+ "getter": false,
3089
+ "setter": false,
3090
+ "reflect": false,
3091
+ "attribute": "ok-disabled",
3092
+ "defaultValue": "false"
3093
+ },
3094
+ "resetText": {
3095
+ "type": "string",
3096
+ "mutable": false,
3097
+ "complexType": {
3098
+ "original": "string",
3099
+ "resolved": "string",
3100
+ "references": {}
3101
+ },
3102
+ "required": false,
3103
+ "optional": true,
3104
+ "docs": {
3105
+ "tags": [],
3106
+ "text": "Text for the Reset button (left-aligned)."
3107
+ },
3108
+ "getter": false,
3109
+ "setter": false,
3110
+ "reflect": false,
3111
+ "attribute": "reset-text"
3112
+ },
3113
+ "cancelDisabled": {
3114
+ "type": "boolean",
3115
+ "mutable": false,
3116
+ "complexType": {
3117
+ "original": "boolean",
3118
+ "resolved": "boolean",
3119
+ "references": {}
3120
+ },
3121
+ "required": false,
3122
+ "optional": false,
3123
+ "docs": {
3124
+ "tags": [],
3125
+ "text": "Disable the Cancel button."
3126
+ },
3127
+ "getter": false,
3128
+ "setter": false,
3129
+ "reflect": false,
3130
+ "attribute": "cancel-disabled",
3131
+ "defaultValue": "false"
3132
+ },
3133
+ "fullscreenOnMobile": {
3134
+ "type": "boolean",
3135
+ "mutable": false,
3136
+ "complexType": {
3137
+ "original": "boolean",
3138
+ "resolved": "boolean",
3139
+ "references": {}
3140
+ },
3141
+ "required": false,
3142
+ "optional": false,
3143
+ "docs": {
3144
+ "tags": [],
3145
+ "text": "Fullscreen on mobile devices automatically."
3146
+ },
3147
+ "getter": false,
3148
+ "setter": false,
3149
+ "reflect": false,
3150
+ "attribute": "fullscreen-on-mobile",
3151
+ "defaultValue": "true"
3152
+ },
3153
+ "keepMounted": {
3154
+ "type": "boolean",
3155
+ "mutable": false,
3156
+ "complexType": {
3157
+ "original": "boolean",
3158
+ "resolved": "boolean",
3159
+ "references": {}
3160
+ },
3161
+ "required": false,
3162
+ "optional": false,
3163
+ "docs": {
3164
+ "tags": [],
3165
+ "text": "Keep content mounted when closed."
3166
+ },
3167
+ "getter": false,
3168
+ "setter": false,
3169
+ "reflect": false,
3170
+ "attribute": "keep-mounted",
3171
+ "defaultValue": "false"
3172
+ },
3173
+ "animation": {
3174
+ "type": "string",
3175
+ "mutable": false,
3176
+ "complexType": {
3177
+ "original": "'scale' | 'fade' | 'slide-up' | 'slide-down' | 'slide-left' | 'slide-right' | 'flip'",
3178
+ "resolved": "\"fade\" | \"flip\" | \"scale\" | \"slide-down\" | \"slide-left\" | \"slide-right\" | \"slide-up\"",
3179
+ "references": {}
3180
+ },
3181
+ "required": false,
3182
+ "optional": false,
3183
+ "docs": {
3184
+ "tags": [],
3185
+ "text": "Custom animation name."
3186
+ },
3187
+ "getter": false,
3188
+ "setter": false,
3189
+ "reflect": false,
3190
+ "attribute": "animation",
3191
+ "defaultValue": "'scale'"
3192
+ },
3193
+ "returnFocus": {
3194
+ "type": "boolean",
3195
+ "mutable": false,
3196
+ "complexType": {
3197
+ "original": "boolean",
3198
+ "resolved": "boolean",
3199
+ "references": {}
3200
+ },
3201
+ "required": false,
3202
+ "optional": false,
3203
+ "docs": {
3204
+ "tags": [],
3205
+ "text": "Return focus to trigger element on close."
3206
+ },
3207
+ "getter": false,
3208
+ "setter": false,
3209
+ "reflect": false,
3210
+ "attribute": "return-focus",
3211
+ "defaultValue": "true"
3212
+ },
3213
+ "zIndex": {
3214
+ "type": "number",
3215
+ "mutable": true,
3216
+ "complexType": {
3217
+ "original": "number",
3218
+ "resolved": "number",
3219
+ "references": {}
3220
+ },
3221
+ "required": false,
3222
+ "optional": false,
3223
+ "docs": {
3224
+ "tags": [],
3225
+ "text": "Z-Index for the dialog. Useful for nested dialogs."
3226
+ },
3227
+ "getter": false,
3228
+ "setter": false,
3229
+ "reflect": false,
3230
+ "attribute": "z-index",
3231
+ "defaultValue": "10000"
3232
+ },
3233
+ "minWidth": {
3234
+ "type": "string",
3235
+ "mutable": false,
3236
+ "complexType": {
3237
+ "original": "string",
3238
+ "resolved": "string",
3239
+ "references": {}
3240
+ },
3241
+ "required": false,
3242
+ "optional": true,
3243
+ "docs": {
3244
+ "tags": [],
3245
+ "text": "Minimum Width"
3246
+ },
3247
+ "getter": false,
3248
+ "setter": false,
3249
+ "reflect": false,
3250
+ "attribute": "min-width"
3251
+ },
3252
+ "minHeight": {
3253
+ "type": "string",
3254
+ "mutable": false,
3255
+ "complexType": {
3256
+ "original": "string",
3257
+ "resolved": "string",
3258
+ "references": {}
3259
+ },
3260
+ "required": false,
3261
+ "optional": true,
3262
+ "docs": {
3263
+ "tags": [],
3264
+ "text": "Minimum Height"
3265
+ },
3266
+ "getter": false,
3267
+ "setter": false,
3268
+ "reflect": false,
3269
+ "attribute": "min-height"
3270
+ },
3271
+ "maxWidth": {
3272
+ "type": "string",
3273
+ "mutable": false,
3274
+ "complexType": {
3275
+ "original": "string",
3276
+ "resolved": "string",
3277
+ "references": {}
3278
+ },
3279
+ "required": false,
3280
+ "optional": true,
3281
+ "docs": {
3282
+ "tags": [],
3283
+ "text": "Maximum Width"
3284
+ },
3285
+ "getter": false,
3286
+ "setter": false,
3287
+ "reflect": false,
3288
+ "attribute": "max-width"
3289
+ },
3290
+ "maxHeight": {
3291
+ "type": "string",
3292
+ "mutable": false,
3293
+ "complexType": {
3294
+ "original": "string",
3295
+ "resolved": "string",
3296
+ "references": {}
3297
+ },
3298
+ "required": false,
3299
+ "optional": true,
3300
+ "docs": {
3301
+ "tags": [],
3302
+ "text": "Maximum Height"
3303
+ },
3304
+ "getter": false,
3305
+ "setter": false,
3306
+ "reflect": false,
3307
+ "attribute": "max-height"
3308
+ },
3309
+ "remember": {
3310
+ "type": "boolean",
3311
+ "mutable": false,
3312
+ "complexType": {
3313
+ "original": "boolean",
3314
+ "resolved": "boolean",
3315
+ "references": {}
3316
+ },
3317
+ "required": false,
3318
+ "optional": false,
3319
+ "docs": {
3320
+ "tags": [],
3321
+ "text": "Remember dialog position and size between sessions (requires id)."
3322
+ },
3323
+ "getter": false,
3324
+ "setter": false,
3325
+ "reflect": false,
3326
+ "attribute": "remember",
3327
+ "defaultValue": "false"
3328
+ },
3329
+ "swipeToClose": {
3330
+ "type": "boolean",
3331
+ "mutable": false,
3332
+ "complexType": {
3333
+ "original": "boolean",
3334
+ "resolved": "boolean",
3335
+ "references": {}
3336
+ },
3337
+ "required": false,
3338
+ "optional": false,
3339
+ "docs": {
3340
+ "tags": [],
3341
+ "text": "Allow swipe-to-close gesture on mobile devices."
3342
+ },
3343
+ "getter": false,
3344
+ "setter": false,
3345
+ "reflect": false,
3346
+ "attribute": "swipe-to-close",
3347
+ "defaultValue": "false"
3348
+ },
3349
+ "confetti": {
3350
+ "type": "boolean",
3351
+ "mutable": false,
3352
+ "complexType": {
3353
+ "original": "boolean",
3354
+ "resolved": "boolean",
3355
+ "references": {}
3356
+ },
3357
+ "required": false,
3358
+ "optional": false,
3359
+ "docs": {
3360
+ "tags": [],
3361
+ "text": "Fire confetti when the dialog opens."
3362
+ },
3363
+ "getter": false,
3364
+ "setter": false,
3365
+ "reflect": false,
3366
+ "attribute": "confetti",
3367
+ "defaultValue": "false"
3368
+ },
3369
+ "glass": {
3370
+ "type": "boolean",
3371
+ "mutable": false,
3372
+ "complexType": {
3373
+ "original": "boolean",
3374
+ "resolved": "boolean",
3375
+ "references": {}
3376
+ },
3377
+ "required": false,
3378
+ "optional": false,
3379
+ "docs": {
3380
+ "tags": [],
3381
+ "text": "Enable glassmorphism effect (blur) on backdrop."
3382
+ },
3383
+ "getter": false,
3384
+ "setter": false,
3385
+ "reflect": false,
3386
+ "attribute": "glass",
3387
+ "defaultValue": "false"
3388
+ },
3389
+ "backgroundColor": {
3390
+ "type": "string",
3391
+ "mutable": false,
3392
+ "complexType": {
3393
+ "original": "string",
3394
+ "resolved": "string",
3395
+ "references": {}
3396
+ },
3397
+ "required": false,
3398
+ "optional": false,
3399
+ "docs": {
3400
+ "tags": [],
3401
+ "text": "Background color of the dialog panel"
3402
+ },
3403
+ "getter": false,
3404
+ "setter": false,
3405
+ "reflect": false,
3406
+ "attribute": "background-color",
3407
+ "defaultValue": "'white'"
3408
+ },
3409
+ "progress": {
3410
+ "type": "number",
3411
+ "mutable": false,
3412
+ "complexType": {
3413
+ "original": "number",
3414
+ "resolved": "number",
3415
+ "references": {}
3416
+ },
3417
+ "required": false,
3418
+ "optional": false,
3419
+ "docs": {
3420
+ "tags": [],
3421
+ "text": "Visual progress bar percentage (0-100)."
3422
+ },
3423
+ "getter": false,
3424
+ "setter": false,
3425
+ "reflect": false,
3426
+ "attribute": "progress",
3427
+ "defaultValue": "-1"
3428
+ },
3429
+ "isNested": {
3430
+ "type": "boolean",
3431
+ "mutable": true,
3432
+ "complexType": {
3433
+ "original": "boolean",
3434
+ "resolved": "boolean",
3435
+ "references": {}
3436
+ },
3437
+ "required": false,
3438
+ "optional": false,
3439
+ "docs": {
3440
+ "tags": [],
3441
+ "text": "Whether the dialog is nested (inside another dialog). \r\nTriggers visual differentiation (smer size, deeper shadow)."
3442
+ },
3443
+ "getter": false,
3444
+ "setter": false,
3445
+ "reflect": false,
3446
+ "attribute": "is-nested",
3447
+ "defaultValue": "false"
3448
+ },
3449
+ "sensitive": {
3450
+ "type": "boolean",
3451
+ "mutable": false,
3452
+ "complexType": {
3453
+ "original": "boolean",
3454
+ "resolved": "boolean",
3455
+ "references": {}
3456
+ },
3457
+ "required": false,
3458
+ "optional": false,
3459
+ "docs": {
3460
+ "tags": [],
3461
+ "text": "Whether the primary action is sensitive (requires double-confirmation)."
3462
+ },
3463
+ "getter": false,
3464
+ "setter": false,
3465
+ "reflect": false,
3466
+ "attribute": "sensitive",
3467
+ "defaultValue": "false"
3468
+ },
3469
+ "autoClose": {
3470
+ "type": "number",
3471
+ "mutable": false,
3472
+ "complexType": {
3473
+ "original": "number",
3474
+ "resolved": "number",
3475
+ "references": {}
3476
+ },
3477
+ "required": false,
3478
+ "optional": false,
3479
+ "docs": {
3480
+ "tags": [],
3481
+ "text": "Auto-close timeout in milliseconds."
3482
+ },
3483
+ "getter": false,
3484
+ "setter": false,
3485
+ "reflect": false,
3486
+ "attribute": "auto-close",
3487
+ "defaultValue": "0"
3488
+ },
3489
+ "timeout": {
3490
+ "type": "number",
3491
+ "mutable": false,
3492
+ "complexType": {
3493
+ "original": "number",
3494
+ "resolved": "number",
3495
+ "references": {}
3496
+ },
3497
+ "required": false,
3498
+ "optional": false,
3499
+ "docs": {
3500
+ "tags": [],
3501
+ "text": "Alias for autoClose."
3502
+ },
3503
+ "getter": false,
3504
+ "setter": false,
3505
+ "reflect": false,
3506
+ "attribute": "timeout",
3507
+ "defaultValue": "0"
3508
+ },
3509
+ "sound": {
3510
+ "type": "boolean",
3511
+ "mutable": false,
3512
+ "complexType": {
3513
+ "original": "boolean",
3514
+ "resolved": "boolean",
3515
+ "references": {}
3516
+ },
3517
+ "required": false,
3518
+ "optional": false,
3519
+ "docs": {
3520
+ "tags": [],
3521
+ "text": "Enable subtle sound feedback for interactions."
3522
+ },
3523
+ "getter": false,
3524
+ "setter": false,
3525
+ "reflect": false,
3526
+ "attribute": "sound",
3527
+ "defaultValue": "false"
3528
+ },
3529
+ "haptics": {
3530
+ "type": "boolean",
3531
+ "mutable": false,
3532
+ "complexType": {
3533
+ "original": "boolean",
3534
+ "resolved": "boolean",
3535
+ "references": {}
3536
+ },
3537
+ "required": false,
3538
+ "optional": false,
3539
+ "docs": {
3540
+ "tags": [],
3541
+ "text": "Enable haptic feedback for mobile devices."
3542
+ },
3543
+ "getter": false,
3544
+ "setter": false,
3545
+ "reflect": false,
3546
+ "attribute": "haptics",
3547
+ "defaultValue": "false"
3548
+ },
3549
+ "permissions": {
3550
+ "type": "unknown",
3551
+ "mutable": false,
3552
+ "complexType": {
3553
+ "original": "string[]",
3554
+ "resolved": "string[]",
3555
+ "references": {}
3556
+ },
3557
+ "required": false,
3558
+ "optional": false,
3559
+ "docs": {
3560
+ "tags": [],
3561
+ "text": "Required permissions to view this dialog."
3562
+ },
3563
+ "getter": false,
3564
+ "setter": false,
3565
+ "defaultValue": "[]"
3566
+ },
3567
+ "debug": {
3568
+ "type": "boolean",
3569
+ "mutable": false,
3570
+ "complexType": {
3571
+ "original": "boolean",
3572
+ "resolved": "boolean",
3573
+ "references": {}
3574
+ },
3575
+ "required": false,
3576
+ "optional": false,
3577
+ "docs": {
3578
+ "tags": [],
3579
+ "text": "Enable debug mode (shows layout boundaries and metadata)."
3580
+ },
3581
+ "getter": false,
3582
+ "setter": false,
3583
+ "reflect": false,
3584
+ "attribute": "debug",
3585
+ "defaultValue": "false"
3586
+ },
3587
+ "beforeClose": {
3588
+ "type": "unknown",
3589
+ "mutable": false,
3590
+ "complexType": {
3591
+ "original": "() => Promise<boolean> | boolean",
3592
+ "resolved": "() => boolean | Promise<boolean>",
3593
+ "references": {
3594
+ "Promise": {
3595
+ "location": "global",
3596
+ "id": "global::Promise"
3597
+ }
3598
+ }
3599
+ },
3600
+ "required": false,
3601
+ "optional": true,
3602
+ "docs": {
3603
+ "tags": [],
3604
+ "text": "Optional callback function to execute before closing.\r\nReturn false or a Promise resolving to false to prevent closing."
3605
+ },
3606
+ "getter": false,
3607
+ "setter": false
3608
+ },
3609
+ "iconLibrary": {
3610
+ "type": "string",
3611
+ "mutable": false,
3612
+ "complexType": {
3613
+ "original": "IconLibrary",
3614
+ "resolved": "\"bootstrap\" | \"default\" | \"emoji\" | \"fontawesome\" | \"google\" | \"iconoir\" | \"icons8\" | \"ionicons\" | \"lucide\" | \"remixicon\" | \"se\"",
3615
+ "references": {
3616
+ "IconLibrary": {
3617
+ "location": "import",
3618
+ "path": "../../types/common.type",
3619
+ "id": "src/types/common.type.d.ts::IconLibrary",
3620
+ "referenceLocation": "IconLibrary"
3621
+ }
3622
+ }
3623
+ },
3624
+ "required": false,
3625
+ "optional": false,
3626
+ "docs": {
3627
+ "tags": [],
3628
+ "text": "Library to use for icons"
3629
+ },
3630
+ "getter": false,
3631
+ "setter": false,
3632
+ "reflect": false,
3633
+ "attribute": "icon-library",
3634
+ "defaultValue": "'default'"
3635
+ },
3636
+ "titleTag": {
3637
+ "type": "string",
3638
+ "mutable": false,
3639
+ "complexType": {
3640
+ "original": "HeadingTag",
3641
+ "resolved": "\"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\"",
3642
+ "references": {
3643
+ "HeadingTag": {
3644
+ "location": "import",
3645
+ "path": "../../types/common.type",
3646
+ "id": "src/types/common.type.d.ts::HeadingTag",
3647
+ "referenceLocation": "HeadingTag"
3648
+ }
3649
+ }
3650
+ },
3651
+ "required": false,
3652
+ "optional": false,
3653
+ "docs": {
3654
+ "tags": [],
3655
+ "text": "Semantic tag for the title (h1-h6)"
3656
+ },
3657
+ "getter": false,
3658
+ "setter": false,
3659
+ "reflect": false,
3660
+ "attribute": "title-tag",
3661
+ "defaultValue": "'h3'"
3662
+ },
3663
+ "iconPosition": {
3664
+ "type": "string",
3665
+ "mutable": false,
3666
+ "complexType": {
3667
+ "original": "FourSidePosition",
3668
+ "resolved": "\"bottom\" | \"left\" | \"right\" | \"top\"",
3669
+ "references": {
3670
+ "FourSidePosition": {
3671
+ "location": "import",
3672
+ "path": "../../types/common.type",
3673
+ "id": "src/types/common.type.d.ts::FourSidePosition",
3674
+ "referenceLocation": "FourSidePosition"
3675
+ }
3676
+ }
3677
+ },
3678
+ "required": false,
3679
+ "optional": false,
3680
+ "docs": {
3681
+ "tags": [],
3682
+ "text": "Position of the icon/avatar relative to the title"
3683
+ },
3684
+ "getter": false,
3685
+ "setter": false,
3686
+ "reflect": false,
3687
+ "attribute": "icon-position",
3688
+ "defaultValue": "'left'"
3689
+ },
3690
+ "menuItems": {
3691
+ "type": "string",
3692
+ "mutable": false,
3693
+ "complexType": {
3694
+ "original": "string | any[]",
3695
+ "resolved": "any[] | string",
3696
+ "references": {}
3697
+ },
3698
+ "required": false,
3699
+ "optional": false,
3700
+ "docs": {
3701
+ "tags": [],
3702
+ "text": "Menu items for the built-in context menu. \r\nCan be a JSON string or an array of objects.\r\nIf provided, clicking the menu button automatically opens a context menu."
3703
+ },
3704
+ "getter": false,
3705
+ "setter": false,
3706
+ "reflect": false,
3707
+ "attribute": "menu-items",
3708
+ "defaultValue": "[]"
3709
+ }
3710
+ };
3711
+ }
3712
+ static get states() {
3713
+ return {
3714
+ "_restoredLayout": {},
3715
+ "_isShaking": {},
3716
+ "_sessionTimedOut": {},
3717
+ "_currentStep": {},
3718
+ "promptValue": {},
3719
+ "isConfirmed": {},
3720
+ "_sessionTimeLeft": {},
3721
+ "_termsScrolled": {},
3722
+ "isClosing": {},
3723
+ "snappedEdge": {},
3724
+ "subOverlay": {},
3725
+ "minimizedToDock": {},
3726
+ "_dockPeek": {}
3727
+ };
3728
+ }
3729
+ static get events() {
3730
+ return [{
3731
+ "method": "dialogClosed",
3732
+ "name": "dialogClosed",
3733
+ "bubbles": true,
3734
+ "cancelable": true,
3735
+ "composed": true,
3736
+ "docs": {
3737
+ "tags": [],
3738
+ "text": "Event emitted when dialog is closed"
3739
+ },
3740
+ "complexType": {
3741
+ "original": "any",
3742
+ "resolved": "any",
3743
+ "references": {}
3744
+ }
3745
+ }, {
3746
+ "method": "undo",
3747
+ "name": "undo",
3748
+ "bubbles": true,
3749
+ "cancelable": true,
3750
+ "composed": true,
3751
+ "docs": {
3752
+ "tags": [],
3753
+ "text": "Event emitted for undo action"
3754
+ },
3755
+ "complexType": {
3756
+ "original": "any",
3757
+ "resolved": "any",
3758
+ "references": {}
3759
+ }
3760
+ }, {
3761
+ "method": "redo",
3762
+ "name": "redo",
3763
+ "bubbles": true,
3764
+ "cancelable": true,
3765
+ "composed": true,
3766
+ "docs": {
3767
+ "tags": [],
3768
+ "text": "Event emitted for redo action"
3769
+ },
3770
+ "complexType": {
3771
+ "original": "any",
3772
+ "resolved": "any",
3773
+ "references": {}
3774
+ }
3775
+ }, {
3776
+ "method": "dialogOpened",
3777
+ "name": "dialogOpened",
3778
+ "bubbles": true,
3779
+ "cancelable": true,
3780
+ "composed": true,
3781
+ "docs": {
3782
+ "tags": [],
3783
+ "text": "Event emitted when the dialog is opened."
3784
+ },
3785
+ "complexType": {
3786
+ "original": "any",
3787
+ "resolved": "any",
3788
+ "references": {}
3789
+ }
3790
+ }, {
3791
+ "method": "toastRequest",
3792
+ "name": "toastRequest",
3793
+ "bubbles": true,
3794
+ "cancelable": true,
3795
+ "composed": true,
3796
+ "docs": {
3797
+ "tags": [],
3798
+ "text": "Event emitted to request a toast notification."
3799
+ },
3800
+ "complexType": {
3801
+ "original": "{ message: string, type: 'success' | 'error' | 'info' }",
3802
+ "resolved": "{ message: string; type: \"info\" | \"error\" | \"success\"; }",
3803
+ "references": {}
3804
+ }
3805
+ }, {
3806
+ "method": "auditLog",
3807
+ "name": "auditLog",
3808
+ "bubbles": true,
3809
+ "cancelable": true,
3810
+ "composed": true,
3811
+ "docs": {
3812
+ "tags": [],
3813
+ "text": "Event emitted for security audit logging."
3814
+ },
3815
+ "complexType": {
3816
+ "original": "{ action: string, timestamp: number, metadata?: any }",
3817
+ "resolved": "{ action: string; timestamp: number; metadata?: any; }",
3818
+ "references": {}
3819
+ }
3820
+ }, {
3821
+ "method": "beforeOpen",
3822
+ "name": "beforeOpen",
3823
+ "bubbles": true,
3824
+ "cancelable": true,
3825
+ "composed": true,
3826
+ "docs": {
3827
+ "tags": [],
3828
+ "text": "Emitted before the dialog opens. Can be cancelled via event.preventDefault()."
3829
+ },
3830
+ "complexType": {
3831
+ "original": "void",
3832
+ "resolved": "void",
3833
+ "references": {}
3834
+ }
3835
+ }, {
3836
+ "method": "openStarted",
3837
+ "name": "openStarted",
3838
+ "bubbles": true,
3839
+ "cancelable": true,
3840
+ "composed": true,
3841
+ "docs": {
3842
+ "tags": [],
3843
+ "text": "Emitted when opening animation starts."
3844
+ },
3845
+ "complexType": {
3846
+ "original": "void",
3847
+ "resolved": "void",
3848
+ "references": {}
3849
+ }
3850
+ }, {
3851
+ "method": "afterOpen",
3852
+ "name": "afterOpen",
3853
+ "bubbles": true,
3854
+ "cancelable": true,
3855
+ "composed": true,
3856
+ "docs": {
3857
+ "tags": [],
3858
+ "text": "Emitted when opening animation finishes."
3859
+ },
3860
+ "complexType": {
3861
+ "original": "void",
3862
+ "resolved": "void",
3863
+ "references": {}
3864
+ }
3865
+ }, {
3866
+ "method": "beforeCloseEvent",
3867
+ "name": "beforeCloseEvent",
3868
+ "bubbles": true,
3869
+ "cancelable": true,
3870
+ "composed": true,
3871
+ "docs": {
3872
+ "tags": [],
3873
+ "text": "Emitted before the dialog closes. Can be cancelled by event.preventDefault()."
3874
+ },
3875
+ "complexType": {
3876
+ "original": "{ source: 'esc' | 'backdrop' | 'close-btn' | 'programmatic' }",
3877
+ "resolved": "{ source: \"backdrop\" | \"esc\" | \"close-btn\" | \"programmatic\"; }",
3878
+ "references": {}
3879
+ }
3880
+ }, {
3881
+ "method": "closeStarted",
3882
+ "name": "closeStarted",
3883
+ "bubbles": true,
3884
+ "cancelable": true,
3885
+ "composed": true,
3886
+ "docs": {
3887
+ "tags": [],
3888
+ "text": "Emitted when closing animation starts."
3889
+ },
3890
+ "complexType": {
3891
+ "original": "void",
3892
+ "resolved": "void",
3893
+ "references": {}
3894
+ }
3895
+ }, {
3896
+ "method": "afterClose",
3897
+ "name": "afterClose",
3898
+ "bubbles": true,
3899
+ "cancelable": true,
3900
+ "composed": true,
3901
+ "docs": {
3902
+ "tags": [],
3903
+ "text": "Emitted when closing animation finishes."
3904
+ },
3905
+ "complexType": {
3906
+ "original": "void",
3907
+ "resolved": "void",
3908
+ "references": {}
3909
+ }
3910
+ }, {
3911
+ "method": "menuAction",
3912
+ "name": "menuAction",
3913
+ "bubbles": true,
3914
+ "cancelable": true,
3915
+ "composed": true,
3916
+ "docs": {
3917
+ "tags": [],
3918
+ "text": "Event emitted when a menu item is clicked (if using built-in menuItems)"
3919
+ },
3920
+ "complexType": {
3921
+ "original": "any",
3922
+ "resolved": "any",
3923
+ "references": {}
3924
+ }
3925
+ }, {
3926
+ "method": "ok",
3927
+ "name": "ok",
3928
+ "bubbles": true,
3929
+ "cancelable": true,
3930
+ "composed": true,
3931
+ "docs": {
3932
+ "tags": [],
3933
+ "text": "Event emitted when OK button is clicked"
3934
+ },
3935
+ "complexType": {
3936
+ "original": "any",
3937
+ "resolved": "any",
3938
+ "references": {}
3939
+ }
3940
+ }, {
3941
+ "method": "cancel",
3942
+ "name": "cancel",
3943
+ "bubbles": true,
3944
+ "cancelable": true,
3945
+ "composed": true,
3946
+ "docs": {
3947
+ "tags": [],
3948
+ "text": "Event emitted when Cancel button is clicked"
3949
+ },
3950
+ "complexType": {
3951
+ "original": "any",
3952
+ "resolved": "any",
3953
+ "references": {}
3954
+ }
3955
+ }, {
3956
+ "method": "dialogReset",
3957
+ "name": "dialogReset",
3958
+ "bubbles": true,
3959
+ "cancelable": true,
3960
+ "composed": true,
3961
+ "docs": {
3962
+ "tags": [],
3963
+ "text": "Event emitted when Reset button is clicked"
3964
+ },
3965
+ "complexType": {
3966
+ "original": "any",
3967
+ "resolved": "any",
3968
+ "references": {}
3969
+ }
3970
+ }, {
3971
+ "method": "dialogMaximized",
3972
+ "name": "dialogMaximized",
3973
+ "bubbles": true,
3974
+ "cancelable": true,
3975
+ "composed": true,
3976
+ "docs": {
3977
+ "tags": [],
3978
+ "text": "Event emitted when dialog is maximized"
3979
+ },
3980
+ "complexType": {
3981
+ "original": "{ maximized: boolean }",
3982
+ "resolved": "{ maximized: boolean; }",
3983
+ "references": {}
3984
+ }
3985
+ }, {
3986
+ "method": "dialogMinimized",
3987
+ "name": "dialogMinimized",
3988
+ "bubbles": true,
3989
+ "cancelable": true,
3990
+ "composed": true,
3991
+ "docs": {
3992
+ "tags": [],
3993
+ "text": "Event emitted when dialog is minimized"
3994
+ },
3995
+ "complexType": {
3996
+ "original": "{ minimized: boolean }",
3997
+ "resolved": "{ minimized: boolean; }",
3998
+ "references": {}
3999
+ }
4000
+ }, {
4001
+ "method": "menu",
4002
+ "name": "menu",
4003
+ "bubbles": true,
4004
+ "cancelable": true,
4005
+ "composed": true,
4006
+ "docs": {
4007
+ "tags": [],
4008
+ "text": "Event emitted when menu button is clicked"
4009
+ },
4010
+ "complexType": {
4011
+ "original": "any",
4012
+ "resolved": "any",
4013
+ "references": {}
4014
+ }
4015
+ }];
4016
+ }
4017
+ static get methods() {
4018
+ return {
4019
+ "openDialog": {
4020
+ "complexType": {
4021
+ "signature": "() => Promise<boolean>",
4022
+ "parameters": [],
4023
+ "references": {
4024
+ "Promise": {
4025
+ "location": "global",
4026
+ "id": "global::Promise"
4027
+ }
4028
+ },
4029
+ "return": "Promise<boolean>"
4030
+ },
4031
+ "docs": {
4032
+ "text": "Open the dialog and return a promise that resolves to true when OK is clicked, false on Cancel/Close.",
4033
+ "tags": []
4034
+ }
4035
+ },
4036
+ "showWithResult": {
4037
+ "complexType": {
4038
+ "signature": "() => Promise<{ data: any; canceled: boolean; }>",
4039
+ "parameters": [],
4040
+ "references": {
4041
+ "Promise": {
4042
+ "location": "global",
4043
+ "id": "global::Promise"
4044
+ }
4045
+ },
4046
+ "return": "Promise<{ data: any; canceled: boolean; }>"
4047
+ },
4048
+ "docs": {
4049
+ "text": "Show dialog and return a promise that resolves with data when closed via OK.\r\nStandardizes the return value as { data: any, canceled: boolean }.",
4050
+ "tags": []
4051
+ }
4052
+ },
4053
+ "setReturnValue": {
4054
+ "complexType": {
4055
+ "signature": "(value: any) => Promise<void>",
4056
+ "parameters": [{
4057
+ "name": "value",
4058
+ "type": "any",
4059
+ "docs": ""
4060
+ }],
4061
+ "references": {
4062
+ "Promise": {
4063
+ "location": "global",
4064
+ "id": "global::Promise"
4065
+ }
4066
+ },
4067
+ "return": "Promise<void>"
4068
+ },
4069
+ "docs": {
4070
+ "text": "Set the value to be returned when showWithResult resolves.",
4071
+ "tags": []
4072
+ }
4073
+ },
4074
+ "show": {
4075
+ "complexType": {
4076
+ "signature": "() => Promise<void>",
4077
+ "parameters": [],
4078
+ "references": {
4079
+ "Promise": {
4080
+ "location": "global",
4081
+ "id": "global::Promise"
4082
+ }
4083
+ },
4084
+ "return": "Promise<void>"
4085
+ },
4086
+ "docs": {
4087
+ "text": "",
4088
+ "tags": []
4089
+ }
4090
+ },
4091
+ "hide": {
4092
+ "complexType": {
4093
+ "signature": "(source?: \"esc\" | \"backdrop\" | \"close-btn\" | \"programmatic\") => Promise<void>",
4094
+ "parameters": [{
4095
+ "name": "source",
4096
+ "type": "\"backdrop\" | \"esc\" | \"close-btn\" | \"programmatic\"",
4097
+ "docs": ""
4098
+ }],
4099
+ "references": {
4100
+ "Promise": {
4101
+ "location": "global",
4102
+ "id": "global::Promise"
4103
+ }
4104
+ },
4105
+ "return": "Promise<void>"
4106
+ },
4107
+ "docs": {
4108
+ "text": "Close the dialog",
4109
+ "tags": []
4110
+ }
4111
+ },
4112
+ "maximize": {
4113
+ "complexType": {
4114
+ "signature": "() => Promise<void>",
4115
+ "parameters": [],
4116
+ "references": {
4117
+ "Promise": {
4118
+ "location": "global",
4119
+ "id": "global::Promise"
4120
+ }
4121
+ },
4122
+ "return": "Promise<void>"
4123
+ },
4124
+ "docs": {
4125
+ "text": "Maximize the dialog",
4126
+ "tags": []
4127
+ }
4128
+ },
4129
+ "showConfirmation": {
4130
+ "complexType": {
4131
+ "signature": "(title: string, message: string, onConfirm: () => void) => Promise<void>",
4132
+ "parameters": [{
4133
+ "name": "title",
4134
+ "type": "string",
4135
+ "docs": ""
4136
+ }, {
4137
+ "name": "message",
4138
+ "type": "string",
4139
+ "docs": ""
4140
+ }, {
4141
+ "name": "onConfirm",
4142
+ "type": "() => void",
4143
+ "docs": ""
4144
+ }],
4145
+ "references": {
4146
+ "Promise": {
4147
+ "location": "global",
4148
+ "id": "global::Promise"
4149
+ }
4150
+ },
4151
+ "return": "Promise<void>"
4152
+ },
4153
+ "docs": {
4154
+ "text": "Show an internal sub-overlay prompt (e.g., for diskard changes).",
4155
+ "tags": []
4156
+ }
4157
+ },
4158
+ "cascade": {
4159
+ "complexType": {
4160
+ "signature": "() => Promise<void>",
4161
+ "parameters": [],
4162
+ "references": {
4163
+ "Promise": {
4164
+ "location": "global",
4165
+ "id": "global::Promise"
4166
+ }
4167
+ },
4168
+ "return": "Promise<void>"
4169
+ },
4170
+ "docs": {
4171
+ "text": "Cascade all open dialogs",
4172
+ "tags": []
4173
+ }
4174
+ },
4175
+ "tile": {
4176
+ "complexType": {
4177
+ "signature": "() => Promise<void>",
4178
+ "parameters": [],
4179
+ "references": {
4180
+ "Promise": {
4181
+ "location": "global",
4182
+ "id": "global::Promise"
4183
+ }
4184
+ },
4185
+ "return": "Promise<void>"
4186
+ },
4187
+ "docs": {
4188
+ "text": "Tile all open dialogs",
4189
+ "tags": []
4190
+ }
4191
+ },
4192
+ "popOut": {
4193
+ "complexType": {
4194
+ "signature": "() => Promise<void>",
4195
+ "parameters": [],
4196
+ "references": {
4197
+ "Promise": {
4198
+ "location": "global",
4199
+ "id": "global::Promise"
4200
+ }
4201
+ },
4202
+ "return": "Promise<void>"
4203
+ },
4204
+ "docs": {
4205
+ "text": "Detach the dialog content to a separate browser window",
4206
+ "tags": []
4207
+ }
4208
+ },
4209
+ "minimize": {
4210
+ "complexType": {
4211
+ "signature": "() => Promise<void>",
4212
+ "parameters": [],
4213
+ "references": {
4214
+ "Promise": {
4215
+ "location": "global",
4216
+ "id": "global::Promise"
4217
+ }
4218
+ },
4219
+ "return": "Promise<void>"
4220
+ },
4221
+ "docs": {
4222
+ "text": "Minimize the dialog",
4223
+ "tags": []
4224
+ }
4225
+ },
4226
+ "restore": {
4227
+ "complexType": {
4228
+ "signature": "() => Promise<void>",
4229
+ "parameters": [],
4230
+ "references": {
4231
+ "Promise": {
4232
+ "location": "global",
4233
+ "id": "global::Promise"
4234
+ }
4235
+ },
4236
+ "return": "Promise<void>"
4237
+ },
4238
+ "docs": {
4239
+ "text": "Restore the dialog from minimized or maximized state",
4240
+ "tags": []
4241
+ }
4242
+ },
4243
+ "submit": {
4244
+ "complexType": {
4245
+ "signature": "(value?: any) => Promise<void>",
4246
+ "parameters": [{
4247
+ "name": "value",
4248
+ "type": "any",
4249
+ "docs": ""
4250
+ }],
4251
+ "references": {
4252
+ "Promise": {
4253
+ "location": "global",
4254
+ "id": "global::Promise"
4255
+ }
4256
+ },
4257
+ "return": "Promise<void>"
4258
+ },
4259
+ "docs": {
4260
+ "text": "Programmatically submit the dialog (resolves the promise).\r\nOptional value overrides auto-collection.",
4261
+ "tags": []
4262
+ }
4263
+ },
4264
+ "cancelDialog": {
4265
+ "complexType": {
4266
+ "signature": "() => Promise<void>",
4267
+ "parameters": [],
4268
+ "references": {
4269
+ "Promise": {
4270
+ "location": "global",
4271
+ "id": "global::Promise"
4272
+ }
4273
+ },
4274
+ "return": "Promise<void>"
4275
+ },
4276
+ "docs": {
4277
+ "text": "Programmatically cancel the dialog (rejects the promise).",
4278
+ "tags": []
4279
+ }
4280
+ }
4281
+ };
4282
+ }
4283
+ static get elementRef() { return "el"; }
4284
+ static get watchers() {
4285
+ return [{
4286
+ "propName": "currentStep",
4287
+ "methodName": "currentStepChanged"
4288
+ }, {
4289
+ "propName": "minimized",
4290
+ "methodName": "minimizedChanged"
4291
+ }, {
4292
+ "propName": "_dockPeek",
4293
+ "methodName": "onDockPeekChange"
4294
+ }, {
4295
+ "propName": "open",
4296
+ "methodName": "openChanged"
4297
+ }];
4298
+ }
4299
+ static get listeners() {
4300
+ return [{
4301
+ "name": "keydown",
4302
+ "method": "handleGlobalShortcuts",
4303
+ "target": "window",
4304
+ "capture": false,
4305
+ "passive": false
4306
+ }, {
4307
+ "name": "keydown",
4308
+ "method": "handleKeyDown",
4309
+ "target": "window",
4310
+ "capture": false,
4311
+ "passive": false
4312
+ }];
4313
+ }
4314
+ }