@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.
- package/components/SendOutlined.mjs +1337 -0
- package/components/avatar/index.d.ts +4 -0
- package/components/avatar/index.mjs +49 -0
- package/components/avatar/src/ctx.d.ts +18 -0
- package/components/avatar/src/index.vue.d.ts +180 -0
- package/components/avatar/src/types.d.ts +1 -0
- package/components/monaco-environment/index.mjs +10 -10
- package/components/recorder-button/index.css +72 -0
- package/components/recorder-button/index.d.ts +4 -0
- package/components/recorder-button/index.mjs +319 -0
- package/components/recorder-button/src/ctx.d.ts +19 -0
- package/components/recorder-button/src/index.vue.d.ts +309 -0
- package/components/recorder-button/src/speech-to-text.d.ts +1 -0
- package/components/recorder-button/src/types.d.ts +6 -0
- package/components/sender/index.css +33 -0
- package/components/sender/index.d.ts +4 -0
- package/components/sender/index.mjs +301 -0
- package/components/sender/src/SenderHeader.vue.d.ts +270 -0
- package/components/sender/src/ctx.d.ts +38 -0
- package/components/sender/src/index.vue.d.ts +732 -0
- package/components/sender/src/types.d.ts +1 -0
- package/components/speech-button/index.css +10 -0
- package/components/speech-button/index.d.ts +4 -0
- package/components/speech-button/index.mjs +164 -0
- package/components/speech-button/src/LoadingIcon.vue.d.ts +2 -0
- package/components/speech-button/src/RecordingIcon.vue.d.ts +2 -0
- package/components/speech-button/src/ctx.d.ts +10 -0
- package/components/speech-button/src/index.vue.d.ts +22 -0
- package/components/speech-button/src/types.d.ts +1 -0
- package/components/table-columns/src/ctx.d.ts +4 -4
- package/components/table-columns/src/el-ctx.d.ts +5 -5
- package/components/table-columns/src/index.vue.d.ts +21 -21
- package/components/tables-v1/index.mjs +6 -7
- package/components/tables-v1/src/ctx.d.ts +27 -27
- package/components/tables-v1/src/el-ctx.d.ts +12 -12
- package/components/tables-v1/src/index.vue.d.ts +103 -103
- package/components/tables-v1/src/types.d.ts +2 -2
- package/components/tables-v1-checkbox/src/ctx.d.ts +26 -25
- package/components/tables-v1-checkbox/src/index.vue.d.ts +182 -170
- package/components/vditor/src/index.vue.d.ts +5 -5
- package/composables/recorder/index.d.ts +15 -0
- package/composables/recorder/index.mjs +14479 -0
- package/index.css +118 -0
- package/package.json +30 -1
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { ElAvatar } from 'element-plus';
|
|
2
|
+
import { defineComponent, resolveComponent, openBlock, createBlock, normalizeStyle, withCtx, renderSlot } from 'vue';
|
|
3
|
+
import { _ as _export_sfc } from '../_plugin-vue_export-helper.mjs';
|
|
4
|
+
|
|
5
|
+
const props = {
|
|
6
|
+
background: {
|
|
7
|
+
default: "transparent"
|
|
8
|
+
},
|
|
9
|
+
color: {
|
|
10
|
+
default: "currentColor"
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
const emits = {};
|
|
14
|
+
|
|
15
|
+
var _sfc_main = defineComponent({
|
|
16
|
+
name: "VkAvatar",
|
|
17
|
+
components: {
|
|
18
|
+
ElAvatar
|
|
19
|
+
},
|
|
20
|
+
props,
|
|
21
|
+
emits
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
25
|
+
const _component_ElAvatar = resolveComponent("ElAvatar");
|
|
26
|
+
return openBlock(), createBlock(_component_ElAvatar, {
|
|
27
|
+
style: normalizeStyle({
|
|
28
|
+
background: _ctx.background,
|
|
29
|
+
color: _ctx.color
|
|
30
|
+
})
|
|
31
|
+
}, {
|
|
32
|
+
default: withCtx(() => [
|
|
33
|
+
renderSlot(_ctx.$slots, "default")
|
|
34
|
+
]),
|
|
35
|
+
_: 3
|
|
36
|
+
/* FORWARDED */
|
|
37
|
+
}, 8, ["style"]);
|
|
38
|
+
}
|
|
39
|
+
var VkAvatar = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/home/runner/work/vunk-plus/vunk-plus/packages/components/avatar/src/index.vue"]]);
|
|
40
|
+
|
|
41
|
+
var types = /*#__PURE__*/Object.freeze({
|
|
42
|
+
__proto__: null
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
VkAvatar.install = (app) => {
|
|
46
|
+
app.component(VkAvatar.name || "VkAvatar", VkAvatar);
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
export { VkAvatar, types as __VkAvatar, VkAvatar as default };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export declare const props: {
|
|
2
|
+
readonly size: import("element-plus/es/utils").EpPropFinalized<readonly [NumberConstructor, StringConstructor], "" | "default" | "small" | "large", number, "", boolean>;
|
|
3
|
+
readonly shape: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "circle" | "square", unknown, "circle", boolean>;
|
|
4
|
+
readonly icon: {
|
|
5
|
+
readonly type: import("vue").PropType<unknown>;
|
|
6
|
+
readonly required: false;
|
|
7
|
+
readonly validator: (val: unknown) => boolean;
|
|
8
|
+
__epPropKey: true;
|
|
9
|
+
};
|
|
10
|
+
readonly src: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
11
|
+
readonly alt: StringConstructor;
|
|
12
|
+
readonly srcSet: StringConstructor;
|
|
13
|
+
readonly fit: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any) | (() => ObjectFitProperty) | ((new (...args: any[]) => any) | (() => ObjectFitProperty))[], unknown, unknown, "cover", boolean>;
|
|
14
|
+
} & {
|
|
15
|
+
background: never;
|
|
16
|
+
color: never;
|
|
17
|
+
};
|
|
18
|
+
export declare const emits: {};
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
2
|
+
readonly size: import("element-plus/es/utils").EpPropFinalized<readonly [NumberConstructor, StringConstructor], "" | "default" | "small" | "large", number, "", boolean>;
|
|
3
|
+
readonly shape: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "circle" | "square", unknown, "circle", boolean>;
|
|
4
|
+
readonly icon: {
|
|
5
|
+
readonly type: import("vue").PropType<unknown>;
|
|
6
|
+
readonly required: false;
|
|
7
|
+
readonly validator: (val: unknown) => boolean;
|
|
8
|
+
__epPropKey: true;
|
|
9
|
+
};
|
|
10
|
+
readonly src: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
11
|
+
readonly alt: StringConstructor;
|
|
12
|
+
readonly srcSet: StringConstructor;
|
|
13
|
+
readonly fit: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any) | (() => ObjectFitProperty) | ((new (...args: any[]) => any) | (() => ObjectFitProperty))[], unknown, unknown, "cover", boolean>;
|
|
14
|
+
} & {
|
|
15
|
+
background: never;
|
|
16
|
+
color: never;
|
|
17
|
+
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
18
|
+
readonly size: import("element-plus/es/utils").EpPropFinalized<readonly [NumberConstructor, StringConstructor], "" | "default" | "small" | "large", number, "", boolean>;
|
|
19
|
+
readonly shape: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "circle" | "square", unknown, "circle", boolean>;
|
|
20
|
+
readonly icon: {
|
|
21
|
+
readonly type: import("vue").PropType<unknown>;
|
|
22
|
+
readonly required: false;
|
|
23
|
+
readonly validator: (val: unknown) => boolean;
|
|
24
|
+
__epPropKey: true;
|
|
25
|
+
};
|
|
26
|
+
readonly src: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
27
|
+
readonly alt: StringConstructor;
|
|
28
|
+
readonly srcSet: StringConstructor;
|
|
29
|
+
readonly fit: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any) | (() => ObjectFitProperty) | ((new (...args: any[]) => any) | (() => ObjectFitProperty))[], unknown, unknown, "cover", boolean>;
|
|
30
|
+
} & {
|
|
31
|
+
background: never;
|
|
32
|
+
color: never;
|
|
33
|
+
}>> & Readonly<{}>, {
|
|
34
|
+
readonly size: import("element-plus").ButtonType<readonly [NumberConstructor, StringConstructor], "" | "default" | "small" | "large", number>;
|
|
35
|
+
readonly shape: import("element-plus").ButtonType<StringConstructor, "circle" | "square", unknown>;
|
|
36
|
+
readonly src: string;
|
|
37
|
+
readonly fit: any;
|
|
38
|
+
}, {}, {
|
|
39
|
+
ElAvatar: import("element-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{
|
|
40
|
+
readonly size: import("element-plus/es/utils").EpPropFinalized<readonly [NumberConstructor, StringConstructor], "" | "default" | "small" | "large", number, "", boolean>;
|
|
41
|
+
readonly shape: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "circle" | "square", unknown, "circle", boolean>;
|
|
42
|
+
readonly icon: {
|
|
43
|
+
readonly type: import("vue").PropType<unknown>;
|
|
44
|
+
readonly required: false;
|
|
45
|
+
readonly validator: (val: unknown) => boolean;
|
|
46
|
+
__epPropKey: true;
|
|
47
|
+
};
|
|
48
|
+
readonly src: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
49
|
+
readonly alt: StringConstructor;
|
|
50
|
+
readonly srcSet: StringConstructor;
|
|
51
|
+
readonly fit: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any) | (() => any) | ((new (...args: any[]) => any) | (() => any))[], unknown, unknown, "cover", boolean>;
|
|
52
|
+
}, {
|
|
53
|
+
props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
|
|
54
|
+
readonly size: import("element-plus/es/utils").EpPropFinalized<readonly [NumberConstructor, StringConstructor], "" | "default" | "small" | "large", number, "", boolean>;
|
|
55
|
+
readonly shape: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "circle" | "square", unknown, "circle", boolean>;
|
|
56
|
+
readonly icon: {
|
|
57
|
+
readonly type: import("vue").PropType<unknown>;
|
|
58
|
+
readonly required: false;
|
|
59
|
+
readonly validator: (val: unknown) => boolean;
|
|
60
|
+
__epPropKey: true;
|
|
61
|
+
};
|
|
62
|
+
readonly src: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
63
|
+
readonly alt: StringConstructor;
|
|
64
|
+
readonly srcSet: StringConstructor;
|
|
65
|
+
readonly fit: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any) | (() => any) | ((new (...args: any[]) => any) | (() => any))[], unknown, unknown, "cover", boolean>;
|
|
66
|
+
}>> & {
|
|
67
|
+
onError?: (evt: Event) => any;
|
|
68
|
+
}>>;
|
|
69
|
+
emit: (event: "error", evt: Event) => void;
|
|
70
|
+
ns: {
|
|
71
|
+
namespace: import("vue").ComputedRef<string>;
|
|
72
|
+
b: (blockSuffix?: string) => string;
|
|
73
|
+
e: (element?: string) => string;
|
|
74
|
+
m: (modifier?: string) => string;
|
|
75
|
+
be: (blockSuffix?: string, element?: string) => string;
|
|
76
|
+
em: (element?: string, modifier?: string) => string;
|
|
77
|
+
bm: (blockSuffix?: string, modifier?: string) => string;
|
|
78
|
+
bem: (blockSuffix?: string, element?: string, modifier?: string) => string;
|
|
79
|
+
is: {
|
|
80
|
+
(name: string, state: boolean): string;
|
|
81
|
+
(name: string): string;
|
|
82
|
+
};
|
|
83
|
+
cssVar: (object: Record<string, string>) => Record<string, string>;
|
|
84
|
+
cssVarName: (name: string) => string;
|
|
85
|
+
cssVarBlock: (object: Record<string, string>) => Record<string, string>;
|
|
86
|
+
cssVarBlockName: (name: string) => string;
|
|
87
|
+
};
|
|
88
|
+
hasLoadError: import("vue").Ref<boolean, boolean>;
|
|
89
|
+
avatarClass: import("vue").ComputedRef<string[]>;
|
|
90
|
+
sizeStyle: import("vue").ComputedRef<import("vue").CSSProperties>;
|
|
91
|
+
fitStyle: import("vue").ComputedRef<import("vue").CSSProperties>;
|
|
92
|
+
handleError: (e: Event) => void;
|
|
93
|
+
ElIcon: import("element-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{
|
|
94
|
+
readonly size: {
|
|
95
|
+
readonly type: import("vue").PropType<import("element-plus").ButtonType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>>;
|
|
96
|
+
readonly required: false;
|
|
97
|
+
readonly validator: (val: unknown) => boolean;
|
|
98
|
+
__epPropKey: true;
|
|
99
|
+
};
|
|
100
|
+
readonly color: {
|
|
101
|
+
readonly type: import("vue").PropType<string>;
|
|
102
|
+
readonly required: false;
|
|
103
|
+
readonly validator: (val: unknown) => boolean;
|
|
104
|
+
__epPropKey: true;
|
|
105
|
+
};
|
|
106
|
+
}, {
|
|
107
|
+
props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
|
|
108
|
+
readonly size: {
|
|
109
|
+
readonly type: import("vue").PropType<import("element-plus").ButtonType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>>;
|
|
110
|
+
readonly required: false;
|
|
111
|
+
readonly validator: (val: unknown) => boolean;
|
|
112
|
+
__epPropKey: true;
|
|
113
|
+
};
|
|
114
|
+
readonly color: {
|
|
115
|
+
readonly type: import("vue").PropType<string>;
|
|
116
|
+
readonly required: false;
|
|
117
|
+
readonly validator: (val: unknown) => boolean;
|
|
118
|
+
__epPropKey: true;
|
|
119
|
+
};
|
|
120
|
+
}>> & {
|
|
121
|
+
[x: `on${string}`]: ((...args: any[]) => any) | ((...args: unknown[]) => any);
|
|
122
|
+
}>>;
|
|
123
|
+
ns: {
|
|
124
|
+
namespace: import("vue").ComputedRef<string>;
|
|
125
|
+
b: (blockSuffix?: string) => string;
|
|
126
|
+
e: (element?: string) => string;
|
|
127
|
+
m: (modifier?: string) => string;
|
|
128
|
+
be: (blockSuffix?: string, element?: string) => string;
|
|
129
|
+
em: (element?: string, modifier?: string) => string;
|
|
130
|
+
bm: (blockSuffix?: string, modifier?: string) => string;
|
|
131
|
+
bem: (blockSuffix?: string, element?: string, modifier?: string) => string;
|
|
132
|
+
is: {
|
|
133
|
+
(name: string, state: boolean): string;
|
|
134
|
+
(name: string): string;
|
|
135
|
+
};
|
|
136
|
+
cssVar: (object: Record<string, string>) => Record<string, string>;
|
|
137
|
+
cssVarName: (name: string) => string;
|
|
138
|
+
cssVarBlock: (object: Record<string, string>) => Record<string, string>;
|
|
139
|
+
cssVarBlockName: (name: string) => string;
|
|
140
|
+
};
|
|
141
|
+
style: import("vue").ComputedRef<import("vue").CSSProperties>;
|
|
142
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
143
|
+
readonly size: {
|
|
144
|
+
readonly type: import("vue").PropType<import("element-plus").ButtonType<(new (...args: any[]) => string | number) | (() => string | number) | ((new (...args: any[]) => string | number) | (() => string | number))[], unknown, unknown>>;
|
|
145
|
+
readonly required: false;
|
|
146
|
+
readonly validator: (val: unknown) => boolean;
|
|
147
|
+
__epPropKey: true;
|
|
148
|
+
};
|
|
149
|
+
readonly color: {
|
|
150
|
+
readonly type: import("vue").PropType<string>;
|
|
151
|
+
readonly required: false;
|
|
152
|
+
readonly validator: (val: unknown) => boolean;
|
|
153
|
+
__epPropKey: true;
|
|
154
|
+
};
|
|
155
|
+
}>>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>> & Record<string, any>;
|
|
156
|
+
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
157
|
+
error: (evt: Event) => boolean;
|
|
158
|
+
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
159
|
+
readonly size: import("element-plus/es/utils").EpPropFinalized<readonly [NumberConstructor, StringConstructor], "" | "default" | "small" | "large", number, "", boolean>;
|
|
160
|
+
readonly shape: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "circle" | "square", unknown, "circle", boolean>;
|
|
161
|
+
readonly icon: {
|
|
162
|
+
readonly type: import("vue").PropType<unknown>;
|
|
163
|
+
readonly required: false;
|
|
164
|
+
readonly validator: (val: unknown) => boolean;
|
|
165
|
+
__epPropKey: true;
|
|
166
|
+
};
|
|
167
|
+
readonly src: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
|
|
168
|
+
readonly alt: StringConstructor;
|
|
169
|
+
readonly srcSet: StringConstructor;
|
|
170
|
+
readonly fit: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => any) | (() => any) | ((new (...args: any[]) => any) | (() => any))[], unknown, unknown, "cover", boolean>;
|
|
171
|
+
}>> & {
|
|
172
|
+
onError?: (evt: Event) => any;
|
|
173
|
+
}, {
|
|
174
|
+
readonly size: import("element-plus").ButtonType<readonly [NumberConstructor, StringConstructor], "" | "default" | "small" | "large", number>;
|
|
175
|
+
readonly shape: import("element-plus").ButtonType<StringConstructor, "circle" | "square", unknown>;
|
|
176
|
+
readonly src: string;
|
|
177
|
+
readonly fit: any;
|
|
178
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>> & Record<string, any>;
|
|
179
|
+
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
180
|
+
export default _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
import { defineComponent, renderSlot } from 'vue';
|
|
2
|
-
import jsonWorker from 'monaco-editor/esm/vs/language/json/json.worker?worker';
|
|
3
|
-
import cssWorker from 'monaco-editor/esm/vs/language/css/css.worker?worker';
|
|
4
|
-
import htmlWorker from 'monaco-editor/esm/vs/language/html/html.worker?worker';
|
|
5
|
-
import tsWorker from 'monaco-editor/esm/vs/language/typescript/ts.worker?worker';
|
|
6
1
|
import EditorWorker from 'monaco-editor/esm/vs/editor/editor.worker?worker';
|
|
2
|
+
import CssWorker from 'monaco-editor/esm/vs/language/css/css.worker?worker';
|
|
3
|
+
import HtmlWorker from 'monaco-editor/esm/vs/language/html/html.worker?worker';
|
|
4
|
+
import JsonWorker from 'monaco-editor/esm/vs/language/json/json.worker?worker';
|
|
5
|
+
import TsWorker from 'monaco-editor/esm/vs/language/typescript/ts.worker?worker';
|
|
6
|
+
import { defineComponent, renderSlot } from 'vue';
|
|
7
7
|
import { _ as _export_sfc } from '../_plugin-vue_export-helper.mjs';
|
|
8
8
|
|
|
9
9
|
var _sfc_main = defineComponent({
|
|
10
10
|
name: "VkMonacoEnvironment",
|
|
11
11
|
setup() {
|
|
12
|
-
|
|
12
|
+
globalThis.MonacoEnvironment = {
|
|
13
13
|
getWorker(_, label) {
|
|
14
14
|
if (label === "json") {
|
|
15
|
-
return new
|
|
15
|
+
return new JsonWorker();
|
|
16
16
|
}
|
|
17
17
|
if (label === "css" || label === "scss" || label === "less") {
|
|
18
|
-
return new
|
|
18
|
+
return new CssWorker();
|
|
19
19
|
}
|
|
20
20
|
if (label === "html" || label === "handlebars" || label === "razor") {
|
|
21
|
-
return new
|
|
21
|
+
return new HtmlWorker();
|
|
22
22
|
}
|
|
23
23
|
if (["typescript", "javascript"].includes(label)) {
|
|
24
|
-
return new
|
|
24
|
+
return new TsWorker();
|
|
25
25
|
}
|
|
26
26
|
return new EditorWorker();
|
|
27
27
|
}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
.sk-recorder-container {
|
|
2
|
+
position: relative;
|
|
3
|
+
}
|
|
4
|
+
.sk-recorder-button {
|
|
5
|
+
position: relative;
|
|
6
|
+
width: 100%;
|
|
7
|
+
touch-action: none;
|
|
8
|
+
user-select: none;
|
|
9
|
+
}
|
|
10
|
+
.recording-mask {
|
|
11
|
+
position: fixed;
|
|
12
|
+
top: 0;
|
|
13
|
+
left: 0;
|
|
14
|
+
right: 0;
|
|
15
|
+
bottom: 0;
|
|
16
|
+
background: rgba(0, 0, 0, 0.6);
|
|
17
|
+
z-index: 1000;
|
|
18
|
+
display: flex;
|
|
19
|
+
flex-direction: column;
|
|
20
|
+
justify-content: space-between;
|
|
21
|
+
pointer-events: none;
|
|
22
|
+
}
|
|
23
|
+
.action-buttons {
|
|
24
|
+
pointer-events: auto;
|
|
25
|
+
display: flex;
|
|
26
|
+
justify-content: space-between;
|
|
27
|
+
padding: 20px 40px;
|
|
28
|
+
margin-bottom: 100px;
|
|
29
|
+
}
|
|
30
|
+
.cancel-btn, .text-btn {
|
|
31
|
+
display: flex;
|
|
32
|
+
flex-direction: column;
|
|
33
|
+
align-items: center;
|
|
34
|
+
color: white;
|
|
35
|
+
}
|
|
36
|
+
.btn-icon {
|
|
37
|
+
width: 60px; /* 增大按钮尺寸 */
|
|
38
|
+
height: 60px;
|
|
39
|
+
background: rgba(0, 0, 0, 0.4);
|
|
40
|
+
border-radius: 50%;
|
|
41
|
+
display: flex;
|
|
42
|
+
align-items: center;
|
|
43
|
+
justify-content: center;
|
|
44
|
+
font-size: 28px;
|
|
45
|
+
margin-bottom: 8px;
|
|
46
|
+
}
|
|
47
|
+
.cancel-btn.active .btn-icon {
|
|
48
|
+
background: var(--el-color-danger);
|
|
49
|
+
}
|
|
50
|
+
.text-btn.active .btn-icon {
|
|
51
|
+
background: var(--el-color-primary);
|
|
52
|
+
}
|
|
53
|
+
.btn-text {
|
|
54
|
+
font-size: 14px;
|
|
55
|
+
}
|
|
56
|
+
.recording-tip {
|
|
57
|
+
flex: 1;
|
|
58
|
+
display: flex;
|
|
59
|
+
flex-direction: column;
|
|
60
|
+
align-items: center;
|
|
61
|
+
justify-content: center;
|
|
62
|
+
padding-bottom: 100px; /* 向上移动一些 */
|
|
63
|
+
color: white;
|
|
64
|
+
}
|
|
65
|
+
.wave-container {
|
|
66
|
+
width: 160px; /* 增大波形显示区域 */
|
|
67
|
+
height: 100px;
|
|
68
|
+
margin-bottom: 20px;
|
|
69
|
+
}
|
|
70
|
+
.tip-text {
|
|
71
|
+
font-size: 14px;
|
|
72
|
+
}
|