@quidgest/ui 0.14.14 → 0.14.16

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 (219) hide show
  1. package/dist/ui.css +86 -45
  2. package/dist/ui.esm.js +3310 -3202
  3. package/dist/ui.js +16 -16
  4. package/dist/ui.min.css +1 -1
  5. package/dist/ui.min.js +661 -652
  6. package/dist/ui.scss +97 -55
  7. package/esm/components/QAccordion/QAccordion.d.ts.map +1 -1
  8. package/esm/components/QAccordion/QAccordion.vue.js +26 -13
  9. package/esm/components/QAccordion/index.d.ts +15 -3
  10. package/esm/components/QAccordion/index.d.ts.map +1 -1
  11. package/esm/components/QAccordion/types.d.ts +13 -3
  12. package/esm/components/QAccordion/types.d.ts.map +1 -1
  13. package/esm/components/QBadge/QBadge.d.ts +2 -1
  14. package/esm/components/QBadge/QBadge.d.ts.map +1 -1
  15. package/esm/components/QBadge/QBadge.vue.js +35 -29
  16. package/esm/components/QBadge/index.d.ts +6 -3
  17. package/esm/components/QBadge/index.d.ts.map +1 -1
  18. package/esm/components/QBadge/types.d.ts +13 -5
  19. package/esm/components/QBadge/types.d.ts.map +1 -1
  20. package/esm/components/QBadgeIndicator/QBadgeIndicator.d.ts +1 -1
  21. package/esm/components/QBadgeIndicator/QBadgeIndicator.d.ts.map +1 -1
  22. package/esm/components/QBadgeIndicator/QBadgeIndicator.vue.js +19 -14
  23. package/esm/components/QBadgeIndicator/index.d.ts +3 -3
  24. package/esm/components/QBadgeIndicator/types.d.ts +6 -4
  25. package/esm/components/QBadgeIndicator/types.d.ts.map +1 -1
  26. package/esm/components/QButton/QButton.d.ts +2 -2
  27. package/esm/components/QButton/QButton.d.ts.map +1 -1
  28. package/esm/components/QButton/QButton.vue.js +17 -15
  29. package/esm/components/QButton/index.d.ts +6 -6
  30. package/esm/components/QButton/types.d.ts +6 -7
  31. package/esm/components/QButton/types.d.ts.map +1 -1
  32. package/esm/components/QButtonGroup/QButtonGroup.d.ts.map +1 -1
  33. package/esm/components/QButtonGroup/QButtonGroup.vue.js +19 -24
  34. package/esm/components/QButtonGroup/types.d.ts +2 -5
  35. package/esm/components/QButtonGroup/types.d.ts.map +1 -1
  36. package/esm/components/QButtonToggle/QButtonToggle.d.ts.map +1 -1
  37. package/esm/components/QButtonToggle/QButtonToggle.vue.js +24 -22
  38. package/esm/components/QButtonToggle/index.d.ts +21 -3
  39. package/esm/components/QButtonToggle/index.d.ts.map +1 -1
  40. package/esm/components/QButtonToggle/types.d.ts +4 -7
  41. package/esm/components/QButtonToggle/types.d.ts.map +1 -1
  42. package/esm/components/QCard/QCard.d.ts +2 -2
  43. package/esm/components/QCard/QCard.d.ts.map +1 -1
  44. package/esm/components/QCard/QCard.vue.js +48 -46
  45. package/esm/components/QCard/index.d.ts +6 -6
  46. package/esm/components/QCard/types.d.ts +6 -7
  47. package/esm/components/QCard/types.d.ts.map +1 -1
  48. package/esm/components/QCheckbox/QCheckbox.d.ts +2 -2
  49. package/esm/components/QCheckbox/QCheckbox.d.ts.map +1 -1
  50. package/esm/components/QCheckbox/QCheckbox.vue.js +73 -78
  51. package/esm/components/QCheckbox/QCheckboxLabel.vue.js +9 -7
  52. package/esm/components/QCheckbox/index.d.ts +21 -21
  53. package/esm/components/QCheckbox/types.d.ts +10 -15
  54. package/esm/components/QCheckbox/types.d.ts.map +1 -1
  55. package/esm/components/QCollapsible/QCollapsible.d.ts +2 -2
  56. package/esm/components/QCollapsible/QCollapsible.d.ts.map +1 -1
  57. package/esm/components/QCollapsible/QCollapsible.vue.js +12 -9
  58. package/esm/components/QCollapsible/index.d.ts +33 -6
  59. package/esm/components/QCollapsible/index.d.ts.map +1 -1
  60. package/esm/components/QCollapsible/types.d.ts +15 -15
  61. package/esm/components/QCollapsible/types.d.ts.map +1 -1
  62. package/esm/components/QColorPicker/QColorPicker.d.ts.map +1 -1
  63. package/esm/components/QColorPicker/QColorPicker.vue.js +19 -19
  64. package/esm/components/QColorPicker/index.d.ts +27 -3
  65. package/esm/components/QColorPicker/index.d.ts.map +1 -1
  66. package/esm/components/QColorPicker/types.d.ts +2 -9
  67. package/esm/components/QColorPicker/types.d.ts.map +1 -1
  68. package/esm/components/QCombobox/QCombobox.d.ts +209 -75
  69. package/esm/components/QCombobox/QCombobox.d.ts.map +1 -1
  70. package/esm/components/QCombobox/QCombobox.vue.js +64 -68
  71. package/esm/components/QCombobox/index.d.ts +331 -89
  72. package/esm/components/QCombobox/index.d.ts.map +1 -1
  73. package/esm/components/QCombobox/types.d.ts +14 -51
  74. package/esm/components/QCombobox/types.d.ts.map +1 -1
  75. package/esm/components/QCombobox/types.js +3 -3
  76. package/esm/components/QDateTimePicker/QDateTimePicker.vue.js +5 -3
  77. package/esm/components/QDateTimePicker/index.d.ts +51 -3
  78. package/esm/components/QDateTimePicker/index.d.ts.map +1 -1
  79. package/esm/components/QDateTimePicker/types.d.ts +2 -31
  80. package/esm/components/QDateTimePicker/types.d.ts.map +1 -1
  81. package/esm/components/QDialog/QDialog.d.ts +1 -1
  82. package/esm/components/QDialog/QDialog.d.ts.map +1 -1
  83. package/esm/components/QDialog/QDialog.vue.js +36 -37
  84. package/esm/components/QDialog/index.d.ts +39 -6
  85. package/esm/components/QDialog/index.d.ts.map +1 -1
  86. package/esm/components/QDialog/types.d.ts +14 -21
  87. package/esm/components/QDialog/types.d.ts.map +1 -1
  88. package/esm/components/QDropdownMenu/QDropdownMenu.d.ts +1 -1
  89. package/esm/components/QDropdownMenu/QDropdownMenu.vue.js +4 -3
  90. package/esm/components/QDropdownMenu/QDropdownMenuContent.d.ts +60 -26
  91. package/esm/components/QDropdownMenu/QDropdownMenuContent.d.ts.map +1 -1
  92. package/esm/components/QDropdownMenu/QDropdownMenuContent.vue.js +68 -63
  93. package/esm/components/QDropdownMenu/index.d.ts +27 -3
  94. package/esm/components/QDropdownMenu/index.d.ts.map +1 -1
  95. package/esm/components/QDropdownMenu/types.d.ts +3 -6
  96. package/esm/components/QDropdownMenu/types.d.ts.map +1 -1
  97. package/esm/components/QField/QField.d.ts.map +1 -1
  98. package/esm/components/QField/QField.vue.js +34 -35
  99. package/esm/components/QField/types.d.ts +2 -9
  100. package/esm/components/QField/types.d.ts.map +1 -1
  101. package/esm/components/QFileUpload/QFileUpload.d.ts +1 -1
  102. package/esm/components/QFileUpload/QFileUpload.vue.js +9 -9
  103. package/esm/components/QFileUpload/index.d.ts +39 -6
  104. package/esm/components/QFileUpload/index.d.ts.map +1 -1
  105. package/esm/components/QFileUpload/types.d.ts +3 -30
  106. package/esm/components/QFileUpload/types.d.ts.map +1 -1
  107. package/esm/components/QIcon/InlineSvg.d.ts.map +1 -1
  108. package/esm/components/QIcon/InlineSvg.js +16 -16
  109. package/esm/components/QIcon/QIcon.d.ts +2 -2
  110. package/esm/components/QIcon/QIcon.d.ts.map +1 -1
  111. package/esm/components/QIcon/QIcon.vue.js +7 -5
  112. package/esm/components/QIcon/QIconFont.d.ts.map +1 -1
  113. package/esm/components/QIcon/QIconFont.vue.js +12 -16
  114. package/esm/components/QIcon/QIconImg.d.ts +2 -2
  115. package/esm/components/QIcon/QIconImg.d.ts.map +1 -1
  116. package/esm/components/QIcon/QIconImg.vue.js +8 -6
  117. package/esm/components/QIcon/QIconSvg.d.ts.map +1 -1
  118. package/esm/components/QIcon/QIconSvg.vue.js +12 -10
  119. package/esm/components/QIcon/index.d.ts +4 -4
  120. package/esm/components/QIcon/index.d.ts.map +1 -1
  121. package/esm/components/QIcon/types.d.ts +6 -8
  122. package/esm/components/QIcon/types.d.ts.map +1 -1
  123. package/esm/components/QInputGroup/QInputGroup.vue.js +21 -18
  124. package/esm/components/QInputGroup/types.d.ts +2 -23
  125. package/esm/components/QInputGroup/types.d.ts.map +1 -1
  126. package/esm/components/QLineLoader/QLineLoader.d.ts +1 -2
  127. package/esm/components/QLineLoader/QLineLoader.d.ts.map +1 -1
  128. package/esm/components/QLineLoader/QLineLoader.vue.js +10 -14
  129. package/esm/components/QLineLoader/index.d.ts +1 -1
  130. package/esm/components/QLineLoader/index.d.ts.map +1 -1
  131. package/esm/components/QLineLoader/types.d.ts +2 -6
  132. package/esm/components/QLineLoader/types.d.ts.map +1 -1
  133. package/esm/components/QList/QList.d.ts +3 -3
  134. package/esm/components/QList/QList.d.ts.map +1 -1
  135. package/esm/components/QList/QList.vue.js +30 -26
  136. package/esm/components/QList/index.d.ts +35 -11
  137. package/esm/components/QList/index.d.ts.map +1 -1
  138. package/esm/components/QList/types.d.ts +3 -6
  139. package/esm/components/QList/types.d.ts.map +1 -1
  140. package/esm/components/QOverlay/QOverlay.d.ts +1 -1
  141. package/esm/components/QOverlay/QOverlay.d.ts.map +1 -1
  142. package/esm/components/QOverlay/QOverlay.vue.js +51 -55
  143. package/esm/components/QOverlay/index.d.ts +63 -6
  144. package/esm/components/QOverlay/index.d.ts.map +1 -1
  145. package/esm/components/QOverlay/types.d.ts +2 -5
  146. package/esm/components/QOverlay/types.d.ts.map +1 -1
  147. package/esm/components/QPopover/QPopover.d.ts +1 -1
  148. package/esm/components/QPopover/QPopover.d.ts.map +1 -1
  149. package/esm/components/QPopover/QPopover.vue.js +23 -20
  150. package/esm/components/QPopover/index.d.ts +36 -6
  151. package/esm/components/QPopover/index.d.ts.map +1 -1
  152. package/esm/components/QPopover/types.d.ts +2 -1
  153. package/esm/components/QPopover/types.d.ts.map +1 -1
  154. package/esm/components/QPropertyList/QPropertyList.d.ts +2 -2
  155. package/esm/components/QPropertyList/QPropertyList.d.ts.map +1 -1
  156. package/esm/components/QPropertyList/QPropertyList.vue.js +126 -115
  157. package/esm/components/QPropertyList/QPropertyListGroup.d.ts +2 -2
  158. package/esm/components/QPropertyList/QPropertyListGroup.d.ts.map +1 -1
  159. package/esm/components/QPropertyList/QPropertyListGroup.vue.js +19 -17
  160. package/esm/components/QPropertyList/QPropertyListPanel.d.ts.map +1 -1
  161. package/esm/components/QPropertyList/QPropertyListPanel.vue.js +19 -14
  162. package/esm/components/QPropertyList/QPropertyListRow.d.ts +6 -3
  163. package/esm/components/QPropertyList/QPropertyListRow.d.ts.map +1 -1
  164. package/esm/components/QPropertyList/QPropertyListRow.vue.js +33 -23
  165. package/esm/components/QPropertyList/index.d.ts +8 -7
  166. package/esm/components/QPropertyList/index.d.ts.map +1 -1
  167. package/esm/components/QPropertyList/types.d.ts +35 -21
  168. package/esm/components/QPropertyList/types.d.ts.map +1 -1
  169. package/esm/components/QSelect/QSelect.d.ts +63 -29
  170. package/esm/components/QSelect/QSelect.d.ts.map +1 -1
  171. package/esm/components/QSelect/QSelect.vue.js +49 -48
  172. package/esm/components/QSelect/index.d.ts +104 -24
  173. package/esm/components/QSelect/index.d.ts.map +1 -1
  174. package/esm/components/QSelect/types.d.ts +10 -39
  175. package/esm/components/QSelect/types.d.ts.map +1 -1
  176. package/esm/components/QSkeletonLoader/QSkeletonLoader.d.ts.map +1 -1
  177. package/esm/components/QSkeletonLoader/QSkeletonLoader.vue.js +20 -23
  178. package/esm/components/QSkeletonLoader/types.d.ts +2 -1
  179. package/esm/components/QSkeletonLoader/types.d.ts.map +1 -1
  180. package/esm/components/QSpinnerLoader/QSpinnerLoader.d.ts.map +1 -1
  181. package/esm/components/QSpinnerLoader/QSpinnerLoader.vue.js +13 -17
  182. package/esm/components/QSpinnerLoader/types.d.ts +2 -5
  183. package/esm/components/QSpinnerLoader/types.d.ts.map +1 -1
  184. package/esm/components/QTextField/QTextField.d.ts +2 -2
  185. package/esm/components/QTextField/QTextField.d.ts.map +1 -1
  186. package/esm/components/QTextField/QTextField.vue.js +27 -30
  187. package/esm/components/QTextField/index.d.ts +40 -4
  188. package/esm/components/QTextField/index.d.ts.map +1 -1
  189. package/esm/components/QTextField/types.d.ts +2 -40
  190. package/esm/components/QTextField/types.d.ts.map +1 -1
  191. package/esm/components/QThemeProvider/QThemeProvider.d.ts.map +1 -1
  192. package/esm/components/QThemeProvider/QThemeProvider.vue.js +13 -16
  193. package/esm/components/QThemeProvider/types.d.ts +2 -1
  194. package/esm/components/QThemeProvider/types.d.ts.map +1 -1
  195. package/esm/components/QTooltip/QTooltip.d.ts +1 -1
  196. package/esm/components/QTooltip/QTooltip.vue.js +4 -4
  197. package/esm/components/QTooltip/index.d.ts +45 -6
  198. package/esm/components/QTooltip/index.d.ts.map +1 -1
  199. package/esm/components/QTooltip/types.d.ts +2 -9
  200. package/esm/components/QTooltip/types.d.ts.map +1 -1
  201. package/esm/components/__internal__/QChevron/QChevron.d.ts.map +1 -1
  202. package/esm/components/__internal__/QChevron/QChevron.vue.js +19 -11
  203. package/esm/components/__internal__/QChevron/index.d.ts +6 -2
  204. package/esm/components/__internal__/QChevron/index.d.ts.map +1 -1
  205. package/esm/components/__internal__/QChevron/types.d.ts +2 -5
  206. package/esm/components/__internal__/QChevron/types.d.ts.map +1 -1
  207. package/esm/components/__internal__/QClearButton/QClearButton.d.ts.map +1 -1
  208. package/esm/components/__internal__/QClearButton/QClearButton.vue.js +23 -18
  209. package/esm/components/__internal__/QClearButton/types.d.ts +2 -5
  210. package/esm/components/__internal__/QClearButton/types.d.ts.map +1 -1
  211. package/esm/composables/group.d.ts +88 -8
  212. package/esm/composables/group.d.ts.map +1 -1
  213. package/esm/composables/group.js +19 -22
  214. package/esm/composables/uid.d.ts +3 -2
  215. package/esm/composables/uid.d.ts.map +1 -1
  216. package/esm/composables/uid.js +5 -4
  217. package/esm/types/component.d.ts +18 -0
  218. package/esm/types/component.d.ts.map +1 -0
  219. package/package.json +11 -11
@@ -1,16 +1,96 @@
1
- import { ComputedRef, Ref } from 'vue';
2
- export interface Group {
3
- active: Ref<unknown>;
4
- multiple: ComputedRef<boolean>;
1
+ import { ComputedRef, InjectionKey, MaybeRef, Ref } from 'vue';
2
+ /** Symbol used for dependency injection of Group. */
3
+ export declare const GroupSymbol: InjectionKey<Group<unknown>>;
4
+ /**
5
+ * Props interface for creating a group component
6
+ * @template T The type of the active item(s)
7
+ */
8
+ export interface GroupProps<T> {
9
+ /**
10
+ * The currently active item(s)
11
+ * - When multiple is false: A single active item of type T
12
+ * - When multiple is true: An array of active items of type T[]
13
+ */
14
+ active: MaybeRef<T | T[]>;
15
+ /**
16
+ * Whether multiple items can be active simultaneously
17
+ * - When true: active will be treated as T[]
18
+ * - When false: active will be treated as a single value T
19
+ * @default false
20
+ */
21
+ multiple?: MaybeRef<boolean>;
5
22
  }
6
- export interface GroupProps {
7
- active?: Ref<unknown>;
8
- multiple?: Ref<boolean>;
23
+ /**
24
+ * Interface for the group state
25
+ * @template T The type of the active item(s)
26
+ */
27
+ export interface Group<T> {
28
+ /**
29
+ * Reactive reference to the currently active item(s)
30
+ * - When multiple is false: A single active item of type T or undefined
31
+ * - When multiple is true: An array of active items of type T[] or undefined
32
+ */
33
+ active: Ref<T | T[] | undefined>;
34
+ /**
35
+ * Computed boolean indicating if multiple selection is enabled
36
+ */
37
+ multiple: ComputedRef<boolean>;
9
38
  }
39
+ /**
40
+ * Interface for the values provided to child components via provide/inject
41
+ */
10
42
  export interface GroupProvide {
43
+ /**
44
+ * Toggle the active state of the current item
45
+ */
11
46
  toggle: () => void;
47
+ /**
48
+ * Computed boolean indicating if the current item is active
49
+ */
12
50
  isActive: ComputedRef<boolean>;
13
51
  }
14
- export declare function useGroup(options: GroupProps): Group;
52
+ /**
53
+ * A composable function that manages a group state with single or multiple selection capabilities.
54
+ *
55
+ * @template T - The type of the values managed by the group
56
+ * @param options - Configuration options for the group
57
+ *
58
+ * @returns A group object containing:
59
+ * - active: Ref holding the currently active value(s)
60
+ * - multiple: ComputedRef indicating if multiple selections are allowed
61
+ *
62
+ * @example
63
+ * ```typescript
64
+ * const group = useGroup({
65
+ * active: ref(['item1']),
66
+ * multiple: ref(true)
67
+ * });
68
+ * ```
69
+ *
70
+ * @remarks
71
+ * The group state is automatically provided to child components using Vue's provide/inject system.
72
+ * When multiple mode changes, the active value is automatically converted between array and single value formats.
73
+ */
74
+ export declare function useGroup<T>(options: GroupProps<T>): Group<T>;
75
+ /**
76
+ * A composable function that provides group item functionality within a group context.
77
+ *
78
+ * @param itemId - The unique identifier for the group item
79
+ *
80
+ * @returns An object containing:
81
+ * - `isActive`: A computed boolean indicating if the item is currently active
82
+ * - `toggle`: A function to toggle the active state of the item
83
+ * - `undefined` if no group context is found
84
+ *
85
+ * @example
86
+ * ```ts
87
+ * const { isActive, toggle } = useGroupItem('item-1')
88
+ * ```
89
+ *
90
+ * @remarks
91
+ * - Supports both single and multiple selection modes
92
+ * - In single selection mode, activating an item deactivates others
93
+ * - In multiple selection mode, multiple items can be active simultaneously
94
+ */
15
95
  export declare function useGroupItem(itemId: string): GroupProvide | undefined;
16
96
  //# sourceMappingURL=group.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../src/composables/group.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAO3C,MAAM,WAAW,KAAK;IACrB,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IACpB,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;CAC9B;AAED,MAAM,WAAW,UAAU;IAC1B,MAAM,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IACrB,QAAQ,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;CACvB;AAED,MAAM,WAAW,YAAY;IAC5B,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;CAC9B;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,KAAK,CAoBnD;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAuBrE"}
1
+ {"version":3,"file":"group.d.ts","sourceRoot":"","sources":["../../src/composables/group.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAKnE,qDAAqD;AACrD,eAAO,MAAM,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAyB,CAAA;AAE9E;;;GAGG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC;IAC5B;;;;OAIG;IACH,MAAM,EAAE,QAAQ,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAEzB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAA;CAC5B;AAED;;;GAGG;AACH,MAAM,WAAW,KAAK,CAAC,CAAC;IACvB;;;;OAIG;IACH,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,SAAS,CAAC,CAAA;IAEhC;;OAEG;IACH,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC5B;;OAEG;IACH,MAAM,EAAE,MAAM,IAAI,CAAA;IAElB;;OAEG;IACH,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;CAC9B;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAwB5D;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAyBrE"}
@@ -1,34 +1,31 @@
1
- import { inject as c, computed as t, ref as n, watch as s, provide as f } from "vue";
2
- const i = "q-group";
3
- function p(u) {
4
- var l, v;
1
+ import { inject as c, computed as v, unref as t, ref as n, watch as f, provide as o } from "vue";
2
+ const l = Symbol.for("q-group");
3
+ function g(u) {
5
4
  const e = {
6
- active: n(((l = u.active) == null ? void 0 : l.value) ?? ((v = u.multiple) == null ? void 0 : v.value) ? [] : null),
7
- multiple: t(() => {
8
- var a;
9
- return ((a = u.multiple) == null ? void 0 : a.value) || !1;
10
- })
5
+ active: n(t(u.active) ?? t(u.multiple) ? [] : void 0),
6
+ multiple: v(() => t(u.multiple) || !1)
11
7
  };
12
- return s(
8
+ return f(
13
9
  () => e.multiple.value,
14
10
  (a) => {
15
- a && e.active.value ? e.active.value = [e.active.value] : a ? e.active.value = [] : Array.isArray(e.active.value) && e.active.value.length === 1 ? e.active.value = e.active.value[0] : e.active.value = null;
11
+ a && e.active.value ? e.active.value = [e.active.value] : a ? e.active.value = [] : Array.isArray(e.active.value) && e.active.value.length === 1 ? e.active.value = e.active.value[0] : e.active.value = void 0;
16
12
  }
17
- ), f(i, e), e;
13
+ ), o(l, e), e;
18
14
  }
19
- function g(u) {
20
- const e = c(i, void 0);
15
+ function y(u) {
16
+ const e = c(l, void 0);
21
17
  if (!e) return;
22
- const l = t(() => {
23
- var a;
24
- return Array.isArray(e.active.value) ? (a = e.active.value) == null ? void 0 : a.includes(u) : e.active.value === u;
18
+ const a = v(() => {
19
+ var i;
20
+ return Array.isArray(e.active.value) ? (i = e.active.value) == null ? void 0 : i.includes(u) : e.active.value === u;
25
21
  });
26
- return { isActive: l, toggle: () => {
27
- var a;
28
- Array.isArray(e.active.value) ? l.value ? e.active.value = (a = e.active.value) == null ? void 0 : a.filter((r) => r !== u) : e.active.value.push(u) : e.active.value = u;
22
+ return { isActive: a, toggle: () => {
23
+ var i;
24
+ Array.isArray(e.active.value) ? a.value ? e.active.value = (i = e.active.value) == null ? void 0 : i.filter((r) => r !== u) : e.active.value.push(u) : e.active.value = u;
29
25
  } };
30
26
  }
31
27
  export {
32
- p as useGroup,
33
- g as useGroupItem
28
+ l as GroupSymbol,
29
+ g as useGroup,
30
+ y as useGroupItem
34
31
  };
@@ -1,8 +1,9 @@
1
+ import { MaybeRef, Ref } from 'vue';
1
2
  /**
2
3
  * Custom hook to generate unique IDs.
3
4
  *
4
5
  * @param [componentId] - Optional component-specific ID.
5
- * @returns - A unique ID.
6
+ * @returns A unique ID as a string or a ref containing a string
6
7
  */
7
- export declare function useId(componentId?: string): string;
8
+ export declare function useId<T extends MaybeRef<string | undefined>>(componentId?: T): T extends Ref<string | undefined> ? Ref<string> : string;
8
9
  //# sourceMappingURL=uid.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"uid.d.ts","sourceRoot":"","sources":["../../src/composables/uid.ts"],"names":[],"mappings":"AAGA;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAElD"}
1
+ {"version":3,"file":"uid.d.ts","sourceRoot":"","sources":["../../src/composables/uid.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAQxC;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,CAAC,SAAS,QAAQ,CAAC,MAAM,GAAG,SAAS,CAAC,EAC3D,WAAW,CAAC,EAAE,CAAC,GACb,CAAC,SAAS,GAAG,CAAC,MAAM,GAAG,SAAS,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,MAAM,CAK1D"}
@@ -1,7 +1,8 @@
1
- let e = 0;
2
- function r(u) {
3
- return u || `uid-${++e}`;
1
+ import { unref as r } from "vue";
2
+ let o = 0;
3
+ function n(e) {
4
+ return r(e) || `uid-${++o}`;
4
5
  }
5
6
  export {
6
- r as useId
7
+ n as useId
7
8
  };
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Base type for Quidgest UI components.
3
+ *
4
+ * Vue will automatically separate these props from other attributes.
5
+ * This allows components to place id/class in specific elements
6
+ * while spreading other attrs elsewhere.
7
+ */
8
+ export type QBaseComponentProps = {
9
+ /**
10
+ * The component unique identifier.
11
+ */
12
+ id?: string;
13
+ /**
14
+ * Custom set of classes to apply to the component.
15
+ */
16
+ class?: string | unknown[];
17
+ };
18
+ //# sourceMappingURL=component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../src/types/component.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GAAG;IACjC;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAA;IAEX;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,EAAE,CAAA;CAC1B,CAAA"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@quidgest/ui",
3
3
  "description": "Quidgest's UI framework",
4
- "version": "0.14.14",
4
+ "version": "0.14.16",
5
5
  "private": false,
6
6
  "type": "module",
7
7
  "author": "Quidgest",
@@ -45,22 +45,22 @@
45
45
  "@fortawesome/fontawesome-free": "^6.7.2",
46
46
  "@rollup/plugin-node-resolve": "^16.0.0",
47
47
  "@rollup/plugin-terser": "^0.4.4",
48
- "@storybook/addon-essentials": "^8.5.3",
49
- "@storybook/addon-interactions": "^8.5.3",
50
- "@storybook/addon-links": "^8.5.3",
51
- "@storybook/blocks": "^8.5.3",
52
- "@storybook/manager-api": "^8.5.3",
53
- "@storybook/test": "^8.5.3",
54
- "@storybook/theming": "^8.5.3",
55
- "@storybook/vue3": "^8.5.3",
56
- "@storybook/vue3-vite": "^8.5.3",
48
+ "@storybook/addon-essentials": "^8.6.3",
49
+ "@storybook/addon-interactions": "^8.6.3",
50
+ "@storybook/addon-links": "^8.6.3",
51
+ "@storybook/blocks": "^8.6.3",
52
+ "@storybook/manager-api": "^8.6.3",
53
+ "@storybook/test": "^8.6.3",
54
+ "@storybook/theming": "^8.6.3",
55
+ "@storybook/vue3": "^8.6.3",
56
+ "@storybook/vue3-vite": "^8.6.3",
57
57
  "@vitejs/plugin-vue": "^5.2.1",
58
58
  "@vue/test-utils": "^2.4.6",
59
59
  "acorn-walk": "^8.3.4",
60
60
  "autoprefixer": "^10.4.20",
61
61
  "cssnano": "^7.0.6",
62
62
  "postcss": "^8.5.1",
63
- "storybook": "^8.5.3",
63
+ "storybook": "^8.6.3",
64
64
  "vite": "^6.0.11",
65
65
  "vite-plugin-dts": "^4.5.0",
66
66
  "vue-tsc": "^2.2.0"