@nuxt/ui 2.11.0 → 2.11.1

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 (140) hide show
  1. package/dist/module.d.mts +196 -22
  2. package/dist/module.d.ts +196 -22
  3. package/dist/module.json +1 -1
  4. package/dist/module.mjs +5 -3
  5. package/dist/runtime/components/data/Table.vue +3 -3
  6. package/dist/runtime/components/data/Table.vue.d.ts +7 -7
  7. package/dist/runtime/components/elements/Accordion.vue +2 -2
  8. package/dist/runtime/components/elements/Accordion.vue.d.ts +7 -7
  9. package/dist/runtime/components/elements/Alert.vue +6 -6
  10. package/dist/runtime/components/elements/Alert.vue.d.ts +7 -7
  11. package/dist/runtime/components/elements/Avatar.vue +2 -2
  12. package/dist/runtime/components/elements/Avatar.vue.d.ts +7 -7
  13. package/dist/runtime/components/elements/AvatarGroup.d.ts +7 -7
  14. package/dist/runtime/components/elements/AvatarGroup.mjs +2 -2
  15. package/dist/runtime/components/elements/Badge.vue +2 -2
  16. package/dist/runtime/components/elements/Badge.vue.d.ts +7 -7
  17. package/dist/runtime/components/elements/Button.vue +8 -6
  18. package/dist/runtime/components/elements/Button.vue.d.ts +8 -7
  19. package/dist/runtime/components/elements/ButtonGroup.d.ts +7 -7
  20. package/dist/runtime/components/elements/ButtonGroup.mjs +3 -16
  21. package/dist/runtime/components/elements/Chip.vue +2 -2
  22. package/dist/runtime/components/elements/Chip.vue.d.ts +7 -7
  23. package/dist/runtime/components/elements/Dropdown.vue +5 -5
  24. package/dist/runtime/components/elements/Dropdown.vue.d.ts +7 -7
  25. package/dist/runtime/components/elements/Kbd.vue +2 -2
  26. package/dist/runtime/components/elements/Kbd.vue.d.ts +7 -7
  27. package/dist/runtime/components/elements/Meter.vue +2 -2
  28. package/dist/runtime/components/elements/Meter.vue.d.ts +7 -7
  29. package/dist/runtime/components/elements/MeterGroup.d.ts +9 -9
  30. package/dist/runtime/components/elements/MeterGroup.mjs +8 -21
  31. package/dist/runtime/components/elements/Progress.vue +5 -94
  32. package/dist/runtime/components/elements/Progress.vue.d.ts +123 -1
  33. package/dist/runtime/components/forms/Checkbox.vue +7 -7
  34. package/dist/runtime/components/forms/Checkbox.vue.d.ts +8 -8
  35. package/dist/runtime/components/forms/Form.vue +1 -1
  36. package/dist/runtime/components/forms/FormGroup.vue +2 -2
  37. package/dist/runtime/components/forms/FormGroup.vue.d.ts +7 -7
  38. package/dist/runtime/components/forms/Input.vue +7 -7
  39. package/dist/runtime/components/forms/Input.vue.d.ts +10 -10
  40. package/dist/runtime/components/forms/Radio.vue +7 -7
  41. package/dist/runtime/components/forms/Radio.vue.d.ts +7 -7
  42. package/dist/runtime/components/forms/RadioGroup.vue +4 -4
  43. package/dist/runtime/components/forms/RadioGroup.vue.d.ts +13 -13
  44. package/dist/runtime/components/forms/Range.vue +5 -5
  45. package/dist/runtime/components/forms/Range.vue.d.ts +8 -8
  46. package/dist/runtime/components/forms/Select.vue +7 -7
  47. package/dist/runtime/components/forms/Select.vue.d.ts +9 -9
  48. package/dist/runtime/components/forms/SelectMenu.vue +18 -18
  49. package/dist/runtime/components/forms/SelectMenu.vue.d.ts +13 -13
  50. package/dist/runtime/components/forms/Textarea.vue +3 -3
  51. package/dist/runtime/components/forms/Textarea.vue.d.ts +10 -10
  52. package/dist/runtime/components/forms/Toggle.vue +9 -9
  53. package/dist/runtime/components/forms/Toggle.vue.d.ts +14 -14
  54. package/dist/runtime/components/layout/Card.vue +2 -2
  55. package/dist/runtime/components/layout/Card.vue.d.ts +7 -7
  56. package/dist/runtime/components/layout/Container.vue +2 -2
  57. package/dist/runtime/components/layout/Container.vue.d.ts +7 -7
  58. package/dist/runtime/components/layout/Divider.vue +3 -8
  59. package/dist/runtime/components/layout/Divider.vue.d.ts +7 -7
  60. package/dist/runtime/components/layout/Skeleton.vue +2 -2
  61. package/dist/runtime/components/layout/Skeleton.vue.d.ts +7 -7
  62. package/dist/runtime/components/navigation/Breadcrumb.vue +2 -2
  63. package/dist/runtime/components/navigation/Breadcrumb.vue.d.ts +7 -7
  64. package/dist/runtime/components/navigation/CommandPalette.vue +42 -33
  65. package/dist/runtime/components/navigation/CommandPalette.vue.d.ts +15 -8
  66. package/dist/runtime/components/navigation/CommandPaletteGroup.vue +1 -3
  67. package/dist/runtime/components/navigation/Pagination.vue +7 -7
  68. package/dist/runtime/components/navigation/Pagination.vue.d.ts +7 -7
  69. package/dist/runtime/components/navigation/Tabs.vue +8 -5
  70. package/dist/runtime/components/navigation/Tabs.vue.d.ts +9 -9
  71. package/dist/runtime/components/navigation/VerticalNavigation.vue +2 -2
  72. package/dist/runtime/components/navigation/VerticalNavigation.vue.d.ts +7 -7
  73. package/dist/runtime/components/overlays/ContextMenu.vue +4 -3
  74. package/dist/runtime/components/overlays/ContextMenu.vue.d.ts +7 -7
  75. package/dist/runtime/components/overlays/Modal.vue +3 -6
  76. package/dist/runtime/components/overlays/Modal.vue.d.ts +7 -7
  77. package/dist/runtime/components/overlays/Notification.vue +7 -7
  78. package/dist/runtime/components/overlays/Notification.vue.d.ts +7 -7
  79. package/dist/runtime/components/overlays/Notifications.vue +2 -2
  80. package/dist/runtime/components/overlays/Notifications.vue.d.ts +7 -7
  81. package/dist/runtime/components/overlays/Popover.vue +5 -4
  82. package/dist/runtime/components/overlays/Popover.vue.d.ts +7 -7
  83. package/dist/runtime/components/overlays/Slideover.vue +6 -6
  84. package/dist/runtime/components/overlays/Slideover.vue.d.ts +7 -7
  85. package/dist/runtime/components/overlays/Tooltip.vue +6 -5
  86. package/dist/runtime/components/overlays/Tooltip.vue.d.ts +7 -7
  87. package/dist/runtime/composables/useFormGroup.d.ts +3 -3
  88. package/dist/runtime/composables/useFormGroup.mjs +1 -1
  89. package/dist/runtime/composables/useUI.d.ts +3 -3
  90. package/dist/runtime/types/breadcrumb.d.ts +2 -0
  91. package/dist/runtime/types/form.d.ts +1 -1
  92. package/dist/runtime/types/popper.d.ts +2 -0
  93. package/dist/runtime/types/utils.d.ts +4 -4
  94. package/dist/runtime/ui.config/data/table.d.ts +2 -2
  95. package/dist/runtime/ui.config/elements/accordion.d.ts +1 -1
  96. package/dist/runtime/ui.config/elements/alert.d.ts +5 -4
  97. package/dist/runtime/ui.config/elements/alert.mjs +1 -0
  98. package/dist/runtime/ui.config/elements/button.d.ts +4 -0
  99. package/dist/runtime/ui.config/elements/button.mjs +4 -0
  100. package/dist/runtime/ui.config/elements/buttonGroup.d.ts +92 -0
  101. package/dist/runtime/ui.config/elements/buttonGroup.mjs +12 -1
  102. package/dist/runtime/ui.config/elements/dropdown.d.ts +3 -1
  103. package/dist/runtime/ui.config/elements/dropdown.mjs +4 -2
  104. package/dist/runtime/ui.config/elements/meterGroup.d.ts +40 -0
  105. package/dist/runtime/ui.config/elements/meterGroup.mjs +14 -1
  106. package/dist/runtime/ui.config/forms/checkbox.d.ts +3 -0
  107. package/dist/runtime/ui.config/forms/checkbox.mjs +3 -0
  108. package/dist/runtime/ui.config/forms/input.d.ts +2 -0
  109. package/dist/runtime/ui.config/forms/input.mjs +2 -0
  110. package/dist/runtime/ui.config/forms/radio.d.ts +3 -0
  111. package/dist/runtime/ui.config/forms/radio.mjs +3 -0
  112. package/dist/runtime/ui.config/forms/select.d.ts +2 -0
  113. package/dist/runtime/ui.config/forms/select.mjs +1 -0
  114. package/dist/runtime/ui.config/forms/selectMenu.d.ts +6 -1
  115. package/dist/runtime/ui.config/forms/selectMenu.mjs +7 -2
  116. package/dist/runtime/ui.config/forms/textarea.d.ts +2 -0
  117. package/dist/runtime/ui.config/forms/textarea.mjs +1 -0
  118. package/dist/runtime/ui.config/layout/divider.d.ts +6 -1
  119. package/dist/runtime/ui.config/layout/divider.mjs +5 -0
  120. package/dist/runtime/ui.config/navigation/breadcrumb.mjs +1 -1
  121. package/dist/runtime/ui.config/navigation/commandPalette.d.ts +5 -1
  122. package/dist/runtime/ui.config/navigation/commandPalette.mjs +5 -1
  123. package/dist/runtime/ui.config/navigation/pagination.d.ts +6 -6
  124. package/dist/runtime/ui.config/navigation/verticalNavigation.d.ts +1 -1
  125. package/dist/runtime/ui.config/overlays/contextMenu.mjs +1 -1
  126. package/dist/runtime/ui.config/overlays/modal.d.ts +1 -0
  127. package/dist/runtime/ui.config/overlays/modal.mjs +3 -2
  128. package/dist/runtime/ui.config/overlays/notification.d.ts +5 -4
  129. package/dist/runtime/ui.config/overlays/notification.mjs +1 -0
  130. package/dist/runtime/ui.config/overlays/popover.d.ts +1 -0
  131. package/dist/runtime/ui.config/overlays/popover.mjs +2 -1
  132. package/dist/runtime/ui.config/overlays/slideover.d.ts +5 -0
  133. package/dist/runtime/ui.config/overlays/slideover.mjs +5 -0
  134. package/dist/runtime/ui.config/overlays/tooltip.d.ts +1 -0
  135. package/dist/runtime/ui.config/overlays/tooltip.mjs +2 -1
  136. package/dist/runtime/ui.config/{_popperArrow.d.ts → popper.d.ts} +1 -2
  137. package/dist/runtime/ui.config/{_popperArrow.mjs → popper.mjs} +2 -2
  138. package/dist/runtime/ui.css +1 -13
  139. package/dist/runtime/utils/index.mjs +1 -1
  140. package/package.json +12 -14
@@ -30,18 +30,18 @@ declare const _default: import("vue").DefineComponent<{
30
30
  default: () => any;
31
31
  validator(value: string): any;
32
32
  };
33
- class: {
34
- type: PropType<any>;
35
- default: undefined;
36
- };
37
33
  size: {
38
34
  type: PropType<ToggleSize>;
39
35
  default: any;
40
36
  validator(value: string): boolean;
41
37
  };
38
+ class: {
39
+ type: PropType<any>;
40
+ default: () => "";
41
+ };
42
42
  ui: {
43
- type: PropType<Partial<any>>;
44
- default: undefined;
43
+ type: PropType<any>;
44
+ default: () => {};
45
45
  };
46
46
  }, {
47
47
  ui: import("vue").ComputedRef<any>;
@@ -49,7 +49,7 @@ declare const _default: import("vue").DefineComponent<{
49
49
  [x: string]: unknown;
50
50
  }, string>>;
51
51
  name: import("vue").ComputedRef<string | undefined>;
52
- inputId: import("vue").Ref<string | null | undefined>;
52
+ inputId: import("vue").Ref<string | undefined>;
53
53
  active: import("vue").WritableComputedRef<boolean>;
54
54
  switchClass: import("vue").ComputedRef<string>;
55
55
  containerClass: import("vue").ComputedRef<string>;
@@ -85,24 +85,24 @@ declare const _default: import("vue").DefineComponent<{
85
85
  default: () => any;
86
86
  validator(value: string): any;
87
87
  };
88
- class: {
89
- type: PropType<any>;
90
- default: undefined;
91
- };
92
88
  size: {
93
89
  type: PropType<ToggleSize>;
94
90
  default: any;
95
91
  validator(value: string): boolean;
96
92
  };
93
+ class: {
94
+ type: PropType<any>;
95
+ default: () => "";
96
+ };
97
97
  ui: {
98
- type: PropType<Partial<any>>;
99
- default: undefined;
98
+ type: PropType<any>;
99
+ default: () => {};
100
100
  };
101
101
  }>> & {
102
102
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
103
103
  }, {
104
104
  size: ToggleSize;
105
- ui: Partial<any>;
105
+ ui: any;
106
106
  id: string;
107
107
  color: any;
108
108
  name: string;
@@ -33,11 +33,11 @@ export default defineComponent({
33
33
  },
34
34
  class: {
35
35
  type: [String, Object, Array],
36
- default: void 0
36
+ default: () => ""
37
37
  },
38
38
  ui: {
39
39
  type: Object,
40
- default: void 0
40
+ default: () => ({})
41
41
  }
42
42
  },
43
43
  setup(props) {
@@ -6,11 +6,11 @@ declare const _default: import("vue").DefineComponent<{
6
6
  };
7
7
  class: {
8
8
  type: PropType<any>;
9
- default: undefined;
9
+ default: () => string;
10
10
  };
11
11
  ui: {
12
- type: PropType<Partial<any>>;
13
- default: undefined;
12
+ type: PropType<any>;
13
+ default: () => {};
14
14
  };
15
15
  }, {
16
16
  ui: import("vue").ComputedRef<any>;
@@ -25,14 +25,14 @@ declare const _default: import("vue").DefineComponent<{
25
25
  };
26
26
  class: {
27
27
  type: PropType<any>;
28
- default: undefined;
28
+ default: () => string;
29
29
  };
30
30
  ui: {
31
- type: PropType<Partial<any>>;
32
- default: undefined;
31
+ type: PropType<any>;
32
+ default: () => {};
33
33
  };
34
34
  }>>, {
35
- ui: Partial<any>;
35
+ ui: any;
36
36
  class: any;
37
37
  as: string;
38
38
  }, {}>;
@@ -21,11 +21,11 @@ export default defineComponent({
21
21
  },
22
22
  class: {
23
23
  type: [String, Object, Array],
24
- default: void 0
24
+ default: () => ""
25
25
  },
26
26
  ui: {
27
27
  type: Object,
28
- default: void 0
28
+ default: () => ({})
29
29
  }
30
30
  },
31
31
  setup(props) {
@@ -6,11 +6,11 @@ declare const _default: import("vue").DefineComponent<{
6
6
  };
7
7
  class: {
8
8
  type: PropType<any>;
9
- default: undefined;
9
+ default: () => string;
10
10
  };
11
11
  ui: {
12
- type: PropType<Partial<any>>;
13
- default: undefined;
12
+ type: PropType<any>;
13
+ default: () => {};
14
14
  };
15
15
  }, {
16
16
  ui: import("vue").ComputedRef<any>;
@@ -25,14 +25,14 @@ declare const _default: import("vue").DefineComponent<{
25
25
  };
26
26
  class: {
27
27
  type: PropType<any>;
28
- default: undefined;
28
+ default: () => string;
29
29
  };
30
30
  ui: {
31
- type: PropType<Partial<any>>;
32
- default: undefined;
31
+ type: PropType<any>;
32
+ default: () => {};
33
33
  };
34
34
  }>>, {
35
- ui: Partial<any>;
35
+ ui: any;
36
36
  class: any;
37
37
  as: string;
38
38
  }, {}>;
@@ -59,11 +59,11 @@ export default defineComponent({
59
59
  },
60
60
  class: {
61
61
  type: [String, Object, Array],
62
- default: void 0
62
+ default: () => ""
63
63
  },
64
64
  ui: {
65
65
  type: Object,
66
- default: void 0
66
+ default: () => ({})
67
67
  }
68
68
  },
69
69
  setup(props) {
@@ -82,16 +82,11 @@ export default defineComponent({
82
82
  );
83
83
  });
84
84
  const borderClass = computed(() => {
85
- const typeClass = {
86
- solid: "border-solid",
87
- dotted: "border-dotted",
88
- dashed: "border-dashed"
89
- }[props.type];
90
85
  return twJoin(
91
86
  ui.value.border.base,
92
87
  isHorizontal.value ? ui.value.border.horizontal : ui.value.border.vertical,
93
88
  isHorizontal.value ? ui.value.border.size.horizontal : ui.value.border.size.vertical,
94
- typeClass
89
+ ui.value.border.type[props.type]
95
90
  );
96
91
  });
97
92
  return {
@@ -25,11 +25,11 @@ declare const _default: import("vue").DefineComponent<{
25
25
  };
26
26
  class: {
27
27
  type: PropType<any>;
28
- default: undefined;
28
+ default: () => string;
29
29
  };
30
30
  ui: {
31
- type: PropType<Partial<any>>;
32
- default: undefined;
31
+ type: PropType<any>;
32
+ default: () => {};
33
33
  };
34
34
  }, {
35
35
  ui: import("vue").ComputedRef<any>;
@@ -64,15 +64,15 @@ declare const _default: import("vue").DefineComponent<{
64
64
  };
65
65
  class: {
66
66
  type: PropType<any>;
67
- default: undefined;
67
+ default: () => string;
68
68
  };
69
69
  ui: {
70
- type: PropType<Partial<any>>;
71
- default: undefined;
70
+ type: PropType<any>;
71
+ default: () => {};
72
72
  };
73
73
  }>>, {
74
74
  orientation: "horizontal" | "vertical";
75
- ui: Partial<any>;
75
+ ui: any;
76
76
  icon: string;
77
77
  avatar: Avatar;
78
78
  type: "solid" | "dotted" | "dashed";
@@ -15,11 +15,11 @@ export default defineComponent({
15
15
  props: {
16
16
  class: {
17
17
  type: [String, Object, Array],
18
- default: void 0
18
+ default: () => ""
19
19
  },
20
20
  ui: {
21
21
  type: Object,
22
- default: void 0
22
+ default: () => ({})
23
23
  }
24
24
  },
25
25
  setup(props) {
@@ -2,11 +2,11 @@ import type { PropType } from 'vue';
2
2
  declare const _default: import("vue").DefineComponent<{
3
3
  class: {
4
4
  type: PropType<any>;
5
- default: undefined;
5
+ default: () => string;
6
6
  };
7
7
  ui: {
8
- type: PropType<Partial<any>>;
9
- default: undefined;
8
+ type: PropType<any>;
9
+ default: () => {};
10
10
  };
11
11
  }, {
12
12
  ui: import("vue").ComputedRef<any>;
@@ -17,14 +17,14 @@ declare const _default: import("vue").DefineComponent<{
17
17
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
18
18
  class: {
19
19
  type: PropType<any>;
20
- default: undefined;
20
+ default: () => string;
21
21
  };
22
22
  ui: {
23
- type: PropType<Partial<any>>;
24
- default: undefined;
23
+ type: PropType<any>;
24
+ default: () => {};
25
25
  };
26
26
  }>>, {
27
- ui: Partial<any>;
27
+ ui: any;
28
28
  class: any;
29
29
  }, {}>;
30
30
  export default _default;
@@ -58,11 +58,11 @@ export default defineComponent({
58
58
  },
59
59
  class: {
60
60
  type: [String, Object, Array],
61
- default: void 0
61
+ default: () => ""
62
62
  },
63
63
  ui: {
64
64
  type: Object,
65
- default: void 0
65
+ default: () => ({})
66
66
  }
67
67
  },
68
68
  setup(props) {
@@ -12,11 +12,11 @@ declare const _default: import("vue").DefineComponent<{
12
12
  };
13
13
  class: {
14
14
  type: PropType<any>;
15
- default: undefined;
15
+ default: () => string;
16
16
  };
17
17
  ui: {
18
- type: PropType<Partial<any>>;
19
- default: undefined;
18
+ type: PropType<any>;
19
+ default: () => {};
20
20
  };
21
21
  }, {
22
22
  ui: import("vue").ComputedRef<any>;
@@ -35,14 +35,14 @@ declare const _default: import("vue").DefineComponent<{
35
35
  };
36
36
  class: {
37
37
  type: PropType<any>;
38
- default: undefined;
38
+ default: () => string;
39
39
  };
40
40
  ui: {
41
- type: PropType<Partial<any>>;
42
- default: undefined;
41
+ type: PropType<any>;
42
+ default: () => {};
43
43
  };
44
44
  }>>, {
45
- ui: Partial<any>;
45
+ ui: any;
46
46
  class: any;
47
47
  divider: string;
48
48
  links: BreadcrumbLink[];
@@ -14,14 +14,14 @@
14
14
  <HComboboxInput
15
15
  ref="comboboxInput"
16
16
  :value="query"
17
- :class="[ui.input.base, ui.input.size, ui.input.height, ui.input.padding, icon && ui.input.icon.padding]"
17
+ :class="[ui.input.base, ui.input.size, ui.input.height, ui.input.padding, icon && ui.input.icon.padding, closeButton && ui.input.closeButton.padding]"
18
18
  :placeholder="placeholder"
19
19
  :aria-label="placeholder"
20
20
  autocomplete="off"
21
21
  @change="query = $event.target.value"
22
22
  />
23
23
 
24
- <UButton v-if="closeButton" aria-label="Close" v-bind="{ ...ui.default.closeButton, ...closeButton }" :class="ui.input.closeButton" @click="onClear" />
24
+ <UButton v-if="closeButton" aria-label="Close" v-bind="{ ...(ui.default.closeButton || {}), ...closeButton }" :class="ui.input.closeButton.base" @click="onClear" />
25
25
  </div>
26
26
 
27
27
  <HComboboxOptions
@@ -165,11 +165,11 @@ export default defineComponent({
165
165
  },
166
166
  class: {
167
167
  type: [String, Object, Array],
168
- default: void 0
168
+ default: () => ""
169
169
  },
170
170
  ui: {
171
171
  type: Object,
172
- default: void 0
172
+ default: () => ({})
173
173
  }
174
174
  },
175
175
  emits: ["update:modelValue", "close"],
@@ -205,44 +205,53 @@ export default defineComponent({
205
205
  const commands2 = [];
206
206
  for (const group of props.groups) {
207
207
  if (!group.search) {
208
- commands2.push(...group.commands.map((command) => ({ ...command, group: group.key })));
208
+ commands2.push(...group.commands?.map((command) => ({ ...command, group: group.key })) || []);
209
209
  }
210
210
  }
211
211
  return commands2;
212
212
  });
213
213
  const searchResults = ref({});
214
214
  const { results } = useFuse(query, commands, options);
215
+ function getGroupWithCommands(group, commands2) {
216
+ if (!group) {
217
+ return;
218
+ }
219
+ if (group.filter && typeof group.filter === "function") {
220
+ commands2 = group.filter(query.value, commands2);
221
+ }
222
+ return {
223
+ ...group,
224
+ commands: commands2.slice(0, options.value.resultLimit)
225
+ };
226
+ }
215
227
  const groups = computed(() => {
216
- const groups2 = [];
217
- const groupedCommands = {};
218
- for (const command of results.value) {
219
- groupedCommands[command.item.group] ||= [];
220
- groupedCommands[command.item.group].push(command);
228
+ if (!results.value) {
229
+ return [];
221
230
  }
222
- for (const key in groupedCommands) {
223
- const group = props.groups.find((group2) => group2.key === key);
224
- let commands2 = groupedCommands[key].map((result) => {
225
- const { item, ...data } = result;
226
- return {
227
- ...item,
228
- ...data
229
- };
230
- });
231
- if (group.filter && typeof group.filter === "function") {
232
- commands2 = group.filter(query.value, commands2);
231
+ const groupedCommands = results.value.reduce((acc, command) => {
232
+ const { item, ...data } = command;
233
+ if (!item.group) {
234
+ return acc;
233
235
  }
234
- groups2.push({ ...group, commands: commands2.slice(0, options.value.resultLimit) });
235
- }
236
- for (const group of props.groups) {
237
- if (group.search && searchResults.value[group.key]?.length) {
238
- let commands2 = searchResults.value[group.key] || [];
239
- if (group.filter && typeof group.filter === "function") {
240
- commands2 = group.filter(query.value, commands2);
241
- }
242
- groups2.push({ ...group, commands: commands2.slice(0, options.value.resultLimit) });
236
+ acc[item.group] ||= [];
237
+ acc[item.group].push({ ...item, ...data });
238
+ return acc;
239
+ }, {});
240
+ const groups2 = Object.entries(groupedCommands).map(([key, commands2]) => {
241
+ const group = props.groups.find((group2) => group2.key === key);
242
+ if (!group) {
243
+ return null;
243
244
  }
244
- }
245
- return groups2;
245
+ return getGroupWithCommands(group, commands2);
246
+ }).filter(Boolean);
247
+ const searchGroups = props.groups.filter((group) => !!group.search && searchResults.value[group.key]?.length).map((group) => {
248
+ const commands2 = searchResults.value[group.key] || [];
249
+ return getGroupWithCommands(group, [...commands2]);
250
+ });
251
+ return [
252
+ ...groups2,
253
+ ...searchGroups
254
+ ];
246
255
  });
247
256
  const debouncedSearch = useDebounceFn(async () => {
248
257
  const searchableGroups = props.groups.filter((group) => !!group.search);
@@ -270,7 +279,7 @@ export default defineComponent({
270
279
  return twJoin(
271
280
  ui.value.input.icon.base,
272
281
  ui.value.input.icon.size,
273
- (props.loading || isLoading.value) && props.loadingIcon && "animate-spin"
282
+ (props.loading || isLoading.value) && props.loadingIcon && ui.value.input.icon.loading
274
283
  );
275
284
  });
276
285
  const emptyState = computed(() => ({ ...ui.value.default.emptyState, ...props.emptyState }));
@@ -84,18 +84,25 @@ declare const _default: import("vue").DefineComponent<{
84
84
  };
85
85
  class: {
86
86
  type: PropType<any>;
87
- default: undefined;
87
+ default: () => string;
88
88
  };
89
89
  ui: {
90
- type: PropType<Partial<any>>;
91
- default: undefined;
90
+ type: PropType<any>;
91
+ default: () => {};
92
92
  };
93
93
  }, {
94
94
  ui: ComputedRef<any>;
95
95
  attrs: ComputedRef<Pick<{
96
96
  [x: string]: unknown;
97
97
  }, string>>;
98
- groups: ComputedRef<Group[]>;
98
+ groups: ComputedRef<(Group | {
99
+ commands: Command[];
100
+ key: string;
101
+ active?: string | undefined;
102
+ inactive?: string | undefined;
103
+ search?: Function | undefined;
104
+ filter?: Function | undefined;
105
+ } | undefined)[]>;
99
106
  comboboxInput: import("vue").Ref<ComponentPublicInstance<HTMLInputElement> | undefined>;
100
107
  query: import("vue").Ref<string>;
101
108
  iconName: ComputedRef<string | undefined>;
@@ -186,17 +193,17 @@ declare const _default: import("vue").DefineComponent<{
186
193
  };
187
194
  class: {
188
195
  type: PropType<any>;
189
- default: undefined;
196
+ default: () => string;
190
197
  };
191
198
  ui: {
192
- type: PropType<Partial<any>>;
193
- default: undefined;
199
+ type: PropType<any>;
200
+ default: () => {};
194
201
  };
195
202
  }>> & {
196
203
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
197
204
  onClose?: ((...args: any[]) => any) | undefined;
198
205
  }, {
199
- ui: Partial<any>;
206
+ ui: any;
200
207
  icon: string;
201
208
  closeButton: Button;
202
209
  class: any;
@@ -146,7 +146,5 @@ export default defineComponent({
146
146
  </script>
147
147
 
148
148
  <style>
149
- mark {
150
- @apply bg-primary-400;
151
- }
149
+ mark{@apply bg-primary-400}
152
150
  </style>
@@ -6,7 +6,7 @@
6
6
  :size="size"
7
7
  :disabled="!canGoFirstOrPrev"
8
8
  :class="[ui.base, ui.rounded]"
9
- v-bind="{ ...ui.default.firstButton, ...firstButton }"
9
+ v-bind="{ ...(ui.default.firstButton || {}), ...firstButton }"
10
10
  :ui="{ rounded: '' }"
11
11
  aria-label="First"
12
12
  @click="onClickFirst"
@@ -19,7 +19,7 @@
19
19
  :size="size"
20
20
  :disabled="!canGoFirstOrPrev"
21
21
  :class="[ui.base, ui.rounded]"
22
- v-bind="{ ...ui.default.prevButton, ...prevButton }"
22
+ v-bind="{ ...(ui.default.prevButton || {}), ...prevButton }"
23
23
  :ui="{ rounded: '' }"
24
24
  aria-label="Prev"
25
25
  @click="onClickPrev"
@@ -31,7 +31,7 @@
31
31
  :key="`${page}-${index}`"
32
32
  :size="size"
33
33
  :label="`${page}`"
34
- v-bind="page === currentPage ? { ...ui.default.activeButton, ...activeButton } : { ...ui.default.inactiveButton, ...inactiveButton }"
34
+ v-bind="page === currentPage ? { ...(ui.default.activeButton || {}), ...activeButton } : { ...(ui.default.inactiveButton || {}), ...inactiveButton }"
35
35
  :class="[{ 'pointer-events-none': typeof page === 'string', 'z-[1]': page === currentPage }, ui.base, ui.rounded]"
36
36
  :ui="{ rounded: '' }"
37
37
  @click="() => onClickPage(page)"
@@ -43,7 +43,7 @@
43
43
  :size="size"
44
44
  :disabled="!canGoLastOrNext"
45
45
  :class="[ui.base, ui.rounded]"
46
- v-bind="{ ...ui.default.nextButton, ...nextButton }"
46
+ v-bind="{ ...(ui.default.nextButton || {}), ...nextButton }"
47
47
  :ui="{ rounded: '' }"
48
48
  aria-label="Next"
49
49
  @click="onClickNext"
@@ -56,7 +56,7 @@
56
56
  :size="size"
57
57
  :disabled="!canGoLastOrNext"
58
58
  :class="[ui.base, ui.rounded]"
59
- v-bind="{ ...ui.default.lastButton, ...lastButton }"
59
+ v-bind="{ ...(ui.default.lastButton || {}), ...lastButton }"
60
60
  :ui="{ rounded: '' }"
61
61
  aria-label="Last"
62
62
  @click="onClickLast"
@@ -144,11 +144,11 @@ export default defineComponent({
144
144
  },
145
145
  class: {
146
146
  type: [String, Object, Array],
147
- default: void 0
147
+ default: () => ""
148
148
  },
149
149
  ui: {
150
150
  type: Object,
151
- default: void 0
151
+ default: () => ({})
152
152
  }
153
153
  },
154
154
  emits: ["update:modelValue"],
@@ -61,11 +61,11 @@ declare const _default: import("vue").DefineComponent<{
61
61
  };
62
62
  class: {
63
63
  type: PropType<any>;
64
- default: undefined;
64
+ default: () => "";
65
65
  };
66
66
  ui: {
67
- type: PropType<Partial<any>>;
68
- default: undefined;
67
+ type: PropType<any>;
68
+ default: () => {};
69
69
  };
70
70
  }, {
71
71
  ui: import("vue").ComputedRef<any>;
@@ -143,17 +143,17 @@ declare const _default: import("vue").DefineComponent<{
143
143
  };
144
144
  class: {
145
145
  type: PropType<any>;
146
- default: undefined;
146
+ default: () => "";
147
147
  };
148
148
  ui: {
149
- type: PropType<Partial<any>>;
150
- default: undefined;
149
+ type: PropType<any>;
150
+ default: () => {};
151
151
  };
152
152
  }>> & {
153
153
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
154
154
  }, {
155
155
  size: ButtonSize;
156
- ui: Partial<any>;
156
+ ui: any;
157
157
  class: any;
158
158
  max: number;
159
159
  divider: string;
@@ -86,11 +86,11 @@ export default defineComponent({
86
86
  },
87
87
  class: {
88
88
  type: [String, Object, Array],
89
- default: void 0
89
+ default: () => ""
90
90
  },
91
91
  ui: {
92
92
  type: Object,
93
- default: void 0
93
+ default: () => ({})
94
94
  }
95
95
  },
96
96
  emits: ["update:modelValue", "change"],
@@ -105,6 +105,9 @@ export default defineComponent({
105
105
  if (!tab) {
106
106
  return;
107
107
  }
108
+ if (!markerRef.value) {
109
+ return;
110
+ }
108
111
  markerRef.value.style.top = `${tab.offsetTop}px`;
109
112
  markerRef.value.style.left = `${tab.offsetLeft}px`;
110
113
  markerRef.value.style.width = `${tab.offsetWidth}px`;
@@ -114,16 +117,16 @@ export default defineComponent({
114
117
  selectedIndex.value = index;
115
118
  emit("change", index);
116
119
  if (props.modelValue !== void 0) {
117
- emit("update:modelValue", index);
120
+ emit("update:modelValue", selectedIndex.value);
118
121
  }
119
- calcMarkerSize(index);
122
+ calcMarkerSize(selectedIndex.value);
120
123
  }
121
124
  useResizeObserver(listRef, () => {
122
125
  calcMarkerSize(selectedIndex.value);
123
126
  });
124
127
  watch(() => props.modelValue, (value) => {
125
128
  selectedIndex.value = value;
126
- calcMarkerSize(value);
129
+ calcMarkerSize(selectedIndex.value);
127
130
  });
128
131
  onMounted(() => calcMarkerSize(selectedIndex.value));
129
132
  return {