pxd 0.1.2 → 0.1.3

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 (322) hide show
  1. package/dist/components/_internal/calendar-day.vue +19 -19
  2. package/dist/components/_internal/dismiss-container.d.vue.ts +1 -1
  3. package/dist/components/_internal/dismiss-container.vue +19 -19
  4. package/dist/components/_internal/loading-mask.vue +9 -1
  5. package/dist/components/_internal/mention-editor.d.vue.ts +1 -1
  6. package/dist/components/_internal/mention-editor.vue +1 -1
  7. package/dist/components/_internal/popover-arrow.d.vue.ts +1 -1
  8. package/dist/components/_internal/popover-arrow.vue +1 -1
  9. package/dist/components/{steps → _internal}/step-item.d.vue.ts +1 -1
  10. package/dist/components/{steps → _internal}/step-item.vue +1 -1
  11. package/dist/components/_internal/tree-node.d.vue.ts +20 -20
  12. package/dist/components/_internal/tree-node.vue +53 -45
  13. package/dist/components/active-graph/index.d.vue.ts +2 -2
  14. package/dist/components/approval-card/index.d.vue.ts +1 -1
  15. package/dist/components/approval-card/index.vue +34 -17
  16. package/dist/components/approval-card/types.d.ts +1 -1
  17. package/dist/components/avatar/index.d.vue.ts +2 -2
  18. package/dist/components/avatar/index.vue +1 -1
  19. package/dist/components/backtop/index.d.vue.ts +3 -3
  20. package/dist/components/backtop/index.vue +17 -17
  21. package/dist/components/backtop/types.d.ts +1 -1
  22. package/dist/components/badge/index.d.vue.ts +3 -3
  23. package/dist/components/badge/index.vue +43 -43
  24. package/dist/components/badge/types.d.ts +1 -1
  25. package/dist/components/book/types.d.ts +1 -1
  26. package/dist/components/border-beam/index.vue +1 -1
  27. package/dist/components/border-beam/types.d.ts +1 -1
  28. package/dist/components/bubble/index.vue +1 -1
  29. package/dist/components/bubble-group/index.d.vue.ts +4 -4
  30. package/dist/components/button/index.d.vue.ts +5 -5
  31. package/dist/components/button/index.vue +13 -13
  32. package/dist/components/button/types.d.ts +1 -1
  33. package/dist/components/button-group/types.d.ts +1 -1
  34. package/dist/components/calendar/index.d.vue.ts +2 -2
  35. package/dist/components/calendar/index.vue +5 -5
  36. package/dist/components/calendar/types.d.ts +1 -1
  37. package/dist/components/card/types.d.ts +1 -1
  38. package/dist/components/carousel/index.d.vue.ts +7 -7
  39. package/dist/components/carousel/index.vue +1 -1
  40. package/dist/components/carousel/types.d.ts +1 -1
  41. package/dist/components/checkbox/index.vue +1 -1
  42. package/dist/components/checkbox/types.d.ts +1 -1
  43. package/dist/components/checkbox-group/index.d.vue.ts +2 -2
  44. package/dist/components/checkbox-group/types.d.ts +1 -1
  45. package/dist/components/chip/index.d.vue.ts +1 -1
  46. package/dist/components/chip/types.d.ts +1 -1
  47. package/dist/components/choicebox/index.d.vue.ts +3 -3
  48. package/dist/components/choicebox/types.d.ts +1 -1
  49. package/dist/components/choicebox-item/index.vue +8 -8
  50. package/dist/components/choicebox-item/types.d.ts +1 -1
  51. package/dist/components/collapse/index.vue +2 -2
  52. package/dist/components/collapse-group/index.vue +1 -1
  53. package/dist/components/collapse-group/types.d.ts +1 -1
  54. package/dist/components/command-menu/index.d.vue.ts +5 -5
  55. package/dist/components/command-menu/index.vue +10 -3
  56. package/dist/components/config-provider/index.d.vue.ts +40 -5
  57. package/dist/components/config-provider/types.d.ts +2 -1
  58. package/dist/components/confirm-popover/index.d.vue.ts +39 -0
  59. package/dist/components/confirm-popover/index.vue +177 -0
  60. package/dist/components/confirm-popover/types.d.ts +23 -0
  61. package/dist/components/copy-button/index.d.vue.ts +2 -6
  62. package/dist/components/copy-button/index.vue +4 -6
  63. package/dist/components/dash-line/index.d.vue.ts +1 -1
  64. package/dist/components/dash-line/index.vue +8 -8
  65. package/dist/components/dash-line/types.d.ts +1 -1
  66. package/dist/components/date-picker/index.d.vue.ts +1 -1
  67. package/dist/components/date-picker/index.vue +3 -3
  68. package/dist/components/date-picker/types.d.ts +1 -1
  69. package/dist/components/drawer/index.d.vue.ts +7 -7
  70. package/dist/components/drawer/index.vue +30 -15
  71. package/dist/components/drawer/types.d.ts +2 -2
  72. package/dist/components/effort-slider/index.vue +12 -18
  73. package/dist/components/effort-slider/types.d.ts +1 -1
  74. package/dist/components/ellipsis-text/index.d.vue.ts +2 -2
  75. package/dist/components/ellipsis-text/index.vue +75 -75
  76. package/dist/components/error/types.d.ts +1 -1
  77. package/dist/components/fader/index.vue +2 -2
  78. package/dist/components/fader/types.d.ts +1 -1
  79. package/dist/components/gauge/index.vue +2 -2
  80. package/dist/components/gauge/types.d.ts +1 -1
  81. package/dist/components/grid/types.d.ts +1 -1
  82. package/dist/components/grid-item/types.d.ts +1 -1
  83. package/dist/components/hint/index.d.vue.ts +32 -0
  84. package/dist/components/hint/index.vue +239 -0
  85. package/dist/components/hint/types.d.ts +17 -0
  86. package/dist/components/hold-button/index.d.vue.ts +4 -4
  87. package/dist/components/hold-button/index.vue +10 -10
  88. package/dist/components/index.d.ts +4 -0
  89. package/dist/components/index.js +4 -0
  90. package/dist/components/input/index.d.vue.ts +1 -1
  91. package/dist/components/input/index.vue +14 -7
  92. package/dist/components/input/types.d.ts +1 -1
  93. package/dist/components/intersection-observer/index.vue +3 -3
  94. package/dist/components/kbd/index.vue +2 -2
  95. package/dist/components/kbd/types.d.ts +1 -1
  96. package/dist/components/link-button/index.d.vue.ts +5 -5
  97. package/dist/components/list/index.d.vue.ts +4 -4
  98. package/dist/components/list/index.vue +126 -47
  99. package/dist/components/list/types.d.ts +1 -1
  100. package/dist/components/list-group/types.d.ts +1 -1
  101. package/dist/components/list-item/index.d.vue.ts +2 -2
  102. package/dist/components/list-item/index.vue +26 -8
  103. package/dist/components/loading-bar/index.vue +5 -5
  104. package/dist/components/marching-ants/index.d.vue.ts +2 -2
  105. package/dist/components/marching-ants/index.vue +56 -56
  106. package/dist/components/marching-ants/types.d.ts +1 -1
  107. package/dist/components/marquee/index.d.vue.ts +6 -6
  108. package/dist/components/marquee/index.vue +16 -16
  109. package/dist/components/marquee/types.d.ts +1 -1
  110. package/dist/components/material/index.d.vue.ts +3 -3
  111. package/dist/components/mention/index.d.vue.ts +5 -5
  112. package/dist/components/mention/index.vue +68 -68
  113. package/dist/components/menu/index.d.vue.ts +4 -4
  114. package/dist/components/menu/index.vue +10 -10
  115. package/dist/components/menu/types.d.ts +1 -1
  116. package/dist/components/message/index.d.vue.ts +1 -1
  117. package/dist/components/message/index.vue +19 -25
  118. package/dist/components/message/types.d.ts +1 -1
  119. package/dist/components/message-item/index.vue +2 -6
  120. package/dist/components/modal/index.d.vue.ts +7 -7
  121. package/dist/components/modal/index.vue +26 -11
  122. package/dist/components/modal/types.d.ts +2 -2
  123. package/dist/components/noise-background/types.d.ts +1 -1
  124. package/dist/components/note/index.vue +6 -2
  125. package/dist/components/note/types.d.ts +2 -1
  126. package/dist/components/number-input/index.d.vue.ts +11 -6
  127. package/dist/components/number-input/index.vue +57 -16
  128. package/dist/components/number-input/types.d.ts +2 -1
  129. package/dist/components/overlay/index.d.vue.ts +2 -3
  130. package/dist/components/overlay/index.vue +10 -62
  131. package/dist/components/overlay/types.d.ts +0 -2
  132. package/dist/components/page-number/index.vue +30 -29
  133. package/dist/components/page-number/types.d.ts +1 -1
  134. package/dist/components/pin-input/index.d.vue.ts +1 -1
  135. package/dist/components/pin-input/index.vue +6 -6
  136. package/dist/components/pin-input/types.d.ts +1 -1
  137. package/dist/components/popover/index.vue +49 -21
  138. package/dist/components/popover/types.d.ts +3 -1
  139. package/dist/components/progress/index.d.vue.ts +2 -2
  140. package/dist/components/progress/index.vue +12 -12
  141. package/dist/components/progress/types.d.ts +1 -1
  142. package/dist/components/project-banner/types.d.ts +1 -1
  143. package/dist/components/questionnaire/index.vue +14 -14
  144. package/dist/components/radio/index.vue +1 -1
  145. package/dist/components/radio/types.d.ts +1 -1
  146. package/dist/components/radio-group/index.d.vue.ts +2 -2
  147. package/dist/components/radio-group/types.d.ts +1 -1
  148. package/dist/components/rating/index.vue +28 -28
  149. package/dist/components/rating/types.d.ts +1 -1
  150. package/dist/components/resizable/index.d.vue.ts +1 -0
  151. package/dist/components/resizable/index.vue +130 -195
  152. package/dist/components/resizable/types.d.ts +2 -10
  153. package/dist/components/reveal/index.d.vue.ts +3 -3
  154. package/dist/components/reveal/index.vue +4 -4
  155. package/dist/components/reveal/types.d.ts +1 -1
  156. package/dist/components/rolling-number/index.d.vue.ts +2 -2
  157. package/dist/components/rolling-number/index.vue +15 -15
  158. package/dist/components/scalable-text/index.vue +9 -9
  159. package/dist/components/scroll-text/index.d.vue.ts +3 -3
  160. package/dist/components/scroll-text/index.vue +6 -6
  161. package/dist/components/scroll-text/types.d.ts +1 -1
  162. package/dist/components/scrollable/types.d.ts +2 -1
  163. package/dist/components/search-input/index.d.vue.ts +5 -5
  164. package/dist/components/search-input/index.vue +2 -1
  165. package/dist/components/select/index.d.vue.ts +12 -9
  166. package/dist/components/select/index.vue +165 -42
  167. package/dist/components/select/types.d.ts +3 -1
  168. package/dist/components/separator/index.d.vue.ts +1 -1
  169. package/dist/components/separator/types.d.ts +1 -1
  170. package/dist/components/skeleton/index.d.vue.ts +1 -1
  171. package/dist/components/skeleton/index.vue +11 -11
  172. package/dist/components/skeleton/types.d.ts +1 -1
  173. package/dist/components/slider/index.d.vue.ts +1 -1
  174. package/dist/components/slider/index.vue +1 -1
  175. package/dist/components/slider/types.d.ts +1 -1
  176. package/dist/components/snippet/index.d.vue.ts +3 -3
  177. package/dist/components/snippet/index.vue +7 -5
  178. package/dist/components/snippet/types.d.ts +1 -1
  179. package/dist/components/spinner/index.vue +5 -1
  180. package/dist/components/spinner-dots/index.d.vue.ts +1 -1
  181. package/dist/components/split-button/index.d.vue.ts +5 -5
  182. package/dist/components/split-button/types.d.ts +1 -1
  183. package/dist/components/stack/index.d.vue.ts +3 -3
  184. package/dist/components/stack/index.vue +28 -29
  185. package/dist/components/stack/types.d.ts +1 -1
  186. package/dist/components/status-dot/types.d.ts +1 -1
  187. package/dist/components/steps/index.d.vue.ts +2 -2
  188. package/dist/components/steps/index.vue +6 -6
  189. package/dist/components/steps/types.d.ts +1 -1
  190. package/dist/components/stick-to-bottom/types.d.ts +1 -1
  191. package/dist/components/swipe-cell/index.d.vue.ts +6 -6
  192. package/dist/components/swipe-cell/index.vue +64 -64
  193. package/dist/components/swipe-cell/types.d.ts +2 -1
  194. package/dist/components/switch/index.vue +1 -1
  195. package/dist/components/switch/types.d.ts +1 -1
  196. package/dist/components/switch-item/index.vue +1 -1
  197. package/dist/components/switch-item/types.d.ts +1 -1
  198. package/dist/components/tabs/index.d.vue.ts +1 -1
  199. package/dist/components/tabs/index.vue +48 -51
  200. package/dist/components/tabs/types.d.ts +1 -1
  201. package/dist/components/teleport/index.vue +2 -2
  202. package/dist/components/text/index.d.vue.ts +3 -3
  203. package/dist/components/text/index.vue +11 -11
  204. package/dist/components/text/types.d.ts +1 -1
  205. package/dist/components/textarea/index.vue +1 -1
  206. package/dist/components/textarea/types.d.ts +1 -1
  207. package/dist/components/theme-switcher/index.d.vue.ts +3 -2
  208. package/dist/components/theme-switcher/index.vue +15 -7
  209. package/dist/components/theme-switcher/types.d.ts +2 -2
  210. package/dist/components/time-ago/index.d.vue.ts +6 -0
  211. package/dist/components/time-ago/index.vue +143 -0
  212. package/dist/components/time-ago/types.d.ts +4 -0
  213. package/dist/components/time-picker/index.d.vue.ts +1 -1
  214. package/dist/components/time-picker/index.vue +7 -7
  215. package/dist/components/time-picker/types.d.ts +1 -1
  216. package/dist/components/toc/index.d.vue.ts +2 -2
  217. package/dist/components/toc/index.vue +1 -1
  218. package/dist/components/todo-list/index.d.vue.ts +4 -4
  219. package/dist/components/todo-list/index.vue +15 -15
  220. package/dist/components/todo-list/types.d.ts +1 -1
  221. package/dist/components/toggle/index.vue +3 -3
  222. package/dist/components/toggle/types.d.ts +1 -1
  223. package/dist/components/toggle-button/index.vue +14 -11
  224. package/dist/components/toggle-button/types.d.ts +2 -2
  225. package/dist/components/toggle-button-group/index.d.vue.ts +3 -3
  226. package/dist/components/toggle-button-group/index.vue +2 -2
  227. package/dist/components/toggle-button-group/types.d.ts +2 -2
  228. package/dist/components/tool-call/index.vue +5 -5
  229. package/dist/components/tooltip/index.d.vue.ts +4 -5
  230. package/dist/components/tooltip/index.vue +4 -49
  231. package/dist/components/tooltip/types.d.ts +3 -7
  232. package/dist/components/tour/index.d.vue.ts +33 -0
  233. package/dist/components/tour/index.vue +302 -0
  234. package/dist/components/tour/types.d.ts +29 -0
  235. package/dist/components/tree/index.d.vue.ts +24 -28
  236. package/dist/components/tree/index.vue +290 -223
  237. package/dist/components/tree/types.d.ts +38 -13
  238. package/dist/components/virtual-list/index.d.vue.ts +4 -4
  239. package/dist/composables/_internal/use-list-keyboard-controller.js +9 -10
  240. package/dist/composables/_internal/use-list-rows.d.ts +4 -0
  241. package/dist/composables/_internal/use-list-rows.js +12 -4
  242. package/dist/composables/_internal/use-list-selection.d.ts +1 -1
  243. package/dist/composables/_internal/use-lock-scroll.d.ts +8 -1
  244. package/dist/composables/_internal/use-lock-scroll.js +57 -36
  245. package/dist/composables/_internal/use-mention-editor.js +1 -1
  246. package/dist/composables/_internal/use-message-group.d.ts +22 -0
  247. package/dist/composables/_internal/use-message-group.js +143 -0
  248. package/dist/composables/_internal/use-overlay-dialog.js +1 -3
  249. package/dist/composables/_internal/use-overlay-manager.d.ts +4 -1
  250. package/dist/composables/_internal/use-overlay-manager.js +67 -8
  251. package/dist/composables/_internal/use-swipe-gesture.d.ts +1 -1
  252. package/dist/composables/_internal/use-tour-target.d.ts +29 -0
  253. package/dist/composables/_internal/use-tour-target.js +201 -0
  254. package/dist/composables/_internal/use-tree.d.ts +103 -0
  255. package/dist/composables/_internal/use-tree.js +676 -0
  256. package/dist/composables/_internal/use-word-limit.d.ts +1 -1
  257. package/dist/composables/index.d.ts +1 -0
  258. package/dist/composables/index.js +1 -0
  259. package/dist/composables/use-color-scheme.d.ts +1 -1
  260. package/dist/composables/use-color-scheme.js +7 -6
  261. package/dist/composables/use-delay-destroy.d.ts +1 -1
  262. package/dist/composables/use-document-hidden.d.ts +1 -1
  263. package/dist/composables/use-intersection-observer.d.ts +1 -1
  264. package/dist/composables/use-intersection-observer.js +1 -1
  265. package/dist/composables/{_internal/use-motion-reduce.js → use-motion-reduce.js} +2 -2
  266. package/dist/composables/use-mutation-observer.d.ts +1 -1
  267. package/dist/composables/use-mutation-observer.js +1 -1
  268. package/dist/composables/use-resize-observer.d.ts +1 -1
  269. package/dist/composables/use-resize-observer.js +1 -1
  270. package/dist/composables/use-view-transition.js +1 -0
  271. package/dist/composables/use-virtual-list.d.ts +1 -1
  272. package/dist/constants/tooltip-variants.d.ts +28 -0
  273. package/dist/constants/tooltip-variants.js +27 -0
  274. package/dist/contexts/avatar.js +1 -1
  275. package/dist/contexts/breadcrumb.js +1 -1
  276. package/dist/contexts/button.js +1 -1
  277. package/dist/contexts/checkbox.js +1 -1
  278. package/dist/contexts/choicebox.js +1 -1
  279. package/dist/contexts/collapse.js +1 -1
  280. package/dist/contexts/config-provider.js +1 -1
  281. package/dist/contexts/list.js +1 -1
  282. package/dist/contexts/radio.js +1 -1
  283. package/dist/contexts/switch.js +1 -1
  284. package/dist/contexts/toggle-button.js +1 -1
  285. package/dist/index.d.ts +2 -1
  286. package/dist/locales/en-us.d.ts +35 -0
  287. package/dist/locales/en-us.js +20 -0
  288. package/dist/locales/zh-cn.d.ts +35 -0
  289. package/dist/locales/zh-cn.js +20 -0
  290. package/dist/styles/styles.css +1 -1
  291. package/dist/styles/tw.css +43 -30
  292. package/dist/utils/{context.js → _internal/context.js} +1 -1
  293. package/dist/utils/{observer.d.ts → _internal/observer.d.ts} +1 -1
  294. package/dist/utils/{observer.js → _internal/observer.js} +4 -4
  295. package/dist/{components/swipe-cell/instances.d.ts → utils/_internal/swipe-cell-instances.d.ts} +1 -1
  296. package/dist/utils/event.d.ts +2 -1
  297. package/dist/utils/event.js +3 -0
  298. package/package.json +26 -50
  299. package/volar.d.ts +4 -0
  300. package/dist/components/message/composables/use-group-expand.d.ts +0 -13
  301. package/dist/components/message/composables/use-group-expand.js +0 -50
  302. package/dist/components/message/composables/use-message-timer.d.ts +0 -9
  303. package/dist/components/message/composables/use-message-timer.js +0 -62
  304. package/dist/components/message/composables/use-promise-message.d.ts +0 -4
  305. package/dist/components/message/composables/use-promise-message.js +0 -49
  306. package/dist/components/resizable/utils.d.ts +0 -4
  307. package/dist/components/resizable/utils.js +0 -10
  308. package/dist/composables/_internal/use-tree-drag.d.ts +0 -23
  309. package/dist/composables/_internal/use-tree-drag.js +0 -196
  310. package/dist/composables/_internal/use-tree-move.d.ts +0 -20
  311. package/dist/composables/_internal/use-tree-move.js +0 -96
  312. package/dist/composables/_internal/use-tree-rows.d.ts +0 -46
  313. package/dist/composables/_internal/use-tree-rows.js +0 -101
  314. package/dist/composables/_internal/use-tree-selection.d.ts +0 -22
  315. package/dist/composables/_internal/use-tree-selection.js +0 -87
  316. package/dist/styles/source.css +0 -675
  317. package/dist/types/shared/index.d.ts +0 -2
  318. /package/dist/composables/{_internal/use-motion-reduce.d.ts → use-motion-reduce.d.ts} +0 -0
  319. /package/dist/utils/{context.d.ts → _internal/context.d.ts} +0 -0
  320. /package/dist/utils/{mention-html.d.ts → _internal/mention-html.d.ts} +0 -0
  321. /package/dist/utils/{mention-html.js → _internal/mention-html.js} +0 -0
  322. /package/dist/{components/swipe-cell/instances.js → utils/_internal/swipe-cell-instances.js} +0 -0
@@ -1,12 +1,12 @@
1
1
  import type { ScrollTextProps } from './types';
2
- declare var __VLS_9: {};
2
+ declare var __VLS_7: {};
3
3
  type __VLS_Slots = {} & {
4
- default?: (props: typeof __VLS_9) => any;
4
+ default?: (props: typeof __VLS_7) => any;
5
5
  };
6
6
  declare const __VLS_base: import("vue").DefineComponent<ScrollTextProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ScrollTextProps> & Readonly<{}>, {
7
7
  text: string;
8
8
  as: import("../../types/shared/props.js").ComponentAs;
9
- speed: number | string;
9
+ speed: string | number;
10
10
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
11
11
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
12
12
  declare const _default: typeof __VLS_export;
@@ -24,13 +24,16 @@ const props = defineProps({
24
24
  default: 40
25
25
  }
26
26
  });
27
- const wrapRef = shallowRef();
28
- const contentRef = shallowRef();
29
- const contentStyle = shallowRef();
30
27
  let wrapWidth = 0;
31
28
  let contentWidth = 0;
32
29
  let appliedSpeed = 0;
33
30
  let initialRafId = 0;
31
+ const wrapRef = shallowRef();
32
+ const contentRef = shallowRef();
33
+ const contentStyle = shallowRef();
34
+ useResizeObserver(wrapRef, () => {
35
+ syncOverflow(false);
36
+ });
34
37
  function toSpeed(value) {
35
38
  const n = Number(value);
36
39
  return Number.isFinite(n) && n > 0 ? n : 40;
@@ -75,9 +78,6 @@ function syncOverflow(force = false) {
75
78
  watch(() => [props.text, toSpeed(props.speed)], () => {
76
79
  syncOverflow(true);
77
80
  }, { flush: "post" });
78
- useResizeObserver(wrapRef, () => {
79
- syncOverflow(false);
80
- });
81
81
  // The first measurement is deferred to a rAF instead of running synchronously in
82
82
  // the mounted queue, where a batch of instances reading layout forces one reflow
83
83
  // per item. Inside a single rAF the browser resolves layout once and serves every
@@ -1,4 +1,4 @@
1
- import type { ComponentAs } from '../../types/shared'
1
+ import type { ComponentAs } from '../../types/shared/props'
2
2
 
3
3
  export interface ScrollTextProps {
4
4
  as?: ComponentAs
@@ -1,4 +1,5 @@
1
- import type { ComponentClass, ComponentDirection, Nullable } from '../../types/shared'
1
+ import type { ComponentClass, ComponentDirection } from '../../types/shared/props'
2
+ import type { Nullable } from '../../types/shared/utils'
2
3
  import type { CSSProperties } from 'vue'
3
4
 
4
5
  export interface ScrollableProps {
@@ -1,9 +1,9 @@
1
1
  import type { SearchInputProps } from './types';
2
- declare var __VLS_17: {}, __VLS_25: {};
2
+ declare var __VLS_15: {}, __VLS_23: {};
3
3
  type __VLS_Slots = {} & {
4
- prefix?: (props: typeof __VLS_17) => any;
4
+ prefix?: (props: typeof __VLS_15) => any;
5
5
  } & {
6
- suffix?: (props: typeof __VLS_25) => any;
6
+ suffix?: (props: typeof __VLS_23) => any;
7
7
  };
8
8
  declare const __VLS_base: import("vue").DefineComponent<SearchInputProps, {
9
9
  $: import("vue").ComponentInternalInstance;
@@ -83,7 +83,7 @@ declare const __VLS_base: import("vue").DefineComponent<SearchInputProps, {
83
83
  focus: (args_0: FocusEvent) => any;
84
84
  keydown: (args_0: KeyboardEvent) => any;
85
85
  }, string, {
86
- align: "left" | "center" | "right";
86
+ align: "center" | "left" | "right";
87
87
  trimOverflow: boolean;
88
88
  wordLimitPosition: "inside" | "outside";
89
89
  clearOnPressEscape: boolean;
@@ -110,7 +110,7 @@ declare const __VLS_base: import("vue").DefineComponent<SearchInputProps, {
110
110
  $nextTick: typeof import("vue").nextTick;
111
111
  $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import("@vue/reactivity").OnCleanup]) => any : (...args: [any, any, import("@vue/reactivity").OnCleanup]) => any, options?: import("vue").WatchOptions): import("vue").WatchStopHandle;
112
112
  } & Readonly<{
113
- align: "left" | "center" | "right";
113
+ align: "center" | "left" | "right";
114
114
  trimOverflow: boolean;
115
115
  wordLimitPosition: "inside" | "outside";
116
116
  clearOnPressEscape: boolean;
@@ -3,6 +3,7 @@ import LoaderCircleIcon from "@gdsicon/vue/loader-circle";
3
3
  import MagnifyingGlassIcon from "@gdsicon/vue/magnifying-glass";
4
4
  import { shallowRef } from "vue";
5
5
  import { useForwardRefExpose } from "../../composables/_internal/use-forward-ref-expose.js";
6
+ import { isCompositionKeydown } from "../../utils/event.js";
6
7
  import PInput from "../input/index.vue";
7
8
  defineOptions({
8
9
  name: "PSearchInput",
@@ -19,7 +20,7 @@ const props = defineProps({ loading: {
19
20
  const emits = defineEmits(["search"]);
20
21
  const inputRef = shallowRef();
21
22
  function onKeydown(event) {
22
- if (event.key !== "Enter" || props.loading) {
23
+ if (event.key !== "Enter" || props.loading || isCompositionKeydown(event)) {
23
24
  return;
24
25
  }
25
26
  const value = event.target.value;
@@ -1,25 +1,28 @@
1
+ import type { ListModelValue } from '../list/types';
1
2
  import type { SelectProps } from './types';
2
3
  declare var __VLS_16: {}, __VLS_18: {
3
4
  label: string;
4
- }, __VLS_27: {
5
- item: import("../list/types.js").ListOption;
5
+ }, __VLS_36: {
6
+ item: import("../list/types").ListOption;
6
7
  index: number;
7
- group: import("../list/types.js").ListOptionGroup | undefined;
8
+ group: import("../list/types").ListOptionGroup | undefined;
8
9
  groupIndex: number | undefined;
9
- };
10
+ }, __VLS_39: {};
10
11
  type __VLS_Slots = {} & {
11
12
  prefix?: (props: typeof __VLS_16) => any;
12
13
  } & {
13
14
  default?: (props: typeof __VLS_18) => any;
14
15
  } & {
15
- item?: (props: typeof __VLS_27) => any;
16
+ item?: (props: typeof __VLS_36) => any;
17
+ } & {
18
+ empty?: (props: typeof __VLS_39) => any;
16
19
  };
17
20
  declare const __VLS_base: import("vue").DefineComponent<SelectProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
- change: (args_0: import("../list/types.js").ListModelValue) => any;
19
- "update:modelValue": (args_0: import("../list/types.js").ListModelValue) => any;
21
+ change: (args_0: ListModelValue) => any;
22
+ "update:modelValue": (args_0: ListModelValue) => any;
20
23
  }, string, import("vue").PublicProps, Readonly<SelectProps> & Readonly<{
21
- onChange?: ((args_0: import("../list/types.js").ListModelValue) => any) | undefined;
22
- "onUpdate:modelValue"?: ((args_0: import("../list/types.js").ListModelValue) => any) | undefined;
24
+ onChange?: ((args_0: ListModelValue) => any) | undefined;
25
+ "onUpdate:modelValue"?: ((args_0: ListModelValue) => any) | undefined;
23
26
  }>, {
24
27
  suffixIcon: boolean;
25
28
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
@@ -1,11 +1,17 @@
1
1
  <script setup>
2
2
  import ChevronDownIcon from "@gdsicon/vue/chevron-down";
3
- import { computed } from "vue";
4
- import { useModelValue } from "../../composables/_internal/use-model-value.js";
3
+ import { computed, nextTick, shallowRef, watch } from "vue";
4
+ import { useListFilter } from "../../composables/_internal/use-list-filter.js";
5
+ import { useListKeyboardController } from "../../composables/_internal/use-list-keyboard-controller.js";
6
+ import { useListSelection } from "../../composables/_internal/use-list-selection.js";
7
+ import { usePopoverResponsive } from "../../composables/_internal/use-popover-responsive.js";
5
8
  import { useSelectedListItems } from "../../composables/_internal/use-selected-list-item.js";
6
9
  import { useConfigProvider } from "../../contexts/config-provider.js";
10
+ import { getUniqueId } from "../../utils/helper.js";
11
+ import { isNil } from "../../utils/is.js";
7
12
  import PButton from "../button/index.vue";
8
- import PMenu from "../menu/index.vue";
13
+ import PList from "../list/index.vue";
14
+ import PPopover from "../popover/index.vue";
9
15
  defineOptions({
10
16
  name: "PSelect",
11
17
  inheritAttrs: false,
@@ -61,6 +67,14 @@ const props = defineProps({
61
67
  type: String,
62
68
  required: false
63
69
  },
70
+ filterable: {
71
+ type: Boolean,
72
+ required: false
73
+ },
74
+ filterPlaceholder: {
75
+ type: String,
76
+ required: false
77
+ },
64
78
  labelFormat: {
65
79
  type: Function,
66
80
  required: false
@@ -71,64 +85,173 @@ const props = defineProps({
71
85
  }
72
86
  });
73
87
  const emits = defineEmits(["change", "update:modelValue"]);
74
- const modelValue = useModelValue(props, emits);
75
- const selectedItems = useSelectedListItems(() => props.options || [], modelValue);
76
- const configProvider = useConfigProvider();
77
- const computedSize = computed(() => props.size || configProvider.size);
88
+ const listId = getUniqueId("select-list");
89
+ const searchInputId = getUniqueId("select-search");
90
+ const FILTERABLE_KEYMAP = {
91
+ ArrowDown: "next",
92
+ ArrowUp: "previous",
93
+ Enter: "activate",
94
+ Home: "first",
95
+ End: "last"
96
+ };
97
+ const DEFAULT_KEYMAP = {
98
+ ...FILTERABLE_KEYMAP,
99
+ " ": "activate"
100
+ };
101
+ const popoverVisible = shallowRef(false);
102
+ const listRef = shallowRef();
103
+ const searchInputRef = shallowRef();
104
+ const filterKeyword = shallowRef("");
105
+ // Resolved from the full options so a selected item that the filter drops still has a label.
106
+ const selectedItems = useSelectedListItems(() => props.options || [], () => props.modelValue);
78
107
  const translatedLabel = computed(() => {
79
108
  if (props.labelFormat) {
80
109
  return props.labelFormat(selectedItems.value);
81
110
  }
82
111
  return selectedItems.value.map((item) => item.label).join(", ");
83
112
  });
113
+ const configProvider = useConfigProvider();
114
+ const computedSize = computed(() => props.size || configProvider.size);
115
+ const { isAdaptive, responsiveClasses } = usePopoverResponsive();
116
+ // Single mode commits on pick and closes; multiple mode stays open and commits `change`
117
+ // once when the popover closes, so a round of toggles is one event.
118
+ const { selected, apply, reset, commit } = useListSelection(props, emits);
119
+ const { onKeydown } = useListKeyboardController({
120
+ enabled: () => popoverVisible.value,
121
+ onCommand: (command) => listRef.value?.dispatch(command) ?? false,
122
+ keymap: () => props.filterable ? FILTERABLE_KEYMAP : DEFAULT_KEYMAP
123
+ });
124
+ const { filteredOptions } = useListFilter(() => props.options ?? [], filterKeyword);
125
+ const listOptions = computed(() => props.filterable ? filteredOptions.value : props.options ?? []);
126
+ function onSearchInput(ev) {
127
+ filterKeyword.value = ev.target.value;
128
+ }
129
+ function onListUpdate(next) {
130
+ if (isNil(next)) {
131
+ return;
132
+ }
133
+ if (apply(next)) {
134
+ popoverVisible.value = false;
135
+ }
136
+ }
137
+ watch(popoverVisible, async (visible) => {
138
+ if (!visible) {
139
+ filterKeyword.value = "";
140
+ commit();
141
+ return;
142
+ }
143
+ reset();
144
+ await nextTick();
145
+ if (props.filterable) {
146
+ searchInputRef.value?.focus({ preventScroll: true });
147
+ return;
148
+ }
149
+ listRef.value?.focus();
150
+ });
151
+ watch(listOptions, async () => {
152
+ await nextTick();
153
+ listRef.value?.setFirstAsActive();
154
+ });
84
155
  </script>
85
156
 
86
157
  <template>
87
- <PMenu
158
+ <PPopover
88
159
  data-select
89
- v-model="modelValue"
160
+ v-model="popoverVisible"
90
161
  class="pxd-select"
91
- :options="options"
162
+ trigger="click"
92
163
  position="bottom"
164
+ :auto-focus-element="filterable"
93
165
  :disabled="disabled"
94
- :multiple="multiple"
95
- :virtual="virtual"
96
- v-bind="$attrs"
166
+ :adaptive="isAdaptive"
167
+ :wrapper-class="responsiveClasses.wrapper"
168
+ :content-class="responsiveClasses.content"
169
+ :lock-scroll-on-visible="isAdaptive"
97
170
  :close-on-press-escape="closeOnPressEscape"
171
+ v-bind="$attrs"
172
+ @wrapper-keydown="onKeydown"
98
173
  >
99
- <template #default="{ popoverVisible }">
100
- <PButton
101
- class="px-1.5 justify-between"
102
- align="left"
103
- full-width
104
- :class="{ 'text-gray-600': !translatedLabel }"
105
- :variant="variant"
106
- :shape="shape"
107
- :size="computedSize"
108
- :disabled="disabled"
174
+ <PButton
175
+ class="px-1.5 justify-between"
176
+ align="left"
177
+ full-width
178
+ :class="{ 'text-gray-600': !translatedLabel }"
179
+ :variant="variant"
180
+ :shape="shape"
181
+ :size="computedSize"
182
+ :disabled="disabled"
183
+ >
184
+ <template v-if="$slots.prefix" #prefix>
185
+ <slot name="prefix" />
186
+ </template>
187
+
188
+ <template v-if="translatedLabel">
189
+ <slot :label="translatedLabel">{{ translatedLabel }}</slot>
190
+ </template>
191
+ <template v-else>
192
+ {{ placeholder }}
193
+ </template>
194
+
195
+ <template v-if="suffixIcon" #suffix>
196
+ <ChevronDownIcon
197
+ class="text-sm me-1.5 text-foreground-secondary motion-safe:transition-transform"
198
+ :class="{ 'rotate-180': popoverVisible }"
199
+ />
200
+ </template>
201
+ </PButton>
202
+
203
+ <template #content>
204
+ <label
205
+ v-if="filterable"
206
+ :for="searchInputId"
207
+ class="px-3 py-2 flex items-center border-b bg-background-100"
109
208
  >
110
- <template v-if="$slots.prefix" #prefix>
111
- <slot name="prefix" />
112
- </template>
209
+ <input
210
+ :id="searchInputId"
211
+ ref="searchInputRef"
212
+ :value="filterKeyword"
213
+ type="text"
214
+ role="combobox"
215
+ autocomplete="off"
216
+ autocorrect="off"
217
+ spellcheck="false"
218
+ aria-autocomplete="list"
219
+ inputmode="search"
220
+ :aria-controls="listId"
221
+ :aria-expanded="popoverVisible"
222
+ :aria-disabled="disabled"
223
+ :placeholder="filterPlaceholder"
224
+ class="pxd-select--search h-7 min-w-0 text-sm flex-1 appearance-none border-none bg-transparent font-inherit text-foreground outline-none"
225
+ @input="onSearchInput"
226
+ @keydown="onKeydown"
227
+ />
228
+ </label>
113
229
 
114
- <template v-if="translatedLabel">
115
- <slot :label="translatedLabel">{{ translatedLabel }}</slot>
116
- </template>
117
- <template v-else>
118
- {{ placeholder }}
230
+ <PList
231
+ :id="listId"
232
+ ref="listRef"
233
+ :model-value="selected"
234
+ :options="listOptions"
235
+ :multiple="multiple"
236
+ :virtual="virtual"
237
+ :loop="!filterable"
238
+ :default-active-index="filterable ? 0 : -1"
239
+ class="max-h-68 min-h-0 flex-1"
240
+ @update:model-value="onListUpdate"
241
+ >
242
+ <template v-if="$slots.item" #item="itemSlotProps">
243
+ <slot name="item" v-bind="itemSlotProps" />
119
244
  </template>
120
245
 
121
- <template v-if="suffixIcon" #suffix>
122
- <ChevronDownIcon
123
- class="text-sm me-1.5 text-foreground-secondary motion-safe:transition-transform"
124
- :class="{ 'rotate-180': popoverVisible }"
125
- />
246
+ <template #empty>
247
+ <slot name="empty">
248
+ <template v-if="filterKeyword">
249
+ {{ configProvider.locale.results.searchText }}
250
+ <span class="whitespace-pre text-foreground">"{{ filterKeyword }}"</span>
251
+ </template>
252
+ </slot>
126
253
  </template>
127
- </PButton>
128
- </template>
129
-
130
- <template v-if="$slots.item" #item="scope">
131
- <slot name="item" v-bind="scope" />
254
+ </PList>
132
255
  </template>
133
- </PMenu>
256
+ </PPopover>
134
257
  </template>
@@ -1,4 +1,4 @@
1
- import type { ComponentSize, ComponentShape } from '../../types/shared'
1
+ import type { ComponentSize, ComponentShape } from '../../types/shared/props'
2
2
  import type { ButtonVariant } from '../button/types'
3
3
  import type { ListModelValue, ListOption, ListOptions } from '../list/types'
4
4
 
@@ -13,6 +13,8 @@ export interface SelectProps {
13
13
  modelValue?: ListModelValue
14
14
  suffixIcon?: boolean
15
15
  placeholder?: string
16
+ filterable?: boolean
17
+ filterPlaceholder?: string
16
18
  labelFormat?: (items: ListOptions) => string
17
19
  closeOnPressEscape?: boolean
18
20
  }
@@ -1,6 +1,6 @@
1
1
  import type { SeparatorProps } from './types';
2
2
  declare const __VLS_export: import("vue").DefineComponent<SeparatorProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<SeparatorProps> & Readonly<{}>, {
3
- direction: import("../../types/shared").ComponentDirection;
3
+ direction: import("../../types/shared/props").ComponentDirection;
4
4
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
5
5
  declare const _default: typeof __VLS_export;
6
6
  export default _default;
@@ -1,4 +1,4 @@
1
- import type { ComponentDirection } from '../../types/shared'
1
+ import type { ComponentDirection } from '../../types/shared/props'
2
2
 
3
3
  export interface SeparatorProps {
4
4
  direction?: ComponentDirection
@@ -4,9 +4,9 @@ type __VLS_Slots = {} & {
4
4
  default?: (props: typeof __VLS_1) => any;
5
5
  };
6
6
  declare const __VLS_base: import("vue").DefineComponent<SkeletonProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<SkeletonProps> & Readonly<{}>, {
7
- loading: boolean;
8
7
  shape: import("../../types/shared/props.js").ComponentShape;
9
8
  height: string | number;
9
+ loading: boolean;
10
10
  animated: boolean;
11
11
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
12
12
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -36,6 +36,17 @@ const props = defineProps({
36
36
  default: "default"
37
37
  }
38
38
  });
39
+ const computedStyle = computed(() => {
40
+ const { width, height, boxHeight } = props;
41
+ const styles = {
42
+ width: getCssUnitValue(width),
43
+ height: getCssUnitValue(height)
44
+ };
45
+ if (boxHeight) {
46
+ styles["margin-bottom"] = getCssUnitValue(increaseWithUnit(boxHeight, -Number(height)));
47
+ }
48
+ return styles;
49
+ });
39
50
  const { attrs, classes } = useTailwindVariant({
40
51
  base: "pxd-skeleton relative block shrink-0 overflow-hidden",
41
52
  variants: {
@@ -52,17 +63,6 @@ const { attrs, classes } = useTailwindVariant({
52
63
  loading: props.loading,
53
64
  animated: props.animated
54
65
  }) });
55
- const computedStyle = computed(() => {
56
- const { width, height, boxHeight } = props;
57
- const styles = {
58
- width: getCssUnitValue(width),
59
- height: getCssUnitValue(height)
60
- };
61
- if (boxHeight) {
62
- styles["margin-bottom"] = getCssUnitValue(increaseWithUnit(boxHeight, -Number(height)));
63
- }
64
- return styles;
65
- });
66
66
  </script>
67
67
 
68
68
  <template>
@@ -1,4 +1,4 @@
1
- import type { ComponentShape } from '../../types/shared'
1
+ import type { ComponentShape } from '../../types/shared/props'
2
2
 
3
3
  export interface SkeletonProps {
4
4
  loading?: boolean
@@ -6,7 +6,7 @@ declare const __VLS_export: import("vue").DefineComponent<SliderProps, {}, {}, {
6
6
  onChange?: ((args_0: NonNullable<number | number[] | null | undefined>) => any) | undefined;
7
7
  "onUpdate:modelValue"?: ((args_0: NonNullable<number | number[] | null | undefined>) => any) | undefined;
8
8
  }>, {
9
- variant: import("../../types/shared/props.js").ComponentVariant | "secondary";
9
+ variant: "secondary" | import("../../types/shared/props.js").ComponentVariant;
10
10
  modelValue: number | number[] | null;
11
11
  max: number;
12
12
  step: number | number[];
@@ -392,7 +392,7 @@ onBeforeUnmount(stopDragging);
392
392
  <span
393
393
  v-for="stop in stopList"
394
394
  :key="stop.value"
395
- class="pxd-slider--stop size-1 pointer-events-none absolute top-1/2 -translate-x-1/2 -translate-y-1/2 rounded-full bg-gray-500"
395
+ class="pxd-slider--stop size-1 pointer-events-none absolute top-1/2 -translate-x-1/2 -translate-y-1/2 rounded-full bg-gray-alpha-200"
396
396
  :style="{ left: `${stop.percentage}%` }"
397
397
  />
398
398
 
@@ -1,4 +1,4 @@
1
- import type { ComponentSize, ComponentVariant } from '../../types/shared'
1
+ import type { ComponentSize, ComponentVariant } from '../../types/shared/props'
2
2
 
3
3
  export interface SliderProps {
4
4
  min?: number
@@ -4,9 +4,9 @@ declare const __VLS_export: import("vue").DefineComponent<SnippetProps, {}, {},
4
4
  }, string, import("vue").PublicProps, Readonly<SnippetProps> & Readonly<{
5
5
  onCopy?: ((args_0: string) => any) | undefined;
6
6
  }>, {
7
- variant: import("../../types/shared/props.js").ComponentVariantWithDefault | "inverted" | "ghost" | "secondary";
8
- prompt: boolean | string;
9
- copyBtn: "always" | "hover" | "hidden";
7
+ variant: "secondary" | "inverted" | import("../../types/shared/props.js").ComponentVariantWithDefault | "ghost";
8
+ prompt: string | boolean;
9
+ copyBtn: "hidden" | "always" | "hover";
10
10
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
11
11
  declare const _default: typeof __VLS_export;
12
12
  export default _default;
@@ -39,9 +39,9 @@ const props = defineProps({
39
39
  }
40
40
  });
41
41
  const emits = defineEmits(["copy"]);
42
- const configProvider = useConfigProvider();
43
42
  const computedTextList = computed(() => toArray(props.text));
44
43
  const copyText = computed(() => computedTextList.value.join("\n"));
44
+ const configProvider = useConfigProvider();
45
45
  const { attrs, classes } = useTailwindVariant({
46
46
  base: "pxd-snippet ps-3 pe-1 gap-4 group/snippet relative flex items-center rounded-lg border tabular-nums",
47
47
  variants: {
@@ -74,11 +74,11 @@ function onCopy(text) {
74
74
 
75
75
  <template>
76
76
  <div data-snippet :class="classes" :data-variant="variant" v-bind="attrs">
77
- <div class="pxd-snippet--container flex-1">
77
+ <div class="pxd-snippet--container min-w-0 flex-1">
78
78
  <pre
79
79
  v-for="(t, i) of computedTextList"
80
80
  :key="i"
81
- class="m-0 p-0 leading-tight"
81
+ class="m-0 p-0 leading-tight break-words whitespace-pre-wrap"
82
82
  :data-prompt="prompt"
83
83
  :class="{ 'before:content-[attr(data-prompt)] before:select-none': prompt }"
84
84
  >{{ t }}</pre>
@@ -86,8 +86,10 @@ function onCopy(text) {
86
86
 
87
87
  <div
88
88
  v-if="copyBtn !== 'hidden'"
89
- class="min-w-5 ms-2 max-sm:opacity-100 relative shrink-0 motion-safe:transition-opacity"
90
- :class="{ 'opacity-0 group-hover/snippet:opacity-100': copyBtn === 'hover' }"
89
+ class="min-w-5 ms-2 max-sm:opacity-100 relative shrink-0 focus-within:opacity-100 motion-safe:transition-opacity"
90
+ :class="{
91
+ 'opacity-0 group-hover/snippet:opacity-100': copyBtn === 'hover'
92
+ }"
91
93
  >
92
94
  <PCopyButton
93
95
  size="sm"
@@ -1,4 +1,4 @@
1
- import type { ComponentSize, ComponentVariantWithDefault } from '../../types/shared'
1
+ import type { ComponentSize, ComponentVariantWithDefault } from '../../types/shared/props'
2
2
 
3
3
  export interface SnippetProps {
4
4
  text?: string | string[] | null
@@ -13,7 +13,7 @@ const OPACITY_STEP = 1 / ITEMS_COUNT;
13
13
  data-spinner
14
14
  aria-hidden="true"
15
15
  aria-label="Loading"
16
- class="pxd-spinner leading-0 transform-origin-center motion-safe:animate-spin pointer-events-none relative inline-block size-em shrink-0 overflow-hidden text-foreground-secondary content-visibility-auto intrinsic-size-auto"
16
+ class="pxd-spinner leading-0 transform-origin-center motion-safe:animate-spin pointer-events-none relative inline-block size-em shrink-0 overflow-hidden content-visibility-auto intrinsic-size-auto"
17
17
  v-bind="$attrs"
18
18
  >
19
19
  <span class="pxd-spinner-container top-0 left-0 absolute size-full">
@@ -33,3 +33,7 @@ const OPACITY_STEP = 1 / ITEMS_COUNT;
33
33
  </span>
34
34
  </span>
35
35
  </template>
36
+
37
+ <style>
38
+ @layer components{[data-spinner]{color:var(--color-foreground-secondary)}}
39
+ </style>
@@ -1,6 +1,6 @@
1
1
  import type { SpinnerDotsProps } from './types';
2
2
  declare const __VLS_export: import("vue").DefineComponent<SpinnerDotsProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<SpinnerDotsProps> & Readonly<{}>, {
3
- variant: `dots${import("./types").Range<10>}`;
3
+ variant: "dots0" | "dots2" | "dots1" | "dots3" | "dots4" | "dots5" | "dots6" | "dots7" | "dots8" | "dots9";
4
4
  interval: number;
5
5
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
6
6
  declare const _default: typeof __VLS_export;
@@ -1,18 +1,18 @@
1
1
  import type { SplitButtonProps } from './types';
2
- declare var __VLS_14: {
2
+ declare var __VLS_13: {
3
3
  data: import("../list/types.js").ListOption;
4
- }, __VLS_22: {}, __VLS_30: {
4
+ }, __VLS_21: {}, __VLS_29: {
5
5
  item: import("../list/types.js").ListOption;
6
6
  index: number;
7
7
  group: import("../list/types.js").ListOptionGroup | undefined;
8
8
  groupIndex: number | undefined;
9
9
  };
10
10
  type __VLS_Slots = {} & {
11
- default?: (props: typeof __VLS_14) => any;
11
+ default?: (props: typeof __VLS_13) => any;
12
12
  } & {
13
- icon?: (props: typeof __VLS_22) => any;
13
+ icon?: (props: typeof __VLS_21) => any;
14
14
  } & {
15
- item?: (props: typeof __VLS_30) => any;
15
+ item?: (props: typeof __VLS_29) => any;
16
16
  };
17
17
  declare const __VLS_base: import("vue").DefineComponent<SplitButtonProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
18
  change: (args_0: import("../list/types.js").ListModelValue) => any;
@@ -1,4 +1,4 @@
1
- import type { ComponentShape, ComponentSizeWithXs } from '../../types/shared'
1
+ import type { ComponentShape, ComponentSizeWithXs } from '../../types/shared/props'
2
2
  import type { ListModelValue, ListOptions } from '../list/types'
3
3
  import { ButtonVariant } from '../button/types'
4
4
 
@@ -1,10 +1,10 @@
1
1
  import type { StackProps } from './types';
2
- declare var __VLS_8: {};
2
+ declare var __VLS_7: {};
3
3
  type __VLS_Slots = {} & {
4
- default?: (props: typeof __VLS_8) => any;
4
+ default?: (props: typeof __VLS_7) => any;
5
5
  };
6
6
  declare const __VLS_base: import("vue").DefineComponent<StackProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<StackProps> & Readonly<{}>, {
7
- as: import("../../types/shared").ComponentAs;
7
+ as: import("../../types/shared/props").ComponentAs;
8
8
  align: import("./types").Align;
9
9
  wrap: boolean;
10
10
  scale: number;