@soybeanjs/ui 0.16.0 → 0.18.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 (412) hide show
  1. package/README.md +27 -5
  2. package/README.zh-CN.md +27 -5
  3. package/dist/_virtual/_rolldown/runtime.js +1 -0
  4. package/dist/components/accordion/accordion.js +1 -1
  5. package/dist/components/accordion/accordion.vue.d.ts +1 -1
  6. package/dist/components/accordion/index.d.ts +1 -2
  7. package/dist/components/accordion/types.d.ts +17 -1
  8. package/dist/components/affix/affix.js +1 -1
  9. package/dist/components/affix/index.d.ts +2 -1
  10. package/dist/components/affix/types.d.ts +10 -1
  11. package/dist/components/alert/alert.js +1 -1
  12. package/dist/components/alert/index.d.ts +1 -2
  13. package/dist/components/alert/types.d.ts +25 -1
  14. package/dist/components/anchor/anchor.js +1 -1
  15. package/dist/components/anchor/anchor.vue.d.ts +1 -1
  16. package/dist/components/anchor/index.d.ts +2 -3
  17. package/dist/components/anchor/types.d.ts +30 -3
  18. package/dist/components/autocomplete/autocomplete.js +1 -1
  19. package/dist/components/autocomplete/autocomplete.vue.d.ts +2 -1
  20. package/dist/components/autocomplete/index.d.ts +2 -3
  21. package/dist/components/autocomplete/types.d.ts +18 -4
  22. package/dist/components/avatar/avatar.js +1 -1
  23. package/dist/components/avatar/avatar.vue.d.ts +2 -8
  24. package/dist/components/avatar/index.d.ts +1 -2
  25. package/dist/components/avatar/types.d.ts +14 -12
  26. package/dist/components/backtop/backtop.js +1 -1
  27. package/dist/components/backtop/backtop.vue.d.ts +3 -3
  28. package/dist/components/backtop/index.d.ts +2 -2
  29. package/dist/components/backtop/types.d.ts +28 -1
  30. package/dist/components/backtop/variants.js +1 -1
  31. package/dist/components/badge/badge.js +1 -1
  32. package/dist/components/badge/badge.vue.d.ts +2 -6
  33. package/dist/components/badge/index.d.ts +1 -2
  34. package/dist/components/badge/types.d.ts +21 -4
  35. package/dist/components/badge/variants.js +1 -1
  36. package/dist/components/bottom-sheet/bottom-sheet.js +1 -1
  37. package/dist/components/bottom-sheet/index.d.ts +2 -1
  38. package/dist/components/bottom-sheet/types.d.ts +17 -1
  39. package/dist/components/breadcrumb/breadcrumb.js +1 -1
  40. package/dist/components/breadcrumb/index.d.ts +3 -2
  41. package/dist/components/breadcrumb/types.d.ts +16 -1
  42. package/dist/components/button/button-group.js +1 -1
  43. package/dist/components/button/button-icon.js +1 -1
  44. package/dist/components/button/button-icon.vue.d.ts +1 -1
  45. package/dist/components/button/button-link.js +1 -1
  46. package/dist/components/button/button-loading.js +1 -1
  47. package/dist/components/button/button-loading.vue.d.ts +1 -1
  48. package/dist/components/button/button.js +1 -1
  49. package/dist/components/button/button.vue.d.ts +2 -2
  50. package/dist/components/button/types.d.ts +40 -3
  51. package/dist/components/calendar/calendar.js +1 -1
  52. package/dist/components/calendar/index.d.ts +1 -2
  53. package/dist/components/calendar/types.d.ts +20 -1
  54. package/dist/components/card/card-collapsible-trigger.js +1 -1
  55. package/dist/components/card/card-collapsible-trigger.vue.d.ts +1 -1
  56. package/dist/components/card/card.js +1 -1
  57. package/dist/components/card/index.d.ts +1 -2
  58. package/dist/components/card/types.d.ts +11 -1
  59. package/dist/components/carousel/carousel.js +1 -1
  60. package/dist/components/carousel/carousel.vue.d.ts +16 -19
  61. package/dist/components/carousel/index.d.ts +2 -7
  62. package/dist/components/carousel/index.js +1 -1
  63. package/dist/components/carousel/types.d.ts +32 -4
  64. package/dist/components/carousel/variants.js +1 -1
  65. package/dist/components/checkbox/checkbox-card-group.js +1 -1
  66. package/dist/components/checkbox/checkbox-card.js +1 -1
  67. package/dist/components/checkbox/checkbox-group.js +1 -1
  68. package/dist/components/checkbox/checkbox.js +1 -1
  69. package/dist/components/checkbox/index.d.ts +2 -1
  70. package/dist/components/checkbox/types.d.ts +80 -1
  71. package/dist/components/clipboard/clipboard.js +1 -1
  72. package/dist/components/clipboard/clipboard.vue.d.ts +2 -2
  73. package/dist/components/clipboard/index.d.ts +2 -1
  74. package/dist/components/clipboard/types.d.ts +22 -1
  75. package/dist/components/collapsible/collapsible.js +1 -1
  76. package/dist/components/collapsible/index.d.ts +3 -2
  77. package/dist/components/collapsible/types.d.ts +13 -1
  78. package/dist/components/color-area/color-area.js +1 -1
  79. package/dist/components/color-area/color-area.vue.d.ts +2 -2
  80. package/dist/components/color-area/index.d.ts +1 -2
  81. package/dist/components/color-area/types.d.ts +23 -1
  82. package/dist/components/color-field/color-field.js +1 -1
  83. package/dist/components/color-field/index.d.ts +1 -2
  84. package/dist/components/color-field/types.d.ts +20 -1
  85. package/dist/components/color-picker/color-picker.js +1 -1
  86. package/dist/components/color-picker/color-picker.vue.d.ts +8 -8
  87. package/dist/components/color-picker/index.d.ts +2 -1
  88. package/dist/components/color-picker/types.d.ts +96 -3
  89. package/dist/components/color-slider/color-slider.js +1 -1
  90. package/dist/components/color-slider/color-slider.vue.d.ts +3 -3
  91. package/dist/components/color-slider/index.d.ts +1 -2
  92. package/dist/components/color-slider/types.d.ts +25 -1
  93. package/dist/components/color-swatch/color-swatch.js +1 -1
  94. package/dist/components/color-swatch/index.d.ts +2 -4
  95. package/dist/components/color-swatch/types.d.ts +22 -1
  96. package/dist/components/color-swatch-picker/color-swatch-picker.js +1 -1
  97. package/dist/components/color-swatch-picker/color-swatch-picker.vue.d.ts +2 -2
  98. package/dist/components/color-swatch-picker/index.d.ts +1 -2
  99. package/dist/components/color-swatch-picker/types.d.ts +38 -1
  100. package/dist/components/combobox/combobox.js +1 -1
  101. package/dist/components/combobox/index.d.ts +1 -2
  102. package/dist/components/combobox/types.d.ts +19 -1
  103. package/dist/components/command/command.js +1 -1
  104. package/dist/components/command/command.vue.d.ts +4 -3
  105. package/dist/components/command/index.d.ts +2 -3
  106. package/dist/components/command/types.d.ts +18 -4
  107. package/dist/components/config-provider/config-provider.js +1 -1
  108. package/dist/components/config-provider/config-provider.vue.d.ts +6 -9
  109. package/dist/components/config-provider/index.d.ts +2 -1
  110. package/dist/components/config-provider/types.d.ts +22 -17
  111. package/dist/components/context-menu/context-menu-checkbox.js +1 -1
  112. package/dist/components/context-menu/context-menu-checkbox.vue.d.ts +1 -1
  113. package/dist/components/context-menu/context-menu-radio.js +1 -1
  114. package/dist/components/context-menu/context-menu-radio.vue.d.ts +1 -1
  115. package/dist/components/context-menu/context-menu-wrapper.js +1 -1
  116. package/dist/components/context-menu/context-menu.js +1 -1
  117. package/dist/components/context-menu/context-menu.vue.d.ts +1 -1
  118. package/dist/components/context-menu/index.d.ts +5 -4
  119. package/dist/components/context-menu/index.js +1 -1
  120. package/dist/components/context-menu/types.d.ts +35 -1
  121. package/dist/components/date-field/date-field.js +1 -1
  122. package/dist/components/date-field/index.d.ts +1 -2
  123. package/dist/components/date-field/types.d.ts +16 -1
  124. package/dist/components/date-picker/date-picker.js +1 -1
  125. package/dist/components/date-picker/date-picker.vue.d.ts +3 -1
  126. package/dist/components/date-picker/index.d.ts +1 -2
  127. package/dist/components/date-picker/types.d.ts +23 -15
  128. package/dist/components/date-picker/variants.js +1 -1
  129. package/dist/components/date-range-field/date-range-field.js +1 -1
  130. package/dist/components/date-range-field/index.d.ts +1 -2
  131. package/dist/components/date-range-field/types.d.ts +47 -2
  132. package/dist/components/date-range-picker/date-range-picker.js +1 -1
  133. package/dist/components/date-range-picker/index.d.ts +1 -2
  134. package/dist/components/date-range-picker/types.d.ts +36 -2
  135. package/dist/components/dialog/dialog-provider.js +1 -1
  136. package/dist/components/dialog/dialog.js +1 -1
  137. package/dist/components/dialog/dialog.vue.d.ts +4 -4
  138. package/dist/components/dialog/index.d.ts +2 -1
  139. package/dist/components/dialog/index.js +1 -1
  140. package/dist/components/dialog/types.d.ts +17 -1
  141. package/dist/components/drawer/drawer.js +1 -1
  142. package/dist/components/drawer/drawer.vue.d.ts +4 -4
  143. package/dist/components/drawer/types.d.ts +13 -1
  144. package/dist/components/dropdown-menu/dropdown-menu-checkbox.js +1 -1
  145. package/dist/components/dropdown-menu/dropdown-menu-checkbox.vue.d.ts +1 -1
  146. package/dist/components/dropdown-menu/dropdown-menu-radio.js +1 -1
  147. package/dist/components/dropdown-menu/dropdown-menu-radio.vue.d.ts +1 -1
  148. package/dist/components/dropdown-menu/dropdown-menu-wrapper.js +1 -1
  149. package/dist/components/dropdown-menu/dropdown-menu.js +1 -1
  150. package/dist/components/dropdown-menu/dropdown-menu.vue.d.ts +1 -1
  151. package/dist/components/dropdown-menu/index.d.ts +2 -1
  152. package/dist/components/dropdown-menu/types.d.ts +35 -1
  153. package/dist/components/editable/editable.js +1 -1
  154. package/dist/components/editable/index.d.ts +2 -3
  155. package/dist/components/editable/types.d.ts +42 -2
  156. package/dist/components/empty/empty.js +1 -1
  157. package/dist/components/empty/empty.vue.d.ts +2 -8
  158. package/dist/components/empty/index.d.ts +2 -4
  159. package/dist/components/empty/types.d.ts +22 -14
  160. package/dist/components/empty/variants.js +1 -1
  161. package/dist/components/form/form-field-array.js +1 -0
  162. package/dist/components/form/form-field-base.js +1 -1
  163. package/dist/components/form/form-field-base.vue.d.ts +3 -16
  164. package/dist/components/form/form-field.js +1 -0
  165. package/dist/components/form/form.js +1 -1
  166. package/dist/components/form/form.vue.d.ts +2 -2
  167. package/dist/components/form/index.d.ts +2 -3
  168. package/dist/components/form/types.d.ts +36 -45
  169. package/dist/components/form/use-form.d.ts +3 -40
  170. package/dist/components/form/use-form.js +1 -1
  171. package/dist/components/form/variants.js +1 -1
  172. package/dist/components/hover-card/hover-card.js +1 -1
  173. package/dist/components/hover-card/index.d.ts +1 -2
  174. package/dist/components/hover-card/types.d.ts +35 -1
  175. package/dist/components/icon/types.d.ts +7 -1
  176. package/dist/components/input/index.d.ts +4 -3
  177. package/dist/components/input/index.js +1 -1
  178. package/dist/components/input/input.js +1 -1
  179. package/dist/components/input/input.vue.d.ts +2 -7
  180. package/dist/components/input/types.d.ts +18 -15
  181. package/dist/components/input/variants.js +1 -1
  182. package/dist/components/input-number/index.d.ts +2 -1
  183. package/dist/components/input-number/input-number.js +1 -1
  184. package/dist/components/input-number/types.d.ts +26 -1
  185. package/dist/components/input-otp/index.d.ts +1 -2
  186. package/dist/components/input-otp/index.js +1 -1
  187. package/dist/components/input-otp/input-otp.js +1 -1
  188. package/dist/components/input-otp/input-otp.vue.d.ts +2 -2
  189. package/dist/components/input-otp/types.d.ts +19 -1
  190. package/dist/components/kbd/index.d.ts +4 -2
  191. package/dist/components/kbd/kbd.js +1 -1
  192. package/dist/components/kbd/types.d.ts +18 -2
  193. package/dist/components/label/label.js +1 -1
  194. package/dist/components/label/types.d.ts +11 -1
  195. package/dist/components/layout/index.d.ts +2 -1
  196. package/dist/components/layout/index.js +1 -1
  197. package/dist/components/layout/layout-classic.js +1 -1
  198. package/dist/components/layout/layout.js +1 -1
  199. package/dist/components/layout/types.d.ts +38 -1
  200. package/dist/components/link/index.d.ts +4 -2
  201. package/dist/components/link/link.js +1 -1
  202. package/dist/components/link/types.d.ts +8 -1
  203. package/dist/components/list/index.d.ts +3 -3
  204. package/dist/components/list/list-item.js +1 -1
  205. package/dist/components/list/list.js +1 -1
  206. package/dist/components/list/types.d.ts +32 -1
  207. package/dist/components/menu/context.js +1 -1
  208. package/dist/components/menu/index.d.ts +10 -2
  209. package/dist/components/menu/index.js +1 -1
  210. package/dist/components/menu/types.d.ts +14 -1
  211. package/dist/components/menubar/index.d.ts +2 -1
  212. package/dist/components/menubar/menubar.js +1 -1
  213. package/dist/components/menubar/menubar.vue.d.ts +1 -1
  214. package/dist/components/menubar/types.d.ts +20 -1
  215. package/dist/components/month-picker/index.d.ts +1 -2
  216. package/dist/components/month-picker/month-picker.js +1 -1
  217. package/dist/components/month-picker/types.d.ts +44 -2
  218. package/dist/components/month-range-picker/index.d.ts +1 -2
  219. package/dist/components/month-range-picker/month-range-picker.js +1 -1
  220. package/dist/components/month-range-picker/types.d.ts +44 -2
  221. package/dist/components/navigation-menu/index.d.ts +1 -2
  222. package/dist/components/navigation-menu/navigation-menu-option.js +1 -1
  223. package/dist/components/navigation-menu/navigation-menu-sub-option.js +1 -1
  224. package/dist/components/navigation-menu/navigation-menu.js +1 -1
  225. package/dist/components/navigation-menu/types.d.ts +85 -2
  226. package/dist/components/page-tabs/index.d.ts +2 -1
  227. package/dist/components/page-tabs/page-tabs.js +1 -1
  228. package/dist/components/page-tabs/page-tabs.vue.d.ts +1 -1
  229. package/dist/components/page-tabs/types.d.ts +79 -3
  230. package/dist/components/pagination/index.d.ts +1 -2
  231. package/dist/components/pagination/pagination.js +1 -1
  232. package/dist/components/pagination/types.d.ts +18 -8
  233. package/dist/components/password/password.js +1 -1
  234. package/dist/components/password/types.d.ts +20 -1
  235. package/dist/components/popconfirm/popconfirm-cancel.js +1 -1
  236. package/dist/components/popconfirm/popconfirm-confirm.js +1 -1
  237. package/dist/components/popconfirm/popconfirm.js +1 -1
  238. package/dist/components/popconfirm/types.d.ts +143 -4
  239. package/dist/components/popover/index.d.ts +1 -2
  240. package/dist/components/popover/popover.js +1 -1
  241. package/dist/components/popover/types.d.ts +39 -2
  242. package/dist/components/progress/index.d.ts +6 -6
  243. package/dist/components/progress/progress-circle.js +1 -1
  244. package/dist/components/progress/progress-provider.js +1 -1
  245. package/dist/components/progress/progress.js +1 -1
  246. package/dist/components/progress/types.d.ts +43 -1
  247. package/dist/components/radio-group/index.d.ts +2 -3
  248. package/dist/components/radio-group/radio-card-group.js +1 -1
  249. package/dist/components/radio-group/radio-card-group.vue.d.ts +1 -1
  250. package/dist/components/radio-group/radio-card.js +1 -1
  251. package/dist/components/radio-group/radio-group.js +1 -1
  252. package/dist/components/radio-group/radio-group.vue.d.ts +1 -1
  253. package/dist/components/radio-group/radio.js +1 -1
  254. package/dist/components/radio-group/types.d.ts +76 -1
  255. package/dist/components/range-calendar/index.d.ts +1 -2
  256. package/dist/components/range-calendar/range-calendar.js +1 -1
  257. package/dist/components/range-calendar/types.d.ts +127 -1
  258. package/dist/components/scroll-area/index.d.ts +1 -2
  259. package/dist/components/scroll-area/scroll-area.js +1 -1
  260. package/dist/components/scroll-area/types.d.ts +29 -1
  261. package/dist/components/segment/index.d.ts +2 -1
  262. package/dist/components/segment/segment.js +1 -1
  263. package/dist/components/segment/types.d.ts +26 -1
  264. package/dist/components/select/index.d.ts +2 -3
  265. package/dist/components/select/select.js +1 -1
  266. package/dist/components/select/select.vue.d.ts +1 -1
  267. package/dist/components/select/types.d.ts +18 -3
  268. package/dist/components/separator/index.d.ts +1 -2
  269. package/dist/components/separator/separator.js +1 -1
  270. package/dist/components/separator/types.d.ts +26 -1
  271. package/dist/components/skeleton/skeleton.js +1 -1
  272. package/dist/components/skeleton/types.d.ts +14 -1
  273. package/dist/components/slider/index.d.ts +1 -2
  274. package/dist/components/slider/slider.js +1 -1
  275. package/dist/components/slider/types.d.ts +29 -1
  276. package/dist/components/spinner/spinner.js +1 -1
  277. package/dist/components/spinner/types.d.ts +16 -1
  278. package/dist/components/splitter/index.d.ts +2 -3
  279. package/dist/components/splitter/splitter-group.js +1 -1
  280. package/dist/components/splitter/splitter-panel.js +1 -1
  281. package/dist/components/splitter/splitter-panel.vue.d.ts +2 -2
  282. package/dist/components/splitter/splitter-resize-handle.js +1 -1
  283. package/dist/components/splitter/splitter-resize-handle.vue.d.ts +2 -2
  284. package/dist/components/splitter/types.d.ts +43 -2
  285. package/dist/components/stepper/index.d.ts +1 -2
  286. package/dist/components/stepper/stepper.js +1 -1
  287. package/dist/components/stepper/types.d.ts +56 -1
  288. package/dist/components/switch/index.d.ts +1 -2
  289. package/dist/components/switch/switch.js +1 -1
  290. package/dist/components/switch/switch.vue.d.ts +4 -4
  291. package/dist/components/switch/types.d.ts +29 -1
  292. package/dist/components/table/hooks.js +1 -1
  293. package/dist/components/table/index.d.ts +2 -1
  294. package/dist/components/table/index.js +1 -1
  295. package/dist/components/table/table.js +1 -1
  296. package/dist/components/table/types.d.ts +76 -1
  297. package/dist/components/tabs/index.d.ts +2 -3
  298. package/dist/components/tabs/tabs.js +1 -1
  299. package/dist/components/tabs/types.d.ts +19 -1
  300. package/dist/components/tag/tag.js +1 -1
  301. package/dist/components/tag/types.d.ts +26 -1
  302. package/dist/components/tags-input/index.d.ts +3 -2
  303. package/dist/components/tags-input/tags-input-item-delete.js +1 -1
  304. package/dist/components/tags-input/tags-input.js +1 -1
  305. package/dist/components/tags-input/tags-input.vue.d.ts +1 -1
  306. package/dist/components/tags-input/types.d.ts +17 -1
  307. package/dist/components/textarea/index.d.ts +1 -2
  308. package/dist/components/textarea/textarea.js +1 -1
  309. package/dist/components/textarea/types.d.ts +23 -1
  310. package/dist/components/time-field/index.d.ts +1 -2
  311. package/dist/components/time-field/time-field.js +1 -1
  312. package/dist/components/time-field/types.d.ts +38 -2
  313. package/dist/components/time-picker/index.d.ts +1 -2
  314. package/dist/components/time-picker/time-picker.js +1 -1
  315. package/dist/components/time-picker/types.d.ts +35 -2
  316. package/dist/components/time-range-field/index.d.ts +1 -2
  317. package/dist/components/time-range-field/time-range-field.js +1 -1
  318. package/dist/components/time-range-field/types.d.ts +47 -2
  319. package/dist/components/time-range-picker/index.d.ts +1 -2
  320. package/dist/components/time-range-picker/time-range-picker.js +1 -1
  321. package/dist/components/time-range-picker/types.d.ts +35 -2
  322. package/dist/components/toast/index.d.ts +3 -3
  323. package/dist/components/toast/toast-provider.js +1 -1
  324. package/dist/components/toast/types.d.ts +11 -2
  325. package/dist/components/toggle/toggle.js +1 -1
  326. package/dist/components/toggle/toggle.vue.d.ts +3 -3
  327. package/dist/components/toggle/types.d.ts +20 -1
  328. package/dist/components/toggle-group/index.d.ts +1 -2
  329. package/dist/components/toggle-group/toggle-group-item.js +1 -1
  330. package/dist/components/toggle-group/toggle-group-item.vue.d.ts +1 -1
  331. package/dist/components/toggle-group/toggle-group.js +1 -1
  332. package/dist/components/toggle-group/toggle-group.vue.d.ts +1 -1
  333. package/dist/components/toggle-group/types.d.ts +23 -1
  334. package/dist/components/toolbar/index.d.ts +3 -2
  335. package/dist/components/toolbar/toolbar.js +1 -1
  336. package/dist/components/toolbar/types.d.ts +11 -1
  337. package/dist/components/tooltip/index.d.ts +1 -2
  338. package/dist/components/tooltip/tooltip.js +1 -1
  339. package/dist/components/tooltip/types.d.ts +38 -1
  340. package/dist/components/tree/index.d.ts +3 -2
  341. package/dist/components/tree/tree-virtualizer.js +1 -1
  342. package/dist/components/tree/tree-virtualizer.vue.d.ts +2 -1
  343. package/dist/components/tree/tree.js +1 -1
  344. package/dist/components/tree/tree.vue.d.ts +2 -1
  345. package/dist/components/tree/types.d.ts +15 -1
  346. package/dist/components/tree-menu/index.d.ts +2 -1
  347. package/dist/components/tree-menu/tree-menu-option-slot.js +1 -1
  348. package/dist/components/tree-menu/tree-menu-option.js +1 -1
  349. package/dist/components/tree-menu/tree-menu-options.js +1 -1
  350. package/dist/components/tree-menu/tree-menu-styled-item.js +1 -1
  351. package/dist/components/tree-menu/tree-menu.js +1 -1
  352. package/dist/components/tree-menu/types.d.ts +111 -6
  353. package/dist/components/virtualizer/index.d.ts +3 -2
  354. package/dist/components/virtualizer/types.d.ts +10 -1
  355. package/dist/components/virtualizer/virtualizer.js +1 -1
  356. package/dist/components/year-picker/index.d.ts +1 -2
  357. package/dist/components/year-picker/types.d.ts +44 -2
  358. package/dist/components/year-picker/year-picker.js +1 -1
  359. package/dist/components/year-range-picker/index.d.ts +1 -2
  360. package/dist/components/year-range-picker/types.d.ts +44 -2
  361. package/dist/components/year-range-picker/year-range-picker.js +1 -1
  362. package/dist/constants/components.d.ts +18 -18
  363. package/dist/constants/components.js +1 -1
  364. package/dist/index.d.ts +206 -180
  365. package/dist/index.js +1 -1
  366. package/dist/styles.css +77 -52
  367. package/dist/theme/merge.d.ts +1 -1
  368. package/dist/theme/shared.d.ts +1 -1
  369. package/package.json +14 -8
  370. package/dist/components/carousel/carousel-content.js +0 -1
  371. package/dist/components/carousel/carousel-content.vue.d.ts +0 -18
  372. package/dist/components/carousel/carousel-item.js +0 -1
  373. package/dist/components/carousel/carousel-item.vue.d.ts +0 -18
  374. package/dist/components/carousel/carousel-next.js +0 -1
  375. package/dist/components/carousel/carousel-next.vue.d.ts +0 -22
  376. package/dist/components/carousel/carousel-previous.js +0 -1
  377. package/dist/components/carousel/carousel-previous.vue.d.ts +0 -22
  378. package/dist/components/empty/variants.d.ts +0 -57
  379. package/dist/components/form/context.js +0 -1
  380. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Alignment.d.ts +0 -4
  381. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Animations.d.ts +0 -11
  382. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Axis.d.ts +0 -16
  383. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Counter.d.ts +0 -9
  384. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/DragHandler.d.ts +0 -13
  385. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/DragTracker.d.ts +0 -4
  386. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/EmblaCarousel.d.ts +0 -31
  387. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Engine.d.ts +0 -67
  388. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/EventHandler.d.ts +0 -29
  389. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/EventStore.d.ts +0 -10
  390. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Limit.d.ts +0 -13
  391. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/NodeRects.d.ts +0 -11
  392. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Options.d.ts +0 -43
  393. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/OptionsHandler.d.ts +0 -11
  394. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/PercentOfView.d.ts +0 -6
  395. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Plugins.d.ts +0 -20
  396. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/ResizeHandler.d.ts +0 -11
  397. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/ScrollBody.d.ts +0 -14
  398. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/ScrollBounds.d.ts +0 -8
  399. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/ScrollContain.d.ts +0 -4
  400. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/ScrollLooper.d.ts +0 -6
  401. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/ScrollProgress.d.ts +0 -6
  402. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/ScrollTarget.d.ts +0 -12
  403. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/ScrollTo.d.ts +0 -7
  404. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/SlideFocus.d.ts +0 -10
  405. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/SlideLooper.d.ts +0 -19
  406. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/SlideRegistry.d.ts +0 -6
  407. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/SlidesHandler.d.ts +0 -11
  408. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/SlidesInView.d.ts +0 -9
  409. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/SlidesToScroll.d.ts +0 -7
  410. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Translate.d.ts +0 -8
  411. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Vector1d.d.ts +0 -9
  412. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/utils.d.ts +0 -4
@@ -1,16 +1,44 @@
1
1
  import { ThemeColor, ThemeSize } from "../../theme/types.js";
2
- import { ClassValue, SliderRangeProps, SliderRootEmits, SliderRootProps, SliderThumbProps, SliderTrackProps, SliderUi } from "@soybeanjs/headless";
2
+ import { SliderRangeProps, SliderRootEmits, SliderRootProps, SliderThumbProps, SliderTrackProps, SliderUi } from "@soybeanjs/headless/slider";
3
+ import { ClassValue } from "@soybeanjs/headless/types";
3
4
 
4
5
  //#region src/components/slider/types.d.ts
6
+ /**
7
+ * Properties for the Slider component.
8
+ */
5
9
  interface SliderProps extends SliderRootProps {
10
+ /**
11
+ * Additional class names applied to the root element.
12
+ */
6
13
  class?: ClassValue;
14
+ /**
15
+ * Theme color of the component.
16
+ */
7
17
  color?: ThemeColor;
18
+ /**
19
+ * Visual size of the component.
20
+ */
8
21
  size?: ThemeSize;
22
+ /**
23
+ * Per-slot class overrides for the component.
24
+ */
9
25
  ui?: Partial<SliderUi>;
26
+ /**
27
+ * Properties forwarded to the track element.
28
+ */
10
29
  trackProps?: SliderTrackProps;
30
+ /**
31
+ * Properties forwarded to the range element.
32
+ */
11
33
  rangeProps?: SliderRangeProps;
34
+ /**
35
+ * Properties forwarded to the thumb element.
36
+ */
12
37
  thumbProps?: Omit<SliderThumbProps, 'index'>;
13
38
  }
39
+ /**
40
+ * Events for the Slider component.
41
+ */
14
42
  type SliderEmits = SliderRootEmits;
15
43
  //#endregion
16
44
  export { SliderEmits, SliderProps };
@@ -1 +1 @@
1
- import{cn as e}from"../../theme/merge.js";import"../../theme/index.js";import t from"../icon/icon.js";import{spinnerVariants as n}from"./variants.js";import{computed as r,createBlock as i,defineComponent as a,mergeProps as o,openBlock as s,unref as c}from"vue";import{useOmitProps as l}from"@soybeanjs/headless/composables";const u=a({name:`SSpinner`,__name:`spinner`,props:{class:{},color:{},icon:{default:`svg-spinners:270-ring`},size:{},ssr:{type:Boolean},customise:{},id:{},style:{},title:{},mode:{},flip:{},horizontalFlip:{type:Boolean},verticalFlip:{type:Boolean},rotate:{},hFlip:{type:Boolean},vFlip:{type:Boolean},width:{},height:{},inline:{type:Boolean},ariaHidden:{type:Boolean}},setup(a){let u=a,d=l(u,[`class`,`color`,`size`]),f=r(()=>e(n({color:u.color,size:u.size}),u.class));return(e,n)=>(s(),i(t,o(c(d),{class:f.value}),null,16,[`class`]))}});export{u as default};
1
+ import{cn as e}from"../../theme/merge.js";import"../../theme/index.js";import t from"../icon/icon.js";import{spinnerVariants as n}from"./variants.js";import{computed as r,createBlock as i,defineComponent as a,mergeProps as o,openBlock as s,unref as c}from"vue";import{useOmitProps as l}from"@soybeanjs/headless/composables";const u=a({name:`SSpinner`,__name:`spinner`,props:{class:{type:[Boolean,null,String,Object,Array]},color:{},icon:{default:`svg-spinners:270-ring`},size:{},ssr:{type:Boolean},customise:{},id:{},style:{},title:{},mode:{},flip:{},horizontalFlip:{type:Boolean},verticalFlip:{type:Boolean},rotate:{},hFlip:{type:Boolean},vFlip:{type:Boolean},width:{},height:{},inline:{type:Boolean},ariaHidden:{type:Boolean}},setup(a){let u=a,d=l(u,[`class`,`color`,`size`]),f=r(()=>e(n({color:u.color,size:u.size}),u.class));return(e,n)=>(s(),i(t,o(c(d),{class:f.value}),null,16,[`class`]))}});export{u as default};
@@ -1,11 +1,23 @@
1
1
  import { ThemeColor, ThemeSize } from "../../theme/types.js";
2
2
  import { IconProps } from "../icon/types.js";
3
- import { ClassValue } from "@soybeanjs/headless";
3
+ import { ClassValue } from "@soybeanjs/headless/types";
4
4
 
5
5
  //#region src/components/spinner/types.d.ts
6
+ /**
7
+ * Type information for SpinnerIcon.
8
+ */
6
9
  type SpinnerIcon = `svg-spinners:${string}`;
10
+ /**
11
+ * Properties for the Spinner component.
12
+ */
7
13
  interface SpinnerProps extends Omit<IconProps, 'icon' | 'color'> {
14
+ /**
15
+ * Additional class names applied to the root element.
16
+ */
8
17
  class?: ClassValue;
18
+ /**
19
+ * Theme color of the component.
20
+ */
9
21
  color?: ThemeColor;
10
22
  /**
11
23
  * The spinner icon name from the Iconify svg-spinners collection.
@@ -13,6 +25,9 @@ interface SpinnerProps extends Omit<IconProps, 'icon' | 'color'> {
13
25
  * @default 'svg-spinners:270-ring'
14
26
  */
15
27
  icon?: SpinnerIcon;
28
+ /**
29
+ * Visual size of the component.
30
+ */
16
31
  size?: ThemeSize;
17
32
  }
18
33
  //#endregion
@@ -1,5 +1,4 @@
1
+ import { SplitterGroupEmits, SplitterGroupProps, SplitterPanelEmits, SplitterPanelProps, SplitterResizeHandleEmits, SplitterResizeHandleProps } from "./types.js";
1
2
  import { _default } from "./splitter-group.vue.js";
2
3
  import { _default as _default$1 } from "./splitter-panel.vue.js";
3
- import { _default as _default$2 } from "./splitter-resize-handle.vue.js";
4
- import { SplitterGroupEmits, SplitterGroupProps, SplitterPanelEmits, SplitterPanelProps, SplitterResizeHandleEmits, SplitterResizeHandleProps, SplitterUi, SplitterUiSlot } from "@soybeanjs/headless/splitter";
5
- export { type SplitterGroupEmits, type SplitterGroupProps, type SplitterPanelEmits, type SplitterPanelProps, type SplitterResizeHandleEmits, type SplitterResizeHandleProps, type SplitterUi, type SplitterUiSlot };
4
+ import { _default as _default$2 } from "./splitter-resize-handle.vue.js";
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{splitterVariants as t}from"./variants.js";import{computed as n,createBlock as r,defineComponent as i,mergeProps as a,openBlock as o,renderSlot as s,toHandlers as c,unref as l,withCtx as u}from"vue";import{useForwardListeners as d,useOmitProps as f}from"@soybeanjs/headless/composables";import{SplitterGroup as p,provideSplitterUi as m}from"@soybeanjs/headless";const h=i({name:`SSplitterGroup`,__name:`splitter-group`,props:{class:{},ui:{},direction:{},dir:{},defaultLayout:{},keyboardResizeBy:{},asChild:{type:Boolean},as:{}},emits:[`layout`],setup(i,{emit:h}){let g=i,_=h,v=f(g,[`class`,`ui`]),y=d(_);return m(n(()=>e(t(),g.ui,{root:g.class}))),(e,t)=>(o(),r(l(p),a({"data-slot":`splitter-group`},l(v),c(l(y))),{default:u(()=>[s(e.$slots,`default`)]),_:3},16))}});export{h as default};
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{splitterVariants as t}from"./variants.js";import{computed as n,createBlock as r,defineComponent as i,mergeProps as a,openBlock as o,renderSlot as s,toHandlers as c,unref as l,withCtx as u}from"vue";import{useForwardListeners as d,useOmitProps as f}from"@soybeanjs/headless/composables";import{SplitterGroup as p,provideSplitterUi as m}from"@soybeanjs/headless/splitter";const h=i({name:`SSplitterGroup`,__name:`splitter-group`,props:{class:{type:[Boolean,null,String,Object,Array]},ui:{},direction:{},dir:{},defaultLayout:{},keyboardResizeBy:{},asChild:{type:Boolean},as:{}},emits:[`layout`],setup(i,{emit:h}){let g=i,_=h,v=f(g,[`class`,`ui`]),y=d(_);return m(n(()=>e(t(),g.ui,{root:g.class}))),(e,t)=>(o(),r(l(p),a({"data-slot":`splitter-group`},l(v),c(l(y))),{default:u(()=>[s(e.$slots,`default`)]),_:3},16))}});export{h as default};
@@ -1 +1 @@
1
- import{createBlock as e,defineComponent as t,guardReactiveProps as n,mergeProps as r,normalizeProps as i,openBlock as a,renderSlot as o,toHandlers as s,unref as c,withCtx as l}from"vue";import{useForwardListeners as u}from"@soybeanjs/headless/composables";import{SplitterPanel as d}from"@soybeanjs/headless";const f=t({name:`SSplitterPanel`,__name:`splitter-panel`,props:{class:{},defaultSize:{},collapsible:{type:Boolean},collapsedSize:{},maxSize:{},minSize:{},order:{},asChild:{type:Boolean},as:{}},emits:[`collapse`,`expand`,`resize`],setup(t,{emit:f}){let p=t,m=u(f);return(t,u)=>(a(),e(c(d),r({"data-slot":`splitter-panel`},p,s(c(m))),{default:l(e=>[o(t.$slots,`default`,i(n(e)))]),_:3},16))}});export{f as default};
1
+ import{createBlock as e,defineComponent as t,guardReactiveProps as n,mergeProps as r,normalizeProps as i,openBlock as a,renderSlot as o,toHandlers as s,unref as c,withCtx as l}from"vue";import{useForwardListeners as u}from"@soybeanjs/headless/composables";import{SplitterPanel as d}from"@soybeanjs/headless/splitter";const f=t({name:`SSplitterPanel`,__name:`splitter-panel`,props:{class:{type:[Boolean,null,String,Object,Array]},defaultSize:{},collapsible:{type:Boolean},collapsedSize:{},maxSize:{},minSize:{},order:{},asChild:{type:Boolean},as:{}},emits:[`collapse`,`expand`,`resize`],setup(t,{emit:f}){let p=t,m=u(f);return(t,u)=>(a(),e(c(d),r({"data-slot":`splitter-panel`},p,s(c(m))),{default:l(e=>[o(t.$slots,`default`,i(n(e)))]),_:3},16))}});export{f as default};
@@ -13,13 +13,13 @@ type __VLS_Slots = {} & {
13
13
  default?: (props: typeof __VLS_8) => any;
14
14
  };
15
15
  declare const __VLS_base: _$vue.DefineComponent<SplitterPanelProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
16
- expand: () => any;
17
16
  resize: (size: number, prevSize: number | undefined) => any;
18
17
  collapse: () => any;
18
+ expand: () => any;
19
19
  }, string, _$vue.PublicProps, Readonly<SplitterPanelProps> & Readonly<{
20
- onExpand?: (() => any) | undefined;
21
20
  onResize?: ((size: number, prevSize: number | undefined) => any) | undefined;
22
21
  onCollapse?: (() => any) | undefined;
22
+ onExpand?: (() => any) | undefined;
23
23
  }>, {}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
24
24
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
25
25
  declare const _default: typeof __VLS_export;
@@ -1 +1 @@
1
- import{computed as e,defineComponent as t,h as n}from"vue";import{SplitterResizeHandle as r}from"@soybeanjs/headless";const i=t({name:`SSplitterResizeHandle`,inheritAttrs:!1,props:{withHandle:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},tabindex:{type:Number,default:0},asChild:{type:Boolean,default:void 0},as:{type:[String,Object,Function],default:void 0},class:{type:null,default:void 0}},emits:{dragging:e=>!0},setup(t,{attrs:i,emit:a,slots:o}){let s=e(()=>({...i,disabled:t.disabled,tabindex:t.tabindex,asChild:t.asChild,as:t.as})),c=e(()=>n(`div`,{class:`bg-background z-10 flex h-4 w-3 items-center justify-center rounded-xs border border-border`,"aria-hidden":`true`},[n(`div`,{class:`flex flex-col items-center gap-0.5`},[n(`span`,{class:`h-0.75 w-0.75 rounded-full bg-muted-foreground/70`}),n(`span`,{class:`h-0.75 w-0.75 rounded-full bg-muted-foreground/70`}),n(`span`,{class:`h-0.75 w-0.75 rounded-full bg-muted-foreground/70`})])]));return()=>n(r,{"data-slot":`splitter-resize-handle`,...s.value,class:t.class,onDragging:e=>a(`dragging`,e)},{default:()=>{if(o.default)return o.default();if(t.withHandle)return[c.value]}})}});export{i as default};
1
+ import{computed as e,defineComponent as t,h as n}from"vue";import{SplitterResizeHandle as r}from"@soybeanjs/headless/splitter";const i=t({name:`SSplitterResizeHandle`,inheritAttrs:!1,props:{withHandle:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},tabindex:{type:Number,default:0},asChild:{type:Boolean,default:void 0},as:{type:[String,Object,Function],default:void 0},class:{type:null,default:void 0}},emits:{dragging:e=>!0},setup(t,{attrs:i,emit:a,slots:o}){let s=e(()=>({...i,disabled:t.disabled,tabindex:t.tabindex,asChild:t.asChild,as:t.as})),c=e(()=>n(`div`,{class:`bg-background z-10 flex h-4 w-3 items-center justify-center rounded-xs border border-border`,"aria-hidden":`true`},[n(`div`,{class:`flex flex-col items-center gap-0.5`},[n(`span`,{class:`h-0.75 w-0.75 rounded-full bg-muted-foreground/70`}),n(`span`,{class:`h-0.75 w-0.75 rounded-full bg-muted-foreground/70`}),n(`span`,{class:`h-0.75 w-0.75 rounded-full bg-muted-foreground/70`})])]));return()=>n(r,{"data-slot":`splitter-resize-handle`,...s.value,class:t.class,onDragging:e=>a(`dragging`,e)},{default:()=>{if(o.default)return o.default();if(t.withHandle)return[c.value]}})}});export{i as default};
@@ -405,10 +405,10 @@ declare const __VLS_export: _$vue.DefineComponent<{
405
405
  onDragging?: ((_value: boolean) => any) | undefined;
406
406
  }>, {
407
407
  class: _$_soybeanjs_headless0.ClassValue;
408
- tabindex: number;
408
+ disabled: boolean;
409
409
  asChild: boolean;
410
410
  as: string | Function | Record<string, any>;
411
- disabled: boolean;
411
+ tabindex: number;
412
412
  withHandle: boolean;
413
413
  }, {}, {}, {}, string, _$vue.ComponentProvideOptions, true, {}, any>;
414
414
  //#endregion
@@ -1,12 +1,53 @@
1
- import { ClassValue, SplitterGroupProps, SplitterPanelProps, SplitterUi } from "@soybeanjs/headless";
1
+ import { SplitterGroupEmits, SplitterGroupProps, SplitterPanelEmits, SplitterPanelProps, SplitterResizeHandleEmits, SplitterResizeHandleProps, SplitterUi } from "@soybeanjs/headless/splitter";
2
+ import { ClassValue } from "@soybeanjs/headless/types";
2
3
 
3
4
  //#region src/components/splitter/types.d.ts
5
+ /**
6
+ * Properties for the SplitterGroup component.
7
+ */
4
8
  interface SplitterGroupProps$1 extends SplitterGroupProps {
9
+ /**
10
+ * Additional class names applied to the root element.
11
+ */
5
12
  class?: ClassValue;
13
+ /**
14
+ * Per-slot class overrides for the component.
15
+ */
6
16
  ui?: Partial<SplitterUi>;
7
17
  }
18
+ /**
19
+ * Events for the SplitterGroup component.
20
+ */
21
+ type SplitterGroupEmits$1 = SplitterGroupEmits;
22
+ /**
23
+ * Properties for the SplitterPanel component.
24
+ */
8
25
  interface SplitterPanelProps$1 extends SplitterPanelProps {
26
+ /**
27
+ * Additional class names applied to the root element.
28
+ */
9
29
  class?: ClassValue;
10
30
  }
31
+ /**
32
+ * Events for the SplitterPanel component.
33
+ */
34
+ type SplitterPanelEmits$1 = SplitterPanelEmits;
35
+ /**
36
+ * Properties for the SplitterResizeHandle component.
37
+ */
38
+ interface SplitterResizeHandleProps$1 extends SplitterResizeHandleProps {
39
+ /**
40
+ * Additional class names applied to the root element.
41
+ */
42
+ class?: ClassValue;
43
+ /**
44
+ * Whether with handle.
45
+ */
46
+ withHandle?: boolean;
47
+ }
48
+ /**
49
+ * Events for the SplitterResizeHandle component.
50
+ */
51
+ type SplitterResizeHandleEmits$1 = SplitterResizeHandleEmits;
11
52
  //#endregion
12
- export { SplitterGroupProps$1 as SplitterGroupProps, SplitterPanelProps$1 as SplitterPanelProps };
53
+ export { SplitterGroupEmits$1 as SplitterGroupEmits, SplitterGroupProps$1 as SplitterGroupProps, SplitterPanelEmits$1 as SplitterPanelEmits, SplitterPanelProps$1 as SplitterPanelProps, SplitterResizeHandleEmits$1 as SplitterResizeHandleEmits, SplitterResizeHandleProps$1 as SplitterResizeHandleProps };
@@ -1,4 +1,3 @@
1
1
  import { StepperEmits, StepperExtendedUi, StepperExtraUiSlot, StepperOptionData, StepperProps } from "./types.js";
2
2
  import { _default } from "./stepper.vue.js";
3
- import { StepperDescriptionProps, StepperIndicatorProps, StepperItemProps, StepperRootEmits, StepperRootProps, StepperSeparatorProps, StepperState, StepperTitleProps, StepperTriggerProps, StepperUi, StepperUiSlot } from "@soybeanjs/headless/stepper";
4
- export { type StepperDescriptionProps, type StepperIndicatorProps, type StepperItemProps, type StepperRootEmits, type StepperRootProps, type StepperSeparatorProps, type StepperState, type StepperTitleProps, type StepperTriggerProps, type StepperUi, type StepperUiSlot };
3
+ export * from "@soybeanjs/headless/stepper";
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../icon/icon.js";import{stepperVariants as n}from"./variants.js";import{Fragment as r,computed as i,createBlock as a,createCommentVNode as o,createElementBlock as s,createElementVNode as c,createTextVNode as l,createVNode as u,defineComponent as d,mergeProps as f,normalizeClass as p,openBlock as m,renderList as h,renderSlot as g,toDisplayString as _,toHandlers as v,unref as y,withCtx as b}from"vue";import{useForwardListeners as x,useOmitProps as S}from"@soybeanjs/headless/composables";import{StepperDescription as C,StepperIndicator as w,StepperItem as T,StepperRoot as E,StepperSeparator as D,StepperTitle as O,StepperTrigger as k,provideStepperUi as A}from"@soybeanjs/headless";const j={key:1},M=d({name:`SStepper`,__name:`stepper`,props:{class:{},color:{},size:{},ui:{},items:{},itemProps:{},triggerProps:{},indicatorProps:{},separatorProps:{},titleProps:{},descriptionProps:{},defaultValue:{},modelValue:{},orientation:{},dir:{},linear:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(d,{emit:M}){let N=d,P=M,F=S(N,[`class`,`color`,`size`,`ui`,`items`,`itemProps`,`triggerProps`,`indicatorProps`,`separatorProps`,`titleProps`,`descriptionProps`]),I=x(P),L=i(()=>N.items.map((e,t)=>({...e,step:t+1}))),R=i(()=>e(n({color:N.color,size:N.size,orientation:N.orientation}),N.ui,{root:N.class}));return A(R),(e,n)=>(m(),a(y(E),f(y(F),v(y(I))),{default:b(n=>[(m(!0),s(r,null,h(L.value,(r,i)=>(m(),a(y(T),f({key:r.step,ref_for:!0},d.itemProps,{step:r.step,disabled:r.disabled,completed:r.completed}),{default:b(h=>[g(e.$slots,`item`,f({ref_for:!0},{...r,...n,...h}),()=>[u(y(k),f({ref_for:!0},d.triggerProps),{default:b(()=>[u(y(w),f({ref_for:!0},d.indicatorProps),{default:b(()=>[g(e.$slots,`indicator`,f({ref_for:!0},{...r,...n,...h}),()=>[h.state===`completed`?(m(),a(t,{key:0,icon:`lucide:check`,class:p(R.value.indicatorIcon),"aria-hidden":!0},null,8,[`class`])):(m(),s(`span`,j,_(r.step),1))])]),_:2},1040),c(`div`,{class:p(R.value.itemContent)},[u(y(O),f({ref_for:!0},d.titleProps),{default:b(()=>[g(e.$slots,`title`,f({ref_for:!0},{...r,...n,...h}),()=>[l(_(r.title??`Step ${r.step}`),1)])]),_:2},1040),r.description||e.$slots.description?(m(),a(y(C),f({key:0,ref_for:!0},d.descriptionProps),{default:b(()=>[g(e.$slots,`description`,f({ref_for:!0},{...r,...n,...h}),()=>[l(_(r.description),1)])]),_:2},1040)):o(`v-if`,!0)],2)]),_:2},1040),i<L.value.length-1?g(e.$slots,`separator`,f({key:0,ref_for:!0},{...r,...n,...h}),()=>[u(y(D),f({ref_for:!0},d.separatorProps),null,16)]):o(`v-if`,!0)])]),_:2},1040,[`step`,`disabled`,`completed`]))),128))]),_:3},16))}});export{M as default};
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../icon/icon.js";import{stepperVariants as n}from"./variants.js";import{Fragment as r,computed as i,createBlock as a,createCommentVNode as o,createElementBlock as s,createElementVNode as c,createTextVNode as l,createVNode as u,defineComponent as d,mergeProps as f,normalizeClass as p,openBlock as m,renderList as h,renderSlot as g,toDisplayString as _,toHandlers as v,unref as y,withCtx as b}from"vue";import{useForwardListeners as x,useOmitProps as S}from"@soybeanjs/headless/composables";import{StepperDescription as C,StepperIndicator as w,StepperItem as T,StepperRoot as E,StepperSeparator as D,StepperTitle as O,StepperTrigger as k,provideStepperUi as A}from"@soybeanjs/headless/stepper";const j={key:1},M=d({name:`SStepper`,__name:`stepper`,props:{class:{type:[Boolean,null,String,Object,Array]},color:{},size:{},ui:{},items:{},itemProps:{},triggerProps:{},indicatorProps:{},separatorProps:{},titleProps:{},descriptionProps:{},defaultValue:{},modelValue:{},orientation:{},dir:{},linear:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`],setup(d,{emit:M}){let N=d,P=M,F=S(N,[`class`,`color`,`size`,`ui`,`items`,`itemProps`,`triggerProps`,`indicatorProps`,`separatorProps`,`titleProps`,`descriptionProps`]),I=x(P),L=i(()=>N.items.map((e,t)=>({...e,step:t+1}))),R=i(()=>e(n({color:N.color,size:N.size,orientation:N.orientation}),N.ui,{root:N.class}));return A(R),(e,n)=>(m(),a(y(E),f(y(F),v(y(I))),{default:b(n=>[(m(!0),s(r,null,h(L.value,(r,i)=>(m(),a(y(T),f({key:r.step,ref_for:!0},d.itemProps,{step:r.step,disabled:r.disabled,completed:r.completed}),{default:b(h=>[g(e.$slots,`item`,f({ref_for:!0},{...r,...n,...h}),()=>[u(y(k),f({ref_for:!0},d.triggerProps),{default:b(()=>[u(y(w),f({ref_for:!0},d.indicatorProps),{default:b(()=>[g(e.$slots,`indicator`,f({ref_for:!0},{...r,...n,...h}),()=>[h.state===`completed`?(m(),a(t,{key:0,icon:`lucide:check`,class:p(R.value.indicatorIcon),"aria-hidden":!0},null,8,[`class`])):(m(),s(`span`,j,_(r.step),1))])]),_:2},1040),c(`div`,{class:p(R.value.itemContent)},[u(y(O),f({ref_for:!0},d.titleProps),{default:b(()=>[g(e.$slots,`title`,f({ref_for:!0},{...r,...n,...h}),()=>[l(_(r.title??`Step ${r.step}`),1)])]),_:2},1040),r.description||e.$slots.description?(m(),a(y(C),f({key:0,ref_for:!0},d.descriptionProps),{default:b(()=>[g(e.$slots,`description`,f({ref_for:!0},{...r,...n,...h}),()=>[l(_(r.description),1)])]),_:2},1040)):o(`v-if`,!0)],2)]),_:2},1040),i<L.value.length-1?g(e.$slots,`separator`,f({key:0,ref_for:!0},{...r,...n,...h}),()=>[u(y(D),f({ref_for:!0},d.separatorProps),null,16)]):o(`v-if`,!0)])]),_:2},1040,[`step`,`disabled`,`completed`]))),128))]),_:3},16))}});export{M as default};
@@ -1,26 +1,81 @@
1
1
  import { ThemeColor, ThemeSize } from "../../theme/types.js";
2
- import { ClassValue, StepperDescriptionProps, StepperIndicatorProps, StepperItemProps, StepperRootEmits, StepperRootProps, StepperSeparatorProps, StepperTitleProps, StepperTriggerProps, StepperUiSlot, UiClass } from "@soybeanjs/headless";
2
+ import { StepperDescriptionProps, StepperIndicatorProps, StepperItemProps, StepperRootEmits, StepperRootProps, StepperSeparatorProps, StepperTitleProps, StepperTriggerProps, StepperUiSlot } from "@soybeanjs/headless/stepper";
3
+ import { ClassValue, UiClass } from "@soybeanjs/headless/types";
3
4
 
4
5
  //#region src/components/stepper/types.d.ts
6
+ /**
7
+ * Option data for the Stepper component.
8
+ */
5
9
  interface StepperOptionData extends Pick<StepperItemProps, 'disabled' | 'completed'> {
10
+ /**
11
+ * Title text rendered by the component.
12
+ */
6
13
  title?: string;
14
+ /**
15
+ * Description text rendered by the component.
16
+ */
7
17
  description?: string;
8
18
  }
19
+ /**
20
+ * Additional UI slots for the stepper component.
21
+ */
9
22
  type StepperExtraUiSlot = 'itemContent' | 'indicatorIcon';
23
+ /**
24
+ * Extended UI class overrides for the Stepper component.
25
+ */
10
26
  type StepperExtendedUi = UiClass<StepperUiSlot | StepperExtraUiSlot>;
27
+ /**
28
+ * Properties for the Stepper component.
29
+ */
11
30
  interface StepperProps extends StepperRootProps {
31
+ /**
32
+ * Additional class names applied to the root element.
33
+ */
12
34
  class?: ClassValue;
35
+ /**
36
+ * Theme color of the component.
37
+ */
13
38
  color?: ThemeColor;
39
+ /**
40
+ * Visual size of the component.
41
+ */
14
42
  size?: ThemeSize;
43
+ /**
44
+ * Per-slot class overrides for the component.
45
+ */
15
46
  ui?: Partial<StepperExtendedUi>;
47
+ /**
48
+ * Items rendered by the component.
49
+ */
16
50
  items: StepperOptionData[];
51
+ /**
52
+ * Properties forwarded to the item element.
53
+ */
17
54
  itemProps?: StepperItemProps;
55
+ /**
56
+ * Properties forwarded to the trigger element.
57
+ */
18
58
  triggerProps?: StepperTriggerProps;
59
+ /**
60
+ * Properties forwarded to the indicator element.
61
+ */
19
62
  indicatorProps?: StepperIndicatorProps;
63
+ /**
64
+ * Properties forwarded to the separator element.
65
+ */
20
66
  separatorProps?: StepperSeparatorProps;
67
+ /**
68
+ * Properties forwarded to the title element.
69
+ */
21
70
  titleProps?: StepperTitleProps;
71
+ /**
72
+ * Properties forwarded to the description element.
73
+ */
22
74
  descriptionProps?: StepperDescriptionProps;
23
75
  }
76
+ /**
77
+ * Events for the Stepper component.
78
+ */
24
79
  type StepperEmits = StepperRootEmits;
25
80
  //#endregion
26
81
  export { StepperEmits, StepperExtendedUi, StepperExtraUiSlot, StepperOptionData, StepperProps };
@@ -1,5 +1,4 @@
1
1
  import { SwitchShape } from "./variants.js";
2
2
  import { SwitchEmits, SwitchProps } from "./types.js";
3
3
  import { _default } from "./switch.vue.js";
4
- import { SwitchControlProps, SwitchRootEmits, SwitchRootProps, SwitchThumbProps } from "@soybeanjs/headless/switch";
5
- export { type SwitchControlProps, type SwitchRootEmits, type SwitchRootProps, type SwitchThumbProps };
4
+ export * from "@soybeanjs/headless/switch";
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{switchVariants as t}from"./variants.js";import{computed as n,createBlock as r,createVNode as i,defineComponent as a,guardReactiveProps as o,mergeProps as s,normalizeProps as c,openBlock as l,renderSlot as u,unref as d,useId as f,withCtx as p}from"vue";import{useOmitProps as m}from"@soybeanjs/headless/composables";import{SwitchControl as h,SwitchRoot as g,SwitchThumb as _,provideSwitchUi as v}from"@soybeanjs/headless";const y=a({name:`SSwitch`,__name:`switch`,props:{class:{},ui:{},color:{},size:{},shape:{},controlProps:{},thumbProps:{},defaultValue:{},modelValue:{default:void 0},disabled:{type:Boolean},value:{},name:{},required:{type:Boolean},trueValue:{default:!0},falseValue:{default:!1}},emits:[`update:modelValue`],setup(a,{emit:y}){let b=a,x=y,S=m(b,[`class`,`ui`,`color`,`size`,`shape`,`controlProps`,`thumbProps`]),C=f(),w=n(()=>b.id||`switch-${C}`);return v(n(()=>e(t({color:b.color,size:b.size,shape:b.shape}),b.ui,{root:b.class}))),(e,t)=>(l(),r(d(g),s(d(S),{"onUpdate:modelValue":t[0]||=e=>x(`update:modelValue`,e)}),{default:p(t=>[u(e.$slots,`leading`,c(o(t))),i(d(h),s(a.controlProps,{id:w.value}),{default:p(()=>[i(d(_),c(o(a.thumbProps)),{default:p(()=>[u(e.$slots,`default`,c(o(t)))]),_:2},1040)]),_:2},1040,[`id`]),u(e.$slots,`trailing`,c(o(t)))]),_:3},16))}});export{y as default};
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{switchVariants as t}from"./variants.js";import{computed as n,createBlock as r,createVNode as i,defineComponent as a,guardReactiveProps as o,mergeProps as s,normalizeProps as c,openBlock as l,renderSlot as u,unref as d,useId as f,withCtx as p}from"vue";import{useOmitProps as m}from"@soybeanjs/headless/composables";import{SwitchControl as h,SwitchRoot as g,SwitchThumb as _,provideSwitchUi as v}from"@soybeanjs/headless/switch";const y=a({name:`SSwitch`,__name:`switch`,props:{class:{type:[Boolean,null,String,Object,Array]},ui:{},color:{},size:{},shape:{},controlProps:{},thumbProps:{},defaultValue:{},modelValue:{default:void 0},disabled:{type:Boolean},value:{},name:{},required:{type:Boolean},trueValue:{default:!0},falseValue:{default:!1}},emits:[`update:modelValue`],setup(a,{emit:y}){let b=a,x=y,S=m(b,[`class`,`ui`,`color`,`size`,`shape`,`controlProps`,`thumbProps`]),C=f(),w=n(()=>b.id||`switch-${C}`);return v(n(()=>e(t({color:b.color,size:b.size,shape:b.shape}),b.ui,{root:b.class}))),(e,t)=>(l(),r(d(g),s(d(S),{"onUpdate:modelValue":t[0]||=e=>x(`update:modelValue`,e)}),{default:p(t=>[u(e.$slots,`leading`,c(o(t))),i(d(h),s(a.controlProps,{id:w.value}),{default:p(()=>[i(d(_),c(o(a.thumbProps)),{default:p(()=>[u(e.$slots,`default`,c(o(t)))]),_:2},1040)]),_:2},1040,[`id`]),u(e.$slots,`trailing`,c(o(t)))]),_:3},16))}});export{y as default};
@@ -2,8 +2,8 @@ import { ThemeColor, ThemeSize } from "../../theme/types.js";
2
2
  import { SwitchShape } from "./variants.js";
3
3
  import { SwitchProps } from "./types.js";
4
4
  import * as _$vue from "vue";
5
+ import { AcceptableBooleanValue } from "@soybeanjs/headless/types";
5
6
  import * as _$_soybeanjs_headless0 from "@soybeanjs/headless";
6
- import { AcceptableBooleanValue } from "@soybeanjs/headless";
7
7
 
8
8
  //#region src/components/switch/switch.vue.d.ts
9
9
  declare const __VLS_export: <T extends AcceptableBooleanValue = boolean>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
@@ -219,7 +219,7 @@ declare const __VLS_export: <T extends AcceptableBooleanValue = boolean>(__VLS_p
219
219
  readonly modelValue: T | undefined;
220
220
  readonly trueValue: NonNullable<T> extends infer T_1 ? T_1 extends NonNullable<T> ? T_1 extends undefined ? never : T_1 : never : never;
221
221
  readonly falseValue: NonNullable<T> extends infer T_2 ? T_2 extends NonNullable<T> ? T_2 extends undefined ? never : T_2 : never : never;
222
- } & ("inlist" | "disabled" | "required" | (T | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "modelValue" : never) | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "defaultValue" : never) | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "trueValue" : never) | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "falseValue" : never) extends infer T_3 extends keyof T_4 ? { readonly [K in T_3]-?: K extends "modelValue" | "trueValue" | "falseValue" ? {
222
+ } & ("disabled" | "inlist" | "required" | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "defaultValue" : never) | (T | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "modelValue" : never) | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "trueValue" : never) | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "falseValue" : never) extends infer T_3 extends keyof T_4 ? { readonly [K in T_3]-?: K extends "modelValue" | "trueValue" | "falseValue" ? {
223
223
  modelValue: undefined;
224
224
  trueValue: any;
225
225
  falseValue: any;
@@ -430,7 +430,7 @@ declare const __VLS_export: <T extends AcceptableBooleanValue = boolean>(__VLS_p
430
430
  readonly modelValue: T | undefined;
431
431
  readonly trueValue: NonNullable<T> extends infer T_1 ? T_1 extends NonNullable<T> ? T_1 extends undefined ? never : T_1 : never : never;
432
432
  readonly falseValue: NonNullable<T> extends infer T_2 ? T_2 extends NonNullable<T> ? T_2 extends undefined ? never : T_2 : never : never;
433
- } & ("inlist" | "disabled" | "required" | (T | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "modelValue" : never) | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "defaultValue" : never) | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "trueValue" : never) | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "falseValue" : never) extends infer T_3 extends keyof T_4 ? { readonly [K in T_3]-?: K extends "modelValue" | "trueValue" | "falseValue" ? {
433
+ } & ("disabled" | "inlist" | "required" | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "defaultValue" : never) | (T | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "modelValue" : never) | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "trueValue" : never) | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "falseValue" : never) extends infer T_3 extends keyof T_4 ? { readonly [K in T_3]-?: K extends "modelValue" | "trueValue" | "falseValue" ? {
434
434
  modelValue: undefined;
435
435
  trueValue: any;
436
436
  falseValue: any;
@@ -641,7 +641,7 @@ declare const __VLS_export: <T extends AcceptableBooleanValue = boolean>(__VLS_p
641
641
  readonly modelValue: T | undefined;
642
642
  readonly trueValue: NonNullable<T> extends infer T_1 ? T_1 extends NonNullable<T> ? T_1 extends undefined ? never : T_1 : never : never;
643
643
  readonly falseValue: NonNullable<T> extends infer T_2 ? T_2 extends NonNullable<T> ? T_2 extends undefined ? never : T_2 : never : never;
644
- } & ("inlist" | "disabled" | "required" | (T | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "modelValue" : never) | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "defaultValue" : never) | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "trueValue" : never) | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "falseValue" : never) extends infer T_3 extends keyof T_4 ? { readonly [K in T_3]-?: K extends "modelValue" | "trueValue" | "falseValue" ? {
644
+ } & ("disabled" | "inlist" | "required" | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "defaultValue" : never) | (T | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "modelValue" : never) | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "trueValue" : never) | (NonNullable<T> | undefined extends boolean | undefined ? (boolean & T) | undefined extends undefined ? never : "falseValue" : never) extends infer T_3 extends keyof T_4 ? { readonly [K in T_3]-?: K extends "modelValue" | "trueValue" | "falseValue" ? {
645
645
  modelValue: undefined;
646
646
  trueValue: any;
647
647
  falseValue: any;
@@ -1,17 +1,45 @@
1
1
  import { ThemeColor, ThemeSize } from "../../theme/types.js";
2
2
  import { SwitchShape } from "./variants.js";
3
- import { AcceptableBooleanValue, ClassValue, SwitchControlProps, SwitchRootEmits, SwitchRootProps, SwitchThumbProps, SwitchUi } from "@soybeanjs/headless";
3
+ import { SwitchControlProps, SwitchRootEmits, SwitchRootProps, SwitchThumbProps, SwitchUi } from "@soybeanjs/headless/switch";
4
+ import { AcceptableBooleanValue, ClassValue } from "@soybeanjs/headless/types";
4
5
 
5
6
  //#region src/components/switch/types.d.ts
7
+ /**
8
+ * Properties for the Switch component.
9
+ */
6
10
  interface SwitchProps<T extends AcceptableBooleanValue = boolean> extends SwitchRootProps<T> {
11
+ /**
12
+ * Additional class names applied to the root element.
13
+ */
7
14
  class?: ClassValue;
15
+ /**
16
+ * Per-slot class overrides for the component.
17
+ */
8
18
  ui?: Partial<SwitchUi>;
19
+ /**
20
+ * Theme color of the component.
21
+ */
9
22
  color?: ThemeColor;
23
+ /**
24
+ * Visual size of the component.
25
+ */
10
26
  size?: ThemeSize;
27
+ /**
28
+ * Shape of the component.
29
+ */
11
30
  shape?: SwitchShape;
31
+ /**
32
+ * Properties forwarded to the control element.
33
+ */
12
34
  controlProps?: SwitchControlProps;
35
+ /**
36
+ * Properties forwarded to the thumb element.
37
+ */
13
38
  thumbProps?: SwitchThumbProps;
14
39
  }
40
+ /**
41
+ * Events for the Switch component.
42
+ */
15
43
  type SwitchEmits<T extends AcceptableBooleanValue = boolean> = SwitchRootEmits<T>;
16
44
  //#endregion
17
45
  export { SwitchEmits, SwitchProps };
@@ -1 +1 @@
1
- import{shallowRef as e,watch as t}from"vue";import{useTable as n}from"@soybeanjs/hooks";import{getTableColumnKey as r,isTableGroupColumn as i}from"@soybeanjs/headless/table";function a(e){return n({...e,getColumnChecks:s,getColumns:c})}function o(r){let{page:i=1,pageSize:a=10,fetchOnPaginationChange:o=!0,onFetched:l}=r,u=e(i),d=e(a),f=e(0),p=n({...r,pagination:!0,getColumnChecks:s,getColumns:c,onFetched:e=>{e.total&&e.total!==f.value&&(f.value=e.total),e.page&&e.page!==u.value&&(u.value=e.page),e.pageSize&&e.pageSize!==d.value&&(d.value=e.pageSize),l?.(e)}});return t([u,d],()=>{o&&p.fetchData()},{flush:`post`}),{page:u,pageSize:d,total:f,...p}}function s(e){let t=[];return e.forEach(e=>{if(i(e)){t.push(...s(e.children));return}let{type:n,title:a,hidden:o}=e;if(n||!e.dataIndex)return;let c=r(e),l={key:c,title:a||c,checked:!0,hidden:o};t.push(l)}),t}function c(e,t){let n=new Map,a=new Map(t.map(e=>[e.key,e])),o=new Map(t.map((e,t)=>[e.key,t]));e.forEach((e,t)=>{e.type&&n.set(e.type,{column:e,index:t})});function s(e){if(i(e)){let t=e.children.map(e=>s(e));return t.length>0?Math.min(...t):1/0}return o.get(r(e))??1/0}let l=[...e.filter(e=>!e.type)].sort((e,t)=>s(e)-s(t)).reduce((e,n)=>{if(i(n)){let r=c(n.children,t);return r.length>0&&e.push({...n,children:r}),e}return a.get(r(n))?.checked!==!1&&e.push(n),e},[]);return n.forEach(({column:e,index:t})=>{t>=l.length?l.push(e):l.splice(t,0,e)}),l}export{o as usePaginatedTable,a as useTable};
1
+ import{shallowRef as e,watch as t}from"vue";import{getTableColumnKey as n,isTableGroupColumn as r}from"@soybeanjs/headless/table";import{useTable as i}from"@soybeanjs/hooks";function a(e){return i({...e,getColumnChecks:s,getColumns:c})}function o(n){let{page:r=1,pageSize:a=10,fetchOnPaginationChange:o=!0,onFetched:l}=n,u=e(r),d=e(a),f=e(0),p=i({...n,pagination:!0,getColumnChecks:s,getColumns:c,onFetched:e=>{e.total&&e.total!==f.value&&(f.value=e.total),e.page&&e.page!==u.value&&(u.value=e.page),e.pageSize&&e.pageSize!==d.value&&(d.value=e.pageSize),l?.(e)}});return t([u,d],()=>{o&&p.fetchData()},{flush:`post`}),{page:u,pageSize:d,total:f,...p}}function s(e){let t=[];return e.forEach(e=>{if(r(e)){t.push(...s(e.children));return}let{type:i,title:a,hidden:o}=e;if(i||!e.dataIndex)return;let c=n(e),l={key:c,title:a||c,checked:!0,hidden:o};t.push(l)}),t}function c(e,t){let i=new Map,a=new Map(t.map(e=>[e.key,e])),o=new Map(t.map((e,t)=>[e.key,t]));e.forEach((e,t)=>{e.type&&i.set(e.type,{column:e,index:t})});function s(e){if(r(e)){let t=e.children.map(e=>s(e));return t.length>0?Math.min(...t):1/0}return o.get(n(e))??1/0}let l=[...e.filter(e=>!e.type)].sort((e,t)=>s(e)-s(t)).reduce((e,i)=>{if(r(i)){let n=c(i.children,t);return n.length>0&&e.push({...i,children:n}),e}return a.get(n(i))?.checked!==!1&&e.push(i),e},[]);return i.forEach(({column:e,index:t})=>{t>=l.length?l.push(e):l.splice(t,0,e)}),l}export{o as usePaginatedTable,a as useTable};
@@ -1,6 +1,7 @@
1
1
  import { TableBaseData, TableColumn, TableColumnFilter, TableColumnFilterOption, TableColumnFilterValue, TableColumnType, TableEmits, TableExtendedUi, TableExtraUiSlot, TableFilterPopoverColumnMeta, TableFilterPopoverOption, TableFilterPopoverProps, TableProps, TableRadioProps, TableSlots, TableSortOrder } from "./types.js";
2
2
  import { _default } from "./table.vue.js";
3
3
  import { usePaginatedTable, useTable as useTable$1 } from "./hooks.js";
4
- import { TableCell as STableCell, TableRow as STableRow } from "@soybeanjs/headless";
4
+ import { TableCell as STableCell, TableRow as STableRow } from "@soybeanjs/headless/table";
5
5
  import { TableColumnCheck as TableColumnCheck$1 } from "@soybeanjs/hooks";
6
+ export * from "@soybeanjs/headless/table";
6
7
  export { STableCell, STableRow, type TableColumnCheck$1 as TableColumnCheck };
@@ -1 +1 @@
1
- import"./table.js";import"./hooks.js";import{TableCell as e,TableRow as t}from"@soybeanjs/headless";export{e as STableCell,t as STableRow};
1
+ import"./table.js";import"./hooks.js";import{TableCell as e,TableRow as t}from"@soybeanjs/headless/table";export{e as STableCell,t as STableRow};
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import{miniSizeMap as t}from"../../theme/config.js";import"../../theme/index.js";import n from"../button/button-icon.js";import r from"../checkbox/checkbox.js";import i from"../empty/empty.js";import a from"./table-filter-popover.js";import{tableVariants as o}from"./variants.js";import s from"./table-radio.js";import{computed as c,createBlock as l,createCommentVNode as u,createElementVNode as d,createSlots as f,createVNode as p,defineComponent as m,guardReactiveProps as h,mergeProps as g,normalizeClass as _,normalizeProps as v,openBlock as y,renderList as b,renderSlot as x,toHandlers as S,unref as C,useSlots as w,withCtx as T}from"vue";import{useForwardListeners as E,useOmitProps as D}from"@soybeanjs/headless/composables";import{TableCompact as O,provideTableUi as k}from"@soybeanjs/headless";const A=[`aria-label`,`aria-pressed`,`data-resizing`,`onPointerdown`,`onKeydown`],j=m({name:`STable`,__name:`table`,props:{class:{},size:{},ui:{},variant:{},bordered:{type:Boolean},rounded:{type:Boolean,default:!0},striped:{type:Boolean},columns:{},data:{},rowKey:{},defaultSortState:{},sortState:{},defaultFilterState:{},filterState:{},defaultColumnWidths:{},columnWidths:{},getChildren:{},indent:{},virtual:{type:Boolean},height:{},estimateSize:{},virtualizerOptions:{},defaultExpanded:{},expanded:{},defaultExpandAll:{type:Boolean},contentProps:{},headerProps:{},bodyProps:{},footerProps:{},headProps:{},rowProps:{},cellProps:{},dir:{},defaultSelected:{},selected:{},multiple:{default:!0}},emits:[`update:sortState`,`update:filterState`,`update:columnWidths`,`update:expanded`,`update:selected`],setup(m,{emit:j}){let M=m,N=j,P=w(),F=D(M,[`class`,`ui`,`size`,`variant`,`bordered`,`rounded`,`striped`]),I=E(N),L=c(()=>Object.keys(P)),R=c(()=>e(o({size:M.size,variant:M.variant,bordered:M.bordered,rounded:M.rounded,striped:M.striped}),M.ui,{root:M.class})),z=c(()=>t[M.size??`md`]),B=e=>e===`asc`?`lucide:arrow-up`:e===`desc`?`lucide:arrow-down`:`lucide:arrow-up-down`;return k(R),(e,t)=>(y(),l(C(O),g(C(F),S(C(I))),f({_:2},[b(L.value,t=>({name:t,fn:T(n=>[x(e.$slots,t,v(h(n)))])})),P[`header-selection`]?void 0:{name:`header-selection`,fn:T(({checked:e,disabled:t,multiple:n,updateChecked:i})=>[n?(y(),l(r,{key:0,disabled:t,"model-value":e,class:_(R.value.selection),"control-props":{"aria-label":`Select all rows`},"onUpdate:modelValue":i},null,8,[`disabled`,`model-value`,`class`,`onUpdate:modelValue`])):u(`v-if`,!0)]),key:`0`},P.selection?void 0:{name:`selection`,fn:T(({checked:e,multiple:t,ariaLabel:n,toggleSelect:i})=>[t?(y(),l(r,{key:0,class:_(R.value.selection),"model-value":e,"control-props":{"aria-label":n},"onUpdate:modelValue":e=>i()},null,8,[`class`,`model-value`,`control-props`,`onUpdate:modelValue`])):(y(),l(s,{key:1,size:m.size,checked:e,"aria-label":n,onClick:e=>i()},null,8,[`size`,`checked`,`aria-label`,`onClick`]))]),key:`1`},P[`header-sort`]?void 0:{name:`header-sort`,fn:T(({sortOrder:e,ariaLabel:t,toggleSort:r})=>[p(n,{icon:B(e),class:_(R.value.sortTrigger),size:z.value,"aria-label":t,"data-sorted":e?``:void 0,onClick:e=>r()},null,8,[`icon`,`class`,`size`,`aria-label`,`data-sorted`,`onClick`])]),key:`2`},P[`header-filter`]?void 0:{name:`header-filter`,fn:T(e=>[p(a,g(e,{ui:R.value,size:m.size}),null,16,[`ui`,`size`])]),key:`3`},P[`header-resize`]?void 0:{name:`header-resize`,fn:T(({resizing:e,ariaLabel:t,onPointerdown:n,onKeydown:r})=>[d(`button`,{type:`button`,class:_(R.value.resizeHandle),"aria-label":t,"aria-pressed":e,"data-resizing":e||void 0,onPointerdown:n,onKeydown:r},null,42,A)]),key:`4`},P[`tree-toggle`]?void 0:{name:`tree-toggle`,fn:T(({expanded:e,ariaLabel:t,toggleExpand:r})=>[p(n,{class:_(R.value.treeToggle),size:z.value,"aria-expanded":e,"aria-label":t,icon:e?`lucide:chevron-down`:`lucide:chevron-right`,onClick:e=>r()},null,8,[`class`,`size`,`aria-expanded`,`aria-label`,`icon`,`onClick`])]),key:`5`},P.expand?void 0:{name:`expand`,fn:T(({expanded:e,ariaLabel:t,hasChildren:r,toggleExpand:i})=>[r||P[`expanded-row`]?(y(),l(n,{key:0,icon:e?`lucide:chevron-down`:`lucide:chevron-right`,class:_(R.value.treeToggle),size:z.value,"aria-expanded":e,"aria-label":t,"data-expanded":e?``:void 0,onClick:e=>i()},null,8,[`icon`,`class`,`size`,`aria-expanded`,`aria-label`,`data-expanded`,`onClick`])):u(`v-if`,!0)]),key:`6`},P.empty?void 0:{name:`empty`,fn:T(()=>[p(i,{title:`No data`,description:`There is no data to display.`,icon:`lucide:inbox`,"media-variant":`icon`})]),key:`7`}]),1040))}});export{j as default};
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import{miniSizeMap as t}from"../../theme/config.js";import"../../theme/index.js";import n from"../button/button-icon.js";import r from"../checkbox/checkbox.js";import i from"../empty/empty.js";import a from"./table-filter-popover.js";import{tableVariants as o}from"./variants.js";import s from"./table-radio.js";import{computed as c,createBlock as l,createCommentVNode as u,createElementVNode as d,createSlots as f,createVNode as p,defineComponent as m,guardReactiveProps as h,mergeProps as g,normalizeClass as _,normalizeProps as v,openBlock as y,renderList as b,renderSlot as x,toHandlers as S,unref as C,useSlots as w,withCtx as T}from"vue";import{useForwardListeners as E,useOmitProps as D}from"@soybeanjs/headless/composables";import{TableCompact as O,provideTableUi as k}from"@soybeanjs/headless/table";const A=[`aria-label`,`aria-pressed`,`data-resizing`,`onPointerdown`,`onKeydown`],j=m({name:`STable`,__name:`table`,props:{class:{type:[Boolean,null,String,Object,Array]},size:{},ui:{},variant:{},bordered:{type:Boolean},rounded:{type:Boolean,default:!0},striped:{type:Boolean},columns:{},data:{},rowKey:{},defaultSortState:{},sortState:{},defaultFilterState:{},filterState:{},defaultColumnWidths:{},columnWidths:{},getChildren:{},indent:{},virtual:{type:Boolean},height:{},estimateSize:{},virtualizerOptions:{},defaultExpanded:{},expanded:{},defaultExpandAll:{type:Boolean},contentProps:{},headerProps:{},bodyProps:{},footerProps:{},headProps:{},rowProps:{},cellProps:{},dir:{},defaultSelected:{},selected:{},multiple:{default:!0}},emits:[`update:sortState`,`update:filterState`,`update:columnWidths`,`update:expanded`,`update:selected`],setup(m,{emit:j}){let M=m,N=j,P=w(),F=D(M,[`class`,`ui`,`size`,`variant`,`bordered`,`rounded`,`striped`]),I=E(N),L=c(()=>Object.keys(P)),R=c(()=>e(o({size:M.size,variant:M.variant,bordered:M.bordered,rounded:M.rounded,striped:M.striped}),M.ui,{root:M.class})),z=c(()=>t[M.size??`md`]),B=e=>e===`asc`?`lucide:arrow-up`:e===`desc`?`lucide:arrow-down`:`lucide:arrow-up-down`;return k(R),(e,t)=>(y(),l(C(O),g(C(F),S(C(I))),f({_:2},[b(L.value,t=>({name:t,fn:T(n=>[x(e.$slots,t,v(h(n)))])})),P[`header-selection`]?void 0:{name:`header-selection`,fn:T(({checked:e,disabled:t,multiple:n,updateChecked:i})=>[n?(y(),l(r,{key:0,disabled:t,"model-value":e,class:_(R.value.selection),"control-props":{"aria-label":`Select all rows`},"onUpdate:modelValue":i},null,8,[`disabled`,`model-value`,`class`,`onUpdate:modelValue`])):u(`v-if`,!0)]),key:`0`},P.selection?void 0:{name:`selection`,fn:T(({checked:e,multiple:t,ariaLabel:n,toggleSelect:i})=>[t?(y(),l(r,{key:0,class:_(R.value.selection),"model-value":e,"control-props":{"aria-label":n},"onUpdate:modelValue":e=>i()},null,8,[`class`,`model-value`,`control-props`,`onUpdate:modelValue`])):(y(),l(s,{key:1,size:m.size,checked:e,"aria-label":n,onClick:e=>i()},null,8,[`size`,`checked`,`aria-label`,`onClick`]))]),key:`1`},P[`header-sort`]?void 0:{name:`header-sort`,fn:T(({sortOrder:e,ariaLabel:t,toggleSort:r})=>[p(n,{icon:B(e),class:_(R.value.sortTrigger),size:z.value,"aria-label":t,"data-sorted":e?``:void 0,onClick:e=>r()},null,8,[`icon`,`class`,`size`,`aria-label`,`data-sorted`,`onClick`])]),key:`2`},P[`header-filter`]?void 0:{name:`header-filter`,fn:T(e=>[p(a,g(e,{ui:R.value,size:m.size}),null,16,[`ui`,`size`])]),key:`3`},P[`header-resize`]?void 0:{name:`header-resize`,fn:T(({resizing:e,ariaLabel:t,onPointerdown:n,onKeydown:r})=>[d(`button`,{type:`button`,class:_(R.value.resizeHandle),"aria-label":t,"aria-pressed":e,"data-resizing":e||void 0,onPointerdown:n,onKeydown:r},null,42,A)]),key:`4`},P[`tree-toggle`]?void 0:{name:`tree-toggle`,fn:T(({expanded:e,ariaLabel:t,toggleExpand:r})=>[p(n,{class:_(R.value.treeToggle),size:z.value,"aria-expanded":e,"aria-label":t,icon:e?`lucide:chevron-down`:`lucide:chevron-right`,onClick:e=>r()},null,8,[`class`,`size`,`aria-expanded`,`aria-label`,`icon`,`onClick`])]),key:`5`},P.expand?void 0:{name:`expand`,fn:T(({expanded:e,ariaLabel:t,hasChildren:r,toggleExpand:i})=>[r||P[`expanded-row`]?(y(),l(n,{key:0,icon:e?`lucide:chevron-down`:`lucide:chevron-right`,class:_(R.value.treeToggle),size:z.value,"aria-expanded":e,"aria-label":t,"data-expanded":e?``:void 0,onClick:e=>i()},null,8,[`icon`,`class`,`size`,`aria-expanded`,`aria-label`,`data-expanded`,`onClick`])):u(`v-if`,!0)]),key:`6`},P.empty?void 0:{name:`empty`,fn:T(()=>[p(i,{title:`No data`,description:`There is no data to display.`,icon:`lucide:inbox`,"media-variant":`icon`})]),key:`7`}]),1040))}});export{j as default};
@@ -1,41 +1,116 @@
1
1
  import { ThemeSize } from "../../theme/types.js";
2
2
  import { TableVariant } from "./variants.js";
3
- import { ClassValue, UiClass } from "@soybeanjs/headless";
4
3
  import { TableBaseData, TableColumn, TableColumnFilter, TableColumnFilterOption, TableColumnFilterValue, TableColumnType, TableCompactEmits, TableCompactProps, TableCompactSlots, TableHeaderFilterSlotProps, TableSortOrder, TableUiSlot, TableUnifiedKey } from "@soybeanjs/headless/table";
4
+ import { ClassValue, UiClass } from "@soybeanjs/headless/types";
5
5
 
6
6
  //#region src/components/table/types.d.ts
7
+ /**
8
+ * Additional UI slots for the table component.
9
+ */
7
10
  type TableExtraUiSlot = 'selection' | 'filterTrigger' | 'filterPopup' | 'filterSearch' | 'filterOptions' | 'filterOption' | 'filterOptionLabel' | 'filterFooter' | 'filterCount' | 'filterAction' | 'filterEmpty';
11
+ /**
12
+ * Extended UI class overrides for the Table component.
13
+ */
8
14
  type TableExtendedUi = UiClass<TableUiSlot | TableExtraUiSlot>;
15
+ /**
16
+ * Properties for the Table component.
17
+ */
9
18
  interface TableProps<T extends TableBaseData = TableBaseData, R extends string | number = string | number, M extends boolean = false> extends TableCompactProps<T, R, M> {
10
19
  /**
11
20
  * Additional class names to apply to the table.
12
21
  */
13
22
  class?: ClassValue;
23
+ /**
24
+ * Visual size of the component.
25
+ */
14
26
  size?: ThemeSize;
27
+ /**
28
+ * Per-slot class overrides for the component.
29
+ */
15
30
  ui?: Partial<TableExtendedUi>;
31
+ /**
32
+ * Visual variant of the component.
33
+ */
16
34
  variant?: TableVariant;
35
+ /**
36
+ * Whether bordered.
37
+ */
17
38
  bordered?: boolean;
39
+ /**
40
+ * Whether rounded.
41
+ */
18
42
  rounded?: boolean;
43
+ /**
44
+ * Whether striped.
45
+ */
19
46
  striped?: boolean;
20
47
  }
48
+ /**
49
+ * Events for the Table component.
50
+ */
21
51
  type TableEmits<R extends TableUnifiedKey = TableUnifiedKey, M extends boolean = false> = TableCompactEmits<R, M>;
52
+ /**
53
+ * Slots for the Table component.
54
+ */
22
55
  type TableSlots<T extends TableBaseData = TableBaseData> = TableCompactSlots<T>;
56
+ /**
57
+ * Properties for the TableRadio component.
58
+ */
23
59
  interface TableRadioProps {
60
+ /**
61
+ * Visual size of the component.
62
+ */
24
63
  size?: ThemeSize;
64
+ /**
65
+ * Whether the item is checked.
66
+ */
25
67
  checked?: boolean;
26
68
  }
69
+ /**
70
+ * Type information for TableFilterPopoverColumnMeta.
71
+ */
27
72
  interface TableFilterPopoverColumnMeta {
73
+ /**
74
+ * Title text rendered by the component.
75
+ */
28
76
  title?: string;
77
+ /**
78
+ * Key.
79
+ */
29
80
  key?: string;
81
+ /**
82
+ * Data index.
83
+ */
30
84
  dataIndex?: string;
31
85
  }
86
+ /**
87
+ * Type information for TableFilterPopoverOption.
88
+ */
32
89
  interface TableFilterPopoverOption {
90
+ /**
91
+ * Label text rendered by the component.
92
+ */
33
93
  label: string;
94
+ /**
95
+ * Value associated with the current item.
96
+ */
34
97
  value: string;
98
+ /**
99
+ * Whether the component is disabled.
100
+ */
35
101
  disabled?: boolean;
36
102
  }
103
+ /**
104
+ * Properties for the TableFilterPopover component.
105
+ */
37
106
  interface TableFilterPopoverProps<T extends TableBaseData = TableBaseData> extends TableHeaderFilterSlotProps<T> {
107
+ /**
108
+ * Visual size of the component.
109
+ */
38
110
  size?: ThemeSize;
111
+ /**
112
+ * Per-slot class overrides for the component.
113
+ */
39
114
  ui: TableExtendedUi;
40
115
  }
41
116
  //#endregion
@@ -1,4 +1,3 @@
1
- import { TabsEmits, TabsProps, TabsSlots } from "./types.js";
1
+ import { TabsEmits, TabsOptionData, TabsProps, TabsSlots } from "./types.js";
2
2
  import { _default } from "./tabs.vue.js";
3
- import { TabsCompactEmits as TabsCompactEmits$1, TabsCompactProps as TabsCompactProps$1, TabsContentProps, TabsIndicatorProps, TabsListProps, TabsOptionData as TabsOptionData$1, TabsRootEmits, TabsRootProps, TabsTriggerProps } from "@soybeanjs/headless/tabs";
4
- export { type TabsCompactEmits$1 as TabsCompactEmits, type TabsCompactProps$1 as TabsCompactProps, type TabsContentProps, type TabsIndicatorProps, type TabsListProps, type TabsOptionData$1 as TabsOptionData, type TabsRootEmits, type TabsRootProps, type TabsTriggerProps };
3
+ export * from "@soybeanjs/headless/tabs";
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{tabsVariants as t}from"./variants.js";import{computed as n,createBlock as r,createCommentVNode as i,createSlots as a,defineComponent as o,guardReactiveProps as s,mergeProps as c,normalizeProps as l,openBlock as u,renderList as d,renderSlot as f,toHandlers as p,unref as m,useSlots as h,withCtx as g}from"vue";import{useForwardListeners as _,useOmitProps as v}from"@soybeanjs/headless/composables";import{TabsCompact as y,provideTabsUi as b}from"@soybeanjs/headless";import{keysOf as x}from"@soybeanjs/utils";const S=o({name:`STabs`,__name:`tabs`,props:{class:{},size:{},ui:{},fill:{default:`full`},items:{},enableIndicator:{type:Boolean,default:!0},listProps:{},triggerProps:{},contentProps:{},indicatorProps:{},modelValue:{default:void 0},defaultValue:{},activationMode:{},unmountOnHide:{type:Boolean,default:!0},orientation:{},dir:{},loop:{type:Boolean,default:!0}},emits:[`update:modelValue`],setup(o,{emit:S}){let C=o,w=S,T=h(),E=v(C,[`class`,`size`,`ui`,`fill`]),D=_(w),O=n(()=>x(T));return b(n(()=>e(t({size:C.size,orientation:C.orientation,fill:C.fill,enableIndicator:C.enableIndicator}),C.ui,{root:C.class}))),(e,t)=>(u(),r(m(y),c(m(E),{items:o.items},p(m(D))),a({_:2},[d(O.value,t=>({name:t,fn:g(n=>[i(` @vue-ignore ignore vue slot props type `),f(e.$slots,t,l(s(n)))])}))]),1040,[`items`]))}});export{S as default};
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{tabsVariants as t}from"./variants.js";import{computed as n,createBlock as r,createCommentVNode as i,createSlots as a,defineComponent as o,guardReactiveProps as s,mergeProps as c,normalizeProps as l,openBlock as u,renderList as d,renderSlot as f,toHandlers as p,unref as m,useSlots as h,withCtx as g}from"vue";import{useForwardListeners as _,useOmitProps as v}from"@soybeanjs/headless/composables";import{keysOf as y}from"@soybeanjs/utils";import{TabsCompact as b,provideTabsUi as x}from"@soybeanjs/headless/tabs";const S=o({name:`STabs`,__name:`tabs`,props:{class:{type:[Boolean,null,String,Object,Array]},size:{},ui:{},fill:{default:`full`},items:{},enableIndicator:{type:Boolean,default:!0},listProps:{},triggerProps:{},contentProps:{},indicatorProps:{},modelValue:{default:void 0},defaultValue:{},activationMode:{},unmountOnHide:{type:Boolean,default:!0},orientation:{},dir:{},loop:{type:Boolean,default:!0}},emits:[`update:modelValue`],setup(o,{emit:S}){let C=o,w=S,T=h(),E=v(C,[`class`,`size`,`ui`,`fill`]),D=_(w),O=n(()=>y(T));return x(n(()=>e(t({size:C.size,orientation:C.orientation,fill:C.fill,enableIndicator:C.enableIndicator}),C.ui,{root:C.class}))),(e,t)=>(u(),r(m(b),c(m(E),{items:o.items},p(m(D))),a({_:2},[d(O.value,t=>({name:t,fn:g(n=>[i(` @vue-ignore ignore vue slot props type `),f(e.$slots,t,l(s(n)))])}))]),1040,[`items`]))}});export{S as default};