x-next 1.1.0 → 1.3.0

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 (206) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/dist/_hooks/use-form-item.d.ts +5 -0
  3. package/dist/_hooks/use-picker-focus.d.ts +17 -0
  4. package/dist/components/_components/feedback-icon/index.vue.d.ts +4 -4
  5. package/dist/components/_components/picker/input-range.vue.d.ts +10 -6
  6. package/dist/components/_components/picker/input.vue.d.ts +9 -5
  7. package/dist/components/alert/Alert.vue.d.ts +5 -5
  8. package/dist/components/alert/index.d.ts +10 -10
  9. package/dist/components/date-picker/DatePanel.vue.d.ts +5 -0
  10. package/dist/components/date-picker/DatePicker.vue.d.ts +36 -16
  11. package/dist/components/date-picker/index.d.ts +77 -33
  12. package/dist/components/dialog/Dialog.d.ts +1 -1
  13. package/dist/components/dialog/index.d.ts +3 -3
  14. package/dist/components/drawer/index.d.ts +3 -3
  15. package/dist/components/drawer/src/Drawer.vue.d.ts +1 -1
  16. package/dist/components/dropdown/Dropdown.vue.d.ts +30 -4
  17. package/dist/components/dropdown/DropdownButton.vue.d.ts +31 -5
  18. package/dist/components/dropdown/DropdownOption.vue.d.ts +2 -0
  19. package/dist/components/dropdown/DropdownSubmenu.vue.d.ts +162 -5
  20. package/dist/components/dropdown/context.d.ts +14 -1
  21. package/dist/components/dropdown/dropdown-panel.vue.d.ts +7 -1
  22. package/dist/components/dropdown/index.d.ts +610 -28
  23. package/dist/components/dropdown/use-keyboard.d.ts +10 -0
  24. package/dist/components/form/FormItem.vue.d.ts +12 -4
  25. package/dist/components/form/context.d.ts +6 -0
  26. package/dist/components/form/form-item-label.vue.d.ts +4 -4
  27. package/dist/components/form/form-item-message.vue.d.ts +2 -0
  28. package/dist/components/form/index.d.ts +30 -8
  29. package/dist/components/form/interface.d.ts +2 -2
  30. package/dist/components/form-input/InputPassword.vue.d.ts +20 -2
  31. package/dist/components/form-input/index.d.ts +22 -4
  32. package/dist/components/form-select/Select.d.ts +3 -3
  33. package/dist/components/form-select/hooks/use-select.d.ts +2 -1
  34. package/dist/components/form-select/index.d.ts +6 -6
  35. package/dist/components/form-slider/Slider.vue.d.ts +10 -3
  36. package/dist/components/form-slider/index.d.ts +26 -6
  37. package/dist/components/form-slider/slider-button.vue.d.ts +4 -3
  38. package/dist/components/form-switch/Switch.vue.d.ts +2 -1
  39. package/dist/components/form-switch/index.d.ts +5 -2
  40. package/dist/components/form-textarea/Textarea.vue.d.ts +2 -2
  41. package/dist/components/form-textarea/index.d.ts +5 -5
  42. package/dist/components/image/Image.vue.d.ts +10 -9
  43. package/dist/components/image/ImagePreview.vue.d.ts +8 -7
  44. package/dist/components/image/ImagePreviewAction.d.ts +3 -3
  45. package/dist/components/image/ImagePreviewGroup.vue.d.ts +8 -7
  46. package/dist/components/image/index.d.ts +59 -52
  47. package/dist/components/image/preview-arrow.vue.d.ts +2 -2
  48. package/dist/components/image/preview-toolbar.vue.d.ts +3 -3
  49. package/dist/components/layout/LayoutSidebar.vue.d.ts +2 -2
  50. package/dist/components/layout/index.d.ts +4 -4
  51. package/dist/components/link/Link.vue.d.ts +2 -2
  52. package/dist/components/link/index.d.ts +4 -4
  53. package/dist/components/menu/Menu.d.ts +2 -2
  54. package/dist/components/menu/base-menu.vue.d.ts +2 -2
  55. package/dist/components/menu/index.d.ts +4 -4
  56. package/dist/components/menu/sub-menu-pop.vue.d.ts +5 -5
  57. package/dist/components/message/index.d.ts +17 -17
  58. package/dist/components/message/message.vue.d.ts +8 -8
  59. package/dist/components/notification/Notification.d.ts +1 -1
  60. package/dist/components/notification/index.d.ts +3 -3
  61. package/dist/components/pagination/page-item-ellipsis.vue.d.ts +1 -1
  62. package/dist/components/pagination/page-item-step.vue.d.ts +2 -2
  63. package/dist/components/pagination/page-options.vue.d.ts +6 -6
  64. package/dist/components/popconfirm/src/popup.vue.d.ts +1 -1
  65. package/dist/components/popover/Popover.d.ts +1 -1
  66. package/dist/components/popover/index.d.ts +3 -3
  67. package/dist/components/popup/Popup.d.ts +1 -1
  68. package/dist/components/popup/index.d.ts +3 -3
  69. package/dist/components/progress/Progress.vue.d.ts +4 -4
  70. package/dist/components/progress/circle.vue.d.ts +2 -2
  71. package/dist/components/progress/index.d.ts +8 -8
  72. package/dist/components/progress/line.vue.d.ts +1 -1
  73. package/dist/components/progress/steps.vue.d.ts +1 -1
  74. package/dist/components/steps/Step.vue.d.ts +2 -2
  75. package/dist/components/steps/index.d.ts +4 -4
  76. package/dist/components/tabs/Tabs.d.ts +1 -1
  77. package/dist/components/tabs/index.d.ts +3 -3
  78. package/dist/components/tabs/tabs-tab.vue.d.ts +1 -1
  79. package/dist/components/tag/Tag.vue.d.ts +2 -2
  80. package/dist/components/tag/index.d.ts +4 -4
  81. package/dist/components/time-picker/TimeColumn.vue.d.ts +3 -0
  82. package/dist/components/time-picker/TimePanel.vue.d.ts +3 -0
  83. package/dist/components/time-picker/TimePicker.vue.d.ts +33 -17
  84. package/dist/components/time-picker/index.d.ts +73 -36
  85. package/dist/components/time-range-selector/TimeRangeSelector.vue.d.ts +8 -0
  86. package/dist/components/time-range-selector/index.d.ts +22 -0
  87. package/dist/components/tooltip/Tooltip.vue.d.ts +1 -1
  88. package/dist/components/tooltip/index.d.ts +3 -3
  89. package/dist/components/trigger/Trigger.d.ts +1 -1
  90. package/dist/components/trigger/index.d.ts +3 -3
  91. package/dist/es/_hooks/use-form-item.js +36 -10
  92. package/dist/es/_hooks/use-overflow.js +45 -40
  93. package/dist/es/_hooks/use-picker-focus.js +57 -0
  94. package/dist/es/_utils/constant.js +17 -5
  95. package/dist/es/components/_components/picker/input-range.vue.js +45 -55
  96. package/dist/es/components/_components/picker/input-range.vue2.js +105 -70
  97. package/dist/es/components/_components/picker/input.vue.js +22 -25
  98. package/dist/es/components/_components/picker/input.vue2.js +58 -43
  99. package/dist/es/components/_components/select-view/select-view.js +61 -66
  100. package/dist/es/components/date-picker/DatePanel.vue.js +102 -94
  101. package/dist/es/components/date-picker/DatePanel.vue2.js +97 -44
  102. package/dist/es/components/date-picker/DatePicker.vue.js +71 -58
  103. package/dist/es/components/date-picker/DatePicker.vue2.js +285 -231
  104. package/dist/es/components/dialog/Dialog.js +159 -128
  105. package/dist/es/components/dropdown/Dropdown.vue.js +18 -15
  106. package/dist/es/components/dropdown/Dropdown.vue2.js +52 -31
  107. package/dist/es/components/dropdown/DropdownOption.vue.js +22 -21
  108. package/dist/es/components/dropdown/DropdownOption.vue2.js +23 -19
  109. package/dist/es/components/dropdown/DropdownSubmenu.vue.js +49 -36
  110. package/dist/es/components/dropdown/DropdownSubmenu.vue2.js +45 -24
  111. package/dist/es/components/dropdown/context.js +3 -2
  112. package/dist/es/components/dropdown/dropdown-panel.vue.js +24 -21
  113. package/dist/es/components/dropdown/dropdown-panel.vue2.js +83 -31
  114. package/dist/es/components/dropdown/use-keyboard.js +45 -0
  115. package/dist/es/components/form/Form.vue2.js +113 -101
  116. package/dist/es/components/form/FormItem.vue.js +26 -22
  117. package/dist/es/components/form/FormItem.vue2.js +162 -125
  118. package/dist/es/components/form/form-item-message.vue.js +31 -24
  119. package/dist/es/components/form/form-item-message.vue2.js +4 -2
  120. package/dist/es/components/form-checkbox/Checkbox.js +80 -76
  121. package/dist/es/components/form-checkbox/CheckboxGroup.js +43 -38
  122. package/dist/es/components/form-input/Input.js +83 -79
  123. package/dist/es/components/form-input/InputPassword.vue.js +19 -16
  124. package/dist/es/components/form-input/InputPassword.vue2.js +39 -29
  125. package/dist/es/components/form-input/InputSearch.js +47 -37
  126. package/dist/es/components/form-input-number/InputNumber.js +134 -133
  127. package/dist/es/components/form-input-tag/InputTag.js +173 -162
  128. package/dist/es/components/form-radio/Radio.js +74 -71
  129. package/dist/es/components/form-radio/RadioGroup.js +55 -49
  130. package/dist/es/components/form-select/Select.js +116 -114
  131. package/dist/es/components/form-select/hooks/use-select.js +128 -128
  132. package/dist/es/components/form-slider/Slider.vue.js +28 -28
  133. package/dist/es/components/form-slider/Slider.vue2.js +139 -132
  134. package/dist/es/components/form-slider/slider-button.vue.js +6 -6
  135. package/dist/es/components/form-slider/slider-button.vue2.js +39 -34
  136. package/dist/es/components/form-switch/Switch.vue.js +9 -9
  137. package/dist/es/components/form-switch/Switch.vue2.js +81 -74
  138. package/dist/es/components/form-textarea/Textarea.vue2.js +123 -108
  139. package/dist/es/components/image/Image.vue2.js +77 -76
  140. package/dist/es/components/image/ImagePreview.vue.js +13 -12
  141. package/dist/es/components/image/ImagePreview.vue2.js +141 -136
  142. package/dist/es/components/image/ImagePreviewGroup.vue.js +1 -1
  143. package/dist/es/components/image/ImagePreviewGroup.vue2.js +82 -83
  144. package/dist/es/components/rate/Rate.js +106 -103
  145. package/dist/es/components/time-picker/TimeColumn.vue.js +34 -23
  146. package/dist/es/components/time-picker/TimeColumn.vue2.js +37 -28
  147. package/dist/es/components/time-picker/TimePicker.vue.js +83 -64
  148. package/dist/es/components/time-picker/TimePicker.vue2.js +192 -156
  149. package/dist/es/components/time-range-selector/TimeRangeSelector.vue.js +327 -193
  150. package/dist/es/locale/en-US.js +6 -0
  151. package/dist/es/locale/zh-CN.js +6 -0
  152. package/dist/es/style.css +1 -1
  153. package/dist/icons/_self/down.d.ts +1 -1
  154. package/dist/icons/_self/dropdown/more.d.ts +1 -1
  155. package/dist/icons/_self/empty-better.d.ts +1 -1
  156. package/dist/icons/_self/empty.d.ts +1 -1
  157. package/dist/icons/_self/eye-invisible.d.ts +1 -1
  158. package/dist/icons/_self/eye.d.ts +1 -1
  159. package/dist/icons/_self/full-screen.d.ts +1 -1
  160. package/dist/icons/_self/left.d.ts +1 -1
  161. package/dist/icons/_self/menu/down.d.ts +1 -1
  162. package/dist/icons/_self/minus.d.ts +1 -1
  163. package/dist/icons/_self/more-dot.d.ts +1 -1
  164. package/dist/icons/_self/next.d.ts +1 -1
  165. package/dist/icons/_self/original-size.d.ts +1 -1
  166. package/dist/icons/_self/plus.d.ts +1 -1
  167. package/dist/icons/_self/prev.d.ts +1 -1
  168. package/dist/icons/_self/question-message.d.ts +1 -1
  169. package/dist/icons/_self/right.d.ts +1 -1
  170. package/dist/icons/_self/rotate-left.d.ts +1 -1
  171. package/dist/icons/_self/rotate-right.d.ts +1 -1
  172. package/dist/icons/_self/search.d.ts +1 -1
  173. package/dist/icons/_self/up.d.ts +1 -1
  174. package/dist/icons/_self/zoom-in.d.ts +1 -1
  175. package/dist/icons/_self/zoom-out.d.ts +1 -1
  176. package/dist/icons/_ui/alone-left.d.ts +1 -1
  177. package/dist/icons/_ui/alone-margin-left.d.ts +1 -1
  178. package/dist/icons/_ui/alone-margin-right.d.ts +1 -1
  179. package/dist/icons/_ui/alone-right.d.ts +1 -1
  180. package/dist/icons/_ui/calendar.d.ts +1 -1
  181. package/dist/icons/_ui/time.d.ts +1 -1
  182. package/dist/icons/animation/animation-loading.d.ts +1 -1
  183. package/dist/icons/default/check-circle-fill.d.ts +1 -1
  184. package/dist/icons/default/check.d.ts +1 -1
  185. package/dist/icons/default/close-circle-fill.d.ts +1 -1
  186. package/dist/icons/default/close.d.ts +1 -1
  187. package/dist/icons/default/exclamation-circle-fill.d.ts +1 -1
  188. package/dist/icons/default/exclamation.d.ts +1 -1
  189. package/dist/icons/default/filter.d.ts +1 -1
  190. package/dist/icons/default/info-circle-fill.d.ts +1 -1
  191. package/dist/icons/default/link.d.ts +1 -1
  192. package/dist/icons/default/logo-simple.d.ts +1 -1
  193. package/dist/icons/default/minus-circle-fill.d.ts +1 -1
  194. package/dist/icons/icon.d.ts +2 -2
  195. package/dist/icons/index.d.ts +3 -3
  196. package/dist/index.cjs +4 -4
  197. package/dist/index.d.ts +1 -1
  198. package/dist/index.umd.js +4 -4
  199. package/dist/locale/interface.d.ts +6 -0
  200. package/dist/style/base.css +1 -1
  201. package/dist/style/date-picker.css +1 -1
  202. package/dist/style/form.css +1 -1
  203. package/dist/style/image.css +1 -1
  204. package/dist/style/time-range-selector.css +1 -1
  205. package/dist/style.css +1 -1
  206. package/package.json +2 -2
@@ -290,11 +290,11 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
290
290
  };
291
291
  }>> & Readonly<{}>, {
292
292
  name: string;
293
+ title: string;
293
294
  size: string | number;
294
295
  rotate: number;
295
296
  spin: boolean;
296
297
  color: string;
297
- title: string;
298
298
  ariaLabel: string;
299
299
  strokeWidth: string | number;
300
300
  fillColor: unknown[];
@@ -667,6 +667,9 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
667
667
  default: boolean;
668
668
  };
669
669
  }>, {
670
+ renderTrigger: (attrs: Record<string, unknown>) => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
671
+ [key: string]: any;
672
+ }>[];
670
673
  className: {
671
674
  block: string;
672
675
  element: (className: string) => string;
@@ -677,6 +680,12 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
677
680
  handlePopupVisibleChange: (visible: boolean) => void;
678
681
  handleScroll: (ev: Event) => void;
679
682
  handleReachBottom: (ev: Event) => void;
683
+ panelRef: import('vue').Ref<import('./context.ts').DropdownPanelRef | undefined, import('./context.ts').DropdownPanelRef | undefined>;
684
+ handleShow: () => void;
685
+ handleTriggerKeydown: (ev: KeyboardEvent) => void;
686
+ handleTriggerFocus: (ev: FocusEvent) => void;
687
+ handleClose: () => void;
688
+ handleKeyboardSelect: (ev: Event) => void;
680
689
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
681
690
  'update:popupVisible': (visible: boolean) => true;
682
691
  popupVisibleChange: (visible: boolean) => true;
@@ -903,8 +912,8 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
903
912
  resize: () => true;
904
913
  }, import('vue').PublicProps, {
905
914
  disabled: boolean;
906
- animationName: string;
907
915
  position: "top" | "tl" | "tr" | "bottom" | "bl" | "br" | "left" | "lt" | "lb" | "right" | "rt" | "rb";
916
+ animationName: string;
908
917
  autoFitPosition: boolean;
909
918
  popupVisible: boolean;
910
919
  defaultPopupVisible: boolean;
@@ -1091,8 +1100,8 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1091
1100
  onPopupVisibleChange?: ((visible: boolean) => any) | undefined;
1092
1101
  }>, () => any, {}, {}, {}, {
1093
1102
  disabled: boolean;
1094
- animationName: string;
1095
1103
  position: "top" | "tl" | "tr" | "bottom" | "bl" | "br" | "left" | "lt" | "lb" | "right" | "rt" | "rb";
1104
+ animationName: string;
1096
1105
  autoFitPosition: boolean;
1097
1106
  popupVisible: boolean;
1098
1107
  defaultPopupVisible: boolean;
@@ -1279,8 +1288,8 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1279
1288
  resize: () => true;
1280
1289
  }, string, {
1281
1290
  disabled: boolean;
1282
- animationName: string;
1283
1291
  position: "top" | "tl" | "tr" | "bottom" | "bl" | "br" | "left" | "lt" | "lb" | "right" | "rt" | "rb";
1292
+ animationName: string;
1284
1293
  autoFitPosition: boolean;
1285
1294
  popupVisible: boolean;
1286
1295
  defaultPopupVisible: boolean;
@@ -1313,6 +1322,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1313
1322
  install(app: import('vue').App): void;
1314
1323
  };
1315
1324
  DropdownPanel: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
1325
+ closeOnArrowLeft: BooleanConstructor;
1316
1326
  loading: {
1317
1327
  type: BooleanConstructor;
1318
1328
  default: boolean;
@@ -1343,9 +1353,12 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1343
1353
  })[]>;
1344
1354
  style: import('vue').ComputedRef<import('vue').CSSProperties | undefined>;
1345
1355
  wrapperRef: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
1356
+ panelElement: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
1357
+ handleKeydown: (ev: KeyboardEvent) => void;
1346
1358
  handleScroll: (e: Event) => void;
1347
1359
  t: (key: import('../../index.ts').LocaleKey | (string & {}), params?: Record<string, string | number>) => string;
1348
- }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("scroll" | "reachBottom")[], "scroll" | "reachBottom", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
1360
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("close" | "scroll" | "reachBottom")[], "close" | "scroll" | "reachBottom", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
1361
+ closeOnArrowLeft: BooleanConstructor;
1349
1362
  loading: {
1350
1363
  type: BooleanConstructor;
1351
1364
  default: boolean;
@@ -1365,10 +1378,12 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1365
1378
  type: PropType<import('../../_hooks/_types.ts').EmitType<(ev: Event) => void>>;
1366
1379
  };
1367
1380
  }>> & Readonly<{
1381
+ onClose?: ((...args: any[]) => any) | undefined;
1368
1382
  onScroll?: ((...args: any[]) => any) | undefined;
1369
1383
  onReachBottom?: ((...args: any[]) => any) | undefined;
1370
1384
  }>, {
1371
1385
  loading: boolean;
1386
+ closeOnArrowLeft: boolean;
1372
1387
  isEmpty: boolean;
1373
1388
  bottomOffset: number;
1374
1389
  }, {}, {
@@ -1827,6 +1842,17 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1827
1842
  install(app: import('vue').App): void;
1828
1843
  };
1829
1844
  }, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
1845
+ RenderFunction: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
1846
+ renderFunc: {
1847
+ type: PropType<import('../../_container/render-function.ts').RenderFunc>;
1848
+ required: true;
1849
+ };
1850
+ }>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
1851
+ renderFunc: {
1852
+ type: PropType<import('../../_container/render-function.ts').RenderFunc>;
1853
+ required: true;
1854
+ };
1855
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
1830
1856
  }, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
1831
1857
  }, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
1832
1858
  export default _default;
@@ -27,6 +27,8 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
27
27
  [x: string]: boolean;
28
28
  })[]>;
29
29
  liRef: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
30
+ tabIndex: import('vue').ComputedRef<0 | -1>;
31
+ handleFocus: () => void | undefined;
30
32
  handleClick: (ev: Event) => void;
31
33
  handleKeydown: (ev: KeyboardEvent) => void;
32
34
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
@@ -62,6 +62,149 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
62
62
  type: ObjectConstructor;
63
63
  };
64
64
  }>, {
65
+ optionRef: import('vue').Ref<import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
66
+ value: {
67
+ type: (StringConstructor | ObjectConstructor | NumberConstructor)[];
68
+ };
69
+ disabled: {
70
+ type: BooleanConstructor;
71
+ default: boolean;
72
+ };
73
+ active: BooleanConstructor;
74
+ uninjectContext: BooleanConstructor;
75
+ }>> & Readonly<{
76
+ onClick?: ((ev: Event) => any) | undefined;
77
+ }>, {
78
+ className: {
79
+ block: string;
80
+ element: (className: string) => string;
81
+ modifier: (className: string) => string;
82
+ is: (className: string) => string;
83
+ };
84
+ cls: import('vue').ComputedRef<(string | {
85
+ [x: string]: boolean;
86
+ })[]>;
87
+ liRef: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
88
+ tabIndex: import('vue').ComputedRef<0 | -1>;
89
+ handleFocus: () => void | undefined;
90
+ handleClick: (ev: Event) => void;
91
+ handleKeydown: (ev: KeyboardEvent) => void;
92
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
93
+ click: (ev: Event) => true;
94
+ }, import('vue').PublicProps, {
95
+ disabled: boolean;
96
+ active: boolean;
97
+ uninjectContext: boolean;
98
+ }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
99
+ P: {};
100
+ B: {};
101
+ D: {};
102
+ C: {};
103
+ M: {};
104
+ Defaults: {};
105
+ }, Readonly<import('vue').ExtractPropTypes<{
106
+ value: {
107
+ type: (StringConstructor | ObjectConstructor | NumberConstructor)[];
108
+ };
109
+ disabled: {
110
+ type: BooleanConstructor;
111
+ default: boolean;
112
+ };
113
+ active: BooleanConstructor;
114
+ uninjectContext: BooleanConstructor;
115
+ }>> & Readonly<{
116
+ onClick?: ((ev: Event) => any) | undefined;
117
+ }>, {
118
+ className: {
119
+ block: string;
120
+ element: (className: string) => string;
121
+ modifier: (className: string) => string;
122
+ is: (className: string) => string;
123
+ };
124
+ cls: import('vue').ComputedRef<(string | {
125
+ [x: string]: boolean;
126
+ })[]>;
127
+ liRef: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
128
+ tabIndex: import('vue').ComputedRef<0 | -1>;
129
+ handleFocus: () => void | undefined;
130
+ handleClick: (ev: Event) => void;
131
+ handleKeydown: (ev: KeyboardEvent) => void;
132
+ }, {}, {}, {}, {
133
+ disabled: boolean;
134
+ active: boolean;
135
+ uninjectContext: boolean;
136
+ }> | undefined, import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
137
+ value: {
138
+ type: (StringConstructor | ObjectConstructor | NumberConstructor)[];
139
+ };
140
+ disabled: {
141
+ type: BooleanConstructor;
142
+ default: boolean;
143
+ };
144
+ active: BooleanConstructor;
145
+ uninjectContext: BooleanConstructor;
146
+ }>> & Readonly<{
147
+ onClick?: ((ev: Event) => any) | undefined;
148
+ }>, {
149
+ className: {
150
+ block: string;
151
+ element: (className: string) => string;
152
+ modifier: (className: string) => string;
153
+ is: (className: string) => string;
154
+ };
155
+ cls: import('vue').ComputedRef<(string | {
156
+ [x: string]: boolean;
157
+ })[]>;
158
+ liRef: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
159
+ tabIndex: import('vue').ComputedRef<0 | -1>;
160
+ handleFocus: () => void | undefined;
161
+ handleClick: (ev: Event) => void;
162
+ handleKeydown: (ev: KeyboardEvent) => void;
163
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
164
+ click: (ev: Event) => true;
165
+ }, import('vue').PublicProps, {
166
+ disabled: boolean;
167
+ active: boolean;
168
+ uninjectContext: boolean;
169
+ }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
170
+ P: {};
171
+ B: {};
172
+ D: {};
173
+ C: {};
174
+ M: {};
175
+ Defaults: {};
176
+ }, Readonly<import('vue').ExtractPropTypes<{
177
+ value: {
178
+ type: (StringConstructor | ObjectConstructor | NumberConstructor)[];
179
+ };
180
+ disabled: {
181
+ type: BooleanConstructor;
182
+ default: boolean;
183
+ };
184
+ active: BooleanConstructor;
185
+ uninjectContext: BooleanConstructor;
186
+ }>> & Readonly<{
187
+ onClick?: ((ev: Event) => any) | undefined;
188
+ }>, {
189
+ className: {
190
+ block: string;
191
+ element: (className: string) => string;
192
+ modifier: (className: string) => string;
193
+ is: (className: string) => string;
194
+ };
195
+ cls: import('vue').ComputedRef<(string | {
196
+ [x: string]: boolean;
197
+ })[]>;
198
+ liRef: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
199
+ tabIndex: import('vue').ComputedRef<0 | -1>;
200
+ handleFocus: () => void | undefined;
201
+ handleClick: (ev: Event) => void;
202
+ handleKeydown: (ev: KeyboardEvent) => void;
203
+ }, {}, {}, {}, {
204
+ disabled: boolean;
205
+ active: boolean;
206
+ uninjectContext: boolean;
207
+ }> | undefined>;
65
208
  className: {
66
209
  block: string;
67
210
  element: (className: string) => string;
@@ -70,6 +213,12 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
70
213
  };
71
214
  computedPopupVisible: import('vue').ComputedRef<boolean>;
72
215
  handlePopupVisibleChange: (visible: boolean) => void;
216
+ handleTriggerKeydown: (ev: KeyboardEvent) => void;
217
+ panelRef: import('vue').Ref<import('./context.ts').DropdownPanelRef | undefined, import('./context.ts').DropdownPanelRef | undefined>;
218
+ handleShow: () => void;
219
+ handleTriggerFocus: (ev: FocusEvent) => void;
220
+ handleClose: () => void;
221
+ handleKeyboardSelect: (ev: Event) => void;
73
222
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
74
223
  'update:popupVisible': (visible: boolean) => true;
75
224
  /**
@@ -308,8 +457,8 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
308
457
  resize: () => true;
309
458
  }, import('vue').PublicProps, {
310
459
  disabled: boolean;
311
- animationName: string;
312
460
  position: "top" | "tl" | "tr" | "bottom" | "bl" | "br" | "left" | "lt" | "lb" | "right" | "rt" | "rb";
461
+ animationName: string;
313
462
  autoFitPosition: boolean;
314
463
  popupVisible: boolean;
315
464
  defaultPopupVisible: boolean;
@@ -496,8 +645,8 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
496
645
  onPopupVisibleChange?: ((visible: boolean) => any) | undefined;
497
646
  }>, () => any, {}, {}, {}, {
498
647
  disabled: boolean;
499
- animationName: string;
500
648
  position: "top" | "tl" | "tr" | "bottom" | "bl" | "br" | "left" | "lt" | "lb" | "right" | "rt" | "rb";
649
+ animationName: string;
501
650
  autoFitPosition: boolean;
502
651
  popupVisible: boolean;
503
652
  defaultPopupVisible: boolean;
@@ -684,8 +833,8 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
684
833
  resize: () => true;
685
834
  }, string, {
686
835
  disabled: boolean;
687
- animationName: string;
688
836
  position: "top" | "tl" | "tr" | "bottom" | "bl" | "br" | "left" | "lt" | "lb" | "right" | "rt" | "rb";
837
+ animationName: string;
689
838
  autoFitPosition: boolean;
690
839
  popupVisible: boolean;
691
840
  defaultPopupVisible: boolean;
@@ -718,6 +867,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
718
867
  install(app: import('vue').App): void;
719
868
  };
720
869
  DropdownPanel: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
870
+ closeOnArrowLeft: BooleanConstructor;
721
871
  loading: {
722
872
  type: BooleanConstructor;
723
873
  default: boolean;
@@ -748,9 +898,12 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
748
898
  })[]>;
749
899
  style: import('vue').ComputedRef<import('vue').CSSProperties | undefined>;
750
900
  wrapperRef: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
901
+ panelElement: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
902
+ handleKeydown: (ev: KeyboardEvent) => void;
751
903
  handleScroll: (e: Event) => void;
752
904
  t: (key: import('../../index.ts').LocaleKey | (string & {}), params?: Record<string, string | number>) => string;
753
- }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("scroll" | "reachBottom")[], "scroll" | "reachBottom", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
905
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("close" | "scroll" | "reachBottom")[], "close" | "scroll" | "reachBottom", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
906
+ closeOnArrowLeft: BooleanConstructor;
754
907
  loading: {
755
908
  type: BooleanConstructor;
756
909
  default: boolean;
@@ -770,10 +923,12 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
770
923
  type: PropType<import('../../_hooks/_types.ts').EmitType<(ev: Event) => void>>;
771
924
  };
772
925
  }>> & Readonly<{
926
+ onClose?: ((...args: any[]) => any) | undefined;
773
927
  onScroll?: ((...args: any[]) => any) | undefined;
774
928
  onReachBottom?: ((...args: any[]) => any) | undefined;
775
929
  }>, {
776
930
  loading: boolean;
931
+ closeOnArrowLeft: boolean;
777
932
  isEmpty: boolean;
778
933
  bottomOffset: number;
779
934
  }, {}, {
@@ -1253,6 +1408,8 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1253
1408
  [x: string]: boolean;
1254
1409
  })[]>;
1255
1410
  liRef: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
1411
+ tabIndex: import('vue').ComputedRef<0 | -1>;
1412
+ handleFocus: () => void | undefined;
1256
1413
  handleClick: (ev: Event) => void;
1257
1414
  handleKeydown: (ev: KeyboardEvent) => void;
1258
1415
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
@@ -1350,11 +1507,11 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
1350
1507
  };
1351
1508
  }>> & Readonly<{}>, {
1352
1509
  name: string;
1510
+ title: string;
1353
1511
  size: string | number;
1354
1512
  rotate: number;
1355
1513
  spin: boolean;
1356
1514
  color: string;
1357
- title: string;
1358
1515
  ariaLabel: string;
1359
1516
  strokeWidth: string | number;
1360
1517
  fillColor: unknown[];
@@ -1,6 +1,19 @@
1
- import { InjectionKey } from 'vue';
1
+ import { InjectionKey, Ref } from 'vue';
2
2
  export interface DropdownContext {
3
3
  popupMaxHeight: boolean | number;
4
4
  onOptionClick: (value: string | number | Record<string, unknown> | undefined, ev: Event) => void;
5
5
  }
6
6
  export declare const dropdownInjectionKey: InjectionKey<DropdownContext>;
7
+ export interface DropdownMenuItem {
8
+ element: Ref<HTMLElement | undefined>;
9
+ disabled: Readonly<Ref<boolean>>;
10
+ }
11
+ export interface DropdownMenuContext {
12
+ activeItem: Ref<DropdownMenuItem | undefined>;
13
+ registerItem: (item: DropdownMenuItem) => () => void;
14
+ setActiveItem: (item: DropdownMenuItem) => void;
15
+ }
16
+ export interface DropdownPanelRef {
17
+ focus: (edge?: 'first' | 'last') => boolean;
18
+ }
19
+ export declare const dropdownMenuInjectionKey: InjectionKey<DropdownMenuContext>;
@@ -1,6 +1,7 @@
1
1
  import { CSSProperties, PropType } from 'vue';
2
2
  import { EmitType } from '../../_hooks/_types';
3
3
  declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
4
+ closeOnArrowLeft: BooleanConstructor;
4
5
  loading: {
5
6
  type: BooleanConstructor;
6
7
  default: boolean;
@@ -31,9 +32,12 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
31
32
  })[]>;
32
33
  style: import('vue').ComputedRef<CSSProperties | undefined>;
33
34
  wrapperRef: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
35
+ panelElement: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
36
+ handleKeydown: (ev: KeyboardEvent) => void;
34
37
  handleScroll: (e: Event) => void;
35
38
  t: (key: import('../../locale').LocaleKey | (string & {}), params?: Record<string, string | number>) => string;
36
- }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("scroll" | "reachBottom")[], "scroll" | "reachBottom", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
39
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("close" | "scroll" | "reachBottom")[], "close" | "scroll" | "reachBottom", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
40
+ closeOnArrowLeft: BooleanConstructor;
37
41
  loading: {
38
42
  type: BooleanConstructor;
39
43
  default: boolean;
@@ -53,10 +57,12 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
53
57
  type: PropType<EmitType<(ev: Event) => void>>;
54
58
  };
55
59
  }>> & Readonly<{
60
+ onClose?: ((...args: any[]) => any) | undefined;
56
61
  onScroll?: ((...args: any[]) => any) | undefined;
57
62
  onReachBottom?: ((...args: any[]) => any) | undefined;
58
63
  }>, {
59
64
  loading: boolean;
65
+ closeOnArrowLeft: boolean;
60
66
  isEmpty: boolean;
61
67
  bottomOffset: number;
62
68
  }, {}, {