@soybeanjs/ui 0.13.8 → 0.15.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (372) hide show
  1. package/README.md +79 -147
  2. package/README.zh-CN.md +79 -147
  3. package/dist/components/accordion/accordion.js +1 -1
  4. package/dist/components/accordion/accordion.vue.d.ts +6 -34
  5. package/dist/components/accordion/index.d.ts +3 -3
  6. package/dist/components/accordion/types.d.ts +6 -25
  7. package/dist/components/affix/affix.js +1 -0
  8. package/dist/components/affix/affix.vue.d.ts +22 -0
  9. package/dist/components/affix/index.d.ts +4 -0
  10. package/dist/components/affix/index.js +1 -0
  11. package/dist/components/affix/types.d.ts +15 -0
  12. package/dist/components/affix/variants.js +1 -0
  13. package/dist/components/alert/alert.js +1 -1
  14. package/dist/components/alert/alert.vue.d.ts +4 -4
  15. package/dist/components/alert/variants.d.ts +3 -3
  16. package/dist/components/alert-dialog/alert-dialog-cancel.vue.d.ts +4 -4
  17. package/dist/components/alert-dialog/alert-dialog-confirm.vue.d.ts +4 -4
  18. package/dist/components/alert-dialog/alert-dialog.vue.d.ts +6 -6
  19. package/dist/components/anchor/anchor-item.js +1 -0
  20. package/dist/components/anchor/anchor.js +1 -0
  21. package/dist/components/anchor/anchor.vue.d.ts +23 -0
  22. package/dist/components/anchor/context.js +1 -0
  23. package/dist/components/anchor/index.d.ts +4 -0
  24. package/dist/components/anchor/index.js +1 -0
  25. package/dist/components/anchor/types.d.ts +34 -0
  26. package/dist/components/anchor/variants.js +1 -0
  27. package/dist/components/autocomplete/autocomplete-group-option.js +1 -0
  28. package/dist/components/autocomplete/autocomplete-option.js +1 -0
  29. package/dist/components/autocomplete/autocomplete-single-option.js +1 -0
  30. package/dist/components/autocomplete/autocomplete.js +1 -0
  31. package/dist/components/autocomplete/autocomplete.vue.d.ts +47 -0
  32. package/dist/components/autocomplete/context.js +1 -0
  33. package/dist/components/autocomplete/index.d.ts +4 -0
  34. package/dist/components/autocomplete/index.js +1 -0
  35. package/dist/components/autocomplete/shared.js +1 -0
  36. package/dist/components/autocomplete/types.d.ts +94 -0
  37. package/dist/components/autocomplete/variants.js +1 -0
  38. package/dist/components/avatar/avatar.vue.d.ts +7 -7
  39. package/dist/components/badge/badge.vue.d.ts +4 -4
  40. package/dist/components/badge/variants.d.ts +3 -3
  41. package/dist/components/bottom-sheet/bottom-sheet-close.js +1 -0
  42. package/dist/components/bottom-sheet/bottom-sheet-close.vue.d.ts +18 -0
  43. package/dist/components/bottom-sheet/bottom-sheet.js +1 -0
  44. package/dist/components/bottom-sheet/bottom-sheet.vue.d.ts +72 -0
  45. package/dist/components/bottom-sheet/index.d.ts +3 -0
  46. package/dist/components/bottom-sheet/index.js +1 -0
  47. package/dist/components/bottom-sheet/types.d.ts +31 -0
  48. package/dist/components/bottom-sheet/variants.js +1 -0
  49. package/dist/components/breadcrumb/breadcrumb.vue.d.ts +3 -3
  50. package/dist/components/button/button-group.vue.d.ts +6 -6
  51. package/dist/components/button/button-icon.vue.d.ts +3 -3
  52. package/dist/components/button/button-link.vue.d.ts +4 -4
  53. package/dist/components/button/button-loading.vue.d.ts +3 -3
  54. package/dist/components/button/button.vue.d.ts +4 -4
  55. package/dist/components/button/variants.d.ts +3 -3
  56. package/dist/components/card/card-collapsible-trigger.vue.d.ts +3 -3
  57. package/dist/components/card/card.js +1 -1
  58. package/dist/components/card/card.vue.d.ts +3 -3
  59. package/dist/components/carousel/carousel-content.js +1 -0
  60. package/dist/components/carousel/carousel-content.vue.d.ts +18 -0
  61. package/dist/components/carousel/carousel-item.js +1 -0
  62. package/dist/components/carousel/carousel-item.vue.d.ts +18 -0
  63. package/dist/components/carousel/carousel-next.js +1 -0
  64. package/dist/components/carousel/carousel-next.vue.d.ts +22 -0
  65. package/dist/components/carousel/carousel-previous.js +1 -0
  66. package/dist/components/carousel/carousel-previous.vue.d.ts +22 -0
  67. package/dist/components/carousel/carousel.js +1 -0
  68. package/dist/components/carousel/carousel.vue.d.ts +15 -0
  69. package/dist/components/carousel/index.d.ts +8 -0
  70. package/dist/components/carousel/index.js +1 -0
  71. package/dist/components/carousel/types.d.ts +10 -0
  72. package/dist/components/carousel/variants.js +1 -0
  73. package/dist/components/checkbox/checkbox-card-group.vue.d.ts +3 -3
  74. package/dist/components/checkbox/checkbox-card.vue.d.ts +8 -8
  75. package/dist/components/checkbox/checkbox-group.vue.d.ts +3 -3
  76. package/dist/components/checkbox/checkbox.vue.d.ts +12 -12
  77. package/dist/components/checkbox/variants.d.ts +3 -3
  78. package/dist/components/collapsible/collapsible.vue.d.ts +4 -4
  79. package/dist/components/color-area/color-area.js +1 -0
  80. package/dist/components/color-area/color-area.vue.d.ts +19 -0
  81. package/dist/components/color-area/index.d.ts +4 -0
  82. package/dist/components/color-area/index.js +1 -0
  83. package/dist/components/color-area/types.d.ts +14 -0
  84. package/dist/components/color-area/variants.js +1 -0
  85. package/dist/components/color-field/color-field.js +1 -0
  86. package/dist/components/color-field/color-field.vue.d.ts +15 -0
  87. package/dist/components/color-field/index.d.ts +4 -0
  88. package/dist/components/color-field/index.js +1 -0
  89. package/dist/components/color-field/types.d.ts +13 -0
  90. package/dist/components/color-field/variants.js +1 -0
  91. package/dist/components/color-picker/color-picker.js +1 -0
  92. package/dist/components/color-picker/color-picker.vue.d.ts +55 -0
  93. package/dist/components/color-picker/index.d.ts +2 -0
  94. package/dist/components/color-picker/index.js +1 -0
  95. package/dist/components/color-picker/shared.js +1 -0
  96. package/dist/components/color-picker/types.d.ts +47 -0
  97. package/dist/components/color-picker/variants.js +1 -0
  98. package/dist/components/color-slider/color-slider.js +1 -0
  99. package/dist/components/color-slider/color-slider.vue.d.ts +23 -0
  100. package/dist/components/color-slider/index.d.ts +4 -0
  101. package/dist/components/color-slider/index.js +1 -0
  102. package/dist/components/color-slider/types.d.ts +16 -0
  103. package/dist/components/color-swatch/color-swatch.js +1 -0
  104. package/dist/components/color-swatch/color-swatch.vue.d.ts +18 -0
  105. package/dist/components/color-swatch/index.d.ts +5 -0
  106. package/dist/components/color-swatch/index.js +1 -0
  107. package/dist/components/color-swatch/types.d.ts +16 -0
  108. package/dist/components/color-swatch/variants.d.ts +108 -0
  109. package/dist/components/color-swatch/variants.js +1 -0
  110. package/dist/components/color-swatch-picker/color-swatch-picker.js +1 -0
  111. package/dist/components/color-swatch-picker/color-swatch-picker.vue.d.ts +39 -0
  112. package/dist/components/color-swatch-picker/index.d.ts +5 -0
  113. package/dist/components/color-swatch-picker/index.js +1 -0
  114. package/dist/components/color-swatch-picker/types.d.ts +20 -0
  115. package/dist/components/color-swatch-picker/variants.d.ts +153 -0
  116. package/dist/components/color-swatch-picker/variants.js +1 -0
  117. package/dist/components/combobox/combobox-group-option.js +1 -0
  118. package/dist/components/combobox/combobox-option.js +1 -0
  119. package/dist/components/combobox/combobox-single-option.js +1 -0
  120. package/dist/components/combobox/combobox.js +1 -0
  121. package/dist/components/combobox/combobox.vue.d.ts +76 -0
  122. package/dist/components/combobox/index.d.ts +4 -0
  123. package/dist/components/combobox/index.js +1 -0
  124. package/dist/components/combobox/shared.js +1 -0
  125. package/dist/components/combobox/types.d.ts +68 -0
  126. package/dist/components/combobox/variants.js +1 -0
  127. package/dist/components/command/command.vue.d.ts +8 -8
  128. package/dist/components/config-provider/config-provider.js +1 -1
  129. package/dist/components/config-provider/config-provider.vue.d.ts +7 -7
  130. package/dist/components/config-provider/context.js +1 -1
  131. package/dist/components/config-provider/types.d.ts +14 -2
  132. package/dist/components/context-menu/context-menu-checkbox.js +1 -1
  133. package/dist/components/context-menu/context-menu-checkbox.vue.d.ts +14 -21
  134. package/dist/components/context-menu/context-menu-radio.js +1 -1
  135. package/dist/components/context-menu/context-menu-radio.vue.d.ts +14 -21
  136. package/dist/components/context-menu/context-menu-wrapper.js +1 -1
  137. package/dist/components/context-menu/context-menu-wrapper.vue.d.ts +16 -16
  138. package/dist/components/context-menu/context-menu.js +1 -1
  139. package/dist/components/context-menu/context-menu.vue.d.ts +13 -21
  140. package/dist/components/context-menu/index.d.ts +5 -7
  141. package/dist/components/context-menu/types.d.ts +14 -42
  142. package/dist/components/dialog/dialog-close.vue.d.ts +2 -2
  143. package/dist/components/dialog/dialog-pure.vue.d.ts +12 -12
  144. package/dist/components/dialog/dialog.vue.d.ts +12 -12
  145. package/dist/components/drawer/drawer-close.vue.d.ts +2 -2
  146. package/dist/components/drawer/drawer.vue.d.ts +12 -12
  147. package/dist/components/dropdown-menu/dropdown-menu-checkbox.js +1 -1
  148. package/dist/components/dropdown-menu/dropdown-menu-checkbox.vue.d.ts +14 -21
  149. package/dist/components/dropdown-menu/dropdown-menu-radio.js +1 -1
  150. package/dist/components/dropdown-menu/dropdown-menu-radio.vue.d.ts +14 -21
  151. package/dist/components/dropdown-menu/dropdown-menu-wrapper.js +1 -1
  152. package/dist/components/dropdown-menu/dropdown-menu-wrapper.vue.d.ts +16 -16
  153. package/dist/components/dropdown-menu/dropdown-menu.js +1 -1
  154. package/dist/components/dropdown-menu/dropdown-menu.vue.d.ts +13 -21
  155. package/dist/components/dropdown-menu/index.d.ts +2 -4
  156. package/dist/components/dropdown-menu/index.js +1 -1
  157. package/dist/components/dropdown-menu/types.d.ts +14 -38
  158. package/dist/components/editable/editable.js +1 -0
  159. package/dist/components/editable/editable.vue.d.ts +85 -0
  160. package/dist/components/editable/index.d.ts +4 -0
  161. package/dist/components/editable/index.js +1 -0
  162. package/dist/components/editable/types.d.ts +20 -0
  163. package/dist/components/editable/variants.js +1 -0
  164. package/dist/components/empty/empty.js +1 -0
  165. package/dist/components/empty/empty.vue.d.ts +21 -0
  166. package/dist/components/empty/index.d.ts +5 -0
  167. package/dist/components/empty/index.js +1 -0
  168. package/dist/components/empty/types.d.ts +20 -0
  169. package/dist/components/empty/variants.d.ts +57 -0
  170. package/dist/components/empty/variants.js +1 -0
  171. package/dist/components/form/form-field-base.vue.d.ts +3 -3
  172. package/dist/components/form/form.vue.d.ts +2 -2
  173. package/dist/components/form/use-form.d.ts +22 -22
  174. package/dist/components/form/variants.js +1 -1
  175. package/dist/components/hover-card/hover-card.js +1 -0
  176. package/dist/components/hover-card/hover-card.vue.d.ts +35 -0
  177. package/dist/components/hover-card/index.d.ts +4 -0
  178. package/dist/components/hover-card/index.js +1 -0
  179. package/dist/components/hover-card/types.d.ts +22 -0
  180. package/dist/components/hover-card/variants.js +1 -0
  181. package/dist/components/icon/icon.vue.d.ts +2 -2
  182. package/dist/components/icon/types.d.ts +3 -4
  183. package/dist/components/input/input.vue.d.ts +4 -4
  184. package/dist/components/input-number/input-number.vue.d.ts +4 -4
  185. package/dist/components/kbd/kbd.vue.d.ts +3 -3
  186. package/dist/components/kbd/variants.d.ts +3 -3
  187. package/dist/components/label/label.vue.d.ts +2 -2
  188. package/dist/components/layout/layout-trigger.vue.d.ts +2 -2
  189. package/dist/components/layout/layout.vue.d.ts +4 -4
  190. package/dist/components/link/link.vue.d.ts +4 -4
  191. package/dist/components/list/list-item.vue.d.ts +2 -2
  192. package/dist/components/list/list.vue.d.ts +2 -2
  193. package/dist/components/menu/context.js +1 -1
  194. package/dist/components/menu/index.d.ts +2 -7
  195. package/dist/components/menu/index.js +1 -1
  196. package/dist/components/menu/types.d.ts +9 -86
  197. package/dist/components/menu/variants.js +1 -1
  198. package/dist/components/menubar/index.d.ts +2 -0
  199. package/dist/components/menubar/index.js +1 -0
  200. package/dist/components/menubar/menubar.js +1 -0
  201. package/dist/components/menubar/menubar.vue.d.ts +32 -0
  202. package/dist/components/menubar/types.d.ts +17 -0
  203. package/dist/components/menubar/variants.js +1 -0
  204. package/dist/components/navigation-menu/navigation-menu.vue.d.ts +13 -13
  205. package/dist/components/page-tabs/page-tabs.vue.d.ts +4 -4
  206. package/dist/components/page-tabs/types.d.ts +1 -1
  207. package/dist/components/page-tabs/variants.d.ts +3 -3
  208. package/dist/components/pagination/pagination.js +1 -1
  209. package/dist/components/pagination/pagination.vue.d.ts +4 -4
  210. package/dist/components/pagination/variants.d.ts +3 -3
  211. package/dist/components/password/password.vue.d.ts +4 -4
  212. package/dist/components/popconfirm/popconfirm-cancel.js +1 -1
  213. package/dist/components/popconfirm/popconfirm-cancel.vue.d.ts +4 -4
  214. package/dist/components/popconfirm/popconfirm-confirm.js +1 -1
  215. package/dist/components/popconfirm/popconfirm-confirm.vue.d.ts +4 -4
  216. package/dist/components/popconfirm/popconfirm.vue.d.ts +14 -14
  217. package/dist/components/popover/popover.js +1 -1
  218. package/dist/components/popover/popover.vue.d.ts +11 -11
  219. package/dist/components/progress/context.d.ts +5 -0
  220. package/dist/components/progress/context.js +1 -0
  221. package/dist/components/progress/index.d.ts +8 -0
  222. package/dist/components/progress/index.js +1 -0
  223. package/dist/components/progress/loading-bar.js +1 -0
  224. package/dist/components/progress/loading-bar.vue.d.ts +25 -0
  225. package/dist/components/progress/progress-circle.js +1 -0
  226. package/dist/components/progress/progress-circle.vue.d.ts +29 -0
  227. package/dist/components/progress/progress.js +1 -0
  228. package/dist/components/progress/progress.vue.d.ts +30 -0
  229. package/dist/components/progress/shared.d.ts +7 -0
  230. package/dist/components/progress/shared.js +1 -0
  231. package/dist/components/progress/types.d.ts +43 -0
  232. package/dist/components/progress/variants.js +1 -0
  233. package/dist/components/radio-group/radio-card-group.vue.d.ts +3 -3
  234. package/dist/components/radio-group/radio-card.vue.d.ts +2 -2
  235. package/dist/components/radio-group/radio-group.vue.d.ts +3 -3
  236. package/dist/components/radio-group/radio.vue.d.ts +2 -2
  237. package/dist/components/radio-group/variants.d.ts +3 -3
  238. package/dist/components/scroll-area/index.d.ts +4 -0
  239. package/dist/components/scroll-area/index.js +1 -0
  240. package/dist/components/scroll-area/scroll-area.js +1 -0
  241. package/dist/components/scroll-area/scroll-area.vue.d.ts +18 -0
  242. package/dist/components/scroll-area/types.d.ts +15 -0
  243. package/dist/components/scroll-area/variants.js +1 -0
  244. package/dist/components/segment/segment.vue.d.ts +3 -3
  245. package/dist/components/select/select.vue.d.ts +8 -8
  246. package/dist/components/separator/separator.vue.d.ts +5 -5
  247. package/dist/components/separator/variants.d.ts +3 -3
  248. package/dist/components/skeleton/index.d.ts +3 -0
  249. package/dist/components/skeleton/index.js +1 -0
  250. package/dist/components/skeleton/skeleton.js +1 -0
  251. package/dist/components/skeleton/skeleton.vue.d.ts +20 -0
  252. package/dist/components/skeleton/types.d.ts +16 -0
  253. package/dist/components/skeleton/variants.d.ts +60 -0
  254. package/dist/components/skeleton/variants.js +1 -0
  255. package/dist/components/slider/index.d.ts +4 -0
  256. package/dist/components/slider/index.js +1 -0
  257. package/dist/components/slider/slider.js +1 -0
  258. package/dist/components/slider/slider.vue.d.ts +28 -0
  259. package/dist/components/slider/types.d.ts +16 -0
  260. package/dist/components/slider/variants.js +1 -0
  261. package/dist/components/spinner/index.d.ts +2 -0
  262. package/dist/components/spinner/index.js +1 -0
  263. package/dist/components/spinner/spinner.js +1 -0
  264. package/dist/components/spinner/spinner.vue.d.ts +10 -0
  265. package/dist/components/spinner/types.d.ts +19 -0
  266. package/dist/components/spinner/variants.js +1 -0
  267. package/dist/components/splitter/index.d.ts +5 -0
  268. package/dist/components/splitter/index.js +1 -0
  269. package/dist/components/splitter/splitter-group.js +1 -0
  270. package/dist/components/splitter/splitter-group.vue.d.ts +22 -0
  271. package/dist/components/splitter/splitter-panel.js +1 -0
  272. package/dist/components/splitter/splitter-panel.vue.d.ts +32 -0
  273. package/dist/components/splitter/splitter-resize-handle.js +1 -0
  274. package/dist/components/splitter/splitter-resize-handle.vue.d.ts +415 -0
  275. package/dist/components/splitter/types.d.ts +12 -0
  276. package/dist/components/splitter/variants.js +1 -0
  277. package/dist/components/stepper/index.d.ts +4 -0
  278. package/dist/components/stepper/index.js +1 -0
  279. package/dist/components/stepper/stepper.js +1 -0
  280. package/dist/components/stepper/stepper.vue.d.ts +121 -0
  281. package/dist/components/stepper/types.d.ts +26 -0
  282. package/dist/components/stepper/variants.js +1 -0
  283. package/dist/components/switch/switch.vue.d.ts +22 -22
  284. package/dist/components/switch/variants.d.ts +3 -3
  285. package/dist/components/table/hooks.d.ts +19 -19
  286. package/dist/components/table/hooks.js +1 -1
  287. package/dist/components/table/index.d.ts +1 -1
  288. package/dist/components/table/table-filter-popover.js +1 -0
  289. package/dist/components/table/table-radio.js +1 -1
  290. package/dist/components/table/table.js +1 -1
  291. package/dist/components/table/table.vue.d.ts +10 -6
  292. package/dist/components/table/types.d.ts +25 -83
  293. package/dist/components/table/variants.js +1 -1
  294. package/dist/components/tabs/tabs.vue.d.ts +3 -3
  295. package/dist/components/tabs/variants.d.ts +3 -3
  296. package/dist/components/tag/tag.vue.d.ts +4 -4
  297. package/dist/components/tag/variants.d.ts +3 -3
  298. package/dist/components/tags-input/index.d.ts +5 -0
  299. package/dist/components/tags-input/index.js +1 -0
  300. package/dist/components/tags-input/tags-input-item-delete.js +1 -0
  301. package/dist/components/tags-input/tags-input-item-delete.vue.d.ts +18 -0
  302. package/dist/components/tags-input/tags-input.js +1 -0
  303. package/dist/components/tags-input/tags-input.vue.d.ts +29 -0
  304. package/dist/components/tags-input/types.d.ts +12 -0
  305. package/dist/components/tags-input/variants.js +1 -0
  306. package/dist/components/textarea/textarea.vue.d.ts +4 -4
  307. package/dist/components/textarea/variants.d.ts +3 -3
  308. package/dist/components/toast/index.d.ts +4 -5
  309. package/dist/components/toast/index.js +1 -1
  310. package/dist/components/toast/styles.js +274 -0
  311. package/dist/components/toast/toaster.js +1 -0
  312. package/dist/components/toast/toaster.vue.d.ts +22 -0
  313. package/dist/components/toast/types.d.ts +5 -55
  314. package/dist/components/toast/variants.js +1 -1
  315. package/dist/components/toggle/index.d.ts +3 -0
  316. package/dist/components/toggle/index.js +1 -0
  317. package/dist/components/toggle/toggle.js +1 -0
  318. package/dist/components/toggle/toggle.vue.d.ts +30 -0
  319. package/dist/components/toggle/types.d.ts +14 -0
  320. package/dist/components/toggle/variants.d.ts +100 -0
  321. package/dist/components/toggle/variants.js +1 -0
  322. package/dist/components/toggle-group/index.d.ts +6 -0
  323. package/dist/components/toggle-group/index.js +1 -0
  324. package/dist/components/toggle-group/toggle-group-item.js +1 -0
  325. package/dist/components/toggle-group/toggle-group-item.vue.d.ts +22 -0
  326. package/dist/components/toggle-group/toggle-group.js +1 -0
  327. package/dist/components/toggle-group/toggle-group.vue.d.ts +24 -0
  328. package/dist/components/toggle-group/types.d.ts +15 -0
  329. package/dist/components/toggle-group/variants.d.ts +216 -0
  330. package/dist/components/toggle-group/variants.js +1 -0
  331. package/dist/components/toolbar/index.d.ts +4 -0
  332. package/dist/components/toolbar/index.js +1 -0
  333. package/dist/components/toolbar/toolbar.js +1 -0
  334. package/dist/components/toolbar/toolbar.vue.d.ts +18 -0
  335. package/dist/components/toolbar/types.d.ts +9 -0
  336. package/dist/components/toolbar/variants.js +1 -0
  337. package/dist/components/tooltip/tooltip.vue.d.ts +7 -7
  338. package/dist/components/tree/tree-virtualizer.vue.d.ts +7 -7
  339. package/dist/components/tree/tree.vue.d.ts +5 -5
  340. package/dist/components/tree-menu/tree-menu-option-slot.js +1 -1
  341. package/dist/components/tree-menu/tree-menu-styled-item.vue.d.ts +2 -2
  342. package/dist/components/tree-menu/tree-menu.vue.d.ts +3 -3
  343. package/dist/components/tree-menu/types.d.ts +1 -1
  344. package/dist/components/tree-menu/variants.js +1 -1
  345. package/dist/components/virtualizer/virtualizer.vue.d.ts +5 -5
  346. package/dist/constants/components.d.ts +27 -0
  347. package/dist/constants/components.js +1 -1
  348. package/dist/index.d.ts +179 -94
  349. package/dist/index.js +1 -1
  350. package/dist/nuxt/index.d.ts +2 -2
  351. package/dist/resolver/index.d.ts +2 -2
  352. package/dist/styles.css +600 -111
  353. package/dist/theme/config.js +1 -1
  354. package/package.json +21 -18
  355. package/dist/components/menu/menu-checkbox-options.js +0 -1
  356. package/dist/components/menu/menu-checkbox-options.vue.d.ts +0 -28
  357. package/dist/components/menu/menu-item-slot.js +0 -1
  358. package/dist/components/menu/menu-option.js +0 -1
  359. package/dist/components/menu/menu-option.vue.d.ts +0 -48
  360. package/dist/components/menu/menu-options.js +0 -1
  361. package/dist/components/menu/menu-options.vue.d.ts +0 -48
  362. package/dist/components/menu/menu-radio-options.js +0 -1
  363. package/dist/components/menu/menu-radio-options.vue.d.ts +0 -28
  364. package/dist/components/menu/shared.js +0 -1
  365. package/dist/components/table/shared.js +0 -1
  366. package/dist/components/toast/context.d.ts +0 -5
  367. package/dist/components/toast/context.js +0 -1
  368. package/dist/components/toast/shared.js +0 -1
  369. package/dist/components/toast/toast-provider.js +0 -1
  370. package/dist/components/toast/toast.js +0 -1
  371. package/dist/components/toast/toast.vue.d.ts +0 -21
  372. package/dist/components/toast/variants.d.ts +0 -60
@@ -1,13 +1,13 @@
1
1
  import { ThemeColor, ThemeSize } from "../../theme/types.js";
2
2
  import { SwitchShape } from "./variants.js";
3
3
  import { SwitchProps } from "./types.js";
4
- import * as vue from "vue";
5
- import * as _soybeanjs_headless0 from "@soybeanjs/headless";
4
+ import * as _$vue from "vue";
5
+ import * as _$_soybeanjs_headless0 from "@soybeanjs/headless";
6
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<{
10
- props: vue.PublicProps & __VLS_PrettifyLocal<SwitchProps<T> & {
10
+ props: _$vue.PublicProps & __VLS_PrettifyLocal<SwitchProps<T> & {
11
11
  "onUpdate:modelValue"?: ((payload: NonNullable<T>) => any) | undefined;
12
12
  }> & (typeof globalThis extends {
13
13
  __VLS_PROPS_FALLBACK: infer P;
@@ -17,13 +17,13 @@ declare const __VLS_export: <T extends AcceptableBooleanValue = boolean>(__VLS_p
17
17
  slots: {
18
18
  leading?: (props: {
19
19
  modelValue: (Readonly<{
20
- class: _soybeanjs_headless0.ClassValue;
21
- ui: Partial<_soybeanjs_headless0.SwitchUi>;
20
+ class: _$_soybeanjs_headless0.ClassValue;
21
+ ui: Partial<_$_soybeanjs_headless0.SwitchUi>;
22
22
  color: ThemeColor;
23
23
  size: ThemeSize;
24
24
  shape: SwitchShape;
25
- controlProps: _soybeanjs_headless0.SwitchControlProps;
26
- thumbProps: _soybeanjs_headless0.SwitchThumbProps;
25
+ controlProps: _$_soybeanjs_headless0.SwitchControlProps;
26
+ thumbProps: _$_soybeanjs_headless0.SwitchThumbProps;
27
27
  defaultValue: NonNullable<T> | undefined;
28
28
  disabled: boolean;
29
29
  value: string;
@@ -31,14 +31,14 @@ declare const __VLS_export: <T extends AcceptableBooleanValue = boolean>(__VLS_p
31
31
  required: boolean;
32
32
  manifest: string | undefined;
33
33
  innerHTML: string | undefined;
34
- style: vue.StyleValue | undefined;
34
+ style: _$vue.StyleValue | undefined;
35
35
  accesskey: string | undefined;
36
36
  contenteditable: (boolean | "true" | "false") | "inherit" | "plaintext-only" | undefined;
37
37
  contextmenu: string | undefined;
38
38
  dir: string | undefined;
39
39
  draggable: (boolean | "true" | "false") | undefined;
40
40
  enterkeyhint: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined;
41
- enterKeyHint: vue.HTMLAttributes["enterkeyhint"];
41
+ enterKeyHint: _$vue.HTMLAttributes["enterkeyhint"];
42
42
  hidden: (boolean | "true" | "false") | "" | "hidden" | "until-found" | undefined;
43
43
  id: string | undefined;
44
44
  inert: (boolean | "true" | "false") | undefined;
@@ -228,13 +228,13 @@ declare const __VLS_export: <T extends AcceptableBooleanValue = boolean>(__VLS_p
228
228
  } & {
229
229
  default?: (props: {
230
230
  modelValue: (Readonly<{
231
- class: _soybeanjs_headless0.ClassValue;
232
- ui: Partial<_soybeanjs_headless0.SwitchUi>;
231
+ class: _$_soybeanjs_headless0.ClassValue;
232
+ ui: Partial<_$_soybeanjs_headless0.SwitchUi>;
233
233
  color: ThemeColor;
234
234
  size: ThemeSize;
235
235
  shape: SwitchShape;
236
- controlProps: _soybeanjs_headless0.SwitchControlProps;
237
- thumbProps: _soybeanjs_headless0.SwitchThumbProps;
236
+ controlProps: _$_soybeanjs_headless0.SwitchControlProps;
237
+ thumbProps: _$_soybeanjs_headless0.SwitchThumbProps;
238
238
  defaultValue: NonNullable<T> | undefined;
239
239
  disabled: boolean;
240
240
  value: string;
@@ -242,14 +242,14 @@ declare const __VLS_export: <T extends AcceptableBooleanValue = boolean>(__VLS_p
242
242
  required: boolean;
243
243
  manifest: string | undefined;
244
244
  innerHTML: string | undefined;
245
- style: vue.StyleValue | undefined;
245
+ style: _$vue.StyleValue | undefined;
246
246
  accesskey: string | undefined;
247
247
  contenteditable: (boolean | "true" | "false") | "inherit" | "plaintext-only" | undefined;
248
248
  contextmenu: string | undefined;
249
249
  dir: string | undefined;
250
250
  draggable: (boolean | "true" | "false") | undefined;
251
251
  enterkeyhint: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined;
252
- enterKeyHint: vue.HTMLAttributes["enterkeyhint"];
252
+ enterKeyHint: _$vue.HTMLAttributes["enterkeyhint"];
253
253
  hidden: (boolean | "true" | "false") | "" | "hidden" | "until-found" | undefined;
254
254
  id: string | undefined;
255
255
  inert: (boolean | "true" | "false") | undefined;
@@ -439,13 +439,13 @@ declare const __VLS_export: <T extends AcceptableBooleanValue = boolean>(__VLS_p
439
439
  } & {
440
440
  trailing?: (props: {
441
441
  modelValue: (Readonly<{
442
- class: _soybeanjs_headless0.ClassValue;
443
- ui: Partial<_soybeanjs_headless0.SwitchUi>;
442
+ class: _$_soybeanjs_headless0.ClassValue;
443
+ ui: Partial<_$_soybeanjs_headless0.SwitchUi>;
444
444
  color: ThemeColor;
445
445
  size: ThemeSize;
446
446
  shape: SwitchShape;
447
- controlProps: _soybeanjs_headless0.SwitchControlProps;
448
- thumbProps: _soybeanjs_headless0.SwitchThumbProps;
447
+ controlProps: _$_soybeanjs_headless0.SwitchControlProps;
448
+ thumbProps: _$_soybeanjs_headless0.SwitchThumbProps;
449
449
  defaultValue: NonNullable<T> | undefined;
450
450
  disabled: boolean;
451
451
  value: string;
@@ -453,14 +453,14 @@ declare const __VLS_export: <T extends AcceptableBooleanValue = boolean>(__VLS_p
453
453
  required: boolean;
454
454
  manifest: string | undefined;
455
455
  innerHTML: string | undefined;
456
- style: vue.StyleValue | undefined;
456
+ style: _$vue.StyleValue | undefined;
457
457
  accesskey: string | undefined;
458
458
  contenteditable: (boolean | "true" | "false") | "inherit" | "plaintext-only" | undefined;
459
459
  contextmenu: string | undefined;
460
460
  dir: string | undefined;
461
461
  draggable: (boolean | "true" | "false") | undefined;
462
462
  enterkeyhint: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined;
463
- enterKeyHint: vue.HTMLAttributes["enterkeyhint"];
463
+ enterKeyHint: _$vue.HTMLAttributes["enterkeyhint"];
464
464
  hidden: (boolean | "true" | "false") | "" | "hidden" | "until-found" | undefined;
465
465
  id: string | undefined;
466
466
  inert: (boolean | "true" | "false") | undefined;
@@ -649,7 +649,7 @@ declare const __VLS_export: <T extends AcceptableBooleanValue = boolean>(__VLS_p
649
649
  }) => any;
650
650
  };
651
651
  emit: (evt: "update:modelValue", payload: NonNullable<T>) => void;
652
- }>) => vue.VNode & {
652
+ }>) => _$vue.VNode & {
653
653
  __ctx?: Awaited<typeof __VLS_setup>;
654
654
  };
655
655
  declare const _default: typeof __VLS_export;
@@ -1,8 +1,8 @@
1
- import * as tailwind_variants0 from "tailwind-variants";
1
+ import * as _$tailwind_variants0 from "tailwind-variants";
2
2
  import { VariantProps } from "tailwind-variants";
3
3
 
4
4
  //#region src/components/switch/variants.d.ts
5
- declare const switchVariants: tailwind_variants0.TVReturnType<{
5
+ declare const switchVariants: _$tailwind_variants0.TVReturnType<{
6
6
  color: {
7
7
  primary: {
8
8
  control: string;
@@ -136,7 +136,7 @@ declare const switchVariants: tailwind_variants0.TVReturnType<{
136
136
  root: string;
137
137
  control: string[];
138
138
  thumb: string;
139
- }, tailwind_variants0.TVReturnType<{
139
+ }, _$tailwind_variants0.TVReturnType<{
140
140
  color: {
141
141
  primary: {
142
142
  control: string;
@@ -1,19 +1,19 @@
1
- import { TableColumn } from "./types.js";
2
- import * as vue from "vue";
1
+ import { TableBaseData, TableColumn } from "./types.js";
2
+ import * as _$vue from "vue";
3
3
  import { TableColumnCheck, UseTableOptions } from "@soybeanjs/hooks";
4
4
 
5
5
  //#region src/components/table/hooks.d.ts
6
- type UseTableOptions$1<ResponseData, ApiData, Pagination extends boolean> = Omit<UseTableOptions<ResponseData, ApiData, TableColumn<ApiData>, Pagination>, 'pagination' | 'getColumnChecks' | 'getColumns'>;
7
- declare function useTable$1<ResponseData, ApiData>(options: UseTableOptions$1<ResponseData, ApiData, false>): {
8
- loading: vue.ShallowRef<boolean>;
9
- empty: vue.ShallowRef<boolean>;
10
- tableData: vue.Ref<ApiData[], ApiData[]>;
11
- columns: vue.ComputedRef<TableColumn<ApiData>[]>;
12
- columnChecks: vue.Ref<TableColumnCheck[], TableColumnCheck[]>;
6
+ type UseTableOptions$1<ResponseData, ApiData extends TableBaseData, Pagination extends boolean> = Omit<UseTableOptions<ResponseData, ApiData, TableColumn<ApiData>, Pagination>, 'pagination' | 'getColumnChecks' | 'getColumns'>;
7
+ declare function useTable$1<ResponseData, ApiData extends TableBaseData>(options: UseTableOptions$1<ResponseData, ApiData, false>): {
8
+ loading: _$vue.ShallowRef<boolean>;
9
+ empty: _$vue.ShallowRef<boolean>;
10
+ tableData: _$vue.Ref<ApiData[], ApiData[]>;
11
+ columns: _$vue.ComputedRef<TableColumn<ApiData>[]>;
12
+ columnChecks: _$vue.Ref<TableColumnCheck[], TableColumnCheck[]>;
13
13
  reloadColumns: () => void;
14
14
  fetchData: () => Promise<void>;
15
15
  };
16
- type UsePaginatedTableOptions<ResponseData, ApiData> = UseTableOptions$1<ResponseData, ApiData, true> & {
16
+ type UsePaginatedTableOptions<ResponseData, ApiData extends TableBaseData> = UseTableOptions$1<ResponseData, ApiData, true> & {
17
17
  page?: number;
18
18
  pageSize?: number;
19
19
  /**
@@ -27,17 +27,17 @@ type UsePaginatedTableOptions<ResponseData, ApiData> = UseTableOptions$1<Respons
27
27
  */
28
28
  fetchOnPaginationChange?: boolean;
29
29
  };
30
- declare function usePaginatedTable<ResponseData, ApiData>(options: UsePaginatedTableOptions<ResponseData, ApiData>): {
31
- loading: vue.ShallowRef<boolean>;
32
- empty: vue.ShallowRef<boolean>;
33
- tableData: vue.Ref<ApiData[], ApiData[]>;
34
- columns: vue.ComputedRef<TableColumn<ApiData>[]>;
35
- columnChecks: vue.Ref<TableColumnCheck[], TableColumnCheck[]>;
30
+ declare function usePaginatedTable<ResponseData, ApiData extends TableBaseData>(options: UsePaginatedTableOptions<ResponseData, ApiData>): {
31
+ loading: _$vue.ShallowRef<boolean>;
32
+ empty: _$vue.ShallowRef<boolean>;
33
+ tableData: _$vue.Ref<ApiData[], ApiData[]>;
34
+ columns: _$vue.ComputedRef<TableColumn<ApiData>[]>;
35
+ columnChecks: _$vue.Ref<TableColumnCheck[], TableColumnCheck[]>;
36
36
  reloadColumns: () => void;
37
37
  fetchData: () => Promise<void>;
38
- page: vue.ShallowRef<number, number>;
39
- pageSize: vue.ShallowRef<number, number>;
40
- total: vue.ShallowRef<number, number>;
38
+ page: _$vue.ShallowRef<number, number>;
39
+ pageSize: _$vue.ShallowRef<number, number>;
40
+ total: _$vue.ShallowRef<number, number>;
41
41
  };
42
42
  //#endregion
43
43
  export { usePaginatedTable, useTable$1 as useTable };
@@ -1 +1 @@
1
- import{shallowRef as e,watch as t}from"vue";import{useTable as n}from"@soybeanjs/hooks";function r(e){return n({...e,getColumnChecks:a,getColumns:o})}function i(r){let{page:i=1,pageSize:s=10,fetchOnPaginationChange:c=!0,onFetched:l}=r,u=e(i),d=e(s),f=e(0),p=n({...r,pagination:!0,getColumnChecks:a,getColumns:o,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],()=>{c&&p.fetchData()},{flush:`post`}),{page:u,pageSize:d,total:f,...p}}function a(e){let t=[];return e.forEach(e=>{let{type:n,dataIndex:r,title:i,hidden:a}=e;if(n)return;let o=r,s={key:o,title:i||o,checked:!0,hidden:a,fixed:!1};t.push(s)}),t}function o(e,t){let n=new Map,r=new Map;e.forEach((e,t)=>{if(e.type){r.set(e.type,{column:e,index:t});return}else e.dataIndex&&n.set(e.dataIndex,e)});let i=[];return t.filter(e=>e.checked).forEach(e=>{let t=n.get(e.key);t&&i.push(t)}),r.forEach(({column:e,index:t})=>{t>=i.length?i.push(e):i.splice(t,0,e)}),i}export{i as usePaginatedTable,r as useTable};
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,fixed:!1};t.push(l)}),t}function c(e,t){let n=new Map,a=new Map(t.map(e=>[e.key,e]));return e.forEach((e,t)=>{if(e.type){n.set(e.type,{column:e,index:t});return}}),e.reduce((e,o,s)=>{if(o.type){let t=n.get(o.type);return!t||t.index!==s||e.push(o),e}if(i(o)){let n=c(o.children,t);return n.length>0&&e.push({...o,children:n}),e}return a.get(r(o))?.checked!==!1&&e.push(o),e},[])}export{o as usePaginatedTable,a as useTable};
@@ -1,4 +1,4 @@
1
- import { BaseTableData, TableAlign, TableColumn, TableColumnType, TableEmits, TableProps, TableRadioProps, TableSelectionProps, TableSlots } from "./types.js";
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
4
  import { TableCell as STableCell, TableRow as STableRow } from "@soybeanjs/headless";
@@ -0,0 +1 @@
1
+ import{miniSizeMap as e}from"../../theme/config.js";import"../../theme/index.js";import t from"../button/button.js";import n from"../button/button-icon.js";import r from"../checkbox/checkbox.js";import i from"../popover/popover.js";import a from"../input/input.js";import{Fragment as o,computed as s,createBlock as c,createCommentVNode as l,createElementBlock as u,createElementVNode as d,createTextVNode as f,createVNode as p,defineComponent as m,normalizeClass as h,openBlock as g,renderList as _,toDisplayString as v,withCtx as y}from"vue";const b=m({name:`STableFilterPopover`,__name:`table-filter-popover`,props:{size:{},ui:{},column:{},filterValue:{},filterValues:{},filterState:{},filtered:{type:Boolean},filterOptions:{},setFilterValue:{type:Function},setFilterValues:{type:Function},setFilterState:{type:Function},toggleFilterOption:{type:Function},isFilterOptionSelected:{type:Function},clearFilter:{type:Function}},setup(m){let b=m,x=s(()=>b.column.title??b.column.key??b.column.dataIndex??`column`),S=s(()=>{let e=b.filterValue.trim().toLowerCase();return e?b.filterOptions.filter(t=>t.label.toLowerCase().includes(e)||t.value.toLowerCase().includes(e)):b.filterOptions}),C=s(()=>S.value.length>0),w=s(()=>b.filterValues.length>0?`${b.filterValues.length} selected`:b.filterValue.trim().length>0?`Keyword active`:b.filterOptions.length>0?`${b.filterOptions.length} options`:`No filter options`),T=s(()=>b.filtered?`Edit filter for ${x.value}`:`Filter ${x.value}`),E=s(()=>`Search filter options for ${x.value}`),D=s(()=>e[b.size??`md`]);function O(e){b.setFilterValue(String(e??``))}return(e,s)=>(g(),c(i,{class:h(m.ui.filterPopup),size:m.size,placement:`bottom-end`,"show-arrow":!1},{trigger:y(()=>[p(n,{icon:`lucide:funnel`,"data-filtered":b.filtered?``:void 0,class:h(m.ui.filterTrigger),size:D.value,"aria-label":T.value,"aria-pressed":m.filtered||void 0},null,8,[`data-filtered`,`class`,`size`,`aria-label`,`aria-pressed`])]),default:y(()=>[p(a,{class:h(m.ui.filterSearch),size:D.value,"model-value":m.filterValue,"control-props":{"aria-label":E.value,placeholder:`Search ${x.value}`},"onUpdate:modelValue":O},null,8,[`class`,`size`,`model-value`,`control-props`]),m.filterOptions.length>0?(g(),u(`div`,{key:0,class:h(m.ui.filterOptions)},[(g(!0),u(o,null,_(S.value,e=>(g(),c(r,{key:e.value,class:h(m.ui.filterOption),size:D.value,disabled:e.disabled,"model-value":m.isFilterOptionSelected(e.value),label:e.label,ui:{label:m.ui.filterOptionLabel},"control-props":{"aria-label":`Select ${e.label}`},"onUpdate:modelValue":t=>m.toggleFilterOption(e.value)},null,8,[`class`,`size`,`disabled`,`model-value`,`label`,`ui`,`control-props`,`onUpdate:modelValue`]))),128)),C.value?l(`v-if`,!0):(g(),u(`div`,{key:0,class:h(m.ui.filterEmpty)},`No matching options`,2))],2)):l(`v-if`,!0),d(`div`,{class:h(m.ui.filterFooter)},[d(`span`,{class:h(m.ui.filterCount)},v(w.value),3),m.filtered?(g(),c(t,{key:0,variant:`ghost`,color:`accent`,"fit-content":``,size:D.value,class:h(m.ui.filterAction),onClick:m.clearFilter},{default:y(()=>[...s[0]||=[f(` Clear `,-1)]]),_:1},8,[`size`,`class`,`onClick`])):l(`v-if`,!0)],2)]),_:1},8,[`class`,`size`]))}});export{b as default};
@@ -1 +1 @@
1
- import{tableVariants as e}from"./variants.js";import{computed as t,createCommentVNode as n,createElementBlock as r,defineComponent as i,normalizeClass as a,openBlock as o}from"vue";const s=i({name:`STableRadio`,__name:`table-radio`,props:{size:{},checked:{type:Boolean}},setup(i){let s=i,c=t(()=>{let t=e({size:s.size});return{radioRoot:t.radioRoot(),radioIndicator:t.radioIndicator()}});return(e,t)=>(o(),r(`button`,{class:a(c.value.radioRoot)},[i.checked?(o(),r(`span`,{key:0,class:a(c.value.radioIndicator)},null,2)):n(`v-if`,!0)],2))}});export{s as default};
1
+ import{tableVariants as e}from"./variants.js";import{computed as t,createCommentVNode as n,createElementBlock as r,defineComponent as i,normalizeClass as a,openBlock as o}from"vue";const s=[`aria-pressed`],c=i({name:`STableRadio`,__name:`table-radio`,props:{size:{},checked:{type:Boolean}},setup(i){let c=i,l=t(()=>{let t=e({size:c.size});return{radioRoot:t.radioRoot(),radioIndicator:t.radioIndicator()}});return(e,t)=>(o(),r(`button`,{type:`button`,"aria-pressed":i.checked,class:a(l.value.radioRoot)},[i.checked?(o(),r(`span`,{key:0,class:a(l.value.radioIndicator)},null,2)):n(`v-if`,!0)],10,s))}});export{c as default};
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../button/button-icon.js";import n from"../checkbox/checkbox.js";import{tableVariants as r}from"./variants.js";import i from"./table-radio.js";import{getTableRowValueByDataIndex as a}from"./shared.js";import{Fragment as o,computed as s,createBlock as c,createCommentVNode as l,createElementBlock as u,createTextVNode as d,createVNode as f,defineComponent as p,guardReactiveProps as m,mergeProps as h,normalizeClass as g,normalizeProps as _,openBlock as v,renderList as y,renderSlot as b,toDisplayString as x,unref as S,useSlots as C,withCtx as w}from"vue";import{useControllableState as T,useSelection as E}from"@soybeanjs/headless/composables";import{TableBody as D,TableCell as O,TableContent as k,TableFooter as A,TableHead as j,TableHeader as M,TableRoot as N,TableRow as P,provideTableUi as F}from"@soybeanjs/headless";const I=p({name:`STable`,__name:`table`,props:{class:{},ui:{},size:{},columns:{},data:{},rowKey:{},bordered:{type:[Boolean,String]},striped:{type:Boolean},defaultExpanded:{},expanded:{},defaultExpandAll:{type:Boolean},contentProps:{},headerProps:{},bodyProps:{},footerProps:{},headProps:{},rowProps:{},cellProps:{},defaultSelected:{},selected:{},multiple:{default:!0}},emits:[`update:expanded`,`update:selected`],setup(p,{emit:I}){let L=p,R=I,z=C(),B=s(()=>e(r({size:L.size,bordered:L.bordered,striped:L.striped}),L.ui,{root:L.class})),V=T(()=>L.expanded,e=>{R(`update:expanded`,e??[])},H());function H(){return L.defaultExpandAll?L.data.map(e=>L.rowKey(e)):L.defaultExpanded??[]}let U=e=>{V.value.indexOf(e)>=0?V.value=V.value.filter(t=>t!==e):V.value=[...V.value,e]},{modelValue:W,onModelValueChange:G,setModelValue:K,resetModelValue:q,isMultiple:J,isValueSelected:Y}=E(s(()=>({modelValue:L.selected,defaultValue:L.defaultSelected,multiple:L.multiple})),e=>{R(`update:selected`,e)}),X=s(()=>!Array.isArray(W.value)||W.value.length===0?!1:W.value.length===L.data.length?!0:`indeterminate`),Z=e=>{Array.isArray(W.value)&&(e===!0?K(L.data.map(e=>L.rowKey(e))):q())},Q=s(()=>L.columns.filter(e=>!e.hidden)),$=s(()=>L.columns.some(e=>e.type===`expand`));return F(B),(e,r)=>(v(),c(S(N),null,{default:w(()=>[f(S(k),_(m(p.contentProps)),{default:w(()=>[f(S(M),_(m(p.headerProps)),{default:w(()=>[f(S(P),_(m(p.rowProps)),{default:w(()=>[(v(!0),u(o,null,y(Q.value,t=>(v(),u(o,null,[t.dataIndex?(v(),c(S(j),h({key:0,ref_for:!0},p.headProps,{key:t.dataIndex,align:t.align??`left`,style:{width:t.width}}),{default:w(()=>[b(e.$slots,`header-${t.dataIndex}`,{column:t},()=>[d(x(t.title),1)])]),_:2},1040,[`align`,`style`])):t.type?(v(),c(S(j),h({key:1,ref_for:!0},p.headProps,{key:`__${t.type}`,align:t.align??`center`,style:{width:t.width}}),{default:w(()=>[b(e.$slots,`header-${t.type}`,{column:t,multiple:S(J)},()=>[t.type===`index`?(v(),u(o,{key:0},[d(x(t.title??`#`),1)],64)):l(`v-if`,!0),t.type===`selection`?(v(),u(o,{key:1},[S(J)?(v(),c(n,{key:0,"model-value":X.value,class:g(B.value.selection),"onUpdate:modelValue":Z},null,8,[`model-value`,`class`])):l(`v-if`,!0)],64)):l(`v-if`,!0),t.type===`expand`?(v(),u(o,{key:2},[d(x(t.title),1)],64)):l(`v-if`,!0)])]),_:2},1040,[`align`,`style`])):l(`v-if`,!0)],64))),256))]),_:3},16)]),_:3},16),f(S(D),_(m(p.bodyProps)),{default:w(()=>[(v(!0),u(o,null,y(p.data,(r,s)=>(v(),u(o,{key:p.rowKey(r)},[f(S(P),h({ref_for:!0},p.rowProps,{"data-row":``}),{default:w(()=>[(v(!0),u(o,null,y(Q.value,f=>(v(),u(o,null,[f.dataIndex?(v(),c(S(O),h({key:0,ref_for:!0},p.cellProps,{key:f.dataIndex,align:f.align??`left`,style:{width:f.width}}),{default:w(()=>[b(e.$slots,f.dataIndex,{index:s,column:f,row:r,value:S(a)(r,f.dataIndex)},()=>[d(x(S(a)(r,f.dataIndex)),1)])]),_:2},1040,[`align`,`style`])):f.type?(v(),c(S(O),h({key:1,ref_for:!0},p.cellProps,{key:`__${f.type}`,align:f.align??`center`,style:{width:f.width}}),{default:w(()=>[f.type===`index`?b(e.$slots,`index`,{key:0,index:s,column:f,row:r},()=>[d(x(s+1),1)]):l(`v-if`,!0),f.type===`selection`?b(e.$slots,`selection`,{key:1,index:s,column:f,row:r,multiple:S(J)},()=>[S(J)?(v(),c(n,{key:0,class:g(B.value.selection),"model-value":S(Y)(p.rowKey(r)),"onUpdate:modelValue":e=>S(G)(p.rowKey(r))},null,8,[`class`,`model-value`,`onUpdate:modelValue`])):(v(),c(i,{key:1,size:p.size,checked:S(Y)(p.rowKey(r)),onClick:e=>S(G)(p.rowKey(r))},null,8,[`size`,`checked`,`onClick`]))]):l(`v-if`,!0),f.type===`expand`?b(e.$slots,`expand`,{key:2,index:s,column:f,row:r,expanded:S(V).includes(p.rowKey(r)),toggleExpand:()=>U(p.rowKey(r))},()=>[S(V).includes(p.rowKey(r))?(v(),c(t,{key:0,icon:`lucide:chevron-down`,onClick:e=>U(p.rowKey(r))},null,8,[`onClick`])):(v(),c(t,{key:1,icon:`lucide:chevron-right`,onClick:e=>U(p.rowKey(r))},null,8,[`onClick`]))]):l(`v-if`,!0)]),_:2},1040,[`align`,`style`])):l(`v-if`,!0)],64))),256))]),_:2},1040),$.value&&S(V).includes(p.rowKey(r))?(v(),c(S(P),h({key:0,ref_for:!0},p.rowProps,{"data-expanded-row":``}),{default:w(()=>[f(S(O),h({ref_for:!0},p.cellProps,{colspan:Q.value.length}),{default:w(()=>[b(e.$slots,`expanded-row`,{index:s,row:r})]),_:2},1040,[`colspan`])]),_:2},1040)):l(`v-if`,!0)],64))),128))]),_:3},16),z.footer?(v(),c(S(A),_(h({key:0},p.footerProps)),{default:w(()=>[b(e.$slots,`footer`,{columnSize:Q.value.length})]),_:3},16)):l(`v-if`,!0)]),_:3},16)]),_:3}))}});export{I 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"./table-filter-popover.js";import{tableVariants as a}from"./variants.js";import o from"./table-radio.js";import{computed as s,createBlock as c,createCommentVNode as l,createElementVNode as u,createSlots as d,createVNode as f,defineComponent as p,guardReactiveProps as m,mergeProps as h,normalizeClass as g,normalizeProps as _,openBlock as v,renderList as y,renderSlot as b,toHandlers as x,unref as S,useSlots as C,withCtx as w}from"vue";import{useForwardListeners as T,useOmitProps as E}from"@soybeanjs/headless/composables";import{TableCompact as D,provideTableUi as O}from"@soybeanjs/headless";const k=[`aria-label`,`aria-pressed`,`data-resizing`,`onPointerdown`,`onKeydown`],A=p({name:`STable`,__name:`table`,props:{class:{},size:{},ui:{},bordered:{type:Boolean},striped:{type:Boolean},columns:{},data:{},rowKey:{type:Function},defaultSortState:{},sortState:{},defaultFilterState:{},filterState:{},defaultColumnWidths:{},columnWidths:{},getChildren:{type:Function},indent:{},virtual:{type:Boolean},height:{},estimateSize:{type:[Number,Function]},virtualizerOptions:{},defaultExpanded:{},expanded:{},defaultExpandAll:{type:Boolean},contentProps:{},headerProps:{},bodyProps:{},footerProps:{},headProps:{},rowProps:{},cellProps:{},dir:{},defaultSelected:{},selected:{},multiple:{}},emits:[`update:sortState`,`update:filterState`,`update:columnWidths`,`update:expanded`,`update:selected`],setup(p,{emit:A}){let j=p,M=A,N=C(),P=E(j,[`class`,`ui`,`size`,`bordered`,`striped`]),F=T(M),I=s(()=>Object.keys(N)),L=s(()=>e(a({size:j.size,bordered:j.bordered,striped:j.striped}),j.ui,{root:j.class})),R=s(()=>t[j.size??`md`]),z=e=>e===`asc`?`lucide:arrow-up`:e===`desc`?`lucide:arrow-down`:`lucide:arrow-up-down`;return O(L),(e,t)=>(v(),c(S(D),h(S(P),x(S(F))),d({_:2},[y(I.value,t=>({name:t,fn:w(n=>[b(e.$slots,t,_(m(n)))])})),N[`header-selection`]?void 0:{name:`header-selection`,fn:w(({checked:e,disabled:t,multiple:n,updateChecked:i})=>[n?(v(),c(r,{key:0,disabled:t,"model-value":e,class:g(L.value.selection),"control-props":{"aria-label":`Select all rows`},"onUpdate:modelValue":i},null,8,[`disabled`,`model-value`,`class`,`onUpdate:modelValue`])):l(`v-if`,!0)]),key:`0`},N.selection?void 0:{name:`selection`,fn:w(({checked:e,multiple:t,ariaLabel:n,toggleSelect:i})=>[t?(v(),c(r,{key:0,class:g(L.value.selection),"model-value":e,"control-props":{"aria-label":n},"onUpdate:modelValue":e=>i()},null,8,[`class`,`model-value`,`control-props`,`onUpdate:modelValue`])):(v(),c(o,{key:1,size:p.size,checked:e,"aria-label":n,onClick:e=>i()},null,8,[`size`,`checked`,`aria-label`,`onClick`]))]),key:`1`},N[`header-sort`]?void 0:{name:`header-sort`,fn:w(({sortOrder:e,ariaLabel:t,toggleSort:r})=>[f(n,{icon:z(e),class:g(L.value.sortTrigger),size:R.value,"aria-label":t,"data-sorted":e?``:void 0,onClick:e=>r()},null,8,[`icon`,`class`,`size`,`aria-label`,`data-sorted`,`onClick`])]),key:`2`},N[`header-filter`]?void 0:{name:`header-filter`,fn:w(e=>[f(i,h(e,{ui:L.value,size:p.size}),null,16,[`ui`,`size`])]),key:`3`},N[`header-resize`]?void 0:{name:`header-resize`,fn:w(({resizing:e,ariaLabel:t,onPointerdown:n,onKeydown:r})=>[u(`button`,{type:`button`,class:g(L.value.resizeHandle),"aria-label":t,"aria-pressed":e,"data-resizing":e||void 0,onPointerdown:n,onKeydown:r},null,42,k)]),key:`4`},N[`tree-toggle`]?void 0:{name:`tree-toggle`,fn:w(({expanded:e,ariaLabel:t,toggleExpand:r})=>[f(n,{class:g(L.value.treeToggle),size:R.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`},N.expand?void 0:{name:`expand`,fn:w(({expanded:e,ariaLabel:t,hasChildren:r,toggleExpand:i})=>[r||N[`expanded-row`]?(v(),c(n,{key:0,icon:e?`lucide:chevron-down`:`lucide:chevron-right`,class:g(L.value.treeToggle),size:R.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`])):l(`v-if`,!0)]),key:`6`}]),1040))}});export{A as default};
@@ -1,9 +1,13 @@
1
- import { BaseTableData, TableProps, TableSlots } from "./types.js";
2
- import * as vue from "vue";
1
+ import { TableBaseData, TableProps, TableSlots } from "./types.js";
2
+ import * as _$vue from "vue";
3
+ import * as _$_soybeanjs_headless0 from "@soybeanjs/headless";
3
4
 
4
5
  //#region src/components/table/table.vue.d.ts
5
- declare const __VLS_export: <T extends BaseTableData = BaseTableData, R extends string | number = string | number, M extends boolean = 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<{
6
- props: vue.PublicProps & __VLS_PrettifyLocal<TableProps<T, R, M> & {
6
+ declare const __VLS_export: <T extends TableBaseData = TableBaseData, R extends string | number = string | number, M extends boolean = 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<{
7
+ props: _$vue.PublicProps & __VLS_PrettifyLocal<TableProps<T, R, M> & {
8
+ "onUpdate:sortState"?: ((state: _$_soybeanjs_headless0.TableSortState | undefined) => any) | undefined;
9
+ "onUpdate:filterState"?: ((state: _$_soybeanjs_headless0.TableFilterState) => any) | undefined;
10
+ "onUpdate:columnWidths"?: ((state: _$_soybeanjs_headless0.TableColumnWidthState) => any) | undefined;
7
11
  "onUpdate:expanded"?: ((expanded: R[]) => any) | undefined;
8
12
  "onUpdate:selected"?: ((selected: M extends true ? R[] : R | undefined) => any) | undefined;
9
13
  }> & (typeof globalThis extends {
@@ -12,8 +16,8 @@ declare const __VLS_export: <T extends BaseTableData = BaseTableData, R extends
12
16
  expose: (exposed: {}) => void;
13
17
  attrs: any;
14
18
  slots: TableSlots<T>;
15
- emit: ((evt: "update:expanded", expanded: R[]) => void) & ((evt: "update:selected", selected: M extends true ? R[] : R | undefined) => void);
16
- }>) => vue.VNode & {
19
+ emit: ((evt: "update:sortState", state: _$_soybeanjs_headless0.TableSortState | undefined) => void) & ((evt: "update:filterState", state: _$_soybeanjs_headless0.TableFilterState) => void) & ((evt: "update:columnWidths", state: _$_soybeanjs_headless0.TableColumnWidthState) => void) & ((evt: "update:expanded", expanded: R[]) => void) & ((evt: "update:selected", selected: M extends true ? R[] : R | undefined) => void);
20
+ }>) => _$vue.VNode & {
17
21
  __ctx?: Awaited<typeof __VLS_setup>;
18
22
  };
19
23
  declare const _default: typeof __VLS_export;
@@ -1,97 +1,39 @@
1
1
  import { ThemeSize } from "../../theme/types.js";
2
- import { Path, PathValue, TableBodyProps, TableCellProps, TableContentProps, TableFooterProps, TableHeadProps, TableHeaderProps, TableRootProps, TableRowProps, TableUi } from "@soybeanjs/headless";
2
+ import { ClassValue, UiClass } from "@soybeanjs/headless";
3
+ import { TableBaseData, TableColumn, TableColumnFilter, TableColumnFilterOption, TableColumnFilterValue, TableColumnType, TableCompactEmits, TableCompactProps, TableCompactSlots, TableHeaderFilterSlotProps, TableSortOrder, TableUiSlot, TableUnifiedKey } from "@soybeanjs/headless/table";
3
4
 
4
5
  //#region src/components/table/types.d.ts
5
- type BaseTableData = Record<string, any>;
6
- type TableAlign = 'left' | 'center' | 'right';
7
- type TableColumnType = 'index' | 'selection' | 'expand';
8
- interface TableColumn<T = BaseTableData> {
9
- type?: TableColumnType;
10
- dataIndex?: Path<T>;
11
- title?: string;
12
- align?: TableAlign;
13
- width?: string;
14
- hidden?: boolean;
15
- }
16
- interface TableSelectionProps<R extends string | number = string | number, M extends boolean = false> {
17
- defaultSelected?: M extends true ? R[] : R;
18
- selected?: M extends true ? R[] : R;
19
- multiple?: M;
20
- }
21
- interface TableProps<T extends BaseTableData = BaseTableData, R extends string | number = string | number, M extends boolean = false> extends TableRootProps, TableSelectionProps<R, M> {
6
+ type TableExtraUiSlot = 'selection' | 'filterTrigger' | 'filterPopup' | 'filterSearch' | 'filterOptions' | 'filterOption' | 'filterOptionLabel' | 'filterFooter' | 'filterCount' | 'filterAction' | 'filterEmpty';
7
+ type TableExtendedUi = UiClass<TableUiSlot | TableExtraUiSlot>;
8
+ interface TableProps<T extends TableBaseData = TableBaseData, R extends string | number = string | number, M extends boolean = false> extends TableCompactProps<T, R, M> {
22
9
  /**
23
10
  * Additional class names to apply to the table.
24
11
  */
25
- class?: string;
26
- ui?: Partial<TableUi>;
12
+ class?: ClassValue;
27
13
  size?: ThemeSize;
28
- columns: TableColumn<T>[];
29
- data: T[];
30
- rowKey: (row: T) => R;
31
- bordered?: boolean | 'all';
14
+ ui?: Partial<TableExtendedUi>;
15
+ bordered?: boolean;
32
16
  striped?: boolean;
33
- defaultExpanded?: R[];
34
- expanded?: R[];
35
- defaultExpandAll?: boolean;
36
- contentProps?: TableContentProps;
37
- headerProps?: TableHeaderProps;
38
- bodyProps?: TableBodyProps;
39
- footerProps?: TableFooterProps;
40
- headProps?: TableHeadProps;
41
- rowProps?: TableRowProps;
42
- cellProps?: TableCellProps;
43
17
  }
44
- type TableEmits<R extends string | number, M extends boolean = false> = {
45
- 'update:expanded': [expanded: R[]];
46
- 'update:selected': [selected: M extends true ? R[] : R | undefined];
47
- };
48
- type TableSlots<T extends BaseTableData> = { [K in `header-${Path<T>}`]?: (props: {
49
- column: TableColumn<T>;
50
- }) => any } & { [K in Path<T>]?: (props: {
51
- index: number;
52
- column: TableColumn<T>;
53
- row: T;
54
- value: PathValue<T, K>;
55
- }) => any } & {
56
- 'header-index'?: (props: {
57
- column: TableColumn<T>;
58
- }) => any;
59
- 'header-selection'?: (props: {
60
- column: TableColumn<T>;
61
- multiple: boolean;
62
- }) => any;
63
- 'header-expand'?: (props: {
64
- column: TableColumn<T>;
65
- }) => any;
66
- index?: (props: {
67
- index: number;
68
- column: TableColumn<T>;
69
- row: T;
70
- }) => any;
71
- selection?: (props: {
72
- index: number;
73
- column: TableColumn<T>;
74
- row: T;
75
- multiple: boolean;
76
- }) => any;
77
- expand?: (props: {
78
- index: number;
79
- column: TableColumn<T>;
80
- row: T;
81
- expanded: boolean;
82
- toggleExpand: () => void;
83
- }) => any;
84
- 'expanded-row'?: (props: {
85
- index: number;
86
- row: T;
87
- }) => any;
88
- footer?: (props: {
89
- columnSize: number;
90
- }) => any;
91
- };
18
+ type TableEmits<R extends TableUnifiedKey = TableUnifiedKey, M extends boolean = false> = TableCompactEmits<R, M>;
19
+ type TableSlots<T extends TableBaseData = TableBaseData> = TableCompactSlots<T>;
92
20
  interface TableRadioProps {
93
21
  size?: ThemeSize;
94
22
  checked?: boolean;
95
23
  }
24
+ interface TableFilterPopoverColumnMeta {
25
+ title?: string;
26
+ key?: string;
27
+ dataIndex?: string;
28
+ }
29
+ interface TableFilterPopoverOption {
30
+ label: string;
31
+ value: string;
32
+ disabled?: boolean;
33
+ }
34
+ interface TableFilterPopoverProps<T extends TableBaseData = TableBaseData> extends TableHeaderFilterSlotProps<T> {
35
+ size?: ThemeSize;
36
+ ui: TableExtendedUi;
37
+ }
96
38
  //#endregion
97
- export { BaseTableData, TableAlign, TableColumn, TableColumnType, TableEmits, TableProps, TableRadioProps, TableSelectionProps, TableSlots };
39
+ export { type TableBaseData, type TableColumn, type TableColumnFilter, type TableColumnFilterOption, type TableColumnFilterValue, type TableColumnType, TableEmits, TableExtendedUi, TableExtraUiSlot, TableFilterPopoverColumnMeta, TableFilterPopoverOption, TableFilterPopoverProps, TableProps, TableRadioProps, TableSlots, type TableSortOrder };
@@ -1 +1 @@
1
- import{tv as e}from"tailwind-variants";const t=e({slots:{root:`relative overflow-auto`,content:`w-full`,header:`sticky top-0 left-0 z-10 bg-accent`,body:``,footer:`bg-accent font-medium`,row:`data-[row]:hover:bg-accent transition-colors`,head:`text-foreground font-medium whitespace-nowrap`,cell:`whitespace-nowrap`,selection:`text-foreground`,radioRoot:[`peer relative shrink-0 rounded-full border border-solid shadow cursor-pointer transition-all-150`,`border-primary focus-visible:ring-primary/30`,`focus-visible:outline-none focus-visible:ring-3 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50`],radioIndicator:`absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 size-1/2 bg-primary rounded-full`},variants:{size:{xs:{root:`text-2xs`,caption:`py-2`,head:`h-8 px-1.5`,cell:`p-1.5`,radioRoot:`w-3 h-3`},sm:{root:`text-xs`,caption:`py-2.5`,head:`h-9 px-1.75`,cell:`p-1.75`,radioRoot:`w-3.5 h-3.5`},md:{root:`text-sm`,caption:`py-3`,head:`h-10 px-2`,cell:`p-2`,radioRoot:`w-4 h-4`},lg:{root:`text-base`,caption:`py-3.5`,head:`h-12 px-2.5`,cell:`p-2.5`,radioRoot:`w-4.5 h-4.5`},xl:{root:`text-lg`,caption:`py-4`,head:`h-14 px-3`,cell:`p-3`,radioRoot:`w-5 h-5`},"2xl":{root:`text-xl`,caption:`py-4.5`,head:`h-16 px-3.5`,cell:`p-3.5`,radioRoot:`w-6 h-6`}},bordered:{all:{content:`border border-border border-collapse`,head:`border border-border`,cell:`border border-border`},true:{header:`[&_tr]:border`,body:`[&_tr]:border-x`,footer:`[&>tr]:border-x border-t`,row:`border-b`},false:{header:`[&_tr]:border-b`,body:`[&_tr:last-child]:border-0`,footer:`[&>tr]:last:border-b-0 border-t`,row:`border-b`}},striped:{true:{row:`data-[row]:even:bg-accent`}}},defaultVariants:{size:`md`,bordered:!1,striped:!1}});export{t as tableVariants};
1
+ import{tv as e}from"tailwind-variants";const t=e({slots:{root:`relative overflow-auto rounded-md bg-accent`,content:`min-w-full w-max border-spacing-0`,header:`sticky top-0 start-0 z-10 [&>tr:last-child]:border-b-0`,body:[`[&>tr:first-child>td:first-child]:rounded-tl-md [&>tr:first-child>td:last-child]:rounded-tr-md`,`[&>tr:last-child>td:first-child]:rounded-bl-md [&>tr:last-child>td:last-child]:rounded-br-md`],footer:`font-medium [&>tr:last-child]:border-b-0`,row:`bg-background border-b hover:bg-primary-foreground transition-colors`,head:`box-border bg-accent text-foreground relative font-medium whitespace-nowrap`,cell:`box-border whitespace-nowrap data-[fixed]:bg-background`,fixed:[`relative`,`data-[fixed-side=start]:after:pointer-events-none data-[fixed-side=start]:after:absolute data-[fixed-side=start]:after:bottom-0 data-[fixed-side=start]:after:end-0 data-[fixed-side=start]:after:top-0 data-[fixed-side=start]:after:w-4 data-[fixed-side=start]:after:bg-gradient-to-l data-[fixed-side=start]:after:from-foreground/8 data-[fixed-side=start]:after:to-transparent data-[fixed-side=start]:after:content-empty`,`data-[fixed-side=end]:before:pointer-events-none data-[fixed-side=end]:before:absolute data-[fixed-side=end]:before:bottom-0 data-[fixed-side=end]:before:start-0 data-[fixed-side=end]:before:top-0 data-[fixed-side=end]:before:w-4 data-[fixed-side=end]:before:bg-gradient-to-r data-[fixed-side=end]:before:from-foreground/8 data-[fixed-side=end]:before:to-transparent data-[fixed-side=end]:before:content-empty`],resizeHandle:[`absolute end-0 top-1/2 w-3 h-2/3 -translate-y-1/2 rounded bg-transparent`,`cursor-col-resize border-none touch-none select-none`,`after:bg-border hover:after:bg-primary data-[resizing]:after:bg-primary focus-visible:after:bg-primary`,`focus-visible:outline-none focus-visible:ring-ring/40 focus-visible:ring-2`,`after:absolute after:bottom-0 after:end-0 after:top-0 after:w-px after:rounded-full after:content-empty`],treeCell:`flex min-w-0 items-center gap-1`,treeToggle:``,treeTogglePlaceholder:`inline-block size-5 shrink-0`,sortTrigger:`absolute top-1/2 -translate-y-1/2 data-[sorted]:text-primary`,filterTrigger:`absolute top-1/2 -translate-y-1/2 data-[filtered]:text-primary`,filterInput:``,filterPopup:``,filterSearch:``,filterOptions:`flex flex-col overflow-auto`,filterOption:`w-full rounded-md hover:bg-accent`,filterOptionLabel:`min-w-0 flex-1 truncate`,filterFooter:`flex items-center justify-between border-t border-border`,filterCount:`text-muted-foreground`,filterAction:[`text-xs font-medium text-primary rounded-md border-none bg-transparent px-2 py-1`,`transition-colors hover:bg-accent focus-visible:ring-ring focus-visible:outline-none focus-visible:ring-2`],filterEmpty:`text-muted-foreground py-6 text-center text-xs`,selection:`text-foreground`,radioRoot:[`peer relative shrink-0 rounded-full border border-solid shadow cursor-pointer transition-all-150`,`border-primary focus-visible:ring-primary/30`,`focus-visible:outline-none focus-visible:ring-3 focus-visible:ring-offset-background disabled:cursor-not-allowed disabled:opacity-50`],radioIndicator:`absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 size-1/2 bg-primary rounded-full`},variants:{size:{xs:{root:`px-0.75 pb-0.75 text-2xs`,caption:`py-2`,head:`h-8 px-1.5`,cell:`p-1.5`,radioRoot:`w-3 h-3`,sortTrigger:`end-1 p-0.75`,filterTrigger:`end-1`,filterPopup:`p-1.5`,filterOptions:`max-h-50 gap-0.75 py-1.5`,filterOption:`p-0.75`,filterFooter:`pt-1`,filterCount:`text-3xs leading-4`},sm:{root:`px-0.875 pb-0.875 text-xs`,caption:`py-2.5`,head:`h-9 px-1.75`,cell:`p-1.75`,radioRoot:`w-3.5 h-3.5`,sortTrigger:`end-1.25 p-0.875`,filterTrigger:`end-1.25`,filterPopup:`p-1.75`,filterOptions:`max-h-55 gap-0.875 py-2`,filterOption:`p-0.875`,filterFooter:`pt-1.25`,filterCount:`text-2xs leading-5`},md:{root:`px-1 pb-1 text-sm`,caption:`py-3`,head:`h-10 px-2`,cell:`p-2`,radioRoot:`w-4 h-4`,sortTrigger:`end-1.5 p-1`,filterTrigger:`end-1.5`,filterPopup:`p-2`,filterOptions:`max-h-60 gap-1 py-2.5`,filterOption:`p-1`,filterFooter:`pt-1.5`,filterCount:`text-xs leading-6`},lg:{root:`px-1.25 pb-1.25 text-base`,caption:`py-3.5`,head:`h-12 px-2.5`,cell:`p-2.5`,radioRoot:`w-4.5 h-4.5`,sortTrigger:`end-1.75 p-1.25`,filterTrigger:`end-1.75`,filterPopup:`p-2.5`,filterOptions:`max-h-65 gap-1.25 py-3`,filterOption:`p-1.25`,filterFooter:`pt-1.75`,filterCount:`text-sm leading-7`},xl:{root:`px-1.5 pb-1.5 text-lg`,caption:`py-4`,head:`h-14 px-3`,cell:`p-3`,radioRoot:`w-5 h-5`,sortTrigger:`end-2 p-1.5`,filterTrigger:`end-2`,filterPopup:`p-3`,filterOptions:`max-h-70 gap-1.5 py-3.5`,filterOption:`p-1.5`,filterFooter:`pt-2`,filterCount:`text-base leading-8`},"2xl":{root:`px-2 pb-2 text-xl`,caption:`py-4.5`,head:`h-16 px-3.5`,cell:`p-3.5`,radioRoot:`w-6 h-6`,sortTrigger:`end-2.5 p-1.75`,filterTrigger:`end-2.5`,filterPopup:`p-3.5`,filterOptions:`max-h-75 gap-1.75 py-4`,filterOption:`p-1.75`,filterFooter:`pt-2.5`,filterCount:`text-lg leading-9`}},bordered:{true:{cell:`border-l border-border first:border-l-0`}},striped:{true:{row:`data-[row]:even:bg-accent`}}},defaultVariants:{size:`md`,striped:!1}});export{t as tableVariants};
@@ -1,10 +1,10 @@
1
1
  import { TabsOptionData, TabsProps } from "./types.js";
2
- import * as vue from "vue";
2
+ import * as _$vue from "vue";
3
3
  import { AcceptableValue } from "@soybeanjs/headless";
4
4
 
5
5
  //#region src/components/tabs/tabs.vue.d.ts
6
6
  declare const __VLS_export: <T extends AcceptableValue = AcceptableValue, S extends TabsOptionData<NonNullable<T>> = TabsOptionData<NonNullable<T>>>(__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<{
7
- props: vue.PublicProps & __VLS_PrettifyLocal<TabsProps<T, S> & {
7
+ props: _$vue.PublicProps & __VLS_PrettifyLocal<TabsProps<T, S> & {
8
8
  "onUpdate:modelValue"?: ((payload: NonNullable<T>) => any) | undefined;
9
9
  }> & (typeof globalThis extends {
10
10
  __VLS_PROPS_FALLBACK: infer P;
@@ -21,7 +21,7 @@ declare const __VLS_export: <T extends AcceptableValue = AcceptableValue, S exte
21
21
  }) => any;
22
22
  };
23
23
  emit: (evt: "update:modelValue", payload: NonNullable<T>) => void;
24
- }>) => vue.VNode & {
24
+ }>) => _$vue.VNode & {
25
25
  __ctx?: Awaited<typeof __VLS_setup>;
26
26
  };
27
27
  declare const _default: typeof __VLS_export;
@@ -1,8 +1,8 @@
1
- import * as tailwind_variants0 from "tailwind-variants";
1
+ import * as _$tailwind_variants0 from "tailwind-variants";
2
2
  import { VariantProps } from "tailwind-variants";
3
3
 
4
4
  //#region src/components/tabs/variants.d.ts
5
- declare const tabsVariants: tailwind_variants0.TVReturnType<{
5
+ declare const tabsVariants: _$tailwind_variants0.TVReturnType<{
6
6
  size: {
7
7
  xs: {
8
8
  root: string;
@@ -148,7 +148,7 @@ declare const tabsVariants: tailwind_variants0.TVReturnType<{
148
148
  indicator: string;
149
149
  indicatorContent: string;
150
150
  content: string;
151
- }, tailwind_variants0.TVReturnType<{
151
+ }, _$tailwind_variants0.TVReturnType<{
152
152
  size: {
153
153
  xs: {
154
154
  root: string;
@@ -1,5 +1,5 @@
1
1
  import { TagProps } from "./types.js";
2
- import * as vue from "vue";
2
+ import * as _$vue from "vue";
3
3
 
4
4
  //#region src/components/tag/tag.vue.d.ts
5
5
  declare var __VLS_10: {}, __VLS_12: {}, __VLS_14: {}, __VLS_16: {
@@ -14,13 +14,13 @@ type __VLS_Slots = {} & {
14
14
  } & {
15
15
  close?: (props: typeof __VLS_16) => any;
16
16
  };
17
- declare const __VLS_base: vue.DefineComponent<TagProps, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
17
+ declare const __VLS_base: _$vue.DefineComponent<TagProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {
18
18
  "update:open": (open: boolean) => any;
19
- }, string, vue.PublicProps, Readonly<TagProps> & Readonly<{
19
+ }, string, _$vue.PublicProps, Readonly<TagProps> & Readonly<{
20
20
  "onUpdate:open"?: ((open: boolean) => any) | undefined;
21
21
  }>, {
22
22
  open: boolean;
23
- }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
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;
26
26
  type __VLS_WithSlots<T, S> = T & {
@@ -1,8 +1,8 @@
1
- import * as tailwind_variants0 from "tailwind-variants";
1
+ import * as _$tailwind_variants0 from "tailwind-variants";
2
2
  import { VariantProps } from "tailwind-variants";
3
3
 
4
4
  //#region src/components/tag/variants.d.ts
5
- declare const tagVariants: tailwind_variants0.TVReturnType<{
5
+ declare const tagVariants: _$tailwind_variants0.TVReturnType<{
6
6
  color: {
7
7
  primary: string;
8
8
  destructive: string;
@@ -64,7 +64,7 @@ declare const tagVariants: tailwind_variants0.TVReturnType<{
64
64
  auto: string;
65
65
  rounded: string;
66
66
  };
67
- }, undefined, tailwind_variants0.TVReturnType<{
67
+ }, undefined, _$tailwind_variants0.TVReturnType<{
68
68
  color: {
69
69
  primary: string;
70
70
  destructive: string;
@@ -0,0 +1,5 @@
1
+ import { TagsInputEmits, TagsInputProps } from "./types.js";
2
+ import { _default } from "./tags-input.vue.js";
3
+ import { _default as _default$1 } from "./tags-input-item-delete.vue.js";
4
+ import { TagsInputAcceptableValue, TagsInputClear as STagsInputClear, TagsInputClearProps, TagsInputInput as STagsInputInput, TagsInputInputProps, TagsInputItem as STagsInputItem, TagsInputItemDeleteProps as TagsInputItemDeleteProps$1, TagsInputItemProps, TagsInputItemText as STagsInputItemText, TagsInputItemTextProps, TagsInputRootEmits, TagsInputRootProps, TagsInputUi, TagsInputUiSlot } from "@soybeanjs/headless/tags-input";
5
+ export { STagsInputClear, STagsInputInput, STagsInputItem, STagsInputItemText, type TagsInputAcceptableValue, type TagsInputClearProps, type TagsInputInputProps, type TagsInputItemDeleteProps$1 as TagsInputItemDeleteProps, type TagsInputItemProps, type TagsInputItemTextProps, type TagsInputRootEmits, type TagsInputRootProps, type TagsInputUi, type TagsInputUiSlot };
@@ -0,0 +1 @@
1
+ import"./tags-input.js";import"./tags-input-item-delete.js";import{TagsInputClear as e,TagsInputInput as t,TagsInputItem as n,TagsInputItemText as r}from"@soybeanjs/headless/tags-input";export{e as STagsInputClear,t as STagsInputInput,n as STagsInputItem,r as STagsInputItemText};
@@ -0,0 +1 @@
1
+ import e from"../icon/icon.js";import{createBlock as t,createVNode as n,defineComponent as r,guardReactiveProps as i,normalizeProps as a,openBlock as o,renderSlot as s,unref as c,withCtx as l}from"vue";import{TagsInputItemDelete as u}from"@soybeanjs/headless";const d=r({name:`STagsInputItemDelete`,__name:`tags-input-item-delete`,props:{asChild:{type:Boolean},as:{}},setup(r){let d=r;return(r,f)=>(o(),t(c(u),a(i(d)),{default:l(()=>[s(r.$slots,`default`,{},()=>[n(e,{icon:`lucide:x`,"aria-hidden":!0})])]),_:3},16))}});export{d as default};
@@ -0,0 +1,18 @@
1
+ import * as _$vue from "vue";
2
+ import { TagsInputItemDeleteProps } from "@soybeanjs/headless/tags-input";
3
+
4
+ //#region src/components/tags-input/tags-input-item-delete.vue.d.ts
5
+ declare var __VLS_8: {};
6
+ type __VLS_Slots = {} & {
7
+ default?: (props: typeof __VLS_8) => any;
8
+ };
9
+ declare const __VLS_base: _$vue.DefineComponent<TagsInputItemDeleteProps, {}, {}, {}, {}, _$vue.ComponentOptionsMixin, _$vue.ComponentOptionsMixin, {}, string, _$vue.PublicProps, Readonly<TagsInputItemDeleteProps> & Readonly<{}>, {}, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
10
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
11
+ declare const _default: typeof __VLS_export;
12
+ type __VLS_WithSlots<T, S> = T & {
13
+ new (): {
14
+ $slots: S;
15
+ };
16
+ };
17
+ //#endregion
18
+ export { _default };
@@ -0,0 +1 @@
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{tagsInputVariants as t}from"./variants.js";import{computed as n,createBlock as r,defineComponent as i,guardReactiveProps as a,mergeProps as o,normalizeProps as s,openBlock as c,renderSlot as l,toHandlers as u,unref as d,withCtx as f}from"vue";import{useForwardListeners as p,useOmitProps as m}from"@soybeanjs/headless/composables";import{TagsInputRoot as h,provideTagsInputUi as g}from"@soybeanjs/headless";const _=i({name:`STagsInput`,__name:`tags-input`,props:{class:{},size:{},ui:{},id:{},modelValue:{},defaultValue:{},addOnPaste:{type:Boolean},addOnTab:{type:Boolean},addOnBlur:{type:Boolean},duplicate:{type:Boolean},disabled:{type:Boolean},delimiter:{},dir:{},max:{},convertValue:{type:Function},displayValue:{type:Function},name:{},required:{type:Boolean}},emits:[`update:modelValue`,`invalid`,`addTag`,`removeTag`],setup(i,{emit:_}){let v=i,y=_,b=m(v,[`class`,`size`,`ui`,`onInvalid`]),x=p(y);return g(n(()=>e(t({size:v.size}),v.ui,{root:v.class}))),(e,t)=>(c(),r(d(h),o(d(b),u(d(x))),{default:f(t=>[l(e.$slots,`default`,s(a(t)))]),_:3},16))}});export{_ as default};
@@ -0,0 +1,29 @@
1
+ import { TagsInputProps } from "./types.js";
2
+ import * as _$vue from "vue";
3
+ import { TagsInputAcceptableValue } from "@soybeanjs/headless";
4
+
5
+ //#region src/components/tags-input/tags-input.vue.d.ts
6
+ declare const __VLS_export: <T extends TagsInputAcceptableValue = string>(__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<{
7
+ props: _$vue.PublicProps & __VLS_PrettifyLocal<TagsInputProps<T> & {
8
+ "onUpdate:modelValue"?: ((value: T[]) => any) | undefined;
9
+ onInvalid?: ((value: T) => any) | undefined;
10
+ onAddTag?: ((value: T) => any) | undefined;
11
+ onRemoveTag?: ((value: T) => any) | undefined;
12
+ }> & (typeof globalThis extends {
13
+ __VLS_PROPS_FALLBACK: infer P;
14
+ } ? P : {});
15
+ expose: (exposed: {}) => void;
16
+ attrs: any;
17
+ slots: {
18
+ default?: (props: {
19
+ modelValue: TagsInputAcceptableValue[] | undefined;
20
+ }) => any;
21
+ };
22
+ emit: ((evt: "update:modelValue", value: T[]) => void) & ((evt: "invalid", value: T) => void) & ((evt: "addTag", value: T) => void) & ((evt: "removeTag", value: T) => void);
23
+ }>) => _$vue.VNode & {
24
+ __ctx?: Awaited<typeof __VLS_setup>;
25
+ };
26
+ declare const _default: typeof __VLS_export;
27
+ type __VLS_PrettifyLocal<T> = (T extends any ? { [K in keyof T]: T[K] } : { [K in keyof T as K]: T[K] }) & {};
28
+ //#endregion
29
+ export { _default };