lew-ui 2.7.55 → 2.7.56

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 (36) hide show
  1. package/LICENSE +21 -21
  2. package/dist/_components/CommonInput.vue.d.ts +499 -0
  3. package/dist/components/data/table/src/LewTable.vue.d.ts +1 -1
  4. package/dist/components/data/tree/src/LewTree.vue.d.ts +12 -1
  5. package/dist/components/data/tree/src/props.d.ts +5 -0
  6. package/dist/components/feedback/drawer/src/LewDrawer.vue.d.ts +22 -0
  7. package/dist/components/feedback/drawer/src/props.d.ts +10 -0
  8. package/dist/components/form/cascader/src/LewCascader.vue.d.ts +40 -31
  9. package/dist/components/form/cascader/src/cascader.d.ts +15 -0
  10. package/dist/components/form/cascader/src/emits.d.ts +5 -1
  11. package/dist/components/form/cascader/src/props.d.ts +15 -10
  12. package/dist/components/form/index.d.ts +1 -1
  13. package/dist/components/form/input/src/LewInput.vue.d.ts +2 -2
  14. package/dist/components/form/input-number/src/LewInputNumber.vue.d.ts +2 -2
  15. package/dist/components/form/input-tag/src/LewInputTag.vue.d.ts +4 -4
  16. package/dist/components/form/select/src/LewSelect.vue.d.ts +1480 -411
  17. package/dist/components/form/select/src/emits.d.ts +5 -1
  18. package/dist/components/form/select/src/props.d.ts +7 -2
  19. package/dist/components/form/textarea/src/LewTextarea.vue.d.ts +4 -2
  20. package/dist/components/form/tree-select/src/LewTreeSelect.vue.d.ts +40 -23
  21. package/dist/components/form/tree-select/src/props.d.ts +0 -5
  22. package/dist/components/form/tree-select-multiple/index.d.ts +3 -0
  23. package/dist/components/form/{select-multiple/src/LewSelectMultiple.vue.d.ts → tree-select-multiple/src/LewTreeSelectMultiple.vue.d.ts} +492 -930
  24. package/dist/components/form/tree-select-multiple/src/emits.d.ts +4 -0
  25. package/dist/components/form/{select-multiple → tree-select-multiple}/src/props.d.ts +63 -55
  26. package/dist/hooks/index.d.ts +4 -2
  27. package/dist/hooks/useDOMCreate.d.ts +1 -0
  28. package/dist/hooks/useEventListener.d.ts +1 -0
  29. package/dist/hooks/useTreeSelection.d.ts +34 -0
  30. package/dist/index.css +1 -1
  31. package/dist/index.js +2067 -1731
  32. package/dist/index.umd.cjs +7 -7
  33. package/dist/types/components.d.ts +1 -1
  34. package/package.json +1 -1
  35. package/dist/components/form/select-multiple/index.d.ts +0 -3
  36. package/dist/components/form/select-multiple/src/emits.d.ts +0 -11
@@ -0,0 +1,4 @@
1
+ export declare const treeSelectMultipleEmits: {
2
+ readonly change: (value?: string) => string | undefined;
3
+ readonly clear: () => void;
4
+ };
@@ -1,38 +1,25 @@
1
1
  import { Property } from 'csstype';
2
- import { LewSelectMultipleOption, LewSelectMultipleValueLayout, LewSelectSearchMultipleMethodParams, LewSize, LewTrigger } from '../../../..';
2
+ import { LewSize, LewTreeDataSource, LewTrigger } from '../../../..';
3
3
  import { ExtractPublicPropTypes, PropType } from 'vue';
4
- export declare const selectMultipleModel: {
4
+ export declare const treeSelectMultipleModel: {
5
5
  modelValue: {
6
- type: PropType<string[]>;
7
- default: () => never[];
6
+ type: StringConstructor;
7
+ default: undefined;
8
8
  };
9
9
  };
10
- export declare const selectMultipleProps: {
11
- options: {
12
- type: PropType<LewSelectMultipleOption[]>;
10
+ export declare const treeSelectMultipleProps: {
11
+ dataSource: {
12
+ type: PropType<LewTreeDataSource[]>;
13
13
  typePopKeys: string[];
14
14
  validator: (value: any[] | undefined) => boolean;
15
15
  };
16
- trigger: {
17
- type: PropType<LewTrigger>;
18
- default: string;
19
- typeValues: LewTrigger[];
20
- validator: (value: any) => boolean;
21
- };
22
16
  width: {
23
17
  type: PropType<Property.Width>;
24
18
  default: string;
25
19
  validator: (value: string | number | undefined) => boolean;
26
20
  };
27
- valueLayout: {
28
- type: PropType<LewSelectMultipleValueLayout>;
29
- default: string;
30
- typeValues: LewSelectMultipleValueLayout[];
31
- validator: (value: any) => boolean;
32
- };
33
- valueTextSplit: {
21
+ defaultValue: {
34
22
  type: StringConstructor;
35
- default: string;
36
23
  validator: (value: any) => boolean;
37
24
  };
38
25
  placeholder: {
@@ -46,38 +33,44 @@ export declare const selectMultipleProps: {
46
33
  typeValues: LewSize[];
47
34
  validator: (value: any) => boolean;
48
35
  };
49
- itemHeight: {
50
- type: NumberConstructor;
51
- default: number;
36
+ disabled: {
37
+ type: BooleanConstructor;
38
+ default: boolean;
52
39
  validator: (value: any) => boolean;
53
40
  };
54
- searchable: {
41
+ clearable: {
55
42
  type: BooleanConstructor;
56
43
  default: boolean;
57
44
  validator: (value: any) => boolean;
58
45
  };
59
- searchPlaceholder: {
60
- type: StringConstructor;
61
- default: string;
46
+ checkable: {
47
+ type: BooleanConstructor;
48
+ default: boolean;
62
49
  validator: (value: any) => boolean;
63
50
  };
64
- searchMethod: {
65
- type: PropType<(params: LewSelectSearchMultipleMethodParams) => LewSelectMultipleOption[]>;
66
- default: undefined;
51
+ showAllLevels: {
52
+ type: BooleanConstructor;
53
+ default: boolean;
67
54
  validator: (value: any) => boolean;
68
55
  };
69
- initMethod: {
70
- type: PropType<() => LewSelectMultipleOption[] | Promise<LewSelectMultipleOption[]>>;
71
- default: undefined;
56
+ showCheckIcon: {
57
+ type: BooleanConstructor;
58
+ default: boolean;
72
59
  validator: (value: any) => boolean;
73
60
  };
74
- initMethodId: {
75
- type: StringConstructor;
61
+ showLine: {
62
+ type: BooleanConstructor;
63
+ default: boolean;
76
64
  validator: (value: any) => boolean;
77
65
  };
78
- searchMethodId: {
79
- type: StringConstructor;
80
- hidden: boolean;
66
+ expandAll: {
67
+ type: BooleanConstructor;
68
+ default: boolean;
69
+ validator: (value: any) => boolean;
70
+ };
71
+ searchable: {
72
+ type: BooleanConstructor;
73
+ default: boolean;
81
74
  validator: (value: any) => boolean;
82
75
  };
83
76
  searchDelay: {
@@ -85,35 +78,50 @@ export declare const selectMultipleProps: {
85
78
  default: number;
86
79
  validator: (value: any) => boolean;
87
80
  };
88
- clearable: {
81
+ readonly: {
89
82
  type: BooleanConstructor;
90
83
  default: boolean;
91
84
  validator: (value: any) => boolean;
92
85
  };
93
- enableSearchCache: {
86
+ free: {
94
87
  type: BooleanConstructor;
95
88
  default: boolean;
96
89
  validator: (value: any) => boolean;
97
90
  };
98
- readonly: {
99
- type: BooleanConstructor;
100
- default: boolean;
91
+ trigger: {
92
+ type: PropType<LewTrigger>;
93
+ default: string;
94
+ typeValues: LewTrigger[];
101
95
  validator: (value: any) => boolean;
102
96
  };
103
- disabled: {
104
- type: BooleanConstructor;
105
- default: boolean;
97
+ keyField: {
98
+ type: StringConstructor;
99
+ default: string;
106
100
  validator: (value: any) => boolean;
107
101
  };
108
- showCheckIcon: {
109
- type: BooleanConstructor;
110
- default: boolean;
102
+ labelField: {
103
+ type: StringConstructor;
104
+ default: string;
111
105
  validator: (value: any) => boolean;
112
106
  };
113
- defaultValue: {
114
- type: PropType<(string | number)[]>;
115
- default: () => never[];
116
- validator: (value: any[] | undefined) => boolean;
107
+ disabledField: {
108
+ type: StringConstructor;
109
+ default: string;
110
+ validator: (value: any) => boolean;
111
+ };
112
+ initMethod: {
113
+ type: PropType<() => void>;
114
+ default: undefined;
115
+ validator: (value: any) => boolean;
116
+ };
117
+ initMethodId: {
118
+ type: StringConstructor;
119
+ validator: (value: any) => boolean;
120
+ };
121
+ loadMethod: {
122
+ type: PropType<() => void>;
123
+ default: undefined;
124
+ validator: (value: any) => boolean;
117
125
  };
118
126
  };
119
- export type LewSelectMultipleProps = ExtractPublicPropTypes<typeof selectMultipleProps>;
127
+ export type LewTreeSelectMultipleProps = ExtractPublicPropTypes<typeof treeSelectMultipleProps>;
@@ -1,2 +1,4 @@
1
- export declare function useEventListener(target: EventTarget, event: string, callback: EventListenerOrEventListenerObject): void;
2
- export declare function useDOMCreate(nodeId: string): void;
1
+ import { useDOMCreate } from './useDOMCreate';
2
+ import { useEventListener } from './useEventListener';
3
+ import { useTreeSelection } from './useTreeSelection';
4
+ export { useDOMCreate, useEventListener, useTreeSelection };
@@ -0,0 +1 @@
1
+ export declare function useDOMCreate(nodeId: string): void;
@@ -0,0 +1 @@
1
+ export declare function useEventListener(target: EventTarget, event: string, callback: EventListenerOrEventListenerObject): void;
@@ -0,0 +1,34 @@
1
+ export interface TreeNode {
2
+ key: string;
3
+ children?: TreeNode[];
4
+ disabled?: boolean;
5
+ }
6
+ /**
7
+ * 树形选择 Hook - 参考 Ant Design 和 Element UI 的实现
8
+ *
9
+ * 核心规则:
10
+ * 1. 选中状态和半选状态互斥
11
+ * 2. 选中节点时,所有子节点自动选中
12
+ * 3. 取消选中节点时,所有子节点自动取消选中
13
+ * 4. 子节点状态变化时,自动更新所有祖先节点状态
14
+ */
15
+ export declare function useTreeSelection(): {
16
+ selectedKeys: globalThis.Ref<string[], string[]>;
17
+ indeterminateKeys: globalThis.Ref<string[], string[]>;
18
+ init: ({ tree: _tree, keys }: {
19
+ tree?: TreeNode[];
20
+ keys: string[];
21
+ }) => void;
22
+ addKey: (key: string) => void;
23
+ removeKey: (key: string) => void;
24
+ toggleKey: (key: string) => void;
25
+ isSelected: globalThis.ComputedRef<(key: string) => boolean>;
26
+ isIndeterminate: globalThis.ComputedRef<(key: string) => boolean>;
27
+ isNodeDisabled: (key: string) => boolean;
28
+ getSelectedLeafKeys: () => string[];
29
+ findItemsByValues: (values: string[]) => Array<{
30
+ key: string;
31
+ disabled?: boolean;
32
+ isLeaf: boolean;
33
+ }>;
34
+ };