vft 0.0.383 → 0.0.385
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/button/index.d.ts +9 -9
- package/es/components/carousel/use-carousel.js +1 -1
- package/es/components/config-provider/config-provider.vue.d.ts +1 -1
- package/es/components/form/form-item.vue.d.ts +1 -1
- package/es/components/form/index.d.ts +30 -30
- package/es/components/input/input.vue2.js +4 -4
- package/es/components/input-tag/composables/use-input-tag.js +1 -1
- package/es/components/message/method.js +61 -58
- package/es/components/message/types.d.ts +22 -0
- package/es/components/popconfirm/index.d.ts +15 -15
- package/es/components/popconfirm/popconfirm.vue.d.ts +1 -1
- package/es/components/super-form/super-form-item.vue2.js +1 -1
- package/es/components/super-form/use/helper.js +1 -1
- package/es/components/upload/index.d.ts +6 -0
- package/es/components/upload/upload-content.vue.d.ts +3 -0
- package/es/components/upload/upload-content.vue2.js +1 -1
- package/es/components/upload/upload.vue.d.ts +3 -0
- package/es/components/upload/upload.vue2.js +18 -18
- package/es/package.json.d.ts +1 -1
- package/es/package.json.js +1 -1
- package/es/utils/vue/vnode.js +1 -1
- package/lib/components/button/index.d.ts +9 -9
- package/lib/components/config-provider/config-provider.vue.d.ts +1 -1
- package/lib/components/form/form-item.vue.d.ts +1 -1
- package/lib/components/form/index.d.ts +30 -30
- package/lib/components/input/input.vue2.cjs +1 -1
- package/lib/components/message/method.cjs +1 -1
- package/lib/components/message/types.d.ts +22 -0
- package/lib/components/popconfirm/index.d.ts +15 -15
- package/lib/components/popconfirm/popconfirm.vue.d.ts +1 -1
- package/lib/components/upload/index.d.ts +6 -0
- package/lib/components/upload/upload-content.vue.d.ts +3 -0
- package/lib/components/upload/upload-content.vue2.cjs +1 -1
- package/lib/components/upload/upload.vue.d.ts +3 -0
- package/lib/components/upload/upload.vue2.cjs +1 -1
- package/lib/package.json.cjs +1 -1
- package/lib/package.json.d.ts +1 -1
- package/package.json +4 -4
- package/web-types.json +1 -1
- package/theme-style/vft-p-image.css +0 -1
|
@@ -14,6 +14,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
14
14
|
autoUpload: boolean;
|
|
15
15
|
listType: string;
|
|
16
16
|
httpRequest: import("./types").UploadRequestHandler;
|
|
17
|
+
fileList: never[];
|
|
17
18
|
replaceOnLimit: boolean;
|
|
18
19
|
maxSize: undefined;
|
|
19
20
|
sizeExceedMessage: string;
|
|
@@ -34,6 +35,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
34
35
|
autoUpload: boolean;
|
|
35
36
|
listType: string;
|
|
36
37
|
httpRequest: import("./types").UploadRequestHandler;
|
|
38
|
+
fileList: never[];
|
|
37
39
|
replaceOnLimit: boolean;
|
|
38
40
|
maxSize: undefined;
|
|
39
41
|
sizeExceedMessage: string;
|
|
@@ -49,6 +51,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
49
51
|
sizeHeight: number;
|
|
50
52
|
action: string;
|
|
51
53
|
accept: string;
|
|
54
|
+
fileList: import("./types").UploadUserFile[];
|
|
52
55
|
showFileList: boolean;
|
|
53
56
|
autoUpload: boolean;
|
|
54
57
|
listType: import("./types").ListType;
|
|
@@ -21,7 +21,7 @@ const ne = ["onKeydown"], ie = ["name", "multiple", "accept"], se = O({
|
|
|
21
21
|
}), Ce = /* @__PURE__ */ O({
|
|
22
22
|
...se,
|
|
23
23
|
props: {
|
|
24
|
-
fileList: {},
|
|
24
|
+
fileList: { default: [] },
|
|
25
25
|
replaceOnLimit: { type: Boolean, default: !1 },
|
|
26
26
|
action: { default: "#" },
|
|
27
27
|
headers: {},
|
|
@@ -19,6 +19,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
19
19
|
autoUpload: boolean;
|
|
20
20
|
listType: string;
|
|
21
21
|
httpRequest: import("./types").UploadRequestHandler;
|
|
22
|
+
fileList: never[];
|
|
22
23
|
replaceOnLimit: boolean;
|
|
23
24
|
maxSize: undefined;
|
|
24
25
|
sizeExceedMessage: string;
|
|
@@ -86,6 +87,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
86
87
|
autoUpload: boolean;
|
|
87
88
|
listType: string;
|
|
88
89
|
httpRequest: import("./types").UploadRequestHandler;
|
|
90
|
+
fileList: never[];
|
|
89
91
|
replaceOnLimit: boolean;
|
|
90
92
|
maxSize: undefined;
|
|
91
93
|
sizeExceedMessage: string;
|
|
@@ -102,6 +104,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
102
104
|
sizeHeight: number;
|
|
103
105
|
action: string;
|
|
104
106
|
accept: string;
|
|
107
|
+
fileList: import("./types").UploadUserFile[];
|
|
105
108
|
showFileList: boolean;
|
|
106
109
|
autoUpload: boolean;
|
|
107
110
|
listType: import("./types").ListType;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { defineComponent as L, useSlots as j, shallowRef as N, computed as b, onBeforeUnmount as O, provide as q,
|
|
1
|
+
import { defineComponent as L, useSlots as j, shallowRef as N, computed as b, onBeforeUnmount as O, provide as q, toRef as D, createElementBlock as H, openBlock as c, normalizeClass as K, unref as o, createBlock as y, createCommentVNode as a, renderSlot as s, createSlots as z, withCtx as f, createVNode as W, mergeProps as B } from "vue";
|
|
2
2
|
import "../form/index.js";
|
|
3
3
|
import { VftMessage as C } from "../message/index.js";
|
|
4
|
-
import { ajaxUpload as
|
|
5
|
-
import { uploadContextKey as
|
|
4
|
+
import { ajaxUpload as A } from "./ajax.js";
|
|
5
|
+
import { uploadContextKey as G } from "./constants.js";
|
|
6
6
|
import E from "./upload-content.vue2.js";
|
|
7
7
|
import F from "./upload-list.vue2.js";
|
|
8
|
-
import { useHandlers as
|
|
9
|
-
import { useFormDisabled as
|
|
10
|
-
const
|
|
8
|
+
import { useHandlers as J } from "./use-handlers.js";
|
|
9
|
+
import { useFormDisabled as Q } from "../form/hooks/use-form-common-props.js";
|
|
10
|
+
const X = L({
|
|
11
11
|
name: "vft-upload"
|
|
12
|
-
}),
|
|
13
|
-
...
|
|
12
|
+
}), se = /* @__PURE__ */ L({
|
|
13
|
+
...X,
|
|
14
14
|
props: {
|
|
15
15
|
action: { default: "#" },
|
|
16
16
|
headers: {},
|
|
@@ -23,10 +23,10 @@ const Q = L({
|
|
|
23
23
|
showFileList: { type: Boolean, default: !0 },
|
|
24
24
|
accept: { default: "" },
|
|
25
25
|
type: { default: "select" },
|
|
26
|
-
fileList: {},
|
|
26
|
+
fileList: { default: [] },
|
|
27
27
|
autoUpload: { type: Boolean, default: !1 },
|
|
28
28
|
listType: { default: "text" },
|
|
29
|
-
httpRequest: { type: Function, default:
|
|
29
|
+
httpRequest: { type: Function, default: A },
|
|
30
30
|
disabled: { type: Boolean },
|
|
31
31
|
limit: {},
|
|
32
32
|
replaceOnLimit: { type: Boolean, default: !1 },
|
|
@@ -48,7 +48,7 @@ const Q = L({
|
|
|
48
48
|
onSizeExceed: {}
|
|
49
49
|
},
|
|
50
50
|
setup(P, { expose: M }) {
|
|
51
|
-
const t = P, r = j(), v =
|
|
51
|
+
const t = P, r = j(), v = Q(), u = N(), {
|
|
52
52
|
abort: g,
|
|
53
53
|
submit: h,
|
|
54
54
|
clearFiles: w,
|
|
@@ -58,7 +58,7 @@ const Q = L({
|
|
|
58
58
|
handleRemove: p,
|
|
59
59
|
handleSuccess: I,
|
|
60
60
|
handleProgress: T
|
|
61
|
-
} =
|
|
61
|
+
} = J(t, u), m = b(() => t.listType === "picture-card"), V = {
|
|
62
62
|
abort: g,
|
|
63
63
|
submit: h,
|
|
64
64
|
clearFiles: w,
|
|
@@ -96,8 +96,8 @@ const Q = L({
|
|
|
96
96
|
n.value.forEach(({ url: e }) => {
|
|
97
97
|
e?.startsWith("blob:") && URL.revokeObjectURL(e);
|
|
98
98
|
});
|
|
99
|
-
}), q(
|
|
100
|
-
accept:
|
|
99
|
+
}), q(G, {
|
|
100
|
+
accept: D(t, "accept")
|
|
101
101
|
}), M({
|
|
102
102
|
abort: g,
|
|
103
103
|
submit: h,
|
|
@@ -105,8 +105,8 @@ const Q = L({
|
|
|
105
105
|
handleStart: S,
|
|
106
106
|
handleRemove: p,
|
|
107
107
|
fileList: n
|
|
108
|
-
}), (e, l) => (c(),
|
|
109
|
-
class:
|
|
108
|
+
}), (e, l) => (c(), H("div", {
|
|
109
|
+
class: K(["vft-upload-wrapper", { disabled: o(v) }])
|
|
110
110
|
}, [
|
|
111
111
|
m.value && e.showFileList ? (c(), y(F, {
|
|
112
112
|
key: 0,
|
|
@@ -117,7 +117,7 @@ const Q = L({
|
|
|
117
117
|
onRemove: o(p)
|
|
118
118
|
}, z({
|
|
119
119
|
append: f(() => [
|
|
120
|
-
|
|
120
|
+
W(E, B({
|
|
121
121
|
ref_key: "uploadRef",
|
|
122
122
|
ref: u
|
|
123
123
|
}, $.value), {
|
|
@@ -171,5 +171,5 @@ const Q = L({
|
|
|
171
171
|
}
|
|
172
172
|
});
|
|
173
173
|
export {
|
|
174
|
-
|
|
174
|
+
se as default
|
|
175
175
|
};
|
package/es/package.json.d.ts
CHANGED
package/es/package.json.js
CHANGED
package/es/utils/vue/vnode.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { isArray as E, hasOwn as m, camelize as N } from "@vft/utils";
|
|
2
2
|
import { isVNode as o, Fragment as S, Comment as A, Text as s, createCommentVNode as L, createBlock as _, openBlock as C } from "vue";
|
|
3
3
|
import { debugWarn as O } from "../error.js";
|
|
4
4
|
const R = "utils/vue/vnode";
|
|
@@ -24,12 +24,12 @@ export declare const VftButton: import("vft/es/utils").SFCWithInstall<{
|
|
|
24
24
|
size: {
|
|
25
25
|
type: import("vue").PropType<import("../types").ComponentSize>;
|
|
26
26
|
};
|
|
27
|
-
dark: {
|
|
28
|
-
type: import("vue").PropType<boolean>;
|
|
29
|
-
};
|
|
30
27
|
icon: {
|
|
31
28
|
type: import("vue").PropType<string | import("vft/es/vft").IconProps>;
|
|
32
29
|
};
|
|
30
|
+
dark: {
|
|
31
|
+
type: import("vue").PropType<boolean>;
|
|
32
|
+
};
|
|
33
33
|
loading: {
|
|
34
34
|
type: import("vue").PropType<boolean>;
|
|
35
35
|
};
|
|
@@ -114,12 +114,12 @@ export declare const VftButton: import("vft/es/utils").SFCWithInstall<{
|
|
|
114
114
|
size: {
|
|
115
115
|
type: import("vue").PropType<import("../types").ComponentSize>;
|
|
116
116
|
};
|
|
117
|
-
dark: {
|
|
118
|
-
type: import("vue").PropType<boolean>;
|
|
119
|
-
};
|
|
120
117
|
icon: {
|
|
121
118
|
type: import("vue").PropType<string | import("vft/es/vft").IconProps>;
|
|
122
119
|
};
|
|
120
|
+
dark: {
|
|
121
|
+
type: import("vue").PropType<boolean>;
|
|
122
|
+
};
|
|
123
123
|
loading: {
|
|
124
124
|
type: import("vue").PropType<boolean>;
|
|
125
125
|
};
|
|
@@ -199,12 +199,12 @@ export declare const VftButton: import("vft/es/utils").SFCWithInstall<{
|
|
|
199
199
|
size: {
|
|
200
200
|
type: import("vue").PropType<import("../types").ComponentSize>;
|
|
201
201
|
};
|
|
202
|
-
dark: {
|
|
203
|
-
type: import("vue").PropType<boolean>;
|
|
204
|
-
};
|
|
205
202
|
icon: {
|
|
206
203
|
type: import("vue").PropType<string | import("vft/es/vft").IconProps>;
|
|
207
204
|
};
|
|
205
|
+
dark: {
|
|
206
|
+
type: import("vue").PropType<boolean>;
|
|
207
|
+
};
|
|
208
208
|
loading: {
|
|
209
209
|
type: import("vue").PropType<boolean>;
|
|
210
210
|
};
|
|
@@ -16,7 +16,7 @@ export interface ConfigProviderProps {
|
|
|
16
16
|
namespace?: string;
|
|
17
17
|
/** 设置所有弹窗类组件的 z-index */
|
|
18
18
|
zIndex?: number;
|
|
19
|
-
/**
|
|
19
|
+
/** Message 组件全局配置 */
|
|
20
20
|
message?: MessageConfigContext;
|
|
21
21
|
projectCfg?: Record<string, any>;
|
|
22
22
|
button?: ButtonConfigContext;
|
|
@@ -32,10 +32,10 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
32
32
|
}>>> & Readonly<{
|
|
33
33
|
"onUpdate:error"?: ((val: string) => any) | undefined;
|
|
34
34
|
}>, {
|
|
35
|
+
required: boolean;
|
|
35
36
|
labelWidth: string | number;
|
|
36
37
|
inlineMessage: string | boolean;
|
|
37
38
|
showMessage: boolean;
|
|
38
|
-
required: boolean;
|
|
39
39
|
hideLabel: boolean;
|
|
40
40
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
41
41
|
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, ReturnType<typeof __VLS_template>>;
|
|
@@ -206,6 +206,10 @@ export declare const VftForm: import("vft/es/utils").SFCWithInstall<{
|
|
|
206
206
|
size: {
|
|
207
207
|
type: import("vue").PropType<import("vft/es/constants").ComponentSize>;
|
|
208
208
|
};
|
|
209
|
+
required: {
|
|
210
|
+
type: import("vue").PropType<boolean>;
|
|
211
|
+
default: undefined;
|
|
212
|
+
};
|
|
209
213
|
rules: {
|
|
210
214
|
type: import("vue").PropType<import("vft/es/utils").Arrayable<import("./types").FormItemRule>>;
|
|
211
215
|
};
|
|
@@ -227,10 +231,6 @@ export declare const VftForm: import("vft/es/utils").SFCWithInstall<{
|
|
|
227
231
|
hideRequiredAsterisk: {
|
|
228
232
|
type: import("vue").PropType<boolean>;
|
|
229
233
|
};
|
|
230
|
-
required: {
|
|
231
|
-
type: import("vue").PropType<boolean>;
|
|
232
|
-
default: undefined;
|
|
233
|
-
};
|
|
234
234
|
for: {
|
|
235
235
|
type: import("vue").PropType<string>;
|
|
236
236
|
};
|
|
@@ -253,10 +253,10 @@ export declare const VftForm: import("vft/es/utils").SFCWithInstall<{
|
|
|
253
253
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
254
254
|
"update:error": (val: string) => void;
|
|
255
255
|
}, import("vue").PublicProps, {
|
|
256
|
+
required: boolean;
|
|
256
257
|
labelWidth: string | number;
|
|
257
258
|
inlineMessage: string | boolean;
|
|
258
259
|
showMessage: boolean;
|
|
259
|
-
required: boolean;
|
|
260
260
|
hideLabel: boolean;
|
|
261
261
|
}, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
|
|
262
262
|
P: {};
|
|
@@ -278,6 +278,10 @@ export declare const VftForm: import("vft/es/utils").SFCWithInstall<{
|
|
|
278
278
|
size: {
|
|
279
279
|
type: import("vue").PropType<import("vft/es/constants").ComponentSize>;
|
|
280
280
|
};
|
|
281
|
+
required: {
|
|
282
|
+
type: import("vue").PropType<boolean>;
|
|
283
|
+
default: undefined;
|
|
284
|
+
};
|
|
281
285
|
rules: {
|
|
282
286
|
type: import("vue").PropType<import("vft/es/utils").Arrayable<import("./types").FormItemRule>>;
|
|
283
287
|
};
|
|
@@ -299,10 +303,6 @@ export declare const VftForm: import("vft/es/utils").SFCWithInstall<{
|
|
|
299
303
|
hideRequiredAsterisk: {
|
|
300
304
|
type: import("vue").PropType<boolean>;
|
|
301
305
|
};
|
|
302
|
-
required: {
|
|
303
|
-
type: import("vue").PropType<boolean>;
|
|
304
|
-
default: undefined;
|
|
305
|
-
};
|
|
306
306
|
for: {
|
|
307
307
|
type: import("vue").PropType<string>;
|
|
308
308
|
};
|
|
@@ -323,10 +323,10 @@ export declare const VftForm: import("vft/es/utils").SFCWithInstall<{
|
|
|
323
323
|
clearValidate: () => void;
|
|
324
324
|
resetField: () => void;
|
|
325
325
|
}, {}, {}, {}, {
|
|
326
|
+
required: boolean;
|
|
326
327
|
labelWidth: string | number;
|
|
327
328
|
inlineMessage: string | boolean;
|
|
328
329
|
showMessage: boolean;
|
|
329
|
-
required: boolean;
|
|
330
330
|
hideLabel: boolean;
|
|
331
331
|
}>;
|
|
332
332
|
__isFragment?: never;
|
|
@@ -345,6 +345,10 @@ export declare const VftForm: import("vft/es/utils").SFCWithInstall<{
|
|
|
345
345
|
size: {
|
|
346
346
|
type: import("vue").PropType<import("vft/es/constants").ComponentSize>;
|
|
347
347
|
};
|
|
348
|
+
required: {
|
|
349
|
+
type: import("vue").PropType<boolean>;
|
|
350
|
+
default: undefined;
|
|
351
|
+
};
|
|
348
352
|
rules: {
|
|
349
353
|
type: import("vue").PropType<import("vft/es/utils").Arrayable<import("./types").FormItemRule>>;
|
|
350
354
|
};
|
|
@@ -366,10 +370,6 @@ export declare const VftForm: import("vft/es/utils").SFCWithInstall<{
|
|
|
366
370
|
hideRequiredAsterisk: {
|
|
367
371
|
type: import("vue").PropType<boolean>;
|
|
368
372
|
};
|
|
369
|
-
required: {
|
|
370
|
-
type: import("vue").PropType<boolean>;
|
|
371
|
-
default: undefined;
|
|
372
|
-
};
|
|
373
373
|
for: {
|
|
374
374
|
type: import("vue").PropType<string>;
|
|
375
375
|
};
|
|
@@ -392,10 +392,10 @@ export declare const VftForm: import("vft/es/utils").SFCWithInstall<{
|
|
|
392
392
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
393
393
|
"update:error": (val: string) => void;
|
|
394
394
|
}, string, {
|
|
395
|
+
required: boolean;
|
|
395
396
|
labelWidth: string | number;
|
|
396
397
|
inlineMessage: string | boolean;
|
|
397
398
|
showMessage: boolean;
|
|
398
|
-
required: boolean;
|
|
399
399
|
hideLabel: boolean;
|
|
400
400
|
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
|
|
401
401
|
$slots: {
|
|
@@ -423,6 +423,10 @@ export declare const VftFormItem: import("vft/es/utils").SFCWithInstall<{
|
|
|
423
423
|
size: {
|
|
424
424
|
type: import("vue").PropType<import("vft/es/constants").ComponentSize>;
|
|
425
425
|
};
|
|
426
|
+
required: {
|
|
427
|
+
type: import("vue").PropType<boolean>;
|
|
428
|
+
default: undefined;
|
|
429
|
+
};
|
|
426
430
|
rules: {
|
|
427
431
|
type: import("vue").PropType<import("vft/es/utils").Arrayable<import("./types").FormItemRule>>;
|
|
428
432
|
};
|
|
@@ -444,10 +448,6 @@ export declare const VftFormItem: import("vft/es/utils").SFCWithInstall<{
|
|
|
444
448
|
hideRequiredAsterisk: {
|
|
445
449
|
type: import("vue").PropType<boolean>;
|
|
446
450
|
};
|
|
447
|
-
required: {
|
|
448
|
-
type: import("vue").PropType<boolean>;
|
|
449
|
-
default: undefined;
|
|
450
|
-
};
|
|
451
451
|
for: {
|
|
452
452
|
type: import("vue").PropType<string>;
|
|
453
453
|
};
|
|
@@ -470,10 +470,10 @@ export declare const VftFormItem: import("vft/es/utils").SFCWithInstall<{
|
|
|
470
470
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
471
471
|
"update:error": (val: string) => void;
|
|
472
472
|
}, import("vue").PublicProps, {
|
|
473
|
+
required: boolean;
|
|
473
474
|
labelWidth: string | number;
|
|
474
475
|
inlineMessage: string | boolean;
|
|
475
476
|
showMessage: boolean;
|
|
476
|
-
required: boolean;
|
|
477
477
|
hideLabel: boolean;
|
|
478
478
|
}, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
|
|
479
479
|
P: {};
|
|
@@ -495,6 +495,10 @@ export declare const VftFormItem: import("vft/es/utils").SFCWithInstall<{
|
|
|
495
495
|
size: {
|
|
496
496
|
type: import("vue").PropType<import("vft/es/constants").ComponentSize>;
|
|
497
497
|
};
|
|
498
|
+
required: {
|
|
499
|
+
type: import("vue").PropType<boolean>;
|
|
500
|
+
default: undefined;
|
|
501
|
+
};
|
|
498
502
|
rules: {
|
|
499
503
|
type: import("vue").PropType<import("vft/es/utils").Arrayable<import("./types").FormItemRule>>;
|
|
500
504
|
};
|
|
@@ -516,10 +520,6 @@ export declare const VftFormItem: import("vft/es/utils").SFCWithInstall<{
|
|
|
516
520
|
hideRequiredAsterisk: {
|
|
517
521
|
type: import("vue").PropType<boolean>;
|
|
518
522
|
};
|
|
519
|
-
required: {
|
|
520
|
-
type: import("vue").PropType<boolean>;
|
|
521
|
-
default: undefined;
|
|
522
|
-
};
|
|
523
523
|
for: {
|
|
524
524
|
type: import("vue").PropType<string>;
|
|
525
525
|
};
|
|
@@ -540,10 +540,10 @@ export declare const VftFormItem: import("vft/es/utils").SFCWithInstall<{
|
|
|
540
540
|
clearValidate: () => void;
|
|
541
541
|
resetField: () => void;
|
|
542
542
|
}, {}, {}, {}, {
|
|
543
|
+
required: boolean;
|
|
543
544
|
labelWidth: string | number;
|
|
544
545
|
inlineMessage: string | boolean;
|
|
545
546
|
showMessage: boolean;
|
|
546
|
-
required: boolean;
|
|
547
547
|
hideLabel: boolean;
|
|
548
548
|
}>;
|
|
549
549
|
__isFragment?: never;
|
|
@@ -562,6 +562,10 @@ export declare const VftFormItem: import("vft/es/utils").SFCWithInstall<{
|
|
|
562
562
|
size: {
|
|
563
563
|
type: import("vue").PropType<import("vft/es/constants").ComponentSize>;
|
|
564
564
|
};
|
|
565
|
+
required: {
|
|
566
|
+
type: import("vue").PropType<boolean>;
|
|
567
|
+
default: undefined;
|
|
568
|
+
};
|
|
565
569
|
rules: {
|
|
566
570
|
type: import("vue").PropType<import("vft/es/utils").Arrayable<import("./types").FormItemRule>>;
|
|
567
571
|
};
|
|
@@ -583,10 +587,6 @@ export declare const VftFormItem: import("vft/es/utils").SFCWithInstall<{
|
|
|
583
587
|
hideRequiredAsterisk: {
|
|
584
588
|
type: import("vue").PropType<boolean>;
|
|
585
589
|
};
|
|
586
|
-
required: {
|
|
587
|
-
type: import("vue").PropType<boolean>;
|
|
588
|
-
default: undefined;
|
|
589
|
-
};
|
|
590
590
|
for: {
|
|
591
591
|
type: import("vue").PropType<string>;
|
|
592
592
|
};
|
|
@@ -609,10 +609,10 @@ export declare const VftFormItem: import("vft/es/utils").SFCWithInstall<{
|
|
|
609
609
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
610
610
|
"update:error": (val: string) => void;
|
|
611
611
|
}, string, {
|
|
612
|
+
required: boolean;
|
|
612
613
|
labelWidth: string | number;
|
|
613
614
|
inlineMessage: string | boolean;
|
|
614
615
|
showMessage: boolean;
|
|
615
|
-
required: boolean;
|
|
616
616
|
hideLabel: boolean;
|
|
617
617
|
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
|
|
618
618
|
$slots: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("../form/index.cjs");const k=require("../icon/index.cjs"),Y=require("@vueuse/core"),s=require("@vft/utils"),T=require("../../utils/error.cjs");require("../config-provider/hooks/use-global-config.cjs");const Be=require("lodash-es"),Z=require("../../hooks/use-namespace/index.cjs");require("../../hooks/use-model-toggle/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");const q=require("@vft/constants"),_=require("@vft/use"),ee=require("./utils.cjs"),te=require("../form/hooks/use-form-item.cjs"),oe=require("../form/hooks/use-form-common-props.cjs"),Ve=["role"],Ie=["id","type","disabled","formatter","parser","readonly","autocomplete","tabindex","aria-label","placeholder","form"],Se=["id","tabindex","disabled","readonly","autocomplete","aria-label","placeholder","form"],ze=e.defineComponent({__name:"input",props:{id:{},size:{default:""},disabled:{type:Boolean},modelValue:{},type:{default:"text"},resize:{},autosize:{type:[Object,Boolean],default:!1},autocomplete:{default:"off"},formatter:{},parser:{},placeholder:{},form:{},readonly:{type:Boolean},clearable:{type:Boolean},showPassword:{type:Boolean},showWordLimit:{type:Boolean},suffixIcon:{},prefixIcon:{},clearIcon:{},containerRole:{},label:{},tabindex:{default:0},validateEvent:{type:Boolean,default:!0},inputStyle:{type:[Boolean,null,String,Object,Array]}},emits:{[q.UPDATE_MODEL_EVENT]:t=>s.isString(t),input:t=>s.isString(t),change:t=>s.isString(t),suffixClick:t=>s.isString(t),prefixClick:t=>s.isString(t),focus:t=>t instanceof FocusEvent,blur:t=>t instanceof FocusEvent,clear:()=>!0,enter:()=>!0,mouseleave:t=>t instanceof MouseEvent,mouseenter:t=>t instanceof MouseEvent,keydown:t=>t instanceof Event,compositionstart:t=>t instanceof CompositionEvent,compositionupdate:t=>t instanceof CompositionEvent,compositionend:t=>t instanceof CompositionEvent},setup(t,{expose:ne,emit:ae}){const l=ae,v=e.useAttrs(),i=e.useSlots(),M=e.computed(()=>{const o={};return t.containerRole==="combobox"&&(o["aria-haspopup"]=v["aria-haspopup"],o["aria-owns"]=v["aria-owns"],o["aria-expanded"]=v["aria-expanded"]),o}),le=e.computed(()=>[t.type==="textarea"?A.b():n.b(),n.m(ie.value),n.is("disabled",m.value),n.is("exceed",fe.value),n.is("focus",c.value),{[n.b("group")]:i.prepend||i.append,[n.bm("group","append")]:i.append,[n.bm("group","prepend")]:i.prepend,[n.m("prefix")]:i.prefix||t.prefixIcon,[n.m("suffix")]:i.suffix||t.suffixIcon||t.clearable||t.showPassword,[n.bm("suffix","password-clear")]:E.value&&z.value},v.class]),se=e.getCurrentInstance(),re=e.computed(()=>[n.e("wrapper"),n.is("focus",c.value)]),r=_.useAttrs({excludeKeys:e.computed(()=>Object.keys(M.value))}),{form:ue,formItem:C}=te.useFormItem(),{inputId:F}=te.useFormItemInputId(se.props,{formItemContext:C}),ie=oe.useFormSize(),m=oe.useFormDisabled(),n=Z.useNamespace("input"),A=Z.useNamespace("textarea"),w=e.shallowRef(),f=e.shallowRef(),c=e.ref(!1),V=e.ref(!1),y=e.ref(!1),x=e.ref(!1),D=e.ref(),I=e.shallowRef(t.inputStyle),h=e.computed(()=>w.value||f.value),S=e.computed(()=>s.singleAttrToObj(t.prefixIcon,"icon",{size:16})),O=e.computed(()=>s.singleAttrToObj(t.suffixIcon,"icon",{size:16})),ce=e.computed(()=>s.singleAttrToObj(t.clearIcon,"icon",{icon:"icon-circle-close",size:16})),R=e.computed(()=>ue?.statusIcon??!1),g=e.computed(()=>C?.validateState||""),K=e.computed(()=>g.value&&{validating:"icon-loading",success:"icon-circle-check",error:"icon-circle-close"}[g.value]),de=e.computed(()=>x.value?{icon:"icon-view",size:16}:{icon:"icon-hide",size:16}),me=e.computed(()=>[v.style,t.inputStyle]),$=e.computed(()=>[t.inputStyle,I.value,{resize:t.resize}]),u=e.computed(()=>Be.isNil(t.modelValue)?"":String(t.modelValue)),E=e.computed(()=>t.clearable&&!m.value&&!t.readonly&&!!u.value&&(c.value||V.value)),z=e.computed(()=>t.showPassword&&!m.value&&!t.readonly&&!!u.value&&(!!u.value||c.value)),p=e.computed(()=>t.showWordLimit&&!!r.value.maxlength&&(t.type==="text"||t.type==="textarea")&&!m.value&&!t.readonly&&!t.showPassword),N=e.computed(()=>Array.from(u.value).length),fe=e.computed(()=>!!p.value&&N.value>Number(r.value.maxlength)),pe=e.computed(()=>!!i.suffix||!!t.suffixIcon||E.value||t.showPassword||p.value||!!g.value&&R.value),[ve,ye]=_.useCursor(w);Y.useResizeObserver(f,o=>{if(!p.value||t.resize!=="both")return;const a=o[0],{width:d}=a.contentRect;D.value={right:`calc(100% - ${d+15+6}px)`}});const B=()=>{if(!(!Y.isClient||t.type!=="textarea"))if(t.autosize){const o=s.isObject(t.autosize)?t.autosize.minRows:void 0,a=s.isObject(t.autosize)?t.autosize.maxRows:void 0;I.value={...ee.calcTextareaHeight(f.value,o,a)}}else I.value={minHeight:ee.calcTextareaHeight(f.value).minHeight}},b=()=>{const o=h.value;!o||o.value===u.value||(o.value=u.value)},P=async o=>{ve();let{value:a}=o.target;if(r.value.maxlength&&a.length>=r.value.maxlength&&(a=a.slice(0,Number(r.value.maxlength))),t.formatter&&(a=t.parser?t.parser(a):a,a=t.formatter(a)),!y.value){if(a===u.value){b();return}l(q.UPDATE_MODEL_EVENT,a),l("input",a),await e.nextTick(),b(),ye()}},j=o=>{l("change",o.target.value)},he=()=>{l("suffixClick",t.modelValue)},ge=()=>{l("prefixClick",t.modelValue)},L=o=>{l("compositionstart",o),y.value=!0},be=o=>/([(\uAC00-\uD7AF)|\u3130-\u318F])+/.test(o),W=o=>{l("compositionupdate",o);const a=o.target?.value,d=a[a.length-1]||"";y.value=!be(d)},H=o=>{l("compositionend",o),y.value&&(y.value=!1,P(o))},ke=()=>{x.value=!x.value,U()},U=async()=>{await e.nextTick(),h.value?.focus()},Ce=()=>h.value?.blur(),G=o=>{c.value=!0,l("focus",o)},J=o=>{c.value=!1,l("blur",o),t.validateEvent&&C?.validate?.("blur").catch(a=>T.debugWarn(a))},we=o=>{V.value=!1,l("mouseleave",o)},xe=o=>{V.value=!0,l("mouseenter",o)},Q=o=>{let a=o.key;if(o.target.type==="number"&&["e","+","-0","E"].includes(a))return o.returnValue=!1,!1;l("keydown",o)},Ee=()=>{h.value?.select()},X=()=>{l(q.UPDATE_MODEL_EVENT,""),l("change",""),l("clear"),l("input","")};return e.watch(()=>t.modelValue,()=>{e.nextTick(()=>B()),t.validateEvent&&C?.validate?.("change").catch(o=>T.debugWarn(o))}),e.watch(u,()=>b()),e.watch(()=>t.type,async()=>{await e.nextTick(),b(),B()}),e.onMounted(()=>{!t.formatter&&t.parser&&T.debugWarn("VftInput","If you set the parser, you also need to set the formatter."),b(),e.nextTick(B)}),ne({input:w,textarea:f,ref:h,textareaStyle:$,autosize:t.autosize,focus:U,blur:Ce,select:Ee,clear:X,resizeTextarea:B}),(o,a)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",e.mergeProps(M.value,{class:le.value,style:me.value,role:o.containerRole,onMouseenter:xe,onMouseleave:we,onMousewheel:a[1]||(a[1]=d=>o.type==="number"&&c.value?d.preventDefault():null)}),[o.type!=="textarea"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[o.$slots.prepend?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(n).be("group","prepend"))},[e.renderSlot(o.$slots,"prepend")],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(re.value)},[o.$slots.prefix||S.value?.icon?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(e.unref(n).e("prefix"))},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(n).e("prefix-inner")),onClick:ge},[e.renderSlot(o.$slots,"prefix"),S.value?.icon?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),e.mergeProps({key:0,pointer:""},S.value,{class:e.unref(n).e("icon")}),null,16,["class"])):e.createCommentVNode("",!0)],2)],2)):e.createCommentVNode("",!0),e.createElementVNode("input",e.mergeProps({id:e.unref(F),ref_key:"input",ref:w,class:e.unref(n).e("inner")},e.unref(r),{type:o.showPassword?x.value?"text":"password":o.type,disabled:e.unref(m),formatter:o.formatter,parser:o.parser,readonly:o.readonly,autocomplete:o.autocomplete,tabindex:o.tabindex,"aria-label":o.label,placeholder:o.placeholder,style:o.inputStyle,form:o.form,onCompositionstart:L,onCompositionupdate:W,onCompositionend:H,onInput:P,onFocus:G,onBlur:J,onChange:j,onKeydown:Q,onKeyup:a[0]||(a[0]=e.withKeys(d=>l("enter"),["enter"]))}),null,16,Ie),pe.value?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(e.unref(n).e("suffix"))},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(n).e("suffix-inner")),onClick:he},[!E.value||!z.value||!p.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.renderSlot(o.$slots,"suffix"),O.value?.icon?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),e.mergeProps({key:0},O.value,{class:e.unref(n).e("icon")}),null,16,["class"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),E.value?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),e.mergeProps({key:1,pointer:"",class:[e.unref(n).e("icon"),e.unref(n).e("clear")]},ce.value,{onMousedown:e.withModifiers(e.unref(s.noop),["prevent"]),onClick:e.withModifiers(X,["stop"])}),null,16,["class","onMousedown"])):e.createCommentVNode("",!0),z.value?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),e.mergeProps({key:2},de.value,{class:[e.unref(n).e("icon"),e.unref(n).e("password")],onClick:ke}),null,16,["class"])):e.createCommentVNode("",!0),p.value?(e.openBlock(),e.createElementBlock("span",{key:3,class:e.normalizeClass(e.unref(n).e("count"))},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(n).e("count-inner"))},e.toDisplayString(N.value)+" / "+e.toDisplayString(e.unref(r).maxlength),3)],2)):e.createCommentVNode("",!0),g.value&&K.value&&R.value?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),{key:4,icon:K.value,class:e.normalizeClass([e.unref(n).e("icon"),e.unref(n).e("validateIcon"),e.unref(n).is("loading",g.value==="validating")])},null,8,["icon","class"])):e.createCommentVNode("",!0)],2)],2)):e.createCommentVNode("",!0)],2),o.$slots.append?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(n).be("group","append"))},[e.renderSlot(o.$slots,"append")],2)):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("textarea",e.mergeProps({id:e.unref(F),ref_key:"textarea",ref:f,class:e.unref(A).e("inner")},e.unref(r),{tabindex:o.tabindex,disabled:e.unref(m),readonly:o.readonly,autocomplete:o.autocomplete,style:$.value,"aria-label":o.label,placeholder:o.placeholder,form:o.form,onCompositionstart:L,onCompositionupdate:W,onCompositionend:H,onInput:P,onFocus:G,onBlur:J,onChange:j,onKeydown:Q}),null,16,Se),p.value?(e.openBlock(),e.createElementBlock("span",{key:0,style:e.normalizeStyle(D.value),class:e.normalizeClass(e.unref(n).e("count"))},e.toDisplayString(N.value)+" / "+e.toDisplayString(e.unref(r).maxlength),7)):e.createCommentVNode("",!0)],64))],16,Ve)),[[e.vShow,o.type!=="hidden"]])}});exports.default=ze;
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("vue");require("../form/index.cjs");const k=require("../icon/index.cjs"),Y=require("@vueuse/core"),s=require("@vft/utils"),T=require("../../utils/error.cjs");require("../config-provider/hooks/use-global-config.cjs");const Be=require("lodash-es"),Z=require("../../hooks/use-namespace/index.cjs");require("../../hooks/use-model-toggle/index.cjs");require("@popperjs/core");require("../../hooks/use-z-index/index.cjs");const q=require("@vft/constants"),_=require("@vft/use"),ee=require("./utils.cjs"),te=require("../form/hooks/use-form-common-props.cjs"),oe=require("../form/hooks/use-form-item.cjs"),Ve=["role"],Ie=["id","type","disabled","formatter","parser","readonly","autocomplete","tabindex","aria-label","placeholder","form"],Se=["id","tabindex","disabled","readonly","autocomplete","aria-label","placeholder","form"],ze=e.defineComponent({__name:"input",props:{id:{},size:{default:""},disabled:{type:Boolean},modelValue:{},type:{default:"text"},resize:{},autosize:{type:[Object,Boolean],default:!1},autocomplete:{default:"off"},formatter:{},parser:{},placeholder:{},form:{},readonly:{type:Boolean},clearable:{type:Boolean},showPassword:{type:Boolean},showWordLimit:{type:Boolean},suffixIcon:{},prefixIcon:{},clearIcon:{},containerRole:{},label:{},tabindex:{default:0},validateEvent:{type:Boolean,default:!0},inputStyle:{type:[Boolean,null,String,Object,Array]}},emits:{[q.UPDATE_MODEL_EVENT]:t=>s.isString(t),input:t=>s.isString(t),change:t=>s.isString(t),suffixClick:t=>s.isString(t),prefixClick:t=>s.isString(t),focus:t=>t instanceof FocusEvent,blur:t=>t instanceof FocusEvent,clear:()=>!0,enter:()=>!0,mouseleave:t=>t instanceof MouseEvent,mouseenter:t=>t instanceof MouseEvent,keydown:t=>t instanceof Event,compositionstart:t=>t instanceof CompositionEvent,compositionupdate:t=>t instanceof CompositionEvent,compositionend:t=>t instanceof CompositionEvent},setup(t,{expose:ne,emit:ae}){const l=ae,v=e.useAttrs(),i=e.useSlots(),M=e.computed(()=>{const o={};return t.containerRole==="combobox"&&(o["aria-haspopup"]=v["aria-haspopup"],o["aria-owns"]=v["aria-owns"],o["aria-expanded"]=v["aria-expanded"]),o}),le=e.computed(()=>[t.type==="textarea"?A.b():n.b(),n.m(ie.value),n.is("disabled",m.value),n.is("exceed",fe.value),n.is("focus",c.value),{[n.b("group")]:i.prepend||i.append,[n.bm("group","append")]:i.append,[n.bm("group","prepend")]:i.prepend,[n.m("prefix")]:i.prefix||t.prefixIcon,[n.m("suffix")]:i.suffix||t.suffixIcon||t.clearable||t.showPassword,[n.bm("suffix","password-clear")]:E.value&&z.value},v.class]),se=e.getCurrentInstance(),re=e.computed(()=>[n.e("wrapper"),n.is("focus",c.value)]),r=_.useAttrs({excludeKeys:e.computed(()=>Object.keys(M.value))}),{form:ue,formItem:C}=oe.useFormItem(),{inputId:F}=oe.useFormItemInputId(se.props,{formItemContext:C}),ie=te.useFormSize(),m=te.useFormDisabled(),n=Z.useNamespace("input"),A=Z.useNamespace("textarea"),w=e.shallowRef(),f=e.shallowRef(),c=e.ref(!1),V=e.ref(!1),y=e.ref(!1),x=e.ref(!1),D=e.ref(),I=e.shallowRef(t.inputStyle),h=e.computed(()=>w.value||f.value),S=e.computed(()=>s.singleAttrToObj(t.prefixIcon,"icon",{size:16})),O=e.computed(()=>s.singleAttrToObj(t.suffixIcon,"icon",{size:16})),ce=e.computed(()=>s.singleAttrToObj(t.clearIcon,"icon",{icon:"icon-circle-close",size:16})),R=e.computed(()=>ue?.statusIcon??!1),g=e.computed(()=>C?.validateState||""),K=e.computed(()=>g.value&&{validating:"icon-loading",success:"icon-circle-check",error:"icon-circle-close"}[g.value]),de=e.computed(()=>x.value?{icon:"icon-view",size:16}:{icon:"icon-hide",size:16}),me=e.computed(()=>[v.style,t.inputStyle]),$=e.computed(()=>[t.inputStyle,I.value,{resize:t.resize}]),u=e.computed(()=>Be.isNil(t.modelValue)?"":String(t.modelValue)),E=e.computed(()=>t.clearable&&!m.value&&!t.readonly&&!!u.value&&(c.value||V.value)),z=e.computed(()=>t.showPassword&&!m.value&&!t.readonly&&!!u.value&&(!!u.value||c.value)),p=e.computed(()=>t.showWordLimit&&!!r.value.maxlength&&(t.type==="text"||t.type==="textarea")&&!m.value&&!t.readonly&&!t.showPassword),N=e.computed(()=>Array.from(u.value).length),fe=e.computed(()=>!!p.value&&N.value>Number(r.value.maxlength)),pe=e.computed(()=>!!i.suffix||!!t.suffixIcon||E.value||t.showPassword||p.value||!!g.value&&R.value),[ve,ye]=_.useCursor(w);Y.useResizeObserver(f,o=>{if(!p.value||t.resize!=="both")return;const a=o[0],{width:d}=a.contentRect;D.value={right:`calc(100% - ${d+15+6}px)`}});const B=()=>{if(!(!Y.isClient||t.type!=="textarea"))if(t.autosize){const o=s.isObject(t.autosize)?t.autosize.minRows:void 0,a=s.isObject(t.autosize)?t.autosize.maxRows:void 0;I.value={...ee.calcTextareaHeight(f.value,o,a)}}else I.value={minHeight:ee.calcTextareaHeight(f.value).minHeight}},b=()=>{const o=h.value;!o||o.value===u.value||(o.value=u.value)},P=async o=>{ve();let{value:a}=o.target;if(r.value.maxlength&&a.length>=r.value.maxlength&&(a=a.slice(0,Number(r.value.maxlength))),t.formatter&&(a=t.parser?t.parser(a):a,a=t.formatter(a)),!y.value){if(a===u.value){b();return}l(q.UPDATE_MODEL_EVENT,a),l("input",a),await e.nextTick(),b(),ye()}},j=o=>{l("change",o.target.value)},he=()=>{l("suffixClick",t.modelValue)},ge=()=>{l("prefixClick",t.modelValue)},L=o=>{l("compositionstart",o),y.value=!0},be=o=>/([(\uAC00-\uD7AF)|\u3130-\u318F])+/.test(o),W=o=>{l("compositionupdate",o);const a=o.target?.value,d=a[a.length-1]||"";y.value=!be(d)},H=o=>{l("compositionend",o),y.value&&(y.value=!1,P(o))},ke=()=>{x.value=!x.value,U()},U=async()=>{await e.nextTick(),h.value?.focus()},Ce=()=>h.value?.blur(),G=o=>{c.value=!0,l("focus",o)},J=o=>{c.value=!1,l("blur",o),t.validateEvent&&C?.validate?.("blur").catch(a=>T.debugWarn(a))},we=o=>{V.value=!1,l("mouseleave",o)},xe=o=>{V.value=!0,l("mouseenter",o)},Q=o=>{let a=o.key;if(o.target.type==="number"&&["e","+","-0","E"].includes(a))return o.returnValue=!1,!1;l("keydown",o)},Ee=()=>{h.value?.select()},X=()=>{l(q.UPDATE_MODEL_EVENT,""),l("change",""),l("clear"),l("input","")};return e.watch(()=>t.modelValue,()=>{e.nextTick(()=>B()),t.validateEvent&&C?.validate?.("change").catch(o=>T.debugWarn(o))}),e.watch(u,()=>b()),e.watch(()=>t.type,async()=>{await e.nextTick(),b(),B()}),e.onMounted(()=>{!t.formatter&&t.parser&&T.debugWarn("VftInput","If you set the parser, you also need to set the formatter."),b(),e.nextTick(B)}),ne({input:w,textarea:f,ref:h,textareaStyle:$,autosize:t.autosize,focus:U,blur:Ce,select:Ee,clear:X,resizeTextarea:B}),(o,a)=>e.withDirectives((e.openBlock(),e.createElementBlock("div",e.mergeProps(M.value,{class:le.value,style:me.value,role:o.containerRole,onMouseenter:xe,onMouseleave:we,onMousewheel:a[1]||(a[1]=d=>o.type==="number"&&c.value?d.preventDefault():null)}),[o.type!=="textarea"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[o.$slots.prepend?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(e.unref(n).be("group","prepend"))},[e.renderSlot(o.$slots,"prepend")],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(re.value)},[o.$slots.prefix||S.value?.icon?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(e.unref(n).e("prefix"))},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(n).e("prefix-inner")),onClick:ge},[e.renderSlot(o.$slots,"prefix"),S.value?.icon?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),e.mergeProps({key:0,pointer:""},S.value,{class:e.unref(n).e("icon")}),null,16,["class"])):e.createCommentVNode("",!0)],2)],2)):e.createCommentVNode("",!0),e.createElementVNode("input",e.mergeProps({id:e.unref(F),ref_key:"input",ref:w,class:e.unref(n).e("inner")},e.unref(r),{type:o.showPassword?x.value?"text":"password":o.type,disabled:e.unref(m),formatter:o.formatter,parser:o.parser,readonly:o.readonly,autocomplete:o.autocomplete,tabindex:o.tabindex,"aria-label":o.label,placeholder:o.placeholder,style:o.inputStyle,form:o.form,onCompositionstart:L,onCompositionupdate:W,onCompositionend:H,onInput:P,onFocus:G,onBlur:J,onChange:j,onKeydown:Q,onKeyup:a[0]||(a[0]=e.withKeys(d=>l("enter"),["enter"]))}),null,16,Ie),pe.value?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(e.unref(n).e("suffix"))},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(n).e("suffix-inner")),onClick:he},[!E.value||!z.value||!p.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.renderSlot(o.$slots,"suffix"),O.value?.icon?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),e.mergeProps({key:0},O.value,{class:e.unref(n).e("icon")}),null,16,["class"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0),E.value?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),e.mergeProps({key:1,pointer:"",class:[e.unref(n).e("icon"),e.unref(n).e("clear")]},ce.value,{onMousedown:e.withModifiers(e.unref(s.noop),["prevent"]),onClick:e.withModifiers(X,["stop"])}),null,16,["class","onMousedown"])):e.createCommentVNode("",!0),z.value?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),e.mergeProps({key:2},de.value,{class:[e.unref(n).e("icon"),e.unref(n).e("password")],onClick:ke}),null,16,["class"])):e.createCommentVNode("",!0),p.value?(e.openBlock(),e.createElementBlock("span",{key:3,class:e.normalizeClass(e.unref(n).e("count"))},[e.createElementVNode("span",{class:e.normalizeClass(e.unref(n).e("count-inner"))},e.toDisplayString(N.value)+" / "+e.toDisplayString(e.unref(r).maxlength),3)],2)):e.createCommentVNode("",!0),g.value&&K.value&&R.value?(e.openBlock(),e.createBlock(e.unref(k.VftIcon),{key:4,icon:K.value,class:e.normalizeClass([e.unref(n).e("icon"),e.unref(n).e("validateIcon"),e.unref(n).is("loading",g.value==="validating")])},null,8,["icon","class"])):e.createCommentVNode("",!0)],2)],2)):e.createCommentVNode("",!0)],2),o.$slots.append?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(e.unref(n).be("group","append"))},[e.renderSlot(o.$slots,"append")],2)):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("textarea",e.mergeProps({id:e.unref(F),ref_key:"textarea",ref:f,class:e.unref(A).e("inner")},e.unref(r),{tabindex:o.tabindex,disabled:e.unref(m),readonly:o.readonly,autocomplete:o.autocomplete,style:$.value,"aria-label":o.label,placeholder:o.placeholder,form:o.form,onCompositionstart:L,onCompositionupdate:W,onCompositionend:H,onInput:P,onFocus:G,onBlur:J,onChange:j,onKeydown:Q}),null,16,Se),p.value?(e.openBlock(),e.createElementBlock("span",{key:0,style:e.normalizeStyle(D.value),class:e.normalizeClass(e.unref(n).e("count"))},e.toDisplayString(N.value)+" / "+e.toDisplayString(e.unref(r).maxlength),7)):e.createCommentVNode("",!0)],64))],16,Ve)),[[e.vShow,o.type!=="hidden"]])}});exports.default=ze;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const r=require("@vft/utils"),d=require("vue");require("../config-provider/index.cjs");const q=require("@vueuse/core"),_=require("../../utils/error.cjs");require("../config-provider/hooks/use-global-config.cjs");require("lodash-es");const i=require("./instance.cjs"),y=require("./message.vue2.cjs"),f=require("./types.cjs"),p=require("../config-provider/constants.cjs");let C=1;const h=e=>{const n=!e||r.isString(e)||d.isVNode(e)||r.isFunction(e)?{message:e}:e,s={...{...f.messageDefaults,...p.messageConfig},...n};if(!s.appendTo)s.appendTo=document.body;else if(r.isString(s.appendTo)){let t=document.querySelector(s.appendTo);r.isElement(t)||(_.debugWarn("VftMessage","the appendTo option is not an HTMLElement. Falling back to document.body."),t=document.body),s.appendTo=t}return s},T=e=>{const n=i.instances.indexOf(e);if(n===-1)return;i.instances.splice(n,1);const{handler:o}=e;o.close()},b=({appendTo:e,...n},o)=>{const s=`message_${C++}`,t=n.onClose,a=document.createElement("div"),c={...n,id:s,onClose:()=>{t?.(),T(m)},onDestroy:()=>{d.render(null,a)}},u=d.createVNode(y.default,c,r.isFunction(c.message)||d.isVNode(c.message)?{default:r.isFunction(c.message)?c.message:()=>c.message}:null);u.appContext=o||l._context,d.render(u,a),e.appendChild(a.firstElementChild);const g=u.component,m={id:s,vnode:u,vm:g,handler:{close:()=>{g.exposed.visible.value=!1}},props:u.component.props};return m},l=(e={},n)=>{if(!q.isClient)return{close:()=>{}};if(r.isNumber(p.messageConfig.max)&&i.instances.length>=p.messageConfig.max)return{close:()=>{}};const o=h(e);if(o.grouping&&i.instances.length){const t=i.instances.find(({vnode:a})=>a.props?.message===o.message);if(t)return t.props.repeatNum+=1,t.props.type=o.type,t.handler}const s=b(o,n);return i.instances.push(s),s.handler};f.messageTypes.forEach(e=>{l[e]=(n={},o)=>{const s=h(n);return l({...s,type:e},o)}});function v(e){for(const n of i.instances)(!e||e===n.props.type)&&n.handler.close()}l.closeAll=v;l._context=null;exports.closeAll=v;exports.default=l;
|
|
@@ -4,6 +4,28 @@ export type MessageType = 'success' | 'warning' | 'info' | 'error';
|
|
|
4
4
|
export interface MessageConfigContext {
|
|
5
5
|
/** 可同时显示的消息最大数量 */
|
|
6
6
|
max?: number;
|
|
7
|
+
/** 默认自定义类名 */
|
|
8
|
+
customClass?: string;
|
|
9
|
+
/** 默认是否居中布局 */
|
|
10
|
+
center?: boolean;
|
|
11
|
+
/** 默认是否允许 HTML 字符串 */
|
|
12
|
+
dangerouslyUseHTMLString?: boolean;
|
|
13
|
+
/** 默认显示时间,单位毫秒。设为 0 则不会自动关闭 */
|
|
14
|
+
duration?: number;
|
|
15
|
+
/** 默认图标 */
|
|
16
|
+
icon?: string;
|
|
17
|
+
/** 默认是否显示关闭按钮 */
|
|
18
|
+
showClose?: boolean;
|
|
19
|
+
/** 默认消息类型 */
|
|
20
|
+
type?: MessageType;
|
|
21
|
+
/** 默认偏移量 */
|
|
22
|
+
offset?: number;
|
|
23
|
+
/** 默认层级 */
|
|
24
|
+
zIndex?: number;
|
|
25
|
+
/** 默认是否开启分组 */
|
|
26
|
+
grouping?: boolean;
|
|
27
|
+
/** 默认追加到的元素 */
|
|
28
|
+
appendTo?: HTMLElement | string;
|
|
7
29
|
}
|
|
8
30
|
export declare const messageDefaults: {
|
|
9
31
|
customClass: string;
|
|
@@ -7,14 +7,14 @@ export declare const VftPopconfirm: import("vft/es/utils").SFCWithInstall<{
|
|
|
7
7
|
type: import("vue").PropType<string | number>;
|
|
8
8
|
default: number;
|
|
9
9
|
};
|
|
10
|
-
teleported: {
|
|
11
|
-
type: import("vue").PropType<boolean>;
|
|
12
|
-
default: boolean;
|
|
13
|
-
};
|
|
14
10
|
icon: {
|
|
15
11
|
type: import("vue").PropType<string | import("vft/es/vft").IconProps>;
|
|
16
12
|
default: string;
|
|
17
13
|
};
|
|
14
|
+
teleported: {
|
|
15
|
+
type: import("vue").PropType<boolean>;
|
|
16
|
+
default: boolean;
|
|
17
|
+
};
|
|
18
18
|
hideAfter: {
|
|
19
19
|
type: import("vue").PropType<number>;
|
|
20
20
|
default: number;
|
|
@@ -52,8 +52,8 @@ export declare const VftPopconfirm: import("vft/es/utils").SFCWithInstall<{
|
|
|
52
52
|
cancel: (val: MouseEvent) => void;
|
|
53
53
|
}, import("vue").PublicProps, {
|
|
54
54
|
width: string | number;
|
|
55
|
-
teleported: boolean;
|
|
56
55
|
icon: string | import("vft/es/vft").IconProps;
|
|
56
|
+
teleported: boolean;
|
|
57
57
|
hideAfter: number;
|
|
58
58
|
persistent: boolean;
|
|
59
59
|
confirmButtonType: import("vft/es/vft").ButtonType;
|
|
@@ -74,14 +74,14 @@ export declare const VftPopconfirm: import("vft/es/utils").SFCWithInstall<{
|
|
|
74
74
|
type: import("vue").PropType<string | number>;
|
|
75
75
|
default: number;
|
|
76
76
|
};
|
|
77
|
-
teleported: {
|
|
78
|
-
type: import("vue").PropType<boolean>;
|
|
79
|
-
default: boolean;
|
|
80
|
-
};
|
|
81
77
|
icon: {
|
|
82
78
|
type: import("vue").PropType<string | import("vft/es/vft").IconProps>;
|
|
83
79
|
default: string;
|
|
84
80
|
};
|
|
81
|
+
teleported: {
|
|
82
|
+
type: import("vue").PropType<boolean>;
|
|
83
|
+
default: boolean;
|
|
84
|
+
};
|
|
85
85
|
hideAfter: {
|
|
86
86
|
type: import("vue").PropType<number>;
|
|
87
87
|
default: number;
|
|
@@ -116,8 +116,8 @@ export declare const VftPopconfirm: import("vft/es/utils").SFCWithInstall<{
|
|
|
116
116
|
onConfirm?: ((val: MouseEvent) => any) | undefined;
|
|
117
117
|
}>, {}, {}, {}, {}, {
|
|
118
118
|
width: string | number;
|
|
119
|
-
teleported: boolean;
|
|
120
119
|
icon: string | import("vft/es/vft").IconProps;
|
|
120
|
+
teleported: boolean;
|
|
121
121
|
hideAfter: number;
|
|
122
122
|
persistent: boolean;
|
|
123
123
|
confirmButtonType: import("vft/es/vft").ButtonType;
|
|
@@ -135,14 +135,14 @@ export declare const VftPopconfirm: import("vft/es/utils").SFCWithInstall<{
|
|
|
135
135
|
type: import("vue").PropType<string | number>;
|
|
136
136
|
default: number;
|
|
137
137
|
};
|
|
138
|
-
teleported: {
|
|
139
|
-
type: import("vue").PropType<boolean>;
|
|
140
|
-
default: boolean;
|
|
141
|
-
};
|
|
142
138
|
icon: {
|
|
143
139
|
type: import("vue").PropType<string | import("vft/es/vft").IconProps>;
|
|
144
140
|
default: string;
|
|
145
141
|
};
|
|
142
|
+
teleported: {
|
|
143
|
+
type: import("vue").PropType<boolean>;
|
|
144
|
+
default: boolean;
|
|
145
|
+
};
|
|
146
146
|
hideAfter: {
|
|
147
147
|
type: import("vue").PropType<number>;
|
|
148
148
|
default: number;
|
|
@@ -180,8 +180,8 @@ export declare const VftPopconfirm: import("vft/es/utils").SFCWithInstall<{
|
|
|
180
180
|
cancel: (val: MouseEvent) => void;
|
|
181
181
|
}, string, {
|
|
182
182
|
width: string | number;
|
|
183
|
-
teleported: boolean;
|
|
184
183
|
icon: string | import("vft/es/vft").IconProps;
|
|
184
|
+
teleported: boolean;
|
|
185
185
|
hideAfter: number;
|
|
186
186
|
persistent: boolean;
|
|
187
187
|
confirmButtonType: import("vft/es/vft").ButtonType;
|
|
@@ -43,8 +43,8 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
43
43
|
onConfirm?: ((val: MouseEvent) => any) | undefined;
|
|
44
44
|
}>, {
|
|
45
45
|
width: string | number;
|
|
46
|
-
teleported: boolean;
|
|
47
46
|
icon: string | IconProps;
|
|
47
|
+
teleported: boolean;
|
|
48
48
|
hideAfter: number;
|
|
49
49
|
persistent: boolean;
|
|
50
50
|
confirmButtonType: ButtonType;
|