@auronui/vue 1.0.15 → 1.0.17

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 (156) hide show
  1. package/dist/cjs/index.cjs +582 -75
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/components/accordion/Accordion.vue_vue_type_script_setup_true_lang.js +7 -1
  4. package/dist/components/accordion/Accordion.vue_vue_type_script_setup_true_lang.js.map +1 -1
  5. package/dist/components/accordion/AccordionContent.vue_vue_type_script_setup_true_lang.js +7 -1
  6. package/dist/components/accordion/AccordionContent.vue_vue_type_script_setup_true_lang.js.map +1 -1
  7. package/dist/components/accordion/AccordionHeader.vue_vue_type_script_setup_true_lang.js +7 -1
  8. package/dist/components/accordion/AccordionHeader.vue_vue_type_script_setup_true_lang.js.map +1 -1
  9. package/dist/components/accordion/AccordionItem.vue_vue_type_script_setup_true_lang.js +7 -1
  10. package/dist/components/accordion/AccordionItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  11. package/dist/components/accordion/AccordionTrigger.vue_vue_type_script_setup_true_lang.js +7 -1
  12. package/dist/components/accordion/AccordionTrigger.vue_vue_type_script_setup_true_lang.js.map +1 -1
  13. package/dist/components/alert-dialog/AlertDialogAction.vue_vue_type_script_setup_true_lang.js +7 -1
  14. package/dist/components/alert-dialog/AlertDialogAction.vue_vue_type_script_setup_true_lang.js.map +1 -1
  15. package/dist/components/alert-dialog/AlertDialogCancel.vue_vue_type_script_setup_true_lang.js +7 -1
  16. package/dist/components/alert-dialog/AlertDialogCancel.vue_vue_type_script_setup_true_lang.js.map +1 -1
  17. package/dist/components/aspect-ratio/AspectRatio.vue_vue_type_script_setup_true_lang.js +10 -1
  18. package/dist/components/aspect-ratio/AspectRatio.vue_vue_type_script_setup_true_lang.js.map +1 -1
  19. package/dist/components/autocomplete/Autocomplete.vue_vue_type_script_setup_true_lang.js +7 -1
  20. package/dist/components/autocomplete/Autocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
  21. package/dist/components/avatar/Avatar.vue_vue_type_script_setup_true_lang.js +7 -1
  22. package/dist/components/avatar/Avatar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  23. package/dist/components/badge/Badge.vue_vue_type_script_setup_true_lang.js +7 -1
  24. package/dist/components/badge/Badge.vue_vue_type_script_setup_true_lang.js.map +1 -1
  25. package/dist/components/breadcrumbs/BreadcrumbItem.vue_vue_type_script_setup_true_lang.js +7 -1
  26. package/dist/components/breadcrumbs/BreadcrumbItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  27. package/dist/components/breadcrumbs/Breadcrumbs.vue_vue_type_script_setup_true_lang.js +7 -1
  28. package/dist/components/breadcrumbs/Breadcrumbs.vue_vue_type_script_setup_true_lang.js.map +1 -1
  29. package/dist/components/button/Button.vue_vue_type_script_setup_true_lang.js +7 -1
  30. package/dist/components/button/Button.vue_vue_type_script_setup_true_lang.js.map +1 -1
  31. package/dist/components/button/ButtonGroup.vue_vue_type_script_setup_true_lang.js +7 -1
  32. package/dist/components/button/ButtonGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  33. package/dist/components/button/ToggleButtonGroup.vue_vue_type_script_setup_true_lang.js +7 -1
  34. package/dist/components/button/ToggleButtonGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  35. package/dist/components/calendar/Calendar.vue_vue_type_script_setup_true_lang.js +7 -1
  36. package/dist/components/calendar/Calendar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  37. package/dist/components/calendar-year-picker/CalendarYearPicker.vue_vue_type_script_setup_true_lang.js +7 -1
  38. package/dist/components/calendar-year-picker/CalendarYearPicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  39. package/dist/components/card/Card.vue_vue_type_script_setup_true_lang.js +7 -1
  40. package/dist/components/card/Card.vue_vue_type_script_setup_true_lang.js.map +1 -1
  41. package/dist/components/card/CardBody.vue_vue_type_script_setup_true_lang.js +7 -1
  42. package/dist/components/card/CardBody.vue_vue_type_script_setup_true_lang.js.map +1 -1
  43. package/dist/components/card/CardFooter.vue_vue_type_script_setup_true_lang.js +7 -1
  44. package/dist/components/card/CardFooter.vue_vue_type_script_setup_true_lang.js.map +1 -1
  45. package/dist/components/card/CardHeader.vue_vue_type_script_setup_true_lang.js +7 -1
  46. package/dist/components/card/CardHeader.vue_vue_type_script_setup_true_lang.js.map +1 -1
  47. package/dist/components/checkbox/Checkbox.vue_vue_type_script_setup_true_lang.js +7 -1
  48. package/dist/components/checkbox/Checkbox.vue_vue_type_script_setup_true_lang.js.map +1 -1
  49. package/dist/components/chip/Chip.vue_vue_type_script_setup_true_lang.js +7 -1
  50. package/dist/components/chip/Chip.vue_vue_type_script_setup_true_lang.js.map +1 -1
  51. package/dist/components/collapsible/Collapsible.vue_vue_type_script_setup_true_lang.js +7 -1
  52. package/dist/components/collapsible/Collapsible.vue_vue_type_script_setup_true_lang.js.map +1 -1
  53. package/dist/components/collapsible/CollapsibleContent.vue_vue_type_script_setup_true_lang.js +7 -1
  54. package/dist/components/collapsible/CollapsibleContent.vue_vue_type_script_setup_true_lang.js.map +1 -1
  55. package/dist/components/collapsible/CollapsibleGroup.vue_vue_type_script_setup_true_lang.js +7 -1
  56. package/dist/components/collapsible/CollapsibleGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  57. package/dist/components/collapsible/CollapsibleTrigger.vue_vue_type_script_setup_true_lang.js +7 -1
  58. package/dist/components/collapsible/CollapsibleTrigger.vue_vue_type_script_setup_true_lang.js.map +1 -1
  59. package/dist/components/combo-box/ComboBox.vue_vue_type_script_setup_true_lang.js +10 -1
  60. package/dist/components/combo-box/ComboBox.vue_vue_type_script_setup_true_lang.js.map +1 -1
  61. package/dist/components/date-input/DateInput.vue_vue_type_script_setup_true_lang.js +7 -1
  62. package/dist/components/date-input/DateInput.vue_vue_type_script_setup_true_lang.js.map +1 -1
  63. package/dist/components/date-picker/DatePicker.vue_vue_type_script_setup_true_lang.js +7 -1
  64. package/dist/components/date-picker/DatePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  65. package/dist/components/date-range-field/DateRangeField.vue_vue_type_script_setup_true_lang.js +7 -1
  66. package/dist/components/date-range-field/DateRangeField.vue_vue_type_script_setup_true_lang.js.map +1 -1
  67. package/dist/components/date-range-picker/DateRangePicker.vue_vue_type_script_setup_true_lang.js +7 -1
  68. package/dist/components/date-range-picker/DateRangePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  69. package/dist/components/date-time-picker/DateTimePicker.vue_vue_type_script_setup_true_lang.js +7 -1
  70. package/dist/components/date-time-picker/DateTimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
  71. package/dist/components/input/Input.vue_vue_type_script_setup_true_lang.js +7 -1
  72. package/dist/components/input/Input.vue_vue_type_script_setup_true_lang.js.map +1 -1
  73. package/dist/components/input-otp/InputOTP.vue_vue_type_script_setup_true_lang.js +10 -1
  74. package/dist/components/input-otp/InputOTP.vue_vue_type_script_setup_true_lang.js.map +1 -1
  75. package/dist/components/kbd/Kbd.vue_vue_type_script_setup_true_lang.js +7 -1
  76. package/dist/components/kbd/Kbd.vue_vue_type_script_setup_true_lang.js.map +1 -1
  77. package/dist/components/link/Link.vue_vue_type_script_setup_true_lang.js +7 -1
  78. package/dist/components/link/Link.vue_vue_type_script_setup_true_lang.js.map +1 -1
  79. package/dist/components/list-box/ListBox.js.map +1 -1
  80. package/dist/components/list-box/ListBox.vue_vue_type_script_setup_true_lang.js +11 -2
  81. package/dist/components/list-box/ListBox.vue_vue_type_script_setup_true_lang.js.map +1 -1
  82. package/dist/components/list-box/ListBoxItem.vue_vue_type_script_setup_true_lang.js +10 -1
  83. package/dist/components/list-box/ListBoxItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  84. package/dist/components/meter/Meter.vue_vue_type_script_setup_true_lang.js +7 -1
  85. package/dist/components/meter/Meter.vue_vue_type_script_setup_true_lang.js.map +1 -1
  86. package/dist/components/number-field/NumberField.vue_vue_type_script_setup_true_lang.js +7 -1
  87. package/dist/components/number-field/NumberField.vue_vue_type_script_setup_true_lang.js.map +1 -1
  88. package/dist/components/progress-bar/ProgressBar.vue_vue_type_script_setup_true_lang.js +7 -1
  89. package/dist/components/progress-bar/ProgressBar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  90. package/dist/components/progress-circle/ProgressCircle.vue_vue_type_script_setup_true_lang.js +7 -1
  91. package/dist/components/progress-circle/ProgressCircle.vue_vue_type_script_setup_true_lang.js.map +1 -1
  92. package/dist/components/radio/Radio.vue_vue_type_script_setup_true_lang.js +10 -1
  93. package/dist/components/radio/Radio.vue_vue_type_script_setup_true_lang.js.map +1 -1
  94. package/dist/components/range-calendar/RangeCalendar.vue_vue_type_script_setup_true_lang.js +7 -1
  95. package/dist/components/range-calendar/RangeCalendar.vue_vue_type_script_setup_true_lang.js.map +1 -1
  96. package/dist/components/scroll-shadow/ScrollShadow.vue_vue_type_script_setup_true_lang.js +7 -1
  97. package/dist/components/scroll-shadow/ScrollShadow.vue_vue_type_script_setup_true_lang.js.map +1 -1
  98. package/dist/components/select/Select.vue_vue_type_script_setup_true_lang.js +7 -1
  99. package/dist/components/select/Select.vue_vue_type_script_setup_true_lang.js.map +1 -1
  100. package/dist/components/select/SelectContent.js.map +1 -1
  101. package/dist/components/select/SelectContent.vue_vue_type_script_setup_true_lang.js +5 -1
  102. package/dist/components/select/SelectContent.vue_vue_type_script_setup_true_lang.js.map +1 -1
  103. package/dist/components/select/SelectTrigger.js.map +1 -1
  104. package/dist/components/select/SelectTrigger.vue_vue_type_script_setup_true_lang.js +16 -2
  105. package/dist/components/select/SelectTrigger.vue_vue_type_script_setup_true_lang.js.map +1 -1
  106. package/dist/components/skeleton/Skeleton.vue_vue_type_script_setup_true_lang.js +7 -1
  107. package/dist/components/skeleton/Skeleton.vue_vue_type_script_setup_true_lang.js.map +1 -1
  108. package/dist/components/slider/Slider.vue_vue_type_script_setup_true_lang.js +7 -1
  109. package/dist/components/slider/Slider.vue_vue_type_script_setup_true_lang.js.map +1 -1
  110. package/dist/components/splitter/SplitterGroup.vue_vue_type_script_setup_true_lang.js +10 -1
  111. package/dist/components/splitter/SplitterGroup.vue_vue_type_script_setup_true_lang.js.map +1 -1
  112. package/dist/components/splitter/SplitterPanel.vue_vue_type_script_setup_true_lang.js +10 -1
  113. package/dist/components/splitter/SplitterPanel.vue_vue_type_script_setup_true_lang.js.map +1 -1
  114. package/dist/components/splitter/SplitterResizeHandle.vue_vue_type_script_setup_true_lang.js +10 -1
  115. package/dist/components/splitter/SplitterResizeHandle.vue_vue_type_script_setup_true_lang.js.map +1 -1
  116. package/dist/components/stepper/Stepper.vue_vue_type_script_setup_true_lang.js +10 -1
  117. package/dist/components/stepper/Stepper.vue_vue_type_script_setup_true_lang.js.map +1 -1
  118. package/dist/components/stepper/StepperContent.vue_vue_type_script_setup_true_lang.js +10 -1
  119. package/dist/components/stepper/StepperContent.vue_vue_type_script_setup_true_lang.js.map +1 -1
  120. package/dist/components/stepper/StepperDescription.vue_vue_type_script_setup_true_lang.js +10 -1
  121. package/dist/components/stepper/StepperDescription.vue_vue_type_script_setup_true_lang.js.map +1 -1
  122. package/dist/components/stepper/StepperIndicator.vue_vue_type_script_setup_true_lang.js +10 -1
  123. package/dist/components/stepper/StepperIndicator.vue_vue_type_script_setup_true_lang.js.map +1 -1
  124. package/dist/components/stepper/StepperItem.vue_vue_type_script_setup_true_lang.js +10 -1
  125. package/dist/components/stepper/StepperItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  126. package/dist/components/stepper/StepperSeparator.vue_vue_type_script_setup_true_lang.js +10 -1
  127. package/dist/components/stepper/StepperSeparator.vue_vue_type_script_setup_true_lang.js.map +1 -1
  128. package/dist/components/stepper/StepperTitle.vue_vue_type_script_setup_true_lang.js +10 -1
  129. package/dist/components/stepper/StepperTitle.vue_vue_type_script_setup_true_lang.js.map +1 -1
  130. package/dist/components/switch/Switch.vue_vue_type_script_setup_true_lang.js +7 -1
  131. package/dist/components/switch/Switch.vue_vue_type_script_setup_true_lang.js.map +1 -1
  132. package/dist/components/table/TableRow.vue_vue_type_script_setup_true_lang.js +7 -1
  133. package/dist/components/table/TableRow.vue_vue_type_script_setup_true_lang.js.map +1 -1
  134. package/dist/components/tabs/Tab.vue_vue_type_script_setup_true_lang.js +7 -1
  135. package/dist/components/tabs/Tab.vue_vue_type_script_setup_true_lang.js.map +1 -1
  136. package/dist/components/tabs/TabIndicator.vue_vue_type_script_setup_true_lang.js +7 -1
  137. package/dist/components/tabs/TabIndicator.vue_vue_type_script_setup_true_lang.js.map +1 -1
  138. package/dist/components/tabs/TabList.vue_vue_type_script_setup_true_lang.js +7 -1
  139. package/dist/components/tabs/TabList.vue_vue_type_script_setup_true_lang.js.map +1 -1
  140. package/dist/components/tabs/TabPanel.vue_vue_type_script_setup_true_lang.js +7 -1
  141. package/dist/components/tabs/TabPanel.vue_vue_type_script_setup_true_lang.js.map +1 -1
  142. package/dist/components/tabs/Tabs.vue_vue_type_script_setup_true_lang.js +7 -1
  143. package/dist/components/tabs/Tabs.vue_vue_type_script_setup_true_lang.js.map +1 -1
  144. package/dist/components/textarea/Textarea.vue_vue_type_script_setup_true_lang.js +7 -1
  145. package/dist/components/textarea/Textarea.vue_vue_type_script_setup_true_lang.js.map +1 -1
  146. package/dist/components/time-field/TimeField.vue_vue_type_script_setup_true_lang.js +7 -1
  147. package/dist/components/time-field/TimeField.vue_vue_type_script_setup_true_lang.js.map +1 -1
  148. package/dist/components/tree/Tree.vue_vue_type_script_setup_true_lang.js +10 -1
  149. package/dist/components/tree/Tree.vue_vue_type_script_setup_true_lang.js.map +1 -1
  150. package/dist/components/tree/TreeItem.vue_vue_type_script_setup_true_lang.js +10 -1
  151. package/dist/components/tree/TreeItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  152. package/dist/components/tree/TreeItemToggle.vue_vue_type_script_setup_true_lang.js +10 -1
  153. package/dist/components/tree/TreeItemToggle.vue_vue_type_script_setup_true_lang.js.map +1 -1
  154. package/dist/index.d.ts +18 -18
  155. package/dist/utils/composeClassName.js.map +1 -1
  156. package/package.json +4 -4
@@ -18,7 +18,13 @@ var ButtonGroup_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ de
18
18
  default: false
19
19
  },
20
20
  orientation: { default: "horizontal" },
21
- class: {},
21
+ class: { type: [
22
+ String,
23
+ Boolean,
24
+ null,
25
+ Object,
26
+ Array
27
+ ] },
22
28
  classNames: {},
23
29
  selectionMode: { default: "single" },
24
30
  modelValue: { default: void 0 }
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonGroup.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/button/ButtonGroup.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref, toRef } from 'vue'\nimport { buttonGroupVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { useButtonGroupProvide } from './button-group.context'\nimport type { ButtonGroupSelectionMode, ButtonGroupValue } from './button-group.context'\nimport type { ButtonVariants } from '@auronui/styles'\n\nconst props = withDefaults(defineProps<{\n variant?: ButtonVariants['variant']\n size?: ButtonVariants['size']\n disabled?: boolean\n fullWidth?: boolean\n orientation?: 'horizontal' | 'vertical'\n class?: ClassValue\n /** Per-slot class overrides */\n classNames?: Partial<{\n base: ClassValue\n }>\n selectionMode?: ButtonGroupSelectionMode\n modelValue?: ButtonGroupValue\n}>(), {\n variant: 'primary',\n size: 'md',\n disabled: false,\n fullWidth: false,\n orientation: 'horizontal',\n selectionMode: 'single',\n modelValue: undefined,\n})\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: ButtonGroupValue]\n}>()\n\n// Selected value: controlled if modelValue prop is provided, otherwise uncontrolled.\n// Single mode: scalar (string|number|null). Multiple mode: array of scalars.\nconst internalSelected = ref<ButtonGroupValue>(props.selectionMode === 'multiple' ? [] : null)\nconst selectedValue = computed<ButtonGroupValue>({\n get: () => (props.modelValue !== undefined ? props.modelValue : internalSelected.value),\n set: (v) => {\n if (props.modelValue === undefined) internalSelected.value = v\n emit('update:modelValue', v)\n },\n})\n\nfunction isValueSelected(value: string | number | undefined): boolean {\n if (value === undefined) return false\n const current = selectedValue.value\n if (Array.isArray(current)) return current.includes(value)\n return current === value\n}\n\nfunction selectValue(value: string | number) {\n if (props.selectionMode === 'multiple') {\n const current = Array.isArray(selectedValue.value) ? selectedValue.value : []\n selectedValue.value = current.includes(value)\n ? current.filter((v) => v !== value)\n : [...current, value]\n } else {\n // Single mode: clicking the already-selected button deselects it\n selectedValue.value = selectedValue.value === value ? null : value\n }\n}\n\n// Provide context using toRef() for reactivity (D-11)\nuseButtonGroupProvide({\n variant: toRef(props, 'variant'),\n size: toRef(props, 'size'),\n disabled: toRef(props, 'disabled'),\n fullWidth: toRef(props, 'fullWidth'),\n orientation: toRef(props, 'orientation'),\n selectionMode: toRef(props, 'selectionMode'),\n selectedValue,\n isValueSelected,\n selectValue,\n})\n\nconst slotFns = computed(() =>\n buttonGroupVariants({\n fullWidth: props.fullWidth,\n orientation: props.orientation,\n })\n)\n</script>\n\n<template>\n <div\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n :data-orientation=\"props.orientation\"\n role=\"group\"\n >\n <slot />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;EAQA,MAAM,QAAQ;EAuBd,MAAM,OAAO;EAMb,MAAM,mBAAmB,IAAsB,MAAM,kBAAkB,aAAa,EAAE,GAAG,KAAI;EAC7F,MAAM,gBAAgB,SAA2B;GAC/C,WAAY,MAAM,eAAe,KAAA,IAAY,MAAM,aAAa,iBAAiB;GACjF,MAAM,MAAM;AACV,QAAI,MAAM,eAAe,KAAA,EAAW,kBAAiB,QAAQ;AAC7D,SAAK,qBAAqB,EAAC;;GAE9B,CAAA;EAED,SAAS,gBAAgB,OAA6C;AACpE,OAAI,UAAU,KAAA,EAAW,QAAO;GAChC,MAAM,UAAU,cAAc;AAC9B,OAAI,MAAM,QAAQ,QAAQ,CAAE,QAAO,QAAQ,SAAS,MAAK;AACzD,UAAO,YAAY;;EAGrB,SAAS,YAAY,OAAwB;AAC3C,OAAI,MAAM,kBAAkB,YAAY;IACtC,MAAM,UAAU,MAAM,QAAQ,cAAc,MAAM,GAAG,cAAc,QAAQ,EAAC;AAC5E,kBAAc,QAAQ,QAAQ,SAAS,MAAK,GACxC,QAAQ,QAAQ,MAAM,MAAM,MAAK,GACjC,CAAC,GAAG,SAAS,MAAK;SAGtB,eAAc,QAAQ,cAAc,UAAU,QAAQ,OAAO;;AAKjE,wBAAsB;GACpB,SAAS,MAAM,OAAO,UAAU;GAChC,MAAM,MAAM,OAAO,OAAO;GAC1B,UAAU,MAAM,OAAO,WAAW;GAClC,WAAW,MAAM,OAAO,YAAY;GACpC,aAAa,MAAM,OAAO,cAAc;GACxC,eAAe,MAAM,OAAO,gBAAgB;GAC5C;GACA;GACA;GACD,CAAA;EAED,MAAM,UAAU,eACd,oBAAoB;GAClB,WAAW,MAAM;GACjB,aAAa,MAAM;GACpB,CAAA,CACH;;uBAIE,mBAMM,OAAA;IALH,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,MAAI,EAAI,MAAM,OAAO,MAAM,YAAY,KAAI,CAAA;IAC3E,oBAAkB,MAAM;IACzB,MAAK;OAEL,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,IAAA,WAAA"}
1
+ {"version":3,"file":"ButtonGroup.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/button/ButtonGroup.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref, toRef } from 'vue'\nimport { buttonGroupVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { useButtonGroupProvide } from './button-group.context'\nimport type { ButtonGroupSelectionMode, ButtonGroupValue } from './button-group.context'\nimport type { ButtonVariants } from '@auronui/styles'\n\nconst props = withDefaults(defineProps<{\n variant?: ButtonVariants['variant']\n size?: ButtonVariants['size']\n disabled?: boolean\n fullWidth?: boolean\n orientation?: 'horizontal' | 'vertical'\n class?: ClassValue\n /** Per-slot class overrides */\n classNames?: Partial<{\n base: ClassValue\n }>\n selectionMode?: ButtonGroupSelectionMode\n modelValue?: ButtonGroupValue\n}>(), {\n variant: 'primary',\n size: 'md',\n disabled: false,\n fullWidth: false,\n orientation: 'horizontal',\n selectionMode: 'single',\n modelValue: undefined,\n})\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: ButtonGroupValue]\n}>()\n\n// Selected value: controlled if modelValue prop is provided, otherwise uncontrolled.\n// Single mode: scalar (string|number|null). Multiple mode: array of scalars.\nconst internalSelected = ref<ButtonGroupValue>(props.selectionMode === 'multiple' ? [] : null)\nconst selectedValue = computed<ButtonGroupValue>({\n get: () => (props.modelValue !== undefined ? props.modelValue : internalSelected.value),\n set: (v) => {\n if (props.modelValue === undefined) internalSelected.value = v\n emit('update:modelValue', v)\n },\n})\n\nfunction isValueSelected(value: string | number | undefined): boolean {\n if (value === undefined) return false\n const current = selectedValue.value\n if (Array.isArray(current)) return current.includes(value)\n return current === value\n}\n\nfunction selectValue(value: string | number) {\n if (props.selectionMode === 'multiple') {\n const current = Array.isArray(selectedValue.value) ? selectedValue.value : []\n selectedValue.value = current.includes(value)\n ? current.filter((v) => v !== value)\n : [...current, value]\n } else {\n // Single mode: clicking the already-selected button deselects it\n selectedValue.value = selectedValue.value === value ? null : value\n }\n}\n\n// Provide context using toRef() for reactivity (D-11)\nuseButtonGroupProvide({\n variant: toRef(props, 'variant'),\n size: toRef(props, 'size'),\n disabled: toRef(props, 'disabled'),\n fullWidth: toRef(props, 'fullWidth'),\n orientation: toRef(props, 'orientation'),\n selectionMode: toRef(props, 'selectionMode'),\n selectedValue,\n isValueSelected,\n selectValue,\n})\n\nconst slotFns = computed(() =>\n buttonGroupVariants({\n fullWidth: props.fullWidth,\n orientation: props.orientation,\n })\n)\n</script>\n\n<template>\n <div\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n :data-orientation=\"props.orientation\"\n role=\"group\"\n >\n <slot />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQA,MAAM,QAAQ;EAuBd,MAAM,OAAO;EAMb,MAAM,mBAAmB,IAAsB,MAAM,kBAAkB,aAAa,EAAE,GAAG,KAAI;EAC7F,MAAM,gBAAgB,SAA2B;GAC/C,WAAY,MAAM,eAAe,KAAA,IAAY,MAAM,aAAa,iBAAiB;GACjF,MAAM,MAAM;AACV,QAAI,MAAM,eAAe,KAAA,EAAW,kBAAiB,QAAQ;AAC7D,SAAK,qBAAqB,EAAC;;GAE9B,CAAA;EAED,SAAS,gBAAgB,OAA6C;AACpE,OAAI,UAAU,KAAA,EAAW,QAAO;GAChC,MAAM,UAAU,cAAc;AAC9B,OAAI,MAAM,QAAQ,QAAQ,CAAE,QAAO,QAAQ,SAAS,MAAK;AACzD,UAAO,YAAY;;EAGrB,SAAS,YAAY,OAAwB;AAC3C,OAAI,MAAM,kBAAkB,YAAY;IACtC,MAAM,UAAU,MAAM,QAAQ,cAAc,MAAM,GAAG,cAAc,QAAQ,EAAC;AAC5E,kBAAc,QAAQ,QAAQ,SAAS,MAAK,GACxC,QAAQ,QAAQ,MAAM,MAAM,MAAK,GACjC,CAAC,GAAG,SAAS,MAAK;SAGtB,eAAc,QAAQ,cAAc,UAAU,QAAQ,OAAO;;AAKjE,wBAAsB;GACpB,SAAS,MAAM,OAAO,UAAU;GAChC,MAAM,MAAM,OAAO,OAAO;GAC1B,UAAU,MAAM,OAAO,WAAW;GAClC,WAAW,MAAM,OAAO,YAAY;GACpC,aAAa,MAAM,OAAO,cAAc;GACxC,eAAe,MAAM,OAAO,gBAAgB;GAC5C;GACA;GACA;GACD,CAAA;EAED,MAAM,UAAU,eACd,oBAAoB;GAClB,WAAW,MAAM;GACjB,aAAa,MAAM;GACpB,CAAA,CACH;;uBAIE,mBAMM,OAAA;IALH,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,MAAI,EAAI,MAAM,OAAO,MAAM,YAAY,KAAI,CAAA;IAC3E,oBAAkB,MAAM;IACzB,MAAK;OAEL,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,IAAA,WAAA"}
@@ -25,7 +25,13 @@ var ToggleButtonGroup_vue_vue_type_script_setup_true_lang_default = /* @__PURE__
25
25
  selectionMode: { default: "multiple" },
26
26
  modelValue: { default: void 0 },
27
27
  defaultValue: { default: void 0 },
28
- class: {},
28
+ class: { type: [
29
+ String,
30
+ Boolean,
31
+ null,
32
+ Object,
33
+ Array
34
+ ] },
29
35
  classNames: {}
30
36
  },
31
37
  emits: ["update:modelValue"],
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleButtonGroup.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/button/ToggleButtonGroup.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref, toRef } from 'vue'\nimport { toggleButtonGroupVariants, type ToggleButtonVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { useToggleButtonGroupProvide } from './toggle-button-group.context'\n\nconst props = withDefaults(defineProps<{\n variant?: ToggleButtonVariants['variant']\n size?: ToggleButtonVariants['size']\n disabled?: boolean\n fullWidth?: boolean\n orientation?: 'horizontal' | 'vertical'\n isDetached?: boolean\n selectionMode?: 'single' | 'multiple'\n modelValue?: string | string[]\n defaultValue?: string | string[]\n class?: ClassValue\n /** Additional class names to apply to component slots */\n classNames?: Partial<{\n base: ClassValue\n }>\n}>(), {\n variant: 'default',\n size: 'md',\n disabled: false,\n fullWidth: false,\n orientation: 'horizontal',\n isDetached: false,\n selectionMode: 'multiple',\n modelValue: undefined,\n defaultValue: undefined,\n})\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: string | string[]]\n}>()\n\n// Normalize modelValue / defaultValue to string[] for internal use\nconst internalSelected = ref<string[]>(\n props.modelValue !== undefined\n ? (Array.isArray(props.modelValue) ? [...props.modelValue] : [props.modelValue])\n : props.defaultValue !== undefined\n ? (Array.isArray(props.defaultValue) ? [...props.defaultValue] : [props.defaultValue])\n : []\n)\n\n// Keep internalSelected in sync when modelValue changes from outside (controlled mode)\nimport { watch } from 'vue'\nwatch(\n () => props.modelValue,\n (val) => {\n if (val === undefined) return\n internalSelected.value = Array.isArray(val) ? [...val] : [val]\n },\n)\n\n// The selectedValues exposed to children (always string[])\nconst selectedValues = computed(() => internalSelected.value)\n\nfunction toggleValue(value: string) {\n if (props.selectionMode === 'single') {\n const next = internalSelected.value.includes(value) ? [] : [value]\n internalSelected.value = next\n emit('update:modelValue', next[0] ?? '')\n } else {\n // multiple\n const idx = internalSelected.value.indexOf(value)\n const next = idx === -1\n ? [...internalSelected.value, value]\n : internalSelected.value.filter((v) => v !== value)\n internalSelected.value = next\n emit('update:modelValue', next)\n }\n}\n\n// Provide context to child ToggleButtons via toRef() for live reactivity\nuseToggleButtonGroupProvide({\n variant: toRef(props, 'variant'),\n size: toRef(props, 'size'),\n disabled: toRef(props, 'disabled'),\n fullWidth: toRef(props, 'fullWidth'),\n orientation: toRef(props, 'orientation'),\n selectionMode: toRef(props, 'selectionMode'),\n selectedValues,\n toggleValue,\n})\n\nconst slotFns = computed(() =>\n toggleButtonGroupVariants({\n fullWidth: props.fullWidth,\n orientation: props.orientation,\n isDetached: props.isDetached,\n })\n)\n</script>\n\n<template>\n <div\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n :data-orientation=\"props.orientation\"\n role=\"group\"\n >\n <slot />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMA,MAAM,QAAQ;EA2Bd,MAAM,OAAO;EAKb,MAAM,mBAAmB,IACvB,MAAM,eAAe,KAAA,IAChB,MAAM,QAAQ,MAAM,WAAW,GAAG,CAAC,GAAG,MAAM,WAAW,GAAG,CAAC,MAAM,WAAW,GAC7E,MAAM,iBAAiB,KAAA,IACpB,MAAM,QAAQ,MAAM,aAAa,GAAG,CAAC,GAAG,MAAM,aAAa,GAAG,CAAC,MAAM,aAAa,GACnF,EAAC,CACT;AAIA,cACQ,MAAM,aACX,QAAQ;AACP,OAAI,QAAQ,KAAA,EAAW;AACvB,oBAAiB,QAAQ,MAAM,QAAQ,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAG;IAEjE;EAGA,MAAM,iBAAiB,eAAe,iBAAiB,MAAK;EAE5D,SAAS,YAAY,OAAe;AAClC,OAAI,MAAM,kBAAkB,UAAU;IACpC,MAAM,OAAO,iBAAiB,MAAM,SAAS,MAAM,GAAG,EAAE,GAAG,CAAC,MAAK;AACjE,qBAAiB,QAAQ;AACzB,SAAK,qBAAqB,KAAK,MAAM,GAAE;UAClC;IAGL,MAAM,OADM,iBAAiB,MAAM,QAAQ,MAAK,KAC3B,KACjB,CAAC,GAAG,iBAAiB,OAAO,MAAK,GACjC,iBAAiB,MAAM,QAAQ,MAAM,MAAM,MAAK;AACpD,qBAAiB,QAAQ;AACzB,SAAK,qBAAqB,KAAI;;;AAKlC,8BAA4B;GAC1B,SAAS,MAAM,OAAO,UAAU;GAChC,MAAM,MAAM,OAAO,OAAO;GAC1B,UAAU,MAAM,OAAO,WAAW;GAClC,WAAW,MAAM,OAAO,YAAY;GACpC,aAAa,MAAM,OAAO,cAAc;GACxC,eAAe,MAAM,OAAO,gBAAgB;GAC5C;GACA;GACD,CAAA;EAED,MAAM,UAAU,eACd,0BAA0B;GACxB,WAAW,MAAM;GACjB,aAAa,MAAM;GACnB,YAAY,MAAM;GACnB,CAAA,CACH;;uBAIE,mBAMM,OAAA;IALH,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,MAAI,EAAI,MAAM,OAAO,MAAM,YAAY,KAAI,CAAA;IAC3E,oBAAkB,MAAM;IACzB,MAAK;OAEL,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,IAAA,WAAA"}
1
+ {"version":3,"file":"ToggleButtonGroup.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/button/ToggleButtonGroup.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref, toRef } from 'vue'\nimport { toggleButtonGroupVariants, type ToggleButtonVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { useToggleButtonGroupProvide } from './toggle-button-group.context'\n\nconst props = withDefaults(defineProps<{\n variant?: ToggleButtonVariants['variant']\n size?: ToggleButtonVariants['size']\n disabled?: boolean\n fullWidth?: boolean\n orientation?: 'horizontal' | 'vertical'\n isDetached?: boolean\n selectionMode?: 'single' | 'multiple'\n modelValue?: string | string[]\n defaultValue?: string | string[]\n class?: ClassValue\n /** Additional class names to apply to component slots */\n classNames?: Partial<{\n base: ClassValue\n }>\n}>(), {\n variant: 'default',\n size: 'md',\n disabled: false,\n fullWidth: false,\n orientation: 'horizontal',\n isDetached: false,\n selectionMode: 'multiple',\n modelValue: undefined,\n defaultValue: undefined,\n})\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: string | string[]]\n}>()\n\n// Normalize modelValue / defaultValue to string[] for internal use\nconst internalSelected = ref<string[]>(\n props.modelValue !== undefined\n ? (Array.isArray(props.modelValue) ? [...props.modelValue] : [props.modelValue])\n : props.defaultValue !== undefined\n ? (Array.isArray(props.defaultValue) ? [...props.defaultValue] : [props.defaultValue])\n : []\n)\n\n// Keep internalSelected in sync when modelValue changes from outside (controlled mode)\nimport { watch } from 'vue'\nwatch(\n () => props.modelValue,\n (val) => {\n if (val === undefined) return\n internalSelected.value = Array.isArray(val) ? [...val] : [val]\n },\n)\n\n// The selectedValues exposed to children (always string[])\nconst selectedValues = computed(() => internalSelected.value)\n\nfunction toggleValue(value: string) {\n if (props.selectionMode === 'single') {\n const next = internalSelected.value.includes(value) ? [] : [value]\n internalSelected.value = next\n emit('update:modelValue', next[0] ?? '')\n } else {\n // multiple\n const idx = internalSelected.value.indexOf(value)\n const next = idx === -1\n ? [...internalSelected.value, value]\n : internalSelected.value.filter((v) => v !== value)\n internalSelected.value = next\n emit('update:modelValue', next)\n }\n}\n\n// Provide context to child ToggleButtons via toRef() for live reactivity\nuseToggleButtonGroupProvide({\n variant: toRef(props, 'variant'),\n size: toRef(props, 'size'),\n disabled: toRef(props, 'disabled'),\n fullWidth: toRef(props, 'fullWidth'),\n orientation: toRef(props, 'orientation'),\n selectionMode: toRef(props, 'selectionMode'),\n selectedValues,\n toggleValue,\n})\n\nconst slotFns = computed(() =>\n toggleButtonGroupVariants({\n fullWidth: props.fullWidth,\n orientation: props.orientation,\n isDetached: props.isDetached,\n })\n)\n</script>\n\n<template>\n <div\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n :data-orientation=\"props.orientation\"\n role=\"group\"\n >\n <slot />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMA,MAAM,QAAQ;EA2Bd,MAAM,OAAO;EAKb,MAAM,mBAAmB,IACvB,MAAM,eAAe,KAAA,IAChB,MAAM,QAAQ,MAAM,WAAW,GAAG,CAAC,GAAG,MAAM,WAAW,GAAG,CAAC,MAAM,WAAW,GAC7E,MAAM,iBAAiB,KAAA,IACpB,MAAM,QAAQ,MAAM,aAAa,GAAG,CAAC,GAAG,MAAM,aAAa,GAAG,CAAC,MAAM,aAAa,GACnF,EAAC,CACT;AAIA,cACQ,MAAM,aACX,QAAQ;AACP,OAAI,QAAQ,KAAA,EAAW;AACvB,oBAAiB,QAAQ,MAAM,QAAQ,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,IAAG;IAEjE;EAGA,MAAM,iBAAiB,eAAe,iBAAiB,MAAK;EAE5D,SAAS,YAAY,OAAe;AAClC,OAAI,MAAM,kBAAkB,UAAU;IACpC,MAAM,OAAO,iBAAiB,MAAM,SAAS,MAAM,GAAG,EAAE,GAAG,CAAC,MAAK;AACjE,qBAAiB,QAAQ;AACzB,SAAK,qBAAqB,KAAK,MAAM,GAAE;UAClC;IAGL,MAAM,OADM,iBAAiB,MAAM,QAAQ,MAAK,KAC3B,KACjB,CAAC,GAAG,iBAAiB,OAAO,MAAK,GACjC,iBAAiB,MAAM,QAAQ,MAAM,MAAM,MAAK;AACpD,qBAAiB,QAAQ;AACzB,SAAK,qBAAqB,KAAI;;;AAKlC,8BAA4B;GAC1B,SAAS,MAAM,OAAO,UAAU;GAChC,MAAM,MAAM,OAAO,OAAO;GAC1B,UAAU,MAAM,OAAO,WAAW;GAClC,WAAW,MAAM,OAAO,YAAY;GACpC,aAAa,MAAM,OAAO,cAAc;GACxC,eAAe,MAAM,OAAO,gBAAgB;GAC5C;GACA;GACD,CAAA;EAED,MAAM,UAAU,eACd,0BAA0B;GACxB,WAAW,MAAM;GACjB,aAAa,MAAM;GACnB,YAAY,MAAM;GACnB,CAAA,CACH;;uBAIE,mBAMM,OAAA;IALH,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,MAAI,EAAI,MAAM,OAAO,MAAM,YAAY,KAAI,CAAA;IAC3E,oBAAkB,MAAM;IACzB,MAAK;OAEL,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,IAAA,WAAA"}
@@ -42,7 +42,13 @@ var Calendar_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defin
42
42
  default: false
43
43
  },
44
44
  calendarLabel: {},
45
- class: {},
45
+ class: { type: [
46
+ String,
47
+ Boolean,
48
+ null,
49
+ Object,
50
+ Array
51
+ ] },
46
52
  classNames: {}
47
53
  }, {
48
54
  "modelValue": {},
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/calendar/Calendar.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref, shallowRef } from 'vue'\nimport {\n CalendarRoot,\n CalendarHeader,\n CalendarHeading,\n CalendarGrid,\n CalendarGridHead,\n CalendarGridRow,\n CalendarHeadCell,\n CalendarGridBody,\n CalendarCell,\n CalendarCellTrigger,\n CalendarNext,\n CalendarPrev,\n MonthPickerRoot,\n MonthPickerHeader,\n MonthPickerHeading,\n MonthPickerPrev,\n MonthPickerNext,\n MonthPickerGrid,\n MonthPickerGridBody,\n MonthPickerGridRow,\n MonthPickerCell,\n MonthPickerCellTrigger,\n} from 'reka-ui'\nimport { today, getLocalTimeZone, type DateValue } from '@internationalized/date'\nimport { calendarVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport CalendarYearPicker from '../calendar-year-picker/CalendarYearPicker.vue'\n\nconst props = withDefaults(defineProps<{\n defaultValue?: DateValue\n defaultPlaceholder?: DateValue\n minValue?: DateValue\n maxValue?: DateValue\n isDateDisabled?: (date: DateValue) => boolean\n isDateUnavailable?: (date: DateValue) => boolean\n locale?: string\n weekdayFormat?: 'narrow' | 'short' | 'long'\n fixedWeeks?: boolean\n numberOfMonths?: number\n weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6\n pagedNavigation?: boolean\n preventDeselect?: boolean\n readonly?: boolean\n disabled?: boolean\n calendarLabel?: string\n class?: ClassValue\n /** Override classes on any named slot */\n classNames?: Partial<{\n base: ClassValue\n header: ClassValue\n navButton: ClassValue\n navButtonIcon: ClassValue\n heading: ClassValue\n headingButton: ClassValue\n grid: ClassValue\n gridHeader: ClassValue\n gridRow: ClassValue\n headerCell: ClassValue\n gridBody: ClassValue\n cell: ClassValue\n cellButton: ClassValue\n monthGrid: ClassValue\n monthGridBody: ClassValue\n monthGridRow: ClassValue\n monthCell: ClassValue\n }>\n}>(), {\n weekdayFormat: 'narrow',\n fixedWeeks: false,\n numberOfMonths: 1,\n pagedNavigation: false,\n preventDeselect: false,\n readonly: false,\n disabled: false,\n})\n\nconst modelValue = defineModel<DateValue>()\n\nconst slotFns = computed(() => calendarVariants())\n\n// View-switcher state: 'date' (default 7-col calendar), 'month' (3x4 months), 'year' (3x4 years)\ntype View = 'date' | 'month' | 'year'\nconst view = ref<View>('date')\n\n// Shared placeholder synced with CalendarRoot/MonthPickerRoot/YearPickerRoot.\n// NOTE: shallowRef preserves reka-ui's `DateValue` discriminated-union without\n// deep reactive unwrapping that would break structural type matching on bind sites.\nconst placeholder = shallowRef<DateValue>(\n (props.defaultValue ?? props.defaultPlaceholder ?? today(getLocalTimeZone())) as DateValue\n)\n\nfunction cycleView(): void {\n view.value = view.value === 'date' ? 'month' : view.value === 'month' ? 'year' : 'date'\n}\n\nfunction onMonthSelect(val: DateValue | DateValue[] | undefined): void {\n if (!val) return\n const next = Array.isArray(val) ? val[val.length - 1] : val\n if (!next) return\n placeholder.value = next\n view.value = 'date'\n}\n\nfunction onYearSelect(val: DateValue | DateValue[] | undefined): void {\n if (!val) return\n const next = Array.isArray(val) ? val[val.length - 1] : val\n if (!next) return\n placeholder.value = next\n view.value = 'month'\n}\n\nconst nextViewLabel = computed(() =>\n view.value === 'date' ? 'month' : view.value === 'month' ? 'year' : 'date'\n)\n</script>\n\n<template>\n <CalendarRoot\n v-model=\"modelValue\"\n v-model:placeholder=\"placeholder\"\n :default-value=\"defaultValue\"\n :default-placeholder=\"defaultPlaceholder\"\n :min-value=\"minValue\"\n :max-value=\"maxValue\"\n :is-date-disabled=\"isDateDisabled\"\n :is-date-unavailable=\"isDateUnavailable\"\n :locale=\"locale\"\n :weekday-format=\"weekdayFormat\"\n :fixed-weeks=\"fixedWeeks\"\n :number-of-months=\"numberOfMonths\"\n :week-starts-on=\"weekStartsOn\"\n :paged-navigation=\"pagedNavigation\"\n :prevent-deselect=\"preventDeselect\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :calendar-label=\"calendarLabel\"\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n >\n <template #default=\"{ grid, weekDays }\">\n <template v-if=\"view === 'date'\">\n <CalendarHeader :class=\"composeClassName(slotFns.header(), props.classNames?.header)\">\n <CalendarPrev\n :class=\"composeClassName(slotFns.navButton(), props.classNames?.navButton)\"\n aria-label=\"Previous month\"\n >\n <svg\n :class=\"composeClassName(slotFns.navButtonIcon(), props.classNames?.navButtonIcon)\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n >\n <polyline points=\"15 18 9 12 15 6\" />\n </svg>\n </CalendarPrev>\n\n <CalendarHeading\n v-slot=\"{ headingValue }\"\n :class=\"composeClassName(slotFns.heading(), props.classNames?.heading)\"\n >\n <button\n type=\"button\"\n :class=\"composeClassName(slotFns.headingButton(), props.classNames?.headingButton)\"\n :aria-label=\"`Switch to ${nextViewLabel} view`\"\n @click=\"cycleView\"\n >\n {{ headingValue }}\n </button>\n </CalendarHeading>\n\n <CalendarNext\n :class=\"composeClassName(slotFns.navButton(), props.classNames?.navButton)\"\n aria-label=\"Next month\"\n >\n <svg\n :class=\"composeClassName(slotFns.navButtonIcon(), props.classNames?.navButtonIcon)\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n >\n <polyline points=\"9 18 15 12 9 6\" />\n </svg>\n </CalendarNext>\n </CalendarHeader>\n\n <CalendarGrid\n v-for=\"month in grid\"\n :key=\"month.value.toString()\"\n :class=\"composeClassName(slotFns.grid(), props.classNames?.grid)\"\n >\n <CalendarGridHead :class=\"composeClassName(slotFns.gridHeader(), props.classNames?.gridHeader)\">\n <CalendarGridRow :class=\"composeClassName(slotFns.gridRow(), props.classNames?.gridRow)\">\n <CalendarHeadCell\n v-for=\"day in weekDays\"\n :key=\"day\"\n :class=\"composeClassName(slotFns.headerCell(), props.classNames?.headerCell)\"\n >\n {{ day }}\n </CalendarHeadCell>\n </CalendarGridRow>\n </CalendarGridHead>\n <CalendarGridBody :class=\"composeClassName(slotFns.gridBody(), props.classNames?.gridBody)\">\n <CalendarGridRow\n v-for=\"(week, weekIndex) in month.rows\"\n :key=\"weekIndex\"\n :class=\"composeClassName(slotFns.gridRow(), props.classNames?.gridRow)\"\n >\n <CalendarCell\n v-for=\"day in week\"\n :key=\"day.toString()\"\n :date=\"day\"\n :class=\"composeClassName(slotFns.cell(), props.classNames?.cell)\"\n >\n <CalendarCellTrigger\n :day=\"day\"\n :month=\"month.value\"\n :class=\"composeClassName(slotFns.cellButton(), props.classNames?.cellButton)\"\n />\n </CalendarCell>\n </CalendarGridRow>\n </CalendarGridBody>\n </CalendarGrid>\n </template>\n </template>\n </CalendarRoot>\n\n <MonthPickerRoot\n v-if=\"view === 'month'\"\n :placeholder=\"placeholder\"\n :locale=\"locale\"\n :min-value=\"minValue\"\n :max-value=\"maxValue\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n @update:model-value=\"onMonthSelect\"\n @update:placeholder=\"(val: DateValue | undefined) => { if (val) placeholder = val }\"\n >\n <template #default=\"{ grid: monthGrid }\">\n <MonthPickerHeader :class=\"composeClassName(slotFns.header(), props.classNames?.header)\">\n <MonthPickerPrev\n :class=\"composeClassName(slotFns.navButton(), props.classNames?.navButton)\"\n aria-label=\"Previous year\"\n >\n <svg\n :class=\"composeClassName(slotFns.navButtonIcon(), props.classNames?.navButtonIcon)\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n >\n <polyline points=\"15 18 9 12 15 6\" />\n </svg>\n </MonthPickerPrev>\n\n <MonthPickerHeading\n v-slot=\"{ headingValue }\"\n :class=\"composeClassName(slotFns.heading(), props.classNames?.heading)\"\n >\n <button\n type=\"button\"\n :class=\"composeClassName(slotFns.headingButton(), props.classNames?.headingButton)\"\n :aria-label=\"`Switch to ${nextViewLabel} view`\"\n @click=\"cycleView\"\n >\n {{ headingValue }}\n </button>\n </MonthPickerHeading>\n\n <MonthPickerNext\n :class=\"composeClassName(slotFns.navButton(), props.classNames?.navButton)\"\n aria-label=\"Next year\"\n >\n <svg\n :class=\"composeClassName(slotFns.navButtonIcon(), props.classNames?.navButtonIcon)\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n >\n <polyline points=\"9 18 15 12 9 6\" />\n </svg>\n </MonthPickerNext>\n </MonthPickerHeader>\n\n <MonthPickerGrid :class=\"composeClassName(slotFns.monthGrid(), props.classNames?.monthGrid)\">\n <MonthPickerGridBody :class=\"composeClassName(slotFns.monthGridBody(), props.classNames?.monthGridBody)\">\n <MonthPickerGridRow\n v-for=\"(row, i) in monthGrid.rows\"\n :key=\"i\"\n :class=\"composeClassName(slotFns.monthGridRow(), props.classNames?.monthGridRow)\"\n >\n <MonthPickerCell\n v-for=\"monthValue in row\"\n :key=\"monthValue.toString()\"\n :date=\"monthValue\"\n >\n <MonthPickerCellTrigger\n :month=\"monthValue\"\n as=\"button\"\n :class=\"composeClassName(slotFns.monthCell(), props.classNames?.monthCell)\"\n />\n </MonthPickerCell>\n </MonthPickerGridRow>\n </MonthPickerGridBody>\n </MonthPickerGrid>\n </template>\n </MonthPickerRoot>\n\n <CalendarYearPicker\n v-if=\"view === 'year'\"\n v-model:placeholder=\"placeholder\"\n :locale=\"locale\"\n :min-value=\"minValue\"\n :max-value=\"maxValue\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :class=\"composeClassName(props.class, props.classNames?.base)\"\n @update:model-value=\"onYearSelect\"\n >\n <template #heading=\"{ headingValue }\">\n <button\n type=\"button\"\n :class=\"composeClassName(slotFns.headingButton(), props.classNames?.headingButton)\"\n :aria-label=\"`Switch to ${nextViewLabel} view`\"\n @click=\"cycleView\"\n >\n {{ headingValue }}\n </button>\n </template>\n </CalendarYearPicker>\n</template>\n"],"mappings":"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"}
1
+ {"version":3,"file":"Calendar.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/calendar/Calendar.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref, shallowRef } from 'vue'\nimport {\n CalendarRoot,\n CalendarHeader,\n CalendarHeading,\n CalendarGrid,\n CalendarGridHead,\n CalendarGridRow,\n CalendarHeadCell,\n CalendarGridBody,\n CalendarCell,\n CalendarCellTrigger,\n CalendarNext,\n CalendarPrev,\n MonthPickerRoot,\n MonthPickerHeader,\n MonthPickerHeading,\n MonthPickerPrev,\n MonthPickerNext,\n MonthPickerGrid,\n MonthPickerGridBody,\n MonthPickerGridRow,\n MonthPickerCell,\n MonthPickerCellTrigger,\n} from 'reka-ui'\nimport { today, getLocalTimeZone, type DateValue } from '@internationalized/date'\nimport { calendarVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport CalendarYearPicker from '../calendar-year-picker/CalendarYearPicker.vue'\n\nconst props = withDefaults(defineProps<{\n defaultValue?: DateValue\n defaultPlaceholder?: DateValue\n minValue?: DateValue\n maxValue?: DateValue\n isDateDisabled?: (date: DateValue) => boolean\n isDateUnavailable?: (date: DateValue) => boolean\n locale?: string\n weekdayFormat?: 'narrow' | 'short' | 'long'\n fixedWeeks?: boolean\n numberOfMonths?: number\n weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6\n pagedNavigation?: boolean\n preventDeselect?: boolean\n readonly?: boolean\n disabled?: boolean\n calendarLabel?: string\n class?: ClassValue\n /** Override classes on any named slot */\n classNames?: Partial<{\n base: ClassValue\n header: ClassValue\n navButton: ClassValue\n navButtonIcon: ClassValue\n heading: ClassValue\n headingButton: ClassValue\n grid: ClassValue\n gridHeader: ClassValue\n gridRow: ClassValue\n headerCell: ClassValue\n gridBody: ClassValue\n cell: ClassValue\n cellButton: ClassValue\n monthGrid: ClassValue\n monthGridBody: ClassValue\n monthGridRow: ClassValue\n monthCell: ClassValue\n }>\n}>(), {\n weekdayFormat: 'narrow',\n fixedWeeks: false,\n numberOfMonths: 1,\n pagedNavigation: false,\n preventDeselect: false,\n readonly: false,\n disabled: false,\n})\n\nconst modelValue = defineModel<DateValue>()\n\nconst slotFns = computed(() => calendarVariants())\n\n// View-switcher state: 'date' (default 7-col calendar), 'month' (3x4 months), 'year' (3x4 years)\ntype View = 'date' | 'month' | 'year'\nconst view = ref<View>('date')\n\n// Shared placeholder synced with CalendarRoot/MonthPickerRoot/YearPickerRoot.\n// NOTE: shallowRef preserves reka-ui's `DateValue` discriminated-union without\n// deep reactive unwrapping that would break structural type matching on bind sites.\nconst placeholder = shallowRef<DateValue>(\n (props.defaultValue ?? props.defaultPlaceholder ?? today(getLocalTimeZone())) as DateValue\n)\n\nfunction cycleView(): void {\n view.value = view.value === 'date' ? 'month' : view.value === 'month' ? 'year' : 'date'\n}\n\nfunction onMonthSelect(val: DateValue | DateValue[] | undefined): void {\n if (!val) return\n const next = Array.isArray(val) ? val[val.length - 1] : val\n if (!next) return\n placeholder.value = next\n view.value = 'date'\n}\n\nfunction onYearSelect(val: DateValue | DateValue[] | undefined): void {\n if (!val) return\n const next = Array.isArray(val) ? val[val.length - 1] : val\n if (!next) return\n placeholder.value = next\n view.value = 'month'\n}\n\nconst nextViewLabel = computed(() =>\n view.value === 'date' ? 'month' : view.value === 'month' ? 'year' : 'date'\n)\n</script>\n\n<template>\n <CalendarRoot\n v-model=\"modelValue\"\n v-model:placeholder=\"placeholder\"\n :default-value=\"defaultValue\"\n :default-placeholder=\"defaultPlaceholder\"\n :min-value=\"minValue\"\n :max-value=\"maxValue\"\n :is-date-disabled=\"isDateDisabled\"\n :is-date-unavailable=\"isDateUnavailable\"\n :locale=\"locale\"\n :weekday-format=\"weekdayFormat\"\n :fixed-weeks=\"fixedWeeks\"\n :number-of-months=\"numberOfMonths\"\n :week-starts-on=\"weekStartsOn\"\n :paged-navigation=\"pagedNavigation\"\n :prevent-deselect=\"preventDeselect\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :calendar-label=\"calendarLabel\"\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n >\n <template #default=\"{ grid, weekDays }\">\n <template v-if=\"view === 'date'\">\n <CalendarHeader :class=\"composeClassName(slotFns.header(), props.classNames?.header)\">\n <CalendarPrev\n :class=\"composeClassName(slotFns.navButton(), props.classNames?.navButton)\"\n aria-label=\"Previous month\"\n >\n <svg\n :class=\"composeClassName(slotFns.navButtonIcon(), props.classNames?.navButtonIcon)\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n >\n <polyline points=\"15 18 9 12 15 6\" />\n </svg>\n </CalendarPrev>\n\n <CalendarHeading\n v-slot=\"{ headingValue }\"\n :class=\"composeClassName(slotFns.heading(), props.classNames?.heading)\"\n >\n <button\n type=\"button\"\n :class=\"composeClassName(slotFns.headingButton(), props.classNames?.headingButton)\"\n :aria-label=\"`Switch to ${nextViewLabel} view`\"\n @click=\"cycleView\"\n >\n {{ headingValue }}\n </button>\n </CalendarHeading>\n\n <CalendarNext\n :class=\"composeClassName(slotFns.navButton(), props.classNames?.navButton)\"\n aria-label=\"Next month\"\n >\n <svg\n :class=\"composeClassName(slotFns.navButtonIcon(), props.classNames?.navButtonIcon)\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n >\n <polyline points=\"9 18 15 12 9 6\" />\n </svg>\n </CalendarNext>\n </CalendarHeader>\n\n <CalendarGrid\n v-for=\"month in grid\"\n :key=\"month.value.toString()\"\n :class=\"composeClassName(slotFns.grid(), props.classNames?.grid)\"\n >\n <CalendarGridHead :class=\"composeClassName(slotFns.gridHeader(), props.classNames?.gridHeader)\">\n <CalendarGridRow :class=\"composeClassName(slotFns.gridRow(), props.classNames?.gridRow)\">\n <CalendarHeadCell\n v-for=\"day in weekDays\"\n :key=\"day\"\n :class=\"composeClassName(slotFns.headerCell(), props.classNames?.headerCell)\"\n >\n {{ day }}\n </CalendarHeadCell>\n </CalendarGridRow>\n </CalendarGridHead>\n <CalendarGridBody :class=\"composeClassName(slotFns.gridBody(), props.classNames?.gridBody)\">\n <CalendarGridRow\n v-for=\"(week, weekIndex) in month.rows\"\n :key=\"weekIndex\"\n :class=\"composeClassName(slotFns.gridRow(), props.classNames?.gridRow)\"\n >\n <CalendarCell\n v-for=\"day in week\"\n :key=\"day.toString()\"\n :date=\"day\"\n :class=\"composeClassName(slotFns.cell(), props.classNames?.cell)\"\n >\n <CalendarCellTrigger\n :day=\"day\"\n :month=\"month.value\"\n :class=\"composeClassName(slotFns.cellButton(), props.classNames?.cellButton)\"\n />\n </CalendarCell>\n </CalendarGridRow>\n </CalendarGridBody>\n </CalendarGrid>\n </template>\n </template>\n </CalendarRoot>\n\n <MonthPickerRoot\n v-if=\"view === 'month'\"\n :placeholder=\"placeholder\"\n :locale=\"locale\"\n :min-value=\"minValue\"\n :max-value=\"maxValue\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n @update:model-value=\"onMonthSelect\"\n @update:placeholder=\"(val: DateValue | undefined) => { if (val) placeholder = val }\"\n >\n <template #default=\"{ grid: monthGrid }\">\n <MonthPickerHeader :class=\"composeClassName(slotFns.header(), props.classNames?.header)\">\n <MonthPickerPrev\n :class=\"composeClassName(slotFns.navButton(), props.classNames?.navButton)\"\n aria-label=\"Previous year\"\n >\n <svg\n :class=\"composeClassName(slotFns.navButtonIcon(), props.classNames?.navButtonIcon)\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n >\n <polyline points=\"15 18 9 12 15 6\" />\n </svg>\n </MonthPickerPrev>\n\n <MonthPickerHeading\n v-slot=\"{ headingValue }\"\n :class=\"composeClassName(slotFns.heading(), props.classNames?.heading)\"\n >\n <button\n type=\"button\"\n :class=\"composeClassName(slotFns.headingButton(), props.classNames?.headingButton)\"\n :aria-label=\"`Switch to ${nextViewLabel} view`\"\n @click=\"cycleView\"\n >\n {{ headingValue }}\n </button>\n </MonthPickerHeading>\n\n <MonthPickerNext\n :class=\"composeClassName(slotFns.navButton(), props.classNames?.navButton)\"\n aria-label=\"Next year\"\n >\n <svg\n :class=\"composeClassName(slotFns.navButtonIcon(), props.classNames?.navButtonIcon)\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n >\n <polyline points=\"9 18 15 12 9 6\" />\n </svg>\n </MonthPickerNext>\n </MonthPickerHeader>\n\n <MonthPickerGrid :class=\"composeClassName(slotFns.monthGrid(), props.classNames?.monthGrid)\">\n <MonthPickerGridBody :class=\"composeClassName(slotFns.monthGridBody(), props.classNames?.monthGridBody)\">\n <MonthPickerGridRow\n v-for=\"(row, i) in monthGrid.rows\"\n :key=\"i\"\n :class=\"composeClassName(slotFns.monthGridRow(), props.classNames?.monthGridRow)\"\n >\n <MonthPickerCell\n v-for=\"monthValue in row\"\n :key=\"monthValue.toString()\"\n :date=\"monthValue\"\n >\n <MonthPickerCellTrigger\n :month=\"monthValue\"\n as=\"button\"\n :class=\"composeClassName(slotFns.monthCell(), props.classNames?.monthCell)\"\n />\n </MonthPickerCell>\n </MonthPickerGridRow>\n </MonthPickerGridBody>\n </MonthPickerGrid>\n </template>\n </MonthPickerRoot>\n\n <CalendarYearPicker\n v-if=\"view === 'year'\"\n v-model:placeholder=\"placeholder\"\n :locale=\"locale\"\n :min-value=\"minValue\"\n :max-value=\"maxValue\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :class=\"composeClassName(props.class, props.classNames?.base)\"\n @update:model-value=\"onYearSelect\"\n >\n <template #heading=\"{ headingValue }\">\n <button\n type=\"button\"\n :class=\"composeClassName(slotFns.headingButton(), props.classNames?.headingButton)\"\n :aria-label=\"`Switch to ${nextViewLabel} view`\"\n @click=\"cycleView\"\n >\n {{ headingValue }}\n </button>\n </template>\n </CalendarYearPicker>\n</template>\n"],"mappings":"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"}
@@ -27,7 +27,13 @@ var CalendarYearPicker_vue_vue_type_script_setup_true_lang_default = /* @__PURE_
27
27
  default: false
28
28
  },
29
29
  calendarLabel: {},
30
- class: {},
30
+ class: { type: [
31
+ String,
32
+ Boolean,
33
+ null,
34
+ Object,
35
+ Array
36
+ ] },
31
37
  classNames: {}
32
38
  }, {
33
39
  "modelValue": {},
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarYearPicker.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/calendar-year-picker/CalendarYearPicker.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport {\n YearPickerRoot,\n YearPickerHeader,\n YearPickerHeading,\n YearPickerPrev,\n YearPickerNext,\n YearPickerGrid,\n YearPickerGridBody,\n YearPickerGridRow,\n YearPickerCell,\n YearPickerCellTrigger,\n} from 'reka-ui'\nimport type { DateValue } from '@internationalized/date'\nimport { calendarVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\n\nconst props = withDefaults(defineProps<{\n defaultValue?: DateValue\n defaultPlaceholder?: DateValue\n minValue?: DateValue\n maxValue?: DateValue\n isYearDisabled?: (date: DateValue) => boolean\n isYearUnavailable?: (date: DateValue) => boolean\n locale?: string\n yearsPerPage?: number\n preventDeselect?: boolean\n readonly?: boolean\n disabled?: boolean\n calendarLabel?: string\n class?: ClassValue\n /** Per-slot class overrides */\n classNames?: Partial<{\n base: ClassValue\n header: ClassValue\n navButton: ClassValue\n navButtonIcon: ClassValue\n heading: ClassValue\n yearGrid: ClassValue\n yearGridBody: ClassValue\n yearGridRow: ClassValue\n yearCell: ClassValue\n }>\n}>(), {\n yearsPerPage: 12,\n preventDeselect: false,\n readonly: false,\n disabled: false,\n})\n\nconst modelValue = defineModel<DateValue | undefined>()\nconst placeholderModel = defineModel<DateValue | undefined>('placeholder')\n\nconst slotFns = computed(() => calendarVariants())\n</script>\n\n<template>\n <YearPickerRoot\n v-model=\"modelValue\"\n v-model:placeholder=\"placeholderModel\"\n :default-value=\"defaultValue\"\n :default-placeholder=\"defaultPlaceholder\"\n :min-value=\"minValue\"\n :max-value=\"maxValue\"\n :is-year-disabled=\"isYearDisabled\"\n :is-year-unavailable=\"isYearUnavailable\"\n :locale=\"locale\"\n :years-per-page=\"yearsPerPage\"\n :prevent-deselect=\"preventDeselect\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :calendar-label=\"calendarLabel\"\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n >\n <template #default=\"{ grid }\">\n <YearPickerHeader :class=\"composeClassName(slotFns.header(), props.classNames?.header)\">\n <YearPickerPrev\n :class=\"composeClassName(slotFns.navButton(), props.classNames?.navButton)\"\n aria-label=\"Previous years\"\n >\n <svg\n :class=\"composeClassName(slotFns.navButtonIcon(), props.classNames?.navButtonIcon)\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n >\n <polyline points=\"15 18 9 12 15 6\" />\n </svg>\n </YearPickerPrev>\n\n <YearPickerHeading\n v-slot=\"{ headingValue }\"\n :class=\"composeClassName(slotFns.heading(), props.classNames?.heading)\"\n >\n <slot\n name=\"heading\"\n :heading-value=\"headingValue\"\n >\n {{ headingValue }}\n </slot>\n </YearPickerHeading>\n\n <YearPickerNext\n :class=\"composeClassName(slotFns.navButton(), props.classNames?.navButton)\"\n aria-label=\"Next years\"\n >\n <svg\n :class=\"composeClassName(slotFns.navButtonIcon(), props.classNames?.navButtonIcon)\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n >\n <polyline points=\"9 18 15 12 9 6\" />\n </svg>\n </YearPickerNext>\n </YearPickerHeader>\n\n <YearPickerGrid :class=\"composeClassName(slotFns.yearGrid(), props.classNames?.yearGrid)\">\n <YearPickerGridBody :class=\"composeClassName(slotFns.yearGridBody(), props.classNames?.yearGridBody)\">\n <YearPickerGridRow\n v-for=\"(row, rowIndex) in grid.rows\"\n :key=\"rowIndex\"\n :class=\"composeClassName(slotFns.yearGridRow(), props.classNames?.yearGridRow)\"\n >\n <YearPickerCell\n v-for=\"yearValue in row\"\n :key=\"yearValue.toString()\"\n :date=\"yearValue\"\n >\n <YearPickerCellTrigger\n :year=\"yearValue\"\n as=\"button\"\n :class=\"composeClassName(slotFns.yearCell(), props.classNames?.yearCell)\"\n />\n </YearPickerCell>\n </YearPickerGridRow>\n </YearPickerGridBody>\n </YearPickerGrid>\n </template>\n </YearPickerRoot>\n</template>\n"],"mappings":"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"}
1
+ {"version":3,"file":"CalendarYearPicker.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/calendar-year-picker/CalendarYearPicker.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport {\n YearPickerRoot,\n YearPickerHeader,\n YearPickerHeading,\n YearPickerPrev,\n YearPickerNext,\n YearPickerGrid,\n YearPickerGridBody,\n YearPickerGridRow,\n YearPickerCell,\n YearPickerCellTrigger,\n} from 'reka-ui'\nimport type { DateValue } from '@internationalized/date'\nimport { calendarVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\n\nconst props = withDefaults(defineProps<{\n defaultValue?: DateValue\n defaultPlaceholder?: DateValue\n minValue?: DateValue\n maxValue?: DateValue\n isYearDisabled?: (date: DateValue) => boolean\n isYearUnavailable?: (date: DateValue) => boolean\n locale?: string\n yearsPerPage?: number\n preventDeselect?: boolean\n readonly?: boolean\n disabled?: boolean\n calendarLabel?: string\n class?: ClassValue\n /** Per-slot class overrides */\n classNames?: Partial<{\n base: ClassValue\n header: ClassValue\n navButton: ClassValue\n navButtonIcon: ClassValue\n heading: ClassValue\n yearGrid: ClassValue\n yearGridBody: ClassValue\n yearGridRow: ClassValue\n yearCell: ClassValue\n }>\n}>(), {\n yearsPerPage: 12,\n preventDeselect: false,\n readonly: false,\n disabled: false,\n})\n\nconst modelValue = defineModel<DateValue | undefined>()\nconst placeholderModel = defineModel<DateValue | undefined>('placeholder')\n\nconst slotFns = computed(() => calendarVariants())\n</script>\n\n<template>\n <YearPickerRoot\n v-model=\"modelValue\"\n v-model:placeholder=\"placeholderModel\"\n :default-value=\"defaultValue\"\n :default-placeholder=\"defaultPlaceholder\"\n :min-value=\"minValue\"\n :max-value=\"maxValue\"\n :is-year-disabled=\"isYearDisabled\"\n :is-year-unavailable=\"isYearUnavailable\"\n :locale=\"locale\"\n :years-per-page=\"yearsPerPage\"\n :prevent-deselect=\"preventDeselect\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :calendar-label=\"calendarLabel\"\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n >\n <template #default=\"{ grid }\">\n <YearPickerHeader :class=\"composeClassName(slotFns.header(), props.classNames?.header)\">\n <YearPickerPrev\n :class=\"composeClassName(slotFns.navButton(), props.classNames?.navButton)\"\n aria-label=\"Previous years\"\n >\n <svg\n :class=\"composeClassName(slotFns.navButtonIcon(), props.classNames?.navButtonIcon)\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n >\n <polyline points=\"15 18 9 12 15 6\" />\n </svg>\n </YearPickerPrev>\n\n <YearPickerHeading\n v-slot=\"{ headingValue }\"\n :class=\"composeClassName(slotFns.heading(), props.classNames?.heading)\"\n >\n <slot\n name=\"heading\"\n :heading-value=\"headingValue\"\n >\n {{ headingValue }}\n </slot>\n </YearPickerHeading>\n\n <YearPickerNext\n :class=\"composeClassName(slotFns.navButton(), props.classNames?.navButton)\"\n aria-label=\"Next years\"\n >\n <svg\n :class=\"composeClassName(slotFns.navButtonIcon(), props.classNames?.navButtonIcon)\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n >\n <polyline points=\"9 18 15 12 9 6\" />\n </svg>\n </YearPickerNext>\n </YearPickerHeader>\n\n <YearPickerGrid :class=\"composeClassName(slotFns.yearGrid(), props.classNames?.yearGrid)\">\n <YearPickerGridBody :class=\"composeClassName(slotFns.yearGridBody(), props.classNames?.yearGridBody)\">\n <YearPickerGridRow\n v-for=\"(row, rowIndex) in grid.rows\"\n :key=\"rowIndex\"\n :class=\"composeClassName(slotFns.yearGridRow(), props.classNames?.yearGridRow)\"\n >\n <YearPickerCell\n v-for=\"yearValue in row\"\n :key=\"yearValue.toString()\"\n :date=\"yearValue\"\n >\n <YearPickerCellTrigger\n :year=\"yearValue\"\n as=\"button\"\n :class=\"composeClassName(slotFns.yearCell(), props.classNames?.yearCell)\"\n />\n </YearPickerCell>\n </YearPickerGridRow>\n </YearPickerGridBody>\n </YearPickerGrid>\n </template>\n </YearPickerRoot>\n</template>\n"],"mappings":"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"}
@@ -31,7 +31,13 @@ var Card_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineCom
31
31
  type: Boolean,
32
32
  default: false
33
33
  },
34
- class: {},
34
+ class: { type: [
35
+ String,
36
+ Boolean,
37
+ null,
38
+ Object,
39
+ Array
40
+ ] },
35
41
  classNames: {}
36
42
  },
37
43
  emits: ["press"],
@@ -1 +1 @@
1
- {"version":3,"file":"Card.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/card/Card.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRef } from 'vue'\nimport { cardVariants, type CardVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { useCardProvide } from './card.context'\n\nconst props = withDefaults(defineProps<{\n variant?: CardVariants['variant']\n shadow?: CardVariants['shadow']\n radius?: CardVariants['radius']\n isHoverable?: boolean\n isPressable?: boolean\n isDisabled?: boolean\n fullWidth?: boolean\n class?: ClassValue\n /** Override CSS classes for specific slots. */\n classNames?: Partial<{\n base: ClassValue\n }>\n}>(), {\n variant: 'default',\n shadow: 'sm',\n radius: 'lg',\n isHoverable: false,\n isPressable: false,\n isDisabled: false,\n fullWidth: false,\n})\n\nconst emit = defineEmits<{\n press: [event: MouseEvent | KeyboardEvent]\n}>()\n\nuseCardProvide({\n variant: toRef(props, 'variant'),\n shadow: toRef(props, 'shadow'),\n radius: toRef(props, 'radius'),\n isHoverable: toRef(props, 'isHoverable'),\n isPressable: toRef(props, 'isPressable'),\n isDisabled: toRef(props, 'isDisabled'),\n fullWidth: toRef(props, 'fullWidth'),\n})\n\nconst slotFns = computed(() =>\n cardVariants({\n variant: props.variant,\n shadow: props.shadow,\n radius: props.radius,\n isHoverable: props.isHoverable,\n isPressable: props.isPressable,\n isDisabled: props.isDisabled,\n fullWidth: props.fullWidth,\n }),\n)\n\nconst role = computed(() => (props.isPressable ? 'button' : undefined))\nconst tabindex = computed(() => (props.isPressable && !props.isDisabled ? 0 : undefined))\n\nfunction onClick(event: MouseEvent) {\n if (props.isDisabled) return\n if (props.isPressable) emit('press', event)\n}\n\nfunction onKeydown(event: KeyboardEvent) {\n if (!props.isPressable || props.isDisabled) return\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault()\n emit('press', event)\n }\n}\n</script>\n\n<template>\n <div\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n :role=\"role\"\n :tabindex=\"tabindex\"\n :aria-disabled=\"isDisabled || undefined\"\n :data-disabled=\"isDisabled || undefined\"\n @click=\"onClick\"\n @keydown=\"onKeydown\"\n >\n <slot />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMA,MAAM,QAAQ;EAuBd,MAAM,OAAO;AAIb,iBAAe;GACb,SAAS,MAAM,OAAO,UAAU;GAChC,QAAQ,MAAM,OAAO,SAAS;GAC9B,QAAQ,MAAM,OAAO,SAAS;GAC9B,aAAa,MAAM,OAAO,cAAc;GACxC,aAAa,MAAM,OAAO,cAAc;GACxC,YAAY,MAAM,OAAO,aAAa;GACtC,WAAW,MAAM,OAAO,YAAY;GACrC,CAAA;EAED,MAAM,UAAU,eACd,aAAa;GACX,SAAS,MAAM;GACf,QAAQ,MAAM;GACd,QAAQ,MAAM;GACd,aAAa,MAAM;GACnB,aAAa,MAAM;GACnB,YAAY,MAAM;GAClB,WAAW,MAAM;GAClB,CAAC,CACJ;EAEA,MAAM,OAAO,eAAgB,MAAM,cAAc,WAAW,KAAA,EAAU;EACtE,MAAM,WAAW,eAAgB,MAAM,eAAe,CAAC,MAAM,aAAa,IAAI,KAAA,EAAU;EAExF,SAAS,QAAQ,OAAmB;AAClC,OAAI,MAAM,WAAY;AACtB,OAAI,MAAM,YAAa,MAAK,SAAS,MAAK;;EAG5C,SAAS,UAAU,OAAsB;AACvC,OAAI,CAAC,MAAM,eAAe,MAAM,WAAY;AAC5C,OAAI,MAAM,QAAQ,WAAW,MAAM,QAAQ,KAAK;AAC9C,UAAM,gBAAe;AACrB,SAAK,SAAS,MAAK;;;;uBAMrB,mBAUM,OAAA;IATH,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,MAAI,EAAI,MAAM,OAAO,MAAM,YAAY,KAAI,CAAA;IAC3E,MAAM,KAAA;IACN,UAAU,SAAA;IACV,iBAAe,QAAA,cAAc,KAAA;IAC7B,iBAAe,QAAA,cAAc,KAAA;IACtB;IACE;OAEV,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,IAAA,WAAA"}
1
+ {"version":3,"file":"Card.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/card/Card.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRef } from 'vue'\nimport { cardVariants, type CardVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { useCardProvide } from './card.context'\n\nconst props = withDefaults(defineProps<{\n variant?: CardVariants['variant']\n shadow?: CardVariants['shadow']\n radius?: CardVariants['radius']\n isHoverable?: boolean\n isPressable?: boolean\n isDisabled?: boolean\n fullWidth?: boolean\n class?: ClassValue\n /** Override CSS classes for specific slots. */\n classNames?: Partial<{\n base: ClassValue\n }>\n}>(), {\n variant: 'default',\n shadow: 'sm',\n radius: 'lg',\n isHoverable: false,\n isPressable: false,\n isDisabled: false,\n fullWidth: false,\n})\n\nconst emit = defineEmits<{\n press: [event: MouseEvent | KeyboardEvent]\n}>()\n\nuseCardProvide({\n variant: toRef(props, 'variant'),\n shadow: toRef(props, 'shadow'),\n radius: toRef(props, 'radius'),\n isHoverable: toRef(props, 'isHoverable'),\n isPressable: toRef(props, 'isPressable'),\n isDisabled: toRef(props, 'isDisabled'),\n fullWidth: toRef(props, 'fullWidth'),\n})\n\nconst slotFns = computed(() =>\n cardVariants({\n variant: props.variant,\n shadow: props.shadow,\n radius: props.radius,\n isHoverable: props.isHoverable,\n isPressable: props.isPressable,\n isDisabled: props.isDisabled,\n fullWidth: props.fullWidth,\n }),\n)\n\nconst role = computed(() => (props.isPressable ? 'button' : undefined))\nconst tabindex = computed(() => (props.isPressable && !props.isDisabled ? 0 : undefined))\n\nfunction onClick(event: MouseEvent) {\n if (props.isDisabled) return\n if (props.isPressable) emit('press', event)\n}\n\nfunction onKeydown(event: KeyboardEvent) {\n if (!props.isPressable || props.isDisabled) return\n if (event.key === 'Enter' || event.key === ' ') {\n event.preventDefault()\n emit('press', event)\n }\n}\n</script>\n\n<template>\n <div\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n :role=\"role\"\n :tabindex=\"tabindex\"\n :aria-disabled=\"isDisabled || undefined\"\n :data-disabled=\"isDisabled || undefined\"\n @click=\"onClick\"\n @keydown=\"onKeydown\"\n >\n <slot />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMA,MAAM,QAAQ;EAuBd,MAAM,OAAO;AAIb,iBAAe;GACb,SAAS,MAAM,OAAO,UAAU;GAChC,QAAQ,MAAM,OAAO,SAAS;GAC9B,QAAQ,MAAM,OAAO,SAAS;GAC9B,aAAa,MAAM,OAAO,cAAc;GACxC,aAAa,MAAM,OAAO,cAAc;GACxC,YAAY,MAAM,OAAO,aAAa;GACtC,WAAW,MAAM,OAAO,YAAY;GACrC,CAAA;EAED,MAAM,UAAU,eACd,aAAa;GACX,SAAS,MAAM;GACf,QAAQ,MAAM;GACd,QAAQ,MAAM;GACd,aAAa,MAAM;GACnB,aAAa,MAAM;GACnB,YAAY,MAAM;GAClB,WAAW,MAAM;GAClB,CAAC,CACJ;EAEA,MAAM,OAAO,eAAgB,MAAM,cAAc,WAAW,KAAA,EAAU;EACtE,MAAM,WAAW,eAAgB,MAAM,eAAe,CAAC,MAAM,aAAa,IAAI,KAAA,EAAU;EAExF,SAAS,QAAQ,OAAmB;AAClC,OAAI,MAAM,WAAY;AACtB,OAAI,MAAM,YAAa,MAAK,SAAS,MAAK;;EAG5C,SAAS,UAAU,OAAsB;AACvC,OAAI,CAAC,MAAM,eAAe,MAAM,WAAY;AAC5C,OAAI,MAAM,QAAQ,WAAW,MAAM,QAAQ,KAAK;AAC9C,UAAM,gBAAe;AACrB,SAAK,SAAS,MAAK;;;;uBAMrB,mBAUM,OAAA;IATH,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,MAAI,EAAI,MAAM,OAAO,MAAM,YAAY,KAAI,CAAA;IAC3E,MAAM,KAAA;IACN,UAAU,SAAA;IACV,iBAAe,QAAA,cAAc,KAAA;IAC7B,iBAAe,QAAA,cAAc,KAAA;IACtB;IACE;OAEV,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,IAAA,WAAA"}
@@ -6,7 +6,13 @@ import { cardVariants } from "@auronui/styles";
6
6
  var CardBody_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
7
7
  __name: "CardBody",
8
8
  props: {
9
- class: {},
9
+ class: { type: [
10
+ String,
11
+ Boolean,
12
+ null,
13
+ Object,
14
+ Array
15
+ ] },
10
16
  classNames: {}
11
17
  },
12
18
  setup(__props) {
@@ -1 +1 @@
1
- {"version":3,"file":"CardBody.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/card/CardBody.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref } from 'vue'\nimport { cardVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { useCardInject } from './card.context'\n\nconst props = defineProps<{\n /**\n * Custom class to apply to the root element.\n */\n class?: ClassValue\n /**\n * Custom classes to apply to each slot.\n */\n classNames?: Partial<{\n content: ClassValue\n }>\n}>()\n\nconst ctx = useCardInject({\n variant: ref('default'),\n shadow: ref('sm'),\n radius: ref('lg'),\n isHoverable: ref(false),\n isPressable: ref(false),\n isDisabled: ref(false),\n fullWidth: ref(false),\n})\nconst slotFns = computed(() => cardVariants({ variant: ctx.variant.value }))\n</script>\n\n<template>\n <div :class=\"composeClassName(slotFns.content(), props.class, props.classNames?.content)\">\n <slot />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;EAMA,MAAM,QAAQ;EAad,MAAM,MAAM,cAAc;GACxB,SAAS,IAAI,UAAU;GACvB,QAAQ,IAAI,KAAK;GACjB,QAAQ,IAAI,KAAK;GACjB,aAAa,IAAI,MAAM;GACvB,aAAa,IAAI,MAAM;GACvB,YAAY,IAAI,MAAM;GACtB,WAAW,IAAI,MAAM;GACtB,CAAA;EACD,MAAM,UAAU,eAAe,aAAa,EAAE,SAAS,IAAI,QAAQ,OAAO,CAAC,CAAA;;uBAIzE,mBAEM,OAAA,EAFA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,SAAO,EAAI,MAAM,OAAO,MAAM,YAAY,QAAO,CAAA,EAAA,EAAA,CACrF,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,EAAA"}
1
+ {"version":3,"file":"CardBody.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/card/CardBody.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref } from 'vue'\nimport { cardVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { useCardInject } from './card.context'\n\nconst props = defineProps<{\n /**\n * Custom class to apply to the root element.\n */\n class?: ClassValue\n /**\n * Custom classes to apply to each slot.\n */\n classNames?: Partial<{\n content: ClassValue\n }>\n}>()\n\nconst ctx = useCardInject({\n variant: ref('default'),\n shadow: ref('sm'),\n radius: ref('lg'),\n isHoverable: ref(false),\n isPressable: ref(false),\n isDisabled: ref(false),\n fullWidth: ref(false),\n})\nconst slotFns = computed(() => cardVariants({ variant: ctx.variant.value }))\n</script>\n\n<template>\n <div :class=\"composeClassName(slotFns.content(), props.class, props.classNames?.content)\">\n <slot />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;EAMA,MAAM,QAAQ;EAad,MAAM,MAAM,cAAc;GACxB,SAAS,IAAI,UAAU;GACvB,QAAQ,IAAI,KAAK;GACjB,QAAQ,IAAI,KAAK;GACjB,aAAa,IAAI,MAAM;GACvB,aAAa,IAAI,MAAM;GACvB,YAAY,IAAI,MAAM;GACtB,WAAW,IAAI,MAAM;GACtB,CAAA;EACD,MAAM,UAAU,eAAe,aAAa,EAAE,SAAS,IAAI,QAAQ,OAAO,CAAC,CAAA;;uBAIzE,mBAEM,OAAA,EAFA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,SAAO,EAAI,MAAM,OAAO,MAAM,YAAY,QAAO,CAAA,EAAA,EAAA,CACrF,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,EAAA"}
@@ -10,7 +10,13 @@ var CardFooter_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ def
10
10
  type: Boolean,
11
11
  default: false
12
12
  },
13
- class: {},
13
+ class: { type: [
14
+ String,
15
+ Boolean,
16
+ null,
17
+ Object,
18
+ Array
19
+ ] },
14
20
  classNames: {}
15
21
  },
16
22
  setup(__props) {
@@ -1 +1 @@
1
- {"version":3,"file":"CardFooter.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/card/CardFooter.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref } from 'vue'\nimport { cardVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { useCardInject } from './card.context'\n\nconst props = withDefaults(defineProps<{\n divider?: boolean\n class?: ClassValue\n /** Override the default classes applied to individual slots. */\n classNames?: Partial<{\n footer: ClassValue\n }>\n}>(), { divider: false })\n\nconst ctx = useCardInject({\n variant: ref('default'),\n shadow: ref('sm'),\n radius: ref('lg'),\n isHoverable: ref(false),\n isPressable: ref(false),\n isDisabled: ref(false),\n fullWidth: ref(false),\n})\nconst slotFns = computed(() => cardVariants({ variant: ctx.variant.value }))\n</script>\n\n<template>\n <div :class=\"composeClassName(slotFns.footer(), divider && 'card__footer--divided', props.class, props.classNames?.footer)\">\n <slot />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;EAMA,MAAM,QAAQ;EASd,MAAM,MAAM,cAAc;GACxB,SAAS,IAAI,UAAU;GACvB,QAAQ,IAAI,KAAK;GACjB,QAAQ,IAAI,KAAK;GACjB,aAAa,IAAI,MAAM;GACvB,aAAa,IAAI,MAAM;GACvB,YAAY,IAAI,MAAM;GACtB,WAAW,IAAI,MAAM;GACtB,CAAA;EACD,MAAM,UAAU,eAAe,aAAa,EAAE,SAAS,IAAI,QAAQ,OAAO,CAAC,CAAA;;uBAIzE,mBAEM,OAAA,EAFA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,QAAM,EAAI,QAAA,WAAO,yBAA6B,MAAM,OAAO,MAAM,YAAY,OAAM,CAAA,EAAA,EAAA,CACvH,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,EAAA"}
1
+ {"version":3,"file":"CardFooter.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/card/CardFooter.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref } from 'vue'\nimport { cardVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { useCardInject } from './card.context'\n\nconst props = withDefaults(defineProps<{\n divider?: boolean\n class?: ClassValue\n /** Override the default classes applied to individual slots. */\n classNames?: Partial<{\n footer: ClassValue\n }>\n}>(), { divider: false })\n\nconst ctx = useCardInject({\n variant: ref('default'),\n shadow: ref('sm'),\n radius: ref('lg'),\n isHoverable: ref(false),\n isPressable: ref(false),\n isDisabled: ref(false),\n fullWidth: ref(false),\n})\nconst slotFns = computed(() => cardVariants({ variant: ctx.variant.value }))\n</script>\n\n<template>\n <div :class=\"composeClassName(slotFns.footer(), divider && 'card__footer--divided', props.class, props.classNames?.footer)\">\n <slot />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;EAMA,MAAM,QAAQ;EASd,MAAM,MAAM,cAAc;GACxB,SAAS,IAAI,UAAU;GACvB,QAAQ,IAAI,KAAK;GACjB,QAAQ,IAAI,KAAK;GACjB,aAAa,IAAI,MAAM;GACvB,aAAa,IAAI,MAAM;GACvB,YAAY,IAAI,MAAM;GACtB,WAAW,IAAI,MAAM;GACtB,CAAA;EACD,MAAM,UAAU,eAAe,aAAa,EAAE,SAAS,IAAI,QAAQ,OAAO,CAAC,CAAA;;uBAIzE,mBAEM,OAAA,EAFA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,QAAM,EAAI,QAAA,WAAO,yBAA6B,MAAM,OAAO,MAAM,YAAY,OAAM,CAAA,EAAA,EAAA,CACvH,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,EAAA"}
@@ -10,7 +10,13 @@ var CardHeader_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ def
10
10
  type: Boolean,
11
11
  default: false
12
12
  },
13
- class: {},
13
+ class: { type: [
14
+ String,
15
+ Boolean,
16
+ null,
17
+ Object,
18
+ Array
19
+ ] },
14
20
  classNames: {}
15
21
  },
16
22
  setup(__props) {
@@ -1 +1 @@
1
- {"version":3,"file":"CardHeader.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/card/CardHeader.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref } from 'vue'\nimport { cardVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { useCardInject } from './card.context'\n\nconst props = withDefaults(defineProps<{\n divider?: boolean\n class?: ClassValue\n /** Override styles for specific slots. */\n classNames?: Partial<{\n header: ClassValue\n }>\n}>(), { divider: false })\n\nconst ctx = useCardInject({\n variant: ref('default'),\n shadow: ref('sm'),\n radius: ref('lg'),\n isHoverable: ref(false),\n isPressable: ref(false),\n isDisabled: ref(false),\n fullWidth: ref(false),\n})\nconst slotFns = computed(() => cardVariants({ variant: ctx.variant.value }))\n</script>\n\n<template>\n <div :class=\"composeClassName(slotFns.header(), divider && 'card__header--divided', props.class, props.classNames?.header)\">\n <slot />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;EAMA,MAAM,QAAQ;EASd,MAAM,MAAM,cAAc;GACxB,SAAS,IAAI,UAAU;GACvB,QAAQ,IAAI,KAAK;GACjB,QAAQ,IAAI,KAAK;GACjB,aAAa,IAAI,MAAM;GACvB,aAAa,IAAI,MAAM;GACvB,YAAY,IAAI,MAAM;GACtB,WAAW,IAAI,MAAM;GACtB,CAAA;EACD,MAAM,UAAU,eAAe,aAAa,EAAE,SAAS,IAAI,QAAQ,OAAO,CAAC,CAAA;;uBAIzE,mBAEM,OAAA,EAFA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,QAAM,EAAI,QAAA,WAAO,yBAA6B,MAAM,OAAO,MAAM,YAAY,OAAM,CAAA,EAAA,EAAA,CACvH,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,EAAA"}
1
+ {"version":3,"file":"CardHeader.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/card/CardHeader.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref } from 'vue'\nimport { cardVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { useCardInject } from './card.context'\n\nconst props = withDefaults(defineProps<{\n divider?: boolean\n class?: ClassValue\n /** Override styles for specific slots. */\n classNames?: Partial<{\n header: ClassValue\n }>\n}>(), { divider: false })\n\nconst ctx = useCardInject({\n variant: ref('default'),\n shadow: ref('sm'),\n radius: ref('lg'),\n isHoverable: ref(false),\n isPressable: ref(false),\n isDisabled: ref(false),\n fullWidth: ref(false),\n})\nconst slotFns = computed(() => cardVariants({ variant: ctx.variant.value }))\n</script>\n\n<template>\n <div :class=\"composeClassName(slotFns.header(), divider && 'card__header--divided', props.class, props.classNames?.header)\">\n <slot />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;EAMA,MAAM,QAAQ;EASd,MAAM,MAAM,cAAc;GACxB,SAAS,IAAI,UAAU;GACvB,QAAQ,IAAI,KAAK;GACjB,QAAQ,IAAI,KAAK;GACjB,aAAa,IAAI,MAAM;GACvB,aAAa,IAAI,MAAM;GACvB,YAAY,IAAI,MAAM;GACtB,WAAW,IAAI,MAAM;GACtB,CAAA;EACD,MAAM,UAAU,eAAe,aAAa,EAAE,SAAS,IAAI,QAAQ,OAAO,CAAC,CAAA;;uBAIzE,mBAEM,OAAA,EAFA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,QAAM,EAAI,QAAA,WAAO,yBAA6B,MAAM,OAAO,MAAM,YAAY,OAAM,CAAA,EAAA,EAAA,CACvH,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,EAAA"}
@@ -52,7 +52,13 @@ var Checkbox_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defin
52
52
  default: false
53
53
  },
54
54
  name: { default: void 0 },
55
- class: {},
55
+ class: { type: [
56
+ String,
57
+ Boolean,
58
+ null,
59
+ Object,
60
+ Array
61
+ ] },
56
62
  classNames: {}
57
63
  },
58
64
  emits: ["update:modelValue"],
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/checkbox/Checkbox.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref, useAttrs } from 'vue'\nimport { CheckboxRoot, CheckboxIndicator } from 'reka-ui'\nimport { checkboxVariants, type CheckboxVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { useCheckboxGroupInject } from './checkbox-group.context'\n\n// Disable Vue attribute fallthrough — we manually forward $attrs to CheckboxRoot\ndefineOptions({ inheritAttrs: false })\n\nconst props = withDefaults(defineProps<{\n variant?: CheckboxVariants['variant']\n value?: string\n modelValue?: boolean\n defaultValue?: boolean\n disabled?: boolean\n isIndeterminate?: boolean\n name?: string\n class?: ClassValue\n /** Per-slot class overrides for any slot in this component. */\n classNames?: Partial<{\n base: ClassValue\n control: ClassValue\n indicator: ClassValue\n content: ClassValue\n }>\n}>(), {\n variant: undefined,\n value: undefined,\n modelValue: undefined,\n defaultValue: false,\n disabled: false,\n isIndeterminate: false,\n name: undefined,\n})\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: boolean]\n}>()\n\nconst attrs = useAttrs()\n\n// Inject CheckboxGroup context with fallback defaults (standalone mode)\nconst groupCtx = useCheckboxGroupInject({\n variant: ref('primary'),\n disabled: ref(false),\n selectedValues: ref([]),\n toggleValue: () => {},\n name: ref(undefined),\n})\n\n// Prop precedence: group disabled wins (D-02)\nconst isDisabled = computed(() => groupCtx.disabled.value || props.disabled)\n\n// Child variant wins over group variant\nconst finalVariant = computed(() => props.variant ?? groupCtx.variant.value)\n\n// Determine if inside a group (value prop is the signal)\nconst isInGroup = computed(() => props.value !== undefined)\n\n// Compute modelValue for Reka UI CheckboxRoot\n// Reka UI uses modelValue: boolean | 'indeterminate' to control state\nconst checkedState = computed<boolean | 'indeterminate'>(() => {\n if (props.isIndeterminate) return 'indeterminate'\n if (isInGroup.value) {\n return groupCtx.selectedValues.value.includes(props.value!)\n }\n return props.modelValue ?? false\n})\n\n// Handle Reka UI's update:modelValue event\nfunction handleUpdate(val: boolean | 'indeterminate') {\n if (isInGroup.value) {\n groupCtx.toggleValue(props.value!)\n } else {\n if (val !== 'indeterminate') {\n emit('update:modelValue', val)\n }\n }\n}\n\nconst slotFns = computed(() =>\n checkboxVariants({ variant: finalVariant.value })\n)\n</script>\n\n<template>\n <!--\n v-bind=\"attrs\" forwards aria-label and other HTML attributes through to Reka UI's\n CheckboxRoot, which then applies them to the inner <button> element.\n inheritAttrs: false prevents double-application on CheckboxRoot's root.\n -->\n <CheckboxRoot\n v-bind=\"attrs\"\n :model-value=\"checkedState\"\n :disabled=\"isDisabled\"\n :name=\"props.name ?? groupCtx.name.value\"\n :value=\"props.value\"\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n @update:model-value=\"handleUpdate\"\n >\n <span :class=\"composeClassName(slotFns.control(), props.classNames?.control)\">\n <CheckboxIndicator :class=\"composeClassName(slotFns.indicator(), props.classNames?.indicator)\">\n <!-- Indeterminate: dash icon -->\n <svg\n v-if=\"props.isIndeterminate\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"3\"\n stroke-linecap=\"round\"\n aria-hidden=\"true\"\n >\n <line\n x1=\"5\"\n y1=\"12\"\n x2=\"19\"\n y2=\"12\"\n />\n </svg>\n <!-- Checked: check icon -->\n <svg\n v-else\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"3\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n >\n <polyline points=\"20 6 9 17 4 12\" />\n </svg>\n </CheckboxIndicator>\n </span>\n <span :class=\"composeClassName(slotFns.content(), props.classNames?.content)\">\n <slot />\n </span>\n </CheckboxRoot>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUA,MAAM,QAAQ;EA0Bd,MAAM,OAAO;EAIb,MAAM,QAAQ,UAAS;EAGvB,MAAM,WAAW,uBAAuB;GACtC,SAAS,IAAI,UAAU;GACvB,UAAU,IAAI,MAAM;GACpB,gBAAgB,IAAI,EAAE,CAAC;GACvB,mBAAmB;GACnB,MAAM,IAAI,KAAA,EAAU;GACrB,CAAA;EAGD,MAAM,aAAa,eAAe,SAAS,SAAS,SAAS,MAAM,SAAQ;EAG3E,MAAM,eAAe,eAAe,MAAM,WAAW,SAAS,QAAQ,MAAK;EAG3E,MAAM,YAAY,eAAe,MAAM,UAAU,KAAA,EAAS;EAI1D,MAAM,eAAe,eAA0C;AAC7D,OAAI,MAAM,gBAAiB,QAAO;AAClC,OAAI,UAAU,MACZ,QAAO,SAAS,eAAe,MAAM,SAAS,MAAM,MAAM;AAE5D,UAAO,MAAM,cAAc;IAC5B;EAGD,SAAS,aAAa,KAAgC;AACpD,OAAI,UAAU,MACZ,UAAS,YAAY,MAAM,MAAM;YAE7B,QAAQ,gBACV,MAAK,qBAAqB,IAAG;;EAKnC,MAAM,UAAU,eACd,iBAAiB,EAAE,SAAS,aAAa,OAAO,CAAA,CAClD;;uBASE,YAoDe,MAAA,aAAA,EApDf,WACU,MAmDK,MAnDA,EAAA;IACZ,eAAa,aAAA;IACb,UAAU,WAAA;IACV,MAAM,MAAM,QAAQ,MAAA,SAAQ,CAAC,KAAK;IAClC,OAAO,MAAM;IACb,OAAO,MAAA,iBAAgB,CAAC,QAAA,MAAQ,MAAI,EAAI,MAAM,OAAO,MAAM,YAAY,KAAI;IAC3E,uBAAoB;;2BAyCd,CAvCP,mBAuCO,QAAA,EAvCA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,SAAO,EAAI,MAAM,YAAY,QAAO,CAAA,EAAA,EAAA,CACzE,YAqCoB,MAAA,kBAAA,EAAA,EArCA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,WAAS,EAAI,MAAM,YAAY,UAAS,CAAA,EAAA,EAAA;4BAoBpF,CAjBE,MAAM,mBAAA,WAAA,EADd,mBAkBM,OAlBN,YAkBM,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CANJ,mBAKE,QAAA;MAJA,IAAG;MACH,IAAG;MACH,IAAG;MACH,IAAG;uCAIP,mBAcM,OAdN,YAcM,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CADJ,mBAAoC,YAAA,EAA1B,QAAO,kBAAgB,EAAA,MAAA,GAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2BAIvC,mBAEO,QAAA,EAFA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,SAAO,EAAI,MAAM,YAAY,QAAO,CAAA,EAAA,EAAA,CACzE,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,EAAA,CAAA,CAAA"}
1
+ {"version":3,"file":"Checkbox.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/checkbox/Checkbox.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref, useAttrs } from 'vue'\nimport { CheckboxRoot, CheckboxIndicator } from 'reka-ui'\nimport { checkboxVariants, type CheckboxVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { useCheckboxGroupInject } from './checkbox-group.context'\n\n// Disable Vue attribute fallthrough — we manually forward $attrs to CheckboxRoot\ndefineOptions({ inheritAttrs: false })\n\nconst props = withDefaults(defineProps<{\n variant?: CheckboxVariants['variant']\n value?: string\n modelValue?: boolean\n defaultValue?: boolean\n disabled?: boolean\n isIndeterminate?: boolean\n name?: string\n class?: ClassValue\n /** Per-slot class overrides for any slot in this component. */\n classNames?: Partial<{\n base: ClassValue\n control: ClassValue\n indicator: ClassValue\n content: ClassValue\n }>\n}>(), {\n variant: undefined,\n value: undefined,\n modelValue: undefined,\n defaultValue: false,\n disabled: false,\n isIndeterminate: false,\n name: undefined,\n})\n\nconst emit = defineEmits<{\n 'update:modelValue': [value: boolean]\n}>()\n\nconst attrs = useAttrs()\n\n// Inject CheckboxGroup context with fallback defaults (standalone mode)\nconst groupCtx = useCheckboxGroupInject({\n variant: ref('primary'),\n disabled: ref(false),\n selectedValues: ref([]),\n toggleValue: () => {},\n name: ref(undefined),\n})\n\n// Prop precedence: group disabled wins (D-02)\nconst isDisabled = computed(() => groupCtx.disabled.value || props.disabled)\n\n// Child variant wins over group variant\nconst finalVariant = computed(() => props.variant ?? groupCtx.variant.value)\n\n// Determine if inside a group (value prop is the signal)\nconst isInGroup = computed(() => props.value !== undefined)\n\n// Compute modelValue for Reka UI CheckboxRoot\n// Reka UI uses modelValue: boolean | 'indeterminate' to control state\nconst checkedState = computed<boolean | 'indeterminate'>(() => {\n if (props.isIndeterminate) return 'indeterminate'\n if (isInGroup.value) {\n return groupCtx.selectedValues.value.includes(props.value!)\n }\n return props.modelValue ?? false\n})\n\n// Handle Reka UI's update:modelValue event\nfunction handleUpdate(val: boolean | 'indeterminate') {\n if (isInGroup.value) {\n groupCtx.toggleValue(props.value!)\n } else {\n if (val !== 'indeterminate') {\n emit('update:modelValue', val)\n }\n }\n}\n\nconst slotFns = computed(() =>\n checkboxVariants({ variant: finalVariant.value })\n)\n</script>\n\n<template>\n <!--\n v-bind=\"attrs\" forwards aria-label and other HTML attributes through to Reka UI's\n CheckboxRoot, which then applies them to the inner <button> element.\n inheritAttrs: false prevents double-application on CheckboxRoot's root.\n -->\n <CheckboxRoot\n v-bind=\"attrs\"\n :model-value=\"checkedState\"\n :disabled=\"isDisabled\"\n :name=\"props.name ?? groupCtx.name.value\"\n :value=\"props.value\"\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n @update:model-value=\"handleUpdate\"\n >\n <span :class=\"composeClassName(slotFns.control(), props.classNames?.control)\">\n <CheckboxIndicator :class=\"composeClassName(slotFns.indicator(), props.classNames?.indicator)\">\n <!-- Indeterminate: dash icon -->\n <svg\n v-if=\"props.isIndeterminate\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"3\"\n stroke-linecap=\"round\"\n aria-hidden=\"true\"\n >\n <line\n x1=\"5\"\n y1=\"12\"\n x2=\"19\"\n y2=\"12\"\n />\n </svg>\n <!-- Checked: check icon -->\n <svg\n v-else\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"3\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n >\n <polyline points=\"20 6 9 17 4 12\" />\n </svg>\n </CheckboxIndicator>\n </span>\n <span :class=\"composeClassName(slotFns.content(), props.classNames?.content)\">\n <slot />\n </span>\n </CheckboxRoot>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUA,MAAM,QAAQ;EA0Bd,MAAM,OAAO;EAIb,MAAM,QAAQ,UAAS;EAGvB,MAAM,WAAW,uBAAuB;GACtC,SAAS,IAAI,UAAU;GACvB,UAAU,IAAI,MAAM;GACpB,gBAAgB,IAAI,EAAE,CAAC;GACvB,mBAAmB;GACnB,MAAM,IAAI,KAAA,EAAU;GACrB,CAAA;EAGD,MAAM,aAAa,eAAe,SAAS,SAAS,SAAS,MAAM,SAAQ;EAG3E,MAAM,eAAe,eAAe,MAAM,WAAW,SAAS,QAAQ,MAAK;EAG3E,MAAM,YAAY,eAAe,MAAM,UAAU,KAAA,EAAS;EAI1D,MAAM,eAAe,eAA0C;AAC7D,OAAI,MAAM,gBAAiB,QAAO;AAClC,OAAI,UAAU,MACZ,QAAO,SAAS,eAAe,MAAM,SAAS,MAAM,MAAM;AAE5D,UAAO,MAAM,cAAc;IAC5B;EAGD,SAAS,aAAa,KAAgC;AACpD,OAAI,UAAU,MACZ,UAAS,YAAY,MAAM,MAAM;YAE7B,QAAQ,gBACV,MAAK,qBAAqB,IAAG;;EAKnC,MAAM,UAAU,eACd,iBAAiB,EAAE,SAAS,aAAa,OAAO,CAAA,CAClD;;uBASE,YAoDe,MAAA,aAAA,EApDf,WACU,MAmDK,MAnDA,EAAA;IACZ,eAAa,aAAA;IACb,UAAU,WAAA;IACV,MAAM,MAAM,QAAQ,MAAA,SAAQ,CAAC,KAAK;IAClC,OAAO,MAAM;IACb,OAAO,MAAA,iBAAgB,CAAC,QAAA,MAAQ,MAAI,EAAI,MAAM,OAAO,MAAM,YAAY,KAAI;IAC3E,uBAAoB;;2BAyCd,CAvCP,mBAuCO,QAAA,EAvCA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,SAAO,EAAI,MAAM,YAAY,QAAO,CAAA,EAAA,EAAA,CACzE,YAqCoB,MAAA,kBAAA,EAAA,EArCA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,WAAS,EAAI,MAAM,YAAY,UAAS,CAAA,EAAA,EAAA;4BAoBpF,CAjBE,MAAM,mBAAA,WAAA,EADd,mBAkBM,OAlBN,YAkBM,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CANJ,mBAKE,QAAA;MAJA,IAAG;MACH,IAAG;MACH,IAAG;MACH,IAAG;uCAIP,mBAcM,OAdN,YAcM,CAAA,GAAA,OAAA,OAAA,OAAA,KAAA,CADJ,mBAAoC,YAAA,EAA1B,QAAO,kBAAgB,EAAA,MAAA,GAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;2BAIvC,mBAEO,QAAA,EAFA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,SAAO,EAAI,MAAM,YAAY,QAAO,CAAA,EAAA,EAAA,CACzE,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,EAAA,CAAA,CAAA"}
@@ -18,7 +18,13 @@ var Chip_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineCom
18
18
  default: false
19
19
  },
20
20
  closeAriaLabel: { default: "Remove" },
21
- class: {},
21
+ class: { type: [
22
+ String,
23
+ Boolean,
24
+ null,
25
+ Object,
26
+ Array
27
+ ] },
22
28
  classNames: {}
23
29
  },
24
30
  emits: ["close"],
@@ -1 +1 @@
1
- {"version":3,"file":"Chip.vue_vue_type_script_setup_true_lang.js","names":["$slots"],"sources":["../../../src/components/chip/Chip.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from \"vue\";\nimport { chipVariants, type ChipVariants } from \"@auronui/styles\";\nimport { composeClassName , type ClassValue} from \"../../utils/composeClassName\";\n\nconst props = withDefaults(\n defineProps<{\n color?: ChipVariants[\"color\"];\n size?: ChipVariants[\"size\"];\n variant?: ChipVariants[\"variant\"];\n /** Show a colored dot indicator before the label */\n dot?: boolean;\n /** Render a built-in close button that emits `close` */\n isClosable?: boolean;\n /** Aria-label for the close button */\n closeAriaLabel?: string;\n class?: ClassValue;\n /** Override classes for named slots */\n classNames?: Partial<{\n base: ClassValue;\n dot: ClassValue;\n startContent: ClassValue;\n label: ClassValue;\n endContent: ClassValue;\n closeButton: ClassValue;\n }>;\n }>(),\n {\n color: \"default\",\n variant: \"solid\",\n dot: false,\n isClosable: false,\n closeAriaLabel: \"Remove\",\n }\n);\n\nconst emit = defineEmits<{\n (e: \"close\"): void;\n}>();\n\nconst slotFns = computed(() =>\n chipVariants({\n color: props.color,\n size: props.size,\n variant: props.variant,\n })\n);\n</script>\n\n<template>\n <span :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\">\n <span\n v-if=\"dot\"\n :class=\"composeClassName(slotFns.dot(), props.classNames?.dot)\"\n aria-hidden=\"true\"\n />\n <span\n v-if=\"$slots.startContent\"\n :class=\"composeClassName(slotFns.startContent(), props.classNames?.startContent)\"\n aria-hidden=\"true\"\n >\n <slot name=\"startContent\" />\n </span>\n\n <span :class=\"composeClassName(slotFns.label(), props.classNames?.label)\">\n <slot />\n </span>\n\n <span\n v-if=\"$slots.endContent && !isClosable\"\n :class=\"composeClassName(slotFns.endContent(), props.classNames?.endContent)\"\n aria-hidden=\"true\"\n >\n <slot name=\"endContent\" />\n </span>\n\n <button\n v-if=\"isClosable\"\n type=\"button\"\n :class=\"composeClassName(slotFns.closeButton(), props.classNames?.closeButton)\"\n :aria-label=\"closeAriaLabel\"\n @click=\"emit('close')\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2.5\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n focusable=\"false\"\n >\n <line\n x1=\"18\"\n y1=\"6\"\n x2=\"6\"\n y2=\"18\"\n />\n <line\n x1=\"6\"\n y1=\"6\"\n x2=\"18\"\n y2=\"18\"\n />\n </svg>\n </button>\n </span>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;EAKA,MAAM,QAAQ;EA+Bd,MAAM,OAAO;EAIb,MAAM,UAAU,eACd,aAAa;GACX,OAAO,MAAM;GACb,MAAM,MAAM;GACZ,SAAS,MAAM;GAChB,CAAA,CACF;;uBAIC,mBA0DO,QAAA,EA1DA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,MAAI,EAAI,MAAM,OAAO,MAAM,YAAY,KAAI,CAAA,EAAA,EAAA;IAExE,QAAA,OAAA,WAAA,EADR,mBAIE,QAAA;;KAFC,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,KAAG,EAAI,MAAM,YAAY,IAAG,CAAA;KAC7D,eAAY;;IAGNA,KAAAA,OAAO,gBAAA,WAAA,EADf,mBAMO,QAAA;;KAJJ,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,cAAY,EAAI,MAAM,YAAY,aAAY,CAAA;KAC/E,eAAY;QAEZ,WAA4B,KAAA,QAAA,eAAA,CAAA,EAAA,EAAA,IAAA,mBAAA,IAAA,KAAA;IAG9B,mBAEO,QAAA,EAFA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,OAAK,EAAI,MAAM,YAAY,MAAK,CAAA,EAAA,EAAA,CACrE,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,EAAA;IAIFA,KAAAA,OAAO,cAAU,CAAK,QAAA,cAAA,WAAA,EAD9B,mBAMO,QAAA;;KAJJ,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,YAAU,EAAI,MAAM,YAAY,WAAU,CAAA;KAC3E,eAAY;QAEZ,WAA0B,KAAA,QAAA,aAAA,CAAA,EAAA,EAAA,IAAA,mBAAA,IAAA,KAAA;IAIpB,QAAA,cAAA,WAAA,EADR,mBA+BS,UAAA;;KA7BP,MAAK;KACJ,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,aAAW,EAAI,MAAM,YAAY,YAAW,CAAA;KAC5E,cAAY,QAAA;KACZ,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,KAAI,QAAA;sCAEZ,mBAuBM,OAAA;KAtBJ,OAAM;KACN,SAAQ;KACR,MAAK;KACL,QAAO;KACP,gBAAa;KACb,kBAAe;KACf,mBAAgB;KAChB,eAAY;KACZ,WAAU;QAEV,mBAKE,QAAA;KAJA,IAAG;KACH,IAAG;KACH,IAAG;KACH,IAAG;QAEL,mBAKE,QAAA;KAJA,IAAG;KACH,IAAG;KACH,IAAG;KACH,IAAG"}
1
+ {"version":3,"file":"Chip.vue_vue_type_script_setup_true_lang.js","names":["$slots"],"sources":["../../../src/components/chip/Chip.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed } from \"vue\";\nimport { chipVariants, type ChipVariants } from \"@auronui/styles\";\nimport { composeClassName , type ClassValue} from \"../../utils/composeClassName\";\n\nconst props = withDefaults(\n defineProps<{\n color?: ChipVariants[\"color\"];\n size?: ChipVariants[\"size\"];\n variant?: ChipVariants[\"variant\"];\n /** Show a colored dot indicator before the label */\n dot?: boolean;\n /** Render a built-in close button that emits `close` */\n isClosable?: boolean;\n /** Aria-label for the close button */\n closeAriaLabel?: string;\n class?: ClassValue;\n /** Override classes for named slots */\n classNames?: Partial<{\n base: ClassValue;\n dot: ClassValue;\n startContent: ClassValue;\n label: ClassValue;\n endContent: ClassValue;\n closeButton: ClassValue;\n }>;\n }>(),\n {\n color: \"default\",\n variant: \"solid\",\n dot: false,\n isClosable: false,\n closeAriaLabel: \"Remove\",\n }\n);\n\nconst emit = defineEmits<{\n (e: \"close\"): void;\n}>();\n\nconst slotFns = computed(() =>\n chipVariants({\n color: props.color,\n size: props.size,\n variant: props.variant,\n })\n);\n</script>\n\n<template>\n <span :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\">\n <span\n v-if=\"dot\"\n :class=\"composeClassName(slotFns.dot(), props.classNames?.dot)\"\n aria-hidden=\"true\"\n />\n <span\n v-if=\"$slots.startContent\"\n :class=\"composeClassName(slotFns.startContent(), props.classNames?.startContent)\"\n aria-hidden=\"true\"\n >\n <slot name=\"startContent\" />\n </span>\n\n <span :class=\"composeClassName(slotFns.label(), props.classNames?.label)\">\n <slot />\n </span>\n\n <span\n v-if=\"$slots.endContent && !isClosable\"\n :class=\"composeClassName(slotFns.endContent(), props.classNames?.endContent)\"\n aria-hidden=\"true\"\n >\n <slot name=\"endContent\" />\n </span>\n\n <button\n v-if=\"isClosable\"\n type=\"button\"\n :class=\"composeClassName(slotFns.closeButton(), props.classNames?.closeButton)\"\n :aria-label=\"closeAriaLabel\"\n @click=\"emit('close')\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"2.5\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n aria-hidden=\"true\"\n focusable=\"false\"\n >\n <line\n x1=\"18\"\n y1=\"6\"\n x2=\"6\"\n y2=\"18\"\n />\n <line\n x1=\"6\"\n y1=\"6\"\n x2=\"18\"\n y2=\"18\"\n />\n </svg>\n </button>\n </span>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKA,MAAM,QAAQ;EA+Bd,MAAM,OAAO;EAIb,MAAM,UAAU,eACd,aAAa;GACX,OAAO,MAAM;GACb,MAAM,MAAM;GACZ,SAAS,MAAM;GAChB,CAAA,CACF;;uBAIC,mBA0DO,QAAA,EA1DA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,MAAI,EAAI,MAAM,OAAO,MAAM,YAAY,KAAI,CAAA,EAAA,EAAA;IAExE,QAAA,OAAA,WAAA,EADR,mBAIE,QAAA;;KAFC,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,KAAG,EAAI,MAAM,YAAY,IAAG,CAAA;KAC7D,eAAY;;IAGNA,KAAAA,OAAO,gBAAA,WAAA,EADf,mBAMO,QAAA;;KAJJ,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,cAAY,EAAI,MAAM,YAAY,aAAY,CAAA;KAC/E,eAAY;QAEZ,WAA4B,KAAA,QAAA,eAAA,CAAA,EAAA,EAAA,IAAA,mBAAA,IAAA,KAAA;IAG9B,mBAEO,QAAA,EAFA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,OAAK,EAAI,MAAM,YAAY,MAAK,CAAA,EAAA,EAAA,CACrE,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,EAAA;IAIFA,KAAAA,OAAO,cAAU,CAAK,QAAA,cAAA,WAAA,EAD9B,mBAMO,QAAA;;KAJJ,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,YAAU,EAAI,MAAM,YAAY,WAAU,CAAA;KAC3E,eAAY;QAEZ,WAA0B,KAAA,QAAA,aAAA,CAAA,EAAA,EAAA,IAAA,mBAAA,IAAA,KAAA;IAIpB,QAAA,cAAA,WAAA,EADR,mBA+BS,UAAA;;KA7BP,MAAK;KACJ,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,aAAW,EAAI,MAAM,YAAY,YAAW,CAAA;KAC5E,cAAY,QAAA;KACZ,SAAK,OAAA,OAAA,OAAA,MAAA,WAAE,KAAI,QAAA;sCAEZ,mBAuBM,OAAA;KAtBJ,OAAM;KACN,SAAQ;KACR,MAAK;KACL,QAAO;KACP,gBAAa;KACb,kBAAe;KACf,mBAAgB;KAChB,eAAY;KACZ,WAAU;QAEV,mBAKE,QAAA;KAJA,IAAG;KACH,IAAG;KACH,IAAG;KACH,IAAG;QAEL,mBAKE,QAAA;KAJA,IAAG;KACH,IAAG;KACH,IAAG;KACH,IAAG"}
@@ -20,7 +20,13 @@ var Collapsible_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ de
20
20
  type: Boolean,
21
21
  default: false
22
22
  },
23
- class: {},
23
+ class: { type: [
24
+ String,
25
+ Boolean,
26
+ null,
27
+ Object,
28
+ Array
29
+ ] },
24
30
  classNames: {}
25
31
  },
26
32
  emits: ["update:open"],
@@ -1 +1 @@
1
- {"version":3,"file":"Collapsible.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/collapsible/Collapsible.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, onMounted, onBeforeUnmount, ref, useId, watch } from 'vue'\nimport { CollapsibleRoot } from 'reka-ui'\nimport { collapsibleVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { useCollapsibleProvide } from './collapsible.context'\nimport { injectCollapsibleGroup } from './collapsible-group.context'\n\n// NOTE: `open` is typed as `boolean | null` (not boolean) to avoid Vue's boolean\n// prop casting: absent boolean props are cast to `false`, making it impossible to\n// distinguish \"not provided\" from \"explicitly false\". Using null as the\n// \"not controlled\" sentinel preserves that distinction at runtime.\nconst props = withDefaults(defineProps<{\n open?: boolean | null\n defaultOpen?: boolean\n disabled?: boolean\n class?: ClassValue\n /** Per-slot class overrides */\n classNames?: Partial<{\n base: ClassValue\n }>\n}>(), {\n open: null,\n defaultOpen: false,\n disabled: false,\n})\n\nconst emit = defineEmits<{\n 'update:open': [value: boolean]\n}>()\n\n// Check if we're inside a CollapsibleGroup — if so, we need controlled mode so\n// the group can externally close this Collapsible by setting internalOpen.value.\nconst group = injectCollapsibleGroup()\nconst id = useId()\n\n// Controlled mode when: (a) parent provides v-model:open, OR (b) inside a group.\n// In both cases, internalOpen drives Reka's open prop.\nconst isControlled = computed(() => props.open !== null || group !== null)\n\n// Mirror of the open state — updated when Reka fires @update:open.\n// Initialized from: controlled `open` prop if set, else `defaultOpen`.\nconst internalOpen = ref<boolean>(\n props.open !== null ? (props.open as boolean) : props.defaultOpen\n)\n\n// Sync external open -> internal (v-model controlled mode)\nwatch(() => props.open, (v) => {\n if (v !== null && typeof v === 'boolean' && v !== internalOpen.value) {\n internalOpen.value = v\n }\n})\n\nfunction onUpdateOpen(v: boolean) {\n if (internalOpen.value === v) return\n internalOpen.value = v\n emit('update:open', v)\n // Notify group for single-open enforcement\n if (v && group) group.notifyOpen(id)\n}\n\nconst slotFns = computed(() => collapsibleVariants({}))\n\nuseCollapsibleProvide({ slotFns, isOpen: internalOpen })\n\nonMounted(() => {\n if (group) group.register({ id, open: internalOpen })\n})\n\nonBeforeUnmount(() => {\n if (group) group.unregister(id)\n})\n</script>\n\n<template>\n <CollapsibleRoot\n :open=\"isControlled ? internalOpen : undefined\"\n :default-open=\"!isControlled ? props.defaultOpen : undefined\"\n :disabled=\"props.disabled\"\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n @update:open=\"onUpdateOpen\"\n >\n <slot />\n </CollapsibleRoot>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;EAYA,MAAM,QAAQ;EAed,MAAM,OAAO;EAMb,MAAM,QAAQ,wBAAuB;EACrC,MAAM,KAAK,OAAM;EAIjB,MAAM,eAAe,eAAe,MAAM,SAAS,QAAQ,UAAU,KAAI;EAIzE,MAAM,eAAe,IACnB,MAAM,SAAS,OAAQ,MAAM,OAAmB,MAAM,YACxD;AAGA,cAAY,MAAM,OAAO,MAAM;AAC7B,OAAI,MAAM,QAAQ,OAAO,MAAM,aAAa,MAAM,aAAa,MAC7D,cAAa,QAAQ;IAExB;EAED,SAAS,aAAa,GAAY;AAChC,OAAI,aAAa,UAAU,EAAG;AAC9B,gBAAa,QAAQ;AACrB,QAAK,eAAe,EAAC;AAErB,OAAI,KAAK,MAAO,OAAM,WAAW,GAAE;;EAGrC,MAAM,UAAU,eAAe,oBAAoB,EAAE,CAAC,CAAA;AAEtD,wBAAsB;GAAE;GAAS,QAAQ;GAAc,CAAA;AAEvD,kBAAgB;AACd,OAAI,MAAO,OAAM,SAAS;IAAE;IAAI,MAAM;IAAc,CAAA;IACrD;AAED,wBAAsB;AACpB,OAAI,MAAO,OAAM,WAAW,GAAE;IAC/B;;uBAIC,YAQkB,MAAA,gBAAA,EAAA;IAPf,MAAM,aAAA,QAAe,aAAA,QAAe,KAAA;IACpC,gBAAY,CAAG,aAAA,QAAe,MAAM,cAAc,KAAA;IAClD,UAAU,MAAM;IAChB,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,MAAI,EAAI,MAAM,OAAO,MAAM,YAAY,KAAI,CAAA;IAC3E,iBAAa;;2BAEN,CAAR,WAAQ,KAAA,QAAA,UAAA,CAAA,CAAA"}
1
+ {"version":3,"file":"Collapsible.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/collapsible/Collapsible.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, onMounted, onBeforeUnmount, ref, useId, watch } from 'vue'\nimport { CollapsibleRoot } from 'reka-ui'\nimport { collapsibleVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport { useCollapsibleProvide } from './collapsible.context'\nimport { injectCollapsibleGroup } from './collapsible-group.context'\n\n// NOTE: `open` is typed as `boolean | null` (not boolean) to avoid Vue's boolean\n// prop casting: absent boolean props are cast to `false`, making it impossible to\n// distinguish \"not provided\" from \"explicitly false\". Using null as the\n// \"not controlled\" sentinel preserves that distinction at runtime.\nconst props = withDefaults(defineProps<{\n open?: boolean | null\n defaultOpen?: boolean\n disabled?: boolean\n class?: ClassValue\n /** Per-slot class overrides */\n classNames?: Partial<{\n base: ClassValue\n }>\n}>(), {\n open: null,\n defaultOpen: false,\n disabled: false,\n})\n\nconst emit = defineEmits<{\n 'update:open': [value: boolean]\n}>()\n\n// Check if we're inside a CollapsibleGroup — if so, we need controlled mode so\n// the group can externally close this Collapsible by setting internalOpen.value.\nconst group = injectCollapsibleGroup()\nconst id = useId()\n\n// Controlled mode when: (a) parent provides v-model:open, OR (b) inside a group.\n// In both cases, internalOpen drives Reka's open prop.\nconst isControlled = computed(() => props.open !== null || group !== null)\n\n// Mirror of the open state — updated when Reka fires @update:open.\n// Initialized from: controlled `open` prop if set, else `defaultOpen`.\nconst internalOpen = ref<boolean>(\n props.open !== null ? (props.open as boolean) : props.defaultOpen\n)\n\n// Sync external open -> internal (v-model controlled mode)\nwatch(() => props.open, (v) => {\n if (v !== null && typeof v === 'boolean' && v !== internalOpen.value) {\n internalOpen.value = v\n }\n})\n\nfunction onUpdateOpen(v: boolean) {\n if (internalOpen.value === v) return\n internalOpen.value = v\n emit('update:open', v)\n // Notify group for single-open enforcement\n if (v && group) group.notifyOpen(id)\n}\n\nconst slotFns = computed(() => collapsibleVariants({}))\n\nuseCollapsibleProvide({ slotFns, isOpen: internalOpen })\n\nonMounted(() => {\n if (group) group.register({ id, open: internalOpen })\n})\n\nonBeforeUnmount(() => {\n if (group) group.unregister(id)\n})\n</script>\n\n<template>\n <CollapsibleRoot\n :open=\"isControlled ? internalOpen : undefined\"\n :default-open=\"!isControlled ? props.defaultOpen : undefined\"\n :disabled=\"props.disabled\"\n :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\"\n @update:open=\"onUpdateOpen\"\n >\n <slot />\n </CollapsibleRoot>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYA,MAAM,QAAQ;EAed,MAAM,OAAO;EAMb,MAAM,QAAQ,wBAAuB;EACrC,MAAM,KAAK,OAAM;EAIjB,MAAM,eAAe,eAAe,MAAM,SAAS,QAAQ,UAAU,KAAI;EAIzE,MAAM,eAAe,IACnB,MAAM,SAAS,OAAQ,MAAM,OAAmB,MAAM,YACxD;AAGA,cAAY,MAAM,OAAO,MAAM;AAC7B,OAAI,MAAM,QAAQ,OAAO,MAAM,aAAa,MAAM,aAAa,MAC7D,cAAa,QAAQ;IAExB;EAED,SAAS,aAAa,GAAY;AAChC,OAAI,aAAa,UAAU,EAAG;AAC9B,gBAAa,QAAQ;AACrB,QAAK,eAAe,EAAC;AAErB,OAAI,KAAK,MAAO,OAAM,WAAW,GAAE;;EAGrC,MAAM,UAAU,eAAe,oBAAoB,EAAE,CAAC,CAAA;AAEtD,wBAAsB;GAAE;GAAS,QAAQ;GAAc,CAAA;AAEvD,kBAAgB;AACd,OAAI,MAAO,OAAM,SAAS;IAAE;IAAI,MAAM;IAAc,CAAA;IACrD;AAED,wBAAsB;AACpB,OAAI,MAAO,OAAM,WAAW,GAAE;IAC/B;;uBAIC,YAQkB,MAAA,gBAAA,EAAA;IAPf,MAAM,aAAA,QAAe,aAAA,QAAe,KAAA;IACpC,gBAAY,CAAG,aAAA,QAAe,MAAM,cAAc,KAAA;IAClD,UAAU,MAAM;IAChB,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,MAAI,EAAI,MAAM,OAAO,MAAM,YAAY,KAAI,CAAA;IAC3E,iBAAa;;2BAEN,CAAR,WAAQ,KAAA,QAAA,UAAA,CAAA,CAAA"}
@@ -8,7 +8,13 @@ import { CollapsibleContent } from "reka-ui";
8
8
  var CollapsibleContent_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
9
9
  __name: "CollapsibleContent",
10
10
  props: {
11
- class: {},
11
+ class: { type: [
12
+ String,
13
+ Boolean,
14
+ null,
15
+ Object,
16
+ Array
17
+ ] },
12
18
  classNames: {}
13
19
  },
14
20
  setup(__props) {
@@ -1 +1 @@
1
- {"version":3,"file":"CollapsibleContent.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/collapsible/CollapsibleContent.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { CollapsibleContent } from 'reka-ui'\nimport { useCollapsibleInject } from './collapsible.context'\nimport { motion, AnimatePresence } from '../../utils/motion'\nimport { composeClassName, type ClassValue } from '../../utils/composeClassName'\n\nconst props = defineProps<{\n /** Override the default class for the root element. */\n class?: ClassValue\n /** Override classes for individual slots. */\n classNames?: Partial<{\n body: ClassValue\n bodyInner: ClassValue\n }>\n}>()\nconst ctx = useCollapsibleInject()\n</script>\n\n<template>\n <CollapsibleContent\n :force-mount=\"true\"\n :class=\"props.class || undefined\"\n >\n <AnimatePresence>\n <motion.div\n v-if=\"ctx.isOpen.value\"\n key=\"panel\"\n :initial=\"{ height: 0, opacity: 0 }\"\n :animate=\"{ height: 'auto', opacity: 1 }\"\n :exit=\"{ height: 0, opacity: 0 }\"\n :transition=\"{ duration: 0.2, ease: 'easeOut' }\"\n style=\"overflow: hidden;\"\n :class=\"composeClassName(ctx.slotFns.value.body(), props.classNames?.body)\"\n >\n <div :class=\"composeClassName(ctx.slotFns.value.bodyInner(), props.classNames?.bodyInner)\">\n <slot />\n </div>\n </motion.div>\n </AnimatePresence>\n </CollapsibleContent>\n</template>\n"],"mappings":";;;;;;;;;;;;;;EAMA,MAAM,QAAQ;EASd,MAAM,MAAM,sBAAqB;;uBAI/B,YAoBqB,MAAA,mBAAA,EAAA;IAnBlB,eAAa;IACb,OAAK,eAAE,MAAM,SAAS,KAAA,EAAS;;2BAiBd,CAflB,YAekB,MAAA,wBAAA,EAAA,MAAA;4BADH,CAZL,MAAA,IAAG,CAAC,OAAO,SAAA,WAAA,EADnB,YAaa,MAAA,OAAA,CAAA,KAAA;MAXX,KAAI;MACH,SAAS;OAAA,QAAA;OAAA,SAAA;OAAyB;MAClC,SAAS;OAAA,QAAA;OAAA,SAAA;OAA8B;MACvC,MAAM;OAAA,QAAA;OAAA,SAAA;OAAyB;MAC/B,YAAY;OAAA,UAAA;OAAA,MAAA;OAAkC;MAC/C,OAAA,EAAA,YAAA,UAAyB;MACxB,OAAK,eAAE,MAAA,iBAAgB,CAAC,MAAA,IAAG,CAAC,QAAQ,MAAM,MAAI,EAAI,MAAM,YAAY,KAAI,CAAA;;6BAInE,CAFN,mBAEM,OAAA,EAFA,OAAK,eAAE,MAAA,iBAAgB,CAAC,MAAA,IAAG,CAAC,QAAQ,MAAM,WAAS,EAAI,MAAM,YAAY,UAAS,CAAA,EAAA,EAAA,CACtF,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,EAAA,CAAA,CAAA"}
1
+ {"version":3,"file":"CollapsibleContent.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/collapsible/CollapsibleContent.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { CollapsibleContent } from 'reka-ui'\nimport { useCollapsibleInject } from './collapsible.context'\nimport { motion, AnimatePresence } from '../../utils/motion'\nimport { composeClassName, type ClassValue } from '../../utils/composeClassName'\n\nconst props = defineProps<{\n /** Override the default class for the root element. */\n class?: ClassValue\n /** Override classes for individual slots. */\n classNames?: Partial<{\n body: ClassValue\n bodyInner: ClassValue\n }>\n}>()\nconst ctx = useCollapsibleInject()\n</script>\n\n<template>\n <CollapsibleContent\n :force-mount=\"true\"\n :class=\"props.class || undefined\"\n >\n <AnimatePresence>\n <motion.div\n v-if=\"ctx.isOpen.value\"\n key=\"panel\"\n :initial=\"{ height: 0, opacity: 0 }\"\n :animate=\"{ height: 'auto', opacity: 1 }\"\n :exit=\"{ height: 0, opacity: 0 }\"\n :transition=\"{ duration: 0.2, ease: 'easeOut' }\"\n style=\"overflow: hidden;\"\n :class=\"composeClassName(ctx.slotFns.value.body(), props.classNames?.body)\"\n >\n <div :class=\"composeClassName(ctx.slotFns.value.bodyInner(), props.classNames?.bodyInner)\">\n <slot />\n </div>\n </motion.div>\n </AnimatePresence>\n </CollapsibleContent>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;EAMA,MAAM,QAAQ;EASd,MAAM,MAAM,sBAAqB;;uBAI/B,YAoBqB,MAAA,mBAAA,EAAA;IAnBlB,eAAa;IACb,OAAK,eAAE,MAAM,SAAS,KAAA,EAAS;;2BAiBd,CAflB,YAekB,MAAA,wBAAA,EAAA,MAAA;4BADH,CAZL,MAAA,IAAG,CAAC,OAAO,SAAA,WAAA,EADnB,YAaa,MAAA,OAAA,CAAA,KAAA;MAXX,KAAI;MACH,SAAS;OAAA,QAAA;OAAA,SAAA;OAAyB;MAClC,SAAS;OAAA,QAAA;OAAA,SAAA;OAA8B;MACvC,MAAM;OAAA,QAAA;OAAA,SAAA;OAAyB;MAC/B,YAAY;OAAA,UAAA;OAAA,MAAA;OAAkC;MAC/C,OAAA,EAAA,YAAA,UAAyB;MACxB,OAAK,eAAE,MAAA,iBAAgB,CAAC,MAAA,IAAG,CAAC,QAAQ,MAAM,MAAI,EAAI,MAAM,YAAY,KAAI,CAAA;;6BAInE,CAFN,mBAEM,OAAA,EAFA,OAAK,eAAE,MAAA,iBAAgB,CAAC,MAAA,IAAG,CAAC,QAAQ,MAAM,WAAS,EAAI,MAAM,YAAY,UAAS,CAAA,EAAA,EAAA,CACtF,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,EAAA,CAAA,CAAA"}
@@ -10,7 +10,13 @@ var CollapsibleGroup_vue_vue_type_script_setup_true_lang_default = /* @__PURE__
10
10
  type: Boolean,
11
11
  default: false
12
12
  },
13
- class: {},
13
+ class: { type: [
14
+ String,
15
+ Boolean,
16
+ null,
17
+ Object,
18
+ Array
19
+ ] },
14
20
  classNames: {}
15
21
  },
16
22
  setup(__props) {
@@ -1 +1 @@
1
- {"version":3,"file":"CollapsibleGroup.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/collapsible/CollapsibleGroup.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRef } from 'vue'\nimport { collapsibleGroupVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport {\n provideCollapsibleGroup,\n type CollapsibleGroupRegistryEntry,\n} from './collapsible-group.context'\n\nconst props = withDefaults(defineProps<{\n // single-open = true means only one child open at a time\n singleOpen?: boolean\n class?: ClassValue\n /** Override classes for individual slots */\n classNames?: Partial<{\n base: ClassValue\n }>\n}>(), {\n singleOpen: false,\n})\n\nconst registry = new Map<string, CollapsibleGroupRegistryEntry>()\n\nprovideCollapsibleGroup({\n allowMultiple: toRef(() => !props.singleOpen),\n register(entry) {\n registry.set(entry.id, entry)\n },\n unregister(id) {\n registry.delete(id)\n },\n notifyOpen(openingId: string) {\n if (props.singleOpen) {\n for (const [id, entry] of registry) {\n if (id !== openingId && entry.open.value) {\n entry.open.value = false\n }\n }\n }\n },\n})\n\nconst slotFns = computed(() => collapsibleGroupVariants({}))\n</script>\n\n<template>\n <div :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\">\n <slot />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;EASA,MAAM,QAAQ;EAYd,MAAM,2BAAW,IAAI,KAA2C;AAEhE,0BAAwB;GACtB,eAAe,YAAY,CAAC,MAAM,WAAW;GAC7C,SAAS,OAAO;AACd,aAAS,IAAI,MAAM,IAAI,MAAK;;GAE9B,WAAW,IAAI;AACb,aAAS,OAAO,GAAE;;GAEpB,WAAW,WAAmB;AAC5B,QAAI,MAAM;UACH,MAAM,CAAC,IAAI,UAAU,SACxB,KAAI,OAAO,aAAa,MAAM,KAAK,MACjC,OAAM,KAAK,QAAQ;;;GAK5B,CAAA;EAED,MAAM,UAAU,eAAe,yBAAyB,EAAE,CAAC,CAAA;;uBAIzD,mBAEM,OAAA,EAFA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,MAAI,EAAI,MAAM,OAAO,MAAM,YAAY,KAAI,CAAA,EAAA,EAAA,CAC/E,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,EAAA"}
1
+ {"version":3,"file":"CollapsibleGroup.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/collapsible/CollapsibleGroup.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, toRef } from 'vue'\nimport { collapsibleGroupVariants } from '@auronui/styles'\nimport { composeClassName , type ClassValue} from '../../utils/composeClassName'\nimport {\n provideCollapsibleGroup,\n type CollapsibleGroupRegistryEntry,\n} from './collapsible-group.context'\n\nconst props = withDefaults(defineProps<{\n // single-open = true means only one child open at a time\n singleOpen?: boolean\n class?: ClassValue\n /** Override classes for individual slots */\n classNames?: Partial<{\n base: ClassValue\n }>\n}>(), {\n singleOpen: false,\n})\n\nconst registry = new Map<string, CollapsibleGroupRegistryEntry>()\n\nprovideCollapsibleGroup({\n allowMultiple: toRef(() => !props.singleOpen),\n register(entry) {\n registry.set(entry.id, entry)\n },\n unregister(id) {\n registry.delete(id)\n },\n notifyOpen(openingId: string) {\n if (props.singleOpen) {\n for (const [id, entry] of registry) {\n if (id !== openingId && entry.open.value) {\n entry.open.value = false\n }\n }\n }\n },\n})\n\nconst slotFns = computed(() => collapsibleGroupVariants({}))\n</script>\n\n<template>\n <div :class=\"composeClassName(slotFns.base(), props.class, props.classNames?.base)\">\n <slot />\n </div>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;EASA,MAAM,QAAQ;EAYd,MAAM,2BAAW,IAAI,KAA2C;AAEhE,0BAAwB;GACtB,eAAe,YAAY,CAAC,MAAM,WAAW;GAC7C,SAAS,OAAO;AACd,aAAS,IAAI,MAAM,IAAI,MAAK;;GAE9B,WAAW,IAAI;AACb,aAAS,OAAO,GAAE;;GAEpB,WAAW,WAAmB;AAC5B,QAAI,MAAM;UACH,MAAM,CAAC,IAAI,UAAU,SACxB,KAAI,OAAO,aAAa,MAAM,KAAK,MACjC,OAAM,KAAK,QAAQ;;;GAK5B,CAAA;EAED,MAAM,UAAU,eAAe,yBAAyB,EAAE,CAAC,CAAA;;uBAIzD,mBAEM,OAAA,EAFA,OAAK,eAAE,MAAA,iBAAgB,CAAC,QAAA,MAAQ,MAAI,EAAI,MAAM,OAAO,MAAM,YAAY,KAAI,CAAA,EAAA,EAAA,CAC/E,WAAQ,KAAA,QAAA,UAAA,CAAA,EAAA,EAAA"}
@@ -7,7 +7,13 @@ var _hoisted_1 = ["data-state"];
7
7
  var CollapsibleTrigger_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
8
8
  __name: "CollapsibleTrigger",
9
9
  props: {
10
- class: {},
10
+ class: { type: [
11
+ String,
12
+ Boolean,
13
+ null,
14
+ Object,
15
+ Array
16
+ ] },
11
17
  classNames: {}
12
18
  },
13
19
  setup(__props) {