@vunk/plus 1.1.4 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/components/SendOutlined.mjs +1337 -0
  2. package/components/avatar/index.d.ts +4 -0
  3. package/components/avatar/index.mjs +49 -0
  4. package/components/avatar/src/ctx.d.ts +18 -0
  5. package/components/avatar/src/index.vue.d.ts +180 -0
  6. package/components/avatar/src/types.d.ts +1 -0
  7. package/components/monaco-environment/index.mjs +10 -10
  8. package/components/recorder-button/index.css +72 -0
  9. package/components/recorder-button/index.d.ts +4 -0
  10. package/components/recorder-button/index.mjs +319 -0
  11. package/components/recorder-button/src/ctx.d.ts +19 -0
  12. package/components/recorder-button/src/index.vue.d.ts +309 -0
  13. package/components/recorder-button/src/speech-to-text.d.ts +1 -0
  14. package/components/recorder-button/src/types.d.ts +6 -0
  15. package/components/sender/index.css +33 -0
  16. package/components/sender/index.d.ts +4 -0
  17. package/components/sender/index.mjs +301 -0
  18. package/components/sender/src/SenderHeader.vue.d.ts +270 -0
  19. package/components/sender/src/ctx.d.ts +38 -0
  20. package/components/sender/src/index.vue.d.ts +732 -0
  21. package/components/sender/src/types.d.ts +1 -0
  22. package/components/speech-button/index.css +10 -0
  23. package/components/speech-button/index.d.ts +4 -0
  24. package/components/speech-button/index.mjs +164 -0
  25. package/components/speech-button/src/LoadingIcon.vue.d.ts +2 -0
  26. package/components/speech-button/src/RecordingIcon.vue.d.ts +2 -0
  27. package/components/speech-button/src/ctx.d.ts +10 -0
  28. package/components/speech-button/src/index.vue.d.ts +22 -0
  29. package/components/speech-button/src/types.d.ts +1 -0
  30. package/components/table-columns/src/ctx.d.ts +4 -4
  31. package/components/table-columns/src/el-ctx.d.ts +5 -5
  32. package/components/table-columns/src/index.vue.d.ts +21 -21
  33. package/components/tables-v1/index.mjs +6 -7
  34. package/components/tables-v1/src/ctx.d.ts +27 -27
  35. package/components/tables-v1/src/el-ctx.d.ts +12 -12
  36. package/components/tables-v1/src/index.vue.d.ts +103 -103
  37. package/components/tables-v1/src/types.d.ts +2 -2
  38. package/components/tables-v1-checkbox/src/ctx.d.ts +26 -25
  39. package/components/tables-v1-checkbox/src/index.vue.d.ts +182 -170
  40. package/components/vditor/src/index.vue.d.ts +5 -5
  41. package/composables/recorder/index.d.ts +15 -0
  42. package/composables/recorder/index.mjs +14479 -0
  43. package/index.css +118 -0
  44. package/package.json +30 -1
@@ -0,0 +1,33 @@
1
+ .ant-sender-header-header{
2
+ display: flex;
3
+ justify-content: space-between;
4
+ }
5
+ .vk-sender .ant-sender-content{
6
+ display: grid;
7
+ /* 两列 auto 1fr */
8
+ grid-template-columns: auto 1fr;
9
+ }
10
+ .vk-sender .ant-sender-actions-list {
11
+ margin-top: 1em;
12
+ /* 独占两列 */
13
+ grid-column: 1 / -1;
14
+ }
15
+ .vk-sender .ant-sender-prefix {
16
+ /* 要素考上 */
17
+ align-self: start;
18
+ }
19
+ .vk-sender-actions{
20
+ display: flex;
21
+ justify-content: space-between;
22
+ align-items: center;
23
+ width: 100%;
24
+ }
25
+ .vk-sender-actions__before,
26
+ .vk-sender-actions__after {
27
+ display: flex;
28
+ align-items: center;
29
+ }
30
+ .vk-sender-actions__before > * + *,
31
+ .vk-sender-actions__after > * + * {
32
+ margin-left: 8px;
33
+ }
@@ -0,0 +1,4 @@
1
+ import VkSender from './src/index.vue';
2
+ export * as __VkSender from './src/types';
3
+ export { VkSender, };
4
+ export default VkSender;
@@ -0,0 +1,301 @@
1
+ import { defineComponent, resolveComponent, openBlock, createBlock, withCtx, withDirectives, createElementVNode, mergeProps, toDisplayString, createVNode, renderSlot, vShow, ref, nextTick } from 'vue';
2
+ import { useModelComputed, useDeferred } from '@vunk/core/composables';
3
+ import { Button, Tooltip } from 'ant-design-vue';
4
+ import { Sender, Attachments } from 'ant-design-x-vue';
5
+ import { noop } from '@vunk/shared/function';
6
+ import { ElCollapseTransition } from 'element-plus';
7
+ import { C as CloseOutlined, L as LinkOutlined, a as CloudUploadOutlined, S as SendOutlined } from '../SendOutlined.mjs';
8
+ import { _ as _export_sfc } from '../_plugin-vue_export-helper.mjs';
9
+
10
+ const props = {
11
+ /**
12
+ * @description v-model 绑定文件列表
13
+ */
14
+ fileList: {
15
+ type: Array,
16
+ default: void 0
17
+ },
18
+ /**
19
+ * @description 文件上传地址
20
+ */
21
+ action: {
22
+ type: String,
23
+ default: ""
24
+ },
25
+ /**
26
+ * @description v-model 绑定文本
27
+ */
28
+ modelValue: {
29
+ type: String,
30
+ default: ""
31
+ },
32
+ /**
33
+ * @description 是否加载中,表现在发送按钮上
34
+ */
35
+ loading: {
36
+ type: Boolean,
37
+ default: void 0
38
+ }
39
+ };
40
+ const emits = {
41
+ "update:fileList": (_) => true,
42
+ "update:modelValue": (_) => true,
43
+ "submit": (_) => true,
44
+ "cancel": null
45
+ };
46
+
47
+ var _sfc_main$1 = /* @__PURE__ */ defineComponent({
48
+ name: "AXSenderHeader",
49
+ components: {
50
+ ElCollapseTransition,
51
+ AntButton: Button,
52
+ CloseOutlined
53
+ },
54
+ inheritAttrs: false,
55
+ props: {
56
+ modelValue: {
57
+ type: Boolean,
58
+ default: false
59
+ },
60
+ title: {
61
+ type: String,
62
+ default: "Sender"
63
+ },
64
+ contentRef: {
65
+ type: Function,
66
+ default: noop
67
+ }
68
+ },
69
+ emits: {
70
+ "update:modelValue": null
71
+ },
72
+ setup() {
73
+ return {};
74
+ }
75
+ });
76
+
77
+ const _hoisted_1 = { class: "ant-sender-header-header" };
78
+ const _hoisted_2 = { class: "ant-sender-header-header-title" };
79
+ const _hoisted_3 = { class: "ant-sender-header-header-close" };
80
+ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
81
+ const _component_CloseOutlined = resolveComponent("CloseOutlined");
82
+ const _component_AntButton = resolveComponent("AntButton");
83
+ const _component_ElCollapseTransition = resolveComponent("ElCollapseTransition");
84
+ return openBlock(), createBlock(_component_ElCollapseTransition, null, {
85
+ default: withCtx(() => [
86
+ withDirectives(createElementVNode(
87
+ "div",
88
+ mergeProps({ class: "ant-sender-header" }, _ctx.$attrs),
89
+ [
90
+ createElementVNode("div", _hoisted_1, [
91
+ createElementVNode(
92
+ "div",
93
+ _hoisted_2,
94
+ toDisplayString(_ctx.title),
95
+ 1
96
+ /* TEXT */
97
+ ),
98
+ createElementVNode("div", _hoisted_3, [
99
+ createVNode(_component_AntButton, {
100
+ type: "text",
101
+ size: "small",
102
+ onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("update:modelValue", false))
103
+ }, {
104
+ icon: withCtx(() => [
105
+ createVNode(_component_CloseOutlined)
106
+ ]),
107
+ _: 1
108
+ /* STABLE */
109
+ })
110
+ ])
111
+ ]),
112
+ createElementVNode(
113
+ "div",
114
+ {
115
+ ref: _ctx.contentRef,
116
+ class: "ant-sender-header-content"
117
+ },
118
+ [
119
+ renderSlot(_ctx.$slots, "default")
120
+ ],
121
+ 512
122
+ /* NEED_PATCH */
123
+ )
124
+ ],
125
+ 16
126
+ /* FULL_PROPS */
127
+ ), [
128
+ [vShow, _ctx.modelValue]
129
+ ])
130
+ ]),
131
+ _: 3
132
+ /* FORWARDED */
133
+ });
134
+ }
135
+ var SenderHeader = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render$1], ["__file", "/home/runner/work/vunk-plus/vunk-plus/packages/components/sender/src/SenderHeader.vue"]]);
136
+
137
+ var _sfc_main = /* @__PURE__ */ defineComponent({
138
+ name: "VkSender",
139
+ components: {
140
+ Sender,
141
+ LinkOutlined,
142
+ AntButton: Button,
143
+ Attachments,
144
+ SenderHeader
145
+ },
146
+ props,
147
+ emits,
148
+ setup(props2, {
149
+ emit,
150
+ slots
151
+ }) {
152
+ const loading = useModelComputed({
153
+ key: "loading",
154
+ default: false
155
+ }, props2, emit);
156
+ const headerOpen = ref(false);
157
+ const actionsRender = (_, info) => {
158
+ const {
159
+ SendButton,
160
+ LoadingButton
161
+ } = info.components;
162
+ const loadingRender = () => {
163
+ return createVNode(Tooltip, {
164
+ "title": "\u70B9\u51FB\u53D6\u6D88"
165
+ }, {
166
+ default: () => [createVNode(LoadingButton, null, null)]
167
+ });
168
+ };
169
+ const sendRender = () => {
170
+ return createVNode(Tooltip, {
171
+ "title": props2.modelValue ? "\u70B9\u51FB\u53D1\u9001" : "\u8BF7\u8F93\u5165\u5185\u5BB9"
172
+ }, {
173
+ default: () => [createVNode(SendButton, {
174
+ "type": "text",
175
+ "icon": createVNode(SendOutlined, null, null)
176
+ }, null)]
177
+ });
178
+ };
179
+ const sendAction = () => loading.value ? loadingRender() : sendRender();
180
+ return createVNode("div", {
181
+ "class": "vk-sender-actions"
182
+ }, [createVNode("div", {
183
+ "class": "vk-sender-actions__before"
184
+ }, [slots.actions_before?.()]), createVNode("div", {
185
+ "class": "vk-sender-actions__after"
186
+ }, [slots.actions_after?.(), sendAction()])]);
187
+ };
188
+ const attachmentsPlaceholder = type => {
189
+ if (type === "drop") {
190
+ return {
191
+ title: "\u8BF7\u5C06\u6587\u4EF6\u62D6\u5230\u6B64\u5904"
192
+ };
193
+ } else {
194
+ return {
195
+ icon: createVNode(CloudUploadOutlined, null, null),
196
+ title: "\u4E0A\u4F20\u6587\u4EF6",
197
+ description: "\u70B9\u51FB\u4E0A\u4F20\u6216\u62D6\u62FD\u6587\u4EF6\u5230\u6B64\u5904"
198
+ };
199
+ }
200
+ };
201
+ const theFileList = useModelComputed({
202
+ key: "fileList",
203
+ default: []
204
+ }, props2, emit);
205
+ const attachmentsRef = ref();
206
+ const attachmentWrapDef = useDeferred();
207
+ const handlePasteFile = async file => {
208
+ headerOpen.value = true;
209
+ const attachmentWrap = await attachmentWrapDef.promise;
210
+ await nextTick();
211
+ const fileInput = attachmentWrap.querySelector('input[type="file"]');
212
+ if (fileInput) {
213
+ const dataTransfer = new DataTransfer();
214
+ dataTransfer.items.add(file);
215
+ fileInput.files = dataTransfer.files;
216
+ fileInput.dispatchEvent(new Event("change", {
217
+ bubbles: true
218
+ }));
219
+ }
220
+ };
221
+ const handleChange = e => {
222
+ theFileList.value = e.fileList;
223
+ };
224
+ return {
225
+ actionsRender,
226
+ headerOpen,
227
+ attachmentsPlaceholder,
228
+ handlePasteFile,
229
+ attachmentsRef,
230
+ theFileList,
231
+ handleChange,
232
+ attachmentWrapResolve: attachmentWrapDef.resolve
233
+ };
234
+ }
235
+ });
236
+
237
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
238
+ const _component_Attachments = resolveComponent("Attachments");
239
+ const _component_SenderHeader = resolveComponent("SenderHeader");
240
+ const _component_LinkOutlined = resolveComponent("LinkOutlined");
241
+ const _component_AntButton = resolveComponent("AntButton");
242
+ const _component_Sender = resolveComponent("Sender");
243
+ return openBlock(), createBlock(_component_Sender, {
244
+ class: "vk-sender",
245
+ value: _ctx.modelValue,
246
+ loading: _ctx.loading,
247
+ "allow-speech": true,
248
+ actions: _ctx.actionsRender,
249
+ "on-submit": (e) => _ctx.$emit("submit", e),
250
+ "on-cancel": () => _ctx.$emit("cancel"),
251
+ "onUpdate:value": _cache[2] || (_cache[2] = ($event) => _ctx.$emit("update:modelValue", $event)),
252
+ onPasteFile: _ctx.handlePasteFile
253
+ }, {
254
+ header: withCtx(() => [
255
+ createVNode(_component_SenderHeader, {
256
+ modelValue: _ctx.headerOpen,
257
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.headerOpen = $event),
258
+ title: "\u9644\u4EF6",
259
+ "content-ref": _ctx.attachmentWrapResolve
260
+ }, {
261
+ default: withCtx(() => [
262
+ createVNode(_component_Attachments, {
263
+ ref: "attachmentsRef",
264
+ "file-list": _ctx.theFileList,
265
+ placeholder: _ctx.attachmentsPlaceholder,
266
+ action: _ctx.action,
267
+ multiple: "",
268
+ onChange: _ctx.handleChange
269
+ }, null, 8, ["file-list", "placeholder", "action", "onChange"])
270
+ ]),
271
+ _: 1
272
+ /* STABLE */
273
+ }, 8, ["modelValue", "content-ref"])
274
+ ]),
275
+ prefix: withCtx(() => [
276
+ createVNode(_component_AntButton, {
277
+ type: "text",
278
+ onClick: _cache[1] || (_cache[1] = ($event) => _ctx.headerOpen = !_ctx.headerOpen)
279
+ }, {
280
+ icon: withCtx(() => [
281
+ createVNode(_component_LinkOutlined)
282
+ ]),
283
+ _: 1
284
+ /* STABLE */
285
+ })
286
+ ]),
287
+ _: 1
288
+ /* STABLE */
289
+ }, 8, ["value", "loading", "actions", "on-submit", "on-cancel", "onPasteFile"]);
290
+ }
291
+ var VkSender = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/home/runner/work/vunk-plus/vunk-plus/packages/components/sender/src/index.vue"]]);
292
+
293
+ var types = /*#__PURE__*/Object.freeze({
294
+ __proto__: null
295
+ });
296
+
297
+ VkSender.install = (app) => {
298
+ app.component(VkSender.name || "VkSender", VkSender);
299
+ };
300
+
301
+ export { VkSender, types as __VkSender, VkSender as default };
@@ -0,0 +1,270 @@
1
+ import type { AnyFunc } from '@vunk/shared';
2
+ import type { PropType } from 'vue';
3
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
4
+ modelValue: {
5
+ type: BooleanConstructor;
6
+ default: boolean;
7
+ };
8
+ title: {
9
+ type: StringConstructor;
10
+ default: string;
11
+ };
12
+ contentRef: {
13
+ type: PropType<AnyFunc>;
14
+ default: AnyFunc;
15
+ };
16
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
17
+ 'update:modelValue': any;
18
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
19
+ modelValue: {
20
+ type: BooleanConstructor;
21
+ default: boolean;
22
+ };
23
+ title: {
24
+ type: StringConstructor;
25
+ default: string;
26
+ };
27
+ contentRef: {
28
+ type: PropType<AnyFunc>;
29
+ default: AnyFunc;
30
+ };
31
+ }>> & Readonly<{
32
+ "onUpdate:modelValue"?: (...args: any[] | unknown[]) => any;
33
+ }>, {
34
+ modelValue: boolean;
35
+ title: string;
36
+ contentRef: AnyFunc;
37
+ }, {}, {
38
+ ElCollapseTransition: import("element-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{}, {
39
+ ns: {
40
+ namespace: import("vue").ComputedRef<string>;
41
+ b: (blockSuffix?: string) => string;
42
+ e: (element?: string) => string;
43
+ m: (modifier?: string) => string;
44
+ be: (blockSuffix?: string, element?: string) => string;
45
+ em: (element?: string, modifier?: string) => string;
46
+ bm: (blockSuffix?: string, modifier?: string) => string;
47
+ bem: (blockSuffix?: string, element?: string, modifier?: string) => string;
48
+ is: {
49
+ (name: string, state: boolean): string;
50
+ (name: string): string;
51
+ };
52
+ cssVar: (object: Record<string, string>) => Record<string, string>;
53
+ cssVarName: (name: string) => string;
54
+ cssVarBlock: (object: Record<string, string>) => Record<string, string>;
55
+ cssVarBlockName: (name: string) => string;
56
+ };
57
+ reset: (el: import("vue").RendererElement) => void;
58
+ on: {
59
+ beforeEnter(el: import("vue").RendererElement): void;
60
+ enter(el: import("vue").RendererElement): void;
61
+ afterEnter(el: import("vue").RendererElement): void;
62
+ enterCancelled(el: import("vue").RendererElement): void;
63
+ beforeLeave(el: import("vue").RendererElement): void;
64
+ leave(el: import("vue").RendererElement): void;
65
+ afterLeave(el: import("vue").RendererElement): void;
66
+ leaveCancelled(el: import("vue").RendererElement): void;
67
+ };
68
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
69
+ AntButton: {
70
+ new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
71
+ prefixCls: StringConstructor;
72
+ type: PropType<import("ant-design-vue/es/button").ButtonType>;
73
+ htmlType: {
74
+ type: PropType<import("ant-design-vue/es/button/buttonTypes").ButtonHTMLType>;
75
+ default: string;
76
+ };
77
+ shape: {
78
+ type: PropType<import("ant-design-vue/es/button").ButtonShape>;
79
+ };
80
+ size: {
81
+ type: PropType<import("ant-design-vue/es/button").ButtonSize>;
82
+ };
83
+ loading: {
84
+ type: PropType<boolean | {
85
+ delay?: number;
86
+ }>;
87
+ default: () => boolean | {
88
+ delay?: number;
89
+ };
90
+ };
91
+ disabled: {
92
+ type: BooleanConstructor;
93
+ default: any;
94
+ };
95
+ ghost: {
96
+ type: BooleanConstructor;
97
+ default: any;
98
+ };
99
+ block: {
100
+ type: BooleanConstructor;
101
+ default: any;
102
+ };
103
+ danger: {
104
+ type: BooleanConstructor;
105
+ default: any;
106
+ };
107
+ icon: import("vue-types").VueTypeValidableDef<any>;
108
+ href: StringConstructor;
109
+ target: StringConstructor;
110
+ title: StringConstructor;
111
+ onClick: {
112
+ type: PropType<import("ant-design-vue/es/_util/EventInterface").MouseEventHandler | import("ant-design-vue/es/_util/EventInterface").MouseEventHandler[]>;
113
+ };
114
+ onMousedown: {
115
+ type: PropType<import("ant-design-vue/es/_util/EventInterface").MouseEventHandler | import("ant-design-vue/es/_util/EventInterface").MouseEventHandler[]>;
116
+ };
117
+ }>> & Readonly<{}>, () => import("ant-design-vue/es/_util/type").VueNode, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").PublicProps, {
118
+ block: boolean;
119
+ disabled: boolean;
120
+ danger: boolean;
121
+ ghost: boolean;
122
+ htmlType: import("ant-design-vue/es/button/buttonTypes").ButtonHTMLType;
123
+ loading: boolean | {
124
+ delay?: number;
125
+ };
126
+ }, true, {}, import("ant-design-vue/es/_util/type").CustomSlotsType<{
127
+ icon: any;
128
+ default: any;
129
+ }>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
130
+ P: {};
131
+ B: {};
132
+ D: {};
133
+ C: {};
134
+ M: {};
135
+ Defaults: {};
136
+ }, Readonly<import("vue").ExtractPropTypes<{
137
+ prefixCls: StringConstructor;
138
+ type: PropType<import("ant-design-vue/es/button").ButtonType>;
139
+ htmlType: {
140
+ type: PropType<import("ant-design-vue/es/button/buttonTypes").ButtonHTMLType>;
141
+ default: string;
142
+ };
143
+ shape: {
144
+ type: PropType<import("ant-design-vue/es/button").ButtonShape>;
145
+ };
146
+ size: {
147
+ type: PropType<import("ant-design-vue/es/button").ButtonSize>;
148
+ };
149
+ loading: {
150
+ type: PropType<boolean | {
151
+ delay?: number;
152
+ }>;
153
+ default: () => boolean | {
154
+ delay?: number;
155
+ };
156
+ };
157
+ disabled: {
158
+ type: BooleanConstructor;
159
+ default: any;
160
+ };
161
+ ghost: {
162
+ type: BooleanConstructor;
163
+ default: any;
164
+ };
165
+ block: {
166
+ type: BooleanConstructor;
167
+ default: any;
168
+ };
169
+ danger: {
170
+ type: BooleanConstructor;
171
+ default: any;
172
+ };
173
+ icon: import("vue-types").VueTypeValidableDef<any>;
174
+ href: StringConstructor;
175
+ target: StringConstructor;
176
+ title: StringConstructor;
177
+ onClick: {
178
+ type: PropType<import("ant-design-vue/es/_util/EventInterface").MouseEventHandler | import("ant-design-vue/es/_util/EventInterface").MouseEventHandler[]>;
179
+ };
180
+ onMousedown: {
181
+ type: PropType<import("ant-design-vue/es/_util/EventInterface").MouseEventHandler | import("ant-design-vue/es/_util/EventInterface").MouseEventHandler[]>;
182
+ };
183
+ }>> & Readonly<{}>, () => import("ant-design-vue/es/_util/type").VueNode, {}, {}, {}, {
184
+ block: boolean;
185
+ disabled: boolean;
186
+ danger: boolean;
187
+ ghost: boolean;
188
+ htmlType: import("ant-design-vue/es/button/buttonTypes").ButtonHTMLType;
189
+ loading: boolean | {
190
+ delay?: number;
191
+ };
192
+ }>;
193
+ __isFragment?: never;
194
+ __isTeleport?: never;
195
+ __isSuspense?: never;
196
+ } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
197
+ prefixCls: StringConstructor;
198
+ type: PropType<import("ant-design-vue/es/button").ButtonType>;
199
+ htmlType: {
200
+ type: PropType<import("ant-design-vue/es/button/buttonTypes").ButtonHTMLType>;
201
+ default: string;
202
+ };
203
+ shape: {
204
+ type: PropType<import("ant-design-vue/es/button").ButtonShape>;
205
+ };
206
+ size: {
207
+ type: PropType<import("ant-design-vue/es/button").ButtonSize>;
208
+ };
209
+ loading: {
210
+ type: PropType<boolean | {
211
+ delay?: number;
212
+ }>;
213
+ default: () => boolean | {
214
+ delay?: number;
215
+ };
216
+ };
217
+ disabled: {
218
+ type: BooleanConstructor;
219
+ default: any;
220
+ };
221
+ ghost: {
222
+ type: BooleanConstructor;
223
+ default: any;
224
+ };
225
+ block: {
226
+ type: BooleanConstructor;
227
+ default: any;
228
+ };
229
+ danger: {
230
+ type: BooleanConstructor;
231
+ default: any;
232
+ };
233
+ icon: import("vue-types").VueTypeValidableDef<any>;
234
+ href: StringConstructor;
235
+ target: StringConstructor;
236
+ title: StringConstructor;
237
+ onClick: {
238
+ type: PropType<import("ant-design-vue/es/_util/EventInterface").MouseEventHandler | import("ant-design-vue/es/_util/EventInterface").MouseEventHandler[]>;
239
+ };
240
+ onMousedown: {
241
+ type: PropType<import("ant-design-vue/es/_util/EventInterface").MouseEventHandler | import("ant-design-vue/es/_util/EventInterface").MouseEventHandler[]>;
242
+ };
243
+ }>> & Readonly<{}>, () => import("ant-design-vue/es/_util/type").VueNode, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
244
+ block: boolean;
245
+ disabled: boolean;
246
+ danger: boolean;
247
+ ghost: boolean;
248
+ htmlType: import("ant-design-vue/es/button/buttonTypes").ButtonHTMLType;
249
+ loading: boolean | {
250
+ delay?: number;
251
+ };
252
+ }, {}, string, import("ant-design-vue/es/_util/type").CustomSlotsType<{
253
+ icon: any;
254
+ default: any;
255
+ }>, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & import("vue").Plugin<any[]> & {
256
+ readonly Group: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
257
+ prefixCls: StringConstructor;
258
+ size: {
259
+ type: PropType<import("ant-design-vue/es/button").ButtonSize>;
260
+ };
261
+ }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
262
+ prefixCls: StringConstructor;
263
+ size: {
264
+ type: PropType<import("ant-design-vue/es/button").ButtonSize>;
265
+ };
266
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
267
+ };
268
+ CloseOutlined: import("@ant-design/icons-vue/lib/icons/CloseOutlined").CloseOutlinedIconType;
269
+ }, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
270
+ export default _default;
@@ -0,0 +1,38 @@
1
+ import type { UploadFile } from 'ant-design-vue';
2
+ import type { PropType } from 'vue';
3
+ export declare const props: {
4
+ /**
5
+ * @description v-model 绑定文件列表
6
+ */
7
+ fileList: {
8
+ type: PropType<UploadFile<any>[]>;
9
+ default: any;
10
+ };
11
+ /**
12
+ * @description 文件上传地址
13
+ */
14
+ action: {
15
+ type: StringConstructor;
16
+ default: string;
17
+ };
18
+ /**
19
+ * @description v-model 绑定文本
20
+ */
21
+ modelValue: {
22
+ type: StringConstructor;
23
+ default: string;
24
+ };
25
+ /**
26
+ * @description 是否加载中,表现在发送按钮上
27
+ */
28
+ loading: {
29
+ type: BooleanConstructor;
30
+ default: any;
31
+ };
32
+ };
33
+ export declare const emits: {
34
+ 'update:fileList': (_: UploadFile[]) => boolean;
35
+ 'update:modelValue': (_: string) => boolean;
36
+ submit: (_: string) => boolean;
37
+ cancel: any;
38
+ };