@soybeanjs/ui 0.17.0 → 0.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (279) hide show
  1. package/README.md +27 -5
  2. package/README.zh-CN.md +27 -5
  3. package/dist/components/accordion/accordion.js +1 -1
  4. package/dist/components/accordion/types.d.ts +3 -3
  5. package/dist/components/affix/affix.js +1 -1
  6. package/dist/components/affix/types.d.ts +2 -2
  7. package/dist/components/alert/alert.js +1 -1
  8. package/dist/components/alert/types.d.ts +4 -4
  9. package/dist/components/anchor/anchor.js +1 -1
  10. package/dist/components/anchor/types.d.ts +3 -3
  11. package/dist/components/autocomplete/autocomplete.js +1 -1
  12. package/dist/components/autocomplete/types.d.ts +3 -3
  13. package/dist/components/avatar/avatar.js +1 -1
  14. package/dist/components/avatar/avatar.vue.d.ts +2 -8
  15. package/dist/components/avatar/types.d.ts +4 -24
  16. package/dist/components/backtop/backtop.js +1 -1
  17. package/dist/components/backtop/backtop.vue.d.ts +2 -2
  18. package/dist/components/backtop/types.d.ts +2 -2
  19. package/dist/components/backtop/variants.js +1 -1
  20. package/dist/components/badge/badge.js +1 -1
  21. package/dist/components/badge/badge.vue.d.ts +2 -6
  22. package/dist/components/badge/types.d.ts +4 -12
  23. package/dist/components/badge/variants.js +1 -1
  24. package/dist/components/bottom-sheet/bottom-sheet.js +1 -1
  25. package/dist/components/bottom-sheet/types.d.ts +3 -3
  26. package/dist/components/breadcrumb/breadcrumb.js +1 -1
  27. package/dist/components/breadcrumb/types.d.ts +3 -3
  28. package/dist/components/button/button-group.js +1 -1
  29. package/dist/components/button/button-icon.js +1 -1
  30. package/dist/components/button/button-link.js +1 -1
  31. package/dist/components/button/button-link.vue.d.ts +1 -1
  32. package/dist/components/button/button-loading.js +1 -1
  33. package/dist/components/button/button.js +1 -1
  34. package/dist/components/button/button.vue.d.ts +2 -2
  35. package/dist/components/button/types.d.ts +5 -5
  36. package/dist/components/calendar/calendar.js +1 -1
  37. package/dist/components/calendar/types.d.ts +3 -3
  38. package/dist/components/card/card.js +1 -1
  39. package/dist/components/card/types.d.ts +1 -1
  40. package/dist/components/carousel/carousel.js +1 -1
  41. package/dist/components/carousel/carousel.vue.d.ts +16 -19
  42. package/dist/components/carousel/index.d.ts +1 -5
  43. package/dist/components/carousel/index.js +1 -1
  44. package/dist/components/carousel/types.d.ts +22 -7
  45. package/dist/components/carousel/variants.js +1 -1
  46. package/dist/components/checkbox/checkbox-card-group.js +1 -1
  47. package/dist/components/checkbox/checkbox-card.js +1 -1
  48. package/dist/components/checkbox/checkbox-group.js +1 -1
  49. package/dist/components/checkbox/checkbox.js +1 -1
  50. package/dist/components/checkbox/types.d.ts +8 -8
  51. package/dist/components/clipboard/clipboard.js +1 -1
  52. package/dist/components/clipboard/clipboard.vue.d.ts +2 -2
  53. package/dist/components/clipboard/types.d.ts +1 -1
  54. package/dist/components/collapsible/types.d.ts +2 -2
  55. package/dist/components/color-area/color-area.js +1 -1
  56. package/dist/components/color-area/types.d.ts +4 -4
  57. package/dist/components/color-field/color-field.js +1 -1
  58. package/dist/components/color-field/types.d.ts +3 -3
  59. package/dist/components/color-picker/color-picker.js +1 -1
  60. package/dist/components/color-picker/types.d.ts +13 -13
  61. package/dist/components/color-slider/color-slider.js +1 -1
  62. package/dist/components/color-slider/types.d.ts +4 -4
  63. package/dist/components/color-swatch/color-swatch.js +1 -1
  64. package/dist/components/color-swatch/types.d.ts +2 -2
  65. package/dist/components/color-swatch-picker/color-swatch-picker.js +1 -1
  66. package/dist/components/color-swatch-picker/types.d.ts +6 -6
  67. package/dist/components/combobox/combobox.js +1 -1
  68. package/dist/components/combobox/types.d.ts +3 -3
  69. package/dist/components/command/command.js +1 -1
  70. package/dist/components/command/types.d.ts +3 -3
  71. package/dist/components/config-provider/config-provider.vue.d.ts +1 -1
  72. package/dist/components/config-provider/types.d.ts +1 -1
  73. package/dist/components/context-menu/context-menu-checkbox.js +1 -1
  74. package/dist/components/context-menu/context-menu-radio.js +1 -1
  75. package/dist/components/context-menu/context-menu-wrapper.js +1 -1
  76. package/dist/components/context-menu/context-menu.js +1 -1
  77. package/dist/components/context-menu/index.d.ts +4 -4
  78. package/dist/components/context-menu/index.js +1 -1
  79. package/dist/components/context-menu/types.d.ts +11 -11
  80. package/dist/components/date-field/date-field.js +1 -1
  81. package/dist/components/date-field/types.d.ts +2 -2
  82. package/dist/components/date-picker/date-picker.js +1 -1
  83. package/dist/components/date-picker/types.d.ts +3 -3
  84. package/dist/components/date-range-field/date-range-field.js +1 -1
  85. package/dist/components/date-range-field/types.d.ts +5 -5
  86. package/dist/components/date-range-picker/date-range-picker.js +1 -1
  87. package/dist/components/date-range-picker/types.d.ts +5 -5
  88. package/dist/components/dialog/dialog.js +1 -1
  89. package/dist/components/dialog/types.d.ts +3 -3
  90. package/dist/components/drawer/drawer.js +1 -1
  91. package/dist/components/drawer/types.d.ts +3 -3
  92. package/dist/components/dropdown-menu/dropdown-menu-checkbox.js +1 -1
  93. package/dist/components/dropdown-menu/dropdown-menu-radio.js +1 -1
  94. package/dist/components/dropdown-menu/dropdown-menu-wrapper.js +1 -1
  95. package/dist/components/dropdown-menu/dropdown-menu.js +1 -1
  96. package/dist/components/dropdown-menu/types.d.ts +11 -11
  97. package/dist/components/editable/editable.js +1 -1
  98. package/dist/components/editable/types.d.ts +9 -9
  99. package/dist/components/empty/empty.js +1 -1
  100. package/dist/components/empty/empty.vue.d.ts +2 -8
  101. package/dist/components/empty/index.d.ts +1 -2
  102. package/dist/components/empty/types.d.ts +11 -40
  103. package/dist/components/empty/variants.js +1 -1
  104. package/dist/components/form/form-field-array.js +1 -0
  105. package/dist/components/form/form-field-base.js +1 -1
  106. package/dist/components/form/form-field-base.vue.d.ts +3 -16
  107. package/dist/components/form/form-field.js +1 -0
  108. package/dist/components/form/form.js +1 -1
  109. package/dist/components/form/form.vue.d.ts +2 -2
  110. package/dist/components/form/index.d.ts +1 -1
  111. package/dist/components/form/types.d.ts +20 -123
  112. package/dist/components/form/use-form.d.ts +3 -41
  113. package/dist/components/form/use-form.js +1 -1
  114. package/dist/components/form/variants.js +1 -1
  115. package/dist/components/hover-card/hover-card.js +1 -1
  116. package/dist/components/hover-card/types.d.ts +7 -7
  117. package/dist/components/icon/types.d.ts +1 -1
  118. package/dist/components/input/index.d.ts +4 -2
  119. package/dist/components/input/index.js +1 -1
  120. package/dist/components/input/input.js +1 -1
  121. package/dist/components/input/input.vue.d.ts +2 -7
  122. package/dist/components/input/types.d.ts +10 -20
  123. package/dist/components/input/variants.js +1 -1
  124. package/dist/components/input-number/input-number.js +1 -1
  125. package/dist/components/input-number/types.d.ts +5 -5
  126. package/dist/components/input-otp/input-otp.js +1 -1
  127. package/dist/components/input-otp/types.d.ts +3 -3
  128. package/dist/components/kbd/kbd.js +1 -1
  129. package/dist/components/kbd/types.d.ts +1 -1
  130. package/dist/components/label/label.js +1 -1
  131. package/dist/components/label/types.d.ts +1 -1
  132. package/dist/components/layout/layout-classic.js +1 -1
  133. package/dist/components/layout/layout.js +1 -1
  134. package/dist/components/layout/types.d.ts +6 -6
  135. package/dist/components/link/link.js +1 -1
  136. package/dist/components/link/types.d.ts +1 -1
  137. package/dist/components/list/list.js +1 -1
  138. package/dist/components/list/types.d.ts +5 -5
  139. package/dist/components/menu/types.d.ts +1 -1
  140. package/dist/components/menubar/menubar.js +1 -1
  141. package/dist/components/menubar/types.d.ts +3 -3
  142. package/dist/components/month-picker/month-picker.js +1 -1
  143. package/dist/components/month-picker/types.d.ts +5 -5
  144. package/dist/components/month-range-picker/month-range-picker.js +1 -1
  145. package/dist/components/month-range-picker/types.d.ts +5 -5
  146. package/dist/components/navigation-menu/navigation-menu.js +1 -1
  147. package/dist/components/navigation-menu/types.d.ts +20 -20
  148. package/dist/components/page-tabs/page-tabs.js +1 -1
  149. package/dist/components/page-tabs/page-tabs.vue.d.ts +1 -1
  150. package/dist/components/page-tabs/types.d.ts +6 -6
  151. package/dist/components/pagination/pagination.js +1 -1
  152. package/dist/components/pagination/types.d.ts +9 -9
  153. package/dist/components/password/password.js +1 -1
  154. package/dist/components/password/types.d.ts +2 -2
  155. package/dist/components/popconfirm/popconfirm-cancel.js +1 -1
  156. package/dist/components/popconfirm/popconfirm-confirm.js +1 -1
  157. package/dist/components/popconfirm/popconfirm.js +1 -1
  158. package/dist/components/popconfirm/types.d.ts +26 -26
  159. package/dist/components/popover/popover.js +1 -1
  160. package/dist/components/popover/types.d.ts +8 -8
  161. package/dist/components/progress/progress-circle.js +1 -1
  162. package/dist/components/progress/progress.js +1 -1
  163. package/dist/components/progress/types.d.ts +5 -5
  164. package/dist/components/radio-group/radio-card-group.js +1 -1
  165. package/dist/components/radio-group/radio-card.js +1 -1
  166. package/dist/components/radio-group/radio-group.js +1 -1
  167. package/dist/components/radio-group/types.d.ts +12 -12
  168. package/dist/components/range-calendar/range-calendar.js +1 -1
  169. package/dist/components/range-calendar/types.d.ts +16 -16
  170. package/dist/components/scroll-area/scroll-area.js +1 -1
  171. package/dist/components/scroll-area/types.d.ts +7 -7
  172. package/dist/components/segment/segment.js +1 -1
  173. package/dist/components/segment/types.d.ts +3 -3
  174. package/dist/components/select/select.js +1 -1
  175. package/dist/components/select/types.d.ts +3 -3
  176. package/dist/components/separator/separator.js +1 -1
  177. package/dist/components/separator/types.d.ts +2 -2
  178. package/dist/components/skeleton/skeleton.js +1 -1
  179. package/dist/components/skeleton/types.d.ts +1 -1
  180. package/dist/components/slider/slider.js +1 -1
  181. package/dist/components/slider/types.d.ts +5 -5
  182. package/dist/components/spinner/spinner.js +1 -1
  183. package/dist/components/spinner/types.d.ts +2 -2
  184. package/dist/components/splitter/splitter-group.js +1 -1
  185. package/dist/components/splitter/splitter-panel.js +1 -1
  186. package/dist/components/splitter/splitter-panel.vue.d.ts +2 -2
  187. package/dist/components/splitter/splitter-resize-handle.vue.d.ts +2 -2
  188. package/dist/components/splitter/types.d.ts +6 -6
  189. package/dist/components/stepper/stepper.js +1 -1
  190. package/dist/components/stepper/types.d.ts +10 -10
  191. package/dist/components/switch/switch.js +1 -1
  192. package/dist/components/switch/types.d.ts +4 -4
  193. package/dist/components/table/table.js +1 -1
  194. package/dist/components/table/table.vue.d.ts +2 -2
  195. package/dist/components/table/types.d.ts +8 -8
  196. package/dist/components/tabs/tabs.js +1 -1
  197. package/dist/components/tabs/types.d.ts +3 -3
  198. package/dist/components/tag/tag.js +1 -1
  199. package/dist/components/tag/types.d.ts +1 -1
  200. package/dist/components/tags-input/tags-input.js +1 -1
  201. package/dist/components/tags-input/types.d.ts +2 -2
  202. package/dist/components/textarea/textarea.js +1 -1
  203. package/dist/components/textarea/types.d.ts +3 -3
  204. package/dist/components/time-field/time-field.js +1 -1
  205. package/dist/components/time-field/types.d.ts +5 -5
  206. package/dist/components/time-picker/time-picker.js +1 -1
  207. package/dist/components/time-picker/types.d.ts +5 -5
  208. package/dist/components/time-range-field/time-range-field.js +1 -1
  209. package/dist/components/time-range-field/types.d.ts +5 -5
  210. package/dist/components/time-range-picker/time-range-picker.js +1 -1
  211. package/dist/components/time-range-picker/types.d.ts +5 -5
  212. package/dist/components/toast/types.d.ts +1 -1
  213. package/dist/components/toggle/toggle.js +1 -1
  214. package/dist/components/toggle/types.d.ts +1 -1
  215. package/dist/components/toggle-group/toggle-group.js +1 -1
  216. package/dist/components/toggle-group/types.d.ts +2 -2
  217. package/dist/components/toolbar/toolbar.js +1 -1
  218. package/dist/components/toolbar/types.d.ts +1 -1
  219. package/dist/components/tooltip/tooltip.js +1 -1
  220. package/dist/components/tooltip/types.d.ts +7 -7
  221. package/dist/components/tree/tree.js +1 -1
  222. package/dist/components/tree/types.d.ts +4 -4
  223. package/dist/components/tree-menu/tree-menu-styled-item.js +1 -1
  224. package/dist/components/tree-menu/tree-menu.js +1 -1
  225. package/dist/components/tree-menu/types.d.ts +21 -21
  226. package/dist/components/virtualizer/types.d.ts +3 -3
  227. package/dist/components/year-picker/types.d.ts +5 -5
  228. package/dist/components/year-picker/year-picker.js +1 -1
  229. package/dist/components/year-range-picker/types.d.ts +5 -5
  230. package/dist/components/year-range-picker/year-range-picker.js +1 -1
  231. package/dist/constants/components.d.ts +18 -18
  232. package/dist/constants/components.js +1 -1
  233. package/dist/index.d.ts +107 -111
  234. package/dist/index.js +1 -1
  235. package/dist/styles.css +77 -52
  236. package/package.json +10 -6
  237. package/dist/components/carousel/carousel-content.js +0 -1
  238. package/dist/components/carousel/carousel-content.vue.d.ts +0 -18
  239. package/dist/components/carousel/carousel-item.js +0 -1
  240. package/dist/components/carousel/carousel-item.vue.d.ts +0 -18
  241. package/dist/components/carousel/carousel-next.js +0 -1
  242. package/dist/components/carousel/carousel-next.vue.d.ts +0 -23
  243. package/dist/components/carousel/carousel-previous.js +0 -1
  244. package/dist/components/carousel/carousel-previous.vue.d.ts +0 -23
  245. package/dist/components/empty/variants.d.ts +0 -57
  246. package/dist/components/form/context.js +0 -1
  247. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Alignment.d.ts +0 -4
  248. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Animations.d.ts +0 -11
  249. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Axis.d.ts +0 -16
  250. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Counter.d.ts +0 -9
  251. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/DragHandler.d.ts +0 -13
  252. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/DragTracker.d.ts +0 -4
  253. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/EmblaCarousel.d.ts +0 -31
  254. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Engine.d.ts +0 -67
  255. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/EventHandler.d.ts +0 -29
  256. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/EventStore.d.ts +0 -10
  257. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Limit.d.ts +0 -13
  258. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/NodeRects.d.ts +0 -11
  259. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Options.d.ts +0 -43
  260. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/OptionsHandler.d.ts +0 -11
  261. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/PercentOfView.d.ts +0 -6
  262. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Plugins.d.ts +0 -20
  263. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/ResizeHandler.d.ts +0 -11
  264. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/ScrollBody.d.ts +0 -14
  265. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/ScrollBounds.d.ts +0 -8
  266. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/ScrollContain.d.ts +0 -4
  267. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/ScrollLooper.d.ts +0 -6
  268. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/ScrollProgress.d.ts +0 -6
  269. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/ScrollTarget.d.ts +0 -12
  270. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/ScrollTo.d.ts +0 -7
  271. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/SlideFocus.d.ts +0 -10
  272. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/SlideLooper.d.ts +0 -19
  273. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/SlideRegistry.d.ts +0 -6
  274. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/SlidesHandler.d.ts +0 -11
  275. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/SlidesInView.d.ts +0 -9
  276. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/SlidesToScroll.d.ts +0 -7
  277. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Translate.d.ts +0 -8
  278. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/Vector1d.d.ts +0 -9
  279. package/dist/node_modules/.pnpm/embla-carousel@8.6.0/node_modules/embla-carousel/esm/components/utils.d.ts +0 -4
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../icon/icon.js";import n from"../context-menu/context-menu.js";import{usePageTabsState as r}from"./hooks.js";import{pageTabsVariants as i}from"./variants.js";import{Fragment as a,computed as o,createBlock as s,createCommentVNode as c,createElementBlock as l,createElementVNode as u,createVNode as d,defineComponent as f,isRef as p,mergeProps as m,normalizeClass as h,openBlock as g,renderList as _,shallowRef as v,toDisplayString as y,unref as b,watchEffect as x,withCtx as S}from"vue";import{useControllableState as C,useOmitProps as w}from"@soybeanjs/headless/composables";import{PageTabsClose as T,PageTabsItem as E,PageTabsPin as D,PageTabsRoot as O,providePageTabsUi as k}from"@soybeanjs/headless/page-tabs";const A=f({name:`SPageTabs`,__name:`page-tabs`,props:{class:{},size:{},variant:{default:`chrome`},ui:{},items:{},menuFactory:{},beforeClose:{type:Function,default:()=>!0},modelValue:{},middleClickClose:{type:Boolean}},emits:[`update:modelValue`,`update:items`,`click`,`close`,`pin`,`contextmenu`,`selectContextMenu`],setup(f,{emit:A}){let j=f,M=A,N=w(j,[`class`,`size`,`variant`,`ui`,`modelValue`,`items`,`menuFactory`,`beforeClose`]),P=C(()=>j.modelValue,e=>{M(`update:modelValue`,e??``)},``),F=C(()=>j.items,e=>{M(`update:items`,e)},[]),{closeTab:I,pinTab:L,sortTabs:R,getState:z}=r({items:F,modelValue:P,beforeClose:j.beforeClose}),B=v(null),V=v(null),H=o(()=>{if(!B.value||!j.menuFactory)return[];let e=z(B.value);return j.menuFactory(B.value,e)}),U=e=>{I(e.value,()=>{M(`close`,e)})},W=(e,t)=>{L(e,t),M(`pin`,e)},G=(e,t)=>{V.value=e.currentTarget,B.value=t,M(`contextmenu`,t)},K=async e=>{B.value&&(await e.action?.(),M(`selectContextMenu`,e,B.value))},q=o(()=>e(i({size:j.size,variant:j.variant}),j.ui,{root:j.class}));return x(()=>{R()}),k(q),(e,r)=>(g(),s(b(O),m(b(N),{modelValue:b(P),"onUpdate:modelValue":r[0]||=e=>p(P)?P.value=e:null}),{default:S(()=>[(g(!0),l(a,null,_(b(F),e=>(g(),s(b(E),{key:e.value,value:e.value,pinned:e.pinned,onClick:t=>M(`click`,e),onClose:t=>U(e),onPin:t=>W(e,t),onPointerenter:t=>G(t,e)},{default:S(()=>[d(t,{icon:e.icon},null,8,[`icon`]),u(`span`,{class:h(q.value.itemText)},y(e.label),3),e.hidePinnedIcon?c(`v-if`,!0):(g(),s(b(D),{key:0,"as-child":``},{default:S(()=>[d(t,{icon:`lucide:pin`})]),_:1})),d(b(T),{"as-child":``},{default:S(()=>[d(t,{icon:`lucide:x`})]),_:1}),f.variant===`chrome`?(g(),l(a,{key:1},[(g(),l(`svg`,{height:`100%`,width:`100%`,viewBox:`0 0 8 8`,class:h(q.value.chromeBgLeft)},[...r[1]||=[u(`path`,{d:`M 0 8 A 8 8 0 0 0 8 0 L 8 8 Z`},null,-1)]],2)),(g(),l(`svg`,{height:`100%`,width:`100%`,viewBox:`0 0 8 8`,class:h(q.value.chromeBgRight)},[...r[2]||=[u(`path`,{d:`M 0 0 A 8 8 0 0 0 8 8 L 0 8 Z`},null,-1)]],2))],64)):c(`v-if`,!0),f.variant===`slider`?(g(),l(`div`,{key:2,class:h(q.value.sliderIndicator)},null,2)):c(`v-if`,!0)]),_:2},1032,[`value`,`pinned`,`onClick`,`onClose`,`onPin`,`onPointerenter`]))),128)),H.value.length?(g(),s(n,{key:0,modal:!1,items:H.value,"trigger-props":{reference:V.value},onSelect:K},null,8,[`items`,`trigger-props`])):c(`v-if`,!0)]),_:1},16,[`modelValue`]))}});export{A as default};
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../icon/icon.js";import n from"../context-menu/context-menu.js";import{usePageTabsState as r}from"./hooks.js";import{pageTabsVariants as i}from"./variants.js";import{Fragment as a,computed as o,createBlock as s,createCommentVNode as c,createElementBlock as l,createElementVNode as u,createVNode as d,defineComponent as f,isRef as p,mergeProps as m,normalizeClass as h,openBlock as g,renderList as _,shallowRef as v,toDisplayString as y,unref as b,watchEffect as x,withCtx as S}from"vue";import{useControllableState as C,useOmitProps as w}from"@soybeanjs/headless/composables";import{PageTabsClose as T,PageTabsItem as E,PageTabsPin as D,PageTabsRoot as O,providePageTabsUi as k}from"@soybeanjs/headless/page-tabs";const A=f({name:`SPageTabs`,__name:`page-tabs`,props:{class:{type:[Boolean,null,String,Object,Array]},size:{},variant:{default:`chrome`},ui:{},items:{},menuFactory:{},beforeClose:{type:Function,default:()=>!0},modelValue:{},middleClickClose:{type:Boolean}},emits:[`update:modelValue`,`update:items`,`click`,`close`,`pin`,`contextmenu`,`selectContextMenu`],setup(f,{emit:A}){let j=f,M=A,N=w(j,[`class`,`size`,`variant`,`ui`,`modelValue`,`items`,`menuFactory`,`beforeClose`]),P=C(()=>j.modelValue,e=>{M(`update:modelValue`,e??``)},``),F=C(()=>j.items,e=>{M(`update:items`,e)},[]),{closeTab:I,pinTab:L,sortTabs:R,getState:z}=r({items:F,modelValue:P,beforeClose:j.beforeClose}),B=v(null),V=v(null),H=o(()=>{if(!B.value||!j.menuFactory)return[];let e=z(B.value);return j.menuFactory(B.value,e)}),U=e=>{I(e.value,()=>{M(`close`,e)})},W=(e,t)=>{L(e,t),M(`pin`,e)},G=(e,t)=>{V.value=e.currentTarget,B.value=t,M(`contextmenu`,t)},K=async e=>{B.value&&(await e.action?.(),M(`selectContextMenu`,e,B.value))},q=o(()=>e(i({size:j.size,variant:j.variant}),j.ui,{root:j.class}));return x(()=>{R()}),k(q),(e,r)=>(g(),s(b(O),m(b(N),{modelValue:b(P),"onUpdate:modelValue":r[0]||=e=>p(P)?P.value=e:null}),{default:S(()=>[(g(!0),l(a,null,_(b(F),e=>(g(),s(b(E),{key:e.value,value:e.value,pinned:e.pinned,onClick:t=>M(`click`,e),onClose:t=>U(e),onPin:t=>W(e,t),onPointerenter:t=>G(t,e)},{default:S(()=>[d(t,{icon:e.icon},null,8,[`icon`]),u(`span`,{class:h(q.value.itemText)},y(e.label),3),e.hidePinnedIcon?c(`v-if`,!0):(g(),s(b(D),{key:0,"as-child":``},{default:S(()=>[d(t,{icon:`lucide:pin`})]),_:1})),d(b(T),{"as-child":``},{default:S(()=>[d(t,{icon:`lucide:x`})]),_:1}),f.variant===`chrome`?(g(),l(a,{key:1},[(g(),l(`svg`,{height:`100%`,width:`100%`,viewBox:`0 0 8 8`,class:h(q.value.chromeBgLeft)},[...r[1]||=[u(`path`,{d:`M 0 8 A 8 8 0 0 0 8 0 L 8 8 Z`},null,-1)]],2)),(g(),l(`svg`,{height:`100%`,width:`100%`,viewBox:`0 0 8 8`,class:h(q.value.chromeBgRight)},[...r[2]||=[u(`path`,{d:`M 0 0 A 8 8 0 0 0 8 8 L 0 8 Z`},null,-1)]],2))],64)):c(`v-if`,!0),f.variant===`slider`?(g(),l(`div`,{key:2,class:h(q.value.sliderIndicator)},null,2)):c(`v-if`,!0)]),_:2},1032,[`value`,`pinned`,`onClick`,`onClose`,`onPin`,`onPointerenter`]))),128)),H.value.length?(g(),s(n,{key:0,modal:!1,items:H.value,"trigger-props":{reference:V.value},onSelect:K},null,8,[`items`,`trigger-props`])):c(`v-if`,!0)]),_:1},16,[`modelValue`]))}});export{A as default};
@@ -4,8 +4,8 @@ import * as _$vue from "vue";
4
4
  //#region src/components/page-tabs/page-tabs.vue.d.ts
5
5
  declare const __VLS_export: <T extends PageTabsOptionData>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
6
6
  props: _$vue.PublicProps & __VLS_PrettifyLocal<PageTabsProps<T> & {
7
- onContextmenu?: ((tab: T) => any) | undefined;
8
7
  onClick?: ((tab: T) => any) | undefined;
8
+ onContextmenu?: ((tab: T) => any) | undefined;
9
9
  onClose?: ((tab: T) => any) | undefined;
10
10
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
11
11
  "onUpdate:items"?: ((items: T[]) => any) | undefined;
@@ -7,7 +7,7 @@ import { ClassValue, MaybePromise } from "@soybeanjs/headless/types";
7
7
 
8
8
  //#region src/components/page-tabs/types.d.ts
9
9
  /**
10
- * Option data for the page tabs component.
10
+ * Option data for the PageTabs component.
11
11
  */
12
12
  interface PageTabsOptionData extends PageTabsItemProps {
13
13
  /**
@@ -28,11 +28,11 @@ interface PageTabsOptionData extends PageTabsItemProps {
28
28
  */
29
29
  type PageTabsExtraUiSlot = 'itemText' | 'chromeBgLeft' | 'chromeBgRight' | 'sliderIndicator';
30
30
  /**
31
- * Extended UI class overrides for the page tabs component.
31
+ * Extended UI class overrides for the PageTabs component.
32
32
  */
33
33
  type PageTabsExtendedUi = Record<PageTabsUiSlot | PageTabsExtraUiSlot, ClassValue>;
34
34
  /**
35
- * State values for the page tabs component.
35
+ * State values for PageTabsState.
36
36
  */
37
37
  interface PageTabsState {
38
38
  /**
@@ -85,7 +85,7 @@ interface PageTabsState {
85
85
  closeAll: () => void;
86
86
  }
87
87
  /**
88
- * Option data for the page tabs context menu component.
88
+ * Option data for the PageTabsContextMenu component.
89
89
  */
90
90
  interface PageTabsContextMenuOptionData extends index_d_exports.MenuOptionData<string> {
91
91
  /**
@@ -94,7 +94,7 @@ interface PageTabsContextMenuOptionData extends index_d_exports.MenuOptionData<s
94
94
  action?: () => MaybePromise<void>;
95
95
  }
96
96
  /**
97
- * Props for the page tabs component.
97
+ * Properties for the PageTabs component.
98
98
  */
99
99
  interface PageTabsProps<T extends PageTabsOptionData> extends PageTabsRootProps {
100
100
  /**
@@ -130,7 +130,7 @@ interface PageTabsProps<T extends PageTabsOptionData> extends PageTabsRootProps
130
130
  beforeClose?: (value: string) => MaybePromise<boolean | void>;
131
131
  }
132
132
  /**
133
- * Emits for the page tabs component.
133
+ * Events for the PageTabs component.
134
134
  */
135
135
  type PageTabsEmits<T> = PageTabsRootEmits & {
136
136
  (e: 'update:items', items: T[]): void;
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../icon/icon.js";import{paginationVariants as n}from"./variants.js";import{Fragment as r,computed as i,createBlock as a,createCommentVNode as o,createElementBlock as s,createVNode as c,defineComponent as l,guardReactiveProps as u,mergeProps as d,normalizeProps as f,openBlock as p,renderList as m,renderSlot as h,unref as g,withCtx as _}from"vue";import{useOmitProps as v}from"@soybeanjs/headless/composables";import{PaginationEllipsis as y,PaginationFirst as b,PaginationLast as x,PaginationList as S,PaginationListItem as C,PaginationNext as w,PaginationPrev as T,PaginationRoot as E,providePaginationUi as D}from"@soybeanjs/headless/pagination";const O=l({name:`SPagination`,__name:`pagination`,props:{class:{},ui:{},size:{},variant:{},shape:{},actionAsSelected:{type:Boolean},showFirstOrLast:{type:Boolean,default:!0},listProps:{},listItemProps:{},ellipsisProps:{},firstProps:{},prevProps:{},nextProps:{},lastProps:{},page:{},defaultPage:{},pageSize:{},defaultPageSize:{},total:{},siblingCount:{},disabled:{type:Boolean},showEdges:{type:Boolean}},emits:[`update:page`,`update:pageSize`],setup(l,{emit:O}){let k=l,A=O,j=v(k,[`class`,`ui`,`size`,`variant`,`shape`,`actionAsSelected`,`showFirstOrLast`,`listProps`,`listItemProps`,`ellipsisProps`,`firstProps`,`prevProps`,`nextProps`,`lastProps`]),M=i(()=>k.actionAsSelected?``:void 0);return D(i(()=>{let t=n({size:k.size,variant:k.variant,shape:k.shape,actionAsSelected:k.actionAsSelected}),{button:r,navigationButton:i}=t;return e({...t,listItem:r,first:i,prev:i,next:i,last:i},k.ui,{root:k.class})})),(e,n)=>(p(),a(g(E),d(g(j),{"onUpdate:page":n[0]||=e=>A(`update:page`,e),"onUpdate:pageSize":n[1]||=e=>A(`update:pageSize`,e)}),{default:_(()=>[h(e.$slots,`leading`),c(g(S),f(u(l.listProps)),{default:_(({items:n})=>[l.showFirstOrLast?(p(),a(g(b),d({key:0},l.firstProps,{"data-selected":M.value}),{default:_(()=>[h(e.$slots,`first`,{},()=>[c(t,{icon:`lucide:chevrons-left`})])]),_:3},16,[`data-selected`])):o(`v-if`,!0),c(g(T),d(l.prevProps,{"data-selected":M.value}),{default:_(()=>[h(e.$slots,`prev`,{},()=>[c(t,{icon:`lucide:chevron-left`})])]),_:3},16,[`data-selected`]),(p(!0),s(r,null,m(n,n=>(p(),s(r,{key:n},[n.type===`page`?(p(),a(g(C),d({key:0,ref_for:!0},l.listItemProps,{value:n.value}),null,16,[`value`])):n.type===`ellipsis`?(p(),a(g(y),d({key:1,ref_for:!0},l.ellipsisProps),{default:_(()=>[h(e.$slots,`ellipsis`,{},()=>[c(t,{icon:`lucide:ellipsis`})])]),_:3},16)):o(`v-if`,!0)],64))),128)),c(g(w),d(l.nextProps,{"data-selected":M.value}),{default:_(()=>[h(e.$slots,`next`,{},()=>[c(t,{icon:`lucide:chevron-right`})])]),_:3},16,[`data-selected`]),l.showFirstOrLast?(p(),a(g(x),d({key:1},l.lastProps,{"data-selected":M.value}),{default:_(()=>[h(e.$slots,`last`,{},()=>[c(t,{icon:`lucide:chevrons-right`})])]),_:3},16,[`data-selected`])):o(`v-if`,!0)]),_:3},16),h(e.$slots,`trailing`)]),_:3},16))}});export{O as default};
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../icon/icon.js";import{paginationVariants as n}from"./variants.js";import{Fragment as r,computed as i,createBlock as a,createCommentVNode as o,createElementBlock as s,createVNode as c,defineComponent as l,guardReactiveProps as u,mergeProps as d,normalizeProps as f,openBlock as p,renderList as m,renderSlot as h,unref as g,withCtx as _}from"vue";import{useOmitProps as v}from"@soybeanjs/headless/composables";import{PaginationEllipsis as y,PaginationFirst as b,PaginationLast as x,PaginationList as S,PaginationListItem as C,PaginationNext as w,PaginationPrev as T,PaginationRoot as E,providePaginationUi as D}from"@soybeanjs/headless/pagination";const O=l({name:`SPagination`,__name:`pagination`,props:{class:{type:[Boolean,null,String,Object,Array]},ui:{},size:{},variant:{},shape:{},actionAsSelected:{type:Boolean},showFirstOrLast:{type:Boolean,default:!0},listProps:{},listItemProps:{},ellipsisProps:{},firstProps:{},prevProps:{},nextProps:{},lastProps:{},page:{},defaultPage:{},pageSize:{},defaultPageSize:{},total:{},siblingCount:{},disabled:{type:Boolean},showEdges:{type:Boolean}},emits:[`update:page`,`update:pageSize`],setup(l,{emit:O}){let k=l,A=O,j=v(k,[`class`,`ui`,`size`,`variant`,`shape`,`actionAsSelected`,`showFirstOrLast`,`listProps`,`listItemProps`,`ellipsisProps`,`firstProps`,`prevProps`,`nextProps`,`lastProps`]),M=i(()=>k.actionAsSelected?``:void 0);return D(i(()=>{let t=n({size:k.size,variant:k.variant,shape:k.shape,actionAsSelected:k.actionAsSelected}),{button:r,navigationButton:i}=t;return e({...t,listItem:r,first:i,prev:i,next:i,last:i},k.ui,{root:k.class})})),(e,n)=>(p(),a(g(E),d(g(j),{"onUpdate:page":n[0]||=e=>A(`update:page`,e),"onUpdate:pageSize":n[1]||=e=>A(`update:pageSize`,e)}),{default:_(()=>[h(e.$slots,`leading`),c(g(S),f(u(l.listProps)),{default:_(({items:n})=>[l.showFirstOrLast?(p(),a(g(b),d({key:0},l.firstProps,{"data-selected":M.value}),{default:_(()=>[h(e.$slots,`first`,{},()=>[c(t,{icon:`lucide:chevrons-left`})])]),_:3},16,[`data-selected`])):o(`v-if`,!0),c(g(T),d(l.prevProps,{"data-selected":M.value}),{default:_(()=>[h(e.$slots,`prev`,{},()=>[c(t,{icon:`lucide:chevron-left`})])]),_:3},16,[`data-selected`]),(p(!0),s(r,null,m(n,n=>(p(),s(r,{key:n},[n.type===`page`?(p(),a(g(C),d({key:0,ref_for:!0},l.listItemProps,{value:n.value}),null,16,[`value`])):n.type===`ellipsis`?(p(),a(g(y),d({key:1,ref_for:!0},l.ellipsisProps),{default:_(()=>[h(e.$slots,`ellipsis`,{},()=>[c(t,{icon:`lucide:ellipsis`})])]),_:3},16)):o(`v-if`,!0)],64))),128)),c(g(w),d(l.nextProps,{"data-selected":M.value}),{default:_(()=>[h(e.$slots,`next`,{},()=>[c(t,{icon:`lucide:chevron-right`})])]),_:3},16,[`data-selected`]),l.showFirstOrLast?(p(),a(g(x),d({key:1},l.lastProps,{"data-selected":M.value}),{default:_(()=>[h(e.$slots,`last`,{},()=>[c(t,{icon:`lucide:chevrons-right`})])]),_:3},16,[`data-selected`])):o(`v-if`,!0)]),_:3},16),h(e.$slots,`trailing`)]),_:3},16))}});export{O as default};
@@ -5,7 +5,7 @@ import { ClassValue } from "@soybeanjs/headless/types";
5
5
 
6
6
  //#region src/components/pagination/types.d.ts
7
7
  /**
8
- * Props for the pagination component.
8
+ * Properties for the Pagination component.
9
9
  */
10
10
  interface PaginationProps extends PaginationRootProps {
11
11
  /**
@@ -24,23 +24,23 @@ interface PaginationProps extends PaginationRootProps {
24
24
  actionAsSelected?: boolean;
25
25
  /** Whether to show the first and last buttons */
26
26
  showFirstOrLast?: boolean;
27
- /** The props for the list component */
27
+ /** The properties for the list component */
28
28
  listProps?: PaginationListProps;
29
- /** The props for the list item component */
29
+ /** The properties for the list item component */
30
30
  listItemProps?: PaginationListItemProps;
31
- /** The props for the ellipsis component */
31
+ /** The properties for the ellipsis component */
32
32
  ellipsisProps?: PaginationEllipsisProps;
33
- /** The props for the first button component */
33
+ /** The properties for the first button component */
34
34
  firstProps?: PaginationButtonProps;
35
- /** The props for the previous button component */
35
+ /** The properties for the previous button component */
36
36
  prevProps?: PaginationButtonProps;
37
- /** The props for the next button component */
37
+ /** The properties for the next button component */
38
38
  nextProps?: PaginationButtonProps;
39
- /** The props for the last button component */
39
+ /** The properties for the last button component */
40
40
  lastProps?: PaginationButtonProps;
41
41
  }
42
42
  /**
43
- * Emits for the pagination component.
43
+ * Events for the Pagination component.
44
44
  */
45
45
  type PaginationEmits = PaginationRootEmits;
46
46
  //#endregion
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../icon/icon.js";import{inputVariants as n}from"../input/variants.js";import{computed as r,createBlock as i,createCommentVNode as a,createVNode as o,defineComponent as s,mergeProps as c,normalizeClass as l,openBlock as u,renderSlot as d,unref as f,withCtx as p}from"vue";import{useControllableState as m,useForwardElement as h,useOmitProps as g}from"@soybeanjs/headless/composables";import{InputControl as _,InputRoot as v,provideInputUi as y}from"@soybeanjs/headless/input";const b=s({name:`SPassword`,__name:`password`,props:{class:{},size:{},ui:{},visible:{type:Boolean,default:void 0},clearable:{type:Boolean},inputRef:{},controlProps:{},defaultValue:{},modelValue:{},id:{},autofocus:{type:Boolean},disabled:{type:Boolean},maxlength:{},minlength:{},pattern:{},placeholder:{},readonly:{type:Boolean},name:{},required:{type:Boolean}},emits:[`update:modelValue`,`update:visible`],setup(s,{emit:b}){let x=s,S=b,[C,w]=h(e=>x.inputRef?.(e)),T=g(x,[`class`,`size`,`ui`,`clearable`,`visible`,`inputRef`,`controlProps`]),E=m(()=>x.visible,e=>{S(`update:visible`,e)},!1),D=()=>{E.value=!E.value},O=r(()=>e(n({size:x.size}),x.ui,{root:x.class}));return y(O),(e,n)=>(u(),i(f(v),c(f(T),{"onUpdate:modelValue":n[0]||=e=>S(`update:modelValue`,e)}),{default:p(({clear:n})=>[d(e.$slots,`leading`),o(f(_),c(s.controlProps,{ref:f(w),type:f(E)?`text`:`password`}),null,16,[`type`]),s.clearable?(u(),i(t,{key:0,icon:`lucide:x`,class:l(O.value.clearable),onClick:n},null,8,[`class`,`onClick`])):a(`v-if`,!0),d(e.$slots,`trailing`),d(e.$slots,`visible`,{visible:f(E),toggle:D},()=>[o(t,{icon:f(E)?`lucide:eye`:`lucide:eye-off`,class:l(O.value.visible),onClick:D},null,8,[`icon`,`class`])])]),_:3},16))}});export{b as default};
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../icon/icon.js";import{inputVariants as n}from"../input/variants.js";import{computed as r,createBlock as i,createCommentVNode as a,createVNode as o,defineComponent as s,mergeProps as c,normalizeClass as l,openBlock as u,renderSlot as d,unref as f,withCtx as p}from"vue";import{useControllableState as m,useForwardElement as h,useOmitProps as g}from"@soybeanjs/headless/composables";import{InputControl as _,InputRoot as v,provideInputUi as y}from"@soybeanjs/headless/input";const b=s({name:`SPassword`,__name:`password`,props:{class:{type:[Boolean,null,String,Object,Array]},size:{},ui:{},visible:{type:Boolean,default:void 0},clearable:{type:Boolean},inputRef:{},controlProps:{},defaultValue:{},modelValue:{},id:{},autofocus:{type:Boolean},disabled:{type:Boolean},maxlength:{},minlength:{},pattern:{},placeholder:{},readonly:{type:Boolean},name:{},required:{type:Boolean}},emits:[`update:modelValue`,`update:visible`],setup(s,{emit:b}){let x=s,S=b,[C,w]=h(e=>x.inputRef?.(e)),T=g(x,[`class`,`size`,`ui`,`clearable`,`visible`,`inputRef`,`controlProps`]),E=m(()=>x.visible,e=>{S(`update:visible`,e)},!1),D=()=>{E.value=!E.value},O=r(()=>e(n({size:x.size}),x.ui,{root:x.class}));return y(O),(e,n)=>(u(),i(f(v),c(f(T),{"onUpdate:modelValue":n[0]||=e=>S(`update:modelValue`,e)}),{default:p(({clear:n})=>[d(e.$slots,`leading`),o(f(_),c(s.controlProps,{ref:f(w),type:f(E)?`text`:`password`}),null,16,[`type`]),s.clearable?(u(),i(t,{key:0,icon:`lucide:x`,class:l(O.value.clearable),onClick:n},null,8,[`class`,`onClick`])):a(`v-if`,!0),d(e.$slots,`trailing`),d(e.$slots,`visible`,{visible:f(E),toggle:D},()=>[o(t,{icon:f(E)?`lucide:eye`:`lucide:eye-off`,class:l(O.value.visible),onClick:D},null,8,[`icon`,`class`])])]),_:3},16))}});export{b as default};
@@ -6,7 +6,7 @@ import { ClassValue } from "@soybeanjs/headless/types";
6
6
  type PasswordUiSlot = 'clearable' | 'visible';
7
7
  type PasswordUi = InputUi & Record<PasswordUiSlot, ClassValue>;
8
8
  /**
9
- * Props for the password component.
9
+ * Properties for the Password component.
10
10
  */
11
11
  interface PasswordProps extends InputRootProps {
12
12
  /**
@@ -37,7 +37,7 @@ interface PasswordProps extends InputRootProps {
37
37
  controlProps?: InputControlProps;
38
38
  }
39
39
  /**
40
- * Emits for the password component.
40
+ * Events for the Password component.
41
41
  */
42
42
  type PasswordEmits = InputRootEmits & {
43
43
  /**
@@ -1 +1 @@
1
- import{miniSizeMap as e}from"../../theme/config.js";import"../../theme/index.js";import t from"../button/button.js";import{usePopconfirmContext as n}from"./context.js";import{computed as r,createBlock as i,createTextVNode as a,createVNode as o,defineComponent as s,mergeProps as c,openBlock as l,renderSlot as u,toDisplayString as d,unref as f,withCtx as p}from"vue";import{useOmitProps as m}from"@soybeanjs/headless/composables";import{PopoverClose as h}from"@soybeanjs/headless/popover";const g=s({name:`SPopconfirmCancel`,__name:`popconfirm-cancel`,props:{text:{},beforeClose:{},class:{},color:{},size:{},variant:{default:`pure`},shape:{},shadow:{},fitContent:{type:Boolean},type:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`close`],setup(s,{emit:g}){let _=s,v=g,y=m(_,[`text`,`beforeClose`]),{size:b,cancelText:x,cancelProps:S,beforeCancel:C,onClose:w}=n(`PopconfirmCancel`),T=r(()=>({...S.value,...y.value})),E=r(()=>_.text??x.value??`Cancel`),D=r(()=>_.size??e[b.value??`md`]),O=()=>{v(`close`),w()};return(e,n)=>(l(),i(f(h),{"as-child":``,"before-close":s.beforeClose??f(C),onClose:O},{default:p(()=>[o(t,c(T.value,{size:D.value}),{default:p(()=>[u(e.$slots,`default`,{},()=>[a(d(E.value),1)])]),_:3},16,[`size`])]),_:3},8,[`before-close`]))}});export{g as default};
1
+ import{miniSizeMap as e}from"../../theme/config.js";import"../../theme/index.js";import t from"../button/button.js";import{usePopconfirmContext as n}from"./context.js";import{computed as r,createBlock as i,createTextVNode as a,createVNode as o,defineComponent as s,mergeProps as c,openBlock as l,renderSlot as u,toDisplayString as d,unref as f,withCtx as p}from"vue";import{useOmitProps as m}from"@soybeanjs/headless/composables";import{PopoverClose as h}from"@soybeanjs/headless/popover";const g=s({name:`SPopconfirmCancel`,__name:`popconfirm-cancel`,props:{text:{},beforeClose:{},class:{type:[Boolean,null,String,Object,Array]},color:{},size:{},variant:{default:`pure`},shape:{},shadow:{},fitContent:{type:Boolean},type:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`close`],setup(s,{emit:g}){let _=s,v=g,y=m(_,[`text`,`beforeClose`]),{size:b,cancelText:x,cancelProps:S,beforeCancel:C,onClose:w}=n(`PopconfirmCancel`),T=r(()=>({...S.value,...y.value})),E=r(()=>_.text??x.value??`Cancel`),D=r(()=>_.size??e[b.value??`md`]),O=()=>{v(`close`),w()};return(e,n)=>(l(),i(f(h),{"as-child":``,"before-close":s.beforeClose??f(C),onClose:O},{default:p(()=>[o(t,c(T.value,{size:D.value}),{default:p(()=>[u(e.$slots,`default`,{},()=>[a(d(E.value),1)])]),_:3},16,[`size`])]),_:3},8,[`before-close`]))}});export{g as default};
@@ -1 +1 @@
1
- import{miniSizeMap as e}from"../../theme/config.js";import"../../theme/index.js";import t from"../button/button.js";import{usePopconfirmContext as n}from"./context.js";import{computed as r,createBlock as i,createTextVNode as a,createVNode as o,defineComponent as s,mergeProps as c,openBlock as l,renderSlot as u,toDisplayString as d,unref as f,withCtx as p}from"vue";import{useOmitProps as m}from"@soybeanjs/headless/composables";import{PopoverClose as h}from"@soybeanjs/headless/popover";const g=s({name:`SPopconfirmConfirm`,__name:`popconfirm-confirm`,props:{text:{},beforeClose:{type:Function},class:{},color:{},size:{},variant:{},shape:{},shadow:{},fitContent:{type:Boolean},type:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`close`],setup(s,{emit:g}){let _=s,v=g,y=m(_,[`text`,`beforeClose`]),{size:b,confirmText:x,confirmProps:S,beforeConfirm:C,onClose:w}=n(`PopconfirmConfirm`),T=r(()=>({...S.value,...y.value})),E=r(()=>_.text??x.value??`Confirm`),D=r(()=>_.size??e[b.value??`md`]),O=()=>{v(`close`),w()};return(e,n)=>(l(),i(f(h),{"as-child":``,"before-close":s.beforeClose??f(C),onClose:O},{default:p(()=>[o(t,c(T.value,{size:D.value}),{default:p(()=>[u(e.$slots,`default`,{},()=>[a(d(E.value),1)])]),_:3},16,[`size`])]),_:3},8,[`before-close`]))}});export{g as default};
1
+ import{miniSizeMap as e}from"../../theme/config.js";import"../../theme/index.js";import t from"../button/button.js";import{usePopconfirmContext as n}from"./context.js";import{computed as r,createBlock as i,createTextVNode as a,createVNode as o,defineComponent as s,mergeProps as c,openBlock as l,renderSlot as u,toDisplayString as d,unref as f,withCtx as p}from"vue";import{useOmitProps as m}from"@soybeanjs/headless/composables";import{PopoverClose as h}from"@soybeanjs/headless/popover";const g=s({name:`SPopconfirmConfirm`,__name:`popconfirm-confirm`,props:{text:{},beforeClose:{type:Function},class:{type:[Boolean,null,String,Object,Array]},color:{},size:{},variant:{},shape:{},shadow:{},fitContent:{type:Boolean},type:{},disabled:{type:Boolean},asChild:{type:Boolean},as:{}},emits:[`close`],setup(s,{emit:g}){let _=s,v=g,y=m(_,[`text`,`beforeClose`]),{size:b,confirmText:x,confirmProps:S,beforeConfirm:C,onClose:w}=n(`PopconfirmConfirm`),T=r(()=>({...S.value,...y.value})),E=r(()=>_.text??x.value??`Confirm`),D=r(()=>_.size??e[b.value??`md`]),O=()=>{v(`close`),w()};return(e,n)=>(l(),i(f(h),{"as-child":``,"before-close":s.beforeClose??f(C),onClose:O},{default:p(()=>[o(t,c(T.value,{size:D.value}),{default:p(()=>[u(e.$slots,`default`,{},()=>[a(d(E.value),1)])]),_:3},16,[`size`])]),_:3},8,[`before-close`]))}});export{g as default};
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../icon/icon.js";import{providePopconfirmContext as n}from"./context.js";import{popconfirmVariants as r}from"./variants.js";import i from"./popconfirm-cancel.js";import a from"./popconfirm-confirm.js";import{computed 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,renderSlot as y,toDisplayString as b,toHandlers as x,unref as S,useSlots as C,withCtx as w}from"vue";import{useForwardListeners as T,usePickProps as E}from"@soybeanjs/headless/composables";import{transformPropsToContext as D}from"@soybeanjs/headless/shared";import{PopoverArrow as O,PopoverClose as k,PopoverPopup as A,PopoverPortal as j,PopoverPositioner as M,PopoverRoot as N,PopoverTrigger as P,providePopoverUi as F}from"@soybeanjs/headless/popover";const I=p({name:`SPopconfirm`,__name:`popconfirm`,props:{class:{},size:{},ui:{},type:{},placement:{},title:{},description:{},content:{},showArrow:{type:Boolean,default:!0},showIcon:{type:Boolean,default:!0},confirmText:{},cancelText:{},showCancel:{type:[String,Boolean],default:`onlyWarning`},beforeCancel:{},beforeConfirm:{},confirmProps:{},cancelProps:{},positionerProps:{},popupProps:{},triggerProps:{},closeProps:{},portalProps:{},arrowProps:{},headerProps:{},titleProps:{},descriptionProps:{},contentProps:{},footerProps:{},disabled:{type:Boolean},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!1},modal:{type:Boolean,default:!1}},emits:[`update:open`,`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`,`close`],setup(p,{emit:I}){let L=p,R=I,z=C(),B=E(L,[`defaultOpen`,`open`,`modal`]),V=T(R),H=o(()=>e(r({size:L.size}),L.ui,{popup:L.class})),U={destructive:{icon:`lucide:circle-x`,class:`text-destructive`},success:{icon:`lucide:circle-check`,class:`text-success`},warning:{icon:`lucide:circle-alert`,class:`text-warning`},info:{icon:`lucide:info`,class:`text-info`}},W=o(()=>L.type?U[L.type]:null),G=o(()=>({placement:L.placement,...L.positionerProps})),K=o(()=>typeof L.showCancel==`boolean`?L.showCancel:L.type===`warning`),q=()=>{R(`close`)};return F(H),n({...D(L,[`size`,`confirmText`,`cancelText`,`showCancel`,`cancelProps`,`confirmProps`]),beforeConfirm:L.beforeConfirm,beforeCancel:L.beforeCancel,onClose:q}),(e,n)=>(v(),s(S(N),h(S(B),{"onUpdate:open":n[0]||=e=>R(`update:open`,e)}),{default:w(n=>[f(S(P),h(p.triggerProps,{"as-child":``}),{default:w(()=>[y(e.$slots,`trigger`)]),_:3},16),f(S(j),_(m(p.portalProps)),{default:w(()=>[f(S(M),h(G.value,x(S(V))),{default:w(()=>[f(S(A),_(m(p.popupProps)),{default:w(()=>[u(`div`,h(p.headerProps,{class:H.value.header}),[u(`h3`,h(p.titleProps,{class:H.value.title}),[p.showIcon&&W.value?(v(),s(t,{key:0,icon:W.value.icon,class:g(W.value.class)},null,8,[`icon`,`class`])):c(`v-if`,!0),y(e.$slots,`title`,{close:n.close},()=>[d(b(p.title),1)])],16),S(z).description||p.description?(v(),l(`p`,{key:0,class:g(H.value.description)},[y(e.$slots,`description`,{close:n.close},()=>[d(b(p.description),1)])],2)):c(`v-if`,!0)],16),e.$slots.content||p.content?(v(),l(`div`,h({key:0},p.contentProps,{class:H.value.content}),[y(e.$slots,`default`,{close:n.close},()=>[d(b(p.content),1)])],16)):c(`v-if`,!0),u(`div`,{class:g(H.value.footer)},[y(e.$slots,`footer`,{close:n.close},()=>[K.value?(v(),s(i,{key:0})):c(`v-if`,!0),f(a,{text:p.confirmText},null,8,[`text`])])],2),p.showArrow?(v(),s(S(O),_(h({key:1},p.arrowProps)),null,16)):c(`v-if`,!0)]),_:2},1040),e.$slots.close?(v(),s(S(k),{key:0,"as-child":``},{default:w(()=>[y(e.$slots,`close`)]),_:3})):c(`v-if`,!0)]),_:2},1040)]),_:2},1040)]),_:3},16))}});export{I as default};
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../icon/icon.js";import{providePopconfirmContext as n}from"./context.js";import{popconfirmVariants as r}from"./variants.js";import i from"./popconfirm-cancel.js";import a from"./popconfirm-confirm.js";import{computed 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,renderSlot as y,toDisplayString as b,toHandlers as x,unref as S,useSlots as C,withCtx as w}from"vue";import{useForwardListeners as T,usePickProps as E}from"@soybeanjs/headless/composables";import{transformPropsToContext as D}from"@soybeanjs/headless/shared";import{PopoverArrow as O,PopoverClose as k,PopoverPopup as A,PopoverPortal as j,PopoverPositioner as M,PopoverRoot as N,PopoverTrigger as P,providePopoverUi as F}from"@soybeanjs/headless/popover";const I=p({name:`SPopconfirm`,__name:`popconfirm`,props:{class:{type:[Boolean,null,String,Object,Array]},size:{},ui:{},type:{},placement:{},title:{},description:{},content:{},showArrow:{type:Boolean,default:!0},showIcon:{type:Boolean,default:!0},confirmText:{},cancelText:{},showCancel:{type:[String,Boolean],default:`onlyWarning`},beforeCancel:{},beforeConfirm:{},confirmProps:{},cancelProps:{},positionerProps:{},popupProps:{},triggerProps:{},closeProps:{},portalProps:{},arrowProps:{},headerProps:{},titleProps:{},descriptionProps:{},contentProps:{},footerProps:{},disabled:{type:Boolean},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!1},modal:{type:Boolean,default:!1}},emits:[`update:open`,`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`,`close`],setup(p,{emit:I}){let L=p,R=I,z=C(),B=E(L,[`defaultOpen`,`open`,`modal`]),V=T(R),H=o(()=>e(r({size:L.size}),L.ui,{popup:L.class})),U={destructive:{icon:`lucide:circle-x`,class:`text-destructive`},success:{icon:`lucide:circle-check`,class:`text-success`},warning:{icon:`lucide:circle-alert`,class:`text-warning`},info:{icon:`lucide:info`,class:`text-info`}},W=o(()=>L.type?U[L.type]:null),G=o(()=>({placement:L.placement,...L.positionerProps})),K=o(()=>typeof L.showCancel==`boolean`?L.showCancel:L.type===`warning`),q=()=>{R(`close`)};return F(H),n({...D(L,[`size`,`confirmText`,`cancelText`,`showCancel`,`cancelProps`,`confirmProps`]),beforeConfirm:L.beforeConfirm,beforeCancel:L.beforeCancel,onClose:q}),(e,n)=>(v(),s(S(N),h(S(B),{"onUpdate:open":n[0]||=e=>R(`update:open`,e)}),{default:w(n=>[f(S(P),h(p.triggerProps,{"as-child":``}),{default:w(()=>[y(e.$slots,`trigger`)]),_:3},16),f(S(j),_(m(p.portalProps)),{default:w(()=>[f(S(M),h(G.value,x(S(V))),{default:w(()=>[f(S(A),_(m(p.popupProps)),{default:w(()=>[u(`div`,h(p.headerProps,{class:H.value.header}),[u(`h3`,h(p.titleProps,{class:H.value.title}),[p.showIcon&&W.value?(v(),s(t,{key:0,icon:W.value.icon,class:g(W.value.class)},null,8,[`icon`,`class`])):c(`v-if`,!0),y(e.$slots,`title`,{close:n.close},()=>[d(b(p.title),1)])],16),S(z).description||p.description?(v(),l(`p`,{key:0,class:g(H.value.description)},[y(e.$slots,`description`,{close:n.close},()=>[d(b(p.description),1)])],2)):c(`v-if`,!0)],16),e.$slots.content||p.content?(v(),l(`div`,h({key:0},p.contentProps,{class:H.value.content}),[y(e.$slots,`default`,{close:n.close},()=>[d(b(p.content),1)])],16)):c(`v-if`,!0),u(`div`,{class:g(H.value.footer)},[y(e.$slots,`footer`,{close:n.close},()=>[K.value?(v(),s(i,{key:0})):c(`v-if`,!0),f(a,{text:p.confirmText},null,8,[`text`])])],2),p.showArrow?(v(),s(S(O),_(h({key:1},p.arrowProps)),null,16)):c(`v-if`,!0)]),_:2},1040),e.$slots.close?(v(),s(S(k),{key:0,"as-child":``},{default:w(()=>[y(e.$slots,`close`)]),_:3})):c(`v-if`,!0)]),_:2},1040)]),_:2},1040)]),_:3},16))}});export{I as default};
@@ -6,7 +6,7 @@ import { ClassValue, MaybePromise, Placement, PropsToContext, UiClass } from "@s
6
6
 
7
7
  //#region src/components/popconfirm/types.d.ts
8
8
  /**
9
- * Props for the popconfirm confirm component.
9
+ * Properties for the PopconfirmConfirm component.
10
10
  */
11
11
  interface PopconfirmConfirmProps extends ButtonProps {
12
12
  /**
@@ -20,7 +20,7 @@ interface PopconfirmConfirmProps extends ButtonProps {
20
20
  beforeClose?: () => MaybePromise<boolean | void>;
21
21
  }
22
22
  /**
23
- * Emits for the popconfirm confirm component.
23
+ * Events for the PopconfirmConfirm component.
24
24
  */
25
25
  type PopconfirmConfirmEmits = {
26
26
  /**
@@ -29,7 +29,7 @@ type PopconfirmConfirmEmits = {
29
29
  close: [];
30
30
  };
31
31
  /**
32
- * Props for the popconfirm cancel component.
32
+ * Properties for the PopconfirmCancel component.
33
33
  */
34
34
  interface PopconfirmCancelProps extends ButtonProps {
35
35
  /**
@@ -43,7 +43,7 @@ interface PopconfirmCancelProps extends ButtonProps {
43
43
  beforeClose?: () => MaybePromise<boolean | void>;
44
44
  }
45
45
  /**
46
- * Emits for the popconfirm cancel component.
46
+ * Events for the PopconfirmCancel component.
47
47
  */
48
48
  type PopconfirmCancelEmits = {
49
49
  /**
@@ -52,23 +52,23 @@ type PopconfirmCancelEmits = {
52
52
  close: [];
53
53
  };
54
54
  /**
55
- * Props for the popconfirm header component.
55
+ * Properties for the PopconfirmHeader component.
56
56
  */
57
57
  interface PopconfirmHeaderProps extends /** @vue-ignore */HTMLAttributes {}
58
58
  /**
59
- * Props for the popconfirm title component.
59
+ * Properties for the PopconfirmTitle component.
60
60
  */
61
61
  interface PopconfirmTitleProps extends /** @vue-ignore */HTMLAttributes {}
62
62
  /**
63
- * Props for the popconfirm description component.
63
+ * Properties for the PopconfirmDescription component.
64
64
  */
65
65
  interface PopconfirmDescriptionProps extends /** @vue-ignore */HTMLAttributes {}
66
66
  /**
67
- * Props for the popconfirm content component.
67
+ * Properties for the PopconfirmContent component.
68
68
  */
69
69
  interface PopconfirmContentProps extends /** @vue-ignore */HTMLAttributes {}
70
70
  /**
71
- * Props for the popconfirm footer component.
71
+ * Properties for the PopconfirmFooter component.
72
72
  */
73
73
  interface PopconfirmFooterProps extends /** @vue-ignore */HTMLAttributes {}
74
74
  /**
@@ -77,11 +77,11 @@ interface PopconfirmFooterProps extends /** @vue-ignore */HTMLAttributes {}
77
77
  type PopconfirmType = Extract<ThemeColor, 'destructive' | 'success' | 'warning' | 'info'>;
78
78
  type PopconfirmUiSlot = PopoverUiSlot | 'header' | 'icon' | 'header' | 'title' | 'description' | 'content' | 'footer';
79
79
  /**
80
- * UI class overrides for the popconfirm component.
80
+ * UI class overrides for the Popconfirm component.
81
81
  */
82
82
  type PopconfirmUi = UiClass<PopconfirmUiSlot>;
83
83
  /**
84
- * Props for the popconfirm component.
84
+ * Properties for the Popconfirm component.
85
85
  */
86
86
  interface PopconfirmProps extends PopoverRootProps {
87
87
  /**
@@ -151,60 +151,60 @@ interface PopconfirmProps extends PopoverRootProps {
151
151
  */
152
152
  beforeConfirm?: () => MaybePromise<boolean | void>;
153
153
  /**
154
- * Props forwarded to the confirm element.
154
+ * Properties forwarded to the confirm element.
155
155
  */
156
156
  confirmProps?: PopconfirmConfirmProps;
157
157
  /**
158
- * Props forwarded to the cancel element.
158
+ * Properties forwarded to the cancel element.
159
159
  */
160
160
  cancelProps?: PopconfirmCancelProps;
161
161
  /**
162
- * Props forwarded to the positioner element.
162
+ * Properties forwarded to the positioner element.
163
163
  */
164
164
  positionerProps?: PopoverPositionerProps;
165
165
  /**
166
- * Props forwarded to the popup element.
166
+ * Properties forwarded to the popup element.
167
167
  */
168
168
  popupProps?: PopoverPopupProps;
169
169
  /**
170
- * Props forwarded to the trigger element.
170
+ * Properties forwarded to the trigger element.
171
171
  */
172
172
  triggerProps?: PopoverTriggerProps;
173
173
  /**
174
- * Props forwarded to the close element.
174
+ * Properties forwarded to the close element.
175
175
  */
176
176
  closeProps?: PopoverCloseProps;
177
177
  /**
178
- * Props forwarded to the portal element.
178
+ * Properties forwarded to the portal element.
179
179
  */
180
180
  portalProps?: PopoverPortalProps;
181
181
  /**
182
- * Props forwarded to the arrow element.
182
+ * Properties forwarded to the arrow element.
183
183
  */
184
184
  arrowProps?: PopoverArrowProps;
185
185
  /**
186
- * Props forwarded to the header element.
186
+ * Properties forwarded to the header element.
187
187
  */
188
188
  headerProps?: PopconfirmHeaderProps;
189
189
  /**
190
- * Props forwarded to the title element.
190
+ * Properties forwarded to the title element.
191
191
  */
192
192
  titleProps?: PopconfirmTitleProps;
193
193
  /**
194
- * Props forwarded to the description element.
194
+ * Properties forwarded to the description element.
195
195
  */
196
196
  descriptionProps?: PopconfirmDescriptionProps;
197
197
  /**
198
- * Props forwarded to the content element.
198
+ * Properties forwarded to the content element.
199
199
  */
200
200
  contentProps?: PopconfirmContentProps;
201
201
  /**
202
- * Props forwarded to the footer element.
202
+ * Properties forwarded to the footer element.
203
203
  */
204
204
  footerProps?: PopconfirmFooterProps;
205
205
  }
206
206
  /**
207
- * Emits for the popconfirm component.
207
+ * Events for the Popconfirm component.
208
208
  */
209
209
  type PopconfirmEmits = PopoverRootEmits & PopoverPositionerEmits & {
210
210
  /**
@@ -213,7 +213,7 @@ type PopconfirmEmits = PopoverRootEmits & PopoverPositionerEmits & {
213
213
  close: [];
214
214
  };
215
215
  /**
216
- * Context for the popconfirm component.
216
+ * Context for the Popconfirm component.
217
217
  */
218
218
  interface PopconfirmContext extends PropsToContext<PopconfirmProps, 'size' | 'confirmText' | 'cancelText' | 'showCancel' | 'confirmProps' | 'cancelProps'> {
219
219
  /**
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{popoverVariants as t}from"./variants.js";import{computed as n,createBlock as r,createCommentVNode as i,createVNode as a,defineComponent as o,guardReactiveProps as s,mergeProps as c,normalizeProps as l,openBlock as u,renderSlot as d,toHandlers as f,unref as p,withCtx as m}from"vue";import{useForwardListeners as h,usePickProps as g}from"@soybeanjs/headless/composables";import{PopoverArrow as _,PopoverClose as v,PopoverPopup as y,PopoverPortal as b,PopoverPositioner as x,PopoverRoot as S,PopoverTrigger as C,providePopoverUi as w}from"@soybeanjs/headless/popover";const T=o({name:`SPopover`,__name:`popover`,props:{class:{},size:{},ui:{},placement:{},showArrow:{type:Boolean,default:!0},positionerProps:{},popupProps:{},triggerProps:{},closeProps:{},portalProps:{},arrowProps:{},disabled:{type:Boolean},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!1},modal:{type:Boolean}},emits:[`update:open`,`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(o,{emit:T}){let E=o,D=T,O=g(E,[`defaultOpen`,`open`,`modal`]),k=h(D),A=n(()=>e(t({size:E.size}),E.ui,{popup:E.class})),j=n(()=>({...E.positionerProps,placement:E.placement??E.positionerProps?.placement}));return w(A),(e,t)=>(u(),r(p(S),c(p(O),{"onUpdate:open":t[0]||=e=>D(`update:open`,e)}),{default:m(()=>[a(p(C),c(o.triggerProps,{"as-child":``}),{default:m(()=>[d(e.$slots,`trigger`)]),_:3},16),a(p(b),l(s(o.portalProps)),{default:m(()=>[a(p(x),c(j.value,f(p(k))),{default:m(()=>[a(p(y),l(s(o.popupProps)),{default:m(()=>[d(e.$slots,`default`),o.showArrow?(u(),r(p(_),l(c({key:0},o.arrowProps)),null,16)):i(`v-if`,!0)]),_:3},16),e.$slots.close?(u(),r(p(v),c({key:0},o.closeProps,{"as-child":``}),{default:m(()=>[d(e.$slots,`close`)]),_:3},16)):i(`v-if`,!0)]),_:3},16)]),_:3},16)]),_:3},16))}});export{T as default};
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{popoverVariants as t}from"./variants.js";import{computed as n,createBlock as r,createCommentVNode as i,createVNode as a,defineComponent as o,guardReactiveProps as s,mergeProps as c,normalizeProps as l,openBlock as u,renderSlot as d,toHandlers as f,unref as p,withCtx as m}from"vue";import{useForwardListeners as h,usePickProps as g}from"@soybeanjs/headless/composables";import{PopoverArrow as _,PopoverClose as v,PopoverPopup as y,PopoverPortal as b,PopoverPositioner as x,PopoverRoot as S,PopoverTrigger as C,providePopoverUi as w}from"@soybeanjs/headless/popover";const T=o({name:`SPopover`,__name:`popover`,props:{class:{type:[Boolean,null,String,Object,Array]},size:{},ui:{},placement:{},showArrow:{type:Boolean,default:!0},positionerProps:{},popupProps:{},triggerProps:{},closeProps:{},portalProps:{},arrowProps:{},disabled:{type:Boolean},open:{type:Boolean,default:void 0},defaultOpen:{type:Boolean,default:!1},modal:{type:Boolean}},emits:[`update:open`,`escapeKeyDown`,`pointerDownOutside`,`focusOutside`,`interactOutside`,`openAutoFocus`,`closeAutoFocus`],setup(o,{emit:T}){let E=o,D=T,O=g(E,[`defaultOpen`,`open`,`modal`]),k=h(D),A=n(()=>e(t({size:E.size}),E.ui,{popup:E.class})),j=n(()=>({...E.positionerProps,placement:E.placement??E.positionerProps?.placement}));return w(A),(e,t)=>(u(),r(p(S),c(p(O),{"onUpdate:open":t[0]||=e=>D(`update:open`,e)}),{default:m(()=>[a(p(C),c(o.triggerProps,{"as-child":``}),{default:m(()=>[d(e.$slots,`trigger`)]),_:3},16),a(p(b),l(s(o.portalProps)),{default:m(()=>[a(p(x),c(j.value,f(p(k))),{default:m(()=>[a(p(y),l(s(o.popupProps)),{default:m(()=>[d(e.$slots,`default`),o.showArrow?(u(),r(p(_),l(c({key:0},o.arrowProps)),null,16)):i(`v-if`,!0)]),_:3},16),e.$slots.close?(u(),r(p(v),c({key:0},o.closeProps,{"as-child":``}),{default:m(()=>[d(e.$slots,`close`)]),_:3},16)):i(`v-if`,!0)]),_:3},16)]),_:3},16)]),_:3},16))}});export{T as default};
@@ -4,7 +4,7 @@ import { ClassValue, Placement } from "@soybeanjs/headless/types";
4
4
 
5
5
  //#region src/components/popover/types.d.ts
6
6
  /**
7
- * Props for the popover component.
7
+ * Properties for the Popover component.
8
8
  */
9
9
  interface PopoverProps extends PopoverRootProps {
10
10
  /**
@@ -28,32 +28,32 @@ interface PopoverProps extends PopoverRootProps {
28
28
  */
29
29
  showArrow?: boolean;
30
30
  /**
31
- * Props forwarded to the positioner element.
31
+ * Properties forwarded to the positioner element.
32
32
  */
33
33
  positionerProps?: PopoverPositionerProps;
34
34
  /**
35
- * Props forwarded to the popup element.
35
+ * Properties forwarded to the popup element.
36
36
  */
37
37
  popupProps?: PopoverPopupProps;
38
38
  /**
39
- * Props forwarded to the trigger element.
39
+ * Properties forwarded to the trigger element.
40
40
  */
41
41
  triggerProps?: PopoverTriggerProps;
42
42
  /**
43
- * Props forwarded to the close element.
43
+ * Properties forwarded to the close element.
44
44
  */
45
45
  closeProps?: PopoverCloseProps;
46
46
  /**
47
- * Props forwarded to the portal element.
47
+ * Properties forwarded to the portal element.
48
48
  */
49
49
  portalProps?: PopoverPortalProps;
50
50
  /**
51
- * Props forwarded to the arrow element.
51
+ * Properties forwarded to the arrow element.
52
52
  */
53
53
  arrowProps?: PopoverArrowProps;
54
54
  }
55
55
  /**
56
- * Emits for the popover component.
56
+ * Events for the Popover component.
57
57
  */
58
58
  type PopoverEmits = PopoverRootEmits & PopoverPositionerEmits;
59
59
  //#endregion
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{circleProgressVariants as t}from"./variants.js";import{computed as n,createBlock as r,createCommentVNode as i,createElementBlock as a,createVNode as o,defineComponent as s,guardReactiveProps as c,mergeProps as l,normalizeClass as u,normalizeProps as d,openBlock as f,renderSlot as p,toHandlers as m,unref as h,useSlots as g,withCtx as _}from"vue";import{useForwardListeners as v,useOmitProps as y}from"@soybeanjs/headless/composables";import{ProgressCircle as b,ProgressRoot as x,provideProgressUi as S}from"@soybeanjs/headless/progress";const C=s({name:`SProgressCircle`,__name:`progress-circle`,props:{class:{},color:{},size:{},ui:{},strokeWidth:{},dir:{},modelValue:{},max:{},getValueLabel:{type:Function},getValueText:{type:Function},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`update:max`],setup(s,{emit:C}){let w=s,T=C,E=g(),D=y(w,[`class`,`color`,`size`,`ui`,`strokeWidth`]),O=v(T),k=n(()=>e(t({color:w.color,size:w.size}),w.ui,{root:w.class})),A=n(()=>!!E.default);return S(k),(e,t)=>(f(),r(h(x),l(h(D),m(h(O))),{default:_(()=>[o(h(b),{"stroke-width":s.strokeWidth},{default:_(t=>[A.value?(f(),a(`div`,{key:0,class:u(k.value.label)},[p(e.$slots,`default`,d(c(t)))],2)):i(`v-if`,!0)]),_:3},8,[`stroke-width`])]),_:3},16))}});export{C as default};
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{circleProgressVariants as t}from"./variants.js";import{computed as n,createBlock as r,createCommentVNode as i,createElementBlock as a,createVNode as o,defineComponent as s,guardReactiveProps as c,mergeProps as l,normalizeClass as u,normalizeProps as d,openBlock as f,renderSlot as p,toHandlers as m,unref as h,useSlots as g,withCtx as _}from"vue";import{useForwardListeners as v,useOmitProps as y}from"@soybeanjs/headless/composables";import{ProgressCircle as b,ProgressRoot as x,provideProgressUi as S}from"@soybeanjs/headless/progress";const C=s({name:`SProgressCircle`,__name:`progress-circle`,props:{class:{type:[Boolean,null,String,Object,Array]},color:{},size:{},ui:{},strokeWidth:{},dir:{},modelValue:{},max:{},getValueLabel:{type:Function},getValueText:{type:Function},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`update:max`],setup(s,{emit:C}){let w=s,T=C,E=g(),D=y(w,[`class`,`color`,`size`,`ui`,`strokeWidth`]),O=v(T),k=n(()=>e(t({color:w.color,size:w.size}),w.ui,{root:w.class})),A=n(()=>!!E.default);return S(k),(e,t)=>(f(),r(h(x),l(h(D),m(h(O))),{default:_(()=>[o(h(b),{"stroke-width":s.strokeWidth},{default:_(t=>[A.value?(f(),a(`div`,{key:0,class:u(k.value.label)},[p(e.$slots,`default`,d(c(t)))],2)):i(`v-if`,!0)]),_:3},8,[`stroke-width`])]),_:3},16))}});export{C as default};
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{progressVariants as t}from"./variants.js";import{computed as n,createBlock as r,createVNode as i,defineComponent as a,guardReactiveProps as o,mergeProps as s,normalizeProps as c,openBlock as l,renderSlot as u,toHandlers as d,unref as f,withCtx as p}from"vue";import{useForwardListeners as m,useOmitProps as h}from"@soybeanjs/headless/composables";import{ProgressIndicator as g,ProgressRoot as _,provideProgressUi as v}from"@soybeanjs/headless/progress";const y=a({name:`SProgress`,__name:`progress`,props:{class:{},color:{},size:{},ui:{},indicatorProps:{},dir:{},modelValue:{},max:{},getValueLabel:{type:Function},getValueText:{type:Function},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`update:max`],setup(a,{emit:y}){let b=a,x=y,S=h(b,[`class`,`color`,`size`,`ui`,`indicatorProps`]),C=m(x);return v(n(()=>e(t({color:b.color,size:b.size}),b.ui,{root:b.class}))),(e,t)=>(l(),r(f(_),s(f(S),d(f(C))),{default:p(t=>[i(f(g),c(o(a.indicatorProps)),{default:p(()=>[u(e.$slots,`default`,c(o(t)))]),_:2},1040)]),_:3},16))}});export{y as default};
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{progressVariants as t}from"./variants.js";import{computed as n,createBlock as r,createVNode as i,defineComponent as a,guardReactiveProps as o,mergeProps as s,normalizeProps as c,openBlock as l,renderSlot as u,toHandlers as d,unref as f,withCtx as p}from"vue";import{useForwardListeners as m,useOmitProps as h}from"@soybeanjs/headless/composables";import{ProgressIndicator as g,ProgressRoot as _,provideProgressUi as v}from"@soybeanjs/headless/progress";const y=a({name:`SProgress`,__name:`progress`,props:{class:{type:[Boolean,null,String,Object,Array]},color:{},size:{},ui:{},indicatorProps:{},dir:{},modelValue:{},max:{},getValueLabel:{type:Function},getValueText:{type:Function},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`update:max`],setup(a,{emit:y}){let b=a,x=y,S=h(b,[`class`,`color`,`size`,`ui`,`indicatorProps`]),C=m(x);return v(n(()=>e(t({color:b.color,size:b.size}),b.ui,{root:b.class}))),(e,t)=>(l(),r(f(_),s(f(S),d(f(C))),{default:p(t=>[i(f(g),c(o(a.indicatorProps)),{default:p(()=>[u(e.$slots,`default`,c(o(t)))]),_:2},1040)]),_:3},16))}});export{y as default};
@@ -4,7 +4,7 @@ import { ClassValue } from "@soybeanjs/headless/types";
4
4
 
5
5
  //#region src/components/progress/types.d.ts
6
6
  /**
7
- * Props for the progress component.
7
+ * Properties for the Progress component.
8
8
  */
9
9
  interface ProgressProps extends ProgressRootProps {
10
10
  /**
@@ -24,12 +24,12 @@ interface ProgressProps extends ProgressRootProps {
24
24
  */
25
25
  ui?: Partial<ProgressUi>;
26
26
  /**
27
- * Props forwarded to the indicator element.
27
+ * Properties forwarded to the indicator element.
28
28
  */
29
29
  indicatorProps?: ProgressIndicatorProps;
30
30
  }
31
31
  /**
32
- * Props for the progress circle component.
32
+ * Properties for the ProgressCircle component.
33
33
  */
34
34
  interface ProgressCircleProps extends ProgressRootProps {
35
35
  /**
@@ -54,11 +54,11 @@ interface ProgressCircleProps extends ProgressRootProps {
54
54
  strokeWidth?: number;
55
55
  }
56
56
  /**
57
- * Emits for the progress component.
57
+ * Events for the Progress component.
58
58
  */
59
59
  type ProgressEmits = ProgressRootEmits;
60
60
  /**
61
- * Emits for the progress circle component.
61
+ * Events for the ProgressCircle component.
62
62
  */
63
63
  type ProgressCircleEmits = ProgressRootEmits;
64
64
  //#endregion
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{radioCardGroupVariants as t}from"./variants.js";import n from"./radio-card.js";import{Fragment as r,computed as i,createBlock as a,createElementBlock as o,defineComponent as s,mergeProps as c,openBlock as l,renderList as u,unref as d,withCtx as f}from"vue";import{useOmitProps as p}from"@soybeanjs/headless/composables";import{RadioGroupRoot as m,provideRadioGroupUi as h}from"@soybeanjs/headless/radio-group";const g=s({name:`SRadioCardGroup`,__name:`radio-card-group`,props:{ui:{},items:{},class:{},variant:{},color:{},size:{},itemProps:{},controlProps:{},indicatorProps:{},labelProps:{},modelValue:{},defaultValue:{},disabled:{type:Boolean},orientation:{},dir:{},loop:{type:Boolean},name:{},required:{type:Boolean}},emits:[`update:modelValue`],setup(s,{emit:g}){let _=s,v=g,y=p(_,[`class`,`ui`,`variant`,`color`,`size`,`items`,`itemProps`,`controlProps`,`indicatorProps`,`labelProps`]),b=i(()=>e(t({variant:_.variant,color:_.color,size:_.size}),_.ui,{root:_.class}));return h(b),(e,t)=>(l(),a(d(m),c(d(y),{"onUpdate:modelValue":t[0]||=e=>v(`update:modelValue`,e)}),{default:f(()=>[(l(!0),o(r,null,u(s.items,e=>(l(),a(n,c({key:String(e.value)},{ref_for:!0},s.itemProps,{ui:b.value,variant:s.variant,size:s.size,value:e.value,label:e.label,disabled:s.disabled||e.disabled,icon:e.icon,description:e.description,"control-props":s.controlProps,"indicator-props":s.indicatorProps,"label-props":s.labelProps}),null,16,[`ui`,`variant`,`size`,`value`,`label`,`disabled`,`icon`,`description`,`control-props`,`indicator-props`,`label-props`]))),128))]),_:1},16))}});export{g as default};
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{radioCardGroupVariants as t}from"./variants.js";import n from"./radio-card.js";import{Fragment as r,computed as i,createBlock as a,createElementBlock as o,defineComponent as s,mergeProps as c,openBlock as l,renderList as u,unref as d,withCtx as f}from"vue";import{useOmitProps as p}from"@soybeanjs/headless/composables";import{RadioGroupRoot as m,provideRadioGroupUi as h}from"@soybeanjs/headless/radio-group";const g=s({name:`SRadioCardGroup`,__name:`radio-card-group`,props:{ui:{},items:{},class:{type:[Boolean,null,String,Object,Array]},variant:{},color:{},size:{},itemProps:{},controlProps:{},indicatorProps:{},labelProps:{},modelValue:{},defaultValue:{},disabled:{type:Boolean},orientation:{},dir:{},loop:{type:Boolean},name:{},required:{type:Boolean}},emits:[`update:modelValue`],setup(s,{emit:g}){let _=s,v=g,y=p(_,[`class`,`ui`,`variant`,`color`,`size`,`items`,`itemProps`,`controlProps`,`indicatorProps`,`labelProps`]),b=i(()=>e(t({variant:_.variant,color:_.color,size:_.size}),_.ui,{root:_.class}));return h(b),(e,t)=>(l(),a(d(m),c(d(y),{"onUpdate:modelValue":t[0]||=e=>v(`update:modelValue`,e)}),{default:f(()=>[(l(!0),o(r,null,u(s.items,e=>(l(),a(n,c({key:String(e.value)},{ref_for:!0},s.itemProps,{ui:b.value,variant:s.variant,size:s.size,value:e.value,label:e.label,disabled:s.disabled||e.disabled,icon:e.icon,description:e.description,"control-props":s.controlProps,"indicator-props":s.indicatorProps,"label-props":s.labelProps}),null,16,[`ui`,`variant`,`size`,`value`,`label`,`disabled`,`icon`,`description`,`control-props`,`indicator-props`,`label-props`]))),128))]),_:1},16))}});export{g as default};
@@ -1 +1 @@
1
- import e from"../icon/icon.js";import{Transition as t,computed as n,createBlock as r,createCommentVNode as i,createElementBlock as a,createElementVNode as o,createTextVNode as s,createVNode as c,defineComponent as l,guardReactiveProps as u,mergeProps as d,normalizeClass as f,normalizeProps as p,openBlock as m,renderSlot as h,toDisplayString as g,unref as _,useId as v,useSlots as y,withCtx as b}from"vue";import{useOmitProps as x}from"@soybeanjs/headless/composables";import{Slot as S}from"@soybeanjs/headless/slot";import{RadioGroupControl as C,RadioGroupIndicator as w,RadioGroupItem as T,RadioGroupLabel as E}from"@soybeanjs/headless/radio-group";const D={key:0},O=l({name:`SRadioCard`,__name:`radio-card`,props:{ui:{},icon:{},description:{},label:{},controlProps:{},indicatorProps:{},labelProps:{},value:{type:[String,Number,Boolean]},disabled:{type:Boolean},name:{},required:{type:Boolean}},setup(l){let O=l,k=y(),A=x(O,[`ui`,`icon`,`description`,`controlProps`,`indicatorProps`,`labelProps`]),j=v(),M=n(()=>O.id||`radio-${j}`);return(n,v)=>(m(),r(_(T),p(u(_(A))),{default:b(()=>[o(`div`,{class:f(l.ui?.content)},[c(e,{icon:l.icon,class:f(l.ui?.icon)},null,8,[`icon`,`class`]),o(`div`,{class:f(l.ui?.textContent)},[c(_(E),d(l.labelProps,{for:M.value}),{default:b(()=>[h(n.$slots,`default`,{id:M.value},()=>[s(g(l.label),1)])]),_:3},16,[`for`]),_(k).description||l.description?(m(),r(_(S),{key:0,class:f(l.ui?.description)},{default:b(()=>[h(n.$slots,`description`,{},()=>[l.description?(m(),a(`p`,D,g(l.description),1)):i(`v-if`,!0)])]),_:3},8,[`class`])):i(`v-if`,!0)],2)],2),c(_(C),d(l.controlProps,{id:M.value}),{default:b(()=>[c(t,{"enter-active-class":`transition`,"enter-from-class":`opacity-0 scale-0`},{default:b(()=>[c(_(w),p(u(l.indicatorProps)),null,16)]),_:1})]),_:1},16,[`id`])]),_:3},16))}});export{O as default};
1
+ import e from"../icon/icon.js";import{Transition as t,computed as n,createBlock as r,createCommentVNode as i,createElementBlock as a,createElementVNode as o,createTextVNode as s,createVNode as c,defineComponent as l,guardReactiveProps as u,mergeProps as d,normalizeClass as f,normalizeProps as p,openBlock as m,renderSlot as h,toDisplayString as g,unref as _,useId as v,useSlots as y,withCtx as b}from"vue";import{useOmitProps as x}from"@soybeanjs/headless/composables";import{RadioGroupControl as S,RadioGroupIndicator as C,RadioGroupItem as w,RadioGroupLabel as T}from"@soybeanjs/headless/radio-group";import{Slot as E}from"@soybeanjs/headless/slot";const D={key:0},O=l({name:`SRadioCard`,__name:`radio-card`,props:{ui:{},icon:{},description:{},label:{},controlProps:{},indicatorProps:{},labelProps:{},value:{type:[String,Number,Boolean]},disabled:{type:Boolean},name:{},required:{type:Boolean}},setup(l){let O=l,k=y(),A=x(O,[`ui`,`icon`,`description`,`controlProps`,`indicatorProps`,`labelProps`]),j=v(),M=n(()=>O.id||`radio-${j}`);return(n,v)=>(m(),r(_(w),p(u(_(A))),{default:b(()=>[o(`div`,{class:f(l.ui?.content)},[c(e,{icon:l.icon,class:f(l.ui?.icon)},null,8,[`icon`,`class`]),o(`div`,{class:f(l.ui?.textContent)},[c(_(T),d(l.labelProps,{for:M.value}),{default:b(()=>[h(n.$slots,`default`,{id:M.value},()=>[s(g(l.label),1)])]),_:3},16,[`for`]),_(k).description||l.description?(m(),r(_(E),{key:0,class:f(l.ui?.description)},{default:b(()=>[h(n.$slots,`description`,{},()=>[l.description?(m(),a(`p`,D,g(l.description),1)):i(`v-if`,!0)])]),_:3},8,[`class`])):i(`v-if`,!0)],2)],2),c(_(S),d(l.controlProps,{id:M.value}),{default:b(()=>[c(t,{"enter-active-class":`transition`,"enter-from-class":`opacity-0 scale-0`},{default:b(()=>[c(_(C),p(u(l.indicatorProps)),null,16)]),_:1})]),_:1},16,[`id`])]),_:3},16))}});export{O as default};
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{radioGroupVariants as t}from"./variants.js";import{Fragment as n,computed as r,createCommentVNode as i,createElementBlock as a,createVNode as o,defineComponent as s,mergeProps as c,openBlock as l,unref as u}from"vue";import{useOmitProps as d}from"@soybeanjs/headless/composables";import{RadioGroupCompact as f,provideRadioGroupUi as p}from"@soybeanjs/headless/radio-group";const m=s({name:`SRadioGroup`,__name:`radio-group`,props:{class:{},ui:{},variant:{},color:{},size:{},items:{},itemProps:{},controlProps:{},indicatorProps:{},labelProps:{},modelValue:{},defaultValue:{},disabled:{type:Boolean},orientation:{},dir:{},loop:{type:Boolean},name:{},required:{type:Boolean}},emits:[`update:modelValue`],setup(s,{emit:m}){let h=s,g=m,_=d(h,[`class`,`ui`,`variant`,`color`,`size`]),v=r(()=>h.items),y=e=>{g(`update:modelValue`,e)};return p(r(()=>e(t({variant:h.variant,color:h.color,size:h.size}),h.ui,{root:h.class}))),(e,t)=>(l(),a(n,null,[i(` @vue-ignore generic props are validated by RadioGroupProps/RadioGroupCompactProps `),o(u(f),c(u(_),{items:v.value,"onUpdate:modelValue":y}),null,16,[`items`])],2112))}});export{m as default};
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import{radioGroupVariants as t}from"./variants.js";import{Fragment as n,computed as r,createCommentVNode as i,createElementBlock as a,createVNode as o,defineComponent as s,mergeProps as c,openBlock as l,unref as u}from"vue";import{useOmitProps as d}from"@soybeanjs/headless/composables";import{RadioGroupCompact as f,provideRadioGroupUi as p}from"@soybeanjs/headless/radio-group";const m=s({name:`SRadioGroup`,__name:`radio-group`,props:{class:{type:[Boolean,null,String,Object,Array]},ui:{},variant:{},color:{},size:{},items:{},itemProps:{},controlProps:{},indicatorProps:{},labelProps:{},modelValue:{},defaultValue:{},disabled:{type:Boolean},orientation:{},dir:{},loop:{type:Boolean},name:{},required:{type:Boolean}},emits:[`update:modelValue`],setup(s,{emit:m}){let h=s,g=m,_=d(h,[`class`,`ui`,`variant`,`color`,`size`]),v=r(()=>h.items),y=e=>{g(`update:modelValue`,e)};return p(r(()=>e(t({variant:h.variant,color:h.color,size:h.size}),h.ui,{root:h.class}))),(e,t)=>(l(),a(n,null,[i(` @vue-ignore generic props are validated by RadioGroupProps/RadioGroupCompactProps `),o(u(f),c(u(_),{items:v.value,"onUpdate:modelValue":y}),null,16,[`items`])],2112))}});export{m as default};
@@ -5,7 +5,7 @@ import { AcceptableBooleanValue, ClassValue } from "@soybeanjs/headless/types";
5
5
 
6
6
  //#region src/components/radio-group/types.d.ts
7
7
  /**
8
- * Props for the radio component.
8
+ * Properties for the Radio component.
9
9
  */
10
10
  interface RadioProps extends RadioGroupItemProps {
11
11
  /**
@@ -13,20 +13,20 @@ interface RadioProps extends RadioGroupItemProps {
13
13
  */
14
14
  label?: string;
15
15
  /**
16
- * Props forwarded to the control element.
16
+ * Properties forwarded to the control element.
17
17
  */
18
18
  controlProps?: RadioGroupControlProps;
19
19
  /**
20
- * Props forwarded to the indicator element.
20
+ * Properties forwarded to the indicator element.
21
21
  */
22
22
  indicatorProps?: RadioGroupIndicatorProps;
23
23
  /**
24
- * Props forwarded to the label element.
24
+ * Properties forwarded to the label element.
25
25
  */
26
26
  labelProps?: RadioGroupLabelProps;
27
27
  }
28
28
  /**
29
- * Props for the radio group component.
29
+ * Properties for the RadioGroup component.
30
30
  */
31
31
  interface RadioGroupProps<T extends AcceptableBooleanValue = AcceptableBooleanValue, S extends RadioGroupOptionData<T> = RadioGroupOptionData<T>> extends RadioGroupCompactProps<T, S> {
32
32
  /**
@@ -51,19 +51,19 @@ interface RadioGroupProps<T extends AcceptableBooleanValue = AcceptableBooleanVa
51
51
  size?: ThemeSize;
52
52
  }
53
53
  /**
54
- * Emits for the radio group component.
54
+ * Events for the RadioGroup component.
55
55
  */
56
56
  type RadioGroupEmits<T extends AcceptableBooleanValue = AcceptableBooleanValue> = RadioGroupCompactEmits<T>;
57
57
  /**
58
- * Available UI slots for the radio group component.
58
+ * Available UI slots for the RadioGroupCard component.
59
59
  */
60
60
  type RadioGroupCardUiSlot = 'content' | 'textContent' | 'icon' | 'description';
61
61
  /**
62
- * UI class overrides for the radio group component.
62
+ * UI class overrides for the RadioGroupCard component.
63
63
  */
64
64
  type RadioGroupCardUi = RadioGroupUi & Record<RadioGroupCardUiSlot, ClassValue>;
65
65
  /**
66
- * Props for the radio card component.
66
+ * Properties for the RadioCard component.
67
67
  */
68
68
  interface RadioCardProps extends RadioProps {
69
69
  /**
@@ -80,7 +80,7 @@ interface RadioCardProps extends RadioProps {
80
80
  description?: string;
81
81
  }
82
82
  /**
83
- * Option data for the radio card group component.
83
+ * Option data for the RadioCardGroup component.
84
84
  */
85
85
  interface RadioCardGroupOptionData<T extends AcceptableBooleanValue = AcceptableBooleanValue> extends RadioGroupOptionData<T> {
86
86
  /**
@@ -93,7 +93,7 @@ interface RadioCardGroupOptionData<T extends AcceptableBooleanValue = Acceptable
93
93
  description?: string;
94
94
  }
95
95
  /**
96
- * Props for the radio card group component.
96
+ * Properties for the RadioCardGroup component.
97
97
  */
98
98
  interface RadioCardGroupProps<T extends AcceptableBooleanValue = AcceptableBooleanValue, S extends RadioCardGroupOptionData<T> = RadioCardGroupOptionData<T>> extends RadioGroupProps<T, S> {
99
99
  /**
@@ -106,7 +106,7 @@ interface RadioCardGroupProps<T extends AcceptableBooleanValue = AcceptableBoole
106
106
  items: S[];
107
107
  }
108
108
  /**
109
- * Emits for the radio group card component.
109
+ * Events for the RadioGroupCard component.
110
110
  */
111
111
  type RadioGroupCardEmits<T extends AcceptableBooleanValue = AcceptableBooleanValue> = RadioGroupEmits<T>;
112
112
  //#endregion
@@ -1 +1 @@
1
- import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../icon/icon.js";import{rangeCalendarVariants as n}from"./variants.js";import{computed as r,createBlock as i,createTextVNode as a,createVNode as o,defineComponent as s,guardReactiveProps as c,mergeProps as l,normalizeProps as u,openBlock as d,renderSlot as f,toDisplayString as p,toHandlers as m,unref as h,withCtx as g}from"vue";import{useForwardListeners as _,useOmitProps as v}from"@soybeanjs/headless/composables";import{RangeCalendarCompact as y,provideRangeCalendarUi as b}from"@soybeanjs/headless/range-calendar";const x=s({name:`SRangeCalendar`,__name:`range-calendar`,props:{class:{},size:{},ui:{},headerProps:{},headingProps:{},prevProps:{},nextProps:{},gridProps:{},gridHeadProps:{},gridBodyProps:{},gridRowProps:{},headCellProps:{},cellProps:{},cellTriggerProps:{},defaultValue:{},defaultPlaceholder:{},placeholder:{},modelValue:{},allowNonContiguousRanges:{type:Boolean},pagedNavigation:{type:Boolean},preventDeselect:{type:Boolean},maximumDays:{},weekStartsOn:{},weekdayFormat:{},calendarLabel:{},fixedWeeks:{type:Boolean},maxValue:{},minValue:{},locale:{},numberOfMonths:{},disabled:{type:Boolean},readonly:{type:Boolean},initialFocus:{type:Boolean},isDateDisabled:{type:Function},isDateUnavailable:{type:Function},isDateHighlightable:{type:Function},dir:{},nextPage:{type:Function},prevPage:{type:Function},disableDaysOutsideCurrentView:{type:Boolean},fixedDate:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`update:placeholder`,`update:startValue`],setup(s,{emit:x}){let S=s,C=x,w=v(S,[`cellProps`,`cellTriggerProps`,`class`,`gridBodyProps`,`gridHeadProps`,`gridProps`,`gridRowProps`,`headCellProps`,`headerProps`,`headingProps`,`nextProps`,`prevProps`,`size`,`ui`]),T=_(C);return b(r(()=>e(n({size:S.size}),S.ui,{root:S.class}))),(e,n)=>(d(),i(h(y),l({...h(w),cellProps:s.cellProps,cellTriggerProps:s.cellTriggerProps,gridBodyProps:s.gridBodyProps,gridHeadProps:s.gridHeadProps,gridProps:s.gridProps,gridRowProps:s.gridRowProps,headCellProps:s.headCellProps,headerProps:s.headerProps,headingProps:s.headingProps,nextProps:s.nextProps,prevProps:s.prevProps},m(h(T))),{prev:g(n=>[f(e.$slots,`prev`,u(c(n)),()=>[o(t,{class:`size-4 rtl:rotate-180`,icon:`lucide:chevron-left`})])]),heading:g(t=>[f(e.$slots,`heading`,u(c(t)),()=>[a(p(t.headingValue),1)])]),next:g(n=>[f(e.$slots,`next`,u(c(n)),()=>[o(t,{class:`size-4 rtl:rotate-180`,icon:`lucide:chevron-right`})])]),"head-cell":g(t=>[f(e.$slots,`head-cell`,u(c(t)),()=>[a(p(t.label),1)])]),day:g(t=>[f(e.$slots,`day`,u(c(t)),()=>[a(p(t.dayValue),1)])]),default:g(t=>[f(e.$slots,`default`,u(c(t)))]),_:3},16))}});export{x as default};
1
+ import{mergeSlotVariants as e}from"../../theme/shared.js";import"../../theme/index.js";import t from"../icon/icon.js";import{rangeCalendarVariants as n}from"./variants.js";import{computed as r,createBlock as i,createTextVNode as a,createVNode as o,defineComponent as s,guardReactiveProps as c,mergeProps as l,normalizeProps as u,openBlock as d,renderSlot as f,toDisplayString as p,toHandlers as m,unref as h,withCtx as g}from"vue";import{useForwardListeners as _,useOmitProps as v}from"@soybeanjs/headless/composables";import{RangeCalendarCompact as y,provideRangeCalendarUi as b}from"@soybeanjs/headless/range-calendar";const x=s({name:`SRangeCalendar`,__name:`range-calendar`,props:{class:{type:[Boolean,null,String,Object,Array]},size:{},ui:{},headerProps:{},headingProps:{},prevProps:{},nextProps:{},gridProps:{},gridHeadProps:{},gridBodyProps:{},gridRowProps:{},headCellProps:{},cellProps:{},cellTriggerProps:{},defaultValue:{},defaultPlaceholder:{},placeholder:{},modelValue:{},allowNonContiguousRanges:{type:Boolean},pagedNavigation:{type:Boolean},preventDeselect:{type:Boolean},maximumDays:{},weekStartsOn:{},weekdayFormat:{},calendarLabel:{},fixedWeeks:{type:Boolean},maxValue:{},minValue:{},locale:{},numberOfMonths:{},disabled:{type:Boolean},readonly:{type:Boolean},initialFocus:{type:Boolean},isDateDisabled:{type:Function},isDateUnavailable:{type:Function},isDateHighlightable:{type:Function},dir:{},nextPage:{type:Function},prevPage:{type:Function},disableDaysOutsideCurrentView:{type:Boolean},fixedDate:{},asChild:{type:Boolean},as:{}},emits:[`update:modelValue`,`update:placeholder`,`update:startValue`],setup(s,{emit:x}){let S=s,C=x,w=v(S,[`cellProps`,`cellTriggerProps`,`class`,`gridBodyProps`,`gridHeadProps`,`gridProps`,`gridRowProps`,`headCellProps`,`headerProps`,`headingProps`,`nextProps`,`prevProps`,`size`,`ui`]),T=_(C);return b(r(()=>e(n({size:S.size}),S.ui,{root:S.class}))),(e,n)=>(d(),i(h(y),l({...h(w),cellProps:s.cellProps,cellTriggerProps:s.cellTriggerProps,gridBodyProps:s.gridBodyProps,gridHeadProps:s.gridHeadProps,gridProps:s.gridProps,gridRowProps:s.gridRowProps,headCellProps:s.headCellProps,headerProps:s.headerProps,headingProps:s.headingProps,nextProps:s.nextProps,prevProps:s.prevProps},m(h(T))),{prev:g(n=>[f(e.$slots,`prev`,u(c(n)),()=>[o(t,{class:`size-4 rtl:rotate-180`,icon:`lucide:chevron-left`})])]),heading:g(t=>[f(e.$slots,`heading`,u(c(t)),()=>[a(p(t.headingValue),1)])]),next:g(n=>[f(e.$slots,`next`,u(c(n)),()=>[o(t,{class:`size-4 rtl:rotate-180`,icon:`lucide:chevron-right`})])]),"head-cell":g(t=>[f(e.$slots,`head-cell`,u(c(t)),()=>[a(p(t.label),1)])]),day:g(t=>[f(e.$slots,`day`,u(c(t)),()=>[a(p(t.dayValue),1)])]),default:g(t=>[f(e.$slots,`default`,u(c(t)))]),_:3},16))}});export{x as default};