@opendesign-plus-test/components 0.0.1-rc.211 → 0.0.1-rc.213
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/dist/components/config-provider/OPlusConfigProvider.vue.d.ts +1 -0
- package/dist/components.cjs.js +38 -38
- package/dist/components.css +1 -1
- package/dist/components.es.js +7510 -7496
- package/dist/treeshaking/components/config-provider/OPlusConfigProvider.vue.d.ts +1 -0
- package/dist/treeshaking/components/config-provider/OPlusConfigProvider.vue.mjs +4 -2
- package/dist/treeshaking/components/empty/OEmpty.css +10 -10
- package/dist/treeshaking/components/empty/OEmpty.vue.mjs +1 -1
- package/dist/treeshaking/components/empty/OEmpty.vue2.mjs +6 -2
- package/dist/treeshaking/components/meeting/OMeetingPlayback.css +2 -3
- package/dist/treeshaking/components/meeting/OMeetingPlayback.vue.mjs +10 -5
- package/dist/treeshaking/components/meeting/components/OMeetingPlaybackSubtitles.css +3 -0
- package/dist/treeshaking/components/meeting/components/OMeetingPlaybackSubtitles.vue.mjs +15 -7
- package/dist/treeshaking/components/meeting/components/OMeetingPlaybackVideo.vue.mjs +13 -15
- package/package.json +1 -1
|
@@ -7,13 +7,15 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
7
7
|
__name: "OPlusConfigProvider",
|
|
8
8
|
props: {
|
|
9
9
|
locale: { default: "zh" },
|
|
10
|
-
theme: { default: "light" }
|
|
10
|
+
theme: { default: "light" },
|
|
11
|
+
emptyImg: {}
|
|
11
12
|
},
|
|
12
13
|
setup(__props) {
|
|
13
14
|
const props = __props;
|
|
14
15
|
const globalConfig = {
|
|
15
16
|
locale: computed(() => unref(props.locale)),
|
|
16
|
-
theme: computed(() => unref(props.theme))
|
|
17
|
+
theme: computed(() => unref(props.theme)),
|
|
18
|
+
emptyImg: computed(() => unref(props.emptyImg))
|
|
17
19
|
};
|
|
18
20
|
provide(configProviderInjectKey, globalConfig);
|
|
19
21
|
return (_ctx, _cache) => {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
.hover-icon-rotate .o-icon[data-v-
|
|
1
|
+
.hover-icon-rotate .o-icon[data-v-4381b83c] {
|
|
2
2
|
transition: all var(--o-duration-m1) var(--o-easing-standard-in);
|
|
3
3
|
}
|
|
4
4
|
@media (hover: hover) {
|
|
5
|
-
.hover-icon-rotate:hover .o-icon[data-v-
|
|
5
|
+
.hover-icon-rotate:hover .o-icon[data-v-4381b83c] {
|
|
6
6
|
transform: rotate(-180deg);
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
|
-
.o-empty[data-v-
|
|
9
|
+
.o-empty[data-v-4381b83c] {
|
|
10
10
|
width: 100%;
|
|
11
11
|
height: 100%;
|
|
12
12
|
display: flex;
|
|
@@ -17,43 +17,43 @@
|
|
|
17
17
|
--result-desc-gap: var(--o-gap-4);
|
|
18
18
|
}
|
|
19
19
|
@media (min-width: 1201px) and (max-width: 1680px) {
|
|
20
|
-
.o-empty[data-v-
|
|
20
|
+
.o-empty[data-v-4381b83c] {
|
|
21
21
|
--result-image-width: 200px;
|
|
22
22
|
--result-image-height: 175px;
|
|
23
23
|
--result-desc-gap: var(--o-gap-3);
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
26
|
@media (max-width: 1200px) {
|
|
27
|
-
.o-empty[data-v-
|
|
27
|
+
.o-empty[data-v-4381b83c] {
|
|
28
28
|
--result-image-width: 160px;
|
|
29
29
|
--result-image-height: 140px;
|
|
30
30
|
--result-desc-gap: var(--o-gap-2);
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
|
-
.o-empty[data-v-
|
|
33
|
+
.o-empty[data-v-4381b83c] .o-result-description {
|
|
34
34
|
font-size: 14px;
|
|
35
35
|
line-height: 22px;
|
|
36
36
|
}
|
|
37
37
|
@media (min-width: 1201px) and (max-width: 1680px) {
|
|
38
|
-
.o-empty[data-v-
|
|
38
|
+
.o-empty[data-v-4381b83c] .o-result-description {
|
|
39
39
|
font-size: 14px;
|
|
40
40
|
line-height: 18px;
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
@media (min-width: 841px) and (max-width: 1200px) {
|
|
44
|
-
.o-empty[data-v-
|
|
44
|
+
.o-empty[data-v-4381b83c] .o-result-description {
|
|
45
45
|
font-size: 12px;
|
|
46
46
|
line-height: 18px;
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
49
|
@media (min-width: 601px) and (max-width: 840px) {
|
|
50
|
-
.o-empty[data-v-
|
|
50
|
+
.o-empty[data-v-4381b83c] .o-result-description {
|
|
51
51
|
font-size: 12px;
|
|
52
52
|
line-height: 18px;
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
55
|
@media (max-width: 600px) {
|
|
56
|
-
.o-empty[data-v-
|
|
56
|
+
.o-empty[data-v-4381b83c] .o-result-description {
|
|
57
57
|
font-size: 12px;
|
|
58
58
|
line-height: 18px;
|
|
59
59
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _sfc_main from "./OEmpty.vue2.mjs";
|
|
2
2
|
import './OEmpty.css';
|
|
3
3
|
import _export_sfc from "../../_virtual/_plugin-vue_export-helper.mjs";
|
|
4
|
-
const OEmpty = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-
|
|
4
|
+
const OEmpty = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-4381b83c"]]);
|
|
5
5
|
export {
|
|
6
6
|
OEmpty as default
|
|
7
7
|
};
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { defineComponent, computed, openBlock, createBlock, unref, withCtx, renderSlot, createElementVNode } from "vue";
|
|
1
|
+
import { defineComponent, inject, computed, openBlock, createBlock, unref, withCtx, renderSlot, createElementVNode } from "vue";
|
|
2
2
|
import { OResult } from "@opensig/opendesign";
|
|
3
3
|
import { useTheme } from "../../shared/theme.mjs";
|
|
4
4
|
import { useI18n } from "../../i18n/index.mjs";
|
|
5
|
+
import { configProviderInjectKey } from "../../shared/provide.mjs";
|
|
5
6
|
import emptyImgLight from "./404.png.mjs";
|
|
6
7
|
import emptyImgDark from "./404_dark.png.mjs";
|
|
7
8
|
const _hoisted_1 = ["src"];
|
|
@@ -15,7 +16,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
15
16
|
const props = __props;
|
|
16
17
|
const { isDark } = useTheme();
|
|
17
18
|
const { t } = useI18n();
|
|
18
|
-
const
|
|
19
|
+
const configProvider = inject(configProviderInjectKey);
|
|
20
|
+
const emptyImage = computed(() => {
|
|
21
|
+
return props.img || (configProvider == null ? void 0 : configProvider.emptyImg.value) || (isDark.value ? emptyImgDark : emptyImgLight);
|
|
22
|
+
});
|
|
19
23
|
return (_ctx, _cache) => {
|
|
20
24
|
return openBlock(), createBlock(unref(OResult), {
|
|
21
25
|
class: "o-empty",
|
|
@@ -51,9 +51,6 @@
|
|
|
51
51
|
.o-meeting-playback .left-card {
|
|
52
52
|
width: 60%;
|
|
53
53
|
}
|
|
54
|
-
.o-meeting-playback .left-card:only-child {
|
|
55
|
-
width: 100%;
|
|
56
|
-
}
|
|
57
54
|
@media (max-width: 840px) {
|
|
58
55
|
.o-meeting-playback .left-card {
|
|
59
56
|
width: 100%;
|
|
@@ -63,6 +60,7 @@
|
|
|
63
60
|
display: flex;
|
|
64
61
|
align-items: center;
|
|
65
62
|
justify-content: space-between;
|
|
63
|
+
gap: var(--o-r-gap-5);
|
|
66
64
|
}
|
|
67
65
|
.o-meeting-playback .left-card .video-header .video-title {
|
|
68
66
|
font-weight: 500;
|
|
@@ -95,6 +93,7 @@
|
|
|
95
93
|
}
|
|
96
94
|
.o-meeting-playback .left-card .video-header .o-select {
|
|
97
95
|
width: 150px;
|
|
96
|
+
flex-shrink: 0;
|
|
98
97
|
}
|
|
99
98
|
.o-meeting-playback .left-card .video-content {
|
|
100
99
|
margin-top: var(--o-gap-5);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent, ref, computed, watchEffect,
|
|
1
|
+
import { defineComponent, ref, watch, computed, watchEffect, nextTick, onMounted, onUnmounted, openBlock, createElementBlock, createElementVNode, createVNode, withCtx, createTextVNode, toDisplayString, createBlock, unref, Fragment, renderList, createCommentVNode, normalizeClass, normalizeStyle, renderSlot } from "vue";
|
|
2
2
|
import { transformSeconds, speakerNum, transformTime } from "./utils.mjs";
|
|
3
3
|
import { OSelect, OOption, OTab, OTabPane, OScroller, OIcon, OIconChevronDown } from "@opensig/opendesign";
|
|
4
4
|
import _sfc_main$3 from "./components/OMeetingPlaybackSubtitles.vue.mjs";
|
|
@@ -57,6 +57,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
57
57
|
const setTrackIdx = (idx) => {
|
|
58
58
|
trackIdx.value = idx;
|
|
59
59
|
};
|
|
60
|
+
watch(
|
|
61
|
+
() => props.data,
|
|
62
|
+
() => {
|
|
63
|
+
trackIdx.value = 0;
|
|
64
|
+
}
|
|
65
|
+
);
|
|
60
66
|
const captionsList = ref([]);
|
|
61
67
|
const getCaptions = async (url) => {
|
|
62
68
|
const res = await fetch(url);
|
|
@@ -261,7 +267,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
261
267
|
]),
|
|
262
268
|
createElementVNode("div", _hoisted_4, [
|
|
263
269
|
__props.data ? (openBlock(), createBlock(_sfc_main$2, {
|
|
264
|
-
key:
|
|
270
|
+
key: 0,
|
|
265
271
|
ref_key: "playerRef",
|
|
266
272
|
ref: playerRef,
|
|
267
273
|
src: __props.data.video,
|
|
@@ -374,8 +380,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
374
380
|
}, 8, ["class"])
|
|
375
381
|
])
|
|
376
382
|
], 512),
|
|
377
|
-
|
|
378
|
-
key: 0,
|
|
383
|
+
createElementVNode("div", {
|
|
379
384
|
class: "right-card card-wrapper",
|
|
380
385
|
style: normalizeStyle({
|
|
381
386
|
height: rightHeight.value
|
|
@@ -391,7 +396,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
391
396
|
]),
|
|
392
397
|
_: 3
|
|
393
398
|
}, 8, ["captions", "trackIdx", "instance"])
|
|
394
|
-
], 4)
|
|
399
|
+
], 4)
|
|
395
400
|
]);
|
|
396
401
|
};
|
|
397
402
|
}
|
|
@@ -551,6 +551,9 @@
|
|
|
551
551
|
.o-meeting-playback-subtitles .o-tab .o-row {
|
|
552
552
|
margin-top: 0;
|
|
553
553
|
}
|
|
554
|
+
.o-meeting-playback-subtitles .playback-empty {
|
|
555
|
+
height: 100%;
|
|
556
|
+
}
|
|
554
557
|
@media (max-width: 840px) {
|
|
555
558
|
.o-meeting-playback-subtitles .captions-tab .captions-scroller {
|
|
556
559
|
max-height: 600px;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { defineComponent, computed, ref, watch, nextTick, onMounted, onUnmounted, openBlock, createElementBlock, createElementVNode, createVNode, unref, withKeys, withModifiers, withCtx, toDisplayString, createCommentVNode, Fragment, renderList, createBlock, createTextVNode, normalizeClass, withDirectives, renderSlot } from "vue";
|
|
1
|
+
import { defineComponent, computed, useId, ref, watch, nextTick, onMounted, onUnmounted, openBlock, createElementBlock, createElementVNode, createVNode, unref, withKeys, withModifiers, withCtx, toDisplayString, createCommentVNode, Fragment, renderList, createBlock, createTextVNode, normalizeClass, withDirectives, renderSlot } from "vue";
|
|
2
2
|
import { OInput, OIcon, ODivider, OTab, OTabPane, OScroller, ORow, OCol } from "@opensig/opendesign";
|
|
3
3
|
import { ElSelect, ElOption, ElCheckbox } from "element-plus";
|
|
4
4
|
import "element-plus/es/components/select/style/css";
|
|
@@ -11,6 +11,7 @@ import IconChevronUp from "../../../_virtual/icon-chevron-up.mjs";
|
|
|
11
11
|
import IconClose from "../../../_virtual/icon-close.mjs";
|
|
12
12
|
import IconSpeaker from "../../../_virtual/icon-speaker.mjs";
|
|
13
13
|
import { useDebounceFn } from "@vueuse/core";
|
|
14
|
+
import OEmpty from "../../empty/OEmpty.vue.mjs";
|
|
14
15
|
import { useI18n } from "../../../i18n/index.mjs";
|
|
15
16
|
import { buildVueDompurifyHTMLDirective } from "vue-dompurify-html";
|
|
16
17
|
const _hoisted_1 = { class: "o-meeting-playback-subtitles" };
|
|
@@ -26,7 +27,10 @@ const _hoisted_7 = { class: "num" };
|
|
|
26
27
|
const _hoisted_8 = { class: "speaker" };
|
|
27
28
|
const _hoisted_9 = { class: "start-time" };
|
|
28
29
|
const _hoisted_10 = { class: "text" };
|
|
29
|
-
const _hoisted_11 = {
|
|
30
|
+
const _hoisted_11 = {
|
|
31
|
+
key: 1,
|
|
32
|
+
class: "playback-empty"
|
|
33
|
+
};
|
|
30
34
|
const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
31
35
|
__name: "OMeetingPlaybackSubtitles",
|
|
32
36
|
props: {
|
|
@@ -39,6 +43,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
39
43
|
const props = __props;
|
|
40
44
|
const { t } = useI18n();
|
|
41
45
|
const currentIndex = computed(() => props.trackIdx);
|
|
46
|
+
const scrollerDomId = useId();
|
|
47
|
+
const getScrollerContainer = () => document.querySelector(`#${scrollerDomId} > .o-scroller-container`);
|
|
42
48
|
const scrollContainer = ref();
|
|
43
49
|
const wheelVisible = ref(false);
|
|
44
50
|
const handleScroll = () => {
|
|
@@ -88,14 +94,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
88
94
|
};
|
|
89
95
|
onMounted(() => {
|
|
90
96
|
var _a;
|
|
91
|
-
scrollContainer.value =
|
|
97
|
+
scrollContainer.value = getScrollerContainer();
|
|
92
98
|
(_a = scrollContainer.value) == null ? void 0 : _a.addEventListener("wheel", handleScroll);
|
|
93
99
|
});
|
|
94
100
|
watch(
|
|
95
101
|
() => computedCaptions.value,
|
|
96
102
|
() => {
|
|
97
103
|
var _a;
|
|
98
|
-
scrollContainer.value =
|
|
104
|
+
scrollContainer.value = getScrollerContainer();
|
|
99
105
|
(_a = scrollContainer.value) == null ? void 0 : _a.addEventListener("wheel", handleScroll);
|
|
100
106
|
}
|
|
101
107
|
);
|
|
@@ -359,7 +365,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
359
365
|
default: withCtx(() => [
|
|
360
366
|
computedCaptions.value.length ? (openBlock(), createBlock(unref(OScroller), {
|
|
361
367
|
key: 0,
|
|
362
|
-
id:
|
|
368
|
+
id: unref(scrollerDomId),
|
|
363
369
|
class: "captions-scroller",
|
|
364
370
|
"show-type": "hover",
|
|
365
371
|
size: "small",
|
|
@@ -408,8 +414,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
408
414
|
})
|
|
409
415
|
]),
|
|
410
416
|
_: 1
|
|
411
|
-
})) : (openBlock(), createElementBlock("div", _hoisted_11, [
|
|
412
|
-
renderSlot(_ctx.$slots, "empty")
|
|
417
|
+
}, 8, ["id"])) : (openBlock(), createElementBlock("div", _hoisted_11, [
|
|
418
|
+
renderSlot(_ctx.$slots, "empty", {}, () => [
|
|
419
|
+
createVNode(OEmpty)
|
|
420
|
+
])
|
|
413
421
|
]))
|
|
414
422
|
]),
|
|
415
423
|
_: 3
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { defineComponent, ref, watch, onMounted, onUnmounted, openBlock, createElementBlock, createElementVNode, normalizeClass, toDisplayString, createCommentVNode
|
|
1
|
+
import { defineComponent, ref, useId, watch, onMounted, onUnmounted, openBlock, createElementBlock, createElementVNode, normalizeClass, unref, toDisplayString, createCommentVNode } from "vue";
|
|
2
2
|
import videojs from "../../../_virtual/video.js/dist/video.es.js.mjs";
|
|
3
3
|
import '../../../_virtual/video.js/dist/video-js.css';
|
|
4
4
|
import { transformTime } from "../utils.mjs";
|
|
5
5
|
import defaultPoster from "../../../assets/meeting/transparent.png.mjs";
|
|
6
6
|
const _hoisted_1 = { class: "o-meeting-playback-video" };
|
|
7
|
-
const _hoisted_2 =
|
|
7
|
+
const _hoisted_2 = ["id"];
|
|
8
|
+
const _hoisted_3 = {
|
|
8
9
|
key: 0,
|
|
9
10
|
class: "poster-title"
|
|
10
11
|
};
|
|
@@ -23,8 +24,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
23
24
|
setup(__props, { expose: __expose, emit: __emit }) {
|
|
24
25
|
const props = __props;
|
|
25
26
|
const timer = ref();
|
|
26
|
-
const colHeight = ref();
|
|
27
27
|
const playerRef = ref();
|
|
28
|
+
const playerId = useId();
|
|
28
29
|
const emits = __emit;
|
|
29
30
|
const speakerMenuVisible = ref(false);
|
|
30
31
|
const closeSpeakerMenu = () => {
|
|
@@ -98,7 +99,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
98
99
|
const playStatus = ref("init");
|
|
99
100
|
const videoInit = async () => {
|
|
100
101
|
if (!props.src) return;
|
|
101
|
-
const player = videojs(
|
|
102
|
+
const player = videojs(playerId, {
|
|
102
103
|
controls: true,
|
|
103
104
|
autoplay: false,
|
|
104
105
|
preload: "auto",
|
|
@@ -168,9 +169,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
168
169
|
}
|
|
169
170
|
}
|
|
170
171
|
if (props.vtt) {
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
172
|
+
const subtitleToggleName = `SubtitleToggleButton-${playerId}`;
|
|
173
|
+
videojs.registerComponent(subtitleToggleName, CustomSubsCapsButton);
|
|
174
|
+
if (!player.controlBar.children_.some((v) => v.name_ === subtitleToggleName)) {
|
|
175
|
+
player.controlBar.addChild(subtitleToggleName, {}, 8);
|
|
174
176
|
}
|
|
175
177
|
}
|
|
176
178
|
const textTracks = player == null ? void 0 : player.textTracks().tracks_;
|
|
@@ -193,10 +195,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
193
195
|
player.one("loadedmetadata", () => {
|
|
194
196
|
emits("getDuration", player.duration());
|
|
195
197
|
});
|
|
196
|
-
nextTick(() => {
|
|
197
|
-
const container = document.getElementsByClassName("o-meeting-playback-video")[0];
|
|
198
|
-
colHeight.value = container.offsetHeight;
|
|
199
|
-
});
|
|
200
198
|
playerRef.value = player;
|
|
201
199
|
};
|
|
202
200
|
onMounted(() => {
|
|
@@ -229,11 +227,11 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
229
227
|
[playStatus.value]: true
|
|
230
228
|
}])
|
|
231
229
|
}, [
|
|
232
|
-
|
|
230
|
+
createElementVNode("video", {
|
|
233
231
|
class: "video-js",
|
|
234
|
-
id:
|
|
235
|
-
}, null,
|
|
236
|
-
__props.posterTitle ? (openBlock(), createElementBlock("div",
|
|
232
|
+
id: unref(playerId)
|
|
233
|
+
}, null, 8, _hoisted_2),
|
|
234
|
+
__props.posterTitle ? (openBlock(), createElementBlock("div", _hoisted_3, toDisplayString(__props.posterTitle), 1)) : createCommentVNode("", true)
|
|
237
235
|
], 2)
|
|
238
236
|
]);
|
|
239
237
|
};
|