@nonoun/native-ui 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (537) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +105 -0
  3. package/dist/a2ui/a2ui-adapter.d.ts +50 -0
  4. package/dist/a2ui/a2ui-adapter.d.ts.map +1 -0
  5. package/dist/a2ui/a2ui-component-map.d.ts +41 -0
  6. package/dist/a2ui/a2ui-component-map.d.ts.map +1 -0
  7. package/dist/a2ui/a2ui-converter.d.ts +34 -0
  8. package/dist/a2ui/a2ui-converter.d.ts.map +1 -0
  9. package/dist/a2ui/a2ui-surface.d.ts +33 -0
  10. package/dist/a2ui/a2ui-surface.d.ts.map +1 -0
  11. package/dist/a2ui/a2ui-transport.d.ts +80 -0
  12. package/dist/a2ui/a2ui-transport.d.ts.map +1 -0
  13. package/dist/a2ui/a2ui-types.d.ts +104 -0
  14. package/dist/a2ui/a2ui-types.d.ts.map +1 -0
  15. package/dist/a2ui/index.d.ts +13 -0
  16. package/dist/a2ui/index.d.ts.map +1 -0
  17. package/dist/components/ui-accordion/index.d.ts +4 -0
  18. package/dist/components/ui-accordion/index.d.ts.map +1 -0
  19. package/dist/components/ui-accordion/ui-accordion-element.d.ts +18 -0
  20. package/dist/components/ui-accordion/ui-accordion-element.d.ts.map +1 -0
  21. package/dist/components/ui-accordion/ui-accordion-item-element.d.ts +18 -0
  22. package/dist/components/ui-accordion/ui-accordion-item-element.d.ts.map +1 -0
  23. package/dist/components/ui-accordion/ui-accordion.d.ts +4 -0
  24. package/dist/components/ui-accordion/ui-accordion.d.ts.map +1 -0
  25. package/dist/components/ui-avatar/index.d.ts +3 -0
  26. package/dist/components/ui-avatar/index.d.ts.map +1 -0
  27. package/dist/components/ui-avatar/ui-avatar-element.d.ts +20 -0
  28. package/dist/components/ui-avatar/ui-avatar-element.d.ts.map +1 -0
  29. package/dist/components/ui-avatar/ui-avatar.d.ts +3 -0
  30. package/dist/components/ui-avatar/ui-avatar.d.ts.map +1 -0
  31. package/dist/components/ui-badge/index.d.ts +3 -0
  32. package/dist/components/ui-badge/index.d.ts.map +1 -0
  33. package/dist/components/ui-badge/ui-badge-element.d.ts +13 -0
  34. package/dist/components/ui-badge/ui-badge-element.d.ts.map +1 -0
  35. package/dist/components/ui-badge/ui-badge.d.ts +3 -0
  36. package/dist/components/ui-badge/ui-badge.d.ts.map +1 -0
  37. package/dist/components/ui-breadcrumb/index.d.ts +4 -0
  38. package/dist/components/ui-breadcrumb/index.d.ts.map +1 -0
  39. package/dist/components/ui-breadcrumb/ui-breadcrumb-element.d.ts +8 -0
  40. package/dist/components/ui-breadcrumb/ui-breadcrumb-element.d.ts.map +1 -0
  41. package/dist/components/ui-breadcrumb/ui-breadcrumb-item-element.d.ts +15 -0
  42. package/dist/components/ui-breadcrumb/ui-breadcrumb-item-element.d.ts.map +1 -0
  43. package/dist/components/ui-breadcrumb/ui-breadcrumb.d.ts +4 -0
  44. package/dist/components/ui-breadcrumb/ui-breadcrumb.d.ts.map +1 -0
  45. package/dist/components/ui-button/index.d.ts +3 -0
  46. package/dist/components/ui-button/index.d.ts.map +1 -0
  47. package/dist/components/ui-button/ui-button-element.d.ts +391 -0
  48. package/dist/components/ui-button/ui-button-element.d.ts.map +1 -0
  49. package/dist/components/ui-button/ui-button.d.ts +3 -0
  50. package/dist/components/ui-button/ui-button.d.ts.map +1 -0
  51. package/dist/components/ui-calendar/calendar-store.d.ts +61 -0
  52. package/dist/components/ui-calendar/calendar-store.d.ts.map +1 -0
  53. package/dist/components/ui-calendar/index.d.ts +5 -0
  54. package/dist/components/ui-calendar/index.d.ts.map +1 -0
  55. package/dist/components/ui-calendar/ui-calendar-element.d.ts +400 -0
  56. package/dist/components/ui-calendar/ui-calendar-element.d.ts.map +1 -0
  57. package/dist/components/ui-calendar/ui-calendar.d.ts +3 -0
  58. package/dist/components/ui-calendar/ui-calendar.d.ts.map +1 -0
  59. package/dist/components/ui-chat/index.d.ts +3 -0
  60. package/dist/components/ui-chat/index.d.ts.map +1 -0
  61. package/dist/components/ui-chat/ui-chat-input-element.d.ts +21 -0
  62. package/dist/components/ui-chat/ui-chat-input-element.d.ts.map +1 -0
  63. package/dist/components/ui-chat/ui-chat-input.d.ts +3 -0
  64. package/dist/components/ui-chat/ui-chat-input.d.ts.map +1 -0
  65. package/dist/components/ui-checkbox/index.d.ts +3 -0
  66. package/dist/components/ui-checkbox/index.d.ts.map +1 -0
  67. package/dist/components/ui-checkbox/ui-checkbox-element.d.ts +402 -0
  68. package/dist/components/ui-checkbox/ui-checkbox-element.d.ts.map +1 -0
  69. package/dist/components/ui-checkbox/ui-checkbox.d.ts +3 -0
  70. package/dist/components/ui-checkbox/ui-checkbox.d.ts.map +1 -0
  71. package/dist/components/ui-combobox/index.d.ts +4 -0
  72. package/dist/components/ui-combobox/index.d.ts.map +1 -0
  73. package/dist/components/ui-combobox/ui-combobox-element.d.ts +408 -0
  74. package/dist/components/ui-combobox/ui-combobox-element.d.ts.map +1 -0
  75. package/dist/components/ui-combobox/ui-combobox.d.ts +3 -0
  76. package/dist/components/ui-combobox/ui-combobox.d.ts.map +1 -0
  77. package/dist/components/ui-command/index.d.ts +13 -0
  78. package/dist/components/ui-command/index.d.ts.map +1 -0
  79. package/dist/components/ui-command/ui-command-element.d.ts +21 -0
  80. package/dist/components/ui-command/ui-command-element.d.ts.map +1 -0
  81. package/dist/components/ui-command/ui-command-empty-element.d.ts +5 -0
  82. package/dist/components/ui-command/ui-command-empty-element.d.ts.map +1 -0
  83. package/dist/components/ui-command/ui-command-empty.d.ts +3 -0
  84. package/dist/components/ui-command/ui-command-empty.d.ts.map +1 -0
  85. package/dist/components/ui-command/ui-command-group-element.d.ts +6 -0
  86. package/dist/components/ui-command/ui-command-group-element.d.ts.map +1 -0
  87. package/dist/components/ui-command/ui-command-group.d.ts +3 -0
  88. package/dist/components/ui-command/ui-command-group.d.ts.map +1 -0
  89. package/dist/components/ui-command/ui-command-input-element.d.ts +14 -0
  90. package/dist/components/ui-command/ui-command-input-element.d.ts.map +1 -0
  91. package/dist/components/ui-command/ui-command-input.d.ts +3 -0
  92. package/dist/components/ui-command/ui-command-input.d.ts.map +1 -0
  93. package/dist/components/ui-command/ui-command-item-element.d.ts +25 -0
  94. package/dist/components/ui-command/ui-command-item-element.d.ts.map +1 -0
  95. package/dist/components/ui-command/ui-command-item.d.ts +3 -0
  96. package/dist/components/ui-command/ui-command-item.d.ts.map +1 -0
  97. package/dist/components/ui-command/ui-command-list-element.d.ts +6 -0
  98. package/dist/components/ui-command/ui-command-list-element.d.ts.map +1 -0
  99. package/dist/components/ui-command/ui-command-list.d.ts +3 -0
  100. package/dist/components/ui-command/ui-command-list.d.ts.map +1 -0
  101. package/dist/components/ui-command/ui-command.d.ts +8 -0
  102. package/dist/components/ui-command/ui-command.d.ts.map +1 -0
  103. package/dist/components/ui-controller/index.d.ts +3 -0
  104. package/dist/components/ui-controller/index.d.ts.map +1 -0
  105. package/dist/components/ui-controller/ui-controller-element.d.ts +18 -0
  106. package/dist/components/ui-controller/ui-controller-element.d.ts.map +1 -0
  107. package/dist/components/ui-controller/ui-controller.d.ts +2 -0
  108. package/dist/components/ui-controller/ui-controller.d.ts.map +1 -0
  109. package/dist/components/ui-dialog/index.d.ts +3 -0
  110. package/dist/components/ui-dialog/index.d.ts.map +1 -0
  111. package/dist/components/ui-dialog/ui-dialog-element.d.ts +17 -0
  112. package/dist/components/ui-dialog/ui-dialog-element.d.ts.map +1 -0
  113. package/dist/components/ui-dialog/ui-dialog.d.ts +3 -0
  114. package/dist/components/ui-dialog/ui-dialog.d.ts.map +1 -0
  115. package/dist/components/ui-drawer/index.d.ts +3 -0
  116. package/dist/components/ui-drawer/index.d.ts.map +1 -0
  117. package/dist/components/ui-drawer/ui-drawer-element.d.ts +18 -0
  118. package/dist/components/ui-drawer/ui-drawer-element.d.ts.map +1 -0
  119. package/dist/components/ui-drawer/ui-drawer.d.ts +3 -0
  120. package/dist/components/ui-drawer/ui-drawer.d.ts.map +1 -0
  121. package/dist/components/ui-field/index.d.ts +3 -0
  122. package/dist/components/ui-field/index.d.ts.map +1 -0
  123. package/dist/components/ui-field/ui-field-element.d.ts +14 -0
  124. package/dist/components/ui-field/ui-field-element.d.ts.map +1 -0
  125. package/dist/components/ui-field/ui-field.d.ts +3 -0
  126. package/dist/components/ui-field/ui-field.d.ts.map +1 -0
  127. package/dist/components/ui-input/index.d.ts +3 -0
  128. package/dist/components/ui-input/index.d.ts.map +1 -0
  129. package/dist/components/ui-input/ui-input-element.d.ts +404 -0
  130. package/dist/components/ui-input/ui-input-element.d.ts.map +1 -0
  131. package/dist/components/ui-input/ui-input.d.ts +3 -0
  132. package/dist/components/ui-input/ui-input.d.ts.map +1 -0
  133. package/dist/components/ui-input-otp/index.d.ts +3 -0
  134. package/dist/components/ui-input-otp/index.d.ts.map +1 -0
  135. package/dist/components/ui-input-otp/ui-input-otp-element.d.ts +399 -0
  136. package/dist/components/ui-input-otp/ui-input-otp-element.d.ts.map +1 -0
  137. package/dist/components/ui-input-otp/ui-input-otp.d.ts +3 -0
  138. package/dist/components/ui-input-otp/ui-input-otp.d.ts.map +1 -0
  139. package/dist/components/ui-listbox/index.d.ts +9 -0
  140. package/dist/components/ui-listbox/index.d.ts.map +1 -0
  141. package/dist/components/ui-listbox/ui-listbox-element.d.ts +29 -0
  142. package/dist/components/ui-listbox/ui-listbox-element.d.ts.map +1 -0
  143. package/dist/components/ui-listbox/ui-listbox.d.ts +5 -0
  144. package/dist/components/ui-listbox/ui-listbox.d.ts.map +1 -0
  145. package/dist/components/ui-listbox/ui-option-element.d.ts +23 -0
  146. package/dist/components/ui-listbox/ui-option-element.d.ts.map +1 -0
  147. package/dist/components/ui-listbox/ui-option-group-element.d.ts +6 -0
  148. package/dist/components/ui-listbox/ui-option-group-element.d.ts.map +1 -0
  149. package/dist/components/ui-listbox/ui-option-group-header-element.d.ts +7 -0
  150. package/dist/components/ui-listbox/ui-option-group-header-element.d.ts.map +1 -0
  151. package/dist/components/ui-listbox/ui-option-group-header.d.ts +3 -0
  152. package/dist/components/ui-listbox/ui-option-group-header.d.ts.map +1 -0
  153. package/dist/components/ui-listbox/ui-option-group.d.ts +3 -0
  154. package/dist/components/ui-listbox/ui-option-group.d.ts.map +1 -0
  155. package/dist/components/ui-listbox/ui-option.d.ts +3 -0
  156. package/dist/components/ui-listbox/ui-option.d.ts.map +1 -0
  157. package/dist/components/ui-nav/index.d.ts +6 -0
  158. package/dist/components/ui-nav/index.d.ts.map +1 -0
  159. package/dist/components/ui-nav/ui-nav-element.d.ts +20 -0
  160. package/dist/components/ui-nav/ui-nav-element.d.ts.map +1 -0
  161. package/dist/components/ui-nav/ui-nav-group-element.d.ts +16 -0
  162. package/dist/components/ui-nav/ui-nav-group-element.d.ts.map +1 -0
  163. package/dist/components/ui-nav/ui-nav-group-header-element.d.ts +7 -0
  164. package/dist/components/ui-nav/ui-nav-group-header-element.d.ts.map +1 -0
  165. package/dist/components/ui-nav/ui-nav-item-element.d.ts +23 -0
  166. package/dist/components/ui-nav/ui-nav-item-element.d.ts.map +1 -0
  167. package/dist/components/ui-nav/ui-nav.d.ts +2 -0
  168. package/dist/components/ui-nav/ui-nav.d.ts.map +1 -0
  169. package/dist/components/ui-pagination/index.d.ts +3 -0
  170. package/dist/components/ui-pagination/index.d.ts.map +1 -0
  171. package/dist/components/ui-pagination/ui-pagination-element.d.ts +29 -0
  172. package/dist/components/ui-pagination/ui-pagination-element.d.ts.map +1 -0
  173. package/dist/components/ui-pagination/ui-pagination.d.ts +5 -0
  174. package/dist/components/ui-pagination/ui-pagination.d.ts.map +1 -0
  175. package/dist/components/ui-radio/index.d.ts +4 -0
  176. package/dist/components/ui-radio/index.d.ts.map +1 -0
  177. package/dist/components/ui-radio/ui-radio-element.d.ts +21 -0
  178. package/dist/components/ui-radio/ui-radio-element.d.ts.map +1 -0
  179. package/dist/components/ui-radio/ui-radio-group-element.d.ts +397 -0
  180. package/dist/components/ui-radio/ui-radio-group-element.d.ts.map +1 -0
  181. package/dist/components/ui-radio/ui-radio.d.ts +4 -0
  182. package/dist/components/ui-radio/ui-radio.d.ts.map +1 -0
  183. package/dist/components/ui-range/index.d.ts +3 -0
  184. package/dist/components/ui-range/index.d.ts.map +1 -0
  185. package/dist/components/ui-range/ui-range-element.d.ts +403 -0
  186. package/dist/components/ui-range/ui-range-element.d.ts.map +1 -0
  187. package/dist/components/ui-range/ui-range.d.ts +3 -0
  188. package/dist/components/ui-range/ui-range.d.ts.map +1 -0
  189. package/dist/components/ui-segmented-control/index.d.ts +4 -0
  190. package/dist/components/ui-segmented-control/index.d.ts.map +1 -0
  191. package/dist/components/ui-segmented-control/ui-segment-element.d.ts +21 -0
  192. package/dist/components/ui-segmented-control/ui-segment-element.d.ts.map +1 -0
  193. package/dist/components/ui-segmented-control/ui-segmented-control-element.d.ts +395 -0
  194. package/dist/components/ui-segmented-control/ui-segmented-control-element.d.ts.map +1 -0
  195. package/dist/components/ui-segmented-control/ui-segmented-control.d.ts +4 -0
  196. package/dist/components/ui-segmented-control/ui-segmented-control.d.ts.map +1 -0
  197. package/dist/components/ui-select/index.d.ts +4 -0
  198. package/dist/components/ui-select/index.d.ts.map +1 -0
  199. package/dist/components/ui-select/select-controller.d.ts +12 -0
  200. package/dist/components/ui-select/select-controller.d.ts.map +1 -0
  201. package/dist/components/ui-select/ui-select-element.d.ts +408 -0
  202. package/dist/components/ui-select/ui-select-element.d.ts.map +1 -0
  203. package/dist/components/ui-select/ui-select.d.ts +4 -0
  204. package/dist/components/ui-select/ui-select.d.ts.map +1 -0
  205. package/dist/components/ui-slideshow/index.d.ts +4 -0
  206. package/dist/components/ui-slideshow/index.d.ts.map +1 -0
  207. package/dist/components/ui-slideshow/ui-slide-element.d.ts +6 -0
  208. package/dist/components/ui-slideshow/ui-slide-element.d.ts.map +1 -0
  209. package/dist/components/ui-slideshow/ui-slideshow-element.d.ts +28 -0
  210. package/dist/components/ui-slideshow/ui-slideshow-element.d.ts.map +1 -0
  211. package/dist/components/ui-slideshow/ui-slideshow.d.ts +4 -0
  212. package/dist/components/ui-slideshow/ui-slideshow.d.ts.map +1 -0
  213. package/dist/components/ui-switch/index.d.ts +3 -0
  214. package/dist/components/ui-switch/index.d.ts.map +1 -0
  215. package/dist/components/ui-switch/ui-switch-element.d.ts +396 -0
  216. package/dist/components/ui-switch/ui-switch-element.d.ts.map +1 -0
  217. package/dist/components/ui-switch/ui-switch.d.ts +3 -0
  218. package/dist/components/ui-switch/ui-switch.d.ts.map +1 -0
  219. package/dist/components/ui-table/column-resize-controller.d.ts +13 -0
  220. package/dist/components/ui-table/column-resize-controller.d.ts.map +1 -0
  221. package/dist/components/ui-table/index.d.ts +12 -0
  222. package/dist/components/ui-table/index.d.ts.map +1 -0
  223. package/dist/components/ui-table/table-drag-controller.d.ts +12 -0
  224. package/dist/components/ui-table/table-drag-controller.d.ts.map +1 -0
  225. package/dist/components/ui-table/table-store.d.ts +24 -0
  226. package/dist/components/ui-table/table-store.d.ts.map +1 -0
  227. package/dist/components/ui-table/ui-table-body-element.d.ts +7 -0
  228. package/dist/components/ui-table/ui-table-body-element.d.ts.map +1 -0
  229. package/dist/components/ui-table/ui-table-cell-element.d.ts +7 -0
  230. package/dist/components/ui-table/ui-table-cell-element.d.ts.map +1 -0
  231. package/dist/components/ui-table/ui-table-element.d.ts +22 -0
  232. package/dist/components/ui-table/ui-table-element.d.ts.map +1 -0
  233. package/dist/components/ui-table/ui-table-head-element.d.ts +7 -0
  234. package/dist/components/ui-table/ui-table-head-element.d.ts.map +1 -0
  235. package/dist/components/ui-table/ui-table-header-element.d.ts +19 -0
  236. package/dist/components/ui-table/ui-table-header-element.d.ts.map +1 -0
  237. package/dist/components/ui-table/ui-table-row-element.d.ts +18 -0
  238. package/dist/components/ui-table/ui-table-row-element.d.ts.map +1 -0
  239. package/dist/components/ui-table/ui-table.d.ts +8 -0
  240. package/dist/components/ui-table/ui-table.d.ts.map +1 -0
  241. package/dist/components/ui-tabs/index.d.ts +6 -0
  242. package/dist/components/ui-tabs/index.d.ts.map +1 -0
  243. package/dist/components/ui-tabs/ui-tab-element.d.ts +21 -0
  244. package/dist/components/ui-tabs/ui-tab-element.d.ts.map +1 -0
  245. package/dist/components/ui-tabs/ui-tab-panel-element.d.ts +14 -0
  246. package/dist/components/ui-tabs/ui-tab-panel-element.d.ts.map +1 -0
  247. package/dist/components/ui-tabs/ui-tab-panels-element.d.ts +7 -0
  248. package/dist/components/ui-tabs/ui-tab-panels-element.d.ts.map +1 -0
  249. package/dist/components/ui-tabs/ui-tabs-element.d.ts +21 -0
  250. package/dist/components/ui-tabs/ui-tabs-element.d.ts.map +1 -0
  251. package/dist/components/ui-tabs/ui-tabs.d.ts +6 -0
  252. package/dist/components/ui-tabs/ui-tabs.d.ts.map +1 -0
  253. package/dist/components/ui-textarea/index.d.ts +3 -0
  254. package/dist/components/ui-textarea/index.d.ts.map +1 -0
  255. package/dist/components/ui-textarea/ui-textarea-element.d.ts +406 -0
  256. package/dist/components/ui-textarea/ui-textarea-element.d.ts.map +1 -0
  257. package/dist/components/ui-textarea/ui-textarea.d.ts +3 -0
  258. package/dist/components/ui-textarea/ui-textarea.d.ts.map +1 -0
  259. package/dist/components/ui-tooltip/index.d.ts +3 -0
  260. package/dist/components/ui-tooltip/index.d.ts.map +1 -0
  261. package/dist/components/ui-tooltip/ui-tooltip-element.d.ts +22 -0
  262. package/dist/components/ui-tooltip/ui-tooltip-element.d.ts.map +1 -0
  263. package/dist/components/ui-tooltip/ui-tooltip.d.ts +3 -0
  264. package/dist/components/ui-tooltip/ui-tooltip.d.ts.map +1 -0
  265. package/dist/components/ui-tree/index.d.ts +4 -0
  266. package/dist/components/ui-tree/index.d.ts.map +1 -0
  267. package/dist/components/ui-tree/ui-tree-element.d.ts +16 -0
  268. package/dist/components/ui-tree/ui-tree-element.d.ts.map +1 -0
  269. package/dist/components/ui-tree/ui-tree-item-element.d.ts +18 -0
  270. package/dist/components/ui-tree/ui-tree-item-element.d.ts.map +1 -0
  271. package/dist/components/ui-tree/ui-tree.d.ts +5 -0
  272. package/dist/components/ui-tree/ui-tree.d.ts.map +1 -0
  273. package/dist/components-lean.css +5107 -0
  274. package/dist/components.css +5183 -0
  275. package/dist/containers/ui-card/index.d.ts +3 -0
  276. package/dist/containers/ui-card/index.d.ts.map +1 -0
  277. package/dist/containers/ui-card/ui-card-element.d.ts +13 -0
  278. package/dist/containers/ui-card/ui-card-element.d.ts.map +1 -0
  279. package/dist/containers/ui-card/ui-card.d.ts +3 -0
  280. package/dist/containers/ui-card/ui-card.d.ts.map +1 -0
  281. package/dist/containers/ui-layout-chat/index.d.ts +3 -0
  282. package/dist/containers/ui-layout-chat/index.d.ts.map +1 -0
  283. package/dist/containers/ui-layout-chat/ui-layout-chat-element.d.ts +14 -0
  284. package/dist/containers/ui-layout-chat/ui-layout-chat-element.d.ts.map +1 -0
  285. package/dist/containers/ui-layout-chat/ui-layout-chat.d.ts +3 -0
  286. package/dist/containers/ui-layout-chat/ui-layout-chat.d.ts.map +1 -0
  287. package/dist/containers/ui-layout-inspector/index.d.ts +3 -0
  288. package/dist/containers/ui-layout-inspector/index.d.ts.map +1 -0
  289. package/dist/containers/ui-layout-inspector/ui-layout-inspector-element.d.ts +14 -0
  290. package/dist/containers/ui-layout-inspector/ui-layout-inspector-element.d.ts.map +1 -0
  291. package/dist/containers/ui-layout-inspector/ui-layout-inspector.d.ts +3 -0
  292. package/dist/containers/ui-layout-inspector/ui-layout-inspector.d.ts.map +1 -0
  293. package/dist/containers/ui-layout-sidebar/index.d.ts +4 -0
  294. package/dist/containers/ui-layout-sidebar/index.d.ts.map +1 -0
  295. package/dist/containers/ui-layout-sidebar/ui-layout-sidebar-element.d.ts +8 -0
  296. package/dist/containers/ui-layout-sidebar/ui-layout-sidebar-element.d.ts.map +1 -0
  297. package/dist/containers/ui-layout-sidebar/ui-layout-sidebar-trigger-element.d.ts +8 -0
  298. package/dist/containers/ui-layout-sidebar/ui-layout-sidebar-trigger-element.d.ts.map +1 -0
  299. package/dist/containers/ui-layout-sidebar/ui-layout-sidebar-trigger.d.ts +3 -0
  300. package/dist/containers/ui-layout-sidebar/ui-layout-sidebar-trigger.d.ts.map +1 -0
  301. package/dist/containers/ui-layout-sidebar/ui-layout-sidebar.d.ts +4 -0
  302. package/dist/containers/ui-layout-sidebar/ui-layout-sidebar.d.ts.map +1 -0
  303. package/dist/containers/ui-section/index.d.ts +3 -0
  304. package/dist/containers/ui-section/index.d.ts.map +1 -0
  305. package/dist/containers/ui-section/ui-section-element.d.ts +14 -0
  306. package/dist/containers/ui-section/ui-section-element.d.ts.map +1 -0
  307. package/dist/containers/ui-section/ui-section.d.ts +3 -0
  308. package/dist/containers/ui-section/ui-section.d.ts.map +1 -0
  309. package/dist/containers/ui-toolbar/index.d.ts +3 -0
  310. package/dist/containers/ui-toolbar/index.d.ts.map +1 -0
  311. package/dist/containers/ui-toolbar/ui-toolbar-element.d.ts +9 -0
  312. package/dist/containers/ui-toolbar/ui-toolbar-element.d.ts.map +1 -0
  313. package/dist/containers/ui-toolbar/ui-toolbar.d.ts +3 -0
  314. package/dist/containers/ui-toolbar/ui-toolbar.d.ts.map +1 -0
  315. package/dist/core/context.d.ts +731 -0
  316. package/dist/core/context.d.ts.map +1 -0
  317. package/dist/core/data-list.d.ts +42 -0
  318. package/dist/core/data-list.d.ts.map +1 -0
  319. package/dist/core/data-options.d.ts +18 -0
  320. package/dist/core/data-options.d.ts.map +1 -0
  321. package/dist/core/define.d.ts +2 -0
  322. package/dist/core/define.d.ts.map +1 -0
  323. package/dist/core/effects.d.ts +5 -0
  324. package/dist/core/effects.d.ts.map +1 -0
  325. package/dist/core/form-associable.d.ts +391 -0
  326. package/dist/core/form-associable.d.ts.map +1 -0
  327. package/dist/core/gesture-router.d.ts +36 -0
  328. package/dist/core/gesture-router.d.ts.map +1 -0
  329. package/dist/core/index.d.ts +21 -0
  330. package/dist/core/index.d.ts.map +1 -0
  331. package/dist/core/reactive-prop.d.ts +62 -0
  332. package/dist/core/reactive-prop.d.ts.map +1 -0
  333. package/dist/core/trait-options.d.ts +18 -0
  334. package/dist/core/trait-options.d.ts.map +1 -0
  335. package/dist/core/trait-registry.d.ts +11 -0
  336. package/dist/core/trait-registry.d.ts.map +1 -0
  337. package/dist/core/trait-runtime.d.ts +37 -0
  338. package/dist/core/trait-runtime.d.ts.map +1 -0
  339. package/dist/core/types.d.ts +9 -0
  340. package/dist/core/types.d.ts.map +1 -0
  341. package/dist/core/ui-element.d.ts +17 -0
  342. package/dist/core/ui-element.d.ts.map +1 -0
  343. package/dist/core/uid.d.ts +2 -0
  344. package/dist/core/uid.d.ts.map +1 -0
  345. package/dist/custom-elements.json +21202 -0
  346. package/dist/dialog-controller.js +754 -0
  347. package/dist/events.d.ts +168 -0
  348. package/dist/events.d.ts.map +1 -0
  349. package/dist/foundation.css +2003 -0
  350. package/dist/icons/icons.d.ts +30 -0
  351. package/dist/icons/icons.d.ts.map +1 -0
  352. package/dist/icons/index.d.ts +4 -0
  353. package/dist/icons/index.d.ts.map +1 -0
  354. package/dist/icons/registry.d.ts +4 -0
  355. package/dist/icons/registry.d.ts.map +1 -0
  356. package/dist/icons/ui-icon-element.d.ts +15 -0
  357. package/dist/icons/ui-icon-element.d.ts.map +1 -0
  358. package/dist/icons/ui-icon.d.ts +3 -0
  359. package/dist/icons/ui-icon.d.ts.map +1 -0
  360. package/dist/index.d.ts +102 -0
  361. package/dist/index.d.ts.map +1 -0
  362. package/dist/kernel/accessibility.d.ts +15 -0
  363. package/dist/kernel/accessibility.d.ts.map +1 -0
  364. package/dist/kernel/command-bus.d.ts +13 -0
  365. package/dist/kernel/command-bus.d.ts.map +1 -0
  366. package/dist/kernel/command-history.d.ts +18 -0
  367. package/dist/kernel/command-history.d.ts.map +1 -0
  368. package/dist/kernel/components.d.ts +26 -0
  369. package/dist/kernel/components.d.ts.map +1 -0
  370. package/dist/kernel/data-binding.d.ts +33 -0
  371. package/dist/kernel/data-binding.d.ts.map +1 -0
  372. package/dist/kernel/data-runtime.d.ts +43 -0
  373. package/dist/kernel/data-runtime.d.ts.map +1 -0
  374. package/dist/kernel/executor.d.ts +16 -0
  375. package/dist/kernel/executor.d.ts.map +1 -0
  376. package/dist/kernel/focus-router.d.ts +13 -0
  377. package/dist/kernel/focus-router.d.ts.map +1 -0
  378. package/dist/kernel/index.d.ts +32 -0
  379. package/dist/kernel/index.d.ts.map +1 -0
  380. package/dist/kernel/kernel.d.ts +44 -0
  381. package/dist/kernel/kernel.d.ts.map +1 -0
  382. package/dist/kernel/observability.d.ts +58 -0
  383. package/dist/kernel/observability.d.ts.map +1 -0
  384. package/dist/kernel/overlay-manager.d.ts +21 -0
  385. package/dist/kernel/overlay-manager.d.ts.map +1 -0
  386. package/dist/kernel/patch.d.ts +59 -0
  387. package/dist/kernel/patch.d.ts.map +1 -0
  388. package/dist/kernel/planner.d.ts +151 -0
  389. package/dist/kernel/planner.d.ts.map +1 -0
  390. package/dist/kernel/policy.d.ts +58 -0
  391. package/dist/kernel/policy.d.ts.map +1 -0
  392. package/dist/kernel/schema-catalog.d.ts +54 -0
  393. package/dist/kernel/schema-catalog.d.ts.map +1 -0
  394. package/dist/kernel/schema.d.ts +6 -0
  395. package/dist/kernel/schema.d.ts.map +1 -0
  396. package/dist/kernel/types.d.ts +81 -0
  397. package/dist/kernel/types.d.ts.map +1 -0
  398. package/dist/kernel/workflow-templates.d.ts +22 -0
  399. package/dist/kernel/workflow-templates.d.ts.map +1 -0
  400. package/dist/kernel/workflow.d.ts +70 -0
  401. package/dist/kernel/workflow.d.ts.map +1 -0
  402. package/dist/kernel.d.ts +27 -0
  403. package/dist/kernel.d.ts.map +1 -0
  404. package/dist/kernel.js +4137 -0
  405. package/dist/native-ui-lean.css +7111 -0
  406. package/dist/native-ui.css +7187 -0
  407. package/dist/native-ui.js +75 -0
  408. package/dist/reactivity/batch.d.ts +2 -0
  409. package/dist/reactivity/batch.d.ts.map +1 -0
  410. package/dist/reactivity/computed.d.ts +3 -0
  411. package/dist/reactivity/computed.d.ts.map +1 -0
  412. package/dist/reactivity/debug.d.ts +5 -0
  413. package/dist/reactivity/debug.d.ts.map +1 -0
  414. package/dist/reactivity/effect.d.ts +3 -0
  415. package/dist/reactivity/effect.d.ts.map +1 -0
  416. package/dist/reactivity/graph.d.ts +35 -0
  417. package/dist/reactivity/graph.d.ts.map +1 -0
  418. package/dist/reactivity/index.d.ts +8 -0
  419. package/dist/reactivity/index.d.ts.map +1 -0
  420. package/dist/reactivity/signal.d.ts +3 -0
  421. package/dist/reactivity/signal.d.ts.map +1 -0
  422. package/dist/reactivity/types.d.ts +18 -0
  423. package/dist/reactivity/types.d.ts.map +1 -0
  424. package/dist/reactivity/untrack.d.ts +2 -0
  425. package/dist/reactivity/untrack.d.ts.map +1 -0
  426. package/dist/register-all.d.ts +11 -0
  427. package/dist/register-all.d.ts.map +1 -0
  428. package/dist/register-all.js +3 -0
  429. package/dist/register-all2.js +1244 -0
  430. package/dist/traits/adapters/clippable-adapter.d.ts +4 -0
  431. package/dist/traits/adapters/clippable-adapter.d.ts.map +1 -0
  432. package/dist/traits/adapters/collapsible-adapter.d.ts +4 -0
  433. package/dist/traits/adapters/collapsible-adapter.d.ts.map +1 -0
  434. package/dist/traits/adapters/copyable-adapter.d.ts +4 -0
  435. package/dist/traits/adapters/copyable-adapter.d.ts.map +1 -0
  436. package/dist/traits/adapters/dialogable-adapter.d.ts +4 -0
  437. package/dist/traits/adapters/dialogable-adapter.d.ts.map +1 -0
  438. package/dist/traits/adapters/dismissable-adapter.d.ts +4 -0
  439. package/dist/traits/adapters/dismissable-adapter.d.ts.map +1 -0
  440. package/dist/traits/adapters/draggable-adapter.d.ts +4 -0
  441. package/dist/traits/adapters/draggable-adapter.d.ts.map +1 -0
  442. package/dist/traits/adapters/droppable-adapter.d.ts +4 -0
  443. package/dist/traits/adapters/droppable-adapter.d.ts.map +1 -0
  444. package/dist/traits/adapters/editable-adapter.d.ts +4 -0
  445. package/dist/traits/adapters/editable-adapter.d.ts.map +1 -0
  446. package/dist/traits/adapters/focus-trappable-adapter.d.ts +4 -0
  447. package/dist/traits/adapters/focus-trappable-adapter.d.ts.map +1 -0
  448. package/dist/traits/adapters/hoverable-adapter.d.ts +4 -0
  449. package/dist/traits/adapters/hoverable-adapter.d.ts.map +1 -0
  450. package/dist/traits/adapters/index.d.ts +25 -0
  451. package/dist/traits/adapters/index.d.ts.map +1 -0
  452. package/dist/traits/adapters/intersectable-adapter.d.ts +4 -0
  453. package/dist/traits/adapters/intersectable-adapter.d.ts.map +1 -0
  454. package/dist/traits/adapters/list-navigable-adapter.d.ts +4 -0
  455. package/dist/traits/adapters/list-navigable-adapter.d.ts.map +1 -0
  456. package/dist/traits/adapters/popoverable-adapter.d.ts +4 -0
  457. package/dist/traits/adapters/popoverable-adapter.d.ts.map +1 -0
  458. package/dist/traits/adapters/pressable-adapter.d.ts +4 -0
  459. package/dist/traits/adapters/pressable-adapter.d.ts.map +1 -0
  460. package/dist/traits/adapters/range-selectable-adapter.d.ts +4 -0
  461. package/dist/traits/adapters/range-selectable-adapter.d.ts.map +1 -0
  462. package/dist/traits/adapters/resizable-adapter.d.ts +4 -0
  463. package/dist/traits/adapters/resizable-adapter.d.ts.map +1 -0
  464. package/dist/traits/adapters/roving-focusable-adapter.d.ts +4 -0
  465. package/dist/traits/adapters/roving-focusable-adapter.d.ts.map +1 -0
  466. package/dist/traits/adapters/searchable-adapter.d.ts +4 -0
  467. package/dist/traits/adapters/searchable-adapter.d.ts.map +1 -0
  468. package/dist/traits/adapters/selectable-adapter.d.ts +4 -0
  469. package/dist/traits/adapters/selectable-adapter.d.ts.map +1 -0
  470. package/dist/traits/adapters/sortable-adapter.d.ts +4 -0
  471. package/dist/traits/adapters/sortable-adapter.d.ts.map +1 -0
  472. package/dist/traits/adapters/swipeable-adapter.d.ts +4 -0
  473. package/dist/traits/adapters/swipeable-adapter.d.ts.map +1 -0
  474. package/dist/traits/adapters/toastable-adapter.d.ts +4 -0
  475. package/dist/traits/adapters/toastable-adapter.d.ts.map +1 -0
  476. package/dist/traits/adapters/validatable-adapter.d.ts +4 -0
  477. package/dist/traits/adapters/validatable-adapter.d.ts.map +1 -0
  478. package/dist/traits/adapters/virtualizable-adapter.d.ts +4 -0
  479. package/dist/traits/adapters/virtualizable-adapter.d.ts.map +1 -0
  480. package/dist/traits/clipboard-controller.d.ts +24 -0
  481. package/dist/traits/clipboard-controller.d.ts.map +1 -0
  482. package/dist/traits/collapsible-controller.d.ts +17 -0
  483. package/dist/traits/collapsible-controller.d.ts.map +1 -0
  484. package/dist/traits/copy-controller.d.ts +15 -0
  485. package/dist/traits/copy-controller.d.ts.map +1 -0
  486. package/dist/traits/dialog-controller.d.ts +14 -0
  487. package/dist/traits/dialog-controller.d.ts.map +1 -0
  488. package/dist/traits/dismiss-controller.d.ts +10 -0
  489. package/dist/traits/dismiss-controller.d.ts.map +1 -0
  490. package/dist/traits/drag-controller.d.ts +22 -0
  491. package/dist/traits/drag-controller.d.ts.map +1 -0
  492. package/dist/traits/drop-zone-controller.d.ts +18 -0
  493. package/dist/traits/drop-zone-controller.d.ts.map +1 -0
  494. package/dist/traits/edit-controller.d.ts +22 -0
  495. package/dist/traits/edit-controller.d.ts.map +1 -0
  496. package/dist/traits/focus-trap-controller.d.ts +10 -0
  497. package/dist/traits/focus-trap-controller.d.ts.map +1 -0
  498. package/dist/traits/hover-controller.d.ts +18 -0
  499. package/dist/traits/hover-controller.d.ts.map +1 -0
  500. package/dist/traits/index.d.ts +71 -0
  501. package/dist/traits/index.d.ts.map +1 -0
  502. package/dist/traits/intersect-controller.d.ts +22 -0
  503. package/dist/traits/intersect-controller.d.ts.map +1 -0
  504. package/dist/traits/list-navigate-controller.d.ts +36 -0
  505. package/dist/traits/list-navigate-controller.d.ts.map +1 -0
  506. package/dist/traits/popover-controller.d.ts +10 -0
  507. package/dist/traits/popover-controller.d.ts.map +1 -0
  508. package/dist/traits/press-controller.d.ts +14 -0
  509. package/dist/traits/press-controller.d.ts.map +1 -0
  510. package/dist/traits/range-select-controller.d.ts +19 -0
  511. package/dist/traits/range-select-controller.d.ts.map +1 -0
  512. package/dist/traits/register-all.d.ts +6 -0
  513. package/dist/traits/register-all.d.ts.map +1 -0
  514. package/dist/traits/resize-controller.d.ts +25 -0
  515. package/dist/traits/resize-controller.d.ts.map +1 -0
  516. package/dist/traits/roving-focus-controller.d.ts +20 -0
  517. package/dist/traits/roving-focus-controller.d.ts.map +1 -0
  518. package/dist/traits/search-controller.d.ts +26 -0
  519. package/dist/traits/search-controller.d.ts.map +1 -0
  520. package/dist/traits/selection-controller.d.ts +28 -0
  521. package/dist/traits/selection-controller.d.ts.map +1 -0
  522. package/dist/traits/sort-controller.d.ts +19 -0
  523. package/dist/traits/sort-controller.d.ts.map +1 -0
  524. package/dist/traits/swipe-controller.d.ts +24 -0
  525. package/dist/traits/swipe-controller.d.ts.map +1 -0
  526. package/dist/traits/toast-controller.d.ts +12 -0
  527. package/dist/traits/toast-controller.d.ts.map +1 -0
  528. package/dist/traits/validate-controller.d.ts +24 -0
  529. package/dist/traits/validate-controller.d.ts.map +1 -0
  530. package/dist/traits/virtual-scroll-controller.d.ts +19 -0
  531. package/dist/traits/virtual-scroll-controller.d.ts.map +1 -0
  532. package/dist/traits-entry.d.ts +15 -0
  533. package/dist/traits-entry.d.ts.map +1 -0
  534. package/dist/traits.js +4 -0
  535. package/dist/ui-icon-element.js +4405 -0
  536. package/dist/uid.js +147 -0
  537. package/package.json +86 -0
@@ -0,0 +1,1244 @@
1
+ import { c as e, l as t, s as n, u as r } from "./uid.js";
2
+ import { a as i, c as a, d as o, i as s, n as c, o as l, r as ee, s as te, t as u, v as d } from "./dialog-controller.js";
3
+ function f(t) {
4
+ let n = e();
5
+ r(null);
6
+ try {
7
+ return t();
8
+ } finally {
9
+ r(n);
10
+ }
11
+ }
12
+ function ne(e) {
13
+ let r = t.get(e);
14
+ return r ? r instanceof n ? {
15
+ type: "signal",
16
+ value: r._value,
17
+ subscriberCount: r._subs.size,
18
+ dependencyCount: 0
19
+ } : {
20
+ type: "computed",
21
+ value: r._value,
22
+ subscriberCount: r._subs.size,
23
+ dependencyCount: r._deps.size
24
+ } : {
25
+ type: "unknown",
26
+ value: void 0,
27
+ subscriberCount: 0,
28
+ dependencyCount: 0
29
+ };
30
+ }
31
+ function re(e) {
32
+ return typeof e == "object" && !!e && Symbol.toStringTag in e && e[Symbol.toStringTag] === "Signal";
33
+ }
34
+ function ie(e) {
35
+ return typeof e == "object" && !!e && Symbol.toStringTag in e && e[Symbol.toStringTag] === "Computed";
36
+ }
37
+ /** Enables contiguous range selection via drag or click, dispatching `ui-range-change` and `ui-range-select`. */
38
+ var p = class {
39
+ host;
40
+ selector;
41
+ mode;
42
+ disabled;
43
+ #e = -1;
44
+ #t = -1;
45
+ #n = !1;
46
+ #r = !1;
47
+ #i = "idle";
48
+ constructor(e, t) {
49
+ this.host = e, this.selector = t.selector, this.mode = t.mode ?? "drag", this.disabled = t.disabled ?? !1, this.attach();
50
+ }
51
+ attach() {
52
+ this.#r || (this.#r = !0, this.host.addEventListener("pointerdown", this.#c));
53
+ }
54
+ detach() {
55
+ this.#r && (this.#r = !1, this.host.removeEventListener("pointerdown", this.#c), this.#T());
56
+ }
57
+ destroy() {
58
+ this.detach();
59
+ }
60
+ clearRange() {
61
+ this.#T();
62
+ }
63
+ #a() {
64
+ return this.selector ? [...this.host.querySelectorAll(this.selector)] : [];
65
+ }
66
+ #o(e) {
67
+ let t = this.#a(), n = document.elementFromPoint(e.clientX, e.clientY) ?? e.target;
68
+ if (!n) return -1;
69
+ let r = n.closest?.(this.selector);
70
+ return !r || !this.host.contains(r) ? -1 : t.indexOf(r);
71
+ }
72
+ #s(e) {
73
+ let t = this.#a(), n = e.target.closest?.(this.selector);
74
+ return !n || !this.host.contains(n) ? -1 : t.indexOf(n);
75
+ }
76
+ #c = (e) => {
77
+ e.button === 0 && (this.disabled || this.selector && (this.mode === "click" ? this.#m(e) : this.#l(e)));
78
+ };
79
+ #l(e) {
80
+ let t = this.#o(e);
81
+ t !== -1 && (e.preventDefault(), this.#n = !0, this.#e = t, this.#t = t, this.#C(), this.host.setPointerCapture(e.pointerId), document.addEventListener("pointermove", this.#u), document.addEventListener("pointerup", this.#d), document.addEventListener("pointercancel", this.#f));
82
+ }
83
+ #u = (e) => {
84
+ if (!this.#n) return;
85
+ let t = this.#o(e);
86
+ t !== -1 && t !== this.#t && (this.#t = t, this.#C(), this.#x());
87
+ };
88
+ #d = (e) => {
89
+ this.#n &&= (this.#S(), this.#p(), !1);
90
+ };
91
+ #f = () => {
92
+ this.#T();
93
+ };
94
+ #p() {
95
+ document.removeEventListener("pointermove", this.#u), document.removeEventListener("pointerup", this.#d), document.removeEventListener("pointercancel", this.#f);
96
+ }
97
+ #m(e) {
98
+ let t = this.#s(e);
99
+ t !== -1 && (e.preventDefault(), this.#i === "idle" ? (this.#e = t, this.#t = t, this.#C(), this.#i = "selecting", this.host.addEventListener("pointermove", this.#h)) : this.#i === "selecting" && (this.#t = t, this.#C(), this.#i = "adjusting", this.host.setPointerCapture(e.pointerId), document.addEventListener("pointermove", this.#g), document.addEventListener("pointerup", this.#_), document.addEventListener("pointercancel", this.#v)));
100
+ }
101
+ #h = (e) => {
102
+ if (this.#i !== "selecting") return;
103
+ let t = this.#s(e);
104
+ t !== -1 && t !== this.#t && (this.#t = t, this.#C(), this.#x());
105
+ };
106
+ #g = (e) => {
107
+ if (this.#i !== "adjusting") return;
108
+ let t = this.#o(e);
109
+ t !== -1 && t !== this.#t && (this.#t = t, this.#C(), this.#x());
110
+ };
111
+ #_ = (e) => {
112
+ this.#i === "adjusting" && (this.#S(), this.#y(), this.#i = "idle");
113
+ };
114
+ #v = () => {
115
+ this.#T();
116
+ };
117
+ #y() {
118
+ this.host.removeEventListener("pointermove", this.#h), document.removeEventListener("pointermove", this.#g), document.removeEventListener("pointerup", this.#_), document.removeEventListener("pointercancel", this.#v);
119
+ }
120
+ #b() {
121
+ return [Math.min(this.#e, this.#t), Math.max(this.#e, this.#t)];
122
+ }
123
+ #x() {
124
+ let e = this.#a(), [t, n] = this.#b();
125
+ this.host.dispatchEvent(new CustomEvent("ui-range-change", {
126
+ bubbles: !0,
127
+ composed: !0,
128
+ detail: {
129
+ startIndex: t,
130
+ endIndex: n,
131
+ items: e.slice(t, n + 1)
132
+ }
133
+ }));
134
+ }
135
+ #S() {
136
+ let e = this.#a(), [t, n] = this.#b();
137
+ this.host.dispatchEvent(new CustomEvent("ui-range-select", {
138
+ bubbles: !0,
139
+ composed: !0,
140
+ detail: {
141
+ startIndex: t,
142
+ endIndex: n,
143
+ items: e.slice(t, n + 1)
144
+ }
145
+ }));
146
+ }
147
+ #C() {
148
+ let e = this.#a(), [t, n] = this.#b();
149
+ for (let r = 0; r < e.length; r++) {
150
+ let i = r >= t && r <= n;
151
+ e[r].toggleAttribute("range-selected", i), r === t ? e[r].setAttribute("range-start", "") : e[r].removeAttribute("range-start"), r === n ? e[r].setAttribute("range-end", "") : e[r].removeAttribute("range-end");
152
+ }
153
+ }
154
+ #w() {
155
+ let e = this.#a();
156
+ for (let t of e) t.removeAttribute("range-selected"), t.removeAttribute("range-start"), t.removeAttribute("range-end");
157
+ }
158
+ #T() {
159
+ this.#w(), this.#p(), this.#y(), this.#n = !1, this.#i = "idle", this.#e = -1, this.#t = -1;
160
+ }
161
+ }, m = class {
162
+ host;
163
+ itemHeight;
164
+ overscan;
165
+ #e = 0;
166
+ #t = 0;
167
+ #n = 0;
168
+ #r = null;
169
+ #i = null;
170
+ #a = null;
171
+ #o = 0;
172
+ constructor(e, t = {}) {
173
+ this.host = e, this.itemHeight = t.itemHeight ?? 40, this.overscan = t.overscan ?? 5;
174
+ }
175
+ get start() {
176
+ return this.#t;
177
+ }
178
+ get end() {
179
+ return this.#n;
180
+ }
181
+ enable(e, t, n) {
182
+ this.#r = e, this.#e = n, this.#i = document.createElement("div"), this.#i.className = "ui-virtual-spacer-top", this.#i.setAttribute("aria-hidden", "true"), this.#a = document.createElement("div"), this.#a.className = "ui-virtual-spacer-bottom", this.#a.setAttribute("aria-hidden", "true"), t.prepend(this.#i), t.appendChild(this.#a), e.addEventListener("scroll", this.#s, { passive: !0 }), this.#c();
183
+ }
184
+ disable() {
185
+ this.#r && this.#r.removeEventListener("scroll", this.#s), this.#o &&= (cancelAnimationFrame(this.#o), 0), this.#i?.remove(), this.#a?.remove(), this.#r = null, this.#i = null, this.#a = null;
186
+ }
187
+ updateCount(e) {
188
+ this.#e = e, this.#c();
189
+ }
190
+ destroy() {
191
+ this.disable();
192
+ }
193
+ #s = () => {
194
+ this.#o ||= requestAnimationFrame(() => {
195
+ this.#o = 0, this.#c();
196
+ });
197
+ };
198
+ #c() {
199
+ if (!this.#r || !this.#i || !this.#a) return;
200
+ let e = this.#r.scrollTop, t = this.#r.clientHeight, n = Math.floor(e / this.itemHeight), r = Math.ceil((e + t) / this.itemHeight), i = Math.max(0, n - this.overscan), a = Math.min(this.#e, r + this.overscan);
201
+ i === this.#t && a === this.#n || (this.#t = i, this.#n = a, this.#i.style.height = `${i * this.itemHeight}px`, this.#a.style.height = `${Math.max(0, (this.#e - a) * this.itemHeight)}px`, this.host.dispatchEvent(new CustomEvent("ui-virtual-change", {
202
+ bubbles: !0,
203
+ composed: !0,
204
+ detail: {
205
+ start: i,
206
+ end: a,
207
+ totalCount: this.#e
208
+ }
209
+ })));
210
+ }
211
+ }, h = class {
212
+ host;
213
+ selector;
214
+ mode;
215
+ disabled;
216
+ #e = /* @__PURE__ */ new Set();
217
+ #t = null;
218
+ #n = !1;
219
+ constructor(e, t) {
220
+ this.host = e, this.selector = t.selector, this.mode = t.mode ?? "multiple", this.disabled = t.disabled ?? !1, this.attach();
221
+ }
222
+ attach() {
223
+ this.#n || (this.#n = !0, this.host.addEventListener("click", this.#o), this.host.addEventListener("keydown", this.#s));
224
+ }
225
+ detach() {
226
+ this.#n && (this.#n = !1, this.host.removeEventListener("click", this.#o), this.host.removeEventListener("keydown", this.#s));
227
+ }
228
+ destroy() {
229
+ this.clear(), this.detach();
230
+ }
231
+ select(e) {
232
+ this.disabled || (this.#i(), this.#e.clear(), this.#e.add(e), this.#t = e, e.setAttribute("selected", ""), e.setAttribute("selection-anchor", ""), this.#a());
233
+ }
234
+ toggle(e) {
235
+ if (!this.disabled) {
236
+ this.#e.has(e) ? (this.#e.delete(e), e.removeAttribute("selected")) : (this.#e.add(e), e.setAttribute("selected", ""));
237
+ for (let e of this.#r()) e.removeAttribute("selection-anchor");
238
+ this.#t = e, e.setAttribute("selection-anchor", ""), this.#a();
239
+ }
240
+ }
241
+ rangeTo(e) {
242
+ if (this.disabled || !this.#t) return;
243
+ let t = this.#r(), n = t.indexOf(this.#t), r = t.indexOf(e);
244
+ if (n === -1 || r === -1) return;
245
+ let i = Math.min(n, r), a = Math.max(n, r);
246
+ this.#i(), this.#e.clear();
247
+ for (let e = i; e <= a; e++) this.#e.add(t[e]), t[e].setAttribute("selected", "");
248
+ this.#t && this.#t.setAttribute("selection-anchor", ""), this.#a();
249
+ }
250
+ selectAll() {
251
+ if (!(this.disabled || this.mode === "single")) {
252
+ this.#i(), this.#e.clear();
253
+ for (let e of this.#r()) this.#e.add(e), e.setAttribute("selected", "");
254
+ this.#a();
255
+ }
256
+ }
257
+ clear() {
258
+ this.#i(), this.#e.clear(), this.#t = null, this.#a();
259
+ }
260
+ getSelection() {
261
+ return [...this.#e];
262
+ }
263
+ handleClick(e, t) {
264
+ this.disabled || (this.mode === "single" ? this.select(e) : t.shift && this.#t ? this.rangeTo(e) : t.ctrl ? this.toggle(e) : this.select(e));
265
+ }
266
+ #r() {
267
+ return [...this.host.querySelectorAll(this.selector)];
268
+ }
269
+ #i() {
270
+ for (let e of this.#r()) e.removeAttribute("selected"), e.removeAttribute("selection-anchor");
271
+ }
272
+ #a() {
273
+ this.host.dispatchEvent(new CustomEvent("ui-selection-change", {
274
+ bubbles: !0,
275
+ composed: !0,
276
+ detail: {
277
+ selected: [...this.#e],
278
+ count: this.#e.size
279
+ }
280
+ }));
281
+ }
282
+ #o = (e) => {
283
+ if (this.disabled) return;
284
+ let t = e.target.closest(this.selector);
285
+ !t || !this.host.contains(t) || this.handleClick(t, {
286
+ shift: e.shiftKey,
287
+ ctrl: e.ctrlKey || e.metaKey
288
+ });
289
+ };
290
+ #s = (e) => {
291
+ this.disabled || (e.ctrlKey || e.metaKey) && e.key === "a" && (e.preventDefault(), this.selectAll());
292
+ };
293
+ }, g = class {
294
+ host;
295
+ selector;
296
+ textField;
297
+ disabled;
298
+ #e = "";
299
+ #t = !1;
300
+ constructor(e, t) {
301
+ this.host = e, this.selector = t.selector, this.textField = t.textField ?? "textContent", this.disabled = t.disabled ?? !1, this.attach();
302
+ }
303
+ attach() {
304
+ this.#t ||= !0;
305
+ }
306
+ detach() {
307
+ this.#t &&= !1;
308
+ }
309
+ destroy() {
310
+ this.clear(), this.detach();
311
+ }
312
+ get query() {
313
+ return this.#e;
314
+ }
315
+ filter(e) {
316
+ this.#e = e;
317
+ let t = [...this.host.querySelectorAll(this.selector)], n = t.length, r = [], i = [];
318
+ if (!e || this.disabled) {
319
+ for (let e of t) e.removeAttribute("search-hidden"), e.setAttribute("search-match", ""), r.push(e);
320
+ return this.host.dispatchEvent(new CustomEvent("ui-search", {
321
+ bubbles: !0,
322
+ composed: !0,
323
+ detail: {
324
+ query: e,
325
+ matchCount: r.length,
326
+ total: n
327
+ }
328
+ })), {
329
+ matches: r,
330
+ hidden: i,
331
+ total: n
332
+ };
333
+ }
334
+ let a = e.toLowerCase();
335
+ for (let e of t) this.#n(e).toLowerCase().includes(a) ? (e.removeAttribute("search-hidden"), e.setAttribute("search-match", ""), r.push(e)) : (e.setAttribute("search-hidden", ""), e.removeAttribute("search-match"), i.push(e));
336
+ return this.host.dispatchEvent(new CustomEvent("ui-search", {
337
+ bubbles: !0,
338
+ composed: !0,
339
+ detail: {
340
+ query: e,
341
+ matchCount: r.length,
342
+ total: n
343
+ }
344
+ })), {
345
+ matches: r,
346
+ hidden: i,
347
+ total: n
348
+ };
349
+ }
350
+ clear() {
351
+ this.#e = "";
352
+ for (let e of this.host.querySelectorAll(this.selector)) e.removeAttribute("search-hidden"), e.removeAttribute("search-match");
353
+ }
354
+ static highlight(e, t) {
355
+ if (!t) return e;
356
+ let n = t.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
357
+ return e.replace(RegExp(`(${n})`, "gi"), "<mark>$1</mark>");
358
+ }
359
+ #n(e) {
360
+ return this.textField === "textContent" ? e.textContent ?? "" : e.getAttribute(this.textField) ?? e.textContent ?? "";
361
+ }
362
+ }, _ = class {
363
+ host;
364
+ threshold;
365
+ velocityThreshold;
366
+ axis;
367
+ disabled;
368
+ #e = 0;
369
+ #t = 0;
370
+ #n = 0;
371
+ #r = !1;
372
+ #i = !1;
373
+ #a = null;
374
+ #o = 0;
375
+ #s = null;
376
+ #c = 0;
377
+ constructor(e, t = {}) {
378
+ this.host = e, this.threshold = t.threshold ?? 50, this.velocityThreshold = t.velocityThreshold ?? .3, this.axis = t.axis ?? "horizontal", this.disabled = t.disabled ?? !1, this.attach();
379
+ }
380
+ get direction() {
381
+ return this.#a;
382
+ }
383
+ get distance() {
384
+ return this.#o;
385
+ }
386
+ get velocity() {
387
+ return this.#c;
388
+ }
389
+ attach() {
390
+ this.#r || (this.#r = !0, this.host.addEventListener("pointerdown", this.#l));
391
+ }
392
+ detach() {
393
+ this.#r && (this.#r = !1, this.host.removeEventListener("pointerdown", this.#l), this.#i &&= (this.host.removeEventListener("pointerup", this.#u), this.host.removeEventListener("pointercancel", this.#d), !1));
394
+ }
395
+ destroy() {
396
+ this.#s !== null && (clearTimeout(this.#s), this.#s = null), this.detach();
397
+ }
398
+ #l = (e) => {
399
+ this.disabled || e.button !== 0 || e.pointerType === "touch" && !e.isPrimary || (this.#e = e.clientX, this.#t = e.clientY, this.#n = Date.now(), this.#a = null, this.#o = 0, this.#c = 0, this.host.setPointerCapture(e.pointerId), this.host.toggleAttribute("swiping", !0), this.#i = !0, this.host.addEventListener("pointerup", this.#u), this.host.addEventListener("pointercancel", this.#d));
400
+ };
401
+ #u = (e) => {
402
+ this.#i = !1, this.host.removeAttribute("swiping"), this.host.removeEventListener("pointerup", this.#u), this.host.removeEventListener("pointercancel", this.#d);
403
+ let t = e.clientX - this.#e, n = e.clientY - this.#t, r = Date.now() - this.#n, i = Math.abs(t), a = Math.abs(n), o = null, s = 0;
404
+ this.axis === "horizontal" || this.axis === "both" && i >= a ? (s = i, o = t > 0 ? "right" : "left") : (s = a, o = n > 0 ? "down" : "up");
405
+ let c = r > 0 ? s / r : 0;
406
+ s >= this.threshold && c >= this.velocityThreshold && (this.#a = o, this.#o = s, this.#c = c, this.host.setAttribute(`swipe-${o}`, ""), this.#s = setTimeout(() => this.host.removeAttribute(`swipe-${o}`), 300), this.host.dispatchEvent(new CustomEvent("ui-swipe", {
407
+ bubbles: !0,
408
+ composed: !0,
409
+ detail: {
410
+ direction: o,
411
+ distance: s,
412
+ velocity: c
413
+ }
414
+ })));
415
+ };
416
+ #d = () => {
417
+ this.#i = !1, this.host.removeAttribute("swiping"), this.host.removeEventListener("pointerup", this.#u), this.host.removeEventListener("pointercancel", this.#d);
418
+ };
419
+ }, v = class {
420
+ host;
421
+ trigger;
422
+ disabled;
423
+ #e = "";
424
+ #t = !1;
425
+ #n = !1;
426
+ constructor(e, t = {}) {
427
+ this.host = e, this.trigger = t.trigger ?? "dblclick", this.disabled = t.disabled ?? !1, this.attach();
428
+ }
429
+ get isEditing() {
430
+ return this.#t;
431
+ }
432
+ get originalValue() {
433
+ return this.#e;
434
+ }
435
+ get currentValue() {
436
+ return this.host.textContent ?? "";
437
+ }
438
+ attach() {
439
+ this.#n || (this.#n = !0, this.host.addEventListener(this.trigger, this.#r), this.host.addEventListener("keydown", this.#i), this.host.addEventListener("blur", this.#a));
440
+ }
441
+ detach() {
442
+ this.#n && (this.#n = !1, this.host.removeEventListener(this.trigger, this.#r), this.host.removeEventListener("keydown", this.#i), this.host.removeEventListener("blur", this.#a));
443
+ }
444
+ destroy() {
445
+ this.#t && this.cancelEdit(), this.detach();
446
+ }
447
+ startEdit() {
448
+ if (this.disabled || this.#t) return;
449
+ this.#e = this.host.textContent ?? "", this.#t = !0, this.host.setAttribute("contenteditable", "plaintext-only"), this.host.setAttribute("editing", ""), this.host.focus();
450
+ let e = window.getSelection();
451
+ e && (e.selectAllChildren(this.host), e.collapseToEnd()), this.host.dispatchEvent(new CustomEvent("ui-edit-start", {
452
+ bubbles: !0,
453
+ composed: !0,
454
+ detail: { value: this.#e }
455
+ }));
456
+ }
457
+ commitEdit() {
458
+ if (!this.#t) return this.#e;
459
+ let e = this.host.textContent ?? "";
460
+ return this.#t = !1, this.host.removeAttribute("contenteditable"), this.host.removeAttribute("editing"), this.host.dispatchEvent(new CustomEvent("ui-edit-commit", {
461
+ bubbles: !0,
462
+ composed: !0,
463
+ detail: {
464
+ value: e,
465
+ previousValue: this.#e
466
+ }
467
+ })), e;
468
+ }
469
+ cancelEdit() {
470
+ this.#t && (this.host.textContent = this.#e, this.#t = !1, this.host.removeAttribute("contenteditable"), this.host.removeAttribute("editing"), this.host.dispatchEvent(new CustomEvent("ui-edit-cancel", {
471
+ bubbles: !0,
472
+ composed: !0,
473
+ detail: { value: this.#e }
474
+ })));
475
+ }
476
+ #r = () => {
477
+ this.startEdit();
478
+ };
479
+ #i = (e) => {
480
+ this.#t && (e.key === "Enter" && !e.shiftKey ? (e.preventDefault(), this.commitEdit()) : e.key === "Escape" && (e.preventDefault(), this.cancelEdit()));
481
+ };
482
+ #a = () => {
483
+ this.#t && this.commitEdit();
484
+ };
485
+ }, y = class {
486
+ host;
487
+ selector;
488
+ disabled;
489
+ #e = /* @__PURE__ */ new Set();
490
+ #t = !1;
491
+ constructor(e, t) {
492
+ this.host = e, this.selector = t.selector, this.disabled = t.disabled ?? !1, this.attach();
493
+ }
494
+ attach() {
495
+ this.#t || (this.#t = !0, this.host.addEventListener("keydown", this.#n));
496
+ }
497
+ detach() {
498
+ this.#t && (this.#t = !1, this.host.removeEventListener("keydown", this.#n));
499
+ }
500
+ destroy() {
501
+ this.cancelCut(), this.detach();
502
+ }
503
+ serialize(e) {
504
+ return e.map((e) => e.textContent ?? "").join("\n");
505
+ }
506
+ deserialize(e) {
507
+ return e.split("\n");
508
+ }
509
+ async copy(e) {
510
+ if (this.disabled) return "";
511
+ let t = this.serialize(e);
512
+ return await navigator.clipboard.writeText(t), this.host.dispatchEvent(new CustomEvent("ui-clip-copy", {
513
+ bubbles: !0,
514
+ composed: !0,
515
+ detail: {
516
+ items: e,
517
+ data: t
518
+ }
519
+ })), t;
520
+ }
521
+ async cut(e) {
522
+ if (this.disabled) return "";
523
+ let t = this.serialize(e);
524
+ await navigator.clipboard.writeText(t), this.cancelCut();
525
+ for (let t of e) this.#e.add(t), t.setAttribute("clip-cut", "");
526
+ return this.host.dispatchEvent(new CustomEvent("ui-clip-cut", {
527
+ bubbles: !0,
528
+ composed: !0,
529
+ detail: {
530
+ items: e,
531
+ data: t
532
+ }
533
+ })), t;
534
+ }
535
+ async paste() {
536
+ if (this.disabled) return "";
537
+ let e = await navigator.clipboard.readText();
538
+ return this.cancelCut(), this.host.dispatchEvent(new CustomEvent("ui-clip-paste", {
539
+ bubbles: !0,
540
+ composed: !0,
541
+ detail: { data: e }
542
+ })), e;
543
+ }
544
+ cancelCut() {
545
+ for (let e of this.#e) e.removeAttribute("clip-cut");
546
+ this.#e.clear();
547
+ }
548
+ get hasCutPending() {
549
+ return this.#e.size > 0;
550
+ }
551
+ get cutItems() {
552
+ return this.#e;
553
+ }
554
+ #n = (e) => {
555
+ if (this.disabled || !(e.ctrlKey || e.metaKey)) return;
556
+ let t = [...this.host.querySelectorAll(`${this.selector}[selected]`)];
557
+ if (t.length !== 0) switch (e.key) {
558
+ case "c":
559
+ e.preventDefault(), this.copy(t);
560
+ break;
561
+ case "x":
562
+ e.preventDefault(), this.cut(t);
563
+ break;
564
+ case "v":
565
+ e.preventDefault(), this.paste();
566
+ break;
567
+ }
568
+ };
569
+ }, b = class {
570
+ host;
571
+ delay;
572
+ leaveDelay;
573
+ disabled;
574
+ #e;
575
+ #t;
576
+ #n = !1;
577
+ constructor(e, t = {}) {
578
+ this.host = e, this.delay = t.delay ?? 0, this.leaveDelay = t.leaveDelay ?? 0, this.disabled = t.disabled ?? !1, this.attach();
579
+ }
580
+ attach() {
581
+ this.#n || (this.#n = !0, this.host.addEventListener("pointerenter", this.#r), this.host.addEventListener("pointerleave", this.#i));
582
+ }
583
+ detach() {
584
+ this.#n && (this.#n = !1, this.host.removeEventListener("pointerenter", this.#r), this.host.removeEventListener("pointerleave", this.#i), clearTimeout(this.#e), clearTimeout(this.#t), this.host.removeAttribute("hovered"));
585
+ }
586
+ destroy() {
587
+ this.detach();
588
+ }
589
+ #r = (e) => {
590
+ this.disabled || (clearTimeout(this.#t), this.delay > 0 ? this.#e = setTimeout(() => {
591
+ this.host.toggleAttribute("hovered", !0), this.host.dispatchEvent(new CustomEvent("ui-hover-enter", {
592
+ bubbles: !0,
593
+ composed: !0,
594
+ detail: { pointerType: e.pointerType }
595
+ }));
596
+ }, this.delay) : (this.host.toggleAttribute("hovered", !0), this.host.dispatchEvent(new CustomEvent("ui-hover-enter", {
597
+ bubbles: !0,
598
+ composed: !0,
599
+ detail: { pointerType: e.pointerType }
600
+ }))));
601
+ };
602
+ #i = (e) => {
603
+ this.disabled || (clearTimeout(this.#e), this.leaveDelay > 0 ? this.#t = setTimeout(() => {
604
+ this.host.removeAttribute("hovered"), this.host.dispatchEvent(new CustomEvent("ui-hover-leave", {
605
+ bubbles: !0,
606
+ composed: !0,
607
+ detail: { pointerType: e.pointerType }
608
+ }));
609
+ }, this.leaveDelay) : (this.host.removeAttribute("hovered"), this.host.dispatchEvent(new CustomEvent("ui-hover-leave", {
610
+ bubbles: !0,
611
+ composed: !0,
612
+ detail: { pointerType: e.pointerType }
613
+ }))));
614
+ };
615
+ }, x = class {
616
+ host;
617
+ value;
618
+ feedbackDuration;
619
+ #e;
620
+ constructor(e, t = {}) {
621
+ this.host = e, this.value = t.value ?? "", this.feedbackDuration = t.feedbackDuration ?? 2e3;
622
+ }
623
+ async copy() {
624
+ let e = typeof this.value == "function" ? this.value() : this.value;
625
+ await navigator.clipboard.writeText(e), this.host.toggleAttribute("copied", !0), clearTimeout(this.#e), this.#e = setTimeout(() => this.host.removeAttribute("copied"), this.feedbackDuration), this.host.dispatchEvent(new CustomEvent("ui-copy", {
626
+ bubbles: !0,
627
+ composed: !0,
628
+ detail: { value: e }
629
+ }));
630
+ }
631
+ destroy() {
632
+ clearTimeout(this.#e);
633
+ }
634
+ }, S = class {
635
+ host;
636
+ threshold;
637
+ root;
638
+ margin;
639
+ once;
640
+ disabled;
641
+ #e = null;
642
+ #t = !1;
643
+ constructor(e, t = {}) {
644
+ this.host = e, this.threshold = t.threshold ?? 0, this.root = t.root ?? null, this.margin = t.margin ?? "0px", this.once = t.once ?? !1, this.disabled = t.disabled ?? !1, this.attach();
645
+ }
646
+ attach() {
647
+ if (this.#t || this.disabled) return;
648
+ this.#t = !0;
649
+ let e = this.root ? document.querySelector(this.root) : null;
650
+ this.#e = new IntersectionObserver(this.#n, {
651
+ root: e,
652
+ rootMargin: this.margin,
653
+ threshold: this.threshold
654
+ }), this.#e.observe(this.host);
655
+ }
656
+ detach() {
657
+ this.#t && (this.#t = !1, this.#e?.disconnect(), this.#e = null, this.host.removeAttribute("intersecting"));
658
+ }
659
+ destroy() {
660
+ this.detach();
661
+ }
662
+ #n = (e) => {
663
+ for (let t of e) {
664
+ let e = t.isIntersecting;
665
+ this.host.toggleAttribute("intersecting", e), this.host.dispatchEvent(new CustomEvent("ui-intersect", {
666
+ bubbles: !0,
667
+ composed: !0,
668
+ detail: {
669
+ isIntersecting: e,
670
+ ratio: t.intersectionRatio
671
+ }
672
+ })), e && this.once && (this.#e?.disconnect(), this.#e = null);
673
+ }
674
+ };
675
+ }, C = class {
676
+ host;
677
+ accept;
678
+ disabled;
679
+ multiple;
680
+ #e = 0;
681
+ #t = !1;
682
+ constructor(e, t = {}) {
683
+ this.host = e, this.accept = t.accept ?? "*", this.disabled = t.disabled ?? !1, this.multiple = t.multiple ?? !0, this.attach();
684
+ }
685
+ attach() {
686
+ this.#t || (this.#t = !0, this.host.addEventListener("dragenter", this.#r), this.host.addEventListener("dragover", this.#i), this.host.addEventListener("dragleave", this.#a), this.host.addEventListener("drop", this.#o));
687
+ }
688
+ detach() {
689
+ this.#t && (this.#t = !1, this.host.removeEventListener("dragenter", this.#r), this.host.removeEventListener("dragover", this.#i), this.host.removeEventListener("dragleave", this.#a), this.host.removeEventListener("drop", this.#o), this.host.removeAttribute("drop-active"), this.host.removeAttribute("drop-invalid"), this.#e = 0);
690
+ }
691
+ destroy() {
692
+ this.detach();
693
+ }
694
+ #n(e) {
695
+ if (this.accept === "*") return !0;
696
+ for (let t of e.items) if (t.type.match(this.accept.replace("*", ".*"))) return !0;
697
+ return !1;
698
+ }
699
+ #r = (e) => {
700
+ this.disabled || !e.dataTransfer || (e.preventDefault(), this.#e++, this.#n(e.dataTransfer) ? (this.host.toggleAttribute("drop-active", !0), this.host.removeAttribute("drop-invalid")) : (this.host.toggleAttribute("drop-invalid", !0), this.host.removeAttribute("drop-active")));
701
+ };
702
+ #i = (e) => {
703
+ this.disabled || (e.preventDefault(), e.dataTransfer && (e.dataTransfer.dropEffect = "copy"));
704
+ };
705
+ #a = (e) => {
706
+ this.#e--, this.#e <= 0 && (this.#e = 0, this.host.removeAttribute("drop-active"), this.host.removeAttribute("drop-invalid"));
707
+ };
708
+ #o = (e) => {
709
+ if (e.preventDefault(), this.#e = 0, this.host.removeAttribute("drop-active"), this.host.removeAttribute("drop-invalid"), this.disabled || !e.dataTransfer) return;
710
+ if (e.dataTransfer.files.length > 0) {
711
+ let t = Array.from(e.dataTransfer.files);
712
+ this.multiple || (t = t.slice(0, 1)), this.host.dispatchEvent(new CustomEvent("ui-file-drop", {
713
+ bubbles: !0,
714
+ composed: !0,
715
+ detail: {
716
+ files: t,
717
+ dataTransfer: e.dataTransfer
718
+ }
719
+ }));
720
+ return;
721
+ }
722
+ let t = e.dataTransfer.getData("text/plain");
723
+ t && this.host.dispatchEvent(new CustomEvent("ui-text-drop", {
724
+ bubbles: !0,
725
+ composed: !0,
726
+ detail: { text: t }
727
+ }));
728
+ };
729
+ }, w = class {
730
+ host;
731
+ selector;
732
+ disabled;
733
+ #e = null;
734
+ #t = "none";
735
+ #n = !1;
736
+ constructor(e, t = {}) {
737
+ this.host = e, this.selector = t.selector ?? "", this.disabled = t.disabled ?? !1, this.attach();
738
+ }
739
+ get sortColumn() {
740
+ return this.#e;
741
+ }
742
+ get sortDirection() {
743
+ return this.#t;
744
+ }
745
+ attach() {
746
+ if (!this.#n && (this.#n = !0, this.selector)) for (let e of this.host.querySelectorAll(this.selector)) e.addEventListener("click", this.#r), e.style.cursor = "pointer";
747
+ }
748
+ detach() {
749
+ if (this.#n && (this.#n = !1, this.selector)) for (let e of this.host.querySelectorAll(this.selector)) e.removeEventListener("click", this.#r);
750
+ }
751
+ destroy() {
752
+ this.detach();
753
+ }
754
+ #r = (e) => {
755
+ if (this.disabled) return;
756
+ let t = e.currentTarget, n = t.dataset.column ?? t.textContent?.trim() ?? "";
757
+ n === this.#e ? this.#t === "asc" ? this.#t = "desc" : this.#t === "desc" ? this.#t = "none" : this.#t = "asc" : (this.#e = n, this.#t = "asc");
758
+ for (let e of this.host.querySelectorAll(this.selector)) (e.dataset.column ?? e.textContent?.trim() ?? "") === this.#e && this.#t !== "none" ? e.setAttribute("aria-sort", this.#t === "asc" ? "ascending" : "descending") : e.removeAttribute("aria-sort");
759
+ this.host.dispatchEvent(new CustomEvent("ui-sort", {
760
+ bubbles: !0,
761
+ composed: !0,
762
+ detail: {
763
+ column: this.#e,
764
+ direction: this.#t
765
+ }
766
+ }));
767
+ };
768
+ }, T = class {
769
+ host;
770
+ rules;
771
+ #e = !0;
772
+ #t = "";
773
+ constructor(e, t = {}) {
774
+ this.host = e, this.rules = t.rules ?? [];
775
+ }
776
+ get valid() {
777
+ return this.#e;
778
+ }
779
+ get errorMessage() {
780
+ return this.#t;
781
+ }
782
+ validate(e) {
783
+ let t = e ?? this.#n();
784
+ for (let e of this.rules) if (!e.test(t)) return this.#e = !1, this.#t = e.message, this.host.setAttribute("invalid", ""), this.host.setAttribute("aria-invalid", "true"), this.host.dispatchEvent(new CustomEvent("ui-invalid", {
785
+ bubbles: !0,
786
+ composed: !0,
787
+ detail: {
788
+ message: e.message,
789
+ value: t
790
+ }
791
+ })), !1;
792
+ return this.#e = !0, this.#t = "", this.host.removeAttribute("invalid"), this.host.removeAttribute("aria-invalid"), this.host.dispatchEvent(new CustomEvent("ui-valid", {
793
+ bubbles: !0,
794
+ composed: !0,
795
+ detail: { value: t }
796
+ })), !0;
797
+ }
798
+ clearValidation() {
799
+ this.#e = !0, this.#t = "", this.host.removeAttribute("invalid"), this.host.removeAttribute("aria-invalid");
800
+ }
801
+ destroy() {}
802
+ static required(e = "This field is required") {
803
+ return {
804
+ test: (e) => e.trim().length > 0,
805
+ message: e
806
+ };
807
+ }
808
+ static minLength(e, t) {
809
+ return {
810
+ test: (t) => t.length >= e,
811
+ message: t ?? `Must be at least ${e} characters`
812
+ };
813
+ }
814
+ static maxLength(e, t) {
815
+ return {
816
+ test: (t) => t.length <= e,
817
+ message: t ?? `Must be at most ${e} characters`
818
+ };
819
+ }
820
+ static pattern(e, t = "Invalid format") {
821
+ return {
822
+ test: (t) => e.test(t),
823
+ message: t
824
+ };
825
+ }
826
+ #n() {
827
+ return this.#r(this.host) ? this.host.value : this.host.querySelector("input, textarea, select")?.value ?? "";
828
+ }
829
+ #r(e) {
830
+ return "value" in e && typeof e.value == "string";
831
+ }
832
+ }, E = "a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"]):not([disabled])", D = class {
833
+ host;
834
+ #e = null;
835
+ #t = null;
836
+ constructor(e) {
837
+ this.host = e;
838
+ }
839
+ enable() {
840
+ this.#e = document.activeElement, this.#t = (e) => {
841
+ if (e.key !== "Tab") return;
842
+ let t = [...this.host.querySelectorAll(E)];
843
+ if (t.length === 0) return;
844
+ let n = t[0], r = t[t.length - 1];
845
+ e.shiftKey && document.activeElement === n ? (e.preventDefault(), r.focus()) : !e.shiftKey && document.activeElement === r && (e.preventDefault(), n.focus());
846
+ }, this.host.addEventListener("keydown", this.#t);
847
+ let e = this.host.querySelector("[autofocus]");
848
+ if (e) e.focus();
849
+ else {
850
+ let e = this.host.querySelectorAll(E);
851
+ e.length > 0 ? e[0].focus() : (this.host.setAttribute("tabindex", "-1"), this.host.focus());
852
+ }
853
+ }
854
+ disable() {
855
+ this.#t &&= (this.host.removeEventListener("keydown", this.#t), null), this.#e instanceof HTMLElement && this.#e.isConnected && this.#e.focus(), this.#e = null;
856
+ }
857
+ destroy() {
858
+ this.disable();
859
+ }
860
+ }, O = class {
861
+ host;
862
+ duration;
863
+ #e = !1;
864
+ #t = null;
865
+ constructor(e, t = {}) {
866
+ this.host = e, this.duration = t.duration ?? 200;
867
+ }
868
+ get collapsed() {
869
+ return this.host.hasAttribute("collapsed");
870
+ }
871
+ set collapsed(e) {
872
+ e ? this.collapse() : this.expand();
873
+ }
874
+ expand() {
875
+ this.host.hasAttribute("collapsed") && (this.#e || (this.#e = !0, this.host.removeAttribute("collapsed"), this.host.style.overflow = "clip", this.host.style.height = "0px", requestAnimationFrame(() => {
876
+ let e = this.host.scrollHeight;
877
+ this.host.style.transition = `height ${this.duration}ms var(--ui-easing, ease)`, this.host.style.height = `${e}px`;
878
+ let t = () => {
879
+ this.host.removeEventListener("transitionend", t), this.host.style.removeProperty("height"), this.host.style.removeProperty("overflow"), this.host.style.removeProperty("transition"), this.#e = !1, this.host.dispatchEvent(new CustomEvent("ui-expand", {
880
+ bubbles: !0,
881
+ composed: !0
882
+ }));
883
+ };
884
+ this.host.addEventListener("transitionend", t, { once: !0 }), this.#t = setTimeout(() => {
885
+ this.#e && t();
886
+ }, this.duration + 50);
887
+ })));
888
+ }
889
+ collapse() {
890
+ if (this.host.hasAttribute("collapsed") || this.#e) return;
891
+ this.#e = !0;
892
+ let e = this.host.scrollHeight;
893
+ this.host.style.overflow = "clip", this.host.style.height = `${e}px`, requestAnimationFrame(() => {
894
+ this.host.style.transition = `height ${this.duration}ms var(--ui-easing, ease)`, this.host.style.height = "0px";
895
+ let e = () => {
896
+ this.host.removeEventListener("transitionend", e), this.host.style.removeProperty("transition"), this.#e = !1, this.host.setAttribute("collapsed", ""), this.host.dispatchEvent(new CustomEvent("ui-collapse", {
897
+ bubbles: !0,
898
+ composed: !0
899
+ }));
900
+ };
901
+ this.host.addEventListener("transitionend", e, { once: !0 }), this.#t = setTimeout(() => {
902
+ this.#e && e();
903
+ }, this.duration + 50);
904
+ });
905
+ }
906
+ toggle() {
907
+ this.host.hasAttribute("collapsed") ? this.expand() : this.collapse();
908
+ }
909
+ destroy() {
910
+ this.#t !== null && (clearTimeout(this.#t), this.#t = null), this.#e = !1;
911
+ }
912
+ }, k = class {
913
+ host;
914
+ constructor(e) {
915
+ this.host = e;
916
+ }
917
+ toast(e) {
918
+ return o().toastManager.toast(this.host, e);
919
+ }
920
+ dismissToast(e) {
921
+ o().toastManager.dismiss(e);
922
+ }
923
+ dismissAllToasts() {
924
+ o().toastManager.dismissAll();
925
+ }
926
+ destroy() {}
927
+ };
928
+ const A = {
929
+ name: "pressable",
930
+ create(e, t) {
931
+ return new l(e, { disabled: t.disabled === "true" });
932
+ },
933
+ destroy(e) {
934
+ e.destroy();
935
+ }
936
+ }, j = {
937
+ name: "hoverable",
938
+ create(e, t) {
939
+ return new b(e, {
940
+ delay: t.delay ? Number(t.delay) : void 0,
941
+ leaveDelay: t["leave-delay"] ? Number(t["leave-delay"]) : void 0,
942
+ disabled: t.disabled === "true"
943
+ });
944
+ },
945
+ destroy(e) {
946
+ e.destroy();
947
+ },
948
+ update(e, t) {
949
+ "delay" in t && (e.delay = Number(t.delay)), "leave-delay" in t && (e.leaveDelay = Number(t["leave-delay"])), "disabled" in t && (e.disabled = t.disabled === "true");
950
+ }
951
+ }, M = {
952
+ name: "copyable",
953
+ create(e, t) {
954
+ return new x(e, {
955
+ value: t.value ?? "",
956
+ feedbackDuration: t["feedback-duration"] ? Number(t["feedback-duration"]) : void 0
957
+ });
958
+ },
959
+ destroy(e) {
960
+ e.destroy();
961
+ },
962
+ update(e, t) {
963
+ "value" in t && (e.value = t.value), "feedback-duration" in t && (e.feedbackDuration = Number(t["feedback-duration"]));
964
+ }
965
+ }, N = {
966
+ name: "intersectable",
967
+ create(e, t) {
968
+ return new S(e, {
969
+ threshold: t.threshold ? Number(t.threshold) : void 0,
970
+ root: t.root ?? null,
971
+ margin: t.margin ?? void 0,
972
+ once: t.once === "true",
973
+ disabled: t.disabled === "true"
974
+ });
975
+ },
976
+ destroy(e) {
977
+ e.destroy();
978
+ }
979
+ }, P = {
980
+ name: "droppable",
981
+ create(e, t) {
982
+ return new C(e, {
983
+ accept: t.accept ?? void 0,
984
+ disabled: t.disabled === "true",
985
+ multiple: t.multiple !== "false"
986
+ });
987
+ },
988
+ destroy(e) {
989
+ e.destroy();
990
+ },
991
+ update(e, t) {
992
+ "accept" in t && (e.accept = t.accept), "disabled" in t && (e.disabled = t.disabled === "true"), "multiple" in t && (e.multiple = t.multiple !== "false");
993
+ }
994
+ }, F = {
995
+ name: "sortable",
996
+ create(e, t) {
997
+ return new w(e, {
998
+ selector: t.selector ?? "",
999
+ disabled: t.disabled === "true"
1000
+ });
1001
+ },
1002
+ destroy(e) {
1003
+ e.destroy();
1004
+ },
1005
+ update(e, t) {
1006
+ "disabled" in t && (e.disabled = t.disabled === "true");
1007
+ }
1008
+ }, I = {
1009
+ name: "validatable",
1010
+ create(e) {
1011
+ return new T(e);
1012
+ },
1013
+ destroy(e) {
1014
+ e.destroy();
1015
+ }
1016
+ }, L = {
1017
+ name: "focus-trappable",
1018
+ create(e) {
1019
+ return new D(e);
1020
+ },
1021
+ destroy(e) {
1022
+ e.destroy();
1023
+ }
1024
+ }, R = {
1025
+ name: "collapsible",
1026
+ create(e, t) {
1027
+ return new O(e, { duration: t.duration ? Number(t.duration) : void 0 });
1028
+ },
1029
+ destroy(e) {
1030
+ e.destroy();
1031
+ },
1032
+ update(e, t) {
1033
+ "duration" in t && (e.duration = Number(t.duration));
1034
+ }
1035
+ }, z = {
1036
+ name: "roving-focusable",
1037
+ create(e, t) {
1038
+ return new i(e, {
1039
+ selector: t.selector ?? void 0,
1040
+ orientation: t.orientation ?? void 0,
1041
+ wrap: t.wrap !== "false",
1042
+ disabled: t.disabled === "true"
1043
+ });
1044
+ },
1045
+ destroy(e) {
1046
+ e.destroy();
1047
+ },
1048
+ update(e, t) {
1049
+ "selector" in t && (e.selector = t.selector), "orientation" in t && (e.orientation = t.orientation), "wrap" in t && (e.wrap = t.wrap !== "false"), "disabled" in t && (e.disabled = t.disabled === "true");
1050
+ }
1051
+ }, B = {
1052
+ name: "dismissable",
1053
+ create(e) {
1054
+ return new s(e);
1055
+ },
1056
+ destroy(e) {
1057
+ e.destroy();
1058
+ }
1059
+ }, V = {
1060
+ name: "toastable",
1061
+ create(e) {
1062
+ return new k(e);
1063
+ },
1064
+ destroy(e) {
1065
+ e.destroy();
1066
+ }
1067
+ }, H = {
1068
+ name: "popoverable",
1069
+ create(e) {
1070
+ return new ee(e);
1071
+ },
1072
+ destroy(e) {
1073
+ e.destroy();
1074
+ }
1075
+ }, U = {
1076
+ name: "list-navigable",
1077
+ create(e, t) {
1078
+ return new c(e, {
1079
+ itemSelector: t["item-selector"] ?? void 0,
1080
+ ariaAttr: t["aria-attr"] ?? void 0,
1081
+ autoSync: t["auto-sync"] !== "false",
1082
+ orientation: t.orientation ?? void 0,
1083
+ wrap: t.wrap !== "false",
1084
+ disabled: t.disabled === "true"
1085
+ });
1086
+ },
1087
+ destroy(e) {
1088
+ e.destroy();
1089
+ }
1090
+ }, W = {
1091
+ name: "dialogable",
1092
+ create(e) {
1093
+ return new u(e);
1094
+ },
1095
+ destroy(e) {
1096
+ e.destroy();
1097
+ }
1098
+ }, G = {
1099
+ name: "draggable",
1100
+ create(e, t) {
1101
+ return new a(e, {
1102
+ selector: t.selector ?? "",
1103
+ dropZoneSelector: t["drop-zone-selector"] ?? "",
1104
+ axis: t.axis ?? "both",
1105
+ mode: t.mode ?? "drop",
1106
+ disabled: t.disabled === "true"
1107
+ });
1108
+ },
1109
+ destroy(e) {
1110
+ e.destroy();
1111
+ },
1112
+ update(e, t) {
1113
+ "selector" in t && (e.selector = t.selector), "drop-zone-selector" in t && (e.dropZoneSelector = t["drop-zone-selector"]), "axis" in t && (e.axis = t.axis), "mode" in t && (e.mode = t.mode), "disabled" in t && (e.disabled = t.disabled === "true");
1114
+ }
1115
+ }, K = {
1116
+ name: "range-selectable",
1117
+ create(e, t) {
1118
+ return new p(e, {
1119
+ selector: t.selector ?? "",
1120
+ mode: t.mode ?? "drag",
1121
+ disabled: t.disabled === "true"
1122
+ });
1123
+ },
1124
+ destroy(e) {
1125
+ e.destroy();
1126
+ },
1127
+ update(e, t) {
1128
+ "selector" in t && (e.selector = t.selector), "mode" in t && (e.mode = t.mode), "disabled" in t && (e.disabled = t.disabled === "true");
1129
+ }
1130
+ }, q = {
1131
+ name: "resizable",
1132
+ create(e, t) {
1133
+ return new te(e, {
1134
+ handleSelector: t["handle-selector"] ?? "",
1135
+ axis: t.axis ?? "horizontal",
1136
+ min: t.min ? Number(t.min) : void 0,
1137
+ max: t.max ? Number(t.max) : void 0,
1138
+ disabled: t.disabled === "true",
1139
+ reverse: t.reverse === "true"
1140
+ });
1141
+ },
1142
+ destroy(e) {
1143
+ e.destroy();
1144
+ },
1145
+ update(e, t) {
1146
+ "axis" in t && (e.axis = t.axis), "min" in t && (e.min = Number(t.min)), "max" in t && (e.max = Number(t.max)), "disabled" in t && (e.disabled = t.disabled === "true"), "reverse" in t && (e.reverse = t.reverse === "true");
1147
+ }
1148
+ }, J = {
1149
+ name: "virtualizable",
1150
+ create(e, t) {
1151
+ return new m(e, {
1152
+ itemHeight: t["item-height"] ? Number(t["item-height"]) : void 0,
1153
+ overscan: t.overscan ? Number(t.overscan) : void 0
1154
+ });
1155
+ },
1156
+ destroy(e) {
1157
+ e.destroy();
1158
+ },
1159
+ update(e, t) {
1160
+ "item-height" in t && (e.itemHeight = Number(t["item-height"])), "overscan" in t && (e.overscan = Number(t.overscan));
1161
+ }
1162
+ }, Y = {
1163
+ name: "selectable",
1164
+ create(e, t) {
1165
+ return new h(e, {
1166
+ selector: t.selector ?? "",
1167
+ mode: t.mode ?? "multiple",
1168
+ disabled: t.disabled === "true"
1169
+ });
1170
+ },
1171
+ destroy(e) {
1172
+ e.destroy();
1173
+ },
1174
+ update(e, t) {
1175
+ "selector" in t && (e.selector = t.selector), "mode" in t && (e.mode = t.mode), "disabled" in t && (e.disabled = t.disabled === "true");
1176
+ }
1177
+ }, X = {
1178
+ name: "searchable",
1179
+ create(e, t) {
1180
+ return new g(e, {
1181
+ selector: t.selector ?? "",
1182
+ textField: t["text-field"] ?? void 0,
1183
+ disabled: t.disabled === "true"
1184
+ });
1185
+ },
1186
+ destroy(e) {
1187
+ e.destroy();
1188
+ },
1189
+ update(e, t) {
1190
+ "selector" in t && (e.selector = t.selector), "disabled" in t && (e.disabled = t.disabled === "true");
1191
+ }
1192
+ }, Z = {
1193
+ name: "clippable",
1194
+ create(e, t) {
1195
+ return new y(e, {
1196
+ selector: t.selector ?? "",
1197
+ disabled: t.disabled === "true"
1198
+ });
1199
+ },
1200
+ destroy(e) {
1201
+ e.destroy();
1202
+ },
1203
+ update(e, t) {
1204
+ "selector" in t && (e.selector = t.selector), "disabled" in t && (e.disabled = t.disabled === "true");
1205
+ }
1206
+ }, Q = {
1207
+ name: "swipeable",
1208
+ create(e, t) {
1209
+ return new _(e, {
1210
+ threshold: t.threshold ? Number(t.threshold) : void 0,
1211
+ velocityThreshold: t["velocity-threshold"] ? Number(t["velocity-threshold"]) : void 0,
1212
+ axis: t.axis ?? void 0,
1213
+ disabled: t.disabled === "true"
1214
+ });
1215
+ },
1216
+ destroy(e) {
1217
+ e.destroy();
1218
+ },
1219
+ update(e, t) {
1220
+ "threshold" in t && (e.threshold = Number(t.threshold)), "velocity-threshold" in t && (e.velocityThreshold = Number(t["velocity-threshold"])), "axis" in t && (e.axis = t.axis), "disabled" in t && (e.disabled = t.disabled === "true");
1221
+ }
1222
+ }, $ = {
1223
+ name: "editable",
1224
+ create(e, t) {
1225
+ return new v(e, {
1226
+ trigger: t.trigger ?? void 0,
1227
+ disabled: t.disabled === "true"
1228
+ });
1229
+ },
1230
+ destroy(e) {
1231
+ e.destroy();
1232
+ },
1233
+ update(e, t) {
1234
+ "trigger" in t && (e.trigger = t.trigger), "disabled" in t && (e.disabled = t.disabled === "true");
1235
+ }
1236
+ };
1237
+ /**
1238
+ * Register all built-in trait adapters with the global trait registry.
1239
+ * Call once at app startup to enable `traits="..."` attribute on UIElement subclasses.
1240
+ */
1241
+ function ae() {
1242
+ d(A), d(j), d(M), d(N), d(P), d(F), d(I), d(L), d(R), d(z), d(B), d(V), d(H), d(U), d(W), d(G), d(K), d(q), d(J), d(Y), d(X), d(Z), d(Q), d($);
1243
+ }
1244
+ export { w as A, m as B, M as C, O as D, k as E, y as F, f as G, ne as H, v as I, _ as L, S as M, x as N, D as O, b as P, g as R, N as S, A as T, ie as U, p as V, re as W, R as _, X as a, F as b, q as c, W as d, U as f, z as g, B as h, Z as i, C as j, T as k, K as l, V as m, $ as n, Y as o, H as p, Q as r, J as s, ae as t, G as u, L as v, j as w, P as x, I as y, h as z };