@soybeanjs/headless 0.15.0-beta.1 → 0.15.0-beta.3

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 (380) hide show
  1. package/dist/components/_common/dynamic-render.js +1 -0
  2. package/dist/components/_icon/icon.js +1 -0
  3. package/dist/components/_icon/icon.vue.d.ts +8 -0
  4. package/dist/components/_icon/index.d.ts +3 -0
  5. package/dist/components/_icon/index.js +1 -0
  6. package/dist/components/{icon → _icon}/types.d.ts +3 -3
  7. package/dist/components/accordion/accordion-compact.js +1 -1
  8. package/dist/components/accordion/accordion-description.js +1 -0
  9. package/dist/components/accordion/accordion-description.vue.d.ts +18 -0
  10. package/dist/components/accordion/accordion-root.js +1 -1
  11. package/dist/components/accordion/context.d.ts +3 -2
  12. package/dist/components/accordion/index.d.ts +7 -6
  13. package/dist/components/accordion/index.js +1 -1
  14. package/dist/components/accordion/types.d.ts +12 -12
  15. package/dist/components/affix/affix-compact.js +1 -0
  16. package/dist/components/affix/affix-compact.vue.d.ts +24 -0
  17. package/dist/components/affix/affix-root.js +1 -1
  18. package/dist/components/affix/context.d.ts +3 -2
  19. package/dist/components/affix/index.d.ts +6 -5
  20. package/dist/components/affix/index.js +1 -1
  21. package/dist/components/affix/types.d.ts +9 -10
  22. package/dist/components/alert/alert-close.js +1 -1
  23. package/dist/components/alert/alert-close.vue.d.ts +4 -1
  24. package/dist/components/alert/alert-compact.js +1 -0
  25. package/dist/components/alert/alert-compact.vue.d.ts +21 -0
  26. package/dist/components/alert/context.d.ts +3 -2
  27. package/dist/components/alert/index.d.ts +7 -6
  28. package/dist/components/alert/index.js +1 -1
  29. package/dist/components/alert/types.d.ts +23 -3
  30. package/dist/components/anchor/anchor-compact-item.js +1 -0
  31. package/dist/components/anchor/anchor-compact.js +1 -0
  32. package/dist/components/anchor/anchor-compact.vue.d.ts +20 -0
  33. package/dist/components/anchor/context.d.ts +3 -2
  34. package/dist/components/anchor/index.d.ts +5 -4
  35. package/dist/components/anchor/index.js +1 -1
  36. package/dist/components/anchor/types.d.ts +22 -2
  37. package/dist/components/autocomplete/autocomplete-compact.js +1 -0
  38. package/dist/components/autocomplete/autocomplete-compact.vue.d.ts +24 -0
  39. package/dist/components/autocomplete/autocomplete-root.vue.d.ts +3 -3
  40. package/dist/components/autocomplete/context.d.ts +3 -2
  41. package/dist/components/autocomplete/index.d.ts +14 -13
  42. package/dist/components/autocomplete/index.js +1 -1
  43. package/dist/components/autocomplete/shared.js +1 -0
  44. package/dist/components/autocomplete/types.d.ts +77 -3
  45. package/dist/components/avatar/context.d.ts +3 -2
  46. package/dist/components/backtop/backtop.js +1 -0
  47. package/dist/components/backtop/backtop.vue.d.ts +33 -0
  48. package/dist/components/backtop/index.d.ts +3 -0
  49. package/dist/components/backtop/index.js +1 -0
  50. package/dist/components/backtop/shared.js +1 -0
  51. package/dist/components/backtop/types.d.ts +43 -0
  52. package/dist/components/badge/context.d.ts +3 -2
  53. package/dist/components/breadcrumb/breadcrumb-compact.js +1 -0
  54. package/dist/components/breadcrumb/breadcrumb-compact.vue.d.ts +21 -0
  55. package/dist/components/breadcrumb/context.d.ts +3 -2
  56. package/dist/components/breadcrumb/index.d.ts +10 -9
  57. package/dist/components/breadcrumb/index.js +1 -1
  58. package/dist/components/breadcrumb/shared.js +1 -0
  59. package/dist/components/breadcrumb/types.d.ts +48 -2
  60. package/dist/components/button/button.js +1 -1
  61. package/dist/components/button/button.vue.d.ts +1 -2
  62. package/dist/components/card/context.d.ts +3 -2
  63. package/dist/components/carousel/context.d.ts +3 -2
  64. package/dist/components/checkbox/checkbox-card-compact.js +1 -0
  65. package/dist/components/checkbox/checkbox-card-compact.vue.d.ts +31 -0
  66. package/dist/components/checkbox/checkbox-card-group-compact.js +1 -0
  67. package/dist/components/checkbox/checkbox-card-group-compact.vue.d.ts +21 -0
  68. package/dist/components/checkbox/checkbox-compact.js +1 -0
  69. package/dist/components/checkbox/checkbox-compact.vue.d.ts +34 -0
  70. package/dist/components/checkbox/checkbox-control.js +1 -1
  71. package/dist/components/checkbox/checkbox-group-compact.js +1 -0
  72. package/dist/components/checkbox/checkbox-group-compact.vue.d.ts +21 -0
  73. package/dist/components/checkbox/checkbox-group-root.js +1 -1
  74. package/dist/components/checkbox/checkbox-root.js +1 -1
  75. package/dist/components/checkbox/checkbox-root.vue.d.ts +1 -1
  76. package/dist/components/checkbox/context.d.ts +6 -4
  77. package/dist/components/checkbox/context.js +1 -1
  78. package/dist/components/checkbox/index.d.ts +12 -8
  79. package/dist/components/checkbox/index.js +1 -1
  80. package/dist/components/checkbox/types.d.ts +38 -3
  81. package/dist/components/clipboard/clipboard.js +1 -0
  82. package/dist/components/clipboard/clipboard.vue.d.ts +66 -0
  83. package/dist/components/clipboard/index.d.ts +3 -0
  84. package/dist/components/clipboard/index.js +1 -0
  85. package/dist/components/clipboard/types.d.ts +63 -0
  86. package/dist/components/collapsible/collapsible-root.vue.d.ts +1 -1
  87. package/dist/components/collapsible/context.d.ts +3 -2
  88. package/dist/components/color-area/color-area-root.vue.d.ts +2 -2
  89. package/dist/components/color-area/context.d.ts +3 -2
  90. package/dist/components/color-field/color-field-root.vue.d.ts +4 -4
  91. package/dist/components/color-field/context.d.ts +3 -2
  92. package/dist/components/color-picker/color-picker-root.vue.d.ts +2 -2
  93. package/dist/components/color-slider/color-slider-root.vue.d.ts +3 -3
  94. package/dist/components/color-slider/context.d.ts +3 -2
  95. package/dist/components/color-swatch-picker/color-swatch-picker-root.js +1 -1
  96. package/dist/components/color-swatch-picker/context.d.ts +3 -2
  97. package/dist/components/combobox/combobox-anchor.js +1 -0
  98. package/dist/components/combobox/combobox-anchor.vue.d.ts +18 -0
  99. package/dist/components/combobox/combobox-arrow.js +1 -0
  100. package/dist/components/combobox/combobox-arrow.vue.d.ts +18 -0
  101. package/dist/components/combobox/combobox-cancel.js +1 -0
  102. package/dist/components/combobox/combobox-cancel.vue.d.ts +21 -0
  103. package/dist/components/combobox/combobox-compact.js +1 -0
  104. package/dist/components/combobox/combobox-compact.vue.d.ts +34 -0
  105. package/dist/components/combobox/combobox-content-impl.js +1 -0
  106. package/dist/components/combobox/combobox-content.js +1 -1
  107. package/dist/components/combobox/combobox-content.vue.d.ts +5 -2
  108. package/dist/components/combobox/combobox-empty.js +1 -1
  109. package/dist/components/combobox/combobox-empty.vue.d.ts +4 -1
  110. package/dist/components/combobox/combobox-group-label.js +1 -1
  111. package/dist/components/combobox/combobox-group.js +1 -1
  112. package/dist/components/combobox/combobox-input.js +1 -1
  113. package/dist/components/combobox/combobox-input.vue.d.ts +4 -4
  114. package/dist/components/combobox/combobox-item-indicator.js +1 -1
  115. package/dist/components/combobox/combobox-item.js +1 -1
  116. package/dist/components/combobox/combobox-root.js +1 -1
  117. package/dist/components/combobox/combobox-root.vue.d.ts +15 -7
  118. package/dist/components/combobox/combobox-separator.js +1 -1
  119. package/dist/components/combobox/combobox-trigger.js +1 -1
  120. package/dist/components/combobox/combobox-trigger.vue.d.ts +2 -2
  121. package/dist/components/combobox/combobox-viewport.js +1 -1
  122. package/dist/components/combobox/combobox-virtualizer.js +1 -0
  123. package/dist/components/combobox/combobox-virtualizer.vue.d.ts +23 -0
  124. package/dist/components/combobox/context.d.ts +4 -3
  125. package/dist/components/combobox/context.js +1 -1
  126. package/dist/components/combobox/index.d.ts +19 -14
  127. package/dist/components/combobox/index.js +1 -1
  128. package/dist/components/combobox/shared.js +1 -0
  129. package/dist/components/combobox/types.d.ts +117 -17
  130. package/dist/components/command/command-compact.js +1 -0
  131. package/dist/components/command/command-compact.vue.d.ts +29 -0
  132. package/dist/components/command/context.d.ts +9 -0
  133. package/dist/components/command/context.js +1 -0
  134. package/dist/components/command/index.d.ts +5 -0
  135. package/dist/components/command/index.js +1 -0
  136. package/dist/components/command/shared.js +1 -0
  137. package/dist/components/command/types.d.ts +68 -0
  138. package/dist/components/config-provider/config-provider.vue.d.ts +1 -1
  139. package/dist/components/config-provider/types.d.ts +1 -1
  140. package/dist/components/context-menu/context-menu-checkbox-compact.js +1 -1
  141. package/dist/components/context-menu/context-menu-checkbox-compact.vue.d.ts +3 -3
  142. package/dist/components/context-menu/context-menu-compact.js +1 -1
  143. package/dist/components/context-menu/context-menu-compact.vue.d.ts +3 -3
  144. package/dist/components/context-menu/context-menu-content.vue.d.ts +2 -2
  145. package/dist/components/context-menu/context-menu-radio-compact.js +1 -1
  146. package/dist/components/context-menu/context-menu-radio-compact.vue.d.ts +3 -3
  147. package/dist/components/context-menu/context-menu-root.js +1 -1
  148. package/dist/components/context-menu/context-menu-wrapper-compact.js +1 -1
  149. package/dist/components/context-menu/context-menu-wrapper-compact.vue.d.ts +4 -4
  150. package/dist/components/context-menu/index.d.ts +2 -2
  151. package/dist/components/context-menu/index.js +1 -1
  152. package/dist/components/context-menu/types.d.ts +1 -1
  153. package/dist/components/dialog/context.d.ts +3 -2
  154. package/dist/components/dialog/context.js +1 -1
  155. package/dist/components/dialog/dialog-cancel.js +1 -0
  156. package/dist/components/dialog/dialog-cancel.vue.d.ts +25 -0
  157. package/dist/components/dialog/dialog-close.js +1 -1
  158. package/dist/components/dialog/dialog-close.vue.d.ts +6 -3
  159. package/dist/components/dialog/dialog-compact.js +1 -0
  160. package/dist/components/dialog/dialog-compact.vue.d.ts +47 -0
  161. package/dist/components/dialog/dialog-confirm.js +1 -0
  162. package/dist/components/dialog/dialog-confirm.vue.d.ts +25 -0
  163. package/dist/components/dialog/dialog-content.js +1 -1
  164. package/dist/components/dialog/dialog-content.vue.d.ts +3 -18
  165. package/dist/components/dialog/dialog-popup-impl.js +1 -0
  166. package/dist/components/dialog/dialog-popup.js +1 -0
  167. package/dist/components/{alert-dialog/alert-dialog-content.vue.d.ts → dialog/dialog-popup.vue.d.ts} +6 -6
  168. package/dist/components/dialog/dialog-provider.js +1 -0
  169. package/dist/components/dialog/dialog-provider.vue.d.ts +17 -0
  170. package/dist/components/dialog/dialog-root.js +1 -1
  171. package/dist/components/dialog/dialog-root.vue.d.ts +1 -2
  172. package/dist/components/dialog/dialog-trigger.js +1 -1
  173. package/dist/components/dialog/index.d.ts +18 -12
  174. package/dist/components/dialog/index.js +1 -1
  175. package/dist/components/dialog/state.d.ts +14 -0
  176. package/dist/components/dialog/state.js +1 -0
  177. package/dist/components/dialog/types.d.ts +133 -16
  178. package/dist/components/dropdown-menu/dropdown-menu-checkbox-compact.js +1 -1
  179. package/dist/components/dropdown-menu/dropdown-menu-checkbox-compact.vue.d.ts +3 -3
  180. package/dist/components/dropdown-menu/dropdown-menu-compact.js +1 -1
  181. package/dist/components/dropdown-menu/dropdown-menu-compact.vue.d.ts +3 -3
  182. package/dist/components/dropdown-menu/dropdown-menu-content.vue.d.ts +2 -2
  183. package/dist/components/dropdown-menu/dropdown-menu-radio-compact.js +1 -1
  184. package/dist/components/dropdown-menu/dropdown-menu-radio-compact.vue.d.ts +3 -3
  185. package/dist/components/dropdown-menu/dropdown-menu-root.js +1 -1
  186. package/dist/components/dropdown-menu/dropdown-menu-root.vue.d.ts +2 -2
  187. package/dist/components/dropdown-menu/dropdown-menu-wrapper-compact.js +1 -1
  188. package/dist/components/dropdown-menu/dropdown-menu-wrapper-compact.vue.d.ts +4 -4
  189. package/dist/components/dropdown-menu/index.d.ts +2 -2
  190. package/dist/components/dropdown-menu/index.js +1 -1
  191. package/dist/components/dropdown-menu/types.d.ts +1 -1
  192. package/dist/components/editable/context.d.ts +3 -2
  193. package/dist/components/editable/editable-root.js +1 -1
  194. package/dist/components/editable/editable-root.vue.d.ts +1 -1
  195. package/dist/components/empty/context.d.ts +3 -2
  196. package/dist/components/form/context.d.ts +3 -2
  197. package/dist/components/form/core/types.d.ts +3 -2
  198. package/dist/components/form/core/use-form-state.js +1 -1
  199. package/dist/components/hover-card/index.d.ts +1 -1
  200. package/dist/components/hover-card/index.js +1 -1
  201. package/dist/components/hover-card/types.d.ts +1 -1
  202. package/dist/components/input/context.d.ts +3 -2
  203. package/dist/components/input-number/context.d.ts +3 -2
  204. package/dist/components/input-number/input-number-root.vue.d.ts +1 -1
  205. package/dist/components/input-otp/context.d.ts +9 -0
  206. package/dist/components/input-otp/context.js +1 -0
  207. package/dist/components/input-otp/index.d.ts +8 -0
  208. package/dist/components/input-otp/index.js +1 -0
  209. package/dist/components/input-otp/input-otp-compact.js +1 -0
  210. package/dist/components/input-otp/input-otp-compact.vue.d.ts +37 -0
  211. package/dist/components/input-otp/input-otp-input.js +1 -0
  212. package/dist/components/input-otp/input-otp-input.vue.d.ts +8 -0
  213. package/dist/components/input-otp/input-otp-positioner.js +1 -0
  214. package/dist/components/input-otp/input-otp-positioner.vue.d.ts +18 -0
  215. package/dist/components/input-otp/input-otp-root.js +1 -0
  216. package/dist/components/input-otp/input-otp-root.vue.d.ts +55 -0
  217. package/dist/components/input-otp/regexp.d.ts +6 -0
  218. package/dist/components/input-otp/regexp.js +1 -0
  219. package/dist/components/input-otp/shared.js +1 -0
  220. package/dist/components/input-otp/types.d.ts +113 -0
  221. package/dist/components/input-otp/use-password-manager-badge.js +1 -0
  222. package/dist/components/layout/context.d.ts +3 -2
  223. package/dist/components/layout/layout-mobile.js +1 -1
  224. package/dist/components/link/link.js +1 -1
  225. package/dist/components/link/link.vue.d.ts +1 -1
  226. package/dist/components/list/context.d.ts +3 -2
  227. package/dist/components/listbox/context.d.ts +3 -2
  228. package/dist/components/listbox/context.js +1 -1
  229. package/dist/components/listbox/listbox-root.js +1 -1
  230. package/dist/components/listbox/types.d.ts +0 -6
  231. package/dist/components/menu/context.d.ts +3 -2
  232. package/dist/components/menu/index.d.ts +2 -2
  233. package/dist/components/menu/index.js +1 -1
  234. package/dist/components/menu/menu-checkbox-options-compact.js +1 -1
  235. package/dist/components/menu/menu-content.vue.d.ts +2 -2
  236. package/dist/components/menu/menu-item-slot-compact.js +1 -1
  237. package/dist/components/menu/menu-option-compact.js +1 -1
  238. package/dist/components/menu/menu-option-compact.vue.d.ts +3 -3
  239. package/dist/components/menu/menu-options-compact.vue.d.ts +3 -3
  240. package/dist/components/menu/menu-radio-options-compact.js +1 -1
  241. package/dist/components/menu/menu-root.js +1 -1
  242. package/dist/components/menu/menu-sub-content.vue.d.ts +2 -2
  243. package/dist/components/menu/types.d.ts +3 -3
  244. package/dist/components/menubar/context.d.ts +3 -2
  245. package/dist/components/menubar/index.js +1 -1
  246. package/dist/components/menubar/menubar-compact.js +1 -1
  247. package/dist/components/menubar/menubar-compact.vue.d.ts +3 -3
  248. package/dist/components/menubar/menubar-content.vue.d.ts +2 -2
  249. package/dist/components/menubar/menubar-sub-content.vue.d.ts +2 -2
  250. package/dist/components/menubar/types.d.ts +1 -1
  251. package/dist/components/navigation-menu/context.d.ts +3 -2
  252. package/dist/components/page-tabs/context.d.ts +3 -2
  253. package/dist/components/page-tabs/page-tabs-item.vue.d.ts +2 -2
  254. package/dist/components/pagination/context.d.ts +3 -2
  255. package/dist/components/pagination/pagination-root.vue.d.ts +2 -2
  256. package/dist/components/popover/index.d.ts +2 -2
  257. package/dist/components/popover/index.js +1 -1
  258. package/dist/components/popover/popover-root.js +1 -1
  259. package/dist/components/popover/types.d.ts +1 -1
  260. package/dist/components/popper/context.d.ts +3 -2
  261. package/dist/components/popper/popper-positioner.vue.d.ts +2 -2
  262. package/dist/components/popper/types.d.ts +5 -1
  263. package/dist/components/progress/context.d.ts +6 -4
  264. package/dist/components/progress/context.js +1 -1
  265. package/dist/components/progress/index.d.ts +6 -4
  266. package/dist/components/progress/index.js +1 -1
  267. package/dist/components/progress/progress-circle.js +1 -1
  268. package/dist/components/progress/progress-indicator.js +1 -1
  269. package/dist/components/progress/progress-provider.js +1 -0
  270. package/dist/components/progress/progress-provider.vue.d.ts +8 -0
  271. package/dist/components/progress/progress-root.js +1 -1
  272. package/dist/components/progress/shared.js +1 -1
  273. package/dist/components/progress/state.d.ts +52 -0
  274. package/dist/components/progress/state.js +1 -0
  275. package/dist/components/progress/types.d.ts +15 -2
  276. package/dist/components/radio-group/context.d.ts +3 -2
  277. package/dist/components/radio-group/index.d.ts +8 -7
  278. package/dist/components/radio-group/index.js +1 -1
  279. package/dist/components/radio-group/radio-group-compact.js +1 -0
  280. package/dist/components/radio-group/radio-group-compact.vue.d.ts +22 -0
  281. package/dist/components/radio-group/radio-group-root.js +1 -1
  282. package/dist/components/radio-group/types.d.ts +14 -1
  283. package/dist/components/scroll-area/context.d.ts +3 -2
  284. package/dist/components/scroll-area/scroll-area-root.js +1 -1
  285. package/dist/components/scroll-area/scroll-area-viewport.js +1 -1
  286. package/dist/components/segment/index.d.ts +8 -0
  287. package/dist/components/segment/index.js +1 -0
  288. package/dist/components/segment/segment-compact.js +1 -0
  289. package/dist/components/segment/segment-compact.vue.d.ts +22 -0
  290. package/dist/components/segment/types.d.ts +22 -0
  291. package/dist/components/select/context.d.ts +3 -2
  292. package/dist/components/select/index.d.ts +19 -18
  293. package/dist/components/select/index.js +1 -1
  294. package/dist/components/select/select-compact.js +1 -0
  295. package/dist/components/select/select-compact.vue.d.ts +28 -0
  296. package/dist/components/select/select-content.vue.d.ts +1 -1
  297. package/dist/components/select/select-root.js +1 -1
  298. package/dist/components/select/select-viewport.js +1 -1
  299. package/dist/components/select/shared.js +1 -1
  300. package/dist/components/select/types.d.ts +61 -1
  301. package/dist/components/separator/context.d.ts +3 -2
  302. package/dist/components/slider/context.d.ts +3 -2
  303. package/dist/components/slider/slider-root.js +1 -1
  304. package/dist/components/slider/slider-root.vue.d.ts +3 -3
  305. package/dist/components/splitter/context.d.ts +3 -2
  306. package/dist/components/stepper/context.d.ts +3 -2
  307. package/dist/components/stepper/stepper-root.vue.d.ts +2 -2
  308. package/dist/components/switch/context.d.ts +3 -2
  309. package/dist/components/table/context.d.ts +3 -2
  310. package/dist/components/tabs/context.d.ts +3 -2
  311. package/dist/components/tabs/index.d.ts +8 -7
  312. package/dist/components/tabs/index.js +1 -1
  313. package/dist/components/tabs/tabs-compact.js +1 -0
  314. package/dist/components/tabs/tabs-compact.vue.d.ts +21 -0
  315. package/dist/components/tabs/tabs-root.vue.d.ts +2 -2
  316. package/dist/components/tabs/types.d.ts +25 -2
  317. package/dist/components/tags-input/context.d.ts +3 -2
  318. package/dist/components/textarea/context.d.ts +3 -2
  319. package/dist/components/toast/context.d.ts +3 -2
  320. package/dist/components/toast/shared.js +1 -1
  321. package/dist/components/toast/state.js +1 -1
  322. package/dist/components/toast/toast.js +1 -1
  323. package/dist/components/toast/toaster.js +1 -1
  324. package/dist/components/toast/toaster.vue.d.ts +2 -2
  325. package/dist/components/toast/types.d.ts +3 -19
  326. package/dist/components/toggle/toggle.vue.d.ts +1 -1
  327. package/dist/components/toggle-group/context.d.ts +3 -2
  328. package/dist/components/toggle-group/toggle-group-root.js +1 -1
  329. package/dist/components/toolbar/context.d.ts +3 -2
  330. package/dist/components/toolbar/toolbar-toggle-group.js +1 -1
  331. package/dist/components/toolbar/types.d.ts +1 -1
  332. package/dist/components/tooltip/index.d.ts +1 -1
  333. package/dist/components/tooltip/index.js +1 -1
  334. package/dist/components/tree-menu/context.d.ts +3 -2
  335. package/dist/components/tree-menu/tree-menu-root.vue.d.ts +1 -1
  336. package/dist/components/visually-hidden/visually-hidden-input.vue.d.ts +1 -1
  337. package/dist/components/visually-hidden/visually-hidden.vue.d.ts +1 -1
  338. package/dist/composables/index.d.ts +2 -2
  339. package/dist/composables/use-selection.js +1 -1
  340. package/dist/composables/use-ui-context.d.ts +1 -1
  341. package/dist/constants/components.d.ts +8 -4
  342. package/dist/constants/components.js +1 -1
  343. package/dist/date/calendar.d.ts +52 -0
  344. package/dist/date/calendar.js +1 -0
  345. package/dist/date/comparators.d.ts +30 -0
  346. package/dist/date/comparators.js +1 -0
  347. package/dist/date/index.d.ts +5 -0
  348. package/dist/date/index.js +1 -0
  349. package/dist/date/types.d.ts +36 -0
  350. package/dist/date/utils.d.ts +4 -0
  351. package/dist/date/utils.js +1 -0
  352. package/dist/index.d.ts +397 -355
  353. package/dist/index.js +1 -1
  354. package/dist/namespaced/index.d.ts +759 -689
  355. package/dist/namespaced/index.js +1 -1
  356. package/dist/shared/index.d.ts +2 -2
  357. package/dist/shared/index.js +1 -1
  358. package/dist/shared/vue.d.ts +2 -1
  359. package/dist/shared/vue.js +1 -1
  360. package/dist/types/common.d.ts +9 -2
  361. package/dist/types/index.d.ts +1 -1
  362. package/package.json +10 -5
  363. package/dist/components/alert-dialog/alert-dialog-close.js +0 -1
  364. package/dist/components/alert-dialog/alert-dialog-close.vue.d.ts +0 -22
  365. package/dist/components/alert-dialog/alert-dialog-content.js +0 -1
  366. package/dist/components/alert-dialog/alert-dialog-root.js +0 -1
  367. package/dist/components/alert-dialog/alert-dialog-root.vue.d.ts +0 -28
  368. package/dist/components/alert-dialog/context.js +0 -1
  369. package/dist/components/alert-dialog/index.d.ts +0 -15
  370. package/dist/components/alert-dialog/index.js +0 -1
  371. package/dist/components/alert-dialog/types.d.ts +0 -9
  372. package/dist/components/dialog/dialog-content-impl.js +0 -1
  373. package/dist/components/icon/icon-render.js +0 -1
  374. package/dist/components/icon/icon-render.vue.d.ts +0 -8
  375. package/dist/components/icon/index.d.ts +0 -3
  376. package/dist/components/icon/index.js +0 -1
  377. /package/dist/_virtual/{_@oxc-project_runtime@0.126.0 → _@oxc-project_runtime@0.127.0}/helpers/defineProperty.js +0 -0
  378. /package/dist/_virtual/{_@oxc-project_runtime@0.126.0 → _@oxc-project_runtime@0.127.0}/helpers/toPrimitive.js +0 -0
  379. /package/dist/_virtual/{_@oxc-project_runtime@0.126.0 → _@oxc-project_runtime@0.127.0}/helpers/toPropertyKey.js +0 -0
  380. /package/dist/_virtual/{_@oxc-project_runtime@0.126.0 → _@oxc-project_runtime@0.127.0}/helpers/typeof.js +0 -0
@@ -1 +1 @@
1
- import{isNullish as e}from"../../shared/guard.js";import"../../shared/index.js";import{useControllableState as t}from"../../composables/use-controllable-state.js";import{useOmitProps as n}from"../../composables/use-props.js";import"../../composables/index.js";import{Primitive as r}from"../primitive/primitive.js";import"../primitive/index.js";import{provideProgressRootContext as i,useProgressUi as a}from"./context.js";import{getValidMax as o,getValidModelValue as s,getValueLabel as c}from"./shared.js";import{computed as l,createBlock as u,defineComponent as d,mergeProps as f,openBlock as p,renderSlot as m,unref as h,useAttrs as g,watch as _,withCtx as v}from"vue";const y=d({name:`ProgressRoot`,inheritAttrs:!1,__name:`progress-root`,props:{modelValue:{},max:{},getValueLabel:{type:Function,default:c},getValueText:{},asChild:{type:Boolean},as:{default:`div`}},emits:[`update:modelValue`,`update:max`],setup(c,{emit:d}){let y=c,b=d,x=g(),S=a(`root`),C=t(()=>y.modelValue,e=>{b(`update:modelValue`,e)},void 0),w=t(()=>y.max,e=>{b(`update:max`,e??100)},100),T=l(()=>o(w.value)),E=l(()=>s(C.value,T.value)),D=n(y,[`modelValue`,`max`,`getValueLabel`,`getValueText`],x,l(()=>typeof E.value==`number`?{"aria-valuenow":E.value}:{})),O=l(()=>e(E.value)?`indeterminate`:E.value===T.value?`complete`:`loading`),k=l(()=>e(E.value)?null:E.value/T.value*100),A=l(()=>y.getValueLabel?.(E.value,T.value)),j=l(()=>y.getValueText?.(E.value,T.value));function M(e){return typeof e==`string`&&e.trim().length>0?e:void 0}function N(e){return M(x[e])}let P=l(()=>N(`aria-label`)??M(A.value)??`Progress`),F=l(()=>N(`aria-valuetext`)??M(j.value));return _(T,e=>{e!==w.value&&(w.value=e)},{immediate:!0}),_(E,e=>{e!==C.value&&(C.value=e)},{immediate:!0}),i({modelValue:E,max:T,progressState:O,valuePercent:k}),(e,t)=>(p(),u(h(r),f(h(D),{class:h(S),role:`progressbar`,"aria-label":P.value,"aria-valuemin":0,"aria-valuemax":T.value,"aria-valuetext":F.value,"data-state":O.value,"data-value":E.value??void 0,"data-max":T.value}),{default:v(()=>[m(e.$slots,`default`,{modelValue:E.value,max:T.value,progressState:O.value,valuePercent:k.value})]),_:3},16,[`class`,`aria-label`,`aria-valuemax`,`aria-valuetext`,`data-state`,`data-value`,`data-max`]))}});export{y as default};
1
+ import{isNullish as e}from"../../shared/guard.js";import"../../shared/index.js";import{useControllableState as t}from"../../composables/use-controllable-state.js";import{useOmitProps as n}from"../../composables/use-props.js";import"../../composables/index.js";import{useDirection as r}from"../config-provider/context.js";import{Primitive as i}from"../primitive/primitive.js";import"../primitive/index.js";import{provideProgressRootContext as a,useProgressUi as o}from"./context.js";import{getValidMax as s,getValidModelValue as c,getValueLabel as l}from"./shared.js";import{computed as u,createBlock as d,defineComponent as f,mergeProps as p,openBlock as m,renderSlot as h,unref as g,useAttrs as _,watch as v,withCtx as y}from"vue";const b=f({name:`ProgressRoot`,inheritAttrs:!1,__name:`progress-root`,props:{dir:{},modelValue:{},max:{},getValueLabel:{type:Function,default:l},getValueText:{},asChild:{type:Boolean},as:{default:`div`}},emits:[`update:modelValue`,`update:max`],setup(l,{emit:f}){let b=l,x=f,S=_(),C=o(`root`),w=t(()=>b.modelValue,e=>{x(`update:modelValue`,e)},void 0),T=t(()=>b.max,e=>{x(`update:max`,e??100)},100),E=r(()=>b.dir),D=u(()=>s(T.value)),O=u(()=>c(w.value,D.value)),k=n(b,[`modelValue`,`max`,`getValueLabel`,`getValueText`],S,u(()=>typeof O.value==`number`?{"aria-valuenow":O.value}:{})),A=u(()=>e(O.value)?`indeterminate`:O.value===D.value?`complete`:`loading`),j=u(()=>e(O.value)?null:O.value/D.value*100),M=u(()=>b.getValueLabel?.(O.value,D.value)),N=u(()=>b.getValueText?.(O.value,D.value));function P(e){return typeof e==`string`&&e.trim().length>0?e:void 0}function F(e){return P(S[e])}let I=u(()=>F(`aria-label`)??P(M.value)??`Progress`),L=u(()=>F(`aria-valuetext`)??P(N.value));return v(D,e=>{e!==T.value&&(T.value=e)},{immediate:!0}),v(O,e=>{e!==w.value&&(w.value=e)},{immediate:!0}),a({dir:E,modelValue:O,max:D,progressState:A,valuePercent:j}),(e,t)=>(m(),d(g(i),p(g(k),{class:g(C),role:`progressbar`,"aria-label":I.value,"aria-valuemin":0,"aria-valuemax":D.value,"aria-valuetext":L.value,"data-state":A.value,"data-value":O.value??void 0,"data-max":D.value,"data-slot":`root`}),{default:y(()=>[h(e.$slots,`default`,{modelValue:O.value,max:D.value,progressState:A.value,valuePercent:j.value})]),_:3},16,[`class`,`aria-label`,`aria-valuemax`,`aria-valuetext`,`data-state`,`data-value`,`data-max`]))}});export{b as default};
@@ -1 +1 @@
1
- import{isNullish as e}from"../../shared/guard.js";import"../../shared/index.js";function t(e){return typeof e==`number`&&!Number.isNaN(e)&&e>0}function n(e,t){if(typeof e==`number`)return`${Math.round(e/(typeof t==`number`&&t>0?t:100)*100)}%`}function r(e){return t(e)?e:100}function i(n,r){return e(n)?n:!t(n)&&n!==0||n<0||n>r?null:n}function a(e){return!t(e)||e<1||e>25?8:e}function o(e){return(100-e)/2}function s(e,t){return t===`indeterminate`?`${e*.35} ${e}`:`${e} ${e}`}function c(e,t,n){return n===`indeterminate`?t*.25:e===null?t:t*(1-e/100)}export{s as getProgressCircleDasharray,c as getProgressCircleDashoffset,o as getProgressCircleRadius,r as getValidMax,i as getValidModelValue,a as getValidProgressCircleStrokeWidth,n as getValueLabel};
1
+ import{isNullish as e}from"../../shared/guard.js";import"../../shared/index.js";function t(e){return typeof e==`number`&&!Number.isNaN(e)&&e>0}function n(e,t){if(typeof e==`number`)return`${Math.round(e/(typeof t==`number`&&t>0?t:100)*100)}%`}function r(e){return t(e)?e:100}function i(n,r){return e(n)?n:!t(n)&&n!==0||n<0||n>r?null:n}function a(e){return!t(e)||e<1||e>25?8:e}function o(e){return(100-e)/2}function s(e,t){return t===`indeterminate`?`${e*.35} ${e}`:`${e} ${e}`}function c(e,t,n){return n===`indeterminate`?t*.25:e===null?t:t*(1-e/100)}function l(e,t=`ltr`){if(e!==null)return t===`rtl`?100-e:-(100-e)}export{s as getProgressCircleDasharray,c as getProgressCircleDashoffset,o as getProgressCircleRadius,r as getValidMax,i as getValidModelValue,a as getValidProgressCircleStrokeWidth,n as getValueLabel,l as getValuePercent};
@@ -0,0 +1,52 @@
1
+ import { ProgressOptions } from "./types.js";
2
+
3
+ //#region src/components/progress/state.d.ts
4
+ declare class ProgressObserver {
5
+ static options: Required<ProgressOptions>;
6
+ static status: number | null;
7
+ private static pending;
8
+ private static isPaused;
9
+ private static trickleTimer;
10
+ static reset(): typeof ProgressObserver;
11
+ static configure(options: Partial<ProgressOptions>): typeof ProgressObserver;
12
+ static isStarted(): boolean;
13
+ static isRendered(): boolean;
14
+ /**
15
+ * Set the progress status.
16
+ * This method updates the progress status for every progress element present in the DOM.
17
+ * If a template is provided, it will create a new progress element if one does not already exist.
18
+ * If the template is null, it relies on user-inserted elements.
19
+ */
20
+ static set(n: number): typeof ProgressObserver;
21
+ static start(): typeof ProgressObserver;
22
+ static done(force?: boolean): typeof ProgressObserver;
23
+ static inc(amount?: number): typeof ProgressObserver;
24
+ static dec(amount?: number): typeof ProgressObserver;
25
+ static trickle(): typeof ProgressObserver;
26
+ static promise(input: any): typeof ProgressObserver;
27
+ /**
28
+ * Renders the BProgress component.
29
+ * If a template is provided, it will create a progress element if none exists in the parent.
30
+ * If the template is null, it relies on the user to insert their own elements marked with the "soybean-progress" class.
31
+ * When using indeterminate mode with a custom template, the template should include the indeterminate element.
32
+ */
33
+ static render(fromStart?: boolean): HTMLElement[];
34
+ /**
35
+ * Remove the progress element from the DOM.
36
+ * If a progress element is provided, only that element is removed;
37
+ * otherwise, all progress elements and associated classes are removed.
38
+ * For user-provided templates (when options.template === null), the element
39
+ * is hidden instead of being removed.
40
+ */
41
+ static remove(progressElement?: HTMLElement): void;
42
+ static pause(): typeof ProgressObserver;
43
+ static resume(): typeof ProgressObserver;
44
+ private static queue;
45
+ private static next;
46
+ private static clearTrickleTimer;
47
+ private static startTrickling;
48
+ private static barPositionCSS;
49
+ }
50
+ declare const progress: typeof ProgressObserver;
51
+ //#endregion
52
+ export { progress };
@@ -0,0 +1 @@
1
+ import{clamp as e}from"../../shared/value.js";import{isClient as t}from"../../shared/env.js";import"../../shared/index.js";import{_defineProperty as n}from"../../_virtual/_@oxc-project_runtime@0.127.0/helpers/defineProperty.js";import{defu as r}from"defu";const i={direction:`ltr`,minimum:.08,maximum:1,easing:`linear`,speed:200,trickle:!0,trickleSpeed:200};var a=class{static reset(){return this.status=null,this.isPaused=!1,this.pending=[],this.options=i,this.clearTrickleTimer(),this}static configure(e){return this.options=r({...e},this.options),this}static isStarted(){return typeof this.status==`number`}static isRendered(){return t?document.querySelector(`[data-soybean-progress]`)!==null:!1}static set(n){if(!t||this.isPaused)return this;let r=this.isStarted();n=e(n,this.options.minimum,this.options.maximum),this.status=n===this.options.maximum?null:n,this.status===null&&this.clearTrickleTimer();let i=this.render(!r),a=this.options.speed,o=this.options.easing;return i.forEach(e=>e.offsetWidth),this.queue(e=>{i.forEach(e=>{c(e.querySelector(`[data-soybean-progress-bar]`),this.barPositionCSS({n,speed:a,ease:o}))}),n===this.options.maximum?(i.forEach(e=>{c(e,{transition:`none`,opacity:`1`}),e.offsetWidth}),setTimeout(()=>{i.forEach(e=>{c(e,{transition:`all ${a}ms ${o}`,opacity:`0`})}),setTimeout(()=>{i.forEach(e=>{this.remove(e),c(e,{transition:`none`,opacity:`1`})}),e()},a)},a)):setTimeout(e,a)}),this}static start(){return t?(this.status||this.set(0),this.options.trickle&&this.startTrickling(),this):this}static done(e){return!t||!e&&!this.status?this:this.inc(.3+.5*Math.random()).set(1)}static inc(t){if(this.isPaused)return this;let n=this.status;return n?n>1?this:(typeof t!=`number`&&(t=n>=0&&n<.2?.1:n>=.2&&n<.5?.04:n>=.5&&n<.8?.02:n>=.8&&n<.99?.005:0),n=e(n+t,0,.994),this.set(n)):this.start()}static dec(t){if(this.isPaused)return this;let n=this.status;return typeof n==`number`?(typeof t!=`number`&&(t=n>.8?.1:n>.5?.05:n>.2?.02:.01),n=e(n-t,0,.994),this.set(n)):this}static trickle(){return this.isPaused?this:this.inc()}static promise(e){let t=typeof e==`function`?e():e;if(!t)return this;if(typeof t.then==`function`)return this.start(),Promise.resolve(t).then(()=>{this.done()},()=>{this.done(!0)}),this;if(typeof t.state!=`function`||typeof t.always!=`function`||t.state()===`resolved`)return this;let n=0,r=0;return this.start(),n++,r++,t.always(()=>{r--,r===0?(n=0,this.done()):this.set((n-r)/n)}),this}static render(e=!1){if(!t)return[];let n=Array.from(document.querySelectorAll(`[data-soybean-progress]`));return n.forEach(t=>{t.style.display=``;let n=t.querySelector(`[data-soybean-progress-bar]`),r=s(e?0:this.status||0,this.options.direction);c(n,this.barPositionCSS({n:this.status||0,speed:this.options.speed,ease:this.options.easing,percent:r})),typeof this.status==`number`?t.setAttribute(`aria-valuenow`,`${this.status}`):t.removeAttribute(`aria-valuenow`)}),n}static remove(e){t&&(this.clearTrickleTimer(),e?e.style.display=`none`:document.querySelectorAll(`[data-soybean-progress]`).forEach(e=>{let t=e;t.style.display=`none`}))}static pause(){return this.isStarted()?(this.isPaused=!0,this.clearTrickleTimer(),this):this}static resume(){return this.isStarted()?(this.isPaused=!1,this.options.trickle&&this.startTrickling(),this):this}static queue(e){this.pending.push(e),this.pending.length===1&&this.next()}static next(){let e=this.pending.shift();e&&e(this.next.bind(this))}static clearTrickleTimer(){this.trickleTimer&&(clearTimeout(this.trickleTimer),this.trickleTimer=void 0)}static startTrickling(){if(this.trickleTimer||this.isPaused||!this.isStarted())return;let e=()=>{this.trickleTimer=void 0,!(this.isPaused||!this.isStarted())&&(this.trickle(),!this.isPaused&&this.isStarted()&&(this.trickleTimer=setTimeout(e,this.options.trickleSpeed)))};this.trickleTimer=setTimeout(e,this.options.trickleSpeed)}static barPositionCSS({n:e,speed:t,ease:n,percent:r}){return{transform:`translate3d(${r??s(e,this.options.direction)}%,0,0)`,transition:`all ${t}ms ${n}`}}};n(a,`options`,i),n(a,`status`,null),n(a,`pending`,[]),n(a,`isPaused`,!1),n(a,`trickleTimer`,void 0);const o=a;function s(e,t){return t===`rtl`?(1-e)*100:(-1+e)*100}function c(e,t,n){if(typeof t==`string`)n!==void 0&&(e.style[t]=n);else for(let n in t)if(t.hasOwnProperty(n)){let r=t[n];r!==void 0&&(e.style[n]=r)}}export{o as progress};
@@ -1,10 +1,11 @@
1
- import { UiClass } from "../../types/common.js";
1
+ import { Direction, UiClass } from "../../types/common.js";
2
2
  import { PrimitiveProps } from "../primitive/types.js";
3
3
  import { ComputedRef, HTMLAttributes, SVGAttributes } from "vue";
4
4
 
5
5
  //#region src/components/progress/types.d.ts
6
6
  type ProgressState = 'indeterminate' | 'loading' | 'complete';
7
7
  interface ProgressRootProps extends PrimitiveProps, /** @vue-ignore */HTMLAttributes {
8
+ dir?: Direction;
8
9
  /** The controlled progress value. Can be bind as `v-model`. */
9
10
  modelValue?: number | null;
10
11
  /** The maximum progress value. */
@@ -22,7 +23,9 @@ interface ProgressIndicatorProps extends PrimitiveProps, /** @vue-ignore */HTMLA
22
23
  interface ProgressCircleProps extends /** @vue-ignore */SVGAttributes {
23
24
  strokeWidth?: number;
24
25
  }
26
+ interface ProgressProviderProps extends ProgressOptions {}
25
27
  interface ProgressRootContext {
28
+ dir: ComputedRef<Direction>;
26
29
  modelValue: ComputedRef<number | null | undefined>;
27
30
  max: ComputedRef<number>;
28
31
  progressState: ComputedRef<ProgressState>;
@@ -30,5 +33,15 @@ interface ProgressRootContext {
30
33
  }
31
34
  type ProgressUiSlot = 'root' | 'indicator' | 'circle' | 'track' | 'label';
32
35
  type ProgressUi = UiClass<ProgressUiSlot>;
36
+ type ProgressProviderUiSlot = 'root' | 'indicator';
37
+ interface ProgressOptions {
38
+ direction?: Direction;
39
+ minimum?: number;
40
+ maximum?: number;
41
+ easing?: string;
42
+ speed?: number;
43
+ trickle?: boolean;
44
+ trickleSpeed?: number;
45
+ }
33
46
  //#endregion
34
- export { ProgressCircleProps, ProgressIndicatorProps, ProgressRootContext, ProgressRootEmits, ProgressRootProps, ProgressState, ProgressUi, ProgressUiSlot };
47
+ export { ProgressCircleProps, ProgressIndicatorProps, ProgressOptions, ProgressProviderProps, ProgressProviderUiSlot, ProgressRootContext, ProgressRootEmits, ProgressRootProps, ProgressState, ProgressUi, ProgressUiSlot };
@@ -1,8 +1,9 @@
1
- import { ClassValue, UiClass } from "../../types/common.js";
1
+ import { UiClass } from "../../types/common.js";
2
+ import { UseUiConsumer } from "../../composables/use-ui-context.js";
2
3
  import { RadioGroupUiSlot } from "./types.js";
3
4
  import * as _$vue from "vue";
4
5
 
5
6
  //#region src/components/radio-group/context.d.ts
6
- declare const provideRadioGroupUi: (ui: _$vue.ComputedRef<Partial<UiClass<RadioGroupUiSlot>>>) => _$vue.ComputedRef<Partial<UiClass<RadioGroupUiSlot>>>, useRadioGroupUi: <S extends RadioGroupUiSlot | undefined = undefined>(slot?: S | undefined) => S extends RadioGroupUiSlot ? _$vue.ComputedRef<ClassValue> : _$vue.ComputedRef<Partial<UiClass<RadioGroupUiSlot>>>;
7
+ declare const provideRadioGroupUi: (ui: _$vue.ComputedRef<Partial<UiClass<RadioGroupUiSlot>>>) => _$vue.ComputedRef<Partial<UiClass<RadioGroupUiSlot>>>, useRadioGroupUi: UseUiConsumer<RadioGroupUiSlot>;
7
8
  //#endregion
8
9
  export { provideRadioGroupUi };
@@ -1,9 +1,10 @@
1
1
  import { LabelProps } from "../label/types.js";
2
- import { RadioGroupControlProps, RadioGroupIndicatorProps, RadioGroupItemEmits, RadioGroupItemProps, RadioGroupRootEmits, RadioGroupRootProps, RadioGroupUi, RadioGroupUiSlot, RadioSelectEvent } from "./types.js";
3
- import { _default as _default$4 } from "./radio-group-root.vue.js";
4
- import { _default as _default$2 } from "./radio-group-item.vue.js";
5
- import { _default } from "./radio-group-control.vue.js";
6
- import { _default as _default$1 } from "./radio-group-indicator.vue.js";
7
- import { _default as _default$3 } from "./radio-group-label.vue.js";
2
+ import { RadioGroupCompactEmits, RadioGroupCompactProps, RadioGroupControlProps, RadioGroupIndicatorProps, RadioGroupItemEmits, RadioGroupItemProps, RadioGroupOptionData, RadioGroupRootEmits, RadioGroupRootProps, RadioGroupUi, RadioGroupUiSlot, RadioSelectEvent } from "./types.js";
3
+ import { _default as _default$5 } from "./radio-group-root.vue.js";
4
+ import { _default } from "./radio-group-compact.vue.js";
5
+ import { _default as _default$3 } from "./radio-group-item.vue.js";
6
+ import { _default as _default$1 } from "./radio-group-control.vue.js";
7
+ import { _default as _default$2 } from "./radio-group-indicator.vue.js";
8
+ import { _default as _default$4 } from "./radio-group-label.vue.js";
8
9
  import { provideRadioGroupUi } from "./context.js";
9
- export { _default as RadioGroupControl, type RadioGroupControlProps, _default$1 as RadioGroupIndicator, type RadioGroupIndicatorProps, _default$2 as RadioGroupItem, type RadioGroupItemEmits, type RadioGroupItemProps, _default$3 as RadioGroupLabel, type LabelProps as RadioGroupLabelProps, _default$4 as RadioGroupRoot, type RadioGroupRootEmits, type RadioGroupRootProps, type RadioGroupUi, type RadioGroupUiSlot, type RadioSelectEvent, provideRadioGroupUi };
10
+ export { _default as RadioGroupCompact, type RadioGroupCompactEmits, type RadioGroupCompactProps, _default$1 as RadioGroupControl, type RadioGroupControlProps, _default$2 as RadioGroupIndicator, type RadioGroupIndicatorProps, _default$3 as RadioGroupItem, type RadioGroupItemEmits, type RadioGroupItemProps, _default$4 as RadioGroupLabel, type LabelProps as RadioGroupLabelProps, type RadioGroupOptionData, _default$5 as RadioGroupRoot, type RadioGroupRootEmits, type RadioGroupRootProps, type RadioGroupUi, type RadioGroupUiSlot, type RadioSelectEvent, provideRadioGroupUi };
@@ -1 +1 @@
1
- import{provideRadioGroupUi as e}from"./context.js";import t from"./radio-group-root.js";import n from"./radio-group-item.js";import r from"./radio-group-control.js";import i from"./radio-group-indicator.js";import a from"./radio-group-label.js";export{r as RadioGroupControl,i as RadioGroupIndicator,n as RadioGroupItem,a as RadioGroupLabel,t as RadioGroupRoot,e as provideRadioGroupUi};
1
+ import{provideRadioGroupUi as e}from"./context.js";import t from"./radio-group-root.js";import n from"./radio-group-control.js";import r from"./radio-group-indicator.js";import i from"./radio-group-item.js";import a from"./radio-group-label.js";import o from"./radio-group-compact.js";export{o as RadioGroupCompact,n as RadioGroupControl,r as RadioGroupIndicator,i as RadioGroupItem,a as RadioGroupLabel,t as RadioGroupRoot,e as provideRadioGroupUi};
@@ -0,0 +1 @@
1
+ import{useOmitProps as e}from"../../composables/use-props.js";import"../../composables/index.js";import t from"./radio-group-root.js";import n from"./radio-group-control.js";import r from"./radio-group-indicator.js";import i from"./radio-group-item.js";import a from"./radio-group-label.js";import{Fragment as o,Transition as s,createBlock as c,createElementBlock as l,createTextVNode as u,createVNode as d,defineComponent as f,mergeProps as p,openBlock as m,renderList as h,toDisplayString as g,unref as _,useId as v,withCtx as y}from"vue";const b=f({name:`RadioGroupCompact`,__name:`radio-group-compact`,props:{items:{},itemProps:{},controlProps:{},indicatorProps:{},labelProps:{},modelValue:{},defaultValue:{},disabled:{type:Boolean},orientation:{},dir:{},loop:{type:Boolean},name:{},required:{type:Boolean}},emits:[`update:modelValue`],setup(f,{emit:b}){let x=f,S=b,C=e(x,[`items`,`itemProps`,`controlProps`,`indicatorProps`,`labelProps`]),w=v(),T=e=>String(e.value),E=e=>`${x.itemProps?.id||`radio-${w}`}-${e}`,D=e=>{S(`update:modelValue`,e)};return(e,v)=>(m(),c(t,p(_(C),{"onUpdate:modelValue":D}),{default:y(()=>[(m(!0),l(o,null,h(f.items,(e,t)=>(m(),c(i,p({key:T(e)},{ref_for:!0},f.itemProps,{value:e.value,disabled:f.disabled||e.disabled}),{default:y(()=>[d(n,p({ref_for:!0},f.controlProps,{id:E(t)}),{default:y(()=>[d(s,{"enter-active-class":`transition`,"enter-from-class":`opacity-0 scale-0`},{default:y(()=>[d(r,p({ref_for:!0},f.indicatorProps),null,16)]),_:1})]),_:1},16,[`id`]),d(a,p({ref_for:!0},f.labelProps),{default:y(()=>[u(g(e.label),1)]),_:2},1040)]),_:2},1040,[`value`,`disabled`]))),128))]),_:1},16))}});export{b as default};
@@ -0,0 +1,22 @@
1
+ import { AcceptableBooleanValue } from "../../types/common.js";
2
+ import { RadioGroupCompactProps, RadioGroupOptionData } from "./types.js";
3
+ import * as _$vue from "vue";
4
+
5
+ //#region src/components/radio-group/radio-group-compact.vue.d.ts
6
+ declare const __VLS_export: <T extends AcceptableBooleanValue = AcceptableBooleanValue, S extends RadioGroupOptionData<T> = RadioGroupOptionData<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<RadioGroupCompactProps<T, S> & {
8
+ "onUpdate:modelValue"?: ((payload: NonNullable<T>) => any) | undefined;
9
+ }> & (typeof globalThis extends {
10
+ __VLS_PROPS_FALLBACK: infer P;
11
+ } ? P : {});
12
+ expose: (exposed: {}) => void;
13
+ attrs: any;
14
+ slots: {};
15
+ emit: (evt: "update:modelValue", payload: NonNullable<T>) => void;
16
+ }>) => _$vue.VNode & {
17
+ __ctx?: Awaited<typeof __VLS_setup>;
18
+ };
19
+ declare const _default: typeof __VLS_export;
20
+ type __VLS_PrettifyLocal<T> = (T extends any ? { [K in keyof T]: T[K] } : { [K in keyof T as K]: T[K] }) & {};
21
+ //#endregion
22
+ export { _default };
@@ -1 +1 @@
1
- import{isNullish as e}from"../../shared/guard.js";import{isFormControl as t,transformPropsToContext as n}from"../../shared/vue.js";import"../../shared/index.js";import{useControllableState as r}from"../../composables/use-controllable-state.js";import"../../composables/index.js";import i from"../visually-hidden/visually-hidden-input.js";import a from"../roving-focus/roving-focus-group.js";import"../roving-focus/index.js";import"../visually-hidden/index.js";import{provideRadioGroupRootContext as o,useRadioGroupUi as s}from"./context.js";import{computed as c,createBlock as l,createCommentVNode as u,createElementVNode as d,defineComponent as f,normalizeClass as p,openBlock as m,renderSlot as h,unref as g,useTemplateRef as _,withCtx as v}from"vue";const y=[`data-disabled`,`aria-orientation`,`aria-required`],b=f({name:`RadioGroupRoot`,__name:`radio-group-root`,props:{modelValue:{default:void 0},defaultValue:{},disabled:{type:Boolean,default:!1},orientation:{default:void 0},dir:{},loop:{type:Boolean,default:!0},name:{},required:{type:Boolean,default:!1}},emits:[`update:modelValue`],setup(f,{emit:b}){let x=f,S=b,C=s(`root`),w=_(`rootElement`),T=r(()=>x.modelValue,t=>{e(t)||S(`update:modelValue`,t)},x.defaultValue),E=c(()=>t(w.value));return o({...n(x,[`disabled`,`orientation`,`dir`,`loop`,`name`,`required`]),modelValue:T}),(e,t)=>(m(),l(g(a),{"as-child":``,orientation:f.orientation,dir:f.dir,loop:f.loop},{default:v(()=>[d(`div`,{ref_key:`rootElement`,ref:w,class:p(g(C)),role:`radiogroup`,"data-disabled":f.disabled?``:void 0,"aria-orientation":f.orientation,"aria-required":f.required},[h(e.$slots,`default`,{modelValue:g(T)}),E.value&&f.name?(m(),l(g(i),{key:0,required:f.required,disabled:f.disabled,value:g(T),name:f.name},null,8,[`required`,`disabled`,`value`,`name`])):u(`v-if`,!0)],10,y)]),_:3},8,[`orientation`,`dir`,`loop`]))}});export{b as default};
1
+ import{isNullish as e}from"../../shared/guard.js";import{isFormControl as t,transformPropsToContext as n}from"../../shared/vue.js";import"../../shared/index.js";import{useControllableState as r}from"../../composables/use-controllable-state.js";import"../../composables/index.js";import i from"../visually-hidden/visually-hidden-input.js";import"../visually-hidden/index.js";import a from"../roving-focus/roving-focus-group.js";import"../roving-focus/index.js";import{provideRadioGroupRootContext as o,useRadioGroupUi as s}from"./context.js";import{computed as c,createBlock as l,createCommentVNode as u,createElementVNode as d,defineComponent as f,normalizeClass as p,openBlock as m,renderSlot as h,unref as g,useTemplateRef as _,withCtx as v}from"vue";const y=[`data-disabled`,`aria-orientation`,`aria-required`],b=f({name:`RadioGroupRoot`,__name:`radio-group-root`,props:{modelValue:{default:void 0},defaultValue:{},disabled:{type:Boolean,default:!1},orientation:{default:void 0},dir:{},loop:{type:Boolean,default:!0},name:{},required:{type:Boolean,default:!1}},emits:[`update:modelValue`],setup(f,{emit:b}){let x=f,S=b,C=s(`root`),w=_(`rootElement`),T=r(()=>x.modelValue,t=>{e(t)||S(`update:modelValue`,t)},x.defaultValue),E=c(()=>t(w.value));return o({...n(x,[`disabled`,`orientation`,`dir`,`loop`,`name`,`required`]),modelValue:T}),(e,t)=>(m(),l(g(a),{"as-child":``,orientation:f.orientation,dir:f.dir,loop:f.loop},{default:v(()=>[d(`div`,{ref_key:`rootElement`,ref:w,class:p(g(C)),role:`radiogroup`,"data-disabled":f.disabled?``:void 0,"aria-orientation":f.orientation,"aria-required":f.required},[h(e.$slots,`default`,{modelValue:g(T)}),E.value&&f.name?(m(),l(g(i),{key:0,required:f.required,disabled:f.disabled,value:g(T),name:f.name},null,8,[`required`,`disabled`,`value`,`name`])):u(`v-if`,!0)],10,y)]),_:3},8,[`orientation`,`dir`,`loop`]))}});export{b as default};
@@ -43,7 +43,20 @@ interface RadioGroupControlProps extends /** @vue-ignore */ButtonHTMLAttributes
43
43
  id?: string;
44
44
  }
45
45
  interface RadioGroupIndicatorProps extends PrimitiveProps, ForceMountProps, /** @vue-ignore */HTMLAttributes {}
46
+ interface RadioGroupOptionData<T extends AcceptableBooleanValue = AcceptableBooleanValue> {
47
+ value: NonNullable<T>;
48
+ label: string;
49
+ disabled?: boolean;
50
+ }
51
+ interface RadioGroupCompactProps<T extends AcceptableBooleanValue = AcceptableBooleanValue, S extends RadioGroupOptionData<T> = RadioGroupOptionData<T>> extends RadioGroupRootProps<T> {
52
+ items: S[];
53
+ itemProps?: RadioGroupItemProps;
54
+ controlProps?: RadioGroupControlProps;
55
+ indicatorProps?: RadioGroupIndicatorProps;
56
+ labelProps?: LabelProps;
57
+ }
58
+ type RadioGroupCompactEmits<T extends AcceptableBooleanValue = AcceptableBooleanValue> = RadioGroupRootEmits<T>;
46
59
  type RadioGroupUiSlot = 'root' | 'item' | 'indicator' | 'label' | 'control';
47
60
  type RadioGroupUi = UiClass<RadioGroupUiSlot>;
48
61
  //#endregion
49
- export { RadioGroupControlProps, RadioGroupIndicatorProps, RadioGroupItemEmits, RadioGroupItemProps, RadioGroupRootEmits, RadioGroupRootProps, RadioGroupUi, RadioGroupUiSlot, RadioSelectEvent };
62
+ export { RadioGroupCompactEmits, RadioGroupCompactProps, RadioGroupControlProps, RadioGroupIndicatorProps, RadioGroupItemEmits, RadioGroupItemProps, RadioGroupOptionData, RadioGroupRootEmits, RadioGroupRootProps, RadioGroupUi, RadioGroupUiSlot, RadioSelectEvent };
@@ -1,8 +1,9 @@
1
- import { ClassValue, UiClass } from "../../types/common.js";
1
+ import { UiClass } from "../../types/common.js";
2
+ import { UseUiConsumer } from "../../composables/use-ui-context.js";
2
3
  import { ScrollAreaUiSlot } from "./types.js";
3
4
  import * as _$vue from "vue";
4
5
 
5
6
  //#region src/components/scroll-area/context.d.ts
6
- declare const provideScrollAreaUi: (ui: _$vue.ComputedRef<Partial<UiClass<ScrollAreaUiSlot>>>) => _$vue.ComputedRef<Partial<UiClass<ScrollAreaUiSlot>>>, useScrollAreaUi: <S extends ScrollAreaUiSlot | undefined = undefined>(slot?: S | undefined) => S extends ScrollAreaUiSlot ? _$vue.ComputedRef<ClassValue> : _$vue.ComputedRef<Partial<UiClass<ScrollAreaUiSlot>>>;
7
+ declare const provideScrollAreaUi: (ui: _$vue.ComputedRef<Partial<UiClass<ScrollAreaUiSlot>>>) => _$vue.ComputedRef<Partial<UiClass<ScrollAreaUiSlot>>>, useScrollAreaUi: UseUiConsumer<ScrollAreaUiSlot>;
7
8
  //#endregion
8
9
  export { provideScrollAreaUi };
@@ -1 +1 @@
1
- import{transformPropsToContext as e}from"../../shared/vue.js";import"../../shared/index.js";import{useExposedElement as t}from"../../composables/use-exposed-element.js";import{useOmitProps as n}from"../../composables/use-props.js";import"../../composables/index.js";import{Primitive as r}from"../primitive/primitive.js";import"../primitive/index.js";import{useDirection as i}from"../config-provider/context.js";import{provideScrollAreaRootContext as a,useScrollAreaUi as o}from"./context.js";import{createBlock as s,defineComponent as c,mergeProps as l,openBlock as u,renderSlot as d,shallowRef as f,unref as p,useAttrs as m,withCtx as h}from"vue";const g=c({name:`ScrollAreaRoot`,inheritAttrs:!1,__name:`scroll-area-root`,props:{type:{default:`hover`},dir:{},scrollHideDelay:{default:600},asChild:{type:Boolean},as:{default:`div`}},setup(c){let g=c,_=n(g,[`dir`,`scrollHideDelay`,`type`],m()),v=o(`root`),y=i(()=>g.dir),[b,x]=t(),S=f(!1),C=f(),w=f(),T=f(!1),E=f(!1),D=f(!1),O=f(!1),k=f(0),A=f(0);function j(e,t){if(e===`horizontal`){T.value=t;return}E.value=t}function M(e,t){if(e===`horizontal`){D.value=t;return}O.value=t}function N(e,t){if(e===`horizontal`){k.value=t;return}A.value=t}return a({dir:y,isHovering:S,rootElement:b,viewportElement:C,contentElement:w,scrollbarXEnabled:T,scrollbarYEnabled:E,scrollbarXVisible:D,scrollbarYVisible:O,scrollbarXSize:k,scrollbarYSize:A,onViewportChange:e=>{C.value=e},onContentChange:e=>{w.value=e},onScrollbarEnabledChange:j,onScrollbarVisibleChange:M,onScrollbarSizeChange:N,...e(g,[`scrollHideDelay`,`type`])}),(e,t)=>(u(),s(p(r),l(p(_),{ref:p(x),as:c.as,"as-child":c.asChild,class:p(v),dir:p(y),onPointerenter:t[0]||(t[0]=e=>S.value=!0),onPointerleave:t[1]||(t[1]=e=>S.value=!1)}),{default:h(()=>[d(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`class`,`dir`]))}});export{g as default};
1
+ import{transformPropsToContext as e}from"../../shared/vue.js";import"../../shared/index.js";import{useExposedElement as t}from"../../composables/use-exposed-element.js";import{useOmitProps as n}from"../../composables/use-props.js";import"../../composables/index.js";import{useDirection as r}from"../config-provider/context.js";import{Primitive as i}from"../primitive/primitive.js";import"../primitive/index.js";import{provideScrollAreaRootContext as a,useScrollAreaUi as o}from"./context.js";import{createBlock as s,defineComponent as c,mergeProps as l,openBlock as u,renderSlot as d,shallowRef as f,unref as p,useAttrs as m,withCtx as h}from"vue";const g=c({name:`ScrollAreaRoot`,inheritAttrs:!1,__name:`scroll-area-root`,props:{type:{default:`hover`},dir:{},scrollHideDelay:{default:600},asChild:{type:Boolean},as:{default:`div`}},setup(c){let g=c,_=n(g,[`dir`,`scrollHideDelay`,`type`],m()),v=o(`root`),y=r(()=>g.dir),[b,x]=t(),S=f(!1),C=f(),w=f(),T=f(!1),E=f(!1),D=f(!1),O=f(!1),k=f(0),A=f(0);function j(e,t){if(e===`horizontal`){T.value=t;return}E.value=t}function M(e,t){if(e===`horizontal`){D.value=t;return}O.value=t}function N(e,t){if(e===`horizontal`){k.value=t;return}A.value=t}return a({dir:y,isHovering:S,rootElement:b,viewportElement:C,contentElement:w,scrollbarXEnabled:T,scrollbarYEnabled:E,scrollbarXVisible:D,scrollbarYVisible:O,scrollbarXSize:k,scrollbarYSize:A,onViewportChange:e=>{C.value=e},onContentChange:e=>{w.value=e},onScrollbarEnabledChange:j,onScrollbarVisibleChange:M,onScrollbarSizeChange:N,...e(g,[`scrollHideDelay`,`type`])}),(e,t)=>(u(),s(p(i),l(p(_),{ref:p(x),as:c.as,"as-child":c.asChild,class:p(v),dir:p(y),onPointerenter:t[0]||(t[0]=e=>S.value=!0),onPointerleave:t[1]||(t[1]=e=>S.value=!1)}),{default:h(()=>[d(e.$slots,`default`)]),_:3},16,[`as`,`as-child`,`class`,`dir`]))}});export{g as default};
@@ -1 +1 @@
1
- import{useForwardElement as e}from"../../composables/use-forward-element.js";import{useOmitProps as t}from"../../composables/use-props.js";import"../../composables/index.js";import{Primitive as n}from"../primitive/primitive.js";import"../primitive/index.js";import{useNonce as r}from"../config-provider/context.js";import{useScrollAreaRootContext as i,useScrollAreaUi as a}from"./context.js";import{Fragment as o,computed as s,createElementBlock as c,createElementVNode as l,createTextVNode as u,createVNode as d,defineComponent as f,mergeProps as p,normalizeStyle as m,openBlock as h,renderSlot as g,unref as _,useAttrs as v,withCtx as y}from"vue";const b=f({name:`ScrollAreaViewport`,inheritAttrs:!1,__name:`scroll-area-viewport`,props:{nonce:{},asChild:{type:Boolean},as:{default:`div`}},setup(f){let b=f,x=v(),S=r(()=>b.nonce),{scrollbarXEnabled:C,scrollbarYEnabled:w,onViewportChange:T,onContentChange:E}=i(`ScrollAreaViewport`),D=a(`viewport`),O=t(b,[`nonce`,`as`,`asChild`],x),k=s(()=>({...O.value,tabindex:O.value.tabindex??0})),[,A]=e(T),[,j]=e(E),M=s(()=>({overflowX:C.value?`scroll`:`hidden`,overflowY:w.value?`scroll`:`hidden`})),N=s(()=>({minWidth:C.value?`fit-content`:void 0}));return(e,t)=>(h(),c(o,null,[l(`div`,p({ref:_(A),"data-soybean-scroll-area-viewport":``},k.value,{class:_(D),style:M.value}),[d(_(n),{ref:_(j),as:f.as,"as-child":f.asChild,style:m(N.value)},{default:y(()=>[g(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`style`])],16),d(_(n),{as:`style`,nonce:_(S)},{default:y(()=>[...t[0]||(t[0]=[u(` [data-soybean-scroll-area-viewport] { scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-soybean-scroll-area-viewport]::-webkit-scrollbar { display: none; } `,-1)])]),_:1},8,[`nonce`])],64))}});export{b as default};
1
+ import{useForwardElement as e}from"../../composables/use-forward-element.js";import{useOmitProps as t}from"../../composables/use-props.js";import"../../composables/index.js";import{useNonce as n}from"../config-provider/context.js";import{Primitive as r}from"../primitive/primitive.js";import"../primitive/index.js";import{useScrollAreaRootContext as i,useScrollAreaUi as a}from"./context.js";import{Fragment as o,computed as s,createElementBlock as c,createElementVNode as l,createTextVNode as u,createVNode as d,defineComponent as f,mergeProps as p,normalizeStyle as m,openBlock as h,renderSlot as g,unref as _,useAttrs as v,withCtx as y}from"vue";const b=f({name:`ScrollAreaViewport`,inheritAttrs:!1,__name:`scroll-area-viewport`,props:{nonce:{},asChild:{type:Boolean},as:{default:`div`}},setup(f){let b=f,x=v(),S=n(()=>b.nonce),{scrollbarXEnabled:C,scrollbarYEnabled:w,onViewportChange:T,onContentChange:E}=i(`ScrollAreaViewport`),D=a(`viewport`),O=t(b,[`nonce`,`as`,`asChild`],x),k=s(()=>({...O.value,tabindex:O.value.tabindex??0})),[,A]=e(T),[,j]=e(E),M=s(()=>({overflowX:C.value?`scroll`:`hidden`,overflowY:w.value?`scroll`:`hidden`})),N=s(()=>({minWidth:C.value?`fit-content`:void 0}));return(e,t)=>(h(),c(o,null,[l(`div`,p({ref:_(A),"data-soybean-scroll-area-viewport":``},k.value,{class:_(D),style:M.value}),[d(_(r),{ref:_(j),as:f.as,"as-child":f.asChild,style:m(N.value)},{default:y(()=>[g(e.$slots,`default`)]),_:3},8,[`as`,`as-child`,`style`])],16),d(_(r),{as:`style`,nonce:_(S)},{default:y(()=>[...t[0]||(t[0]=[u(` [data-soybean-scroll-area-viewport] { scrollbar-width: none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-soybean-scroll-area-viewport]::-webkit-scrollbar { display: none; } `,-1)])]),_:1},8,[`nonce`])],64))}});export{b as default};
@@ -0,0 +1,8 @@
1
+ import { TabsIndicatorProps, TabsListProps, TabsOptionData, TabsRootEmits, TabsRootProps, TabsTriggerProps } from "../tabs/types.js";
2
+ import { _default as _default$3 } from "../tabs/tabs-root.vue.js";
3
+ import { _default as _default$2 } from "../tabs/tabs-list.vue.js";
4
+ import { _default as _default$4 } from "../tabs/tabs-trigger.vue.js";
5
+ import { _default as _default$1 } from "../tabs/tabs-indicator.vue.js";
6
+ import { SegmentCompactEmits, SegmentCompactProps, SegmentCompactSlots, SegmentUi, SegmentUiSlot } from "./types.js";
7
+ import { _default } from "./segment-compact.vue.js";
8
+ export { _default as SegmentCompact, SegmentCompactEmits, SegmentCompactProps, SegmentCompactSlots, _default$1 as SegmentIndicator, TabsIndicatorProps as SegmentIndicatorProps, _default$2 as SegmentList, TabsListProps as SegmentListProps, TabsOptionData as SegmentOptionData, _default$3 as SegmentRoot, TabsRootEmits as SegmentRootEmits, TabsRootProps as SegmentRootProps, _default$4 as SegmentTrigger, TabsTriggerProps as SegmentTriggerProps, SegmentUi, SegmentUiSlot };
@@ -0,0 +1 @@
1
+ import e from"../tabs/tabs-root.js";import t from"../tabs/tabs-list.js";import n from"../tabs/tabs-trigger.js";import r from"../tabs/tabs-indicator.js";import"../tabs/index.js";import i from"./segment-compact.js";export{i as SegmentCompact,r as SegmentIndicator,t as SegmentList,e as SegmentRoot,n as SegmentTrigger};
@@ -0,0 +1 @@
1
+ import{useOmitProps as e}from"../../composables/use-props.js";import"../../composables/index.js";import{useTabsUi as t}from"../tabs/context.js";import n from"../tabs/tabs-root.js";import r from"../tabs/tabs-list.js";import i from"../tabs/tabs-trigger.js";import a from"../tabs/tabs-indicator.js";import"../tabs/index.js";import{Fragment as o,createBlock as s,createCommentVNode as c,createElementBlock as l,createElementVNode 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,withCtx as C}from"vue";const w=p({name:`SegmentCompact`,__name:`segment-compact`,props:{items:{},enableIndicator:{type:Boolean,default:!0},listProps:{},triggerProps:{},indicatorProps:{},modelValue:{default:void 0},defaultValue:{},activationMode:{},unmountOnHide:{type:Boolean,default:!0},orientation:{},dir:{},loop:{type:Boolean,default:!0}},emits:[`update:modelValue`],setup(p,{emit:w}){let T=p,E=w,D=e(T,[`items`,`enableIndicator`,`listProps`,`triggerProps`,`indicatorProps`]),O=t(),k=e=>{E(`update:modelValue`,e)};return(e,t)=>(v(),s(S(n),h(S(D),{"onUpdate:modelValue":k}),{default:C(()=>[f(S(r),_(m(p.listProps)),{default:C(()=>[(v(!0),l(o,null,y(p.items,t=>(v(),s(S(i),h({key:t.value},{ref_for:!0},p.triggerProps,{value:t.value,disabled:t.disabled}),{default:C(n=>[b(e.$slots,`item`,h({ref_for:!0},{...t,...n}),()=>[d(x(t.label),1)])]),_:2},1040,[`value`,`disabled`]))),128)),p.enableIndicator?(v(),s(S(a),_(h({key:0},p.indicatorProps)),{default:C(()=>[b(e.$slots,`indicator`,{},()=>[u(`div`,{class:g(S(O).indicatorContent)},null,2)])]),_:3},16)):c(`v-if`,!0)]),_:3},16)]),_:3},16))}});export{w as default};
@@ -0,0 +1,22 @@
1
+ import { TabsOptionData } from "../tabs/types.js";
2
+ import { SegmentCompactProps, SegmentCompactSlots } from "./types.js";
3
+ import * as _$vue from "vue";
4
+
5
+ //#region src/components/segment/segment-compact.vue.d.ts
6
+ declare const __VLS_export: <T extends TabsOptionData = TabsOptionData>(__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<SegmentCompactProps<T> & {
8
+ "onUpdate:modelValue"?: ((payload: T["value"]) => any) | undefined;
9
+ }> & (typeof globalThis extends {
10
+ __VLS_PROPS_FALLBACK: infer P;
11
+ } ? P : {});
12
+ expose: (exposed: {}) => void;
13
+ attrs: any;
14
+ slots: SegmentCompactSlots<T>;
15
+ emit: (evt: "update:modelValue", payload: T["value"]) => void;
16
+ }>) => _$vue.VNode & {
17
+ __ctx?: Awaited<typeof __VLS_setup>;
18
+ };
19
+ declare const _default: typeof __VLS_export;
20
+ type __VLS_PrettifyLocal<T> = (T extends any ? { [K in keyof T]: T[K] } : { [K in keyof T as K]: T[K] }) & {};
21
+ //#endregion
22
+ export { _default };
@@ -0,0 +1,22 @@
1
+ import { AcceptableValue, UiClass } from "../../types/common.js";
2
+ import { TabsIndicatorProps, TabsListProps, TabsOptionData, TabsRootEmits, TabsRootProps, TabsTriggerProps, TabsUiSlot } from "../tabs/types.js";
3
+
4
+ //#region src/components/segment/types.d.ts
5
+ interface SegmentCompactProps<T extends TabsOptionData> extends TabsRootProps<T['value'] | null> {
6
+ items: T[];
7
+ enableIndicator?: boolean;
8
+ listProps?: TabsListProps;
9
+ triggerProps?: TabsTriggerProps;
10
+ indicatorProps?: TabsIndicatorProps;
11
+ }
12
+ type SegmentCompactEmits<T extends AcceptableValue = AcceptableValue> = TabsRootEmits<T>;
13
+ type SegmentCompactSlots<T extends TabsOptionData = TabsOptionData> = {
14
+ item?: (props: T & {
15
+ active: boolean;
16
+ }) => any;
17
+ indicator?: () => any;
18
+ };
19
+ type SegmentUiSlot = Exclude<TabsUiSlot, 'content'>;
20
+ type SegmentUi = UiClass<SegmentUiSlot>;
21
+ //#endregion
22
+ export { SegmentCompactEmits, SegmentCompactProps, SegmentCompactSlots, SegmentUi, SegmentUiSlot };
@@ -1,8 +1,9 @@
1
- import { ClassValue, UiClass } from "../../types/common.js";
1
+ import { UiClass } from "../../types/common.js";
2
+ import { UseUiConsumer } from "../../composables/use-ui-context.js";
2
3
  import { SelectUiSlot } from "./types.js";
3
4
  import * as _$vue from "vue";
4
5
 
5
6
  //#region src/components/select/context.d.ts
6
- declare const provideSelectUi: (ui: _$vue.ComputedRef<Partial<UiClass<SelectUiSlot>>>) => _$vue.ComputedRef<Partial<UiClass<SelectUiSlot>>>, useSelectUi: <S extends SelectUiSlot | undefined = undefined>(slot?: S | undefined) => S extends SelectUiSlot ? _$vue.ComputedRef<ClassValue> : _$vue.ComputedRef<Partial<UiClass<SelectUiSlot>>>;
7
+ declare const provideSelectUi: (ui: _$vue.ComputedRef<Partial<UiClass<SelectUiSlot>>>) => _$vue.ComputedRef<Partial<UiClass<SelectUiSlot>>>, useSelectUi: UseUiConsumer<SelectUiSlot>;
7
8
  //#endregion
8
9
  export { provideSelectUi };
@@ -1,21 +1,22 @@
1
- import { PortalProps } from "../portal/types.js";
2
- import { _default as _default$7 } from "../portal/portal.vue.js";
3
1
  import { PopperArrowProps } from "../popper/types.js";
4
- import { SelectContentEmits, SelectContentProps, SelectGroupLabelProps, SelectGroupProps, SelectItemEmits, SelectItemEvent, SelectItemIndicatorProps, SelectItemProps, SelectItemTextProps, SelectPopupProps, SelectPosition, SelectRootEmits, SelectRootProps, SelectScrollDownButtonProps, SelectScrollUpButtonProps, SelectSeparatorProps, SelectTriggerIconProps, SelectTriggerProps, SelectUi, SelectUiSlot, SelectValueProps, SelectViewportProps } from "./types.js";
5
- import { _default as _default$8 } from "./select-root.vue.js";
6
- import { _default as _default$12 } from "./select-trigger.vue.js";
7
- import { _default as _default$1 } from "./select-content.vue.js";
8
- import { _default as _default$15 } from "./select-viewport.vue.js";
9
- import { _default as _default$2 } from "./select-group.vue.js";
10
- import { _default as _default$3 } from "./select-group-label.vue.js";
11
- import { _default as _default$4 } from "./select-item.vue.js";
12
- import { _default as _default$5 } from "./select-item-indicator.vue.js";
13
- import { _default as _default$6 } from "./select-item-text.vue.js";
14
- import { _default as _default$14 } from "./select-value.vue.js";
15
- import { _default as _default$13 } from "./select-trigger-icon.vue.js";
16
- import { _default as _default$10 } from "./select-scroll-up-button.vue.js";
17
- import { _default as _default$9 } from "./select-scroll-down-button.vue.js";
18
- import { _default as _default$11 } from "./select-separator.vue.js";
2
+ import { PortalProps } from "../portal/types.js";
3
+ import { _default as _default$8 } from "../portal/portal.vue.js";
4
+ import { SelectCompactEmits, SelectCompactProps, SelectCompactSlots, SelectContentEmits, SelectContentProps, SelectGroupLabelProps, SelectGroupOptionData, SelectGroupProps, SelectItemEmits, SelectItemEvent, SelectItemIndicatorProps, SelectItemProps, SelectItemTextProps, SelectOptionData, SelectPopupProps, SelectPosition, SelectRootEmits, SelectRootProps, SelectScrollDownButtonProps, SelectScrollUpButtonProps, SelectSeparatorProps, SelectSingleOptionData, SelectTriggerIconProps, SelectTriggerProps, SelectUi, SelectUiSlot, SelectValueProps, SelectViewportProps } from "./types.js";
5
+ import { _default as _default$9 } from "./select-root.vue.js";
6
+ import { _default as _default$1 } from "./select-compact.vue.js";
7
+ import { _default as _default$13 } from "./select-trigger.vue.js";
8
+ import { _default as _default$2 } from "./select-content.vue.js";
9
+ import { _default as _default$16 } from "./select-viewport.vue.js";
10
+ import { _default as _default$3 } from "./select-group.vue.js";
11
+ import { _default as _default$4 } from "./select-group-label.vue.js";
12
+ import { _default as _default$5 } from "./select-item.vue.js";
13
+ import { _default as _default$6 } from "./select-item-indicator.vue.js";
14
+ import { _default as _default$7 } from "./select-item-text.vue.js";
15
+ import { _default as _default$15 } from "./select-value.vue.js";
16
+ import { _default as _default$14 } from "./select-trigger-icon.vue.js";
17
+ import { _default as _default$11 } from "./select-scroll-up-button.vue.js";
18
+ import { _default as _default$10 } from "./select-scroll-down-button.vue.js";
19
+ import { _default as _default$12 } from "./select-separator.vue.js";
19
20
  import { _default } from "./select-arrow.vue.js";
20
21
  import { provideSelectUi } from "./context.js";
21
- export { _default as SelectArrow, type PopperArrowProps as SelectArrowProps, _default$1 as SelectContent, type SelectContentEmits, type SelectContentProps, _default$2 as SelectGroup, _default$3 as SelectGroupLabel, type SelectGroupLabelProps, type SelectGroupProps, _default$4 as SelectItem, type SelectItemEmits, type SelectItemEvent, _default$5 as SelectItemIndicator, type SelectItemIndicatorProps, type SelectItemProps, _default$6 as SelectItemText, type SelectItemTextProps, type SelectPopupProps, _default$7 as SelectPortal, type PortalProps as SelectPortalProps, type SelectPosition, _default$8 as SelectRoot, type SelectRootEmits, type SelectRootProps, _default$9 as SelectScrollDownButton, type SelectScrollDownButtonProps, _default$10 as SelectScrollUpButton, type SelectScrollUpButtonProps, _default$11 as SelectSeparator, type SelectSeparatorProps, _default$12 as SelectTrigger, _default$13 as SelectTriggerIcon, type SelectTriggerIconProps, type SelectTriggerProps, type SelectUi, type SelectUiSlot, _default$14 as SelectValue, type SelectValueProps, _default$15 as SelectViewport, type SelectViewportProps, provideSelectUi };
22
+ export { _default as SelectArrow, type PopperArrowProps as SelectArrowProps, _default$1 as SelectCompact, type SelectCompactEmits, type SelectCompactProps, type SelectCompactSlots, _default$2 as SelectContent, type SelectContentEmits, type SelectContentProps, _default$3 as SelectGroup, _default$4 as SelectGroupLabel, type SelectGroupLabelProps, type SelectGroupOptionData, type SelectGroupProps, _default$5 as SelectItem, type SelectItemEmits, type SelectItemEvent, _default$6 as SelectItemIndicator, type SelectItemIndicatorProps, type SelectItemProps, _default$7 as SelectItemText, type SelectItemTextProps, type SelectOptionData, type SelectPopupProps, _default$8 as SelectPortal, type PortalProps as SelectPortalProps, type SelectPosition, _default$9 as SelectRoot, type SelectRootEmits, type SelectRootProps, _default$10 as SelectScrollDownButton, type SelectScrollDownButtonProps, _default$11 as SelectScrollUpButton, type SelectScrollUpButtonProps, _default$12 as SelectSeparator, type SelectSeparatorProps, type SelectSingleOptionData, _default$13 as SelectTrigger, _default$14 as SelectTriggerIcon, type SelectTriggerIconProps, type SelectTriggerProps, type SelectUi, type SelectUiSlot, _default$15 as SelectValue, type SelectValueProps, _default$16 as SelectViewport, type SelectViewportProps, provideSelectUi };
@@ -1 +1 @@
1
- import e from"../portal/portal.js";import{provideSelectUi as t}from"./context.js";import n from"./select-root.js";import r from"./select-trigger.js";import i from"./select-content.js";import a from"./select-viewport.js";import o from"./select-group.js";import s from"./select-group-label.js";import c from"./select-item.js";import l from"./select-item-indicator.js";import u from"./select-item-text.js";import d from"./select-value.js";import f from"./select-trigger-icon.js";import p from"./select-scroll-up-button.js";import m from"./select-scroll-down-button.js";import h from"./select-separator.js";import g from"./select-arrow.js";export{g as SelectArrow,i as SelectContent,o as SelectGroup,s as SelectGroupLabel,c as SelectItem,l as SelectItemIndicator,u as SelectItemText,e as SelectPortal,n as SelectRoot,m as SelectScrollDownButton,p as SelectScrollUpButton,h as SelectSeparator,r as SelectTrigger,f as SelectTriggerIcon,d as SelectValue,a as SelectViewport,t as provideSelectUi};
1
+ import e from"../portal/portal.js";import{provideSelectUi as t}from"./context.js";import n from"./select-root.js";import r from"./select-arrow.js";import i from"./select-content.js";import a from"./select-group.js";import o from"./select-group-label.js";import s from"./select-item.js";import c from"./select-item-indicator.js";import l from"./select-item-text.js";import u from"./select-scroll-down-button.js";import d from"./select-scroll-up-button.js";import f from"./select-separator.js";import p from"./select-trigger.js";import m from"./select-trigger-icon.js";import h from"./select-value.js";import g from"./select-viewport.js";import _ from"./select-compact.js";export{r as SelectArrow,_ as SelectCompact,i as SelectContent,a as SelectGroup,o as SelectGroupLabel,s as SelectItem,c as SelectItemIndicator,l as SelectItemText,e as SelectPortal,n as SelectRoot,u as SelectScrollDownButton,d as SelectScrollUpButton,f as SelectSeparator,p as SelectTrigger,m as SelectTriggerIcon,h as SelectValue,g as SelectViewport,t as provideSelectUi};
@@ -0,0 +1 @@
1
+ import{useOmitProps as e}from"../../composables/use-props.js";import"../../composables/index.js";import t from"../_icon/icon.js";import n from"../portal/portal.js";import"../portal/index.js";import r from"./select-root.js";import i from"./select-arrow.js";import{isGroupOption as a}from"./shared.js";import o from"./select-content.js";import s from"./select-group.js";import c from"./select-group-label.js";import l from"./select-item.js";import u from"./select-item-indicator.js";import d from"./select-item-text.js";import f from"./select-scroll-down-button.js";import p from"./select-scroll-up-button.js";import m from"./select-separator.js";import h from"./select-trigger.js";import g from"./select-trigger-icon.js";import _ from"./select-value.js";import v from"./select-viewport.js";import{Fragment as y,computed as b,createBlock as x,createCommentVNode as S,createElementBlock as C,createTextVNode as w,createVNode as T,defineComponent as E,guardReactiveProps as D,mergeProps as O,normalizeProps as k,openBlock as A,renderList as j,renderSlot as M,toDisplayString as N,unref as P,withCtx as F}from"vue";const I=E({name:`SelectCompact`,__name:`select-compact`,props:{items:{},showArrow:{type:Boolean},triggerProps:{},triggerIconProps:{},placeholder:{},valueProps:{},portalProps:{},contentProps:{},placement:{},popupProps:{},viewportProps:{},scrollDownButtonProps:{},scrollUpButtonProps:{},groupProps:{},groupLabelProps:{},itemProps:{},itemTextProps:{},itemIndicatorProps:{},separatorProps:{},arrowProps:{},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean},dir:{},autocomplete:{},disabled:{type:Boolean},modelValue:{},defaultValue:{},multiple:{},clearable:{type:Boolean,default:!0},selectionBehavior:{},name:{},required:{type:Boolean}},emits:[`update:modelValue`,`update:open`,`closeAutoFocus`,`escapeKeyDown`,`pointerDownOutside`,`select`],setup(E,{emit:I}){let L=E,R=I,z=e(L,[`items`,`showArrow`,`triggerProps`,`triggerIconProps`,`placeholder`,`valueProps`,`portalProps`,`contentProps`,`placement`,`popupProps`,`viewportProps`,`scrollDownButtonProps`,`scrollUpButtonProps`,`groupProps`,`groupLabelProps`,`itemProps`,`itemTextProps`,`itemIndicatorProps`,`separatorProps`,`arrowProps`]),B=b(()=>({...L.valueProps,placeholder:L.placeholder??L.valueProps?.placeholder})),V=b(()=>({...L.contentProps,placement:L.placement??L.contentProps?.placement,popupProps:L.popupProps??L.contentProps?.popupProps})),H=e=>a(e)?`group-${e.label}`:`item-${String(e.value)}`,U=e=>e,W=e=>{R(`update:modelValue`,e)},G=e=>{R(`select`,e)};return(e,b)=>(A(),x(r,O(P(z),{"onUpdate:modelValue":W,"onUpdate:open":b[5]||(b[5]=e=>R(`update:open`,e))}),{default:F(()=>[T(h,k(D(E.triggerProps)),{default:F(()=>[M(e.$slots,`trigger-leading`),T(_,k(D(B.value)),{default:F(t=>[M(e.$slots,`trigger-value`,k(D(U(t))))]),_:3},16),M(e.$slots,`trigger-trailing`),T(g,k(D(E.triggerIconProps)),{default:F(()=>[M(e.$slots,`trigger-icon`,{},()=>[T(t,{icon:`lucide:chevrons-up-down`})])]),_:3},16)]),_:3},16),T(P(n),k(D(E.portalProps)),{default:F(()=>[T(o,O(V.value,{onCloseAutoFocus:b[2]||(b[2]=e=>R(`closeAutoFocus`,e)),onEscapeKeyDown:b[3]||(b[3]=e=>R(`escapeKeyDown`,e)),onPointerDownOutside:b[4]||(b[4]=e=>R(`pointerDownOutside`,e))}),{default:F(()=>[T(p,k(D(E.scrollUpButtonProps)),{default:F(()=>[M(e.$slots,`scroll-up-button`,{},()=>[T(t,{icon:`lucide:chevron-up`})])]),_:3},16),T(v,k(D(E.viewportProps)),{default:F(()=>[(A(!0),C(y,null,j(E.items,n=>(A(),C(y,{key:H(n)},[P(a)(n)?(A(),x(s,O({key:0,ref_for:!0},E.groupProps),{default:F(()=>[T(c,O({ref_for:!0},E.groupLabelProps),{default:F(()=>[M(e.$slots,`group-label`,{item:n},()=>[w(N(n.label),1)])]),_:2},1040),n.separator?(A(),x(m,O({key:0,ref_for:!0},E.separatorProps),null,16)):S(`v-if`,!0),(A(!0),C(y,null,j(n.items,n=>(A(),C(y,{key:String(n.value)},[T(l,O({ref_for:!0},E.itemProps,{value:n.value,"text-value":n.textValue,disabled:n.disabled,onSelect:b[0]||(b[0]=e=>G(e))}),{default:F(()=>[M(e.$slots,`item-leading`,{item:n},()=>[n.icon?(A(),x(t,{key:0,icon:n.icon},null,8,[`icon`])):S(`v-if`,!0)]),T(d,O({ref_for:!0},E.itemTextProps),{default:F(()=>[M(e.$slots,`item-text`,{item:n},()=>[w(N(n.label),1)])]),_:2},1040),M(e.$slots,`item-trailing`,{item:n}),T(u,O({ref_for:!0},E.itemIndicatorProps),{default:F(()=>[M(e.$slots,`item-indicator`,{item:n},()=>[T(t,{icon:`lucide:check`})])]),_:2},1040)]),_:2},1040,[`value`,`text-value`,`disabled`]),n.separator?(A(),x(m,O({key:0,ref_for:!0},E.separatorProps),null,16)):S(`v-if`,!0)],64))),128))]),_:2},1040)):(A(),C(y,{key:1},[T(l,O({ref_for:!0},E.itemProps,{value:n.value,"text-value":n.textValue,disabled:n.disabled,onSelect:b[1]||(b[1]=e=>G(e))}),{default:F(()=>[M(e.$slots,`item-leading`,{item:n},()=>[n.icon?(A(),x(t,{key:0,icon:n.icon},null,8,[`icon`])):S(`v-if`,!0)]),T(d,O({ref_for:!0},E.itemTextProps),{default:F(()=>[M(e.$slots,`item-text`,{item:n},()=>[w(N(n.label),1)])]),_:2},1040),M(e.$slots,`item-trailing`,{item:n}),T(u,O({ref_for:!0},E.itemIndicatorProps),{default:F(()=>[M(e.$slots,`item-indicator`,{item:n},()=>[T(t,{icon:`lucide:check`})])]),_:2},1040)]),_:2},1040,[`value`,`text-value`,`disabled`]),n.separator?(A(),x(m,O({key:0,ref_for:!0},E.separatorProps),null,16)):S(`v-if`,!0)],64))],64))),128))]),_:3},16),T(f,k(D(E.scrollDownButtonProps)),{default:F(()=>[M(e.$slots,`scroll-down-button`,{},()=>[T(t,{icon:`lucide:chevron-down`})])]),_:3},16),E.showArrow?(A(),x(i,k(O({key:0},E.arrowProps)),null,16)):S(`v-if`,!0)]),_:3},16)]),_:3},16)]),_:3},16))}});export{I as default};
@@ -0,0 +1,28 @@
1
+ import { DefinedValue } from "../../types/common.js";
2
+ import { PointerDownOutsideEvent } from "../../types/event.js";
3
+ import { SelectCompactProps, SelectCompactSlots, SelectItemEvent } from "./types.js";
4
+ import * as _$vue from "vue";
5
+
6
+ //#region src/components/select/select-compact.vue.d.ts
7
+ declare const __VLS_export: <T extends DefinedValue = DefinedValue, M extends boolean = false>(__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<{
8
+ props: _$vue.PublicProps & __VLS_PrettifyLocal<SelectCompactProps<T, M> & {
9
+ onSelect?: ((event: SelectItemEvent<T>) => any) | undefined;
10
+ "onUpdate:modelValue"?: ((value: M extends true ? T[] : T) => any) | undefined;
11
+ "onUpdate:open"?: ((value: boolean) => any) | undefined;
12
+ onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
13
+ onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
14
+ onCloseAutoFocus?: ((event: Event) => any) | undefined;
15
+ }> & (typeof globalThis extends {
16
+ __VLS_PROPS_FALLBACK: infer P;
17
+ } ? P : {});
18
+ expose: (exposed: {}) => void;
19
+ attrs: any;
20
+ slots: SelectCompactSlots<T, M>;
21
+ emit: ((evt: "select", event: SelectItemEvent<T>) => void) & ((evt: "update:modelValue", value: M extends true ? T[] : T) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "escapeKeyDown", event: KeyboardEvent) => void) & ((evt: "pointerDownOutside", event: PointerDownOutsideEvent) => void) & ((evt: "closeAutoFocus", event: Event) => void);
22
+ }>) => _$vue.VNode & {
23
+ __ctx?: Awaited<typeof __VLS_setup>;
24
+ };
25
+ declare const _default: typeof __VLS_export;
26
+ type __VLS_PrettifyLocal<T> = (T extends any ? { [K in keyof T]: T[K] } : { [K in keyof T as K]: T[K] }) & {};
27
+ //#endregion
28
+ export { _default };
@@ -18,9 +18,9 @@ declare const __VLS_base: _$vue.DefineComponent<SelectContentProps, {}, {}, {},
18
18
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
19
19
  onCloseAutoFocus?: ((event: Event) => any) | undefined;
20
20
  }>, {
21
- position: SelectPosition;
22
21
  avoidCollisions: boolean;
23
22
  prioritizePosition: boolean;
23
+ position: SelectPosition;
24
24
  bodyLock: boolean;
25
25
  }, {}, {}, {}, string, _$vue.ComponentProvideOptions, false, {}, any>;
26
26
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -1 +1 @@
1
- import{isNullish as e}from"../../shared/guard.js";import{isFormControl as t,transformPropsToContext as n}from"../../shared/vue.js";import"../../shared/index.js";import{useControllableState as r}from"../../composables/use-controllable-state.js";import{useSelection as i}from"../../composables/use-selection.js";import"../../composables/index.js";import a from"../popper/popper-root.js";import"../popper/index.js";import{provideCollectionContext as o,provideSelectRootContext as s}from"./context.js";import c from"./select-bubble-select.js";import{Fragment as l,computed as u,createBlock as d,createCommentVNode as f,createElementBlock as p,defineComponent as m,mergeProps as h,openBlock as g,renderList as _,renderSlot as v,unref as y,withCtx as b}from"vue";const x={key:0,value:``},S=m({name:`SelectRoot`,inheritAttrs:!1,__name:`select-root`,props:{open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean},dir:{},autocomplete:{},disabled:{type:Boolean},modelValue:{default:void 0},defaultValue:{},multiple:{},singleClearable:{type:Boolean},name:{},required:{type:Boolean}},emits:[`update:modelValue`,`update:open`],setup(m,{emit:S}){let C=m,w=S,{modelValue:T,isMultiple:E,onModelValueChange:D,isEmptyModelValue:O}=i(C,e=>{w(`update:modelValue`,e)}),k=r(()=>C.open,e=>{w(`update:open`,e)},C.defaultOpen),{triggerElement:A,options:j,nativeSelectKey:M}=s({...n(C,[`dir`,`autocomplete`,`disabled`,`required`,`singleClearable`]),open:k,modelValue:T,onModelValueChange:D,isMultiple:E,isEmptyModelValue:O});o();let N=u(()=>t(A.value));return(t,n)=>(g(),d(y(a),null,{default:b(()=>[v(t.$slots,`default`,{modelValue:y(T),open:!!y(k)}),N.value?(g(),d(c,{key:y(M),"aria-hidden":`true`,tabindex:`-1`,multiple:m.multiple,required:m.required,name:m.name,autocomplete:m.autocomplete,disabled:m.disabled,value:y(T)},{default:b(()=>[y(e)(y(T))?(g(),p(`option`,x)):f(`v-if`,!0),(g(!0),p(l,null,_(y(j),e=>(g(),p(`option`,h({key:e.value??``},{ref_for:!0},e),null,16))),128))]),_:1},8,[`multiple`,`required`,`name`,`autocomplete`,`disabled`,`value`])):f(`v-if`,!0)]),_:3}))}});export{S as default};
1
+ import{isNullish as e}from"../../shared/guard.js";import{isFormControl as t,transformPropsToContext as n}from"../../shared/vue.js";import"../../shared/index.js";import{useControllableState as r}from"../../composables/use-controllable-state.js";import{useSelection as i}from"../../composables/use-selection.js";import"../../composables/index.js";import a from"../popper/popper-root.js";import"../popper/index.js";import{provideCollectionContext as o,provideSelectRootContext as s}from"./context.js";import c from"./select-bubble-select.js";import{Fragment as l,computed as u,createBlock as d,createCommentVNode as f,createElementBlock as p,defineComponent as m,mergeProps as h,openBlock as g,renderList as _,renderSlot as v,unref as y,withCtx as b}from"vue";const x={key:0,value:``},S=m({name:`SelectRoot`,inheritAttrs:!1,__name:`select-root`,props:{open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean},dir:{},autocomplete:{},disabled:{type:Boolean},modelValue:{default:void 0},defaultValue:{},multiple:{},clearable:{type:Boolean},selectionBehavior:{},name:{},required:{type:Boolean}},emits:[`update:modelValue`,`update:open`],setup(m,{emit:S}){let C=m,w=S,{modelValue:T,isMultiple:E,onModelValueChange:D,isEmptyModelValue:O}=i(C,e=>{w(`update:modelValue`,e)}),k=r(()=>C.open,e=>{w(`update:open`,e)},C.defaultOpen),{triggerElement:A,options:j,nativeSelectKey:M}=s({...n(C,[`dir`,`autocomplete`,`disabled`,`required`,`clearable`]),open:k,modelValue:T,onModelValueChange:D,isMultiple:E,isEmptyModelValue:O});o();let N=u(()=>t(A.value));return(t,n)=>(g(),d(y(a),null,{default:b(()=>[v(t.$slots,`default`,{modelValue:y(T),open:!!y(k)}),N.value?(g(),d(c,{key:y(M),"aria-hidden":`true`,tabindex:`-1`,multiple:m.multiple,required:m.required,name:m.name,autocomplete:m.autocomplete,disabled:m.disabled,value:y(T)},{default:b(()=>[y(e)(y(T))?(g(),p(`option`,x)):f(`v-if`,!0),(g(!0),p(l,null,_(y(j),e=>(g(),p(`option`,h({key:e.value??``},{ref_for:!0},e),null,16))),128))]),_:1},8,[`multiple`,`required`,`name`,`autocomplete`,`disabled`,`value`])):f(`v-if`,!0)]),_:3}))}});export{S as default};
@@ -1,4 +1,4 @@
1
- import{useForwardElement as e}from"../../composables/use-forward-element.js";import"../../composables/index.js";import{Primitive as t}from"../primitive/primitive.js";import"../primitive/index.js";import{useNonce as n}from"../config-provider/context.js";import{useSelectContentContext as r,useSelectItemAlignedPositionContext as i,useSelectUi as a}from"./context.js";import"./shared.js";import{Fragment as o,createElementBlock as s,createElementVNode as c,createTextVNode as l,createVNode as u,defineComponent as d,mergeProps as f,openBlock as p,renderSlot as m,toDisplayString as h,unref as g,useAttrs as _,withCtx as v}from"vue";const y=d({name:`SelectViewport`,inheritAttrs:!1,__name:`select-viewport`,props:{nonce:{}},setup(d){let y=d,b=_(),{onViewportElementChange:x}=r(`SelectViewport`),[S,C]=e(x),w=i(),T=n(()=>y.nonce),E=a(`viewport`),D=0;function O(e){let t=e.currentTarget,{positionerElement:n,shouldExpandOnScroll:r}=w??{};if(!n?.value||!r?.value){D=t.scrollTop;return}let i=Math.abs(D-t.scrollTop);if(i<=0)return;let a=window.innerHeight-20,o=Number.parseFloat(n.value.style.minHeight),s=Number.parseFloat(n.value.style.height),c=Math.max(o,s);if(c<a){let e=c+i,r=Math.min(a,e),o=e-r;n.value.style.height=`${r}px`,n.value.style.bottom===`0px`&&(t.scrollTop=o>0?o:0,n.value.style.justifyContent=`flex-end`)}D=t.scrollTop}return(e,n)=>(p(),s(o,null,[c(`div`,f(g(b),{ref:g(C),class:g(E),"data-soybean-select-viewport":``,role:`presentation`,style:`position:relative;flex:1;overflow:hidden auto;`,onScroll:O}),[m(e.$slots,`default`)],16),u(g(t),{as:`style`,nonce:g(T)},{default:v(()=>[l(h(`
1
+ import{useForwardElement as e}from"../../composables/use-forward-element.js";import"../../composables/index.js";import{useNonce as t}from"../config-provider/context.js";import{Primitive as n}from"../primitive/primitive.js";import"../primitive/index.js";import{useSelectContentContext as r,useSelectItemAlignedPositionContext as i,useSelectUi as a}from"./context.js";import"./shared.js";import{Fragment as o,createElementBlock as s,createElementVNode as c,createTextVNode as l,createVNode as u,defineComponent as d,mergeProps as f,openBlock as p,renderSlot as m,toDisplayString as h,unref as g,useAttrs as _,withCtx as v}from"vue";const y=d({name:`SelectViewport`,inheritAttrs:!1,__name:`select-viewport`,props:{nonce:{}},setup(d){let y=d,b=_(),{onViewportElementChange:x}=r(`SelectViewport`),[S,C]=e(x),w=i(),T=t(()=>y.nonce),E=a(`viewport`),D=0;function O(e){let t=e.currentTarget,{positionerElement:n,shouldExpandOnScroll:r}=w??{};if(!n?.value||!r?.value){D=t.scrollTop;return}let i=Math.abs(D-t.scrollTop);if(i<=0)return;let a=window.innerHeight-20,o=Number.parseFloat(n.value.style.minHeight),s=Number.parseFloat(n.value.style.height),c=Math.max(o,s);if(c<a){let e=c+i,r=Math.min(a,e),o=e-r;n.value.style.height=`${r}px`,n.value.style.bottom===`0px`&&(t.scrollTop=o>0?o:0,n.value.style.justifyContent=`flex-end`)}D=t.scrollTop}return(e,t)=>(p(),s(o,null,[c(`div`,f(g(b),{ref:g(C),class:g(E),"data-soybean-select-viewport":``,role:`presentation`,style:`position:relative;flex:1;overflow:hidden auto;`,onScroll:O}),[m(e.$slots,`default`)],16),u(g(n),{as:`style`,nonce:g(T)},{default:v(()=>[l(h(`
2
2
  [data-soybean-select-viewport] {
3
3
  scrollbar-width: none;
4
4
  -ms-overflow-style: none;
@@ -1 +1 @@
1
- import{isNullish as e}from"../../shared/guard.js";import"../../shared/index.js";const t={popupTransformOrigin:`--soybean-select-popup-transform-origin`,popupAvailableWidth:`--soybean-select-popup-available-width`,popupAvailableHeight:`--soybean-select-popup-available-height`,triggerWidth:`--soybean-select-trigger-width`,triggerHeight:`--soybean-select-trigger-height`},n=[` `,`Enter`,`ArrowUp`,`ArrowDown`],r=[` `,`Enter`],i=`select.select`;function a(t){return e(t)||t===``||Array.isArray(t)&&t.length===0}export{n as OPEN_KEYS,r as SELECTION_KEYS,i as SELECT_EVENT,t as selectCssVars,a as shouldShowPlaceholder};
1
+ import{isNullish as e}from"../../shared/guard.js";import"../../shared/index.js";const t={popupTransformOrigin:`--soybean-select-popup-transform-origin`,popupAvailableWidth:`--soybean-select-popup-available-width`,popupAvailableHeight:`--soybean-select-popup-available-height`,triggerWidth:`--soybean-select-trigger-width`,triggerHeight:`--soybean-select-trigger-height`},n=[` `,`Enter`,`ArrowUp`,`ArrowDown`],r=[` `,`Enter`],i=`select.select`;function a(t){return e(t)||t===``||Array.isArray(t)&&t.length===0}function o(e){return`items`in e}export{n as OPEN_KEYS,r as SELECTION_KEYS,i as SELECT_EVENT,o as isGroupOption,t as selectCssVars,a as shouldShowPlaceholder};
@@ -1,8 +1,10 @@
1
+ import { IconValue } from "../_icon/types.js";
1
2
  import { DefinedValue, Direction, SelectionEmits, SelectionProps, UiClass } from "../../types/common.js";
2
3
  import { PointerDownOutsideEvent } from "../../types/event.js";
3
4
  import { DismissableLayerProps, ForceMountProps, FormFieldCommonProps } from "../../types/component.js";
4
5
  import { PrimitiveProps } from "../primitive/types.js";
5
6
  import { PopperAnchorProps, PopperArrowProps, PopperPositionerProps } from "../popper/types.js";
7
+ import { PortalProps } from "../portal/types.js";
6
8
  import { ButtonHTMLAttributes, ComputedRef, HTMLAttributes, ShallowRef } from "vue";
7
9
 
8
10
  //#region src/components/select/types.d.ts
@@ -83,6 +85,64 @@ type SelectItemEmits<T extends DefinedValue = DefinedValue> = {
83
85
  };
84
86
  interface SelectItemTextProps extends /** @vue-ignore */HTMLAttributes {}
85
87
  interface SelectItemIndicatorProps extends PrimitiveProps, /** @vue-ignore */HTMLAttributes {}
88
+ interface SelectSingleOptionData<T extends DefinedValue = DefinedValue> extends Pick<SelectItemProps, 'disabled' | 'textValue'> {
89
+ value: T;
90
+ icon?: IconValue;
91
+ label: string;
92
+ separator?: boolean;
93
+ }
94
+ interface SelectGroupOptionData<T extends DefinedValue = DefinedValue> extends Pick<SelectSingleOptionData<T>, 'label' | 'separator'> {
95
+ items: SelectSingleOptionData<T>[];
96
+ }
97
+ type SelectOptionData<T extends DefinedValue = DefinedValue> = SelectSingleOptionData<T> | SelectGroupOptionData<T>;
98
+ interface SelectCompactProps<T extends DefinedValue = DefinedValue, M extends boolean = false> extends SelectRootProps<T, M> {
99
+ items: SelectOptionData<T>[];
100
+ showArrow?: boolean;
101
+ triggerProps?: SelectTriggerProps;
102
+ triggerIconProps?: SelectTriggerIconProps;
103
+ placeholder?: string;
104
+ valueProps?: SelectValueProps;
105
+ portalProps?: PortalProps;
106
+ contentProps?: SelectContentProps;
107
+ placement?: PopperPositionerProps['placement'];
108
+ popupProps?: SelectPopupProps;
109
+ viewportProps?: SelectViewportProps;
110
+ scrollDownButtonProps?: SelectScrollDownButtonProps;
111
+ scrollUpButtonProps?: SelectScrollUpButtonProps;
112
+ groupProps?: SelectGroupProps;
113
+ groupLabelProps?: SelectGroupLabelProps;
114
+ itemProps?: SelectItemProps;
115
+ itemTextProps?: SelectItemTextProps;
116
+ itemIndicatorProps?: SelectItemIndicatorProps;
117
+ separatorProps?: SelectSeparatorProps;
118
+ arrowProps?: PopperArrowProps;
119
+ }
120
+ type SelectCompactEmits<T extends DefinedValue = DefinedValue, M extends boolean = false> = SelectRootEmits<T, M> & SelectContentEmits & SelectItemEmits<T>;
121
+ type SelectCompactModelValue<T extends DefinedValue = DefinedValue, M extends boolean = false> = (M extends true ? T[] : T) | undefined;
122
+ interface SelectCompactTriggerValueSlotProps<T extends DefinedValue = DefinedValue, M extends boolean = false> {
123
+ modelValue: SelectCompactModelValue<T, M>;
124
+ selectedLabel: string[];
125
+ slotText: string;
126
+ }
127
+ interface SelectCompactGroupLabelSlotProps<T extends DefinedValue = DefinedValue> {
128
+ item: SelectGroupOptionData<T>;
129
+ }
130
+ interface SelectCompactItemSlotProps<T extends DefinedValue = DefinedValue> {
131
+ item: SelectSingleOptionData<T>;
132
+ }
133
+ type SelectCompactSlots<T extends DefinedValue = DefinedValue, M extends boolean = false> = {
134
+ 'trigger-leading'?: () => any;
135
+ 'trigger-value'?: (props: SelectCompactTriggerValueSlotProps<T, M>) => any;
136
+ 'trigger-trailing'?: () => any;
137
+ 'trigger-icon'?: () => any;
138
+ 'scroll-up-button'?: () => any;
139
+ 'scroll-down-button'?: () => any;
140
+ 'group-label'?: (props: SelectCompactGroupLabelSlotProps<T>) => any;
141
+ 'item-text'?: (props: SelectCompactItemSlotProps<T>) => any;
142
+ 'item-leading'?: (props: SelectCompactItemSlotProps<T>) => any;
143
+ 'item-trailing'?: (props: SelectCompactItemSlotProps<T>) => any;
144
+ 'item-indicator'?: (props: SelectCompactItemSlotProps<T>) => any;
145
+ };
86
146
  interface SelectValueProps extends /** @vue-ignore */HTMLAttributes {
87
147
  /** The content that will be rendered inside the `SelectValue` when no `value` or `defaultValue` is set. */
88
148
  placeholder?: string;
@@ -94,4 +154,4 @@ interface SelectScrollUpButtonProps extends SelectScrollButtonImplProps {}
94
154
  type SelectUiSlot = 'trigger' | 'triggerIcon' | 'value' | 'positioner' | 'popup' | 'viewport' | 'group' | 'groupLabel' | 'item' | 'itemText' | 'itemIndicator' | 'separator' | 'scrollUpButton' | 'scrollDownButton' | 'arrow';
95
155
  type SelectUi = UiClass<SelectUiSlot>;
96
156
  //#endregion
97
- export { SelectContentEmits, SelectContentProps, SelectGroupLabelProps, SelectGroupProps, SelectItemEmits, SelectItemEvent, SelectItemIndicatorProps, SelectItemProps, SelectItemTextProps, SelectPopupProps, SelectPosition, SelectRootEmits, SelectRootProps, SelectScrollDownButtonProps, SelectScrollUpButtonProps, SelectSeparatorProps, SelectTriggerIconProps, SelectTriggerProps, SelectUi, SelectUiSlot, SelectValueProps, SelectViewportProps };
157
+ export { SelectCompactEmits, SelectCompactProps, SelectCompactSlots, SelectContentEmits, SelectContentProps, SelectGroupLabelProps, SelectGroupOptionData, SelectGroupProps, SelectItemEmits, SelectItemEvent, SelectItemIndicatorProps, SelectItemProps, SelectItemTextProps, SelectOptionData, SelectPopupProps, SelectPosition, SelectRootEmits, SelectRootProps, SelectScrollDownButtonProps, SelectScrollUpButtonProps, SelectSeparatorProps, SelectSingleOptionData, SelectTriggerIconProps, SelectTriggerProps, SelectUi, SelectUiSlot, SelectValueProps, SelectViewportProps };