x-next 1.2.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.
- package/CHANGELOG.md +12 -0
- package/dist/components/dropdown/Dropdown.vue.d.ts +27 -1
- package/dist/components/dropdown/DropdownButton.vue.d.ts +27 -1
- package/dist/components/dropdown/DropdownOption.vue.d.ts +2 -0
- package/dist/components/dropdown/DropdownSubmenu.vue.d.ts +158 -1
- package/dist/components/dropdown/context.d.ts +14 -1
- package/dist/components/dropdown/dropdown-panel.vue.d.ts +7 -1
- package/dist/components/dropdown/index.d.ts +588 -6
- package/dist/components/dropdown/use-keyboard.d.ts +10 -0
- package/dist/components/form-select/hooks/use-select.d.ts +2 -1
- package/dist/es/_hooks/use-overflow.js +45 -40
- package/dist/es/components/_components/select-view/select-view.js +49 -55
- package/dist/es/components/dialog/Dialog.js +106 -97
- package/dist/es/components/dropdown/Dropdown.vue.js +18 -15
- package/dist/es/components/dropdown/Dropdown.vue2.js +52 -31
- package/dist/es/components/dropdown/DropdownOption.vue.js +22 -21
- package/dist/es/components/dropdown/DropdownOption.vue2.js +23 -19
- package/dist/es/components/dropdown/DropdownSubmenu.vue.js +49 -36
- package/dist/es/components/dropdown/DropdownSubmenu.vue2.js +45 -24
- package/dist/es/components/dropdown/context.js +3 -2
- package/dist/es/components/dropdown/dropdown-panel.vue.js +24 -21
- package/dist/es/components/dropdown/dropdown-panel.vue2.js +83 -31
- package/dist/es/components/dropdown/use-keyboard.js +45 -0
- package/dist/es/components/form-checkbox/Checkbox.js +49 -49
- package/dist/es/components/form-select/Select.js +25 -24
- package/dist/es/components/form-select/hooks/use-select.js +128 -128
- package/dist/es/style.css +1 -1
- package/dist/index.cjs +4 -4
- package/dist/index.d.ts +1 -1
- package/dist/index.umd.js +4 -4
- package/dist/style/base.css +1 -1
- package/dist/style.css +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,17 @@
|
|
|
2
2
|
|
|
3
3
|
本项目遵循 [语义化版本](https://semver.org/lang/zh-CN/)。
|
|
4
4
|
|
|
5
|
+
## [1.3.0] - 2026-09-30
|
|
6
|
+
|
|
7
|
+
### 修复
|
|
8
|
+
|
|
9
|
+
- **Select**:关闭状态不再吞掉 Escape;方向键可打开下拉,键盘选择与关闭后保留焦点,Tab 保留浏览器原生焦点移动。
|
|
10
|
+
- **Checkbox**:原生 `required`、`form`、`tabindex`、`autofocus` 和 `autocomplete` 属性传到内部 input,保留外层 class/style 与组件受控状态。
|
|
11
|
+
- **Dialog / Drawer**:完善顺序 Tab 候选与共享滚动锁清理,正确归还自定义容器的原始样式。
|
|
12
|
+
- **Dropdown**:补齐受控菜单焦点、方向键/Home/End 导航、禁用项跳过、多级菜单进入返回与 Escape 关闭;保留鼠标点击和悬浮行为。
|
|
13
|
+
- **局部暗色主题**:生成完整受影响变量依赖链,让同一暗色容器内的语义覆盖正确传递到表单和组件别名,保留组件自身覆盖。
|
|
14
|
+
- **文档与类型**:补充 `MessageBoxStaticMethod` 根入口类型导出;快速开始明确局部导入与全局注册的区别。
|
|
15
|
+
|
|
5
16
|
## [1.2.0] - 2026-09-30
|
|
6
17
|
|
|
7
18
|
### 新增
|
|
@@ -69,5 +80,6 @@
|
|
|
69
80
|
- Progress 不支持 `indeterminate` 不确定态与自定义 `format` 文本(可用 `text` 插槽替代)。
|
|
70
81
|
- Space 不支持 Arco 的 `size` 数组写法与 `wrap`。
|
|
71
82
|
|
|
83
|
+
[1.3.0]: https://gitee.com/ztes/x-next/releases/tag/v1.3.0
|
|
72
84
|
[1.2.0]: https://gitee.com/ztes/x-next/releases/tag/v1.2.0
|
|
73
85
|
[1.1.0]: https://github.com/ztes/x-next/releases/tag/v1.1.0
|
|
@@ -90,6 +90,9 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
90
90
|
default: boolean;
|
|
91
91
|
};
|
|
92
92
|
}>, {
|
|
93
|
+
renderTrigger: (attrs: Record<string, unknown>) => import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
|
|
94
|
+
[key: string]: any;
|
|
95
|
+
}>[];
|
|
93
96
|
className: {
|
|
94
97
|
block: string;
|
|
95
98
|
element: (className: string) => string;
|
|
@@ -100,6 +103,12 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
100
103
|
handlePopupVisibleChange: (visible: boolean) => void;
|
|
101
104
|
handleScroll: (ev: Event) => void;
|
|
102
105
|
handleReachBottom: (ev: Event) => void;
|
|
106
|
+
panelRef: import('vue').Ref<import('./context').DropdownPanelRef | undefined, import('./context').DropdownPanelRef | undefined>;
|
|
107
|
+
handleShow: () => void;
|
|
108
|
+
handleTriggerKeydown: (ev: KeyboardEvent) => void;
|
|
109
|
+
handleTriggerFocus: (ev: FocusEvent) => void;
|
|
110
|
+
handleClose: () => void;
|
|
111
|
+
handleKeyboardSelect: (ev: Event) => void;
|
|
103
112
|
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
104
113
|
'update:popupVisible': (visible: boolean) => true;
|
|
105
114
|
/**
|
|
@@ -801,6 +810,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
801
810
|
install(app: import('vue').App): void;
|
|
802
811
|
};
|
|
803
812
|
DropdownPanel: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
813
|
+
closeOnArrowLeft: BooleanConstructor;
|
|
804
814
|
loading: {
|
|
805
815
|
type: BooleanConstructor;
|
|
806
816
|
default: boolean;
|
|
@@ -831,9 +841,12 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
831
841
|
})[]>;
|
|
832
842
|
style: import('vue').ComputedRef<import('vue').CSSProperties | undefined>;
|
|
833
843
|
wrapperRef: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
|
|
844
|
+
panelElement: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
|
|
845
|
+
handleKeydown: (ev: KeyboardEvent) => void;
|
|
834
846
|
handleScroll: (e: Event) => void;
|
|
835
847
|
t: (key: import('../../index.ts').LocaleKey | (string & {}), params?: Record<string, string | number>) => string;
|
|
836
|
-
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("scroll" | "reachBottom")[], "scroll" | "reachBottom", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
848
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("close" | "scroll" | "reachBottom")[], "close" | "scroll" | "reachBottom", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
849
|
+
closeOnArrowLeft: BooleanConstructor;
|
|
837
850
|
loading: {
|
|
838
851
|
type: BooleanConstructor;
|
|
839
852
|
default: boolean;
|
|
@@ -853,10 +866,12 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
853
866
|
type: PropType<import('../../_hooks/_types.ts').EmitType<(ev: Event) => void>>;
|
|
854
867
|
};
|
|
855
868
|
}>> & Readonly<{
|
|
869
|
+
onClose?: ((...args: any[]) => any) | undefined;
|
|
856
870
|
onScroll?: ((...args: any[]) => any) | undefined;
|
|
857
871
|
onReachBottom?: ((...args: any[]) => any) | undefined;
|
|
858
872
|
}>, {
|
|
859
873
|
loading: boolean;
|
|
874
|
+
closeOnArrowLeft: boolean;
|
|
860
875
|
isEmpty: boolean;
|
|
861
876
|
bottomOffset: number;
|
|
862
877
|
}, {}, {
|
|
@@ -1315,5 +1330,16 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
1315
1330
|
install(app: import('vue').App): void;
|
|
1316
1331
|
};
|
|
1317
1332
|
}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
1333
|
+
RenderFunction: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
|
1334
|
+
renderFunc: {
|
|
1335
|
+
type: PropType<import('../../_container/render-function').RenderFunc>;
|
|
1336
|
+
required: true;
|
|
1337
|
+
};
|
|
1338
|
+
}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
|
|
1339
|
+
renderFunc: {
|
|
1340
|
+
type: PropType<import('../../_container/render-function').RenderFunc>;
|
|
1341
|
+
required: true;
|
|
1342
|
+
};
|
|
1343
|
+
}>> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
1318
1344
|
}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
|
1319
1345
|
export default _default;
|
|
@@ -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;
|
|
@@ -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
|
/**
|
|
@@ -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, {
|
|
@@ -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
|
}, {}, {
|