@vunk/plus 1.10.2 → 1.10.3
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/WebGLRenderer.mjs +1 -1
- package/components/WebGPURenderer.mjs +1 -1
- package/components/agent-chat-provider/index.mjs +1 -1
- package/components/avatar/index.mjs +1 -1
- package/components/broadcasting-markdown/index.mjs +16 -13
- package/components/broadcasting-markdown/src/index.vue.d.ts +1 -75
- package/components/browserAll.mjs +1 -1
- package/components/bubble-list/index.mjs +3 -3
- package/components/bubble-templates/index.mjs +1 -1
- package/components/chat-independent/index.mjs +1 -1
- package/components/drawer/index.css +92 -92
- package/components/drawer/index.mjs +1 -1
- package/components/index2.mjs +90 -11
- package/components/lottie-animation/index.mjs +1 -1
- package/components/metahuman-broadcasting/index.d.ts +0 -1
- package/components/metahuman-broadcasting/index.mjs +3092 -68
- package/components/metahuman-broadcasting/src/index.vue.d.ts +75 -191
- package/components/monaco-editor/index.mjs +1 -1
- package/components/monaco-environment/index.mjs +1 -1
- package/components/pixi-frame/index.d.ts +4 -1
- package/components/pixi-frame/index.mjs +2 -2
- package/components/pixi-frame/src/bitmap-generator.vue.d.ts +146 -0
- package/components/recorder-button/index.mjs +1 -1
- package/components/routes-menu-content/index.mjs +3 -3
- package/components/scrollbar/index.mjs +3 -3
- package/components/sender/index.mjs +2 -2
- package/components/speech-button/index.mjs +3 -3
- package/components/table-columns/index.mjs +1 -1
- package/components/tables-v1/index.mjs +1 -1
- package/components/tables-v1-checkbox/index.mjs +1 -1
- package/components/text/index.mjs +1 -1
- package/components/typing-markdown/index.mjs +1 -1
- package/components/vditor/index.mjs +3 -3
- package/components/webworkerAll.mjs +1 -1
- package/components/xgplayer/index.mjs +2 -2
- package/icons/end/index.mjs +1 -1
- package/icons/keyboard/index.mjs +1 -1
- package/icons/start/index.mjs +1 -1
- package/icons/voice/index.mjs +1 -1
- package/index.css +92 -92
- package/package.json +4 -20
- package/shared/data/blobToAudioBuffer.d.ts +1 -0
- package/shared/data/imgUrlToBitmap.d.ts +1 -0
- package/shared/data/index.d.ts +2 -0
- package/shared/data/index.mjs +25 -0
- package/shared/StreamingInferenceService.mjs +0 -204
- package/shared/audioToFrames/index.d.ts +0 -19
- package/shared/audioToFrames/index.mjs +0 -44
- package/shared/audioToFrames/src/assets/mask.d.ts +0 -2
- package/shared/audioToFrames/src/audio/StreamingFeatureExtractorService.d.ts +0 -125
- package/shared/audioToFrames/src/audio/index.d.ts +0 -5
- package/shared/audioToFrames/src/audio/index.mjs +0 -375
- package/shared/audioToFrames/src/config.d.ts +0 -4
- package/shared/audioToFrames/src/core/constants.d.ts +0 -17
- package/shared/audioToFrames/src/core/index.d.ts +0 -6
- package/shared/audioToFrames/src/core/index.mjs +0 -24
- package/shared/audioToFrames/src/core/utils.d.ts +0 -26
- package/shared/audioToFrames/src/inference/StreamingInferenceService.d.ts +0 -189
- package/shared/audioToFrames/src/inference/index.d.ts +0 -5
- package/shared/audioToFrames/src/inference/index.mjs +0 -3
- package/shared/audioToFrames/src/media/DataLoaderService.d.ts +0 -59
- package/shared/audioToFrames/src/media/PredictiveFrameLoader.d.ts +0 -81
- package/shared/audioToFrames/src/media/index.d.ts +0 -6
- package/shared/audioToFrames/src/media/index.mjs +0 -236
- package/shared/config.mjs +0 -5
- package/shared/constants.mjs +0 -7
|
@@ -48,7 +48,7 @@ var _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
48
48
|
}
|
|
49
49
|
});
|
|
50
50
|
|
|
51
|
-
var LoadingIcon = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__file", "
|
|
51
|
+
var LoadingIcon = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__file", "D:\\labCode\\vunk-plus\\packages\\components\\speech-button\\src\\LoadingIcon.vue"]]);
|
|
52
52
|
|
|
53
53
|
const SIZE = 1e3;
|
|
54
54
|
const COUNT = 4;
|
|
@@ -102,7 +102,7 @@ var _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
102
102
|
}
|
|
103
103
|
});
|
|
104
104
|
|
|
105
|
-
var RecordingIcon = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__file", "
|
|
105
|
+
var RecordingIcon = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__file", "D:\\labCode\\vunk-plus\\packages\\components\\speech-button\\src\\RecordingIcon.vue"]]);
|
|
106
106
|
|
|
107
107
|
var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
108
108
|
name: "VkSpeechButton",
|
|
@@ -151,7 +151,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
151
151
|
}
|
|
152
152
|
});
|
|
153
153
|
|
|
154
|
-
var VkSpeechButton = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "
|
|
154
|
+
var VkSpeechButton = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "D:\\labCode\\vunk-plus\\packages\\components\\speech-button\\src\\index.vue"]]);
|
|
155
155
|
|
|
156
156
|
var types = /*#__PURE__*/Object.freeze({
|
|
157
157
|
__proto__: null
|
|
@@ -125,7 +125,7 @@ var _sfc_main = defineComponent({
|
|
|
125
125
|
}
|
|
126
126
|
});
|
|
127
127
|
|
|
128
|
-
var VkTableColumns = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "
|
|
128
|
+
var VkTableColumns = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "D:\\labCode\\vunk-plus\\packages\\components\\table-columns\\src\\index.vue"]]);
|
|
129
129
|
|
|
130
130
|
var types = /*#__PURE__*/Object.freeze({
|
|
131
131
|
__proto__: null
|
|
@@ -421,7 +421,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
421
421
|
/* STABLE */
|
|
422
422
|
}, 8, ["full"]);
|
|
423
423
|
}
|
|
424
|
-
var VkTablesV1 = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "
|
|
424
|
+
var VkTablesV1 = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "D:\\labCode\\vunk-plus\\packages\\components\\tables-v1\\src\\index.vue"]]);
|
|
425
425
|
|
|
426
426
|
var types = /*#__PURE__*/Object.freeze({
|
|
427
427
|
__proto__: null
|
|
@@ -4134,7 +4134,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
4134
4134
|
/* STABLE */
|
|
4135
4135
|
}, 8, ["model-value", "oid-field"]);
|
|
4136
4136
|
}
|
|
4137
|
-
var VkTablesV1Checkbox = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "
|
|
4137
|
+
var VkTablesV1Checkbox = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "D:\\labCode\\vunk-plus\\packages\\components\\tables-v1-checkbox\\src\\index.vue"]]);
|
|
4138
4138
|
|
|
4139
4139
|
var types = /*#__PURE__*/Object.freeze({
|
|
4140
4140
|
__proto__: null
|
|
@@ -103,7 +103,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
103
103
|
} : void 0
|
|
104
104
|
]), 1040, ["is", "show", "content"]);
|
|
105
105
|
}
|
|
106
|
-
var VkText = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "
|
|
106
|
+
var VkText = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "D:\\labCode\\vunk-plus\\packages\\components\\text\\src\\index.vue"]]);
|
|
107
107
|
|
|
108
108
|
var types = /*#__PURE__*/Object.freeze({
|
|
109
109
|
__proto__: null
|
|
@@ -240,7 +240,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
240
240
|
innerHTML: _ctx.htmlText
|
|
241
241
|
}, null, 10, _hoisted_1);
|
|
242
242
|
}
|
|
243
|
-
var VkTypingMarkdown = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "
|
|
243
|
+
var VkTypingMarkdown = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "D:\\labCode\\vunk-plus\\packages\\components\\typing-markdown\\src\\index.vue"]]);
|
|
244
244
|
|
|
245
245
|
var types = /*#__PURE__*/Object.freeze({
|
|
246
246
|
__proto__: null
|
|
@@ -117,7 +117,7 @@ var _sfc_main$2 = defineComponent({
|
|
|
117
117
|
}
|
|
118
118
|
});
|
|
119
119
|
|
|
120
|
-
var HandleValue = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__file", "
|
|
120
|
+
var HandleValue = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__file", "D:\\labCode\\vunk-plus\\packages\\components\\vditor\\src\\handle-value.vue"]]);
|
|
121
121
|
|
|
122
122
|
var _sfc_main$1 = defineComponent({
|
|
123
123
|
props: {
|
|
@@ -159,7 +159,7 @@ var _sfc_main$1 = defineComponent({
|
|
|
159
159
|
}
|
|
160
160
|
});
|
|
161
161
|
|
|
162
|
-
var HandleFullscreen = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__file", "
|
|
162
|
+
var HandleFullscreen = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__file", "D:\\labCode\\vunk-plus\\packages\\components\\vditor\\src\\handle-fullscreen.vue"]]);
|
|
163
163
|
|
|
164
164
|
var _sfc_main = defineComponent({
|
|
165
165
|
name: "VkVditor",
|
|
@@ -277,7 +277,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
277
277
|
/* STABLE_FRAGMENT */
|
|
278
278
|
);
|
|
279
279
|
}
|
|
280
|
-
var VkVditor = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "
|
|
280
|
+
var VkVditor = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "D:\\labCode\\vunk-plus\\packages\\components\\vditor\\src\\index.vue"]]);
|
|
281
281
|
|
|
282
282
|
var types = /*#__PURE__*/Object.freeze({
|
|
283
283
|
__proto__: null
|
|
@@ -54,7 +54,7 @@ var _sfc_main$1 = /* @__PURE__ */ defineComponent({
|
|
|
54
54
|
function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
55
55
|
return renderSlot(_ctx.$slots, "default");
|
|
56
56
|
}
|
|
57
|
-
var Core = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render$1], ["__file", "
|
|
57
|
+
var Core = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render$1], ["__file", "D:\\labCode\\vunk-plus\\packages\\components\\xgplayer\\src\\core.vue"]]);
|
|
58
58
|
|
|
59
59
|
var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
60
60
|
...{
|
|
@@ -105,7 +105,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
105
105
|
/* STABLE_FRAGMENT */
|
|
106
106
|
);
|
|
107
107
|
}
|
|
108
|
-
var VkXgplayer = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "
|
|
108
|
+
var VkXgplayer = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "D:\\labCode\\vunk-plus\\packages\\components\\xgplayer\\src\\index.vue"]]);
|
|
109
109
|
|
|
110
110
|
var types = /*#__PURE__*/Object.freeze({
|
|
111
111
|
__proto__: null
|
package/icons/end/index.mjs
CHANGED
|
@@ -18,7 +18,7 @@ function _sfc_render(_ctx, _cache) {
|
|
|
18
18
|
}, null, -1 /* HOISTED */)
|
|
19
19
|
])))
|
|
20
20
|
}
|
|
21
|
-
var Core = /*#__PURE__*/_export_sfc(_sfc_main, [['render',_sfc_render],['__file',"
|
|
21
|
+
var Core = /*#__PURE__*/_export_sfc(_sfc_main, [['render',_sfc_render],['__file',"D:\\labCode\\vunk-plus\\packages\\icons\\end\\src\\index.vue"]]);
|
|
22
22
|
|
|
23
23
|
const Icon = function(props) {
|
|
24
24
|
return h(ElIcon, props, () => h(Core));
|
package/icons/keyboard/index.mjs
CHANGED
|
@@ -18,7 +18,7 @@ function _sfc_render(_ctx, _cache) {
|
|
|
18
18
|
}, null, -1 /* HOISTED */)
|
|
19
19
|
])))
|
|
20
20
|
}
|
|
21
|
-
var Core = /*#__PURE__*/_export_sfc(_sfc_main, [['render',_sfc_render],['__file',"
|
|
21
|
+
var Core = /*#__PURE__*/_export_sfc(_sfc_main, [['render',_sfc_render],['__file',"D:\\labCode\\vunk-plus\\packages\\icons\\keyboard\\src\\index.vue"]]);
|
|
22
22
|
|
|
23
23
|
const Icon = function(props) {
|
|
24
24
|
return h(ElIcon, props, () => h(Core));
|
package/icons/start/index.mjs
CHANGED
|
@@ -18,7 +18,7 @@ function _sfc_render(_ctx, _cache) {
|
|
|
18
18
|
}, null, -1 /* HOISTED */)
|
|
19
19
|
])))
|
|
20
20
|
}
|
|
21
|
-
var Core = /*#__PURE__*/_export_sfc(_sfc_main, [['render',_sfc_render],['__file',"
|
|
21
|
+
var Core = /*#__PURE__*/_export_sfc(_sfc_main, [['render',_sfc_render],['__file',"D:\\labCode\\vunk-plus\\packages\\icons\\start\\src\\index.vue"]]);
|
|
22
22
|
|
|
23
23
|
const Icon = function(props) {
|
|
24
24
|
return h(ElIcon, props, () => h(Core));
|
package/icons/voice/index.mjs
CHANGED
|
@@ -33,7 +33,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
33
33
|
/* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */
|
|
34
34
|
);
|
|
35
35
|
}
|
|
36
|
-
var Core = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "
|
|
36
|
+
var Core = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "D:\\labCode\\vunk-plus\\packages\\icons\\voice\\src\\index.vue"]]);
|
|
37
37
|
|
|
38
38
|
const Icon = function(props) {
|
|
39
39
|
return h(ElIcon, props, () => h(Core));
|
package/index.css
CHANGED
|
@@ -122,128 +122,128 @@
|
|
|
122
122
|
z-index: 0;
|
|
123
123
|
}
|
|
124
124
|
|
|
125
|
-
.vk-drawer-modal.is-closed {
|
|
126
|
-
display: block!important; /* 保持抽屉关闭时,toggle 仍然可见 */
|
|
125
|
+
.vk-drawer-modal.is-closed {
|
|
126
|
+
display: block!important; /* 保持抽屉关闭时,toggle 仍然可见 */
|
|
127
127
|
visibility: hidden; /* 抽屉本体不可见 */
|
|
128
128
|
}
|
|
129
|
-
.vk-drawer-modal.is-closed .el-drawer.rtl {
|
|
129
|
+
.vk-drawer-modal.is-closed .el-drawer.rtl {
|
|
130
130
|
transform: translateX(100%); /* 抽屉本体移出可视区域 */
|
|
131
131
|
}
|
|
132
|
-
.vk-drawer-modal.is-closed .el-drawer.ltr {
|
|
132
|
+
.vk-drawer-modal.is-closed .el-drawer.ltr {
|
|
133
133
|
transform: translateX(-100%); /* 抽屉本体移出可视区域 */
|
|
134
134
|
}
|
|
135
|
-
.vk-drawer-modal.is-closed .el-drawer.ttb {
|
|
135
|
+
.vk-drawer-modal.is-closed .el-drawer.ttb {
|
|
136
136
|
transform: translateY(-100%); /* 抽屉本体移出可视区域 */
|
|
137
137
|
}
|
|
138
|
-
.vk-drawer-modal.is-closed .el-drawer.btt {
|
|
138
|
+
.vk-drawer-modal.is-closed .el-drawer.btt {
|
|
139
139
|
transform: translateY(100%); /* 抽屉本体移出可视区域 */
|
|
140
140
|
}
|
|
141
|
-
.vk-drawer-modal .vk-drawer-toggle {
|
|
141
|
+
.vk-drawer-modal .vk-drawer-toggle {
|
|
142
142
|
visibility: visible; /* 保持 toggle 可见 */
|
|
143
143
|
}
|
|
144
|
-
.vk-drawer-modal.is-absolute{
|
|
144
|
+
.vk-drawer-modal.is-absolute{
|
|
145
145
|
position: absolute!important;
|
|
146
146
|
}
|
|
147
|
-
.vk-drawer-modal.is-absolute.no-modal {
|
|
147
|
+
.vk-drawer-modal.is-absolute.no-modal {
|
|
148
148
|
pointer-events: none;
|
|
149
149
|
}
|
|
150
|
-
.vk-drawer-modal.is-absolute.no-modal .el-drawer {
|
|
150
|
+
.vk-drawer-modal.is-absolute.no-modal .el-drawer {
|
|
151
151
|
pointer-events: initial;
|
|
152
152
|
}
|
|
153
|
-
.vk-drawer-toggle {
|
|
154
|
-
position: absolute;
|
|
155
|
-
z-index: 2;
|
|
156
|
-
|
|
157
|
-
/* 尺寸 */
|
|
158
|
-
width: 40px;
|
|
159
|
-
height: 80px;
|
|
160
|
-
|
|
161
|
-
/* 布局 */
|
|
162
|
-
display: flex;
|
|
163
|
-
align-items: center;
|
|
164
|
-
justify-content: center;
|
|
165
|
-
|
|
166
|
-
/* 交互 */
|
|
167
|
-
cursor: pointer;
|
|
168
|
-
user-select: none;
|
|
169
|
-
|
|
170
|
-
/* 文字样式 */
|
|
153
|
+
.vk-drawer-toggle {
|
|
154
|
+
position: absolute;
|
|
155
|
+
z-index: 2;
|
|
156
|
+
|
|
157
|
+
/* 尺寸 */
|
|
158
|
+
width: 40px;
|
|
159
|
+
height: 80px;
|
|
160
|
+
|
|
161
|
+
/* 布局 */
|
|
162
|
+
display: flex;
|
|
163
|
+
align-items: center;
|
|
164
|
+
justify-content: center;
|
|
165
|
+
|
|
166
|
+
/* 交互 */
|
|
167
|
+
cursor: pointer;
|
|
168
|
+
user-select: none;
|
|
169
|
+
|
|
170
|
+
/* 文字样式 */
|
|
171
171
|
color: var(--el-text-color-primary);
|
|
172
172
|
}
|
|
173
|
-
.vk-drawer-toggle.is-rtl {
|
|
174
|
-
|
|
175
|
-
/* 位置 */
|
|
176
|
-
top: 25%;
|
|
177
|
-
left: 0;
|
|
178
|
-
transform: translate(-100%, 0);
|
|
179
|
-
|
|
180
|
-
/* 外观 */
|
|
181
|
-
background-color: var(--el-bg-color);
|
|
182
|
-
border: 1px solid var(--el-border-color);
|
|
183
|
-
border-right: none; /* 右侧不要边框,因为贴着 drawer */
|
|
184
|
-
|
|
185
|
-
/* 圆角 */
|
|
186
|
-
border-top-left-radius: var(--el-border-radius-base);
|
|
187
|
-
border-bottom-left-radius: var(--el-border-radius-base);
|
|
188
|
-
|
|
189
|
-
/* 文字排列 */
|
|
173
|
+
.vk-drawer-toggle.is-rtl {
|
|
174
|
+
|
|
175
|
+
/* 位置 */
|
|
176
|
+
top: 25%;
|
|
177
|
+
left: 0;
|
|
178
|
+
transform: translate(-100%, 0);
|
|
179
|
+
|
|
180
|
+
/* 外观 */
|
|
181
|
+
background-color: var(--el-bg-color);
|
|
182
|
+
border: 1px solid var(--el-border-color);
|
|
183
|
+
border-right: none; /* 右侧不要边框,因为贴着 drawer */
|
|
184
|
+
|
|
185
|
+
/* 圆角 */
|
|
186
|
+
border-top-left-radius: var(--el-border-radius-base);
|
|
187
|
+
border-bottom-left-radius: var(--el-border-radius-base);
|
|
188
|
+
|
|
189
|
+
/* 文字排列 */
|
|
190
190
|
writing-mode: vertical-rl; /* 竖向文字 */
|
|
191
191
|
}
|
|
192
|
-
.vk-drawer-toggle.is-ltr {
|
|
193
|
-
|
|
194
|
-
/* 位置 */
|
|
195
|
-
top: 25%;
|
|
196
|
-
right: 0;
|
|
197
|
-
transform: translate(100%, 0);
|
|
198
|
-
|
|
199
|
-
/* 外观 */
|
|
200
|
-
background-color: var(--el-bg-color);
|
|
201
|
-
border: 1px solid var(--el-border-color);
|
|
202
|
-
border-left: none; /* 左侧不要边框,因为贴着 drawer */
|
|
203
|
-
|
|
204
|
-
/* 圆角 */
|
|
205
|
-
border-top-right-radius: var(--el-border-radius-base);
|
|
206
|
-
border-bottom-right-radius: var(--el-border-radius-base);
|
|
207
|
-
|
|
208
|
-
/* 文字排列 */
|
|
192
|
+
.vk-drawer-toggle.is-ltr {
|
|
193
|
+
|
|
194
|
+
/* 位置 */
|
|
195
|
+
top: 25%;
|
|
196
|
+
right: 0;
|
|
197
|
+
transform: translate(100%, 0);
|
|
198
|
+
|
|
199
|
+
/* 外观 */
|
|
200
|
+
background-color: var(--el-bg-color);
|
|
201
|
+
border: 1px solid var(--el-border-color);
|
|
202
|
+
border-left: none; /* 左侧不要边框,因为贴着 drawer */
|
|
203
|
+
|
|
204
|
+
/* 圆角 */
|
|
205
|
+
border-top-right-radius: var(--el-border-radius-base);
|
|
206
|
+
border-bottom-right-radius: var(--el-border-radius-base);
|
|
207
|
+
|
|
208
|
+
/* 文字排列 */
|
|
209
209
|
writing-mode: vertical-rl; /* 竖向文字 */
|
|
210
210
|
}
|
|
211
|
-
.vk-drawer-toggle.is-ttb {
|
|
212
|
-
|
|
213
|
-
/* 位置 */
|
|
214
|
-
bottom: 0;
|
|
215
|
-
left: 25%;
|
|
216
|
-
transform: translate(0, 100%);
|
|
217
|
-
|
|
218
|
-
/* 外观 */
|
|
219
|
-
background-color: var(--el-bg-color);
|
|
220
|
-
border: 1px solid var(--el-border-color);
|
|
221
|
-
border-top: none; /* 上侧不要边框,因为贴着 drawer */
|
|
222
|
-
|
|
223
|
-
/* 圆角 */
|
|
224
|
-
border-bottom-left-radius: var(--el-border-radius-base);
|
|
211
|
+
.vk-drawer-toggle.is-ttb {
|
|
212
|
+
|
|
213
|
+
/* 位置 */
|
|
214
|
+
bottom: 0;
|
|
215
|
+
left: 25%;
|
|
216
|
+
transform: translate(0, 100%);
|
|
217
|
+
|
|
218
|
+
/* 外观 */
|
|
219
|
+
background-color: var(--el-bg-color);
|
|
220
|
+
border: 1px solid var(--el-border-color);
|
|
221
|
+
border-top: none; /* 上侧不要边框,因为贴着 drawer */
|
|
222
|
+
|
|
223
|
+
/* 圆角 */
|
|
224
|
+
border-bottom-left-radius: var(--el-border-radius-base);
|
|
225
225
|
border-bottom-right-radius: var(--el-border-radius-base);
|
|
226
226
|
}
|
|
227
|
-
.vk-drawer-toggle.is-btt {
|
|
228
|
-
|
|
229
|
-
/* 位置 */
|
|
230
|
-
top: 0;
|
|
231
|
-
left: 25%;
|
|
232
|
-
transform: translate(0, -100%);
|
|
233
|
-
|
|
234
|
-
/* 外观 */
|
|
235
|
-
background-color: var(--el-bg-color);
|
|
236
|
-
border: 1px solid var(--el-border-color);
|
|
237
|
-
border-bottom: none; /* 下侧不要边框,因为贴着 drawer */
|
|
238
|
-
|
|
239
|
-
/* 圆角 */
|
|
240
|
-
border-top-left-radius: var(--el-border-radius-base);
|
|
227
|
+
.vk-drawer-toggle.is-btt {
|
|
228
|
+
|
|
229
|
+
/* 位置 */
|
|
230
|
+
top: 0;
|
|
231
|
+
left: 25%;
|
|
232
|
+
transform: translate(0, -100%);
|
|
233
|
+
|
|
234
|
+
/* 外观 */
|
|
235
|
+
background-color: var(--el-bg-color);
|
|
236
|
+
border: 1px solid var(--el-border-color);
|
|
237
|
+
border-bottom: none; /* 下侧不要边框,因为贴着 drawer */
|
|
238
|
+
|
|
239
|
+
/* 圆角 */
|
|
240
|
+
border-top-left-radius: var(--el-border-radius-base);
|
|
241
241
|
border-top-right-radius: var(--el-border-radius-base);
|
|
242
242
|
}
|
|
243
|
-
.vk-drawer-toggle:hover {
|
|
243
|
+
.vk-drawer-toggle:hover {
|
|
244
244
|
background-color: var(--el-fill-color-light);
|
|
245
245
|
}
|
|
246
|
-
.vk-drawer-toggle:active {
|
|
246
|
+
.vk-drawer-toggle:active {
|
|
247
247
|
background-color: var(--el-fill-color);
|
|
248
248
|
}
|
|
249
249
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vunk/plus",
|
|
3
|
-
"version": "1.10.
|
|
3
|
+
"version": "1.10.3",
|
|
4
4
|
"description": "",
|
|
5
5
|
"author": "",
|
|
6
6
|
"license": "ISC",
|
|
@@ -19,25 +19,9 @@
|
|
|
19
19
|
"import": "./shared/types/index.mjs",
|
|
20
20
|
"types": "./shared/types/index.d.ts"
|
|
21
21
|
},
|
|
22
|
-
"./shared/
|
|
23
|
-
"import": "./shared/
|
|
24
|
-
"types": "./shared/
|
|
25
|
-
},
|
|
26
|
-
"./shared/audioToFrames/src/media": {
|
|
27
|
-
"import": "./shared/audioToFrames/src/media/index.mjs",
|
|
28
|
-
"types": "./shared/audioToFrames/src/media/index.d.ts"
|
|
29
|
-
},
|
|
30
|
-
"./shared/audioToFrames/src/inference": {
|
|
31
|
-
"import": "./shared/audioToFrames/src/inference/index.mjs",
|
|
32
|
-
"types": "./shared/audioToFrames/src/inference/index.d.ts"
|
|
33
|
-
},
|
|
34
|
-
"./shared/audioToFrames/src/core": {
|
|
35
|
-
"import": "./shared/audioToFrames/src/core/index.mjs",
|
|
36
|
-
"types": "./shared/audioToFrames/src/core/index.d.ts"
|
|
37
|
-
},
|
|
38
|
-
"./shared/audioToFrames/src/audio": {
|
|
39
|
-
"import": "./shared/audioToFrames/src/audio/index.mjs",
|
|
40
|
-
"types": "./shared/audioToFrames/src/audio/index.d.ts"
|
|
22
|
+
"./shared/data": {
|
|
23
|
+
"import": "./shared/data/index.mjs",
|
|
24
|
+
"types": "./shared/data/index.d.ts"
|
|
41
25
|
},
|
|
42
26
|
"./icons/voice": {
|
|
43
27
|
"import": "./icons/voice/index.mjs",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function blobToAudioBuffer(blob: Blob): Promise<AudioBuffer>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function imgUrlToBitmap(maskUrl: string): Promise<ImageBitmap>;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
async function createAudioContext() {
|
|
2
|
+
const AudioContextClass = window.AudioContext || window.webkitAudioContext;
|
|
3
|
+
if (!AudioContextClass) {
|
|
4
|
+
throw new Error("\u60A8\u7684\u6D4F\u89C8\u5668\u4E0D\u652F\u6301Web Audio API");
|
|
5
|
+
}
|
|
6
|
+
const audioContext = new AudioContextClass();
|
|
7
|
+
if (audioContext.state === "suspended") {
|
|
8
|
+
await audioContext.resume();
|
|
9
|
+
}
|
|
10
|
+
return audioContext;
|
|
11
|
+
}
|
|
12
|
+
async function blobToAudioBuffer(blob) {
|
|
13
|
+
const audioContext = await createAudioContext();
|
|
14
|
+
const buffer = await blob.arrayBuffer();
|
|
15
|
+
return audioContext.decodeAudioData(buffer);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
async function imgUrlToBitmap(maskUrl) {
|
|
19
|
+
const img = new Image();
|
|
20
|
+
img.src = maskUrl;
|
|
21
|
+
await img.decode();
|
|
22
|
+
return createImageBitmap(img);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export { blobToAudioBuffer, imgUrlToBitmap };
|