@touchvue/ui 1.0.0-beta.17 → 1.0.0-beta.18
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/es/components/cascader/src/cascader.vue.d.ts +11 -1
- package/es/components/daterange/src/date-range.vue.d.ts +12 -1
- package/es/components/fix/index.d.ts +3 -3
- package/es/components/fix/src/Fix.vue.d.ts +1 -1
- package/es/components/form/src/form.vue.d.ts +1 -1
- package/es/components/grid/src/grid.vue.d.ts +1 -1
- package/es/components/msg/src/msg.vue.d.ts +12 -10
- package/es/components/param/index.d.ts +3 -3
- package/es/components/param/src/Param.vue.d.ts +1 -1
- package/es/components/scroll/index.d.ts +3 -3
- package/es/components/scroll/src/Scroll.vue.d.ts +1 -1
- package/es/components/step/src/step.vue.d.ts +1 -1
- package/es/components/tab/src/tab-item.vue.d.ts +1 -1
- package/es/components/tree/src/tree.vue.d.ts +1 -1
- package/es/components/upload/src/upload.vue.d.ts +4 -4
- package/es/packages/components/cascader/src/cascader.vue2.mjs +50 -13
- package/es/packages/components/cascader/src/cascader.vue2.mjs.map +1 -1
- package/es/packages/components/daterange/src/date-range.vue2.mjs +26 -7
- package/es/packages/components/daterange/src/date-range.vue2.mjs.map +1 -1
- package/es/packages/components/msg/index.mjs +3 -3
- package/es/packages/components/msg/index.mjs.map +1 -1
- package/es/packages/components/msg/src/msg.vue2.mjs +167 -176
- package/es/packages/components/msg/src/msg.vue2.mjs.map +1 -1
- package/es/packages/components/table/src/table.vue2.mjs +14 -3
- package/es/packages/components/table/src/table.vue2.mjs.map +1 -1
- package/es/packages/components/upload/src/upload.vue2.mjs +13 -13
- package/es/packages/components/upload/src/upload.vue2.mjs.map +1 -1
- package/es/packages/directives/loading/src/loading.mjs +8 -5
- package/es/packages/directives/loading/src/loading.mjs.map +1 -1
- package/lib/components/cascader/src/cascader.vue.d.ts +11 -1
- package/lib/components/daterange/src/date-range.vue.d.ts +12 -1
- package/lib/components/fix/index.d.ts +3 -3
- package/lib/components/fix/src/Fix.vue.d.ts +1 -1
- package/lib/components/form/src/form.vue.d.ts +1 -1
- package/lib/components/grid/src/grid.vue.d.ts +1 -1
- package/lib/components/msg/src/msg.vue.d.ts +12 -10
- package/lib/components/param/index.d.ts +3 -3
- package/lib/components/param/src/Param.vue.d.ts +1 -1
- package/lib/components/scroll/index.d.ts +3 -3
- package/lib/components/scroll/src/Scroll.vue.d.ts +1 -1
- package/lib/components/step/src/step.vue.d.ts +1 -1
- package/lib/components/tab/src/tab-item.vue.d.ts +1 -1
- package/lib/components/tree/src/tree.vue.d.ts +1 -1
- package/lib/components/upload/src/upload.vue.d.ts +4 -4
- package/lib/packages/components/cascader/src/cascader.vue2.js +49 -12
- package/lib/packages/components/cascader/src/cascader.vue2.js.map +1 -1
- package/lib/packages/components/daterange/src/date-range.vue2.js +25 -6
- package/lib/packages/components/daterange/src/date-range.vue2.js.map +1 -1
- package/lib/packages/components/msg/index.js +2 -2
- package/lib/packages/components/msg/index.js.map +1 -1
- package/lib/packages/components/msg/src/msg.vue2.js +167 -176
- package/lib/packages/components/msg/src/msg.vue2.js.map +1 -1
- package/lib/packages/components/table/src/table.vue2.js +13 -2
- package/lib/packages/components/table/src/table.vue2.js.map +1 -1
- package/lib/packages/components/upload/src/upload.vue2.js +13 -13
- package/lib/packages/components/upload/src/upload.vue2.js.map +1 -1
- package/lib/packages/directives/loading/src/loading.js +8 -5
- package/lib/packages/directives/loading/src/loading.js.map +1 -1
- package/package.json +1 -1
- package/theme/components/index.css +152 -62
- package/theme/img/loading-msg.png +0 -0
- package/theme/index.css +152 -62
- package/theme/skin/default.css +152 -62
|
@@ -26,6 +26,7 @@ export interface Props {
|
|
|
26
26
|
comparable?: boolean;
|
|
27
27
|
required?: boolean;
|
|
28
28
|
desc?: string;
|
|
29
|
+
prefix?: string;
|
|
29
30
|
}
|
|
30
31
|
export interface ProvideProps {
|
|
31
32
|
props: Props;
|
|
@@ -37,7 +38,10 @@ export interface ProvideProps {
|
|
|
37
38
|
}
|
|
38
39
|
declare function compare(): void;
|
|
39
40
|
declare function restore(): void;
|
|
40
|
-
declare
|
|
41
|
+
declare function __VLS_template(): {
|
|
42
|
+
prefix?(_: {}): any;
|
|
43
|
+
};
|
|
44
|
+
declare const __VLS_component: import("vue").DefineComponent<Props, {
|
|
41
45
|
compare: typeof compare;
|
|
42
46
|
restore: typeof restore;
|
|
43
47
|
changed: import("vue").ComputedRef<boolean>;
|
|
@@ -69,4 +73,10 @@ declare const _default: import("vue").DefineComponent<Props, {
|
|
|
69
73
|
childrenText: string;
|
|
70
74
|
any: boolean;
|
|
71
75
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
76
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
|
|
72
77
|
export default _default;
|
|
78
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
79
|
+
new (): {
|
|
80
|
+
$slots: S;
|
|
81
|
+
};
|
|
82
|
+
};
|
|
@@ -11,8 +11,12 @@ export interface DateRangeProps {
|
|
|
11
11
|
max?: string | Date | number;
|
|
12
12
|
disabled?: boolean;
|
|
13
13
|
clearable?: boolean;
|
|
14
|
+
prefix?: string;
|
|
14
15
|
}
|
|
15
|
-
declare
|
|
16
|
+
declare function __VLS_template(): {
|
|
17
|
+
prefix?(_: {}): any;
|
|
18
|
+
};
|
|
19
|
+
declare const __VLS_component: import("vue").DefineComponent<DateRangeProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
16
20
|
change: (...args: any[]) => void;
|
|
17
21
|
focus: (...args: any[]) => void;
|
|
18
22
|
"update:modelValue": (...args: any[]) => void;
|
|
@@ -28,10 +32,17 @@ declare const _default: import("vue").DefineComponent<DateRangeProps, {}, {}, {}
|
|
|
28
32
|
modelValue: string;
|
|
29
33
|
inputable: boolean;
|
|
30
34
|
clearable: boolean;
|
|
35
|
+
prefix: string;
|
|
31
36
|
min: string | Date | number;
|
|
32
37
|
max: string | Date | number;
|
|
33
38
|
seperatorText: string;
|
|
34
39
|
startPlaceholder: string;
|
|
35
40
|
endPlaceholder: string;
|
|
36
41
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
42
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
|
|
37
43
|
export default _default;
|
|
44
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
45
|
+
new (): {
|
|
46
|
+
$slots: S;
|
|
47
|
+
};
|
|
48
|
+
};
|
|
@@ -33,8 +33,8 @@ export declare const ToFix: import("@touchvue/ui/es/utils").SFCWithInstall<{
|
|
|
33
33
|
number: string | number;
|
|
34
34
|
left: string | number;
|
|
35
35
|
right: string | number;
|
|
36
|
-
top: string | number;
|
|
37
36
|
bottom: string | number;
|
|
37
|
+
top: string | number;
|
|
38
38
|
draggable: boolean;
|
|
39
39
|
appendToBody: boolean;
|
|
40
40
|
}, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
|
|
@@ -76,8 +76,8 @@ export declare const ToFix: import("@touchvue/ui/es/utils").SFCWithInstall<{
|
|
|
76
76
|
number: string | number;
|
|
77
77
|
left: string | number;
|
|
78
78
|
right: string | number;
|
|
79
|
-
top: string | number;
|
|
80
79
|
bottom: string | number;
|
|
80
|
+
top: string | number;
|
|
81
81
|
draggable: boolean;
|
|
82
82
|
appendToBody: boolean;
|
|
83
83
|
}>;
|
|
@@ -118,8 +118,8 @@ export declare const ToFix: import("@touchvue/ui/es/utils").SFCWithInstall<{
|
|
|
118
118
|
number: string | number;
|
|
119
119
|
left: string | number;
|
|
120
120
|
right: string | number;
|
|
121
|
-
top: string | number;
|
|
122
121
|
bottom: string | number;
|
|
122
|
+
top: string | number;
|
|
123
123
|
draggable: boolean;
|
|
124
124
|
appendToBody: boolean;
|
|
125
125
|
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
|
|
@@ -61,8 +61,8 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
61
61
|
number: string | number;
|
|
62
62
|
left: string | number;
|
|
63
63
|
right: string | number;
|
|
64
|
-
top: string | number;
|
|
65
64
|
bottom: string | number;
|
|
65
|
+
top: string | number;
|
|
66
66
|
draggable: boolean;
|
|
67
67
|
appendToBody: boolean;
|
|
68
68
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
@@ -68,9 +68,9 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
68
68
|
mode: string;
|
|
69
69
|
type: string;
|
|
70
70
|
col: string | number;
|
|
71
|
+
dir: string;
|
|
71
72
|
readonly: boolean;
|
|
72
73
|
comparable: boolean;
|
|
73
|
-
dir: string;
|
|
74
74
|
labelWidth: string | number;
|
|
75
75
|
submitPosition: string;
|
|
76
76
|
valueWidth: string;
|
|
@@ -20,9 +20,9 @@ declare const __VLS_component: import("vue").DefineComponent<GridProps, {}, {},
|
|
|
20
20
|
col: number | string;
|
|
21
21
|
height: number | string;
|
|
22
22
|
padding: number | string;
|
|
23
|
+
dir: string;
|
|
23
24
|
paddingPosition: string;
|
|
24
25
|
wrap: boolean;
|
|
25
|
-
dir: string;
|
|
26
26
|
gap: number | string;
|
|
27
27
|
verticalAlign: string;
|
|
28
28
|
va: string;
|
|
@@ -11,18 +11,19 @@ export interface Props {
|
|
|
11
11
|
buttons?: ButtonConfig[];
|
|
12
12
|
height?: string | number;
|
|
13
13
|
width?: string | number;
|
|
14
|
+
dir?: string;
|
|
14
15
|
detail?: string;
|
|
15
|
-
detailWidth?: string | number;
|
|
16
16
|
showDetail?: boolean;
|
|
17
17
|
padding?: string | number;
|
|
18
|
-
picPosition?: string;
|
|
19
18
|
position?: string;
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
confirmText?: string;
|
|
20
|
+
cancelText?: string;
|
|
22
21
|
closeOnBlur?: boolean;
|
|
23
22
|
zIndex?: number | string;
|
|
24
|
-
global?: boolean;
|
|
25
23
|
show?: boolean;
|
|
24
|
+
global?: boolean;
|
|
25
|
+
confirmable?: boolean;
|
|
26
|
+
cancelable?: boolean;
|
|
26
27
|
}
|
|
27
28
|
declare function __VLS_template(): {
|
|
28
29
|
title?(_: {}): any;
|
|
@@ -51,14 +52,15 @@ declare const __VLS_component: import("vue").DefineComponent<Props, {
|
|
|
51
52
|
buttons: ButtonConfig[];
|
|
52
53
|
height: string | number;
|
|
53
54
|
detail: string;
|
|
54
|
-
detailWidth: string | number;
|
|
55
55
|
showDetail: boolean;
|
|
56
56
|
padding: string | number;
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
global: boolean;
|
|
57
|
+
dir: string;
|
|
58
|
+
confirmText: string;
|
|
59
|
+
cancelText: string;
|
|
61
60
|
show: boolean;
|
|
61
|
+
global: boolean;
|
|
62
|
+
confirmable: boolean;
|
|
63
|
+
cancelable: boolean;
|
|
62
64
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
63
65
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
|
|
64
66
|
export default _default;
|
|
@@ -57,8 +57,8 @@ export declare const ToParam: import("@touchvue/ui/es/utils").SFCWithInstall<{
|
|
|
57
57
|
type: string;
|
|
58
58
|
col: string | number;
|
|
59
59
|
tip: boolean;
|
|
60
|
-
wrap: boolean;
|
|
61
60
|
dir: import("@touchvue/ui/index.ts").ParamDir;
|
|
61
|
+
wrap: boolean;
|
|
62
62
|
labelWidth: string | number;
|
|
63
63
|
avg: boolean;
|
|
64
64
|
}, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
|
|
@@ -126,8 +126,8 @@ export declare const ToParam: import("@touchvue/ui/es/utils").SFCWithInstall<{
|
|
|
126
126
|
type: string;
|
|
127
127
|
col: string | number;
|
|
128
128
|
tip: boolean;
|
|
129
|
-
wrap: boolean;
|
|
130
129
|
dir: import("@touchvue/ui/index.ts").ParamDir;
|
|
130
|
+
wrap: boolean;
|
|
131
131
|
labelWidth: string | number;
|
|
132
132
|
avg: boolean;
|
|
133
133
|
}>;
|
|
@@ -192,8 +192,8 @@ export declare const ToParam: import("@touchvue/ui/es/utils").SFCWithInstall<{
|
|
|
192
192
|
type: string;
|
|
193
193
|
col: string | number;
|
|
194
194
|
tip: boolean;
|
|
195
|
-
wrap: boolean;
|
|
196
195
|
dir: import("@touchvue/ui/index.ts").ParamDir;
|
|
196
|
+
wrap: boolean;
|
|
197
197
|
labelWidth: string | number;
|
|
198
198
|
avg: boolean;
|
|
199
199
|
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
|
|
@@ -109,8 +109,8 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
109
109
|
type: string;
|
|
110
110
|
col: string | number;
|
|
111
111
|
tip: boolean;
|
|
112
|
-
wrap: boolean;
|
|
113
112
|
dir: import("@touchvue/ui/index.ts").ParamDir;
|
|
113
|
+
wrap: boolean;
|
|
114
114
|
labelWidth: string | number;
|
|
115
115
|
avg: boolean;
|
|
116
116
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
@@ -80,10 +80,10 @@ export declare const ToScroll: import("@touchvue/ui/es/utils").SFCWithInstall<{
|
|
|
80
80
|
color: string;
|
|
81
81
|
height: string | number;
|
|
82
82
|
padding: string | number;
|
|
83
|
-
top: string | number;
|
|
84
83
|
paddingPosition: string;
|
|
85
84
|
modelValue: string | number;
|
|
86
85
|
bottom: string | number;
|
|
86
|
+
top: string | number;
|
|
87
87
|
virtual: boolean;
|
|
88
88
|
speed: number;
|
|
89
89
|
barDisplay: string;
|
|
@@ -169,10 +169,10 @@ export declare const ToScroll: import("@touchvue/ui/es/utils").SFCWithInstall<{
|
|
|
169
169
|
color: string;
|
|
170
170
|
height: string | number;
|
|
171
171
|
padding: string | number;
|
|
172
|
-
top: string | number;
|
|
173
172
|
paddingPosition: string;
|
|
174
173
|
modelValue: string | number;
|
|
175
174
|
bottom: string | number;
|
|
175
|
+
top: string | number;
|
|
176
176
|
virtual: boolean;
|
|
177
177
|
speed: number;
|
|
178
178
|
barDisplay: string;
|
|
@@ -262,10 +262,10 @@ export declare const ToScroll: import("@touchvue/ui/es/utils").SFCWithInstall<{
|
|
|
262
262
|
color: string;
|
|
263
263
|
height: string | number;
|
|
264
264
|
padding: string | number;
|
|
265
|
-
top: string | number;
|
|
266
265
|
paddingPosition: string;
|
|
267
266
|
modelValue: string | number;
|
|
268
267
|
bottom: string | number;
|
|
268
|
+
top: string | number;
|
|
269
269
|
virtual: boolean;
|
|
270
270
|
speed: number;
|
|
271
271
|
barDisplay: string;
|
|
@@ -136,10 +136,10 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
136
136
|
color: string;
|
|
137
137
|
height: string | number;
|
|
138
138
|
padding: string | number;
|
|
139
|
-
top: string | number;
|
|
140
139
|
paddingPosition: string;
|
|
141
140
|
modelValue: string | number;
|
|
142
141
|
bottom: string | number;
|
|
142
|
+
top: string | number;
|
|
143
143
|
virtual: boolean;
|
|
144
144
|
speed: number;
|
|
145
145
|
barDisplay: string;
|
|
@@ -71,8 +71,8 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
71
71
|
}>, {
|
|
72
72
|
mode: string;
|
|
73
73
|
data: string | ItemProps[];
|
|
74
|
-
modelValue: string | number;
|
|
75
74
|
dir: string;
|
|
75
|
+
modelValue: string | number;
|
|
76
76
|
itemDir: string;
|
|
77
77
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
78
78
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
|
|
@@ -18,9 +18,9 @@ declare const __VLS_component: import("vue").DefineComponent<TabItemProps, {}, {
|
|
|
18
18
|
lazy: boolean;
|
|
19
19
|
data: any;
|
|
20
20
|
label: string;
|
|
21
|
-
pic: string;
|
|
22
21
|
icon: string;
|
|
23
22
|
disabled: boolean;
|
|
23
|
+
pic: string;
|
|
24
24
|
on: boolean;
|
|
25
25
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
26
26
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
|
|
@@ -54,6 +54,7 @@ declare const __VLS_component: import("vue").DefineComponent<Props, {}, {}, {},
|
|
|
54
54
|
valueText: string;
|
|
55
55
|
labelText: string;
|
|
56
56
|
modelValue: Node[] | string;
|
|
57
|
+
emptyText: string;
|
|
57
58
|
toggleLink: false;
|
|
58
59
|
checkLink: false;
|
|
59
60
|
selectable: false;
|
|
@@ -61,7 +62,6 @@ declare const __VLS_component: import("vue").DefineComponent<Props, {}, {}, {},
|
|
|
61
62
|
checkStrictly: false;
|
|
62
63
|
accordion: false;
|
|
63
64
|
childrenText: string;
|
|
64
|
-
emptyText: string;
|
|
65
65
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
66
66
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
|
|
67
67
|
export default _default;
|
|
@@ -23,8 +23,8 @@ export interface FileProps {
|
|
|
23
23
|
credentialsable?: boolean;
|
|
24
24
|
files?: any[];
|
|
25
25
|
data?: object;
|
|
26
|
-
beforeSelect?: (() => boolean | Promise<any>) | null;
|
|
27
|
-
beforeStart?: (() => boolean | Promise<any>) | null;
|
|
26
|
+
beforeSelect?: ((fileList: any) => boolean | Promise<any>) | null;
|
|
27
|
+
beforeStart?: ((file: any) => boolean | Promise<any>) | null;
|
|
28
28
|
verifiable?: boolean;
|
|
29
29
|
}
|
|
30
30
|
declare function clear(): void;
|
|
@@ -80,8 +80,8 @@ declare const __VLS_component: import("vue").DefineComponent<FileProps, {
|
|
|
80
80
|
credentialsable: boolean;
|
|
81
81
|
files: any[];
|
|
82
82
|
headers: object;
|
|
83
|
-
beforeSelect: (() => boolean | Promise<any>) | null;
|
|
84
|
-
beforeStart: (() => boolean | Promise<any>) | null;
|
|
83
|
+
beforeSelect: ((fileList: any) => boolean | Promise<any>) | null;
|
|
84
|
+
beforeStart: ((file: any) => boolean | Promise<any>) | null;
|
|
85
85
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
86
86
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
|
|
87
87
|
export default _default;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent, inject, ref, computed, provide, watch, nextTick, resolveComponent, resolveDirective, withDirectives, openBlock, createElementBlock, normalizeClass, normalizeStyle, vShow, createCommentVNode, createElementVNode, toDisplayString, createVNode, unref, withModifiers, withCtx, Fragment, createTextVNode } from 'vue';
|
|
1
|
+
import { defineComponent, inject, ref, computed, provide, watch, nextTick, resolveComponent, resolveDirective, withDirectives, openBlock, createElementBlock, normalizeClass, normalizeStyle, vShow, createCommentVNode, renderSlot, createElementVNode, toDisplayString, createVNode, unref, withModifiers, withCtx, Fragment, createTextVNode } from 'vue';
|
|
2
2
|
import { ToIcon } from '../../icon/index.mjs';
|
|
3
3
|
import { ToFloat } from '../../float/index.mjs';
|
|
4
4
|
import CascaderItem from './cascader-item.vue.mjs';
|
|
@@ -27,7 +27,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
27
27
|
data: { default: () => [] },
|
|
28
28
|
comparable: { type: Boolean, default: false },
|
|
29
29
|
required: { type: Boolean, default: false },
|
|
30
|
-
desc: { default: "" }
|
|
30
|
+
desc: { default: "" },
|
|
31
|
+
prefix: {}
|
|
31
32
|
},
|
|
32
33
|
emits: ["change", "update:modelValue"],
|
|
33
34
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
@@ -144,6 +145,16 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
144
145
|
},
|
|
145
146
|
{ immediate: true }
|
|
146
147
|
);
|
|
148
|
+
watch(
|
|
149
|
+
() => props.data,
|
|
150
|
+
(val) => {
|
|
151
|
+
data_.value = initData(val);
|
|
152
|
+
checkedData.value = [];
|
|
153
|
+
value_.value = "";
|
|
154
|
+
valueLabel.value = "";
|
|
155
|
+
},
|
|
156
|
+
{ deep: true }
|
|
157
|
+
);
|
|
147
158
|
const emit = __emit;
|
|
148
159
|
function initData(data, levels = 0) {
|
|
149
160
|
let arr = deepClone(data);
|
|
@@ -167,7 +178,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
167
178
|
function handleClick() {
|
|
168
179
|
errorTip.value = "";
|
|
169
180
|
if (!(props.disabled || disabled.value)) {
|
|
170
|
-
cascaderFloat.value.
|
|
181
|
+
cascaderFloat.value.toggle($el.value);
|
|
171
182
|
iconValue.value = iconValue.value === "unfold" ? "fold" : "unfold";
|
|
172
183
|
}
|
|
173
184
|
}
|
|
@@ -249,8 +260,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
249
260
|
setLevel(0);
|
|
250
261
|
}
|
|
251
262
|
function change(v) {
|
|
252
|
-
emit("change", v, checkedData.value);
|
|
253
263
|
emit("update:modelValue", v);
|
|
264
|
+
emit("change", v, checkedData.value);
|
|
254
265
|
}
|
|
255
266
|
const setLabel = () => {
|
|
256
267
|
if (value_.value) {
|
|
@@ -301,8 +312,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
301
312
|
ref_key: "$el",
|
|
302
313
|
ref: $el,
|
|
303
314
|
class: normalizeClass(["to-cascader", setClass.value]),
|
|
304
|
-
style: normalizeStyle(setStyle.value)
|
|
305
|
-
onClick: handleClick
|
|
315
|
+
style: normalizeStyle(setStyle.value)
|
|
306
316
|
},
|
|
307
317
|
[
|
|
308
318
|
validateRequired.value ? withDirectives((openBlock(), createElementBlock("span", {
|
|
@@ -314,7 +324,28 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
314
324
|
}, null, 8, ["req", "desc", "value"])), [
|
|
315
325
|
[vShow, false]
|
|
316
326
|
]) : createCommentVNode("v-if", true),
|
|
317
|
-
|
|
327
|
+
_ctx.$slots.prefix ? (openBlock(), createElementBlock("span", {
|
|
328
|
+
key: 1,
|
|
329
|
+
class: "to-cascader-prefix"
|
|
330
|
+
}, [
|
|
331
|
+
renderSlot(_ctx.$slots, "prefix")
|
|
332
|
+
])) : createCommentVNode("v-if", true),
|
|
333
|
+
props.prefix ? (openBlock(), createElementBlock("span", {
|
|
334
|
+
key: 2,
|
|
335
|
+
class: "to-cascader-prefix-text"
|
|
336
|
+
}, [
|
|
337
|
+
createElementVNode(
|
|
338
|
+
"span",
|
|
339
|
+
null,
|
|
340
|
+
toDisplayString(props.prefix),
|
|
341
|
+
1
|
|
342
|
+
/* TEXT */
|
|
343
|
+
)
|
|
344
|
+
])) : createCommentVNode("v-if", true),
|
|
345
|
+
createElementVNode("span", {
|
|
346
|
+
class: "to-cascader-content",
|
|
347
|
+
onClick: handleClick
|
|
348
|
+
}, [
|
|
318
349
|
createElementVNode("span", { class: "to-cascader-value" }, [
|
|
319
350
|
value_.value ? (openBlock(), createElementBlock(
|
|
320
351
|
"span",
|
|
@@ -335,7 +366,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
335
366
|
])
|
|
336
367
|
]),
|
|
337
368
|
_ctx.clearable && value_.value ? (openBlock(), createElementBlock("span", {
|
|
338
|
-
key:
|
|
369
|
+
key: 3,
|
|
339
370
|
class: "to-cascader-clear"
|
|
340
371
|
}, [
|
|
341
372
|
createVNode(unref(ToIcon), {
|
|
@@ -343,7 +374,10 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
343
374
|
onClick: withModifiers(handleClear, ["stop"])
|
|
344
375
|
})
|
|
345
376
|
])) : createCommentVNode("v-if", true),
|
|
346
|
-
createElementVNode("span", {
|
|
377
|
+
createElementVNode("span", {
|
|
378
|
+
class: "to-cascader-arrow",
|
|
379
|
+
onClick: handleClick
|
|
380
|
+
}, [
|
|
347
381
|
createCommentVNode("v-if", true)
|
|
348
382
|
]),
|
|
349
383
|
createVNode(unref(ToFloat), {
|
|
@@ -356,21 +390,24 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
356
390
|
default: withCtx(() => [
|
|
357
391
|
!data_.value.length ? (openBlock(), createElementBlock("div", {
|
|
358
392
|
key: 0,
|
|
359
|
-
style: { "text-align": "center", "color": "#ccc", "padding": "
|
|
393
|
+
style: { "text-align": "center", "color": "#ccc", "padding": "3em 0.3em" }
|
|
360
394
|
}, "\u6682\u65E0\u6570\u636E")) : createCommentVNode("v-if", true),
|
|
361
|
-
createVNode(_component_to_scroll,
|
|
395
|
+
createVNode(_component_to_scroll, {
|
|
396
|
+
onClick: withModifiers(() => {
|
|
397
|
+
}, ["stop"])
|
|
398
|
+
}, {
|
|
362
399
|
default: withCtx(() => [
|
|
363
400
|
createVNode(CascaderItem, { data: data_.value }, null, 8, ["data"])
|
|
364
401
|
]),
|
|
365
402
|
_: 1
|
|
366
403
|
/* STABLE */
|
|
367
|
-
})
|
|
404
|
+
}, 8, ["onClick"])
|
|
368
405
|
]),
|
|
369
406
|
_: 1
|
|
370
407
|
/* STABLE */
|
|
371
408
|
}, 8, ["width"]),
|
|
372
409
|
errorTip.value ? withDirectives((openBlock(), createElementBlock("span", {
|
|
373
|
-
key:
|
|
410
|
+
key: 4,
|
|
374
411
|
class: "to-box-tip"
|
|
375
412
|
}, [
|
|
376
413
|
errorType.value === "rule" ? (openBlock(), createElementBlock(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cascader.vue2.mjs","sources":["../../../../../../packages/components/cascader/src/cascader.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\n\tname: 'ToCascader'\n});\n</script>\n<template>\n\t<div ref=\"$el\" v-tip=\"changed ? t('to.common.originalValue', getLabelPath(valueStore[0], data_)) : ''\" class=\"to-cascader\" :class=\"setClass\" :style=\"setStyle\" @click=\"handleClick\">\n\t\t<span v-if=\"validateRequired\" v-show=\"false\" class=\"to-validate\" :req=\"validateRequired\" :desc=\"validateDesc\" :value=\"value_ ? 'true' : ''\"></span>\n\t\t<span class=\"to-cascader-content\">\n\t\t\t<span class=\"to-cascader-value\">\n\t\t\t\t<span v-if=\"value_\">{{ valueLabel }}</span>\n\t\t\t\t<span v-else class=\"to-cascader-placeholder\">{{ placeholder }}</span>\n\t\t\t</span>\n\t\t</span>\n\t\t<span v-if=\"clearable && value_\" class=\"to-cascader-clear\">\n\t\t\t<to-icon value=\"close\" @click.stop=\"handleClear\"></to-icon>\n\t\t</span>\n\t\t<span class=\"to-cascader-arrow\">\n\t\t\t<to-icon v-if=\"false\" :value=\"iconValue\"></to-icon>\n\t\t</span>\n\t\t<to-float ref=\"cascaderFloat\" class=\"to-cascader-layer\" :width=\"floatWidth\" @closed=\"afterClose\">\n\t\t\t<div v-if=\"!data_.length\" style=\"text-align: center; color: #ccc; padding: 0 0.3em\">暂无数据</div>\n\t\t\t<to-scroll>\n\t\t\t\t<to-cascader-item :data=\"data_\"></to-cascader-item>\n\t\t\t</to-scroll>\n\t\t</to-float>\n\t\t<span v-if=\"errorTip\" v-color=\"'danger'\" class=\"to-box-tip\">\n\t\t\t<template v-if=\"errorType === 'rule'\">\n\t\t\t\t输入有误\n\t\t\t\t<to-icon v-tip.danger=\"errorTip\" style=\"height: auto\" value=\"help\" color=\"danger\" mode=\"toast\" fillet=\"round\"></to-icon>\n\t\t\t</template>\n\t\t\t<template v-else> 不能为空 </template>\n\t\t</span>\n\t</div>\n</template>\n\n<script setup lang=\"ts\">\nimport { CSSProperties, computed, provide, ref, watch, nextTick, inject } from 'vue'\nimport { ToIcon, ToFloat } from '@touchvue/components'\nimport ToCascaderItem from './cascader-item.vue'\nimport { deepClone } from '@touchvue/utils'\nimport { t } from '@touchvue/locale'\n\n\n\nconst ToFormItem = inject<{ required?: boolean; label?: string }>('ToFormItem', {})\n\nexport type VType = string | unknown[]\n\nexport interface Item {\n\tlabel?: string\n\tvalue?: string\n\tchildren?: string\n\tisSelect?: boolean\n\tisLeaf?: boolean\n\tlevel?: number\n\t[key: string]: any\n}\n\nexport interface Props {\n\tmode?: string\n\tlazy?: boolean\n\tdisabled?: boolean\n\tany?: boolean\n\tclearable?: boolean\n\tmodelValue?: string | []\n\twidth?: string | number\n\tlabelText?: string\n\tvalueText?: string\n\tchildrenText?: string\n\tplaceholder?: string\n\toptionWidth?: string | number\n\toptionCol?: string | number\n\tdata: []\n\tcomparable?: boolean\n\trequired?: boolean\n\tdesc?: string\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n\tmode: 'default',\n\tlazy: false,\n\tdisabled: false,\n\tany: true,\n\tclearable: false,\n\tmodelValue: '',\n\twidth: '',\n\tlabelText: 'label',\n\tvalueText: 'value',\n\tchildrenText: 'children',\n\tplaceholder: '请选择',\n\toptionWidth: '16em',\n\toptionCol: '',\n\tdata: () => [],\n\tcomparable: false,\n\trequired: false,\n\tdesc: ''\n})\n\nconst ToForm = inject<{ comparable?: boolean }>('ToForm', {})\n\nconst iconValue = ref('unfold')\nconst value_ = ref<VType>('')\nconst valueLabel = ref('')\nconst data_ = ref<Item[]>(initData(props.data))\nconst cascaderFloat = ref(null)\nconst $el = ref(null)\nconst currentLevel = ref(0)\nconst checkedData = ref<Item[]>([])\nconst valueStore = ref<string[]>([])\nconst disabled = ref(props.disabled)\nconst errorTip = ref('')\nconst errorType = ref('rule')\n\nconst floatWidth = computed(() => {\n\tlet unit = 'em'\n\tlet sArr = []\n\tlet omit = 16\n\tif (props.optionWidth) {\n\t\tif (isNaN(Number(props.optionWidth))) {\n\t\t\tif ((props.optionWidth as string).includes('em')) {\n\t\t\t\tunit = 'em'\n\t\t\t\tsArr = (props.optionWidth as string).split('em')\n\t\t\t} else {\n\t\t\t\tunit = 'px'\n\t\t\t\tsArr = (props.optionWidth as string).split('px')\n\t\t\t}\n\t\t\tomit = Number(sArr[0])\n\t\t} else {\n\t\t\tomit = Number(props.optionWidth)\n\t\t}\n\t}\n\treturn `${(currentLevel.value + 1) * omit}${unit}`\n})\n\nconst setClass = computed(() => {\n\tconst arr = ['to-form-readonly']\n\tif (errorTip.value) {\n\t\tarr.push('to-cascader-mode-line')\n\t\tarr.push('to-cascader-color-danger')\n\t\tarr.push('to-cascader-tip-show')\n\t} else {\n\t\tif (props.mode) {\n\t\t\tarr.push(`mode-${props.mode}`)\n\t\t}\n\t\tif ((ToForm && ToForm?.comparable) || props.comparable) {\n\t\t\tarr.push('to-compare')\n\t\t}\n\t\tif (changed.value) {\n\t\t\tarr.push('to-cascader-changed')\n\t\t}\n\t\tif (disabled.value || props.disabled) {\n\t\t\tarr.push('is-disabled')\n\t\t}\n\t}\n\treturn arr\n})\nconst setStyle = computed(() => {\n\tlet obj: CSSProperties = {}\n\tif (props.width) {\n\t\tif (isNaN(Number(props.width))) {\n\t\t\tobj.width = props.width\n\t\t} else {\n\t\t\tobj.width = `${props.width}em`\n\t\t}\n\t}\n\treturn obj\n})\nconst changed = computed(() => {\n\tif ((props.comparable || ToForm?.comparable) && valueStore.value.length > 0 && value_.value !== valueStore.value[0]) {\n\t\treturn true\n\t} else {\n\t\treturn false\n\t}\n})\n\nconst validateRequired = computed(() => {\n\tif (props.required) {\n\t\treturn 'true'\n\t} else if (ToFormItem && ToFormItem.required) {\n\t\treturn 'true'\n\t} else {\n\t\treturn 'false'\n\t}\n})\nconst validateDesc = computed(() => {\n\tif (props.desc) {\n\t\treturn props.desc\n\t} else if (ToFormItem && ToFormItem.label) {\n\t\treturn ToFormItem.label\n\t} else {\n\t\treturn ''\n\t}\n})\nexport interface ProvideProps {\n\tprops: Props\n\tsetLevel: (level: number) => void\n\tclose: () => void\n\tsetParentCheckedByValue: (arr: Item[], value: string, level: number) => void\n\tstore: Item[]\n\tsetViewData: () => void\n}\n\nprovide<ProvideProps>('pProps', {\n\tprops,\n\tsetLevel,\n\tclose,\n\tsetParentCheckedByValue,\n\tstore: data_.value,\n\tsetViewData\n})\n\nwatch(\n\t() => props.modelValue,\n\tval => {\n\t\tvalue_.value = val\n\t\tif (props.data && props.data.length) {\n\t\t\tnextTick(() => {\n\t\t\t\tsetLabel()\n\t\t\t})\n\t\t}\n\t},\n\t{ immediate: true }\n)\n\nconst emit = defineEmits(['change', 'update:modelValue'])\nfunction initData(data: Item[], levels = 0) {\n\tlet arr = deepClone(data)\n\tlet tem = []\n\tlet level = levels\n\tarr.forEach((item: Item) => {\n\t\tif (item[props.childrenText] && item[props.childrenText].length) {\n\t\t\ttem.push({\n\t\t\t\t...item,\n\t\t\t\tlevel,\n\t\t\t\tisLeaf: false,\n\t\t\t\tisSelect: false,\n\t\t\t\t[props.childrenText]: initData(item[props.childrenText], level + 1)\n\t\t\t})\n\t\t} else {\n\t\t\ttem.push({ ...item, level, isSelect: false, isLeaf: true })\n\t\t}\n\t})\n\treturn tem\n}\nfunction handleClick() {\n\terrorTip.value = ''\n\tif (!(props.disabled || disabled.value)) {\n\t\t// cascaderFloat.value.toggle($el.value)\n\t\tcascaderFloat.value.open($el.value)\n\t\ticonValue.value = iconValue.value === 'unfold' ? 'fold' : 'unfold'\n\t}\n}\nfunction handleClear() {\n\tif (!props.disabled) {\n\t\tvalueLabel.value = ''\n\t\tresetCheckedData(data_.value)\n\t\tcheckedData.value = []\n\t\tvalue_.value = ''\n\t\tchange('')\n\t}\n}\nfunction setLevel(idx: number) {\n\tcurrentLevel.value = idx\n}\nfunction setParentCheckedByValue(arr, value, level) {\n\tarr.forEach((item: Item) => {\n\t\tif (item.level === level) {\n\t\t\tif (item[props.valueText] === value) {\n\t\t\t\titem.isSelect = true\n\t\t\t\tsetCheckedData(checkedData.value, level, item)\n\t\t\t} else {\n\t\t\t\titem.isSelect = false\n\t\t\t}\n\t\t} else {\n\t\t\tif (item[props.childrenText] && item[props.childrenText].length) {\n\t\t\t\tsetParentCheckedByValue(item[props.childrenText], value, level)\n\t\t\t}\n\t\t}\n\t})\n}\nfunction setCheckedData(arr: Item[], level, item) {\n\tlet idx = arr.findIndex(k => k.level === level)\n\tif (arr.length && idx !== -1) {\n\t\tif (arr[idx][props.valueText] !== item[props.valueText]) {\n\t\t\tlet resetArr = arr.filter(k => k.level > level)\n\t\t\tif (resetArr.length) {\n\t\t\t\tresetArr.forEach(k => {\n\t\t\t\t\tlet i = arr.findIndex(l => l.level === k.level)\n\t\t\t\t\tif (i !== -1) {\n\t\t\t\t\t\tarr.splice(i, 1)\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t}\n\tif (idx !== -1) {\n\t\tarr[idx] = { ...item }\n\t} else {\n\t\tarr.push(deepClone(item))\n\t}\n}\nfunction resetCheckedData(arr: Item[]) {\n\tarr.forEach((item: Item) => {\n\t\titem.isSelect = false\n\t\tif (item[props.childrenText] && item[props.childrenText].length) {\n\t\t\tresetCheckedData(item[props.childrenText])\n\t\t}\n\t})\n}\nfunction setViewData() {\n\tlet labelArr = checkedData.value.map(item => item[props.labelText])\n\tvalueLabel.value = labelArr.join(' / ')\n\tlet leafItem = []\n\tif (!props.any) {\n\t\tleafItem = checkedData.value.filter(item => item.isLeaf)\n\t} else {\n\t\tleafItem = checkedData.value.length ? [checkedData.value[checkedData.value.length - 1]] : []\n\t}\n\tif (leafItem.length) {\n\t\tvalue_.value = leafItem[0][props.valueText]\n\t\tchange(value_.value)\n\t}\n}\nfunction close() {\n\tcascaderFloat.value.toggle($el.value)\n}\nfunction afterClose() {\n\tsetLevel(0)\n}\nfunction change(v) {\n\temit('change', v, checkedData.value)\n\temit('update:modelValue', v)\n}\nconst setLabel = () => {\n\tif (value_.value) {\n\t\tvalueLabel.value = getLabelPath(value_.value, data_.value)\n\t} else {\n\t\tvalueLabel.value = props.placeholder\n\t}\n}\n\n// 添加获取标签路径的函数\nfunction getLabelPath(value, data, path = []) {\n\tfor (const item of data) {\n\t\tif (item[props.valueText] === value) {\n\t\t\treturn [...path, item[props.labelText]].join(' / ')\n\t\t}\n\n\t\tif (item[props.childrenText] && item[props.childrenText].length) {\n\t\t\tconst result = getLabelPath(value, item[props.childrenText], [...path, item[props.labelText]])\n\t\t\tif (result) {\n\t\t\t\treturn result\n\t\t\t}\n\t\t}\n\t}\n\treturn ''\n}\nfunction compare() {\n\tvalueStore.value.unshift(String(value_.value))\n}\n// 撤销\nfunction restore() {\n\tvalue_.value = valueStore.value[0]\n\tvalueStore.value.splice(0, 1)\n}\nconst setDisabled = (f: boolean) => {\n\tdisabled.value = f\n}\ndefineExpose({\n\tcompare,\n\trestore,\n\tchanged,\n\tsetDisabled,\n\terrorTip,\n\terrorType\n})\n</script>\n"],"names":["DO_defineComponent","_createElementBlock","_normalizeClass","_createElementVNode","_openBlock","placeholder","clearable","_createVNode","_unref","ToCascaderItem","_Fragment"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cascader.vue2.mjs","sources":["../../../../../../packages/components/cascader/src/cascader.vue"],"sourcesContent":["<script lang=\"ts\">\nimport { defineComponent as DO_defineComponent } from 'vue';\nexport default /*#__PURE__*/ DO_defineComponent({\n\tname: 'ToCascader'\n});\n</script>\n<template>\n\t<div ref=\"$el\" v-tip=\"changed ? t('to.common.originalValue', getLabelPath(valueStore[0], data_)) : ''\" class=\"to-cascader\" :class=\"setClass\" :style=\"setStyle\">\n\t\t<span v-if=\"validateRequired\" v-show=\"false\" class=\"to-validate\" :req=\"validateRequired\" :desc=\"validateDesc\" :value=\"value_ ? 'true' : ''\"></span>\n\t\t<span v-if=\"$slots.prefix\" class=\"to-cascader-prefix\">\n\t\t\t<slot name=\"prefix\" />\n\t\t</span>\n\t\t<span v-if=\"props.prefix\" class=\"to-cascader-prefix-text\">\n\t\t\t<span>{{ props.prefix }}</span>\n\t\t</span>\n\t\t<span class=\"to-cascader-content\" @click=\"handleClick\">\n\t\t\t<span class=\"to-cascader-value\">\n\t\t\t\t<span v-if=\"value_\">{{ valueLabel }}</span>\n\t\t\t\t<span v-else class=\"to-cascader-placeholder\">{{ placeholder }}</span>\n\t\t\t</span>\n\t\t</span>\n\t\t<span v-if=\"clearable && value_\" class=\"to-cascader-clear\">\n\t\t\t<to-icon value=\"close\" @click.stop=\"handleClear\"></to-icon>\n\t\t</span>\n\t\t<span class=\"to-cascader-arrow\" @click=\"handleClick\">\n\t\t\t<to-icon v-if=\"false\" :value=\"iconValue\"></to-icon>\n\t\t</span>\n\t\t<to-float ref=\"cascaderFloat\" class=\"to-cascader-layer\" :width=\"floatWidth\" @closed=\"afterClose\">\n\t\t\t<div v-if=\"!data_.length\" style=\"text-align: center; color: #ccc; padding: 3em 0.3em\">暂无数据</div>\n\t\t\t<to-scroll @click.stop>\n\t\t\t\t<to-cascader-item :data=\"data_\"></to-cascader-item>\n\t\t\t</to-scroll>\n\t\t</to-float>\n\t\t<span v-if=\"errorTip\" v-color=\"'danger'\" class=\"to-box-tip\">\n\t\t\t<template v-if=\"errorType === 'rule'\">\n\t\t\t\t输入有误\n\t\t\t\t<to-icon v-tip.danger=\"errorTip\" style=\"height: auto\" value=\"help\" color=\"danger\" mode=\"toast\" fillet=\"round\"></to-icon>\n\t\t\t</template>\n\t\t\t<template v-else> 不能为空 </template>\n\t\t</span>\n\t</div>\n</template>\n\n<script setup lang=\"ts\">\nimport { CSSProperties, computed, provide, ref, watch, nextTick, inject } from 'vue'\nimport { ToIcon, ToFloat } from '@touchvue/components'\nimport ToCascaderItem from './cascader-item.vue'\nimport { deepClone } from '@touchvue/utils'\nimport { t } from '@touchvue/locale'\n\n\n\nconst ToFormItem = inject<{ required?: boolean; label?: string }>('ToFormItem', {})\n\nexport type VType = string | unknown[]\n\nexport interface Item {\n\tlabel?: string\n\tvalue?: string\n\tchildren?: string\n\tisSelect?: boolean\n\tisLeaf?: boolean\n\tlevel?: number\n\t[key: string]: any\n}\n\nexport interface Props {\n\tmode?: string\n\tlazy?: boolean\n\tdisabled?: boolean\n\tany?: boolean\n\tclearable?: boolean\n\tmodelValue?: string | []\n\twidth?: string | number\n\tlabelText?: string\n\tvalueText?: string\n\tchildrenText?: string\n\tplaceholder?: string\n\toptionWidth?: string | number\n\toptionCol?: string | number\n\tdata: []\n\tcomparable?: boolean\n\trequired?: boolean\n\tdesc?: string\n\tprefix?: string\n}\n\nconst props = withDefaults(defineProps<Props>(), {\n\tmode: 'default',\n\tlazy: false,\n\tdisabled: false,\n\tany: true,\n\tclearable: false,\n\tmodelValue: '',\n\twidth: '',\n\tlabelText: 'label',\n\tvalueText: 'value',\n\tchildrenText: 'children',\n\tplaceholder: '请选择',\n\toptionWidth: '16em',\n\toptionCol: '',\n\tdata: () => [],\n\tcomparable: false,\n\trequired: false,\n\tdesc: ''\n})\n\nconst ToForm = inject<{ comparable?: boolean }>('ToForm', {})\n\nconst iconValue = ref('unfold')\nconst value_ = ref<VType>('')\nconst valueLabel = ref('')\nconst data_ = ref<Item[]>(initData(props.data))\nconst cascaderFloat = ref(null)\nconst $el = ref(null)\nconst currentLevel = ref(0)\nconst checkedData = ref<Item[]>([])\nconst valueStore = ref<string[]>([])\nconst disabled = ref(props.disabled)\nconst errorTip = ref('')\nconst errorType = ref('rule')\n\nconst floatWidth = computed(() => {\n\tlet unit = 'em'\n\tlet sArr = []\n\tlet omit = 16\n\tif (props.optionWidth) {\n\t\tif (isNaN(Number(props.optionWidth))) {\n\t\t\tif ((props.optionWidth as string).includes('em')) {\n\t\t\t\tunit = 'em'\n\t\t\t\tsArr = (props.optionWidth as string).split('em')\n\t\t\t} else {\n\t\t\t\tunit = 'px'\n\t\t\t\tsArr = (props.optionWidth as string).split('px')\n\t\t\t}\n\t\t\tomit = Number(sArr[0])\n\t\t} else {\n\t\t\tomit = Number(props.optionWidth)\n\t\t}\n\t}\n\treturn `${(currentLevel.value + 1) * omit}${unit}`\n})\n\nconst setClass = computed(() => {\n\tconst arr = ['to-form-readonly']\n\tif (errorTip.value) {\n\t\tarr.push('to-cascader-mode-line')\n\t\tarr.push('to-cascader-color-danger')\n\t\tarr.push('to-cascader-tip-show')\n\t} else {\n\t\tif (props.mode) {\n\t\t\tarr.push(`mode-${props.mode}`)\n\t\t}\n\t\tif ((ToForm && ToForm?.comparable) || props.comparable) {\n\t\t\tarr.push('to-compare')\n\t\t}\n\t\tif (changed.value) {\n\t\t\tarr.push('to-cascader-changed')\n\t\t}\n\t\tif (disabled.value || props.disabled) {\n\t\t\tarr.push('is-disabled')\n\t\t}\n\t}\n\treturn arr\n})\nconst setStyle = computed(() => {\n\tlet obj: CSSProperties = {}\n\tif (props.width) {\n\t\tif (isNaN(Number(props.width))) {\n\t\t\tobj.width = props.width\n\t\t} else {\n\t\t\tobj.width = `${props.width}em`\n\t\t}\n\t}\n\treturn obj\n})\nconst changed = computed(() => {\n\tif ((props.comparable || ToForm?.comparable) && valueStore.value.length > 0 && value_.value !== valueStore.value[0]) {\n\t\treturn true\n\t} else {\n\t\treturn false\n\t}\n})\n\nconst validateRequired = computed(() => {\n\tif (props.required) {\n\t\treturn 'true'\n\t} else if (ToFormItem && ToFormItem.required) {\n\t\treturn 'true'\n\t} else {\n\t\treturn 'false'\n\t}\n})\nconst validateDesc = computed(() => {\n\tif (props.desc) {\n\t\treturn props.desc\n\t} else if (ToFormItem && ToFormItem.label) {\n\t\treturn ToFormItem.label\n\t} else {\n\t\treturn ''\n\t}\n})\nexport interface ProvideProps {\n\tprops: Props\n\tsetLevel: (level: number) => void\n\tclose: () => void\n\tsetParentCheckedByValue: (arr: Item[], value: string, level: number) => void\n\tstore: Item[]\n\tsetViewData: () => void\n}\n\nprovide<ProvideProps>('pProps', {\n\tprops,\n\tsetLevel,\n\tclose,\n\tsetParentCheckedByValue,\n\tstore: data_.value,\n\tsetViewData\n})\n\nwatch(\n\t() => props.modelValue,\n\tval => {\n\t\tvalue_.value = val\n\t\tif (props.data && props.data.length) {\n\t\t\tnextTick(() => {\n\t\t\t\tsetLabel()\n\t\t\t})\n\t\t}\n\t},\n\t{ immediate: true }\n)\nwatch(\n\t() => props.data,\n\tval => {\n\t\tdata_.value = initData(val)\n\t\tcheckedData.value = []\n\t\tvalue_.value = ''\n\t\tvalueLabel.value = ''\n\t},\n\t{ deep: true }\n)\n\nconst emit = defineEmits(['change', 'update:modelValue'])\nfunction initData(data: Item[], levels = 0) {\n\tlet arr = deepClone(data)\n\tlet tem = []\n\tlet level = levels\n\tarr.forEach((item: Item) => {\n\t\tif (item[props.childrenText] && item[props.childrenText].length) {\n\t\t\ttem.push({\n\t\t\t\t...item,\n\t\t\t\tlevel,\n\t\t\t\tisLeaf: false,\n\t\t\t\tisSelect: false,\n\t\t\t\t[props.childrenText]: initData(item[props.childrenText], level + 1)\n\t\t\t})\n\t\t} else {\n\t\t\ttem.push({ ...item, level, isSelect: false, isLeaf: true })\n\t\t}\n\t})\n\treturn tem\n}\nfunction handleClick() {\n\terrorTip.value = ''\n\tif (!(props.disabled || disabled.value)) {\n\t\tcascaderFloat.value.toggle($el.value)\n\t\ticonValue.value = iconValue.value === 'unfold' ? 'fold' : 'unfold'\n\t}\n}\nfunction handleClear() {\n\tif (!props.disabled) {\n\t\tvalueLabel.value = ''\n\t\tresetCheckedData(data_.value)\n\t\tcheckedData.value = []\n\t\tvalue_.value = ''\n\t\tchange('')\n\t}\n}\nfunction setLevel(idx: number) {\n\tcurrentLevel.value = idx\n}\nfunction setParentCheckedByValue(arr, value, level) {\n\tarr.forEach((item: Item) => {\n\t\tif (item.level === level) {\n\t\t\tif (item[props.valueText] === value) {\n\t\t\t\titem.isSelect = true\n\t\t\t\tsetCheckedData(checkedData.value, level, item)\n\t\t\t} else {\n\t\t\t\titem.isSelect = false\n\t\t\t}\n\t\t} else {\n\t\t\tif (item[props.childrenText] && item[props.childrenText].length) {\n\t\t\t\tsetParentCheckedByValue(item[props.childrenText], value, level)\n\t\t\t}\n\t\t}\n\t})\n}\nfunction setCheckedData(arr: Item[], level, item) {\n\tlet idx = arr.findIndex(k => k.level === level)\n\tif (arr.length && idx !== -1) {\n\t\tif (arr[idx][props.valueText] !== item[props.valueText]) {\n\t\t\tlet resetArr = arr.filter(k => k.level > level)\n\t\t\tif (resetArr.length) {\n\t\t\t\tresetArr.forEach(k => {\n\t\t\t\t\tlet i = arr.findIndex(l => l.level === k.level)\n\t\t\t\t\tif (i !== -1) {\n\t\t\t\t\t\tarr.splice(i, 1)\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t}\n\tif (idx !== -1) {\n\t\tarr[idx] = { ...item }\n\t} else {\n\t\tarr.push(deepClone(item))\n\t}\n}\nfunction resetCheckedData(arr: Item[]) {\n\tarr.forEach((item: Item) => {\n\t\titem.isSelect = false\n\t\tif (item[props.childrenText] && item[props.childrenText].length) {\n\t\t\tresetCheckedData(item[props.childrenText])\n\t\t}\n\t})\n}\nfunction setViewData() {\n\tlet labelArr = checkedData.value.map(item => item[props.labelText])\n\tvalueLabel.value = labelArr.join(' / ')\n\tlet leafItem = []\n\tif (!props.any) {\n\t\tleafItem = checkedData.value.filter(item => item.isLeaf)\n\t} else {\n\t\tleafItem = checkedData.value.length ? [checkedData.value[checkedData.value.length - 1]] : []\n\t}\n\tif (leafItem.length) {\n\t\tvalue_.value = leafItem[0][props.valueText]\n\t\tchange(value_.value)\n\t}\n}\nfunction close() {\n\tcascaderFloat.value.toggle($el.value)\n}\nfunction afterClose() {\n\tsetLevel(0)\n}\nfunction change(v) {\n\temit('update:modelValue', v)\n\temit('change', v, checkedData.value)\n}\nconst setLabel = () => {\n\tif (value_.value) {\n\t\tvalueLabel.value = getLabelPath(value_.value, data_.value)\n\t} else {\n\t\tvalueLabel.value = props.placeholder\n\t}\n}\n\n// 添加获取标签路径的函数\nfunction getLabelPath(value, data, path = []) {\n\tfor (const item of data) {\n\t\tif (item[props.valueText] === value) {\n\t\t\treturn [...path, item[props.labelText]].join(' / ')\n\t\t}\n\n\t\tif (item[props.childrenText] && item[props.childrenText].length) {\n\t\t\tconst result = getLabelPath(value, item[props.childrenText], [...path, item[props.labelText]])\n\t\t\tif (result) {\n\t\t\t\treturn result\n\t\t\t}\n\t\t}\n\t}\n\treturn ''\n}\nfunction compare() {\n\tvalueStore.value.unshift(String(value_.value))\n}\n// 撤销\nfunction restore() {\n\tvalue_.value = valueStore.value[0]\n\tvalueStore.value.splice(0, 1)\n}\nconst setDisabled = (f: boolean) => {\n\tdisabled.value = f\n}\ndefineExpose({\n\tcompare,\n\trestore,\n\tchanged,\n\tsetDisabled,\n\terrorTip,\n\terrorType\n})\n</script>\n"],"names":["DO_defineComponent","_createElementBlock","_normalizeClass","$slots","_renderSlot","_createElementVNode","_toDisplayString","_openBlock","placeholder","clearable","_createVNode","_unref","ToCascaderItem","_Fragment"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent, ref, computed, watch, openBlock, createElementBlock, normalizeClass,
|
|
1
|
+
import { defineComponent, ref, computed, watch, openBlock, createElementBlock, normalizeClass, renderSlot, createCommentVNode, createElementVNode, toDisplayString, withDirectives, vModelText, unref, createBlock, createVNode, withCtx } from 'vue';
|
|
2
2
|
import { ToIcon } from '../../icon/index.mjs';
|
|
3
3
|
import { ToCalendar } from '../../calendar/index.mjs';
|
|
4
4
|
import { ToFloat } from '../../float/index.mjs';
|
|
@@ -21,7 +21,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
21
21
|
min: { default: "" },
|
|
22
22
|
max: { default: "" },
|
|
23
23
|
disabled: { type: Boolean, default: false },
|
|
24
|
-
clearable: { type: Boolean, default: true }
|
|
24
|
+
clearable: { type: Boolean, default: true },
|
|
25
|
+
prefix: { default: "" }
|
|
25
26
|
},
|
|
26
27
|
emits: ["update:modelValue", "focus", "change"],
|
|
27
28
|
setup(__props, { emit: __emit }) {
|
|
@@ -100,10 +101,24 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
100
101
|
class: normalizeClass(["to-date-range", setClass.value])
|
|
101
102
|
},
|
|
102
103
|
[
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
},
|
|
104
|
+
_ctx.$slots.prefix ? (openBlock(), createElementBlock("span", {
|
|
105
|
+
key: 0,
|
|
106
|
+
class: "to-date-range-prefix"
|
|
107
|
+
}, [
|
|
108
|
+
renderSlot(_ctx.$slots, "prefix")
|
|
109
|
+
])) : createCommentVNode("v-if", true),
|
|
110
|
+
props.prefix ? (openBlock(), createElementBlock("span", {
|
|
111
|
+
key: 1,
|
|
112
|
+
class: "to-date-range-prefix-text"
|
|
113
|
+
}, [
|
|
114
|
+
createElementVNode(
|
|
115
|
+
"span",
|
|
116
|
+
null,
|
|
117
|
+
toDisplayString(props.prefix),
|
|
118
|
+
1
|
|
119
|
+
/* TEXT */
|
|
120
|
+
)
|
|
121
|
+
])) : createCommentVNode("v-if", true),
|
|
107
122
|
withDirectives(createElementVNode("input", {
|
|
108
123
|
"onUpdate:modelValue": ($event) => startDate.value = $event,
|
|
109
124
|
class: "to-date-range-input",
|
|
@@ -128,12 +143,16 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
128
143
|
[unref(vDis), _ctx.disabled]
|
|
129
144
|
]),
|
|
130
145
|
startDate.value && endDate.value && props.clearable ? (openBlock(), createBlock(unref(ToIcon), {
|
|
131
|
-
key:
|
|
146
|
+
key: 2,
|
|
132
147
|
value: "close",
|
|
133
148
|
link: "",
|
|
134
149
|
mode: "date-range-close",
|
|
135
150
|
onClick: handleClose
|
|
136
151
|
})) : createCommentVNode("v-if", true),
|
|
152
|
+
createVNode(unref(ToIcon), {
|
|
153
|
+
value: props.icon,
|
|
154
|
+
mode: "date-range-icon"
|
|
155
|
+
}, null, 8, ["value"]),
|
|
137
156
|
createVNode(
|
|
138
157
|
unref(ToFloat),
|
|
139
158
|
{
|