vlite3 0.4.8 → 0.5.2

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 (268) hide show
  1. package/README.md +201 -100
  2. package/_virtual/Barcode.js +4 -0
  3. package/_virtual/CODE128.js +4 -0
  4. package/_virtual/CODE128A.js +4 -0
  5. package/_virtual/CODE128B.js +4 -0
  6. package/_virtual/CODE128C.js +4 -0
  7. package/_virtual/CODE128_AUTO.js +4 -0
  8. package/_virtual/CODE93.js +4 -0
  9. package/_virtual/CODE93FullASCII.js +4 -0
  10. package/_virtual/EAN.js +4 -0
  11. package/_virtual/EAN13.js +4 -0
  12. package/_virtual/EAN2.js +4 -0
  13. package/_virtual/EAN5.js +4 -0
  14. package/_virtual/EAN8.js +4 -0
  15. package/_virtual/ErrorHandler.js +4 -0
  16. package/_virtual/FileSaver.min.js +5 -0
  17. package/_virtual/FileSaver.min2.js +4 -0
  18. package/_virtual/ITF.js +4 -0
  19. package/_virtual/ITF14.js +4 -0
  20. package/_virtual/JsBarcode.js +7 -0
  21. package/_virtual/MSI.js +4 -0
  22. package/_virtual/MSI10.js +4 -0
  23. package/_virtual/MSI1010.js +4 -0
  24. package/_virtual/MSI11.js +4 -0
  25. package/_virtual/MSI1110.js +4 -0
  26. package/_virtual/UPC.js +4 -0
  27. package/_virtual/UPCE.js +4 -0
  28. package/_virtual/_commonjsHelpers.js +8 -0
  29. package/_virtual/alignment-pattern.js +4 -0
  30. package/_virtual/auto.js +4 -0
  31. package/_virtual/browser.js +7 -0
  32. package/_virtual/browser2.js +4 -0
  33. package/_virtual/canvas.js +4 -0
  34. package/_virtual/canvas2.js +4 -0
  35. package/_virtual/checksums.js +4 -0
  36. package/_virtual/constants.js +4 -0
  37. package/_virtual/constants2.js +4 -0
  38. package/_virtual/constants3.js +4 -0
  39. package/_virtual/constants4.js +4 -0
  40. package/_virtual/defaults.js +4 -0
  41. package/_virtual/dijkstra.js +4 -0
  42. package/_virtual/encoder.js +4 -0
  43. package/_virtual/error-correction-code.js +4 -0
  44. package/_virtual/error-correction-level.js +4 -0
  45. package/_virtual/exceptions.js +4 -0
  46. package/_virtual/finder-pattern.js +4 -0
  47. package/_virtual/fixOptions.js +4 -0
  48. package/_virtual/format-info.js +4 -0
  49. package/_virtual/galois-field.js +4 -0
  50. package/_virtual/getOptionsFromElement.js +4 -0
  51. package/_virtual/getRenderProperties.js +4 -0
  52. package/_virtual/index.js +4 -0
  53. package/_virtual/index10.js +4 -0
  54. package/_virtual/index11.js +4 -0
  55. package/_virtual/index2.js +4 -0
  56. package/_virtual/index3.js +4 -0
  57. package/_virtual/index4.js +4 -0
  58. package/_virtual/index5.js +4 -0
  59. package/_virtual/index6.js +4 -0
  60. package/_virtual/index7.js +4 -0
  61. package/_virtual/index8.js +4 -0
  62. package/_virtual/index9.js +4 -0
  63. package/_virtual/linearizeEncodings.js +4 -0
  64. package/_virtual/mask-pattern.js +4 -0
  65. package/_virtual/merge.js +4 -0
  66. package/_virtual/mode.js +4 -0
  67. package/_virtual/object.js +4 -0
  68. package/_virtual/optionsFromStrings.js +4 -0
  69. package/_virtual/papaparse.min.js +7 -0
  70. package/_virtual/papaparse.min2.js +4 -0
  71. package/_virtual/polynomial.js +4 -0
  72. package/_virtual/qrcode.js +4 -0
  73. package/_virtual/regex.js +4 -0
  74. package/_virtual/segments.js +4 -0
  75. package/_virtual/shared.js +4 -0
  76. package/_virtual/svg-tag.js +4 -0
  77. package/_virtual/svg.js +4 -0
  78. package/_virtual/utils.js +4 -0
  79. package/_virtual/utils2.js +4 -0
  80. package/_virtual/version-check.js +4 -0
  81. package/_virtual/version.js +4 -0
  82. package/components/Accordion/Accordion.vue.d.ts +7 -7
  83. package/components/Accordion/AccordionItem.vue.d.ts +4 -4
  84. package/components/Accordion/AccordionTrigger.vue.d.ts +2 -2
  85. package/components/Alert.vue.d.ts +1 -1
  86. package/components/Avatar.vue.d.ts +2 -2
  87. package/components/Avatar.vue.js +2 -2
  88. package/components/AvatarUploader/AvatarUploader.vue.d.ts +5 -5
  89. package/components/Badge.vue.d.ts +1 -1
  90. package/components/Barcode/Barcode.vue.d.ts +22 -0
  91. package/components/Barcode/Barcode.vue.js +58 -0
  92. package/components/Barcode/Barcode.vue2.js +4 -0
  93. package/components/Barcode/index.d.ts +2 -0
  94. package/components/Barcode/types.d.ts +5 -0
  95. package/components/Barcode/types.js +15 -0
  96. package/components/Breadcrumb/Breadcrumb.vue.d.ts +23 -0
  97. package/components/Breadcrumb/Breadcrumb.vue.js +7 -0
  98. package/components/Breadcrumb/Breadcrumb.vue2.js +84 -0
  99. package/components/Breadcrumb/BreadcrumbItem.vue.d.ts +27 -0
  100. package/components/Breadcrumb/BreadcrumbItem.vue.js +7 -0
  101. package/components/Breadcrumb/BreadcrumbItem.vue2.js +50 -0
  102. package/components/Breadcrumb/index.d.ts +3 -0
  103. package/components/Breadcrumb/types.d.ts +19 -0
  104. package/components/Button.vue.d.ts +4 -4
  105. package/components/Button.vue.js +32 -29
  106. package/components/ButtonGroup.vue.d.ts +1 -1
  107. package/components/Carousel/Carousel.vue.d.ts +58 -58
  108. package/components/CheckBox.vue.d.ts +2 -2
  109. package/components/Chip/Chip.vue.d.ts +3 -3
  110. package/components/ChoiceBox/ChoiceBox.vue.d.ts +4 -4
  111. package/components/ColorPicker/ColorPicker.vue.d.ts +3 -3
  112. package/components/ColorPicker/index.d.ts +1 -0
  113. package/components/CommandPaletteContent.vue.d.ts +15 -0
  114. package/components/CommandPaletteContent.vue.js +7 -0
  115. package/components/CommandPaletteContent.vue2.js +287 -0
  116. package/components/ConfirmationModal.vue.js +12 -10
  117. package/components/DataList/DataList.vue.d.ts +2 -2
  118. package/components/DataTable/DataTable.vue.d.ts +6 -6
  119. package/components/DataTable/DataTableRow.vue.d.ts +3 -3
  120. package/components/DatePicker.vue.d.ts +2 -2
  121. package/components/DatePicker.vue.js +7 -7
  122. package/components/DateRangePicker.vue.d.ts +29 -0
  123. package/components/DateRangePicker.vue.js +231 -0
  124. package/components/DateRangePicker.vue2.js +4 -0
  125. package/components/Dropdown/Dropdown.vue.d.ts +11 -6
  126. package/components/Dropdown/Dropdown.vue.js +147 -109
  127. package/components/Dropdown/DropdownBooleanItem.vue.js +9 -8
  128. package/components/Dropdown/DropdownGroupedLayout.vue.d.ts +1 -1
  129. package/components/Dropdown/DropdownGroupedLayout.vue.js +35 -34
  130. package/components/Dropdown/DropdownItem.vue.js +11 -10
  131. package/components/Dropdown/DropdownMenu.vue.d.ts +5 -3
  132. package/components/Dropdown/DropdownMenu.vue.js +114 -111
  133. package/components/Dropdown/DropdownTrigger.vue.d.ts +2 -0
  134. package/components/Dropdown/DropdownTrigger.vue.js +9 -7
  135. package/components/ExportData/ExportData.vue.d.ts +16 -0
  136. package/components/ExportData/ExportData.vue.js +135 -0
  137. package/components/ExportData/ExportData.vue2.js +4 -0
  138. package/components/ExportData/index.d.ts +2 -0
  139. package/components/ExportData/types.d.ts +17 -0
  140. package/components/FilePicker/FilePicker.vue.d.ts +5 -5
  141. package/components/Form/CustomFields.vue.d.ts +6 -6
  142. package/components/Form/CustomFields.vue.js +1 -1
  143. package/components/Form/Form.vue.d.ts +4 -5
  144. package/components/Form/Form.vue.js +2 -2
  145. package/components/Form/Form.vue2.js +221 -178
  146. package/components/Form/FormField.vue.d.ts +4 -3
  147. package/components/Form/FormField.vue.js +70 -62
  148. package/components/Form/FormFields.vue.d.ts +3 -1
  149. package/components/Form/FormFields.vue.js +2 -2
  150. package/components/Form/FormFields.vue2.js +105 -59
  151. package/components/GoogleLogin.vue.d.ts +2 -2
  152. package/components/Icon.vue.d.ts +2 -0
  153. package/components/Icon.vue.js +12 -11
  154. package/components/ImportData/ImportData.vue.d.ts +31 -0
  155. package/components/ImportData/ImportData.vue.js +242 -0
  156. package/components/ImportData/ImportData.vue2.js +4 -0
  157. package/components/ImportData/ImportStep1.vue.d.ts +23 -0
  158. package/components/ImportData/ImportStep1.vue.js +162 -0
  159. package/components/ImportData/ImportStep1.vue2.js +4 -0
  160. package/components/ImportData/ImportStep2.vue.d.ts +20 -0
  161. package/components/ImportData/ImportStep2.vue.js +98 -0
  162. package/components/ImportData/ImportStep2.vue2.js +4 -0
  163. package/components/ImportData/ImportStep3.vue.d.ts +6 -0
  164. package/components/ImportData/ImportStep3.vue.js +98 -0
  165. package/components/ImportData/ImportStep3.vue2.js +4 -0
  166. package/components/ImportData/ImportStep4.vue.d.ts +6 -0
  167. package/components/ImportData/ImportStep4.vue.js +139 -0
  168. package/components/ImportData/ImportStep4.vue2.js +4 -0
  169. package/components/ImportData/index.d.ts +2 -0
  170. package/components/ImportData/types.d.ts +51 -0
  171. package/components/Input.vue.d.ts +9 -9
  172. package/components/Input.vue.js +137 -120
  173. package/components/List/List.vue.d.ts +18 -0
  174. package/components/List/List.vue.js +189 -0
  175. package/components/List/List.vue2.js +4 -0
  176. package/components/List/ListFieldRow.vue.d.ts +35 -0
  177. package/components/List/ListFieldRow.vue.js +119 -0
  178. package/components/List/ListFieldRow.vue2.js +4 -0
  179. package/components/List/index.d.ts +4 -0
  180. package/components/List/types.d.ts +1 -0
  181. package/components/List/utils.d.ts +9 -0
  182. package/components/List/utils.js +64 -0
  183. package/components/Masonry/Masonry.vue.d.ts +2 -2
  184. package/components/Modal.vue.js +5 -122
  185. package/components/Modal.vue2.js +133 -2
  186. package/components/MultiSelect/MultiSelect.vue.d.ts +12 -9
  187. package/components/MultiSelect/MultiSelect.vue.js +101 -64
  188. package/components/Navbar/Navbar.vue.d.ts +48 -9
  189. package/components/Navbar/Navbar.vue.js +418 -146
  190. package/components/Navbar/NavbarItem.vue.d.ts +2 -2
  191. package/components/Navbar/NavbarTabs.vue.d.ts +21 -0
  192. package/components/Navbar/NavbarTabs.vue.js +179 -0
  193. package/components/Navbar/NavbarTabs.vue3.js +5 -0
  194. package/components/Navbar/index.d.ts +3 -0
  195. package/components/NavbarCommandPalette.vue.d.ts +48 -0
  196. package/components/NumberInput.vue.d.ts +8 -8
  197. package/components/OTPInput/OTPInput.vue.d.ts +7 -7
  198. package/components/Pagination/Pagination.vue.d.ts +1 -1
  199. package/components/PermissionMatrix/PermissionEditor.vue.d.ts +36 -0
  200. package/components/PermissionMatrix/PermissionEditor.vue.js +323 -0
  201. package/components/PermissionMatrix/PermissionEditor.vue2.js +4 -0
  202. package/components/PermissionMatrix/PermissionMatrix.vue.d.ts +15 -0
  203. package/components/PermissionMatrix/PermissionMatrix.vue.js +7 -0
  204. package/components/PermissionMatrix/PermissionMatrix.vue2.js +245 -0
  205. package/components/PermissionMatrix/index.d.ts +3 -0
  206. package/components/PermissionMatrix/types.d.ts +59 -0
  207. package/components/PricingPlan/PricingPlan.vue.d.ts +3 -3
  208. package/components/ProgressBar/ProgressBar.vue.d.ts +3 -3
  209. package/components/QRCode/QRCode.vue.d.ts +15 -0
  210. package/components/QRCode/QRCode.vue.js +38 -0
  211. package/components/QRCode/QRCode.vue2.js +4 -0
  212. package/components/QRCode/index.d.ts +1 -0
  213. package/components/Screen/Screen.vue.d.ts +232 -5
  214. package/components/Screen/Screen.vue.js +423 -271
  215. package/components/Screen/ScreenFilter.vue.d.ts +2 -2
  216. package/components/Screen/ScreenFilter.vue.js +9 -9
  217. package/components/Screen/types.d.ts +12 -0
  218. package/components/SidePanel.vue.d.ts +2 -2
  219. package/components/SidebarMenu/SidebarMenu.vue.d.ts +15 -2
  220. package/components/SidebarMenu/SidebarMenu.vue.js +117 -47
  221. package/components/SidebarMenu/SidebarMenuItem.vue.d.ts +2 -0
  222. package/components/SidebarMenu/SidebarMenuItem.vue.js +192 -175
  223. package/components/SidebarMenu/types.d.ts +32 -5
  224. package/components/Slider.vue.d.ts +2 -2
  225. package/components/Spinner/Spinner.vue.d.ts +2 -2
  226. package/components/Stats/Stats.vue.d.ts +14 -0
  227. package/components/Stats/Stats.vue.js +307 -0
  228. package/components/Stats/Stats.vue2.js +4 -0
  229. package/components/Stats/index.d.ts +2 -0
  230. package/components/Stats/types.d.ts +32 -0
  231. package/components/Switch.vue.d.ts +2 -1
  232. package/components/Switch.vue.js +4 -2
  233. package/components/Tabes/Tabes.vue.d.ts +3 -3
  234. package/components/Tabes/Tabes.vue.js +60 -57
  235. package/components/Tabes/types.d.ts +5 -0
  236. package/components/Textarea.vue.d.ts +3 -3
  237. package/components/{Timeline.vue.d.ts → Timeline/Timeline.vue.d.ts} +23 -2
  238. package/components/Timeline/Timeline.vue.js +92 -0
  239. package/components/Timeline/TimelineIndicator.vue.d.ts +9 -0
  240. package/components/Timeline/TimelineIndicator.vue.js +68 -0
  241. package/components/Timeline/TimelineIndicator.vue2.js +4 -0
  242. package/components/Timeline/TimelineItem.vue.d.ts +56 -0
  243. package/components/Timeline/TimelineItem.vue.js +173 -0
  244. package/components/Timeline/TimelineItem.vue2.js +4 -0
  245. package/components/Timeline/index.d.ts +3 -0
  246. package/components/Tooltip.vue.d.ts +2 -2
  247. package/components/Workbook/Sheet.vue.d.ts +2 -2
  248. package/components/Workbook/Workbook.vue.d.ts +3 -3
  249. package/components/index.d.ts +62 -0
  250. package/composables/useBreadcrumb.d.ts +17 -0
  251. package/composables/useBreadcrumb.js +27 -0
  252. package/core/config.d.ts +34 -0
  253. package/core/config.js +10 -7
  254. package/core/index.js +15 -8
  255. package/index.d.ts +55 -44
  256. package/index.js +243 -200
  257. package/package.json +12 -2
  258. package/router.d.ts +2 -0
  259. package/style.css +7 -5
  260. package/types/button.d.ts +1 -1
  261. package/types/config.type.d.ts +35 -0
  262. package/types/form.type.d.ts +3 -1
  263. package/types/index.d.ts +2 -1
  264. package/types/list.type.d.ts +57 -0
  265. package/types/navbar.type.d.ts +38 -1
  266. package/types/timeline.type.d.ts +14 -4
  267. package/components/Timeline.vue.js +0 -160
  268. /package/components/{Timeline.vue2.js → Timeline/Timeline.vue2.js} +0 -0
@@ -1,8 +1,8 @@
1
- import { defineComponent as m, computed as d, openBlock as l, createElementBlock as u, withModifiers as p, normalizeClass as f, createElementVNode as a, createBlock as g, createCommentVNode as v, toDisplayString as h, createVNode as x } from "vue";
1
+ import { defineComponent as r, computed as d, openBlock as l, createElementBlock as u, withModifiers as p, normalizeClass as f, createElementVNode as a, createBlock as g, createCommentVNode as v, toDisplayString as h, createVNode as x } from "vue";
2
2
  import y from "../Switch.vue.js";
3
3
  import b from "../Icon.vue.js";
4
4
  import { $t as k } from "../../utils/i18n.js";
5
- const w = { class: "flex items-center gap-2 flex-1 min-w-0" }, B = { class: "truncate font-medium" }, D = /* @__PURE__ */ m({
5
+ const w = { class: "flex items-center gap-2 flex-1 min-w-0" }, B = { class: "truncate font-medium" }, N = /* @__PURE__ */ r({
6
6
  __name: "DropdownBooleanItem",
7
7
  props: {
8
8
  option: {},
@@ -11,7 +11,7 @@ const w = { class: "flex items-center gap-2 flex-1 min-w-0" }, B = { class: "tru
11
11
  },
12
12
  emits: ["change"],
13
13
  setup(e, { emit: c }) {
14
- const o = e, s = c, r = d(() => o.option.labelI18n ? k(o.option.labelI18n) : o.option.label), t = (n) => {
14
+ const o = e, s = c, m = d(() => o.option.labelI18n ? k(o.option.labelI18n) : o.option.label), t = (n) => {
15
15
  s("change", n, o.option);
16
16
  };
17
17
  return (n, i) => (l(), u("div", {
@@ -19,15 +19,16 @@ const w = { class: "flex items-center gap-2 flex-1 min-w-0" }, B = { class: "tru
19
19
  class: f(["relative flex cursor-pointer select-none items-center justify-between rounded-sm px-2 py-1.5 text-sm outline-none transition-colors", [
20
20
  e.focused ? "bg-accent text-accent-foreground" : "hover:bg-accent hover:text-accent-foreground"
21
21
  ]]),
22
- onClick: i[0] || (i[0] = p((C) => t(!e.value), ["stop"]))
22
+ onClick: i[0] || (i[0] = p((j) => t(!e.value), ["stop"]))
23
23
  }, [
24
24
  a("div", w, [
25
- e.option.icon ? (l(), g(b, {
25
+ e.option.icon || e.option.emoji ? (l(), g(b, {
26
26
  key: 0,
27
27
  icon: e.option.icon,
28
+ emoji: e.option.emoji,
28
29
  class: "h-4 w-4 shrink-0 opacity-70"
29
- }, null, 8, ["icon"])) : v("", !0),
30
- a("span", B, h(r.value), 1)
30
+ }, null, 8, ["icon", "emoji"])) : v("", !0),
31
+ a("span", B, h(m.value), 1)
31
32
  ]),
32
33
  x(y, {
33
34
  "model-value": e.value,
@@ -38,5 +39,5 @@ const w = { class: "flex items-center gap-2 flex-1 min-w-0" }, B = { class: "tru
38
39
  }
39
40
  });
40
41
  export {
41
- D as default
42
+ N as default
42
43
  };
@@ -14,8 +14,8 @@ declare const _default: import('vue').DefineComponent<Props, {}, {}, {}, {}, imp
14
14
  onSelect?: (option: IDropdownOption) => any;
15
15
  onMouseenter?: (payload: any) => any;
16
16
  }>, {
17
- options: IDropdownOptions;
18
17
  selectable: boolean;
18
+ options: IDropdownOptions;
19
19
  columns: number | string;
20
20
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
21
21
  export default _default;
@@ -1,14 +1,14 @@
1
- import { defineComponent as _, computed as C, openBlock as t, createElementBlock as c, normalizeStyle as $, Fragment as a, renderList as i, createElementVNode as m, normalizeClass as h, toDisplayString as w, createBlock as d, createCommentVNode as f, createVNode as B } from "vue";
2
- import N from "../Icon.vue.js";
1
+ import { defineComponent as _, computed as C, openBlock as l, createElementBlock as c, normalizeStyle as $, Fragment as a, renderList as i, createElementVNode as m, normalizeClass as h, toDisplayString as j, createBlock as u, createCommentVNode as f, createVNode as w } from "vue";
2
+ import B from "../Icon.vue.js";
3
3
  import y from "./DropdownItem.vue.js";
4
- import { $t as S } from "../../utils/i18n.js";
5
- const L = { class: "font-semibold text-sm text-foreground" }, V = { class: "flex flex-col space-y-1" }, z = {
4
+ import { $t as N } from "../../utils/i18n.js";
5
+ const S = { class: "font-semibold text-sm text-foreground" }, L = { class: "flex flex-col space-y-1" }, V = {
6
6
  key: 0,
7
7
  class: "flex flex-col space-y-1 ml-3 pl-3 border-l border-border mt-0.5 mb-1.5"
8
- }, A = {
8
+ }, z = {
9
9
  key: 1,
10
10
  class: "px-2 text-xs text-muted-foreground italic"
11
- }, F = /* @__PURE__ */ _({
11
+ }, q = /* @__PURE__ */ _({
12
12
  __name: "DropdownGroupedLayout",
13
13
  props: {
14
14
  options: { default: () => [] },
@@ -19,56 +19,57 @@ const L = { class: "font-semibold text-sm text-foreground" }, V = { class: "flex
19
19
  headerClass: {}
20
20
  },
21
21
  emits: ["select", "mouseenter"],
22
- setup(o, { emit: D }) {
23
- const l = o, k = C(() => {
24
- const e = l.columns;
22
+ setup(r, { emit: A }) {
23
+ const s = r, k = C(() => {
24
+ const e = s.columns;
25
25
  return typeof e == "number" ? { gridTemplateColumns: `repeat(${e}, minmax(0, 1fr))` } : { gridTemplateColumns: e };
26
- }), u = (e) => l.selected ? Array.isArray(l.selected) ? l.selected.includes(e.value) : typeof l.selected == "object" && l.selected !== null && e.key && e.key in l.selected ? l.selected[e.key] === e.value : l.selected === e.value : !1, b = (e) => e.labelI18n ? S(e.labelI18n) : e.label;
27
- return (e, E) => (t(), c("div", {
26
+ }), d = (e) => s.selected ? Array.isArray(s.selected) ? s.selected.includes(e.value) : typeof s.selected == "object" && s.selected !== null && e.key && e.key in s.selected ? s.selected[e.key] === e.value : s.selected === e.value : !1, b = (e) => e.labelI18n ? N(e.labelI18n) : e.label;
27
+ return (e, D) => (l(), c("div", {
28
28
  class: "grid gap-6 p-4",
29
29
  style: $(k.value)
30
30
  }, [
31
- (t(!0), c(a, null, i(o.options, (s, p) => (t(), c("div", {
32
- key: s.key || s.value || p,
31
+ (l(!0), c(a, null, i(r.options, (t, x) => (l(), c("div", {
32
+ key: t.key || t.value || x,
33
33
  class: "flex flex-col space-y-2 min-w-[150px]"
34
34
  }, [
35
35
  m("div", {
36
- class: h(["flex items-center gap-2 px-2 py-1 mb-1", o.headerClass])
36
+ class: h(["flex items-center gap-2 px-2 py-1 mb-1", r.headerClass])
37
37
  }, [
38
- m("span", L, w(b(s)), 1),
39
- s.icon ? (t(), d(N, {
38
+ m("span", S, j(b(t)), 1),
39
+ t.icon || t.emoji ? (l(), u(B, {
40
40
  key: 0,
41
- icon: s.icon,
41
+ icon: t.icon,
42
+ emoji: t.emoji,
42
43
  class: "w-4 h-4 text-muted-foreground"
43
- }, null, 8, ["icon"])) : f("", !0)
44
+ }, null, 8, ["icon", "emoji"])) : f("", !0)
44
45
  ], 2),
45
- m("div", V, [
46
- s.children && s.children.length ? (t(!0), c(a, { key: 0 }, i(s.children, (n, x) => (t(), c(a, {
47
- key: n.key || n.value || x
46
+ m("div", L, [
47
+ t.children && t.children.length ? (l(!0), c(a, { key: 0 }, i(t.children, (n, p) => (l(), c(a, {
48
+ key: n.key || n.value || p
48
49
  }, [
49
- B(y, {
50
+ w(y, {
50
51
  option: n,
51
- selected: u(n),
52
- selectable: o.selectable,
52
+ selected: d(n),
53
+ selectable: r.selectable,
53
54
  class: "w-full",
54
- onClick: (r) => e.$emit("select", n)
55
+ onClick: (o) => e.$emit("select", n)
55
56
  }, null, 8, ["option", "selected", "selectable", "onClick"]),
56
- n.children && n.children.length ? (t(), c("div", z, [
57
- (t(!0), c(a, null, i(n.children, (r, v) => (t(), d(y, {
58
- key: r.key || r.value || v,
59
- option: r,
60
- selected: u(r),
61
- selectable: o.selectable,
57
+ n.children && n.children.length ? (l(), c("div", V, [
58
+ (l(!0), c(a, null, i(n.children, (o, v) => (l(), u(y, {
59
+ key: o.key || o.value || v,
60
+ option: o,
61
+ selected: d(o),
62
+ selectable: r.selectable,
62
63
  class: "w-full text-xs",
63
- onClick: (G) => e.$emit("select", r)
64
+ onClick: (E) => e.$emit("select", o)
64
65
  }, null, 8, ["option", "selected", "selectable", "onClick"]))), 128))
65
66
  ])) : f("", !0)
66
- ], 64))), 128)) : (t(), c("div", A, "No items"))
67
+ ], 64))), 128)) : (l(), c("div", z, "No items"))
67
68
  ])
68
69
  ]))), 128))
69
70
  ], 4));
70
71
  }
71
72
  });
72
73
  export {
73
- F as default
74
+ q as default
74
75
  };
@@ -1,13 +1,13 @@
1
1
  import { defineComponent as k, computed as l, openBlock as o, createElementBlock as s, normalizeClass as h, renderSlot as g, normalizeProps as w, guardReactiveProps as I, createBlock as p, createCommentVNode as i, createElementVNode as a, toDisplayString as c } from "vue";
2
2
  import f from "../Icon.vue.js";
3
3
  import { $t as d } from "../../utils/i18n.js";
4
- const B = ["data-disabled"], $ = { class: "flex flex-col flex-1 min-w-0" }, C = { class: "flex items-center justify-between gap-2" }, D = { class: "truncate font-medium" }, S = {
4
+ const B = ["data-disabled"], $ = { class: "flex flex-col flex-1 min-w-0" }, j = { class: "flex items-center justify-between gap-2" }, C = { class: "truncate font-medium" }, D = {
5
5
  key: 0,
6
6
  class: "text-xs text-muted-foreground whitespace-nowrap opacity-90"
7
- }, z = {
7
+ }, S = {
8
8
  key: 0,
9
9
  class: "text-[10px] text-muted-foreground truncate opacity-70"
10
- }, V = /* @__PURE__ */ k({
10
+ }, P = /* @__PURE__ */ k({
11
11
  __name: "DropdownItem",
12
12
  props: {
13
13
  option: {},
@@ -31,17 +31,18 @@ const B = ["data-disabled"], $ = { class: "flex flex-col flex-1 min-w-0" }, C =
31
31
  onMouseenter: n[1] || (n[1] = (v) => m.$emit("mouseenter", e.index ?? -1))
32
32
  }, [
33
33
  g(m.$slots, "default", w(I({ option: e.option, index: e.index, selected: e.selected })), () => [
34
- e.option.icon ? (o(), p(f, {
34
+ e.option.icon || e.option.emoji ? (o(), p(f, {
35
35
  key: 0,
36
36
  icon: e.option.icon,
37
+ emoji: e.option.emoji,
37
38
  class: "mr-2 h-4 w-4 shrink-0 mt-0.5"
38
- }, null, 8, ["icon"])) : i("", !0),
39
+ }, null, 8, ["icon", "emoji"])) : i("", !0),
39
40
  a("div", $, [
40
- a("div", C, [
41
- a("span", D, c(y.value), 1),
42
- r.value ? (o(), s("span", S, c(r.value), 1)) : i("", !0)
41
+ a("div", j, [
42
+ a("span", C, c(y.value), 1),
43
+ r.value ? (o(), s("span", D, c(r.value), 1)) : i("", !0)
43
44
  ]),
44
- u.value ? (o(), s("span", z, c(u.value), 1)) : i("", !0)
45
+ u.value ? (o(), s("span", S, c(u.value), 1)) : i("", !0)
45
46
  ]),
46
47
  e.selectable && e.selected ? (o(), p(f, {
47
48
  key: 1,
@@ -53,5 +54,5 @@ const B = ["data-disabled"], $ = { class: "flex flex-col flex-1 min-w-0" }, C =
53
54
  }
54
55
  });
55
56
  export {
56
- V as default
57
+ P as default
57
58
  };
@@ -1,6 +1,6 @@
1
1
  import { IDropdownOptions, IDropdownOption } from '../../types';
2
2
  interface Props {
3
- options?: IDropdownOptions;
3
+ options?: (IDropdownOption | string | number)[];
4
4
  cachedOptions?: IDropdownOptions;
5
5
  selected?: any;
6
6
  selectedIndex?: number | null;
@@ -15,6 +15,7 @@ interface Props {
15
15
  hasMore?: boolean;
16
16
  searchable?: boolean;
17
17
  remote?: boolean;
18
+ debounceTime?: number;
18
19
  direction?: 'ltr' | 'rtl';
19
20
  }
20
21
  declare function __VLS_template(): {
@@ -48,9 +49,8 @@ declare const __VLS_component: import('vue').DefineComponent<Props, {}, {}, {},
48
49
  }>, {
49
50
  class: string;
50
51
  loading: boolean;
51
- direction: "ltr" | "rtl";
52
- options: IDropdownOptions;
53
52
  selectable: boolean;
53
+ options: (IDropdownOption | string | number)[];
54
54
  columns: number | string;
55
55
  selectedIndex: number | null;
56
56
  maxHeight: string;
@@ -58,6 +58,8 @@ declare const __VLS_component: import('vue').DefineComponent<Props, {}, {}, {},
58
58
  hasMore: boolean;
59
59
  searchable: boolean;
60
60
  remote: boolean;
61
+ debounceTime: number;
62
+ direction: "ltr" | "rtl";
61
63
  nestedPosition: any;
62
64
  nestedOffset: [number, number];
63
65
  cachedOptions: IDropdownOptions;
@@ -1,31 +1,31 @@
1
- import { defineComponent as Y, defineAsyncComponent as Z, ref as C, computed as v, watch as T, toRef as ee, onMounted as te, onBeforeUnmount as le, openBlock as o, createElementBlock as c, createVNode as x, createCommentVNode as i, renderSlot as g, unref as n, normalizeStyle as se, normalizeClass as D, toDisplayString as E, createBlock as m, Fragment as N, renderList as oe, withCtx as V, createElementVNode as S, createSlots as ne, mergeProps as re, nextTick as de } from "vue";
2
- import $ from "../Icon.vue.js";
3
- import ce from "../Input.vue.js";
4
- import ae from "./DropdownItem.vue.js";
1
+ import { defineComponent as Z, defineAsyncComponent as ee, ref as j, computed as h, watch as T, onMounted as te, onBeforeUnmount as le, openBlock as n, createElementBlock as d, createVNode as S, createCommentVNode as u, renderSlot as b, unref as o, normalizeStyle as se, normalizeClass as _, toDisplayString as D, createBlock as v, Fragment as E, renderList as ne, withCtx as N, createElementVNode as $, createSlots as oe, mergeProps as re, nextTick as ae } from "vue";
2
+ import I from "../Icon.vue.js";
3
+ import de from "../Input.vue.js";
4
+ import ce from "./DropdownItem.vue.js";
5
5
  import ie from "./DropdownBooleanItem.vue.js";
6
6
  import ue from "./DropdownGroupedLayout.vue.js";
7
7
  import { useDropdownNavigation as fe } from "./composables/useDropdownNavigation.js";
8
8
  import { useDropdownIds as me } from "./composables/useDropdownIds.js";
9
- import { $t as I } from "../../utils/i18n.js";
10
- const he = ["dir"], ye = {
9
+ import { $t as M } from "../../utils/i18n.js";
10
+ const he = ["dir"], ve = {
11
11
  key: 0,
12
- class: "bg-body border-b mb-1 z-10 rounded-t-md shrink-0"
13
- }, ve = {
12
+ class: "bg-body border-b z-10 rounded-t-md shrink-0"
13
+ }, ye = {
14
14
  key: 1,
15
15
  class: "shrink-0"
16
16
  }, ge = {
17
17
  key: 0,
18
18
  class: "px-2 py-6 text-center text-sm text-muted-foreground"
19
- }, ke = {
19
+ }, be = {
20
20
  key: 0,
21
21
  class: "h-px bg-border my-1 mx-1"
22
- }, be = ["onMouseenter"], we = { class: "flex items-center gap-2 flex-1 min-w-0" }, pe = { class: "truncate" }, xe = {
22
+ }, ke = ["onMouseenter"], we = { class: "flex items-center gap-2 flex-1 min-w-0" }, pe = { class: "truncate" }, xe = {
23
23
  key: 3,
24
24
  class: "flex justify-center py-2"
25
25
  }, Se = {
26
26
  key: 3,
27
- class: "shrink-0 border-t mt-1 pt-1"
28
- }, Ne = /* @__PURE__ */ Y({
27
+ class: "shrink-0"
28
+ }, De = /* @__PURE__ */ Z({
29
29
  __name: "DropdownMenu",
30
30
  props: {
31
31
  options: { default: () => [] },
@@ -43,47 +43,47 @@ const he = ["dir"], ye = {
43
43
  hasMore: { type: Boolean, default: !1 },
44
44
  searchable: { type: Boolean, default: !0 },
45
45
  remote: { type: Boolean, default: !1 },
46
+ debounceTime: { default: 300 },
46
47
  direction: { default: "ltr" }
47
48
  },
48
49
  emits: ["select", "close", "load-more", "search"],
49
- setup(r, { emit: j }) {
50
- const P = Z(() => import("./Dropdown.vue2.js")), t = r, u = j, M = C(null), f = C(""), { getMenuId: _, getAllRecursiveIds: H } = me(), R = v(() => {
51
- const e = I("vlite.dropdown.empty");
50
+ setup(r, { emit: V }) {
51
+ const P = ee(() => import("./Dropdown.vue2.js")), t = r, f = V, O = j(null), m = j(""), { getMenuId: z, getAllRecursiveIds: H } = me(), A = h(() => {
52
+ const e = M("vlite.dropdown.empty");
52
53
  return e !== "vlite.dropdown.empty" ? e : "No options found";
53
- }), z = v(() => {
54
- const e = I("vlite.dropdown.search");
54
+ }), L = h(() => {
55
+ const e = M("vlite.dropdown.search");
55
56
  return e !== "vlite.dropdown.search" ? e : "Search...";
56
- }), A = v(() => t.remote ? t.searchable : t.searchable && (t.options?.length || 0) > 9);
57
+ }), c = h(() => t.options ? t.options.map((e) => typeof e == "string" || typeof e == "number" ? { label: String(e), value: String(e) } : e) : []), R = h(() => t.remote ? t.searchable : t.searchable && (c.value.length || 0) > 9);
57
58
  let k = null;
58
- T(f, (e) => {
59
+ T(m, (e) => {
59
60
  t.remote && (k && clearTimeout(k), k = setTimeout(() => {
60
- e && u("search", e);
61
- }, 100));
61
+ e !== void 0 && f("search", e);
62
+ }, t.debounceTime));
62
63
  });
63
- const L = (e) => {
64
+ const F = (e) => {
64
65
  const s = e.target;
65
- s.scrollTop + s.clientHeight >= s.scrollHeight - 50 && t.hasMore && !t.loading && u("load-more");
66
- }, b = (e, s) => {
67
- e.disabled || u("select", e);
66
+ s.scrollTop + s.clientHeight >= s.scrollHeight - 50 && t.hasMore && !t.loading && f("load-more");
67
+ }, w = (e, s) => {
68
+ e.disabled || f("select", e);
68
69
  }, {
69
- focusedIndex: h,
70
- isKeyboardMode: w,
71
- filteredOptions: F,
72
- // rename
73
- handleKeyDown: O,
74
- handleMouseMove: B,
75
- onMouseEnterItem: p,
76
- scrollToIndex: K
70
+ focusedIndex: y,
71
+ isKeyboardMode: p,
72
+ filteredOptions: K,
73
+ handleKeyDown: B,
74
+ handleMouseMove: C,
75
+ onMouseEnterItem: x,
76
+ scrollToIndex: U
77
77
  } = fe({
78
- options: ee(t, "options"),
79
- searchQuery: f,
80
- containerRef: M,
81
- emit: (e, ...s) => u(e, ...s),
82
- handleSelect: (e, s) => b(e)
83
- }), y = v(() => t.remote ? f.value ? t.options : t.cachedOptions.length ? t.cachedOptions : t.options : F.value), U = (e) => {
78
+ options: c,
79
+ searchQuery: m,
80
+ containerRef: O,
81
+ emit: (e, ...s) => f(e, ...s),
82
+ handleSelect: (e, s) => w(e)
83
+ }), g = h(() => t.remote ? m.value ? c.value : t.cachedOptions.length ? t.cachedOptions : c.value : K.value), q = (e) => {
84
84
  if (!(!t.selected || typeof t.selected != "object") && e.key && e.key in t.selected)
85
85
  return t.selected[e.key];
86
- }, q = (e) => e.disabled ? !1 : Array.isArray(t.selected) ? t.selected.includes(e.value) : t.selected && typeof t.selected == "object" && e.key ? t.selected[e.key] === e.value : t.selected === e.value, G = (e) => !e.key || !t.selected || typeof t.selected != "object" ? !1 : !!t.selected[e.key], J = (e, s) => {
86
+ }, G = (e) => e.disabled ? !1 : Array.isArray(t.selected) ? t.selected.includes(e.value) : t.selected && typeof t.selected == "object" && e.key ? t.selected[e.key] === e.value : t.selected === e.value, J = (e) => !e.key || !t.selected || typeof t.selected != "object" ? !1 : !!t.selected[e.key], Q = (e, s) => {
87
87
  if (!s.key) return;
88
88
  const l = {
89
89
  label: s.label,
@@ -91,155 +91,158 @@ const he = ["dir"], ye = {
91
91
  key: s.key,
92
92
  data: s.data
93
93
  };
94
- u("select", l);
95
- }, Q = (e, s) => {
94
+ f("select", l);
95
+ }, W = (e, s) => {
96
96
  let l = s.value;
97
97
  e.key && (l = { [e.key]: l });
98
- const d = {
98
+ const a = {
99
99
  label: e.label,
100
100
  value: l,
101
101
  data: s.data,
102
102
  key: e.key
103
103
  };
104
- u("select", d);
105
- }, W = async () => {
106
- await de();
104
+ f("select", a);
105
+ }, X = async () => {
106
+ await ae();
107
107
  let e = -1;
108
- t.layout !== "grouped" && (t.selectedIndex !== null && t.selectedIndex >= 0 ? e = t.selectedIndex : t.selected !== void 0 && typeof t.selected != "object" && (e = t.options.findIndex((s) => s.value === t.selected)), e !== -1 && K(e));
108
+ t.layout !== "grouped" && (t.selectedIndex !== null && t.selectedIndex >= 0 ? e = t.selectedIndex : t.selected !== void 0 && typeof t.selected != "object" && (e = c.value.findIndex((s) => s.value === t.selected)), e !== -1 && U(e));
109
109
  };
110
110
  T(
111
- () => y.value,
111
+ () => g.value,
112
112
  () => {
113
- h.value = -1;
113
+ y.value = -1;
114
114
  }
115
115
  ), te(() => {
116
- W(), window.addEventListener("keydown", O);
116
+ X(), window.addEventListener("keydown", B);
117
117
  }), le(() => {
118
- window.removeEventListener("keydown", O);
118
+ window.removeEventListener("keydown", B);
119
119
  });
120
- const X = (e) => e.labelI18n ? I(e.labelI18n) : e.label;
121
- return (e, s) => (o(), c("div", {
120
+ const Y = (e) => e.labelI18n ? M(e.labelI18n) : e.label;
121
+ return (e, s) => (n(), d("div", {
122
122
  class: "dropdown-menu w-full min-w-[150px] flex flex-col",
123
123
  dir: r.direction
124
124
  }, [
125
- A.value ? (o(), c("div", ye, [
126
- x(ce, {
127
- modelValue: f.value,
128
- "onUpdate:modelValue": s[0] || (s[0] = (l) => f.value = l),
129
- placeholder: z.value,
125
+ R.value ? (n(), d("div", ve, [
126
+ S(de, {
127
+ modelValue: m.value,
128
+ "onUpdate:modelValue": s[0] || (s[0] = (l) => m.value = l),
129
+ placeholder: L.value,
130
130
  icon: "lucide:search",
131
131
  size: "sm",
132
132
  class: "font-medium!",
133
+ "input-class": "-ml-1",
133
134
  variant: "transparent",
135
+ "icon-class": "h-3.5! w-3.5!",
134
136
  "show-clear-button": !1
135
137
  }, null, 8, ["modelValue", "placeholder"])
136
- ])) : i("", !0),
137
- e.$slots.header ? (o(), c("div", ve, [
138
- g(e.$slots, "header")
139
- ])) : i("", !0),
140
- t?.options.length > 0 || e.$slots.menu ? (o(), c("div", {
138
+ ])) : u("", !0),
139
+ e.$slots.header ? (n(), d("div", ye, [
140
+ b(e.$slots, "header")
141
+ ])) : u("", !0),
142
+ c.value.length > 0 || e.$slots.menu ? (n(), d("div", {
141
143
  key: 2,
142
144
  ref_key: "containerRef",
143
- ref: M,
145
+ ref: O,
144
146
  tabindex: "0",
145
147
  role: "menu",
146
- class: D([
148
+ class: _([
147
149
  "w-full p-1 space-y-0.5 overflow-y-auto overflow-x-hidden focus:outline-none flex-1",
148
150
  t.class
149
151
  ]),
150
152
  style: se({ maxHeight: t.maxHeight }),
151
153
  onMousemove: s[1] || (s[1] = //@ts-ignore
152
- (...l) => n(B) && n(B)(...l)),
153
- onScroll: L
154
+ (...l) => o(C) && o(C)(...l)),
155
+ onScroll: F
154
156
  }, [
155
- y.value.length === 0 && r.options?.length > 0 && !r.loading ? (o(), c("div", ge, E(R.value), 1)) : i("", !0),
156
- r.layout === "grouped" ? (o(), m(ue, {
157
+ g.value.length === 0 && c.value.length > 0 && !r.loading ? (n(), d("div", ge, D(A.value), 1)) : u("", !0),
158
+ r.layout === "grouped" ? (n(), v(ue, {
157
159
  key: 1,
158
- options: y.value,
160
+ options: g.value,
159
161
  selected: r.selected,
160
162
  selectable: r.selectable,
161
163
  columns: r.columns,
162
- onSelect: b
163
- }, null, 8, ["options", "selected", "selectable", "columns"])) : (o(!0), c(N, { key: 2 }, oe(y.value, (l, d) => (o(), c(N, { key: d }, [
164
- l.label === "---" ? (o(), c("div", ke)) : l.data?.isBoolean ? (o(), m(ie, {
164
+ onSelect: w
165
+ }, null, 8, ["options", "selected", "selectable", "columns"])) : (n(!0), d(E, { key: 2 }, ne(g.value, (l, a) => (n(), d(E, { key: a }, [
166
+ l.label === "---" ? (n(), d("div", be)) : l.data?.isBoolean ? (n(), v(ie, {
165
167
  key: 1,
166
168
  option: l,
167
- value: G(l),
168
- focused: n(w) && n(h) === d,
169
- onChange: J,
170
- onMouseenter: (a) => n(p)(d)
171
- }, null, 8, ["option", "value", "focused", "onMouseenter"])) : l.children && l.children.length > 0 ? (o(), m(n(P), {
169
+ value: J(l),
170
+ focused: o(p) && o(y) === a,
171
+ onChange: Q,
172
+ onMouseenter: (i) => o(x)(a)
173
+ }, null, 8, ["option", "value", "focused", "onMouseenter"])) : l.children && l.children.length > 0 ? (n(), v(o(P), {
172
174
  key: 2,
173
175
  position: l.position || t.nestedPosition,
174
176
  offset: l.offset || t.nestedOffset,
175
177
  class: "w-full",
176
178
  options: l.children,
177
- selected: U(l),
178
- menuId: n(_)(l),
179
+ selected: q(l),
180
+ menuId: o(z)(l),
179
181
  nestedPosition: t.nestedPosition,
180
182
  nestedOffset: t.nestedOffset,
181
183
  selectable: t.selectable,
182
- ignoreClickOutside: n(H)(l.children),
184
+ ignoreClickOutside: o(H)(l.children),
183
185
  direction: r.direction,
184
- onOnSelect: (a) => Q(l, a)
186
+ onOnSelect: (i) => W(l, i)
185
187
  }, {
186
- trigger: V(() => [
187
- S("div", {
188
+ trigger: N(() => [
189
+ $("div", {
188
190
  "data-dropdown-item": "",
189
- class: D(["relative flex cursor-pointer select-none items-center rounded-sm px-2 py-1.5 text-sm font-medium outline-none transition-colors justify-between w-full", [
190
- n(w) && n(h) === d ? "bg-accent text-accent-foreground" : "hover:bg-accent hover:text-accent-foreground",
191
+ class: _(["relative flex cursor-pointer select-none items-center rounded-sm px-2 py-1.5 text-sm font-medium outline-none transition-colors justify-between w-full", [
192
+ o(p) && o(y) === a ? "bg-accent text-accent-foreground" : "hover:bg-accent hover:text-accent-foreground",
191
193
  l.disabled ? "opacity-50 cursor-not-allowed" : ""
192
194
  ]]),
193
- onMouseenter: (a) => n(p)(d)
195
+ onMouseenter: (i) => o(x)(a)
194
196
  }, [
195
- S("div", we, [
196
- l.icon ? (o(), m($, {
197
+ $("div", we, [
198
+ l.icon || l.emoji ? (n(), v(I, {
197
199
  key: 0,
198
200
  icon: l.icon,
201
+ emoji: l.emoji,
199
202
  class: "mr-2 h-4 w-4 shrink-0 mt-0.5"
200
- }, null, 8, ["icon"])) : i("", !0),
201
- S("span", pe, E(X(l)), 1)
203
+ }, null, 8, ["icon", "emoji"])) : u("", !0),
204
+ $("span", pe, D(Y(l)), 1)
202
205
  ]),
203
- x($, {
206
+ S(I, {
204
207
  icon: r.direction === "rtl" ? "lucide:chevron-left" : "lucide:chevron-right",
205
208
  class: "h-4 w-4 text-muted-foreground shrink-0 ml-2"
206
209
  }, null, 8, ["icon"])
207
- ], 42, be)
210
+ ], 42, ke)
208
211
  ]),
209
212
  _: 2
210
- }, 1032, ["position", "offset", "options", "selected", "menuId", "nestedPosition", "nestedOffset", "selectable", "ignoreClickOutside", "direction", "onOnSelect"])) : (o(), m(ae, {
213
+ }, 1032, ["position", "offset", "options", "selected", "menuId", "nestedPosition", "nestedOffset", "selectable", "ignoreClickOutside", "direction", "onOnSelect"])) : (n(), v(ce, {
211
214
  key: 3,
212
215
  option: l,
213
- index: d,
214
- selected: q(l),
215
- focused: n(w) && n(h) === d,
216
+ index: a,
217
+ selected: G(l),
218
+ focused: o(p) && o(y) === a,
216
219
  selectable: r.selectable,
217
- onClick: (a) => b(l),
218
- onMouseenter: (a) => n(p)(d)
219
- }, ne({ _: 2 }, [
220
+ onClick: (i) => w(l),
221
+ onMouseenter: (i) => o(x)(a)
222
+ }, oe({ _: 2 }, [
220
223
  e.$slots.item ? {
221
224
  name: "default",
222
- fn: V((a) => [
223
- g(e.$slots, "item", re({ ref_for: !0 }, a))
225
+ fn: N((i) => [
226
+ b(e.$slots, "item", re({ ref_for: !0 }, i))
224
227
  ]),
225
228
  key: "0"
226
229
  } : void 0
227
230
  ]), 1032, ["option", "index", "selected", "focused", "selectable", "onClick", "onMouseenter"]))
228
231
  ], 64))), 128)),
229
- r.loading ? (o(), c("div", xe, [
230
- x($, {
232
+ r.loading ? (n(), d("div", xe, [
233
+ S(I, {
231
234
  icon: "lucide:loader-2",
232
235
  class: "w-4 h-4 animate-spin text-muted-foreground"
233
236
  })
234
- ])) : i("", !0),
235
- g(e.$slots, "menu")
236
- ], 38)) : i("", !0),
237
- e.$slots.footer ? (o(), c("div", Se, [
238
- g(e.$slots, "footer")
239
- ])) : i("", !0)
237
+ ])) : u("", !0),
238
+ b(e.$slots, "menu")
239
+ ], 38)) : u("", !0),
240
+ e.$slots.footer ? (n(), d("div", Se, [
241
+ b(e.$slots, "footer")
242
+ ])) : u("", !0)
240
243
  ], 8, he));
241
244
  }
242
245
  });
243
246
  export {
244
- Ne as default
247
+ De as default
245
248
  };
@@ -1,3 +1,4 @@
1
+ import { ButtonProps } from '../../types';
1
2
  interface Props {
2
3
  selectedLabel?: string;
3
4
  placeholder?: string;
@@ -5,6 +6,7 @@ interface Props {
5
6
  disabled?: boolean;
6
7
  className?: string;
7
8
  direction?: 'ltr' | 'rtl';
9
+ triggerProps?: ButtonProps;
8
10
  }
9
11
  declare const _default: import('vue').DefineComponent<Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<Props> & Readonly<{}>, {
10
12
  disabled: boolean;