@auronui/vue 1.3.0 → 1.4.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 (285) hide show
  1. package/ai-rules.md +139 -1
  2. package/dist/cjs/index.cjs +1815 -932
  3. package/dist/cjs/index.cjs.map +1 -1
  4. package/dist/components/_shared/FieldLabel.js +7 -0
  5. package/dist/components/_shared/FieldLabel.js.map +1 -0
  6. package/dist/components/_shared/FieldLabel.vue_vue_type_script_setup_true_lang.js +38 -0
  7. package/dist/components/_shared/FieldLabel.vue_vue_type_script_setup_true_lang.js.map +1 -0
  8. package/dist/components/_shared/FormFieldHelper.js +7 -0
  9. package/dist/components/_shared/FormFieldHelper.js.map +1 -0
  10. package/dist/components/_shared/FormFieldHelper.vue_vue_type_script_setup_true_lang.js +59 -0
  11. package/dist/components/_shared/FormFieldHelper.vue_vue_type_script_setup_true_lang.js.map +1 -0
  12. package/dist/components/_shared/TimeScroller.js +7 -0
  13. package/dist/components/_shared/TimeScroller.js.map +1 -0
  14. package/dist/components/{date-time-picker/DateTimePickerTimeScroller.vue_vue_type_script_setup_true_lang.js → _shared/TimeScroller.vue_vue_type_script_setup_true_lang.js} +5 -6
  15. package/dist/components/_shared/TimeScroller.vue_vue_type_script_setup_true_lang.js.map +1 -0
  16. package/dist/components/accordion/Accordion.js.map +1 -1
  17. package/dist/components/accordion/Accordion.vue_vue_type_script_setup_true_lang.js +10 -4
  18. package/dist/components/accordion/Accordion.vue_vue_type_script_setup_true_lang.js.map +1 -1
  19. package/dist/components/accordion/AccordionItem.js.map +1 -1
  20. package/dist/components/accordion/AccordionItem.vue_vue_type_script_setup_true_lang.js +11 -2
  21. package/dist/components/accordion/AccordionItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  22. package/dist/components/alert-dialog/AlertDialogAction.js.map +1 -1
  23. package/dist/components/alert-dialog/AlertDialogAction.vue_vue_type_script_setup_true_lang.js.map +1 -1
  24. package/dist/components/alert-dialog/AlertDialogCancel.js.map +1 -1
  25. package/dist/components/alert-dialog/AlertDialogCancel.vue_vue_type_script_setup_true_lang.js.map +1 -1
  26. package/dist/components/autocomplete/Autocomplete.js.map +1 -1
  27. package/dist/components/autocomplete/Autocomplete.vue_vue_type_script_setup_true_lang.js +56 -52
  28. package/dist/components/autocomplete/Autocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
  29. package/dist/components/autocomplete/AutocompleteCreateItem.js.map +1 -1
  30. package/dist/components/autocomplete/AutocompleteCreateItem.vue_vue_type_script_setup_true_lang.js +8 -2
  31. package/dist/components/autocomplete/AutocompleteCreateItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  32. package/dist/components/autocomplete/AutocompleteInput.js.map +1 -1
  33. package/dist/components/autocomplete/AutocompleteInput.vue_vue_type_script_setup_true_lang.js +17 -8
  34. package/dist/components/autocomplete/AutocompleteInput.vue_vue_type_script_setup_true_lang.js.map +1 -1
  35. package/dist/components/autocomplete/AutocompleteItem.js.map +1 -1
  36. package/dist/components/autocomplete/AutocompleteItem.vue_vue_type_script_setup_true_lang.js +4 -2
  37. package/dist/components/autocomplete/AutocompleteItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  38. package/dist/components/avatar/AvatarGroup.js.map +1 -1
  39. package/dist/components/avatar/AvatarGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  40. package/dist/components/button/Button.js.map +1 -1
  41. package/dist/components/button/Button.vue_vue_type_script_setup_true_lang.js +10 -4
  42. package/dist/components/button/Button.vue_vue_type_script_setup_true_lang.js.map +1 -1
  43. package/dist/components/button/ButtonGroup.js.map +1 -1
  44. package/dist/components/button/ButtonGroup.vue_vue_type_script_setup_true_lang.js +10 -4
  45. package/dist/components/button/ButtonGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  46. package/dist/components/button/CloseButton.js.map +1 -1
  47. package/dist/components/button/CloseButton.vue_vue_type_script_setup_true_lang.js +10 -4
  48. package/dist/components/button/CloseButton.vue_vue_type_script_setup_true_lang.js.map +1 -1
  49. package/dist/components/button/ToggleButton.js.map +1 -1
  50. package/dist/components/button/ToggleButton.vue_vue_type_script_setup_true_lang.js +17 -6
  51. package/dist/components/button/ToggleButton.vue_vue_type_script_setup_true_lang.js.map +1 -1
  52. package/dist/components/button/ToggleButtonGroup.js.map +1 -1
  53. package/dist/components/button/ToggleButtonGroup.vue_vue_type_script_setup_true_lang.js +10 -4
  54. package/dist/components/button/ToggleButtonGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  55. package/dist/components/calendar/Calendar.js.map +1 -1
  56. package/dist/components/calendar/Calendar.vue_vue_type_script_setup_true_lang.js +21 -10
  57. package/dist/components/calendar/Calendar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  58. package/dist/components/calendar-year-picker/CalendarYearPicker.js.map +1 -1
  59. package/dist/components/calendar-year-picker/CalendarYearPicker.vue_vue_type_script_setup_true_lang.js +15 -4
  60. package/dist/components/calendar-year-picker/CalendarYearPicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  61. package/dist/components/checkbox/Checkbox.js.map +1 -1
  62. package/dist/components/checkbox/Checkbox.vue_vue_type_script_setup_true_lang.js +16 -5
  63. package/dist/components/checkbox/Checkbox.vue_vue_type_script_setup_true_lang.js.map +1 -1
  64. package/dist/components/checkbox/CheckboxGroup.js.map +1 -1
  65. package/dist/components/checkbox/CheckboxGroup.vue_vue_type_script_setup_true_lang.js +10 -4
  66. package/dist/components/checkbox/CheckboxGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  67. package/dist/components/chip/Chip.js.map +1 -1
  68. package/dist/components/chip/Chip.vue_vue_type_script_setup_true_lang.js.map +1 -1
  69. package/dist/components/collapsible/Collapsible.js.map +1 -1
  70. package/dist/components/collapsible/Collapsible.vue_vue_type_script_setup_true_lang.js +8 -2
  71. package/dist/components/collapsible/Collapsible.vue_vue_type_script_setup_true_lang.js.map +1 -1
  72. package/dist/components/collapsible/CollapsibleGroup.js.map +1 -1
  73. package/dist/components/collapsible/CollapsibleGroup.vue_vue_type_script_setup_true_lang.js +2 -2
  74. package/dist/components/collapsible/CollapsibleGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  75. package/dist/components/color-area/ColorArea.js.map +1 -1
  76. package/dist/components/color-area/ColorArea.vue_vue_type_script_setup_true_lang.js +15 -4
  77. package/dist/components/color-area/ColorArea.vue_vue_type_script_setup_true_lang.js.map +1 -1
  78. package/dist/components/color-field/ColorField.js.map +1 -1
  79. package/dist/components/color-field/ColorField.vue_vue_type_script_setup_true_lang.js +22 -6
  80. package/dist/components/color-field/ColorField.vue_vue_type_script_setup_true_lang.js.map +1 -1
  81. package/dist/components/color-input-group/ColorInputGroup.js.map +1 -1
  82. package/dist/components/color-input-group/ColorInputGroup.vue_vue_type_script_setup_true_lang.js +22 -6
  83. package/dist/components/color-input-group/ColorInputGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  84. package/dist/components/color-picker/ColorPicker.js.map +1 -1
  85. package/dist/components/color-picker/ColorPicker.vue_vue_type_script_setup_true_lang.js +15 -9
  86. package/dist/components/color-picker/ColorPicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  87. package/dist/components/color-slider/ColorSlider.js.map +1 -1
  88. package/dist/components/color-slider/ColorSlider.vue_vue_type_script_setup_true_lang.js +15 -4
  89. package/dist/components/color-slider/ColorSlider.vue_vue_type_script_setup_true_lang.js.map +1 -1
  90. package/dist/components/color-swatch-picker/ColorSwatchPicker.js.map +1 -1
  91. package/dist/components/color-swatch-picker/ColorSwatchPicker.vue_vue_type_script_setup_true_lang.js +15 -4
  92. package/dist/components/color-swatch-picker/ColorSwatchPicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  93. package/dist/components/combo-box/ComboBoxInput.js.map +1 -1
  94. package/dist/components/combo-box/ComboBoxInput.vue_vue_type_script_setup_true_lang.js +7 -1
  95. package/dist/components/combo-box/ComboBoxInput.vue_vue_type_script_setup_true_lang.js.map +1 -1
  96. package/dist/components/combo-box/ComboBoxItem.js.map +1 -1
  97. package/dist/components/combo-box/ComboBoxItem.vue_vue_type_script_setup_true_lang.js +4 -2
  98. package/dist/components/combo-box/ComboBoxItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  99. package/dist/components/context-menu/ContextMenuCheckboxItem.js.map +1 -1
  100. package/dist/components/context-menu/ContextMenuCheckboxItem.vue_vue_type_script_setup_true_lang.js +4 -2
  101. package/dist/components/context-menu/ContextMenuCheckboxItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  102. package/dist/components/context-menu/ContextMenuItem.js.map +1 -1
  103. package/dist/components/context-menu/ContextMenuItem.vue_vue_type_script_setup_true_lang.js +4 -2
  104. package/dist/components/context-menu/ContextMenuItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  105. package/dist/components/context-menu/ContextMenuRadioItem.js.map +1 -1
  106. package/dist/components/context-menu/ContextMenuRadioItem.vue_vue_type_script_setup_true_lang.js +4 -2
  107. package/dist/components/context-menu/ContextMenuRadioItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  108. package/dist/components/context-menu/ContextMenuSubTrigger.js.map +1 -1
  109. package/dist/components/context-menu/ContextMenuSubTrigger.vue_vue_type_script_setup_true_lang.js +4 -2
  110. package/dist/components/context-menu/ContextMenuSubTrigger.vue_vue_type_script_setup_true_lang.js.map +1 -1
  111. package/dist/components/context-menu/ContextMenuTrigger.js.map +1 -1
  112. package/dist/components/context-menu/ContextMenuTrigger.vue_vue_type_script_setup_true_lang.js +7 -1
  113. package/dist/components/context-menu/ContextMenuTrigger.vue_vue_type_script_setup_true_lang.js.map +1 -1
  114. package/dist/components/date-input/DateInput.js.map +1 -1
  115. package/dist/components/date-input/DateInput.vue_vue_type_script_setup_true_lang.js +61 -60
  116. package/dist/components/date-input/DateInput.vue_vue_type_script_setup_true_lang.js.map +1 -1
  117. package/dist/components/date-range-field/DateRangeField.js.map +1 -1
  118. package/dist/components/date-range-field/DateRangeField.vue_vue_type_script_setup_true_lang.js +61 -61
  119. package/dist/components/date-range-field/DateRangeField.vue_vue_type_script_setup_true_lang.js.map +1 -1
  120. package/dist/components/date-time-picker/DateTimePicker.js.map +1 -1
  121. package/dist/components/date-time-picker/DateTimePicker.vue_vue_type_script_setup_true_lang.js +13 -13
  122. package/dist/components/date-time-picker/DateTimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  123. package/dist/components/dropdown/DropdownCheckboxItem.js.map +1 -1
  124. package/dist/components/dropdown/DropdownCheckboxItem.vue_vue_type_script_setup_true_lang.js +4 -2
  125. package/dist/components/dropdown/DropdownCheckboxItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  126. package/dist/components/dropdown/DropdownItem.js.map +1 -1
  127. package/dist/components/dropdown/DropdownItem.vue_vue_type_script_setup_true_lang.js +4 -2
  128. package/dist/components/dropdown/DropdownItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  129. package/dist/components/dropdown/DropdownRadioItem.js.map +1 -1
  130. package/dist/components/dropdown/DropdownRadioItem.vue_vue_type_script_setup_true_lang.js +4 -2
  131. package/dist/components/dropdown/DropdownRadioItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  132. package/dist/components/dropdown/DropdownSubTrigger.js.map +1 -1
  133. package/dist/components/dropdown/DropdownSubTrigger.vue_vue_type_script_setup_true_lang.js +4 -2
  134. package/dist/components/dropdown/DropdownSubTrigger.vue_vue_type_script_setup_true_lang.js.map +1 -1
  135. package/dist/components/dropdown/DropdownTrigger.js.map +1 -1
  136. package/dist/components/dropdown/DropdownTrigger.vue_vue_type_script_setup_true_lang.js +7 -1
  137. package/dist/components/dropdown/DropdownTrigger.vue_vue_type_script_setup_true_lang.js.map +1 -1
  138. package/dist/components/editable/Editable.js.map +1 -1
  139. package/dist/components/editable/Editable.vue_vue_type_script_setup_true_lang.js +28 -6
  140. package/dist/components/editable/Editable.vue_vue_type_script_setup_true_lang.js.map +1 -1
  141. package/dist/components/fieldset/Fieldset.js.map +1 -1
  142. package/dist/components/fieldset/Fieldset.vue_vue_type_script_setup_true_lang.js +8 -2
  143. package/dist/components/fieldset/Fieldset.vue_vue_type_script_setup_true_lang.js.map +1 -1
  144. package/dist/components/input/Input.js.map +1 -1
  145. package/dist/components/input/Input.vue_vue_type_script_setup_true_lang.js +76 -71
  146. package/dist/components/input/Input.vue_vue_type_script_setup_true_lang.js.map +1 -1
  147. package/dist/components/input-otp/InputOTP.js.map +1 -1
  148. package/dist/components/input-otp/InputOTP.vue_vue_type_script_setup_true_lang.js +15 -4
  149. package/dist/components/input-otp/InputOTP.vue_vue_type_script_setup_true_lang.js.map +1 -1
  150. package/dist/components/link/Link.js.map +1 -1
  151. package/dist/components/link/Link.vue_vue_type_script_setup_true_lang.js +8 -2
  152. package/dist/components/link/Link.vue_vue_type_script_setup_true_lang.js.map +1 -1
  153. package/dist/components/list-box/ListBox.js.map +1 -1
  154. package/dist/components/list-box/ListBox.vue_vue_type_script_setup_true_lang.js +7 -1
  155. package/dist/components/list-box/ListBox.vue_vue_type_script_setup_true_lang.js.map +1 -1
  156. package/dist/components/menubar/MenubarCheckboxItem.js.map +1 -1
  157. package/dist/components/menubar/MenubarCheckboxItem.vue_vue_type_script_setup_true_lang.js +4 -2
  158. package/dist/components/menubar/MenubarCheckboxItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  159. package/dist/components/menubar/MenubarItem.js.map +1 -1
  160. package/dist/components/menubar/MenubarItem.vue_vue_type_script_setup_true_lang.js +4 -2
  161. package/dist/components/menubar/MenubarItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  162. package/dist/components/menubar/MenubarRadioItem.js.map +1 -1
  163. package/dist/components/menubar/MenubarRadioItem.vue_vue_type_script_setup_true_lang.js +4 -2
  164. package/dist/components/menubar/MenubarRadioItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  165. package/dist/components/menubar/MenubarSubTrigger.js.map +1 -1
  166. package/dist/components/menubar/MenubarSubTrigger.vue_vue_type_script_setup_true_lang.js +4 -2
  167. package/dist/components/menubar/MenubarSubTrigger.vue_vue_type_script_setup_true_lang.js.map +1 -1
  168. package/dist/components/menubar/MenubarTrigger.js.map +1 -1
  169. package/dist/components/menubar/MenubarTrigger.vue_vue_type_script_setup_true_lang.js +7 -1
  170. package/dist/components/menubar/MenubarTrigger.vue_vue_type_script_setup_true_lang.js.map +1 -1
  171. package/dist/components/meter/Meter.js.map +1 -1
  172. package/dist/components/meter/Meter.vue_vue_type_script_setup_true_lang.js.map +1 -1
  173. package/dist/components/month-picker/MonthPicker.js.map +1 -1
  174. package/dist/components/month-picker/MonthPicker.vue_vue_type_script_setup_true_lang.js +15 -4
  175. package/dist/components/month-picker/MonthPicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  176. package/dist/components/month-range-picker/MonthRangePicker.js.map +1 -1
  177. package/dist/components/month-range-picker/MonthRangePicker.vue_vue_type_script_setup_true_lang.js +15 -4
  178. package/dist/components/month-range-picker/MonthRangePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  179. package/dist/components/navigation-menu/NavigationMenuTrigger.js.map +1 -1
  180. package/dist/components/navigation-menu/NavigationMenuTrigger.vue_vue_type_script_setup_true_lang.js +7 -1
  181. package/dist/components/navigation-menu/NavigationMenuTrigger.vue_vue_type_script_setup_true_lang.js.map +1 -1
  182. package/dist/components/number-field/NumberField.js.map +1 -1
  183. package/dist/components/number-field/NumberField.vue_vue_type_script_setup_true_lang.js +19 -5
  184. package/dist/components/number-field/NumberField.vue_vue_type_script_setup_true_lang.js.map +1 -1
  185. package/dist/components/pagination/Pagination.js.map +1 -1
  186. package/dist/components/pagination/Pagination.vue_vue_type_script_setup_true_lang.js +9 -3
  187. package/dist/components/pagination/Pagination.vue_vue_type_script_setup_true_lang.js.map +1 -1
  188. package/dist/components/popover/PopoverClose.js.map +1 -1
  189. package/dist/components/popover/PopoverClose.vue_vue_type_script_setup_true_lang.js +11 -2
  190. package/dist/components/popover/PopoverClose.vue_vue_type_script_setup_true_lang.js.map +1 -1
  191. package/dist/components/progress-bar/ProgressBar.js.map +1 -1
  192. package/dist/components/progress-bar/ProgressBar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  193. package/dist/components/progress-circle/ProgressCircle.js.map +1 -1
  194. package/dist/components/progress-circle/ProgressCircle.vue_vue_type_script_setup_true_lang.js.map +1 -1
  195. package/dist/components/radio/Radio.js.map +1 -1
  196. package/dist/components/radio/Radio.vue_vue_type_script_setup_true_lang.js +16 -5
  197. package/dist/components/radio/Radio.vue_vue_type_script_setup_true_lang.js.map +1 -1
  198. package/dist/components/radio/RadioGroup.js.map +1 -1
  199. package/dist/components/radio/RadioGroup.vue_vue_type_script_setup_true_lang.js +18 -7
  200. package/dist/components/radio/RadioGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  201. package/dist/components/range-calendar/RangeCalendar.js.map +1 -1
  202. package/dist/components/range-calendar/RangeCalendar.vue_vue_type_script_setup_true_lang.js +19 -8
  203. package/dist/components/range-calendar/RangeCalendar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  204. package/dist/components/select/Select.js.map +1 -1
  205. package/dist/components/select/Select.vue_vue_type_script_setup_true_lang.js +55 -51
  206. package/dist/components/select/Select.vue_vue_type_script_setup_true_lang.js.map +1 -1
  207. package/dist/components/select/SelectItem.js.map +1 -1
  208. package/dist/components/select/SelectItem.vue_vue_type_script_setup_true_lang.js +4 -2
  209. package/dist/components/select/SelectItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  210. package/dist/components/select/SelectTrigger.js.map +1 -1
  211. package/dist/components/select/SelectTrigger.vue_vue_type_script_setup_true_lang.js +18 -9
  212. package/dist/components/select/SelectTrigger.vue_vue_type_script_setup_true_lang.js.map +1 -1
  213. package/dist/components/slider/Slider.js.map +1 -1
  214. package/dist/components/slider/Slider.vue_vue_type_script_setup_true_lang.js +16 -5
  215. package/dist/components/slider/Slider.vue_vue_type_script_setup_true_lang.js.map +1 -1
  216. package/dist/components/splitter/SplitterResizeHandle.js.map +1 -1
  217. package/dist/components/splitter/SplitterResizeHandle.vue_vue_type_script_setup_true_lang.js +8 -2
  218. package/dist/components/splitter/SplitterResizeHandle.vue_vue_type_script_setup_true_lang.js.map +1 -1
  219. package/dist/components/switch/Switch.js.map +1 -1
  220. package/dist/components/switch/Switch.vue_vue_type_script_setup_true_lang.js +16 -5
  221. package/dist/components/switch/Switch.vue_vue_type_script_setup_true_lang.js.map +1 -1
  222. package/dist/components/switch/SwitchGroup.js.map +1 -1
  223. package/dist/components/switch/SwitchGroup.vue_vue_type_script_setup_true_lang.js +10 -4
  224. package/dist/components/switch/SwitchGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  225. package/dist/components/table/Table.js.map +1 -1
  226. package/dist/components/table/Table.vue_vue_type_script_setup_true_lang.js.map +1 -1
  227. package/dist/components/table/TableBody.js.map +1 -1
  228. package/dist/components/table/TableBody.vue_vue_type_script_setup_true_lang.js.map +1 -1
  229. package/dist/components/table/TableCheckboxCell.js.map +1 -1
  230. package/dist/components/table/TableCheckboxCell.vue_vue_type_script_setup_true_lang.js.map +1 -1
  231. package/dist/components/table/TableVirtualBody.js.map +1 -1
  232. package/dist/components/table/TableVirtualBody.vue_vue_type_script_setup_true_lang.js.map +1 -1
  233. package/dist/components/table/table.context.js.map +1 -1
  234. package/dist/components/tabs/Tab.js.map +1 -1
  235. package/dist/components/tabs/Tab.vue_vue_type_script_setup_true_lang.js +11 -2
  236. package/dist/components/tabs/Tab.vue_vue_type_script_setup_true_lang.js.map +1 -1
  237. package/dist/components/tabs/TabList.js.map +1 -1
  238. package/dist/components/tabs/TabList.vue_vue_type_script_setup_true_lang.js +2 -2
  239. package/dist/components/tabs/TabList.vue_vue_type_script_setup_true_lang.js.map +1 -1
  240. package/dist/components/tabs/Tabs.js.map +1 -1
  241. package/dist/components/tabs/Tabs.vue_vue_type_script_setup_true_lang.js +2 -2
  242. package/dist/components/tabs/Tabs.vue_vue_type_script_setup_true_lang.js.map +1 -1
  243. package/dist/components/textarea/Textarea.js.map +1 -1
  244. package/dist/components/textarea/Textarea.vue_vue_type_script_setup_true_lang.js +70 -65
  245. package/dist/components/textarea/Textarea.vue_vue_type_script_setup_true_lang.js.map +1 -1
  246. package/dist/components/time-field/TimeField.js.map +1 -1
  247. package/dist/components/time-field/TimeField.vue_vue_type_script_setup_true_lang.js +61 -60
  248. package/dist/components/time-field/TimeField.vue_vue_type_script_setup_true_lang.js.map +1 -1
  249. package/dist/components/time-picker/TimePicker.js +7 -0
  250. package/dist/components/time-picker/TimePicker.js.map +1 -0
  251. package/dist/components/time-picker/TimePicker.vue_vue_type_script_setup_true_lang.js +320 -0
  252. package/dist/components/time-picker/TimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -0
  253. package/dist/components/time-range-field/TimeRangeField.js.map +1 -1
  254. package/dist/components/time-range-field/TimeRangeField.vue_vue_type_script_setup_true_lang.js +61 -61
  255. package/dist/components/time-range-field/TimeRangeField.vue_vue_type_script_setup_true_lang.js.map +1 -1
  256. package/dist/components/toolbar/ToolbarButton.js.map +1 -1
  257. package/dist/components/toolbar/ToolbarButton.vue_vue_type_script_setup_true_lang.js +11 -2
  258. package/dist/components/toolbar/ToolbarButton.vue_vue_type_script_setup_true_lang.js.map +1 -1
  259. package/dist/components/toolbar/ToolbarToggleGroup.js.map +1 -1
  260. package/dist/components/toolbar/ToolbarToggleGroup.vue_vue_type_script_setup_true_lang.js +23 -6
  261. package/dist/components/toolbar/ToolbarToggleGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  262. package/dist/components/toolbar/ToolbarToggleItem.js.map +1 -1
  263. package/dist/components/toolbar/ToolbarToggleItem.vue_vue_type_script_setup_true_lang.js +11 -2
  264. package/dist/components/toolbar/ToolbarToggleItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  265. package/dist/components/tooltip/TooltipProvider.js.map +1 -1
  266. package/dist/components/tooltip/TooltipProvider.vue_vue_type_script_setup_true_lang.js +8 -2
  267. package/dist/components/tooltip/TooltipProvider.vue_vue_type_script_setup_true_lang.js.map +1 -1
  268. package/dist/components/tree/Tree.js.map +1 -1
  269. package/dist/components/tree/Tree.vue_vue_type_script_setup_true_lang.js +11 -2
  270. package/dist/components/tree/Tree.vue_vue_type_script_setup_true_lang.js.map +1 -1
  271. package/dist/components/year-range-picker/YearRangePicker.js.map +1 -1
  272. package/dist/components/year-range-picker/YearRangePicker.vue_vue_type_script_setup_true_lang.js +15 -4
  273. package/dist/components/year-range-picker/YearRangePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  274. package/dist/composables/useDeprecatedBooleanProp.js +43 -0
  275. package/dist/composables/useDeprecatedBooleanProp.js.map +1 -0
  276. package/dist/composables/useFormField.js +50 -0
  277. package/dist/composables/useFormField.js.map +1 -0
  278. package/dist/index.d.ts +845 -580
  279. package/dist/index.js +2 -1
  280. package/dist/utils/warnDeprecated.js +2 -1
  281. package/dist/utils/warnDeprecated.js.map +1 -1
  282. package/package.json +2 -2
  283. package/dist/components/date-time-picker/DateTimePickerTimeScroller.js +0 -7
  284. package/dist/components/date-time-picker/DateTimePickerTimeScroller.js.map +0 -1
  285. package/dist/components/date-time-picker/DateTimePickerTimeScroller.vue_vue_type_script_setup_true_lang.js.map +0 -1
@@ -1,28 +1,11 @@
1
1
  import { composeClassName } from "../../utils/composeClassName.js";
2
- import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, mergeModels, normalizeClass, onBeforeUnmount, onMounted, openBlock, ref, renderList, renderSlot, toDisplayString, unref, useAttrs, useId, useModel, watch, withCtx } from "vue";
2
+ import { useFormField } from "../../composables/useFormField.js";
3
+ import FieldLabel_default from "../_shared/FieldLabel.js";
4
+ import FormFieldHelper_default from "../_shared/FormFieldHelper.js";
5
+ import { Fragment, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, mergeModels, mergeProps, normalizeClass, onBeforeUnmount, onMounted, openBlock, ref, renderList, renderSlot, toDisplayString, unref, useAttrs, useId, useModel, watch, withCtx } from "vue";
3
6
  import { timeRangeFieldVariants } from "@auronui/styles";
4
7
  import { TimeRangeFieldInput, TimeRangeFieldRoot } from "reka-ui";
5
8
  //#region src/components/time-range-field/TimeRangeField.vue?vue&type=script&setup=true&lang.ts
6
- var _hoisted_1 = [
7
- "data-invalid",
8
- "data-disabled",
9
- "data-readonly",
10
- "data-required",
11
- "data-has-label",
12
- "data-has-helper"
13
- ];
14
- var _hoisted_2 = ["id", "for"];
15
- var _hoisted_3 = {
16
- key: 0,
17
- "aria-hidden": "true"
18
- };
19
- var _hoisted_4 = ["id", "for"];
20
- var _hoisted_5 = {
21
- key: 0,
22
- "aria-hidden": "true"
23
- };
24
- var _hoisted_6 = ["id"];
25
- var _hoisted_7 = ["id"];
26
9
  var TimeRangeField_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
27
10
  inheritAttrs: false,
28
11
  __name: "TimeRangeField",
@@ -92,16 +75,17 @@ var TimeRangeField_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
92
75
  const generatedId = useId();
93
76
  const fieldId = computed(() => attrs.id ?? `${generatedId}-field`);
94
77
  const labelId = computed(() => `${generatedId}-label`);
95
- const descriptionId = computed(() => `${generatedId}-description`);
96
- const errorMessageId = computed(() => `${generatedId}-error`);
97
- const hasLabel = computed(() => !!props.label);
98
78
  const isFilled = computed(() => modelValue.value?.start != null || modelValue.value?.end != null);
99
- const showError = computed(() => props.isInvalid && !!props.errorMessage);
100
- const showDescription = computed(() => !!props.description && !showError.value);
101
- const hasHelper = computed(() => showError.value || showDescription.value);
102
- const ariaDescribedBy = computed(() => {
103
- if (showError.value) return errorMessageId.value;
104
- if (showDescription.value) return descriptionId.value;
79
+ const { descriptionId, errorMessageId, showError, showDescription, hasHelper, ariaDescribedBy, hasLabel, showOutsideLabel, showInsideLabel, rootDataAttrs } = useFormField({
80
+ fieldId: () => fieldId.value,
81
+ label: () => props.label,
82
+ description: () => props.description,
83
+ errorMessage: () => props.errorMessage,
84
+ isInvalid: () => props.isInvalid,
85
+ isDisabled: () => props.isDisabled,
86
+ isReadOnly: () => props.isReadOnly,
87
+ isRequired: () => props.isRequired,
88
+ labelPlacement: () => props.labelPlacement
105
89
  });
106
90
  const fieldRef = ref(null);
107
91
  const fieldEl = computed(() => {
@@ -206,24 +190,21 @@ var TimeRangeField_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
206
190
  hasLabel: hasLabel.value,
207
191
  labelPlacement: props.labelPlacement
208
192
  }));
209
- const showOutsideLabel = computed(() => hasLabel.value && props.labelPlacement !== "inside");
210
- const showInsideLabel = computed(() => hasLabel.value && props.labelPlacement === "inside");
211
193
  return (_ctx, _cache) => {
212
- return openBlock(), createElementBlock("div", {
213
- class: normalizeClass(unref(composeClassName)(slotFns.value.base(), props.class, props.classNames?.base)),
214
- "data-invalid": __props.isInvalid || void 0,
215
- "data-disabled": __props.isDisabled || void 0,
216
- "data-readonly": __props.isReadOnly || void 0,
217
- "data-required": __props.isRequired || void 0,
218
- "data-has-label": hasLabel.value || void 0,
219
- "data-has-helper": hasHelper.value || void 0,
220
- "data-slot": "time-range-field"
221
- }, [showOutsideLabel.value ? (openBlock(), createElementBlock("label", {
194
+ return openBlock(), createElementBlock("div", mergeProps({ class: unref(composeClassName)(slotFns.value.base(), props.class, props.classNames?.base) }, unref(rootDataAttrs), { "data-slot": "time-range-field" }), [unref(showOutsideLabel) ? (openBlock(), createBlock(FieldLabel_default, {
222
195
  key: 0,
223
196
  id: labelId.value,
224
197
  for: fieldId.value,
198
+ label: __props.label,
199
+ "is-required": __props.isRequired,
225
200
  class: normalizeClass(unref(composeClassName)(slotFns.value.label(), props.classNames?.label))
226
- }, [createTextVNode(toDisplayString(__props.label), 1), __props.isRequired ? (openBlock(), createElementBlock("span", _hoisted_3, " *")) : createCommentVNode("", true)], 10, _hoisted_2)) : createCommentVNode("", true), createElementVNode("div", { class: normalizeClass(unref(composeClassName)(slotFns.value.mainWrapper(), props.classNames?.mainWrapper)) }, [createVNode(unref(TimeRangeFieldRoot), {
201
+ }, null, 8, [
202
+ "id",
203
+ "for",
204
+ "label",
205
+ "is-required",
206
+ "class"
207
+ ])) : createCommentVNode("", true), createElementVNode("div", { class: normalizeClass(unref(composeClassName)(slotFns.value.mainWrapper(), props.classNames?.mainWrapper)) }, [createVNode(unref(TimeRangeFieldRoot), {
227
208
  id: fieldId.value,
228
209
  ref_key: "fieldRef",
229
210
  ref: fieldRef,
@@ -246,12 +227,12 @@ var TimeRangeField_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
246
227
  dir: __props.dir,
247
228
  as: __props.as,
248
229
  "as-child": __props.asChild,
249
- "aria-labelledby": hasLabel.value ? labelId.value : void 0,
250
- "aria-describedby": ariaDescribedBy.value,
230
+ "aria-labelledby": unref(hasLabel) ? labelId.value : void 0,
231
+ "aria-describedby": unref(ariaDescribedBy),
251
232
  "aria-required": __props.isRequired || void 0,
252
233
  "aria-invalid": __props.isInvalid || void 0,
253
234
  class: normalizeClass(unref(composeClassName)(slotFns.value.inputWrapper(), props.classNames?.inputWrapper)),
254
- "data-filled": hasLabel.value ? effectiveFilled.value || void 0 : void 0,
235
+ "data-filled": unref(hasLabel) ? effectiveFilled.value || void 0 : void 0,
255
236
  "data-focused": isFocused.value || void 0,
256
237
  "data-invalid": __props.isInvalid || void 0,
257
238
  "data-disabled": __props.isDisabled || void 0,
@@ -259,12 +240,20 @@ var TimeRangeField_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
259
240
  onMousedown: handleFieldMousedown
260
241
  }, {
261
242
  default: withCtx(({ segments }) => [
262
- showInsideLabel.value ? (openBlock(), createElementBlock("label", {
243
+ unref(showInsideLabel) ? (openBlock(), createBlock(FieldLabel_default, {
263
244
  key: 0,
264
245
  id: labelId.value,
265
246
  for: fieldId.value,
247
+ label: __props.label,
248
+ "is-required": __props.isRequired,
266
249
  class: normalizeClass(unref(composeClassName)(slotFns.value.label(), props.classNames?.label))
267
- }, [createTextVNode(toDisplayString(__props.label), 1), __props.isRequired ? (openBlock(), createElementBlock("span", _hoisted_5, " *")) : createCommentVNode("", true)], 10, _hoisted_4)) : createCommentVNode("", true),
250
+ }, null, 8, [
251
+ "id",
252
+ "for",
253
+ "label",
254
+ "is-required",
255
+ "class"
256
+ ])) : createCommentVNode("", true),
268
257
  _ctx.$slots.startContent ? (openBlock(), createElementBlock("span", {
269
258
  key: 1,
270
259
  class: normalizeClass(unref(composeClassName)(slotFns.value.startContent(), props.classNames?.startContent)),
@@ -342,19 +331,30 @@ var TimeRangeField_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
342
331
  "data-invalid",
343
332
  "data-disabled",
344
333
  "data-readonly"
345
- ]), hasHelper.value ? (openBlock(), createElementBlock("div", {
346
- key: 0,
347
- class: normalizeClass(unref(composeClassName)(slotFns.value.helperWrapper(), props.classNames?.helperWrapper))
348
- }, [showError.value ? (openBlock(), createElementBlock("div", {
349
- key: 0,
350
- id: errorMessageId.value,
351
- class: normalizeClass(unref(composeClassName)(slotFns.value.errorMessage(), props.classNames?.errorMessage)),
352
- role: "alert"
353
- }, toDisplayString(__props.errorMessage), 11, _hoisted_6)) : showDescription.value ? (openBlock(), createElementBlock("div", {
354
- key: 1,
355
- id: descriptionId.value,
356
- class: normalizeClass(unref(composeClassName)(slotFns.value.description(), props.classNames?.description))
357
- }, toDisplayString(__props.description), 11, _hoisted_7)) : createCommentVNode("", true)], 2)) : createCommentVNode("", true)], 2)], 10, _hoisted_1);
334
+ ]), createVNode(FormFieldHelper_default, {
335
+ "has-helper": unref(hasHelper),
336
+ "show-error": unref(showError),
337
+ "show-description": unref(showDescription),
338
+ "error-message": __props.errorMessage,
339
+ description: __props.description,
340
+ "error-message-id": unref(errorMessageId),
341
+ "description-id": unref(descriptionId),
342
+ "error-role": "alert",
343
+ "wrapper-class": unref(composeClassName)(slotFns.value.helperWrapper(), props.classNames?.helperWrapper),
344
+ "error-class": unref(composeClassName)(slotFns.value.errorMessage(), props.classNames?.errorMessage),
345
+ "description-class": unref(composeClassName)(slotFns.value.description(), props.classNames?.description)
346
+ }, null, 8, [
347
+ "has-helper",
348
+ "show-error",
349
+ "show-description",
350
+ "error-message",
351
+ "description",
352
+ "error-message-id",
353
+ "description-id",
354
+ "wrapper-class",
355
+ "error-class",
356
+ "description-class"
357
+ ])], 2)], 16);
358
358
  };
359
359
  }
360
360
  });
@@ -1 +1 @@
1
- {"version":3,"file":"TimeRangeField.vue_vue_type_script_setup_true_lang.js","names":["$slots"],"sources":["../../../src/components/time-range-field/TimeRangeField.vue"],"sourcesContent":["<!--\n TimeRangeField — form-field mirror of DateRangeField.vue for a time range.\n\n Same prop surface, data-attribute contract, floating-label behavior,\n start/end content slots, and a11y wiring as DateRangeField. Renders TWO\n segment lists (start + end) separated by a visible \"–\" glyph, using\n @internationalized/date TimeValue instead of DateValue.\n-->\n<script setup lang=\"ts\">\nimport { computed, onBeforeUnmount, onMounted, ref, useAttrs, useId, watch } from 'vue'\nimport { TimeRangeFieldRoot, TimeRangeFieldInput } from 'reka-ui'\nimport type { TimeValue } from 'reka-ui'\nimport { timeRangeFieldVariants, type TimeRangeFieldVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\n\ndefineOptions({ inheritAttrs: false })\n\nconst props = withDefaults(defineProps<Props>(), {\n variant: 'flat',\n size: 'md',\n color: 'default',\n labelPlacement: 'inside',\n fullWidth: false,\n isInvalid: false,\n isDisabled: false,\n isReadOnly: false,\n isRequired: false,\n granularity: 'minute',\n hideTimeZone: false,\n})\n\nconst modelValue = defineModel<TimeRange | null | undefined>()\n\nexport interface TimeRange {\n start: TimeValue\n end: TimeValue\n}\n\ntype Props = {\n /** Visual style of the field. @default 'flat' */\n variant?: TimeRangeFieldVariants['variant']\n /** Field height. @default 'md' */\n size?: TimeRangeFieldVariants['size']\n /** Accent color applied to focus ring + floating label. @default 'default' */\n color?: TimeRangeFieldVariants['color']\n /** Label placement relative to the field. @default 'inside' */\n labelPlacement?: TimeRangeFieldVariants['labelPlacement']\n /** Stretches root wrapper to 100% width. @default false */\n fullWidth?: boolean\n /** Marks the field as invalid. @default false */\n isInvalid?: boolean\n /** Disables the field. @default false */\n isDisabled?: boolean\n /** Makes the field read-only. @default false */\n isReadOnly?: boolean\n /** Adds a required asterisk next to the label. @default false */\n isRequired?: boolean\n /** Field label. When omitted, floating-label behavior is skipped. */\n label?: string\n /** Helper text below the field. Suppressed when isInvalid && errorMessage is shown. */\n description?: string\n /** Error text below the field. Only rendered when isInvalid is true. */\n errorMessage?: string\n /** Extra classes merged onto the root wrapper. */\n class?: ClassValue\n /** Per-slot class overrides. Merged with tailwind-variants styles. */\n classNames?: Partial<{\n base: ClassValue\n label: ClassValue\n mainWrapper: ClassValue\n inputWrapper: ClassValue\n startContent: ClassValue\n segmentList: ClassValue\n segment: ClassValue\n separator: ClassValue\n endContent: ClassValue\n helperWrapper: ClassValue\n errorMessage: ClassValue\n description: ClassValue\n }>\n\n /* ─── TimeRangeField-specific ─────────────────────────────────── */\n defaultValue?: TimeRange\n defaultPlaceholder?: TimeValue\n placeholderValue?: TimeValue\n minValue?: TimeValue\n maxValue?: TimeValue\n granularity?: 'hour' | 'minute' | 'second'\n hourCycle?: 12 | 24\n /** Steps for segment keyboard navigation. */\n step?: Partial<Record<'hour' | 'minute' | 'second' | 'millisecond', number>>\n hideTimeZone?: boolean\n locale?: string\n name?: string\n /** Marks the field as required for form submission. */\n required?: boolean\n /** Text direction for the field. */\n dir?: 'ltr' | 'rtl'\n /** Render root as a different element or component. */\n as?: string\n /** Render root child as root element. */\n asChild?: boolean\n}\n\nconst attrs = useAttrs()\nconst generatedId = useId()\nconst fieldId = computed(() => (attrs.id as string | undefined) ?? `${generatedId}-field`)\nconst labelId = computed(() => `${generatedId}-label`)\nconst descriptionId = computed(() => `${generatedId}-description`)\nconst errorMessageId = computed(() => `${generatedId}-error`)\n\nconst hasLabel = computed(() => !!props.label)\nconst isFilled = computed(() => modelValue.value?.start != null || modelValue.value?.end != null)\n\nconst showError = computed(() => props.isInvalid && !!props.errorMessage)\nconst showDescription = computed(() => !!props.description && !showError.value)\nconst hasHelper = computed(() => showError.value || showDescription.value)\nconst ariaDescribedBy = computed(() => {\n if (showError.value) return errorMessageId.value\n if (showDescription.value) return descriptionId.value\n return undefined\n})\n\nconst fieldRef = ref<HTMLElement | null>(null)\n// Reka components expose their root DOM node via $el — unwrap before using DOM APIs.\nconst fieldEl = computed<HTMLElement | null>(() => {\n const r = fieldRef.value as unknown as { $el?: HTMLElement } | HTMLElement | null\n if (!r) return null\n if (r instanceof HTMLElement) return r\n return r.$el ?? null\n})\n\n// `isFocused` tracks focus on a TIME SEGMENT specifically — not any descendant.\nconst isFocused = ref(false)\nfunction updateSegmentFocus() {\n const root = fieldEl.value\n if (!root) { isFocused.value = false; return }\n const active = (root.ownerDocument ?? document).activeElement as HTMLElement | null\n isFocused.value = !!active\n && root.contains(active)\n && active.hasAttribute('data-reka-time-field-segment')\n}\nfunction onDocFocusIn() { updateSegmentFocus() }\nfunction onDocFocusOut() { queueMicrotask(updateSegmentFocus) }\n\n// Guard against focus snap-back after an outside click.\nlet suppressSegmentFocusUntil = 0\nfunction onDocPointerDown(e: PointerEvent) {\n const root = fieldEl.value\n if (!root) return\n const target = e.target as Node | null\n if (!target || root.contains(target)) return\n suppressSegmentFocusUntil = performance.now() + 250\n const active = (root.ownerDocument ?? document).activeElement as HTMLElement | null\n if (active && root.contains(active) && active.hasAttribute('data-reka-time-field-segment')) {\n active.blur()\n }\n}\nfunction onDocFocusInGuard(e: FocusEvent) {\n if (performance.now() >= suppressSegmentFocusUntil) return\n const root = fieldEl.value\n if (!root) return\n const t = e.target as HTMLElement | null\n if (t && root.contains(t) && t.hasAttribute?.('data-reka-time-field-segment')) {\n t.blur()\n }\n}\n\nonMounted(() => {\n document.addEventListener('focusin', onDocFocusIn)\n document.addEventListener('focusout', onDocFocusOut)\n document.addEventListener('pointerdown', onDocPointerDown, true)\n document.addEventListener('focusin', onDocFocusInGuard, true)\n})\nonBeforeUnmount(() => {\n document.removeEventListener('focusin', onDocFocusIn)\n document.removeEventListener('focusout', onDocFocusOut)\n document.removeEventListener('pointerdown', onDocPointerDown, true)\n document.removeEventListener('focusin', onDocFocusInGuard, true)\n})\n\n// Track data-filled by sniffing rendered segments across BOTH segment lists.\nconst segmentsFilled = ref(false)\nfunction recomputeFilled() {\n const root = fieldEl.value\n if (!root || typeof root.querySelectorAll !== 'function') {\n segmentsFilled.value = false\n return\n }\n const segs = root.querySelectorAll('[data-reka-time-field-segment]:not([data-reka-time-field-segment=\"literal\"])')\n let anyFilled = false\n segs.forEach((el) => {\n if ((el as HTMLElement).dataset.placeholder === 'false') anyFilled = true\n })\n segmentsFilled.value = anyFilled\n}\nwatch([modelValue, () => props.defaultValue, () => props.granularity, () => props.hourCycle], () => {\n queueMicrotask(recomputeFilled)\n}, { immediate: true })\n\nconst effectiveFilled = computed(() => isFilled.value || segmentsFilled.value)\n\nfunction handleFieldMousedown(e: MouseEvent) {\n const target = e.target as HTMLElement | null\n if (!target) return\n if (target.closest('[data-reka-time-field-segment]')) return\n if (target.closest('[data-slot=\"start-content\"]')) return\n if (target.closest('[data-slot=\"end-content\"]')) return\n if (target.closest('button, [role=\"button\"]')) return\n const root = fieldEl.value\n if (!root) return\n const active = (root.ownerDocument ?? document).activeElement as HTMLElement | null\n if (active && root.contains(active) && active.hasAttribute('data-reka-time-field-segment')) {\n return\n }\n const first = root.querySelector<HTMLElement>(\n '[data-reka-time-field-segment]:not([data-reka-time-field-segment=\"literal\"])',\n )\n if (first) {\n e.preventDefault()\n first.focus()\n }\n}\n\nconst slotFns = computed(() =>\n timeRangeFieldVariants({\n variant: props.variant,\n size: props.size,\n color: props.color,\n fullWidth: props.fullWidth,\n isInvalid: props.isInvalid,\n isDisabled: props.isDisabled,\n isReadonly: props.isReadOnly,\n hasLabel: hasLabel.value,\n labelPlacement: props.labelPlacement,\n }),\n)\n\nconst showOutsideLabel = computed(\n () => hasLabel.value && props.labelPlacement !== 'inside',\n)\nconst showInsideLabel = computed(\n () => hasLabel.value && props.labelPlacement === 'inside',\n)\n</script>\n\n<template>\n <div\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n :data-invalid=\"isInvalid || undefined\"\n :data-disabled=\"isDisabled || undefined\"\n :data-readonly=\"isReadOnly || undefined\"\n :data-required=\"isRequired || undefined\"\n :data-has-label=\"hasLabel || undefined\"\n :data-has-helper=\"hasHelper || undefined\"\n data-slot=\"time-range-field\"\n >\n <label\n v-if=\"showOutsideLabel\"\n :id=\"labelId\"\n :for=\"fieldId\"\n :class=\"composeClassName(slotFns.label(), props.classNames?.label)\"\n >{{ label }}<span\n v-if=\"isRequired\"\n aria-hidden=\"true\"\n > *</span></label>\n\n <div :class=\"composeClassName(slotFns.mainWrapper(), props.classNames?.mainWrapper)\">\n <TimeRangeFieldRoot\n :id=\"fieldId\"\n ref=\"fieldRef\"\n v-model=\"modelValue\"\n :default-value=\"defaultValue\"\n :default-placeholder=\"defaultPlaceholder\"\n :placeholder=\"placeholderValue\"\n :min-value=\"minValue\"\n :max-value=\"maxValue\"\n :granularity=\"granularity\"\n :hour-cycle=\"hourCycle\"\n :step=\"step\"\n :locale=\"locale\"\n :disabled=\"isDisabled\"\n :readonly=\"isReadOnly\"\n :name=\"name\"\n :hide-time-zone=\"hideTimeZone\"\n :required=\"required\"\n :dir=\"dir\"\n :as=\"as\"\n :as-child=\"asChild\"\n :aria-labelledby=\"hasLabel ? labelId : undefined\"\n :aria-describedby=\"ariaDescribedBy\"\n :aria-required=\"isRequired || undefined\"\n :aria-invalid=\"isInvalid || undefined\"\n :class=\"composeClassName(slotFns.inputWrapper(), props.classNames?.inputWrapper)\"\n :data-filled=\"hasLabel ? (effectiveFilled || undefined) : undefined\"\n :data-focused=\"isFocused || undefined\"\n :data-invalid=\"isInvalid || undefined\"\n :data-disabled=\"isDisabled || undefined\"\n :data-readonly=\"isReadOnly || undefined\"\n @mousedown=\"handleFieldMousedown\"\n >\n <template #default=\"{ segments }\">\n <label\n v-if=\"showInsideLabel\"\n :id=\"labelId\"\n :for=\"fieldId\"\n :class=\"composeClassName(slotFns.label(), props.classNames?.label)\"\n >{{ label }}<span\n v-if=\"isRequired\"\n aria-hidden=\"true\"\n > *</span></label>\n\n <span\n v-if=\"$slots.startContent\"\n :class=\"composeClassName(slotFns.startContent(), props.classNames?.startContent)\"\n data-slot=\"start-content\"\n >\n <slot name=\"startContent\" />\n </span>\n\n <div\n :class=\"composeClassName(slotFns.segmentList(), props.classNames?.segmentList)\"\n data-slot=\"segment-list\"\n data-type=\"start\"\n >\n <template\n v-for=\"(segment, _i) in segments.start\"\n :key=\"`start-${_i}`\"\n >\n <TimeRangeFieldInput\n :part=\"segment.part\"\n type=\"start\"\n :class=\"composeClassName(slotFns.segment(), props.classNames?.segment)\"\n >\n {{ segment.value }}\n </TimeRangeFieldInput>\n </template>\n </div>\n\n <span\n :class=\"composeClassName(slotFns.separator(), props.classNames?.separator)\"\n aria-hidden=\"true\"\n data-slot=\"separator\"\n >–</span>\n\n <div\n :class=\"composeClassName(slotFns.segmentList(), props.classNames?.segmentList)\"\n data-slot=\"segment-list\"\n data-type=\"end\"\n >\n <template\n v-for=\"(segment, _i) in segments.end\"\n :key=\"`end-${_i}`\"\n >\n <TimeRangeFieldInput\n :part=\"segment.part\"\n type=\"end\"\n :class=\"composeClassName(slotFns.segment(), props.classNames?.segment)\"\n >\n {{ segment.value }}\n </TimeRangeFieldInput>\n </template>\n </div>\n\n <span\n v-if=\"$slots.endContent\"\n :class=\"composeClassName(slotFns.endContent(), props.classNames?.endContent)\"\n data-slot=\"end-content\"\n >\n <slot name=\"endContent\" />\n </span>\n </template>\n </TimeRangeFieldRoot>\n\n <div\n v-if=\"hasHelper\"\n :class=\"composeClassName(slotFns.helperWrapper(), props.classNames?.helperWrapper)\"\n >\n <div\n v-if=\"showError\"\n :id=\"errorMessageId\"\n :class=\"composeClassName(slotFns.errorMessage(), props.classNames?.errorMessage)\"\n role=\"alert\"\n >\n {{ errorMessage }}\n </div>\n <div\n v-else-if=\"showDescription\"\n :id=\"descriptionId\"\n :class=\"composeClassName(slotFns.description(), props.classNames?.description)\"\n >\n {{ description }}\n </div>\n </div>\n </div>\n </div>\n</template>\n"],"mappings":"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"}
1
+ {"version":3,"file":"TimeRangeField.vue_vue_type_script_setup_true_lang.js","names":["$slots"],"sources":["../../../src/components/time-range-field/TimeRangeField.vue"],"sourcesContent":["<!--\n TimeRangeField — form-field mirror of DateRangeField.vue for a time range.\n\n Same prop surface, data-attribute contract, floating-label behavior,\n start/end content slots, and a11y wiring as DateRangeField. Renders TWO\n segment lists (start + end) separated by a visible \"–\" glyph, using\n @internationalized/date TimeValue instead of DateValue.\n-->\n<script setup lang=\"ts\">\nimport { computed, onBeforeUnmount, onMounted, ref, useAttrs, useId, watch } from 'vue'\nimport { TimeRangeFieldRoot, TimeRangeFieldInput } from 'reka-ui'\nimport type { TimeValue } from 'reka-ui'\nimport { timeRangeFieldVariants, type TimeRangeFieldVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { useFormField } from '../../composables/useFormField'\nimport FieldLabel from '../_shared/FieldLabel.vue'\nimport FormFieldHelper from '../_shared/FormFieldHelper.vue'\n\ndefineOptions({ inheritAttrs: false })\n\nconst props = withDefaults(defineProps<Props>(), {\n variant: 'flat',\n size: 'md',\n color: 'default',\n labelPlacement: 'inside',\n fullWidth: false,\n isInvalid: false,\n isDisabled: false,\n isReadOnly: false,\n isRequired: false,\n granularity: 'minute',\n hideTimeZone: false,\n})\n\nconst modelValue = defineModel<TimeRange | null | undefined>()\n\nexport interface TimeRange {\n start: TimeValue\n end: TimeValue\n}\n\ntype Props = {\n /** Visual style of the field. @default 'flat' */\n variant?: TimeRangeFieldVariants['variant']\n /** Field height. @default 'md' */\n size?: TimeRangeFieldVariants['size']\n /** Accent color applied to focus ring + floating label. @default 'default' */\n color?: TimeRangeFieldVariants['color']\n /** Label placement relative to the field. @default 'inside' */\n labelPlacement?: TimeRangeFieldVariants['labelPlacement']\n /** Stretches root wrapper to 100% width. @default false */\n fullWidth?: boolean\n /** Marks the field as invalid. @default false */\n isInvalid?: boolean\n /** Disables the field. @default false */\n isDisabled?: boolean\n /** Makes the field read-only. @default false */\n isReadOnly?: boolean\n /** Adds a required asterisk next to the label. @default false */\n isRequired?: boolean\n /** Field label. When omitted, floating-label behavior is skipped. */\n label?: string\n /** Helper text below the field. Suppressed when isInvalid && errorMessage is shown. */\n description?: string\n /** Error text below the field. Only rendered when isInvalid is true. */\n errorMessage?: string\n /** Extra classes merged onto the root wrapper. */\n class?: ClassValue\n /** Per-slot class overrides. Merged with tailwind-variants styles. */\n classNames?: Partial<{\n base: ClassValue\n label: ClassValue\n mainWrapper: ClassValue\n inputWrapper: ClassValue\n startContent: ClassValue\n segmentList: ClassValue\n segment: ClassValue\n separator: ClassValue\n endContent: ClassValue\n helperWrapper: ClassValue\n errorMessage: ClassValue\n description: ClassValue\n }>\n\n /* ─── TimeRangeField-specific ─────────────────────────────────── */\n defaultValue?: TimeRange\n defaultPlaceholder?: TimeValue\n placeholderValue?: TimeValue\n minValue?: TimeValue\n maxValue?: TimeValue\n granularity?: 'hour' | 'minute' | 'second'\n hourCycle?: 12 | 24\n /** Steps for segment keyboard navigation. */\n step?: Partial<Record<'hour' | 'minute' | 'second' | 'millisecond', number>>\n hideTimeZone?: boolean\n locale?: string\n name?: string\n /** Marks the field as required for form submission. */\n required?: boolean\n /** Text direction for the field. */\n dir?: 'ltr' | 'rtl'\n /** Render root as a different element or component. */\n as?: string\n /** Render root child as root element. */\n asChild?: boolean\n}\n\nconst attrs = useAttrs()\nconst generatedId = useId()\nconst fieldId = computed(() => (attrs.id as string | undefined) ?? `${generatedId}-field`)\nconst labelId = computed(() => `${generatedId}-label`)\n\nconst isFilled = computed(() => modelValue.value?.start != null || modelValue.value?.end != null)\n\nconst {\n descriptionId,\n errorMessageId,\n showError,\n showDescription,\n hasHelper,\n ariaDescribedBy,\n hasLabel,\n showOutsideLabel,\n showInsideLabel,\n rootDataAttrs,\n} = useFormField({\n fieldId: () => fieldId.value,\n label: () => props.label,\n description: () => props.description,\n errorMessage: () => props.errorMessage,\n isInvalid: () => props.isInvalid,\n isDisabled: () => props.isDisabled,\n isReadOnly: () => props.isReadOnly,\n isRequired: () => props.isRequired,\n labelPlacement: () => props.labelPlacement,\n})\n\nconst fieldRef = ref<HTMLElement | null>(null)\n// Reka components expose their root DOM node via $el — unwrap before using DOM APIs.\nconst fieldEl = computed<HTMLElement | null>(() => {\n const r = fieldRef.value as unknown as { $el?: HTMLElement } | HTMLElement | null\n if (!r) return null\n if (r instanceof HTMLElement) return r\n return r.$el ?? null\n})\n\n// `isFocused` tracks focus on a TIME SEGMENT specifically — not any descendant.\nconst isFocused = ref(false)\nfunction updateSegmentFocus() {\n const root = fieldEl.value\n if (!root) { isFocused.value = false; return }\n const active = (root.ownerDocument ?? document).activeElement as HTMLElement | null\n isFocused.value = !!active\n && root.contains(active)\n && active.hasAttribute('data-reka-time-field-segment')\n}\nfunction onDocFocusIn() { updateSegmentFocus() }\nfunction onDocFocusOut() { queueMicrotask(updateSegmentFocus) }\n\n// Guard against focus snap-back after an outside click.\nlet suppressSegmentFocusUntil = 0\nfunction onDocPointerDown(e: PointerEvent) {\n const root = fieldEl.value\n if (!root) return\n const target = e.target as Node | null\n if (!target || root.contains(target)) return\n suppressSegmentFocusUntil = performance.now() + 250\n const active = (root.ownerDocument ?? document).activeElement as HTMLElement | null\n if (active && root.contains(active) && active.hasAttribute('data-reka-time-field-segment')) {\n active.blur()\n }\n}\nfunction onDocFocusInGuard(e: FocusEvent) {\n if (performance.now() >= suppressSegmentFocusUntil) return\n const root = fieldEl.value\n if (!root) return\n const t = e.target as HTMLElement | null\n if (t && root.contains(t) && t.hasAttribute?.('data-reka-time-field-segment')) {\n t.blur()\n }\n}\n\nonMounted(() => {\n document.addEventListener('focusin', onDocFocusIn)\n document.addEventListener('focusout', onDocFocusOut)\n document.addEventListener('pointerdown', onDocPointerDown, true)\n document.addEventListener('focusin', onDocFocusInGuard, true)\n})\nonBeforeUnmount(() => {\n document.removeEventListener('focusin', onDocFocusIn)\n document.removeEventListener('focusout', onDocFocusOut)\n document.removeEventListener('pointerdown', onDocPointerDown, true)\n document.removeEventListener('focusin', onDocFocusInGuard, true)\n})\n\n// Track data-filled by sniffing rendered segments across BOTH segment lists.\nconst segmentsFilled = ref(false)\nfunction recomputeFilled() {\n const root = fieldEl.value\n if (!root || typeof root.querySelectorAll !== 'function') {\n segmentsFilled.value = false\n return\n }\n const segs = root.querySelectorAll('[data-reka-time-field-segment]:not([data-reka-time-field-segment=\"literal\"])')\n let anyFilled = false\n segs.forEach((el) => {\n if ((el as HTMLElement).dataset.placeholder === 'false') anyFilled = true\n })\n segmentsFilled.value = anyFilled\n}\nwatch([modelValue, () => props.defaultValue, () => props.granularity, () => props.hourCycle], () => {\n queueMicrotask(recomputeFilled)\n}, { immediate: true })\n\nconst effectiveFilled = computed(() => isFilled.value || segmentsFilled.value)\n\nfunction handleFieldMousedown(e: MouseEvent) {\n const target = e.target as HTMLElement | null\n if (!target) return\n if (target.closest('[data-reka-time-field-segment]')) return\n if (target.closest('[data-slot=\"start-content\"]')) return\n if (target.closest('[data-slot=\"end-content\"]')) return\n if (target.closest('button, [role=\"button\"]')) return\n const root = fieldEl.value\n if (!root) return\n const active = (root.ownerDocument ?? document).activeElement as HTMLElement | null\n if (active && root.contains(active) && active.hasAttribute('data-reka-time-field-segment')) {\n return\n }\n const first = root.querySelector<HTMLElement>(\n '[data-reka-time-field-segment]:not([data-reka-time-field-segment=\"literal\"])',\n )\n if (first) {\n e.preventDefault()\n first.focus()\n }\n}\n\nconst slotFns = computed(() =>\n timeRangeFieldVariants({\n variant: props.variant,\n size: props.size,\n color: props.color,\n fullWidth: props.fullWidth,\n isInvalid: props.isInvalid,\n isDisabled: props.isDisabled,\n isReadonly: props.isReadOnly,\n hasLabel: hasLabel.value,\n labelPlacement: props.labelPlacement,\n }),\n)\n</script>\n\n<template>\n <div\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n v-bind=\"rootDataAttrs\"\n data-slot=\"time-range-field\"\n >\n <FieldLabel\n v-if=\"showOutsideLabel\"\n :id=\"labelId\"\n :for=\"fieldId\"\n :label=\"label\"\n :is-required=\"isRequired\"\n :class=\"composeClassName(slotFns.label(), props.classNames?.label)\"\n />\n\n <div :class=\"composeClassName(slotFns.mainWrapper(), props.classNames?.mainWrapper)\">\n <TimeRangeFieldRoot\n :id=\"fieldId\"\n ref=\"fieldRef\"\n v-model=\"modelValue\"\n :default-value=\"defaultValue\"\n :default-placeholder=\"defaultPlaceholder\"\n :placeholder=\"placeholderValue\"\n :min-value=\"minValue\"\n :max-value=\"maxValue\"\n :granularity=\"granularity\"\n :hour-cycle=\"hourCycle\"\n :step=\"step\"\n :locale=\"locale\"\n :disabled=\"isDisabled\"\n :readonly=\"isReadOnly\"\n :name=\"name\"\n :hide-time-zone=\"hideTimeZone\"\n :required=\"required\"\n :dir=\"dir\"\n :as=\"as\"\n :as-child=\"asChild\"\n :aria-labelledby=\"hasLabel ? labelId : undefined\"\n :aria-describedby=\"ariaDescribedBy\"\n :aria-required=\"isRequired || undefined\"\n :aria-invalid=\"isInvalid || undefined\"\n :class=\"composeClassName(slotFns.inputWrapper(), props.classNames?.inputWrapper)\"\n :data-filled=\"hasLabel ? (effectiveFilled || undefined) : undefined\"\n :data-focused=\"isFocused || undefined\"\n :data-invalid=\"isInvalid || undefined\"\n :data-disabled=\"isDisabled || undefined\"\n :data-readonly=\"isReadOnly || undefined\"\n @mousedown=\"handleFieldMousedown\"\n >\n <template #default=\"{ segments }\">\n <FieldLabel\n v-if=\"showInsideLabel\"\n :id=\"labelId\"\n :for=\"fieldId\"\n :label=\"label\"\n :is-required=\"isRequired\"\n :class=\"composeClassName(slotFns.label(), props.classNames?.label)\"\n />\n\n <span\n v-if=\"$slots.startContent\"\n :class=\"composeClassName(slotFns.startContent(), props.classNames?.startContent)\"\n data-slot=\"start-content\"\n >\n <slot name=\"startContent\" />\n </span>\n\n <div\n :class=\"composeClassName(slotFns.segmentList(), props.classNames?.segmentList)\"\n data-slot=\"segment-list\"\n data-type=\"start\"\n >\n <template\n v-for=\"(segment, _i) in segments.start\"\n :key=\"`start-${_i}`\"\n >\n <TimeRangeFieldInput\n :part=\"segment.part\"\n type=\"start\"\n :class=\"composeClassName(slotFns.segment(), props.classNames?.segment)\"\n >\n {{ segment.value }}\n </TimeRangeFieldInput>\n </template>\n </div>\n\n <span\n :class=\"composeClassName(slotFns.separator(), props.classNames?.separator)\"\n aria-hidden=\"true\"\n data-slot=\"separator\"\n >–</span>\n\n <div\n :class=\"composeClassName(slotFns.segmentList(), props.classNames?.segmentList)\"\n data-slot=\"segment-list\"\n data-type=\"end\"\n >\n <template\n v-for=\"(segment, _i) in segments.end\"\n :key=\"`end-${_i}`\"\n >\n <TimeRangeFieldInput\n :part=\"segment.part\"\n type=\"end\"\n :class=\"composeClassName(slotFns.segment(), props.classNames?.segment)\"\n >\n {{ segment.value }}\n </TimeRangeFieldInput>\n </template>\n </div>\n\n <span\n v-if=\"$slots.endContent\"\n :class=\"composeClassName(slotFns.endContent(), props.classNames?.endContent)\"\n data-slot=\"end-content\"\n >\n <slot name=\"endContent\" />\n </span>\n </template>\n </TimeRangeFieldRoot>\n\n <FormFieldHelper\n :has-helper=\"hasHelper\"\n :show-error=\"showError\"\n :show-description=\"showDescription\"\n :error-message=\"errorMessage\"\n :description=\"description\"\n :error-message-id=\"errorMessageId\"\n :description-id=\"descriptionId\"\n error-role=\"alert\"\n :wrapper-class=\"composeClassName(slotFns.helperWrapper(), props.classNames?.helperWrapper)\"\n :error-class=\"composeClassName(slotFns.errorMessage(), props.classNames?.errorMessage)\"\n :description-class=\"composeClassName(slotFns.description(), props.classNames?.description)\"\n />\n </div>\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoBA,MAAM,QAAQ;EAcd,MAAM,aAAa,SAAyC,SAAA,aAAC;EAyE7D,MAAM,QAAQ,UAAS;EACvB,MAAM,cAAc,OAAM;EAC1B,MAAM,UAAU,eAAgB,MAAM,MAA6B,GAAG,YAAY,QAAO;EACzF,MAAM,UAAU,eAAe,GAAG,YAAY,QAAO;EAErD,MAAM,WAAW,eAAe,WAAW,OAAO,SAAS,QAAQ,WAAW,OAAO,OAAO,KAAI;EAEhG,MAAM,EACJ,eACA,gBACA,WACA,iBACA,WACA,iBACA,UACA,kBACA,iBACA,kBACE,aAAa;GACf,eAAe,QAAQ;GACvB,aAAa,MAAM;GACnB,mBAAmB,MAAM;GACzB,oBAAoB,MAAM;GAC1B,iBAAiB,MAAM;GACvB,kBAAkB,MAAM;GACxB,kBAAkB,MAAM;GACxB,kBAAkB,MAAM;GACxB,sBAAsB,MAAM;GAC7B,CAAA;EAED,MAAM,WAAW,IAAwB,KAAI;EAE7C,MAAM,UAAU,eAAmC;GACjD,MAAM,IAAI,SAAS;AACnB,OAAI,CAAC,EAAG,QAAO;AACf,OAAI,aAAa,YAAa,QAAO;AACrC,UAAO,EAAE,OAAO;IACjB;EAGD,MAAM,YAAY,IAAI,MAAK;EAC3B,SAAS,qBAAqB;GAC5B,MAAM,OAAO,QAAQ;AACrB,OAAI,CAAC,MAAM;AAAE,cAAU,QAAQ;AAAO;;GACtC,MAAM,UAAU,KAAK,iBAAiB,UAAU;AAChD,aAAU,QAAQ,CAAC,CAAC,UACf,KAAK,SAAS,OAAM,IACpB,OAAO,aAAa,+BAA8B;;EAEzD,SAAS,eAAe;AAAE,uBAAoB;;EAC9C,SAAS,gBAAgB;AAAE,kBAAe,mBAAmB;;EAG7D,IAAI,4BAA4B;EAChC,SAAS,iBAAiB,GAAiB;GACzC,MAAM,OAAO,QAAQ;AACrB,OAAI,CAAC,KAAM;GACX,MAAM,SAAS,EAAE;AACjB,OAAI,CAAC,UAAU,KAAK,SAAS,OAAO,CAAE;AACtC,+BAA4B,YAAY,KAAK,GAAG;GAChD,MAAM,UAAU,KAAK,iBAAiB,UAAU;AAChD,OAAI,UAAU,KAAK,SAAS,OAAO,IAAI,OAAO,aAAa,+BAA+B,CACxF,QAAO,MAAK;;EAGhB,SAAS,kBAAkB,GAAe;AACxC,OAAI,YAAY,KAAK,IAAI,0BAA2B;GACpD,MAAM,OAAO,QAAQ;AACrB,OAAI,CAAC,KAAM;GACX,MAAM,IAAI,EAAE;AACZ,OAAI,KAAK,KAAK,SAAS,EAAE,IAAI,EAAE,eAAe,+BAA+B,CAC3E,GAAE,MAAK;;AAIX,kBAAgB;AACd,YAAS,iBAAiB,WAAW,aAAY;AACjD,YAAS,iBAAiB,YAAY,cAAa;AACnD,YAAS,iBAAiB,eAAe,kBAAkB,KAAI;AAC/D,YAAS,iBAAiB,WAAW,mBAAmB,KAAI;IAC7D;AACD,wBAAsB;AACpB,YAAS,oBAAoB,WAAW,aAAY;AACpD,YAAS,oBAAoB,YAAY,cAAa;AACtD,YAAS,oBAAoB,eAAe,kBAAkB,KAAI;AAClE,YAAS,oBAAoB,WAAW,mBAAmB,KAAI;IAChE;EAGD,MAAM,iBAAiB,IAAI,MAAK;EAChC,SAAS,kBAAkB;GACzB,MAAM,OAAO,QAAQ;AACrB,OAAI,CAAC,QAAQ,OAAO,KAAK,qBAAqB,YAAY;AACxD,mBAAe,QAAQ;AACvB;;GAEF,MAAM,OAAO,KAAK,iBAAiB,iFAA8E;GACjH,IAAI,YAAY;AAChB,QAAK,SAAS,OAAO;AACnB,QAAK,GAAmB,QAAQ,gBAAgB,QAAS,aAAY;KACtE;AACD,kBAAe,QAAQ;;AAEzB,QAAM;GAAC;SAAkB,MAAM;SAAoB,MAAM;SAAmB,MAAM;GAAU,QAAQ;AAClG,kBAAe,gBAAe;KAC7B,EAAE,WAAW,MAAM,CAAA;EAEtB,MAAM,kBAAkB,eAAe,SAAS,SAAS,eAAe,MAAK;EAE7E,SAAS,qBAAqB,GAAe;GAC3C,MAAM,SAAS,EAAE;AACjB,OAAI,CAAC,OAAQ;AACb,OAAI,OAAO,QAAQ,iCAAiC,CAAE;AACtD,OAAI,OAAO,QAAQ,gCAA8B,CAAE;AACnD,OAAI,OAAO,QAAQ,8BAA4B,CAAE;AACjD,OAAI,OAAO,QAAQ,4BAA0B,CAAE;GAC/C,MAAM,OAAO,QAAQ;AACrB,OAAI,CAAC,KAAM;GACX,MAAM,UAAU,KAAK,iBAAiB,UAAU;AAChD,OAAI,UAAU,KAAK,SAAS,OAAO,IAAI,OAAO,aAAa,+BAA+B,CACxF;GAEF,MAAM,QAAQ,KAAK,cACjB,iFACF;AACA,OAAI,OAAO;AACT,MAAE,gBAAe;AACjB,UAAM,OAAM;;;EAIhB,MAAM,UAAU,eACd,uBAAuB;GACrB,SAAS,MAAM;GACf,MAAM,MAAM;GACZ,OAAO,MAAM;GACb,WAAW,MAAM;GACjB,WAAW,MAAM;GACjB,YAAY,MAAM;GAClB,YAAY,MAAM;GAClB,UAAU,SAAS;GACnB,gBAAgB,MAAM;GACvB,CAAC,CACJ;;uBAIE,mBAsIM,OAtIN,WAsIM,EArIH,OAAO,MAAA,iBAAgB,CAAC,QAAA,MAAQ,MAAI,EAAI,MAAM,OAAO,MAAM,YAAY,KAAI,EAAA,EACpE,MAAA,cAAa,EAAA,EACrB,aAAU,oBAAkB,CAAA,EAAA,CAGpB,MAAA,iBAAgB,IAAA,WAAA,EADxB,YAOE,oBAAA;;IALC,IAAI,QAAA;IACJ,KAAK,QAAA;IACL,OAAO,QAAA;IACP,eAAa,QAAA;IACb,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,OAAK,EAAI,MAAM,YAAY,MAAK,CAAA;;;;;;;uCAGnE,mBAuHM,OAAA,EAvHA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,aAAW,EAAI,MAAM,YAAY,YAAW,CAAA,EAAA,EAAA,CAChF,YAuGqB,MAAA,mBAAA,EAAA;IAtGlB,IAAI,QAAA;aACD;IAAJ,KAAI;gBACK,WAAA;4EAAU,QAAA;IAClB,iBAAe,QAAA;IACf,uBAAqB,QAAA;IACrB,aAAa,QAAA;IACb,aAAW,QAAA;IACX,aAAW,QAAA;IACX,aAAa,QAAA;IACb,cAAY,QAAA;IACZ,MAAM,QAAA;IACN,QAAQ,QAAA;IACR,UAAU,QAAA;IACV,UAAU,QAAA;IACV,MAAM,QAAA;IACN,kBAAgB,QAAA;IAChB,UAAU,QAAA;IACV,KAAK,QAAA;IACL,IAAI,QAAA;IACJ,YAAU,QAAA;IACV,mBAAiB,MAAA,SAAQ,GAAG,QAAA,QAAU,KAAA;IACtC,oBAAkB,MAAA,gBAAe;IACjC,iBAAe,QAAA,cAAc,KAAA;IAC7B,gBAAc,QAAA,aAAa,KAAA;IAC3B,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,cAAY,EAAI,MAAM,YAAY,aAAY,CAAA;IAC9E,eAAa,MAAA,SAAQ,GAAI,gBAAA,SAAmB,KAAA,IAAa,KAAA;IACzD,gBAAc,UAAA,SAAa,KAAA;IAC3B,gBAAc,QAAA,aAAa,KAAA;IAC3B,iBAAe,QAAA,cAAc,KAAA;IAC7B,iBAAe,QAAA,cAAc,KAAA;IAC7B,aAAW;;IAED,SAAO,SAQd,EARkB,eAAQ;KAEpB,MAAA,gBAAe,IAAA,WAAA,EADvB,YAOE,oBAAA;;MALC,IAAI,QAAA;MACJ,KAAK,QAAA;MACL,OAAO,QAAA;MACP,eAAa,QAAA;MACb,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,OAAK,EAAI,MAAM,YAAY,MAAK,CAAA;;;;;;;;KAI3DA,KAAAA,OAAO,gBAAA,WAAA,EADf,mBAMO,QAAA;;MAJJ,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,cAAY,EAAI,MAAM,YAAY,aAAY,CAAA;MAC/E,aAAU;SAEV,WAA4B,KAAA,QAAA,eAAA,CAAA,EAAA,EAAA,IAAA,mBAAA,IAAA,KAAA;KAG9B,mBAiBM,OAAA;MAhBH,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,aAAW,EAAI,MAAM,YAAY,YAAW,CAAA;MAC7E,aAAU;MACV,aAAU;2BAEV,mBAWW,UAAA,MAAA,WAVe,SAAS,QAAzB,SAAS,OAAE;0BAGnB,YAMsB,MAAA,oBAAA,EAAA;qBARP;OAGZ,MAAM,QAAQ;OACf,MAAK;OACJ,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,SAAO,EAAI,MAAM,YAAY,QAAO,CAAA;;8BAElD,CAAA,gBAAA,gBAAhB,QAAQ,MAAK,EAAA,EAAA,CAAA,CAAA;;;;KAKtB,mBAIS,QAAA;MAHN,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,WAAS,EAAI,MAAM,YAAY,UAAS,CAAA;MACzE,eAAY;MACZ,aAAU;QACX,KAAC,EAAA;KAEF,mBAiBM,OAAA;MAhBH,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,aAAW,EAAI,MAAM,YAAY,YAAW,CAAA;MAC7E,aAAU;MACV,aAAU;2BAEV,mBAWW,UAAA,MAAA,WAVe,SAAS,MAAzB,SAAS,OAAE;0BAGnB,YAMsB,MAAA,oBAAA,EAAA;mBART;OAGV,MAAM,QAAQ;OACf,MAAK;OACJ,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,SAAO,EAAI,MAAM,YAAY,QAAO,CAAA;;8BAElD,CAAA,gBAAA,gBAAhB,QAAQ,MAAK,EAAA,EAAA,CAAA,CAAA;;;;KAMdA,KAAAA,OAAO,cAAA,WAAA,EADf,mBAMO,QAAA;;MAJJ,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,YAAU,EAAI,MAAM,YAAY,WAAU,CAAA;MAC3E,aAAU;SAEV,WAA0B,KAAA,QAAA,aAAA,CAAA,EAAA,EAAA,IAAA,mBAAA,IAAA,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAKhC,YAYE,yBAAA;IAXC,cAAY,MAAA,UAAS;IACrB,cAAY,MAAA,UAAS;IACrB,oBAAkB,MAAA,gBAAe;IACjC,iBAAe,QAAA;IACf,aAAa,QAAA;IACb,oBAAkB,MAAA,eAAc;IAChC,kBAAgB,MAAA,cAAa;IAC9B,cAAW;IACV,iBAAe,MAAA,iBAAgB,CAAC,QAAA,MAAQ,eAAa,EAAI,MAAM,YAAY,cAAa;IACxF,eAAa,MAAA,iBAAgB,CAAC,QAAA,MAAQ,cAAY,EAAI,MAAM,YAAY,aAAY;IACpF,qBAAmB,MAAA,iBAAgB,CAAC,QAAA,MAAQ,aAAW,EAAI,MAAM,YAAY,YAAW"}
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarButton.js","names":[],"sources":["../../../src/components/toolbar/ToolbarButton.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { ToolbarButton as RekaToolbarButton } from 'reka-ui'\nimport { toggleButtonVariants, type ToggleButtonVariants } from '@auronui/styles'\nimport { composeClassName } from '../../utils/composeClassName'\n\nconst props = defineProps<{\n variant?: ToggleButtonVariants['variant']\n size?: ToggleButtonVariants['size']\n isIconOnly?: boolean\n disabled?: boolean\n class?: string\n /** Render as a different element */\n as?: string\n /** Merge props onto child element */\n asChild?: boolean\n}>()\n\nconst classes = computed(() =>\n toggleButtonVariants({\n variant: props.variant ?? 'ghost',\n size: props.size ?? 'md',\n isIconOnly: props.isIconOnly ?? false,\n })\n)\n</script>\n\n<template>\n <RekaToolbarButton\n :disabled=\"props.disabled\"\n :as=\"props.as\"\n :as-child=\"props.asChild\"\n :class=\"composeClassName(classes, props.class)\"\n >\n <slot />\n </RekaToolbarButton>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"ToolbarButton.js","names":[],"sources":["../../../src/components/toolbar/ToolbarButton.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { ToolbarButton as RekaToolbarButton } from 'reka-ui'\nimport { toggleButtonVariants, type ToggleButtonVariants } from '@auronui/styles'\nimport { composeClassName } from '../../utils/composeClassName'\nimport { useDeprecatedBooleanProp } from '../../composables/useDeprecatedBooleanProp'\n\nconst props = withDefaults(defineProps<{\n variant?: ToggleButtonVariants['variant']\n size?: ToggleButtonVariants['size']\n isIconOnly?: boolean\n isDisabled?: boolean\n /** @deprecated Use isDisabled instead. */\n disabled?: boolean\n class?: string\n /** Render as a different element */\n as?: string\n /** Merge props onto child element */\n asChild?: boolean\n}>(), {\n isDisabled: undefined,\n disabled: undefined,\n})\n\nconst isDisabled = useDeprecatedBooleanProp(\n 'ToolbarButton', 'isDisabled', () => props.isDisabled, 'disabled', () => props.disabled,\n)\n\nconst classes = computed(() =>\n toggleButtonVariants({\n variant: props.variant ?? 'ghost',\n size: props.size ?? 'md',\n isIconOnly: props.isIconOnly ?? false,\n })\n)\n</script>\n\n<template>\n <RekaToolbarButton\n :disabled=\"isDisabled\"\n :as=\"props.as\"\n :as-child=\"props.asChild\"\n :class=\"composeClassName(classes, props.class)\"\n >\n <slot />\n </RekaToolbarButton>\n</template>\n"],"mappings":""}
@@ -1,4 +1,5 @@
1
1
  import { composeClassName } from "../../utils/composeClassName.js";
2
+ import { useDeprecatedBooleanProp } from "../../composables/useDeprecatedBooleanProp.js";
2
3
  import { computed, createBlock, defineComponent, normalizeClass, openBlock, renderSlot, unref, withCtx } from "vue";
3
4
  import { toggleButtonVariants } from "@auronui/styles";
4
5
  import { ToolbarButton } from "reka-ui";
@@ -9,13 +10,21 @@ var ToolbarButton_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
9
10
  variant: {},
10
11
  size: {},
11
12
  isIconOnly: { type: Boolean },
12
- disabled: { type: Boolean },
13
+ isDisabled: {
14
+ type: Boolean,
15
+ default: void 0
16
+ },
17
+ disabled: {
18
+ type: Boolean,
19
+ default: void 0
20
+ },
13
21
  class: {},
14
22
  as: {},
15
23
  asChild: { type: Boolean }
16
24
  },
17
25
  setup(__props) {
18
26
  const props = __props;
27
+ const isDisabled = useDeprecatedBooleanProp("ToolbarButton", "isDisabled", () => props.isDisabled, "disabled", () => props.disabled);
19
28
  const classes = computed(() => toggleButtonVariants({
20
29
  variant: props.variant ?? "ghost",
21
30
  size: props.size ?? "md",
@@ -23,7 +32,7 @@ var ToolbarButton_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
23
32
  }));
24
33
  return (_ctx, _cache) => {
25
34
  return openBlock(), createBlock(unref(ToolbarButton), {
26
- disabled: props.disabled,
35
+ disabled: unref(isDisabled),
27
36
  as: props.as,
28
37
  "as-child": props.asChild,
29
38
  class: normalizeClass(unref(composeClassName)(classes.value, props.class))
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarButton.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/toolbar/ToolbarButton.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { ToolbarButton as RekaToolbarButton } from 'reka-ui'\nimport { toggleButtonVariants, type ToggleButtonVariants } from '@auronui/styles'\nimport { composeClassName } from '../../utils/composeClassName'\n\nconst props = defineProps<{\n variant?: ToggleButtonVariants['variant']\n size?: ToggleButtonVariants['size']\n isIconOnly?: boolean\n disabled?: boolean\n class?: string\n /** Render as a different element */\n as?: string\n /** Merge props onto child element */\n asChild?: boolean\n}>()\n\nconst classes = computed(() =>\n toggleButtonVariants({\n variant: props.variant ?? 'ghost',\n size: props.size ?? 'md',\n isIconOnly: props.isIconOnly ?? false,\n })\n)\n</script>\n\n<template>\n <RekaToolbarButton\n :disabled=\"props.disabled\"\n :as=\"props.as\"\n :as-child=\"props.asChild\"\n :class=\"composeClassName(classes, props.class)\"\n >\n <slot />\n </RekaToolbarButton>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;EAMA,MAAM,QAAQ;EAYd,MAAM,UAAU,eACd,qBAAqB;GACnB,SAAS,MAAM,WAAW;GAC1B,MAAM,MAAM,QAAQ;GACpB,YAAY,MAAM,cAAc;GACjC,CAAA,CACH;;uBAIE,YAOoB,MAAA,cAAA,EAAA;IANjB,UAAU,MAAM;IAChB,IAAI,MAAM;IACV,YAAU,MAAM;IAChB,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,OAAS,MAAM,MAAK,CAAA;;2BAErC,CAAR,WAAQ,KAAA,QAAA,UAAA,CAAA,CAAA"}
1
+ {"version":3,"file":"ToolbarButton.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/toolbar/ToolbarButton.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { ToolbarButton as RekaToolbarButton } from 'reka-ui'\nimport { toggleButtonVariants, type ToggleButtonVariants } from '@auronui/styles'\nimport { composeClassName } from '../../utils/composeClassName'\nimport { useDeprecatedBooleanProp } from '../../composables/useDeprecatedBooleanProp'\n\nconst props = withDefaults(defineProps<{\n variant?: ToggleButtonVariants['variant']\n size?: ToggleButtonVariants['size']\n isIconOnly?: boolean\n isDisabled?: boolean\n /** @deprecated Use isDisabled instead. */\n disabled?: boolean\n class?: string\n /** Render as a different element */\n as?: string\n /** Merge props onto child element */\n asChild?: boolean\n}>(), {\n isDisabled: undefined,\n disabled: undefined,\n})\n\nconst isDisabled = useDeprecatedBooleanProp(\n 'ToolbarButton', 'isDisabled', () => props.isDisabled, 'disabled', () => props.disabled,\n)\n\nconst classes = computed(() =>\n toggleButtonVariants({\n variant: props.variant ?? 'ghost',\n size: props.size ?? 'md',\n isIconOnly: props.isIconOnly ?? false,\n })\n)\n</script>\n\n<template>\n <RekaToolbarButton\n :disabled=\"isDisabled\"\n :as=\"props.as\"\n :as-child=\"props.asChild\"\n :class=\"composeClassName(classes, props.class)\"\n >\n <slot />\n </RekaToolbarButton>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;EAOA,MAAM,QAAQ;EAiBd,MAAM,aAAa,yBACjB,iBAAiB,oBAAoB,MAAM,YAAY,kBAAkB,MAAM,SACjF;EAEA,MAAM,UAAU,eACd,qBAAqB;GACnB,SAAS,MAAM,WAAW;GAC1B,MAAM,MAAM,QAAQ;GACpB,YAAY,MAAM,cAAc;GACjC,CAAA,CACH;;uBAIE,YAOoB,MAAA,cAAA,EAAA;IANjB,UAAU,MAAA,WAAU;IACpB,IAAI,MAAM;IACV,YAAU,MAAM;IAChB,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,OAAS,MAAM,MAAK,CAAA;;2BAErC,CAAR,WAAQ,KAAA,QAAA,UAAA,CAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarToggleGroup.js","names":[],"sources":["../../../src/components/toolbar/ToolbarToggleGroup.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { ToolbarToggleGroup as RekaToolbarToggleGroup } from 'reka-ui'\nimport { toggleButtonGroupVariants, type ToggleButtonVariants } from '@auronui/styles'\nimport { composeClassName } from '../../utils/composeClassName'\nimport { useToolbarInject } from './toolbar.context'\nimport ToolbarToggleItem from './ToolbarToggleItem.vue'\n\ntype Single = string\ntype Multi = string[]\ntype ToolbarToggleShorthandItem = { value: string; label?: string; variant?: ToggleButtonVariants['variant']; size?: ToggleButtonVariants['size']; isIconOnly?: boolean; disabled?: boolean; class?: string }\n\nconst props = defineProps<{\n type: 'single' | 'multiple'\n modelValue?: Single | Multi\n defaultValue?: Single | Multi\n disabled?: boolean\n orientation?: 'horizontal' | 'vertical'\n isDetached?: boolean\n class?: string\n /** Shorthand API: render toggle items from an array instead of the compound slot API */\n items?: ToolbarToggleShorthandItem[]\n /** Whether to use roving focus for keyboard navigation */\n rovingFocus?: boolean\n /** Text direction */\n dir?: 'ltr' | 'rtl'\n /** Whether keyboard navigation loops around */\n loop?: boolean\n /** Render as a different element */\n as?: string\n /** Merge props onto child element */\n asChild?: boolean\n /** Form field name */\n name?: string\n /** Whether a value is required */\n required?: boolean\n}>()\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: Single | Multi]\n}>()\n\nconst ctx = useToolbarInject({ orientation: computed(() => 'horizontal' as const) })\nconst orientation = computed(() => props.orientation ?? ctx.orientation.value)\n\nconst classes = computed(() =>\n toggleButtonGroupVariants({ orientation: orientation.value, isDetached: props.isDetached ?? false }).base()\n)\n</script>\n\n<template>\n <RekaToolbarToggleGroup\n :type=\"props.type\"\n :model-value=\"props.modelValue\"\n :default-value=\"props.defaultValue\"\n :disabled=\"props.disabled\"\n :roving-focus=\"props.rovingFocus\"\n :dir=\"props.dir\"\n :loop=\"props.loop\"\n :as=\"props.as\"\n :as-child=\"props.asChild\"\n :name=\"props.name\"\n :required=\"props.required\"\n :class=\"composeClassName(classes, props.class)\"\n @update:model-value=\"(v) => emit('update:modelValue', v as Single | Multi)\"\n >\n <template v-if=\"props.items\">\n <ToolbarToggleItem\n v-for=\"item in props.items\"\n :key=\"item.value\"\n :value=\"item.value\"\n :variant=\"item.variant\"\n :size=\"item.size\"\n :is-icon-only=\"item.isIconOnly\"\n :disabled=\"item.disabled\"\n :class=\"item.class\"\n >{{ item.label }}</ToolbarToggleItem>\n </template>\n <slot v-else />\n </RekaToolbarToggleGroup>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"ToolbarToggleGroup.js","names":[],"sources":["../../../src/components/toolbar/ToolbarToggleGroup.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { ToolbarToggleGroup as RekaToolbarToggleGroup } from 'reka-ui'\nimport { toggleButtonGroupVariants, type ToggleButtonVariants } from '@auronui/styles'\nimport { composeClassName } from '../../utils/composeClassName'\nimport { useToolbarInject } from './toolbar.context'\nimport ToolbarToggleItem from './ToolbarToggleItem.vue'\nimport { useDeprecatedBooleanProp } from '../../composables/useDeprecatedBooleanProp'\n\ntype Single = string\ntype Multi = string[]\ntype ToolbarToggleShorthandItem = { value: string; label?: string; variant?: ToggleButtonVariants['variant']; size?: ToggleButtonVariants['size']; isIconOnly?: boolean; disabled?: boolean; class?: string }\n\nconst props = withDefaults(defineProps<{\n type: 'single' | 'multiple'\n modelValue?: Single | Multi\n defaultValue?: Single | Multi\n isDisabled?: boolean\n /** @deprecated Use isDisabled instead. */\n disabled?: boolean\n orientation?: 'horizontal' | 'vertical'\n isDetached?: boolean\n class?: string\n /** Shorthand API: render toggle items from an array instead of the compound slot API */\n items?: ToolbarToggleShorthandItem[]\n /** Whether to use roving focus for keyboard navigation */\n rovingFocus?: boolean\n /** Text direction */\n dir?: 'ltr' | 'rtl'\n /** Whether keyboard navigation loops around */\n loop?: boolean\n /** Render as a different element */\n as?: string\n /** Merge props onto child element */\n asChild?: boolean\n /** Form field name */\n name?: string\n isRequired?: boolean\n /**\n * Whether a value is required\n * @deprecated Use isRequired instead.\n */\n required?: boolean\n}>(), {\n isDisabled: undefined,\n disabled: undefined,\n isRequired: undefined,\n required: undefined,\n})\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: Single | Multi]\n}>()\n\nconst isDisabled = useDeprecatedBooleanProp(\n 'ToolbarToggleGroup', 'isDisabled', () => props.isDisabled, 'disabled', () => props.disabled,\n)\n\nconst isRequired = useDeprecatedBooleanProp(\n 'ToolbarToggleGroup', 'isRequired', () => props.isRequired, 'required', () => props.required,\n)\n\nconst ctx = useToolbarInject({ orientation: computed(() => 'horizontal' as const) })\nconst orientation = computed(() => props.orientation ?? ctx.orientation.value)\n\nconst classes = computed(() =>\n toggleButtonGroupVariants({ orientation: orientation.value, isDetached: props.isDetached ?? false }).base()\n)\n</script>\n\n<template>\n <RekaToolbarToggleGroup\n :type=\"props.type\"\n :model-value=\"props.modelValue\"\n :default-value=\"props.defaultValue\"\n :disabled=\"isDisabled\"\n :roving-focus=\"props.rovingFocus\"\n :dir=\"props.dir\"\n :loop=\"props.loop\"\n :as=\"props.as\"\n :as-child=\"props.asChild\"\n :name=\"props.name\"\n :required=\"isRequired\"\n :class=\"composeClassName(classes, props.class)\"\n @update:model-value=\"(v) => emit('update:modelValue', v as Single | Multi)\"\n >\n <template v-if=\"props.items\">\n <ToolbarToggleItem\n v-for=\"item in props.items\"\n :key=\"item.value\"\n :value=\"item.value\"\n :variant=\"item.variant\"\n :size=\"item.size\"\n :is-icon-only=\"item.isIconOnly\"\n :is-disabled=\"item.disabled\"\n :class=\"item.class\"\n >{{ item.label }}</ToolbarToggleItem>\n </template>\n <slot v-else />\n </RekaToolbarToggleGroup>\n</template>\n"],"mappings":""}
@@ -1,4 +1,5 @@
1
1
  import { composeClassName } from "../../utils/composeClassName.js";
2
+ import { useDeprecatedBooleanProp } from "../../composables/useDeprecatedBooleanProp.js";
2
3
  import { useToolbarInject } from "./toolbar.context.js";
3
4
  import ToolbarToggleItem_default from "./ToolbarToggleItem.js";
4
5
  import { Fragment, computed, createBlock, createElementBlock, createTextVNode, defineComponent, normalizeClass, openBlock, renderList, renderSlot, toDisplayString, unref, withCtx } from "vue";
@@ -11,7 +12,14 @@ var ToolbarToggleGroup_vue_vue_type_script_setup_true_lang_default = /* @__PURE_
11
12
  type: {},
12
13
  modelValue: {},
13
14
  defaultValue: {},
14
- disabled: { type: Boolean },
15
+ isDisabled: {
16
+ type: Boolean,
17
+ default: void 0
18
+ },
19
+ disabled: {
20
+ type: Boolean,
21
+ default: void 0
22
+ },
15
23
  orientation: {},
16
24
  isDetached: { type: Boolean },
17
25
  class: {},
@@ -22,12 +30,21 @@ var ToolbarToggleGroup_vue_vue_type_script_setup_true_lang_default = /* @__PURE_
22
30
  as: {},
23
31
  asChild: { type: Boolean },
24
32
  name: {},
25
- required: { type: Boolean }
33
+ isRequired: {
34
+ type: Boolean,
35
+ default: void 0
36
+ },
37
+ required: {
38
+ type: Boolean,
39
+ default: void 0
40
+ }
26
41
  },
27
42
  emits: ["update:modelValue"],
28
43
  setup(__props, { emit: __emit }) {
29
44
  const props = __props;
30
45
  const emit = __emit;
46
+ const isDisabled = useDeprecatedBooleanProp("ToolbarToggleGroup", "isDisabled", () => props.isDisabled, "disabled", () => props.disabled);
47
+ const isRequired = useDeprecatedBooleanProp("ToolbarToggleGroup", "isRequired", () => props.isRequired, "required", () => props.required);
31
48
  const ctx = useToolbarInject({ orientation: computed(() => "horizontal") });
32
49
  const orientation = computed(() => props.orientation ?? ctx.orientation.value);
33
50
  const classes = computed(() => toggleButtonGroupVariants({
@@ -39,14 +56,14 @@ var ToolbarToggleGroup_vue_vue_type_script_setup_true_lang_default = /* @__PURE_
39
56
  type: props.type,
40
57
  "model-value": props.modelValue,
41
58
  "default-value": props.defaultValue,
42
- disabled: props.disabled,
59
+ disabled: unref(isDisabled),
43
60
  "roving-focus": props.rovingFocus,
44
61
  dir: props.dir,
45
62
  loop: props.loop,
46
63
  as: props.as,
47
64
  "as-child": props.asChild,
48
65
  name: props.name,
49
- required: props.required,
66
+ required: unref(isRequired),
50
67
  class: normalizeClass(unref(composeClassName)(classes.value, props.class)),
51
68
  "onUpdate:modelValue": _cache[0] || (_cache[0] = (v) => emit("update:modelValue", v))
52
69
  }, {
@@ -57,7 +74,7 @@ var ToolbarToggleGroup_vue_vue_type_script_setup_true_lang_default = /* @__PURE_
57
74
  variant: item.variant,
58
75
  size: item.size,
59
76
  "is-icon-only": item.isIconOnly,
60
- disabled: item.disabled,
77
+ "is-disabled": item.disabled,
61
78
  class: normalizeClass(item.class)
62
79
  }, {
63
80
  default: withCtx(() => [createTextVNode(toDisplayString(item.label), 1)]),
@@ -67,7 +84,7 @@ var ToolbarToggleGroup_vue_vue_type_script_setup_true_lang_default = /* @__PURE_
67
84
  "variant",
68
85
  "size",
69
86
  "is-icon-only",
70
- "disabled",
87
+ "is-disabled",
71
88
  "class"
72
89
  ]);
73
90
  }), 128)) : renderSlot(_ctx.$slots, "default", { key: 1 })]),
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarToggleGroup.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/toolbar/ToolbarToggleGroup.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { ToolbarToggleGroup as RekaToolbarToggleGroup } from 'reka-ui'\nimport { toggleButtonGroupVariants, type ToggleButtonVariants } from '@auronui/styles'\nimport { composeClassName } from '../../utils/composeClassName'\nimport { useToolbarInject } from './toolbar.context'\nimport ToolbarToggleItem from './ToolbarToggleItem.vue'\n\ntype Single = string\ntype Multi = string[]\ntype ToolbarToggleShorthandItem = { value: string; label?: string; variant?: ToggleButtonVariants['variant']; size?: ToggleButtonVariants['size']; isIconOnly?: boolean; disabled?: boolean; class?: string }\n\nconst props = defineProps<{\n type: 'single' | 'multiple'\n modelValue?: Single | Multi\n defaultValue?: Single | Multi\n disabled?: boolean\n orientation?: 'horizontal' | 'vertical'\n isDetached?: boolean\n class?: string\n /** Shorthand API: render toggle items from an array instead of the compound slot API */\n items?: ToolbarToggleShorthandItem[]\n /** Whether to use roving focus for keyboard navigation */\n rovingFocus?: boolean\n /** Text direction */\n dir?: 'ltr' | 'rtl'\n /** Whether keyboard navigation loops around */\n loop?: boolean\n /** Render as a different element */\n as?: string\n /** Merge props onto child element */\n asChild?: boolean\n /** Form field name */\n name?: string\n /** Whether a value is required */\n required?: boolean\n}>()\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: Single | Multi]\n}>()\n\nconst ctx = useToolbarInject({ orientation: computed(() => 'horizontal' as const) })\nconst orientation = computed(() => props.orientation ?? ctx.orientation.value)\n\nconst classes = computed(() =>\n toggleButtonGroupVariants({ orientation: orientation.value, isDetached: props.isDetached ?? false }).base()\n)\n</script>\n\n<template>\n <RekaToolbarToggleGroup\n :type=\"props.type\"\n :model-value=\"props.modelValue\"\n :default-value=\"props.defaultValue\"\n :disabled=\"props.disabled\"\n :roving-focus=\"props.rovingFocus\"\n :dir=\"props.dir\"\n :loop=\"props.loop\"\n :as=\"props.as\"\n :as-child=\"props.asChild\"\n :name=\"props.name\"\n :required=\"props.required\"\n :class=\"composeClassName(classes, props.class)\"\n @update:model-value=\"(v) => emit('update:modelValue', v as Single | Multi)\"\n >\n <template v-if=\"props.items\">\n <ToolbarToggleItem\n v-for=\"item in props.items\"\n :key=\"item.value\"\n :value=\"item.value\"\n :variant=\"item.variant\"\n :size=\"item.size\"\n :is-icon-only=\"item.isIconOnly\"\n :disabled=\"item.disabled\"\n :class=\"item.class\"\n >{{ item.label }}</ToolbarToggleItem>\n </template>\n <slot v-else />\n </RekaToolbarToggleGroup>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYA,MAAM,QAAQ;EA0Bd,MAAM,OAAO;EAIb,MAAM,MAAM,iBAAiB,EAAE,aAAa,eAAe,aAAsB,EAAE,CAAA;EACnF,MAAM,cAAc,eAAe,MAAM,eAAe,IAAI,YAAY,MAAK;EAE7E,MAAM,UAAU,eACd,0BAA0B;GAAE,aAAa,YAAY;GAAO,YAAY,MAAM,cAAc;GAAO,CAAC,CAAC,MAAK,CAC5G;;uBAIE,YA4ByB,MAAA,mBAAA,EAAA;IA3BtB,MAAM,MAAM;IACZ,eAAa,MAAM;IACnB,iBAAe,MAAM;IACrB,UAAU,MAAM;IAChB,gBAAc,MAAM;IACpB,KAAK,MAAM;IACX,MAAM,MAAM;IACZ,IAAI,MAAM;IACV,YAAU,MAAM;IAChB,MAAM,MAAM;IACZ,UAAU,MAAM;IAChB,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,OAAS,MAAM,MAAK,CAAA;IAC5C,uBAAkB,OAAA,OAAA,OAAA,MAAG,MAAM,KAAI,qBAAsB,EAAC;;2BAa5C,CAXK,MAAM,SAAA,UAAA,KAAA,EACpB,mBASqC,UAAA,EAAA,KAAA,GAAA,EAAA,WARpB,MAAM,QAAd,SAAI;yBADb,YASqC,2BAAA;MAPlC,KAAK,KAAK;MACV,OAAO,KAAK;MACZ,SAAS,KAAK;MACd,MAAM,KAAK;MACX,gBAAc,KAAK;MACnB,UAAU,KAAK;MACf,OAAK,eAAE,KAAK,MAAK;;6BACH,CAAA,gBAAA,gBAAb,KAAK,MAAK,EAAA,EAAA,CAAA,CAAA;;;;;;;;;;gBAEhB,WAAe,KAAA,QAAA,WAAA,EAAA,KAAA,GAAA,CAAA,CAAA,CAAA"}
1
+ {"version":3,"file":"ToolbarToggleGroup.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/toolbar/ToolbarToggleGroup.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { ToolbarToggleGroup as RekaToolbarToggleGroup } from 'reka-ui'\nimport { toggleButtonGroupVariants, type ToggleButtonVariants } from '@auronui/styles'\nimport { composeClassName } from '../../utils/composeClassName'\nimport { useToolbarInject } from './toolbar.context'\nimport ToolbarToggleItem from './ToolbarToggleItem.vue'\nimport { useDeprecatedBooleanProp } from '../../composables/useDeprecatedBooleanProp'\n\ntype Single = string\ntype Multi = string[]\ntype ToolbarToggleShorthandItem = { value: string; label?: string; variant?: ToggleButtonVariants['variant']; size?: ToggleButtonVariants['size']; isIconOnly?: boolean; disabled?: boolean; class?: string }\n\nconst props = withDefaults(defineProps<{\n type: 'single' | 'multiple'\n modelValue?: Single | Multi\n defaultValue?: Single | Multi\n isDisabled?: boolean\n /** @deprecated Use isDisabled instead. */\n disabled?: boolean\n orientation?: 'horizontal' | 'vertical'\n isDetached?: boolean\n class?: string\n /** Shorthand API: render toggle items from an array instead of the compound slot API */\n items?: ToolbarToggleShorthandItem[]\n /** Whether to use roving focus for keyboard navigation */\n rovingFocus?: boolean\n /** Text direction */\n dir?: 'ltr' | 'rtl'\n /** Whether keyboard navigation loops around */\n loop?: boolean\n /** Render as a different element */\n as?: string\n /** Merge props onto child element */\n asChild?: boolean\n /** Form field name */\n name?: string\n isRequired?: boolean\n /**\n * Whether a value is required\n * @deprecated Use isRequired instead.\n */\n required?: boolean\n}>(), {\n isDisabled: undefined,\n disabled: undefined,\n isRequired: undefined,\n required: undefined,\n})\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: Single | Multi]\n}>()\n\nconst isDisabled = useDeprecatedBooleanProp(\n 'ToolbarToggleGroup', 'isDisabled', () => props.isDisabled, 'disabled', () => props.disabled,\n)\n\nconst isRequired = useDeprecatedBooleanProp(\n 'ToolbarToggleGroup', 'isRequired', () => props.isRequired, 'required', () => props.required,\n)\n\nconst ctx = useToolbarInject({ orientation: computed(() => 'horizontal' as const) })\nconst orientation = computed(() => props.orientation ?? ctx.orientation.value)\n\nconst classes = computed(() =>\n toggleButtonGroupVariants({ orientation: orientation.value, isDetached: props.isDetached ?? false }).base()\n)\n</script>\n\n<template>\n <RekaToolbarToggleGroup\n :type=\"props.type\"\n :model-value=\"props.modelValue\"\n :default-value=\"props.defaultValue\"\n :disabled=\"isDisabled\"\n :roving-focus=\"props.rovingFocus\"\n :dir=\"props.dir\"\n :loop=\"props.loop\"\n :as=\"props.as\"\n :as-child=\"props.asChild\"\n :name=\"props.name\"\n :required=\"isRequired\"\n :class=\"composeClassName(classes, props.class)\"\n @update:model-value=\"(v) => emit('update:modelValue', v as Single | Multi)\"\n >\n <template v-if=\"props.items\">\n <ToolbarToggleItem\n v-for=\"item in props.items\"\n :key=\"item.value\"\n :value=\"item.value\"\n :variant=\"item.variant\"\n :size=\"item.size\"\n :is-icon-only=\"item.isIconOnly\"\n :is-disabled=\"item.disabled\"\n :class=\"item.class\"\n >{{ item.label }}</ToolbarToggleItem>\n </template>\n <slot v-else />\n </RekaToolbarToggleGroup>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAaA,MAAM,QAAQ;EAqCd,MAAM,OAAO;EAIb,MAAM,aAAa,yBACjB,sBAAsB,oBAAoB,MAAM,YAAY,kBAAkB,MAAM,SACtF;EAEA,MAAM,aAAa,yBACjB,sBAAsB,oBAAoB,MAAM,YAAY,kBAAkB,MAAM,SACtF;EAEA,MAAM,MAAM,iBAAiB,EAAE,aAAa,eAAe,aAAsB,EAAE,CAAA;EACnF,MAAM,cAAc,eAAe,MAAM,eAAe,IAAI,YAAY,MAAK;EAE7E,MAAM,UAAU,eACd,0BAA0B;GAAE,aAAa,YAAY;GAAO,YAAY,MAAM,cAAc;GAAO,CAAC,CAAC,MAAK,CAC5G;;uBAIE,YA4ByB,MAAA,mBAAA,EAAA;IA3BtB,MAAM,MAAM;IACZ,eAAa,MAAM;IACnB,iBAAe,MAAM;IACrB,UAAU,MAAA,WAAU;IACpB,gBAAc,MAAM;IACpB,KAAK,MAAM;IACX,MAAM,MAAM;IACZ,IAAI,MAAM;IACV,YAAU,MAAM;IAChB,MAAM,MAAM;IACZ,UAAU,MAAA,WAAU;IACpB,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,OAAS,MAAM,MAAK,CAAA;IAC5C,uBAAkB,OAAA,OAAA,OAAA,MAAG,MAAM,KAAI,qBAAsB,EAAC;;2BAa5C,CAXK,MAAM,SAAA,UAAA,KAAA,EACpB,mBASqC,UAAA,EAAA,KAAA,GAAA,EAAA,WARpB,MAAM,QAAd,SAAI;yBADb,YASqC,2BAAA;MAPlC,KAAK,KAAK;MACV,OAAO,KAAK;MACZ,SAAS,KAAK;MACd,MAAM,KAAK;MACX,gBAAc,KAAK;MACnB,eAAa,KAAK;MAClB,OAAK,eAAE,KAAK,MAAK;;6BACH,CAAA,gBAAA,gBAAb,KAAK,MAAK,EAAA,EAAA,CAAA,CAAA;;;;;;;;;;gBAEhB,WAAe,KAAA,QAAA,WAAA,EAAA,KAAA,GAAA,CAAA,CAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarToggleItem.js","names":[],"sources":["../../../src/components/toolbar/ToolbarToggleItem.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { ToolbarToggleItem as RekaToolbarToggleItem } from 'reka-ui'\nimport { toggleButtonVariants, type ToggleButtonVariants } from '@auronui/styles'\nimport { composeClassName } from '../../utils/composeClassName'\n\nconst props = defineProps<{\n value: string\n variant?: ToggleButtonVariants['variant']\n size?: ToggleButtonVariants['size']\n isIconOnly?: boolean\n disabled?: boolean\n class?: string\n /** Render as a different element */\n as?: string\n /** Merge props onto child element */\n asChild?: boolean\n}>()\n\nconst classes = computed(() =>\n toggleButtonVariants({\n variant: props.variant ?? 'ghost',\n size: props.size ?? 'md',\n isIconOnly: props.isIconOnly ?? false,\n })\n)\n</script>\n\n<template>\n <RekaToolbarToggleItem\n :value=\"props.value\"\n :disabled=\"props.disabled\"\n :as=\"props.as\"\n :as-child=\"props.asChild\"\n :class=\"composeClassName(classes, props.class)\"\n >\n <slot />\n </RekaToolbarToggleItem>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"ToolbarToggleItem.js","names":[],"sources":["../../../src/components/toolbar/ToolbarToggleItem.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { ToolbarToggleItem as RekaToolbarToggleItem } from 'reka-ui'\nimport { toggleButtonVariants, type ToggleButtonVariants } from '@auronui/styles'\nimport { composeClassName } from '../../utils/composeClassName'\nimport { useDeprecatedBooleanProp } from '../../composables/useDeprecatedBooleanProp'\n\nconst props = withDefaults(defineProps<{\n value: string\n variant?: ToggleButtonVariants['variant']\n size?: ToggleButtonVariants['size']\n isIconOnly?: boolean\n isDisabled?: boolean\n /** @deprecated Use isDisabled instead. */\n disabled?: boolean\n class?: string\n /** Render as a different element */\n as?: string\n /** Merge props onto child element */\n asChild?: boolean\n}>(), {\n isDisabled: undefined,\n disabled: undefined,\n})\n\nconst isDisabled = useDeprecatedBooleanProp(\n 'ToolbarToggleItem', 'isDisabled', () => props.isDisabled, 'disabled', () => props.disabled,\n)\n\nconst classes = computed(() =>\n toggleButtonVariants({\n variant: props.variant ?? 'ghost',\n size: props.size ?? 'md',\n isIconOnly: props.isIconOnly ?? false,\n })\n)\n</script>\n\n<template>\n <RekaToolbarToggleItem\n :value=\"props.value\"\n :disabled=\"isDisabled\"\n :as=\"props.as\"\n :as-child=\"props.asChild\"\n :class=\"composeClassName(classes, props.class)\"\n >\n <slot />\n </RekaToolbarToggleItem>\n</template>\n"],"mappings":""}
@@ -1,4 +1,5 @@
1
1
  import { composeClassName } from "../../utils/composeClassName.js";
2
+ import { useDeprecatedBooleanProp } from "../../composables/useDeprecatedBooleanProp.js";
2
3
  import { computed, createBlock, defineComponent, normalizeClass, openBlock, renderSlot, unref, withCtx } from "vue";
3
4
  import { toggleButtonVariants } from "@auronui/styles";
4
5
  import { ToolbarToggleItem } from "reka-ui";
@@ -10,13 +11,21 @@ var ToolbarToggleItem_vue_vue_type_script_setup_true_lang_default = /* @__PURE__
10
11
  variant: {},
11
12
  size: {},
12
13
  isIconOnly: { type: Boolean },
13
- disabled: { type: Boolean },
14
+ isDisabled: {
15
+ type: Boolean,
16
+ default: void 0
17
+ },
18
+ disabled: {
19
+ type: Boolean,
20
+ default: void 0
21
+ },
14
22
  class: {},
15
23
  as: {},
16
24
  asChild: { type: Boolean }
17
25
  },
18
26
  setup(__props) {
19
27
  const props = __props;
28
+ const isDisabled = useDeprecatedBooleanProp("ToolbarToggleItem", "isDisabled", () => props.isDisabled, "disabled", () => props.disabled);
20
29
  const classes = computed(() => toggleButtonVariants({
21
30
  variant: props.variant ?? "ghost",
22
31
  size: props.size ?? "md",
@@ -25,7 +34,7 @@ var ToolbarToggleItem_vue_vue_type_script_setup_true_lang_default = /* @__PURE__
25
34
  return (_ctx, _cache) => {
26
35
  return openBlock(), createBlock(unref(ToolbarToggleItem), {
27
36
  value: props.value,
28
- disabled: props.disabled,
37
+ disabled: unref(isDisabled),
29
38
  as: props.as,
30
39
  "as-child": props.asChild,
31
40
  class: normalizeClass(unref(composeClassName)(classes.value, props.class))
@@ -1 +1 @@
1
- {"version":3,"file":"ToolbarToggleItem.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/toolbar/ToolbarToggleItem.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { ToolbarToggleItem as RekaToolbarToggleItem } from 'reka-ui'\nimport { toggleButtonVariants, type ToggleButtonVariants } from '@auronui/styles'\nimport { composeClassName } from '../../utils/composeClassName'\n\nconst props = defineProps<{\n value: string\n variant?: ToggleButtonVariants['variant']\n size?: ToggleButtonVariants['size']\n isIconOnly?: boolean\n disabled?: boolean\n class?: string\n /** Render as a different element */\n as?: string\n /** Merge props onto child element */\n asChild?: boolean\n}>()\n\nconst classes = computed(() =>\n toggleButtonVariants({\n variant: props.variant ?? 'ghost',\n size: props.size ?? 'md',\n isIconOnly: props.isIconOnly ?? false,\n })\n)\n</script>\n\n<template>\n <RekaToolbarToggleItem\n :value=\"props.value\"\n :disabled=\"props.disabled\"\n :as=\"props.as\"\n :as-child=\"props.asChild\"\n :class=\"composeClassName(classes, props.class)\"\n >\n <slot />\n </RekaToolbarToggleItem>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;EAMA,MAAM,QAAQ;EAad,MAAM,UAAU,eACd,qBAAqB;GACnB,SAAS,MAAM,WAAW;GAC1B,MAAM,MAAM,QAAQ;GACpB,YAAY,MAAM,cAAc;GACjC,CAAA,CACH;;uBAIE,YAQwB,MAAA,kBAAA,EAAA;IAPrB,OAAO,MAAM;IACb,UAAU,MAAM;IAChB,IAAI,MAAM;IACV,YAAU,MAAM;IAChB,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,OAAS,MAAM,MAAK,CAAA;;2BAErC,CAAR,WAAQ,KAAA,QAAA,UAAA,CAAA,CAAA"}
1
+ {"version":3,"file":"ToolbarToggleItem.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/toolbar/ToolbarToggleItem.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { ToolbarToggleItem as RekaToolbarToggleItem } from 'reka-ui'\nimport { toggleButtonVariants, type ToggleButtonVariants } from '@auronui/styles'\nimport { composeClassName } from '../../utils/composeClassName'\nimport { useDeprecatedBooleanProp } from '../../composables/useDeprecatedBooleanProp'\n\nconst props = withDefaults(defineProps<{\n value: string\n variant?: ToggleButtonVariants['variant']\n size?: ToggleButtonVariants['size']\n isIconOnly?: boolean\n isDisabled?: boolean\n /** @deprecated Use isDisabled instead. */\n disabled?: boolean\n class?: string\n /** Render as a different element */\n as?: string\n /** Merge props onto child element */\n asChild?: boolean\n}>(), {\n isDisabled: undefined,\n disabled: undefined,\n})\n\nconst isDisabled = useDeprecatedBooleanProp(\n 'ToolbarToggleItem', 'isDisabled', () => props.isDisabled, 'disabled', () => props.disabled,\n)\n\nconst classes = computed(() =>\n toggleButtonVariants({\n variant: props.variant ?? 'ghost',\n size: props.size ?? 'md',\n isIconOnly: props.isIconOnly ?? false,\n })\n)\n</script>\n\n<template>\n <RekaToolbarToggleItem\n :value=\"props.value\"\n :disabled=\"isDisabled\"\n :as=\"props.as\"\n :as-child=\"props.asChild\"\n :class=\"composeClassName(classes, props.class)\"\n >\n <slot />\n </RekaToolbarToggleItem>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;EAOA,MAAM,QAAQ;EAkBd,MAAM,aAAa,yBACjB,qBAAqB,oBAAoB,MAAM,YAAY,kBAAkB,MAAM,SACrF;EAEA,MAAM,UAAU,eACd,qBAAqB;GACnB,SAAS,MAAM,WAAW;GAC1B,MAAM,MAAM,QAAQ;GACpB,YAAY,MAAM,cAAc;GACjC,CAAA,CACH;;uBAIE,YAQwB,MAAA,kBAAA,EAAA;IAPrB,OAAO,MAAM;IACb,UAAU,MAAA,WAAU;IACpB,IAAI,MAAM;IACV,YAAU,MAAM;IAChB,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,OAAS,MAAM,MAAK,CAAA;;2BAErC,CAAR,WAAQ,KAAA,QAAA,UAAA,CAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"TooltipProvider.js","names":[],"sources":["../../../src/components/tooltip/TooltipProvider.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { TooltipProvider } from 'reka-ui'\n\nconst props = withDefaults(defineProps<{\n delayDuration?: number\n skipDelayDuration?: number\n disableHoverableContent?: boolean\n disableClosingTrigger?: boolean\n disabled?: boolean\n ignoreNonKeyboardFocus?: boolean\n content?: object\n}>(), {\n delayDuration: 700,\n skipDelayDuration: 300,\n disableHoverableContent: false,\n disableClosingTrigger: false,\n disabled: false,\n ignoreNonKeyboardFocus: false,\n})\n</script>\n\n<template>\n <TooltipProvider\n :delay-duration=\"props.delayDuration\"\n :skip-delay-duration=\"props.skipDelayDuration\"\n :disable-hoverable-content=\"props.disableHoverableContent\"\n :disable-closing-trigger=\"props.disableClosingTrigger\"\n :disabled=\"props.disabled\"\n :ignore-non-keyboard-focus=\"props.ignoreNonKeyboardFocus\"\n :content=\"props.content\"\n >\n <slot />\n </TooltipProvider>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"TooltipProvider.js","names":[],"sources":["../../../src/components/tooltip/TooltipProvider.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { TooltipProvider } from 'reka-ui'\nimport { useDeprecatedBooleanProp } from '../../composables/useDeprecatedBooleanProp'\n\nconst props = withDefaults(defineProps<{\n delayDuration?: number\n skipDelayDuration?: number\n disableHoverableContent?: boolean\n disableClosingTrigger?: boolean\n isDisabled?: boolean\n /** @deprecated Use isDisabled instead. */\n disabled?: boolean\n ignoreNonKeyboardFocus?: boolean\n content?: object\n}>(), {\n delayDuration: 700,\n skipDelayDuration: 300,\n disableHoverableContent: false,\n disableClosingTrigger: false,\n isDisabled: undefined,\n disabled: undefined,\n ignoreNonKeyboardFocus: false,\n})\n\nconst isDisabled = useDeprecatedBooleanProp(\n 'TooltipProvider', 'isDisabled', () => props.isDisabled, 'disabled', () => props.disabled,\n)\n</script>\n\n<template>\n <TooltipProvider\n :delay-duration=\"props.delayDuration\"\n :skip-delay-duration=\"props.skipDelayDuration\"\n :disable-hoverable-content=\"props.disableHoverableContent\"\n :disable-closing-trigger=\"props.disableClosingTrigger\"\n :disabled=\"isDisabled\"\n :ignore-non-keyboard-focus=\"props.ignoreNonKeyboardFocus\"\n :content=\"props.content\"\n >\n <slot />\n </TooltipProvider>\n</template>\n"],"mappings":""}
@@ -1,3 +1,4 @@
1
+ import { useDeprecatedBooleanProp } from "../../composables/useDeprecatedBooleanProp.js";
1
2
  import { createBlock, defineComponent, openBlock, renderSlot, unref, withCtx } from "vue";
2
3
  import { TooltipProvider } from "reka-ui";
3
4
  //#region src/components/tooltip/TooltipProvider.vue?vue&type=script&setup=true&lang.ts
@@ -14,9 +15,13 @@ var TooltipProvider_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
14
15
  type: Boolean,
15
16
  default: false
16
17
  },
18
+ isDisabled: {
19
+ type: Boolean,
20
+ default: void 0
21
+ },
17
22
  disabled: {
18
23
  type: Boolean,
19
- default: false
24
+ default: void 0
20
25
  },
21
26
  ignoreNonKeyboardFocus: {
22
27
  type: Boolean,
@@ -26,13 +31,14 @@ var TooltipProvider_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ *
26
31
  },
27
32
  setup(__props) {
28
33
  const props = __props;
34
+ const isDisabled = useDeprecatedBooleanProp("TooltipProvider", "isDisabled", () => props.isDisabled, "disabled", () => props.disabled);
29
35
  return (_ctx, _cache) => {
30
36
  return openBlock(), createBlock(unref(TooltipProvider), {
31
37
  "delay-duration": props.delayDuration,
32
38
  "skip-delay-duration": props.skipDelayDuration,
33
39
  "disable-hoverable-content": props.disableHoverableContent,
34
40
  "disable-closing-trigger": props.disableClosingTrigger,
35
- disabled: props.disabled,
41
+ disabled: unref(isDisabled),
36
42
  "ignore-non-keyboard-focus": props.ignoreNonKeyboardFocus,
37
43
  content: props.content
38
44
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"TooltipProvider.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/tooltip/TooltipProvider.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { TooltipProvider } from 'reka-ui'\n\nconst props = withDefaults(defineProps<{\n delayDuration?: number\n skipDelayDuration?: number\n disableHoverableContent?: boolean\n disableClosingTrigger?: boolean\n disabled?: boolean\n ignoreNonKeyboardFocus?: boolean\n content?: object\n}>(), {\n delayDuration: 700,\n skipDelayDuration: 300,\n disableHoverableContent: false,\n disableClosingTrigger: false,\n disabled: false,\n ignoreNonKeyboardFocus: false,\n})\n</script>\n\n<template>\n <TooltipProvider\n :delay-duration=\"props.delayDuration\"\n :skip-delay-duration=\"props.skipDelayDuration\"\n :disable-hoverable-content=\"props.disableHoverableContent\"\n :disable-closing-trigger=\"props.disableClosingTrigger\"\n :disabled=\"props.disabled\"\n :ignore-non-keyboard-focus=\"props.ignoreNonKeyboardFocus\"\n :content=\"props.content\"\n >\n <slot />\n </TooltipProvider>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;EAGA,MAAM,QAAQ;;uBAmBZ,YAUkB,MAAA,gBAAA,EAAA;IATf,kBAAgB,MAAM;IACtB,uBAAqB,MAAM;IAC3B,6BAA2B,MAAM;IACjC,2BAAyB,MAAM;IAC/B,UAAU,MAAM;IAChB,6BAA2B,MAAM;IACjC,SAAS,MAAM;;2BAER,CAAR,WAAQ,KAAA,QAAA,UAAA,CAAA,CAAA"}
1
+ {"version":3,"file":"TooltipProvider.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/tooltip/TooltipProvider.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { TooltipProvider } from 'reka-ui'\nimport { useDeprecatedBooleanProp } from '../../composables/useDeprecatedBooleanProp'\n\nconst props = withDefaults(defineProps<{\n delayDuration?: number\n skipDelayDuration?: number\n disableHoverableContent?: boolean\n disableClosingTrigger?: boolean\n isDisabled?: boolean\n /** @deprecated Use isDisabled instead. */\n disabled?: boolean\n ignoreNonKeyboardFocus?: boolean\n content?: object\n}>(), {\n delayDuration: 700,\n skipDelayDuration: 300,\n disableHoverableContent: false,\n disableClosingTrigger: false,\n isDisabled: undefined,\n disabled: undefined,\n ignoreNonKeyboardFocus: false,\n})\n\nconst isDisabled = useDeprecatedBooleanProp(\n 'TooltipProvider', 'isDisabled', () => props.isDisabled, 'disabled', () => props.disabled,\n)\n</script>\n\n<template>\n <TooltipProvider\n :delay-duration=\"props.delayDuration\"\n :skip-delay-duration=\"props.skipDelayDuration\"\n :disable-hoverable-content=\"props.disableHoverableContent\"\n :disable-closing-trigger=\"props.disableClosingTrigger\"\n :disabled=\"isDisabled\"\n :ignore-non-keyboard-focus=\"props.ignoreNonKeyboardFocus\"\n :content=\"props.content\"\n >\n <slot />\n </TooltipProvider>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIA,MAAM,QAAQ;EAoBd,MAAM,aAAa,yBACjB,mBAAmB,oBAAoB,MAAM,YAAY,kBAAkB,MAAM,SACnF;;uBAIE,YAUkB,MAAA,gBAAA,EAAA;IATf,kBAAgB,MAAM;IACtB,uBAAqB,MAAM;IAC3B,6BAA2B,MAAM;IACjC,2BAAyB,MAAM;IAC/B,UAAU,MAAA,WAAU;IACpB,6BAA2B,MAAM;IACjC,SAAS,MAAM;;2BAER,CAAR,WAAQ,KAAA,QAAA,UAAA,CAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Tree.js","names":[],"sources":["../../../src/components/tree/Tree.vue"],"sourcesContent":["<script setup lang=\"ts\" generic=\"T extends Record<string, any>\">\nimport { computed, provide } from 'vue'\nimport { TreeRoot } from 'reka-ui'\nimport { treeVariants, type TreeVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { treeContextKey } from './Tree.context'\n\nconst props = withDefaults(defineProps<{\n items?: T[]\n modelValue?: T | T[]\n defaultValue?: T | T[]\n expanded?: string[]\n defaultExpanded?: string[]\n getKey: (item: T) => string\n getChildren?: (item: T) => T[] | undefined\n multiple?: boolean\n selectionBehavior?: 'toggle' | 'replace'\n propagateSelect?: boolean\n size?: TreeVariants['size']\n class?: ClassValue\n /** Per-slot class overrides */\n classNames?: Partial<{\n root: ClassValue\n }>\n /** Text direction */\n dir?: 'ltr' | 'rtl'\n /** Whether the entire tree is disabled */\n disabled?: boolean\n /** Whether selection bubbles up to parent nodes */\n bubbleSelect?: boolean\n /** Render as a different element */\n as?: string\n /** Merge props onto child element */\n asChild?: boolean\n}>(), {\n items: () => [],\n modelValue: undefined,\n defaultValue: undefined,\n expanded: undefined,\n defaultExpanded: () => [],\n getChildren: (item: T) => item.children as T[] | undefined,\n multiple: false,\n selectionBehavior: 'toggle',\n propagateSelect: false,\n size: 'md',\n class: undefined,\n})\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: T | T[]]\n 'update:expanded': [value: string[]]\n}>()\n\nconst slotFns = computed(() => treeVariants({ size: props.size }))\n\nprovide(treeContextKey, {\n size: computed(() => props.size ?? 'md'),\n getChildren: (item: unknown) => props.getChildren?.(item as T),\n})\n</script>\n\n<template>\n <TreeRoot\n :items=\"items\"\n :get-key=\"getKey\"\n :get-children=\"getChildren\"\n :model-value=\"(modelValue as any)\"\n :default-value=\"(defaultValue as any)\"\n :expanded=\"expanded\"\n :default-expanded=\"defaultExpanded\"\n :multiple=\"multiple\"\n :selection-behavior=\"selectionBehavior\"\n :propagate-select=\"propagateSelect\"\n :dir=\"props.dir\"\n :disabled=\"props.disabled\"\n :bubble-select=\"props.bubbleSelect\"\n :as=\"props.as\"\n :as-child=\"props.asChild\"\n :class=\"composeClassName(slotFns.root(), props.class, props.classNames?.root)\"\n data-slot=\"tree\"\n @update:model-value=\"(v: any) => emit('update:modelValue', v)\"\n @update:expanded=\"(v: string[]) => emit('update:expanded', v)\"\n >\n <template #default=\"slotProps\">\n <slot v-bind=\"slotProps\" />\n </template>\n </TreeRoot>\n</template>\n"],"mappings":""}
1
+ {"version":3,"file":"Tree.js","names":[],"sources":["../../../src/components/tree/Tree.vue"],"sourcesContent":["<script setup lang=\"ts\" generic=\"T extends Record<string, any>\">\nimport { computed, provide } from 'vue'\nimport { TreeRoot } from 'reka-ui'\nimport { treeVariants, type TreeVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { treeContextKey } from './Tree.context'\nimport { useDeprecatedBooleanProp } from '../../composables/useDeprecatedBooleanProp'\n\nconst props = withDefaults(defineProps<{\n items?: T[]\n modelValue?: T | T[]\n defaultValue?: T | T[]\n expanded?: string[]\n defaultExpanded?: string[]\n getKey: (item: T) => string\n getChildren?: (item: T) => T[] | undefined\n multiple?: boolean\n selectionBehavior?: 'toggle' | 'replace'\n propagateSelect?: boolean\n size?: TreeVariants['size']\n class?: ClassValue\n /** Per-slot class overrides */\n classNames?: Partial<{\n root: ClassValue\n }>\n /** Text direction */\n dir?: 'ltr' | 'rtl'\n /** Whether the entire tree is disabled */\n isDisabled?: boolean\n /** @deprecated Use isDisabled instead. */\n disabled?: boolean\n /** Whether selection bubbles up to parent nodes */\n bubbleSelect?: boolean\n /** Render as a different element */\n as?: string\n /** Merge props onto child element */\n asChild?: boolean\n}>(), {\n items: () => [],\n modelValue: undefined,\n defaultValue: undefined,\n expanded: undefined,\n defaultExpanded: () => [],\n getChildren: (item: T) => item.children as T[] | undefined,\n multiple: false,\n selectionBehavior: 'toggle',\n propagateSelect: false,\n size: 'md',\n class: undefined,\n isDisabled: undefined,\n disabled: undefined,\n})\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: T | T[]]\n 'update:expanded': [value: string[]]\n}>()\n\nconst slotFns = computed(() => treeVariants({ size: props.size }))\n\nconst isDisabled = useDeprecatedBooleanProp(\n 'Tree', 'isDisabled', () => props.isDisabled, 'disabled', () => props.disabled,\n)\n\nprovide(treeContextKey, {\n size: computed(() => props.size ?? 'md'),\n getChildren: (item: unknown) => props.getChildren?.(item as T),\n})\n</script>\n\n<template>\n <TreeRoot\n :items=\"items\"\n :get-key=\"getKey\"\n :get-children=\"getChildren\"\n :model-value=\"(modelValue as any)\"\n :default-value=\"(defaultValue as any)\"\n :expanded=\"expanded\"\n :default-expanded=\"defaultExpanded\"\n :multiple=\"multiple\"\n :selection-behavior=\"selectionBehavior\"\n :propagate-select=\"propagateSelect\"\n :dir=\"props.dir\"\n :disabled=\"isDisabled\"\n :bubble-select=\"props.bubbleSelect\"\n :as=\"props.as\"\n :as-child=\"props.asChild\"\n :class=\"composeClassName(slotFns.root(), props.class, props.classNames?.root)\"\n data-slot=\"tree\"\n @update:model-value=\"(v: any) => emit('update:modelValue', v)\"\n @update:expanded=\"(v: string[]) => emit('update:expanded', v)\"\n >\n <template #default=\"slotProps\">\n <slot v-bind=\"slotProps\" />\n </template>\n </TreeRoot>\n</template>\n"],"mappings":""}