hy-dispatch-ui-v3 0.1.6 → 0.2.1

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 (160) hide show
  1. package/README.md +47 -0
  2. package/dist/tailwind.css +349 -4
  3. package/es/components/appAudioPlayer/appAudioPlayer.vue.mjs +462 -0
  4. package/es/components/appAudioPlayer/index.mjs +6 -0
  5. package/es/components/appAudioPlayer/js/index.mjs +327 -0
  6. package/es/components/appAudioPlayer/style/appAudioPlayer.scss +319 -0
  7. package/es/components/appButton/style/appButton.scss +0 -1
  8. package/es/components/appConfigProvider/appConfigProvider.vue.mjs +22 -1
  9. package/es/components/appCutter/appCutter.vue.mjs +202 -129
  10. package/es/components/appDatePicker/appDatePicker.vue.mjs +1 -1
  11. package/es/components/appForm/appForm.vue.mjs +132 -209
  12. package/es/components/appForm/cpns/appFormItem.vue.mjs +312 -0
  13. package/es/components/appForm/cpns/arrayItem.vue.mjs +305 -0
  14. package/es/components/appForm/cpns/extraItem.vue.mjs +140 -0
  15. package/es/components/appForm/js/index.mjs +46 -24
  16. package/es/components/appForm/js/useAppForm.mjs +30 -6
  17. package/es/components/appForm/style/appForm.scss +53 -0
  18. package/es/components/appIcon/appIcon.vue.mjs +0 -1
  19. package/es/components/appIconBox/style/appIconBox.scss +0 -1
  20. package/es/components/appInput/appInput.vue.mjs +99 -0
  21. package/es/components/appInput/index.mjs +6 -0
  22. package/es/components/appMenu/appMenu.vue.mjs +129 -0
  23. package/es/components/appMenu/index.mjs +6 -0
  24. package/es/components/appMenu/style/appMenu.scss +145 -0
  25. package/es/components/appOrgCascader/appOrgCascader.vue.mjs +14 -10
  26. package/es/components/appSearch/appSearch.vue.mjs +55 -211
  27. package/es/components/appSearch/cpns/appSearchItem.vue.mjs +238 -0
  28. package/es/components/appSearch/js/index.mjs +20 -8
  29. package/es/components/appSearch/js/useAppSearch.mjs +10 -5
  30. package/es/components/appSearch/style/appSearch.scss +10 -0
  31. package/es/components/appTable/appTable.vue.mjs +312 -158
  32. package/es/components/appTable/cpns/columnSelect.vue.mjs +151 -156
  33. package/es/components/appTable/cpns/columnSelectItem.vue2.mjs +104 -110
  34. package/es/components/appTable/cpns/headerItem.vue.mjs +98 -0
  35. package/es/components/appTable/cpns/virtualTable.vue.mjs +560 -0
  36. package/es/components/appTable/js/index.mjs +46 -20
  37. package/es/components/appTable/js/search.mjs +1 -2
  38. package/es/components/appTable/js/useAppTable.mjs +58 -14
  39. package/es/components/appTable/style/appTable.scss +16 -0
  40. package/es/components/appTooltip/appTooltip.vue.mjs +24 -13
  41. package/es/components/appTree/appTree.vue.mjs +304 -0
  42. package/es/components/appTree/index.mjs +6 -0
  43. package/es/components/appTree/js/index.mjs +531 -0
  44. package/es/components/appUserAvatar/appUserAvatar.vue.mjs +9 -8
  45. package/es/components/appUserAvatar/style/appUserAvatar.scss +0 -1
  46. package/es/components/appVideoPlayer/appVideoPlayer.vue.mjs +645 -0
  47. package/es/components/appVideoPlayer/cpns/mediaLoading.vue.mjs +35 -0
  48. package/es/components/appVideoPlayer/index.mjs +6 -0
  49. package/es/components/appVideoPlayer/js/index.mjs +426 -0
  50. package/es/components/appVideoPlayer/style/appVideoPlayer.scss +275 -0
  51. package/es/components/appVideoPlayer/style/mediaLoading.scss +62 -0
  52. package/es/components/index.mjs +5 -0
  53. package/es/hooks/index.mjs +3 -0
  54. package/es/hooks/useApi.mjs +4 -4
  55. package/es/hooks/useAudioPlayerConfig.mjs +12 -0
  56. package/es/hooks/useGlobalConfig.mjs +18 -7
  57. package/es/hooks/useLocale.mjs +3 -11
  58. package/es/hooks/useMixins.mjs +1 -1
  59. package/es/hooks/usePermissionMap.mjs +12 -0
  60. package/es/hooks/useUserAvatarMap.mjs +2 -3
  61. package/es/hooks/useVideoPlayerConfig.mjs +12 -0
  62. package/es/index.mjs +13 -4
  63. package/es/locale/en.mjs +52 -3
  64. package/es/locale/zh_CN.mjs +48 -3
  65. package/es/make-installer.mjs +2 -0
  66. package/es/static/hy-svg-icons.js +462 -0
  67. package/es/static/index.js +2 -0
  68. package/es/static/protocolcheck.js +247 -0
  69. package/es/style/element/element.scss +9 -0
  70. package/es/style/element/index.scss +6 -3
  71. package/es/style/index.scss +11 -0
  72. package/es/style/theme.scss +73 -0
  73. package/es/utils/date.mjs +25 -1
  74. package/es/utils/file.mjs +5 -4
  75. package/es/utils/form.mjs +52 -0
  76. package/es/utils/handler.mjs +22 -2
  77. package/es/utils/index.mjs +5 -4
  78. package/es/utils/is.mjs +23 -2
  79. package/es/version.mjs +1 -1
  80. package/lib/components/appAudioPlayer/appAudioPlayer.vue.js +466 -0
  81. package/lib/components/appAudioPlayer/index.js +11 -0
  82. package/lib/components/appAudioPlayer/js/index.js +329 -0
  83. package/lib/components/appAudioPlayer/style/appAudioPlayer.scss +319 -0
  84. package/lib/components/appButton/style/appButton.scss +0 -1
  85. package/lib/components/appConfigProvider/appConfigProvider.vue.js +22 -1
  86. package/lib/components/appCutter/appCutter.vue.js +201 -128
  87. package/lib/components/appDatePicker/appDatePicker.vue.js +1 -1
  88. package/lib/components/appForm/appForm.vue.js +129 -206
  89. package/lib/components/appForm/cpns/appFormItem.vue.js +316 -0
  90. package/lib/components/appForm/cpns/arrayItem.vue.js +309 -0
  91. package/lib/components/appForm/cpns/extraItem.vue.js +144 -0
  92. package/lib/components/appForm/js/index.js +48 -23
  93. package/lib/components/appForm/js/useAppForm.js +30 -6
  94. package/lib/components/appForm/style/appForm.scss +53 -0
  95. package/lib/components/appIcon/appIcon.vue.js +0 -1
  96. package/lib/components/appIconBox/style/appIconBox.scss +0 -1
  97. package/lib/components/appInput/appInput.vue.js +103 -0
  98. package/lib/components/appInput/index.js +11 -0
  99. package/lib/components/appMenu/appMenu.vue.js +133 -0
  100. package/lib/components/appMenu/index.js +11 -0
  101. package/lib/components/appMenu/style/appMenu.scss +145 -0
  102. package/lib/components/appOrgCascader/appOrgCascader.vue.js +14 -10
  103. package/lib/components/appSearch/appSearch.vue.js +51 -207
  104. package/lib/components/appSearch/cpns/appSearchItem.vue.js +242 -0
  105. package/lib/components/appSearch/js/index.js +20 -7
  106. package/lib/components/appSearch/js/useAppSearch.js +10 -5
  107. package/lib/components/appSearch/style/appSearch.scss +10 -0
  108. package/lib/components/appTable/appTable.vue.js +319 -165
  109. package/lib/components/appTable/cpns/columnSelect.vue.js +151 -156
  110. package/lib/components/appTable/cpns/columnSelectItem.vue2.js +105 -111
  111. package/lib/components/appTable/cpns/headerItem.vue.js +102 -0
  112. package/lib/components/appTable/cpns/virtualTable.vue.js +564 -0
  113. package/lib/components/appTable/js/index.js +47 -19
  114. package/lib/components/appTable/js/search.js +1 -2
  115. package/lib/components/appTable/js/useAppTable.js +57 -13
  116. package/lib/components/appTable/style/appTable.scss +16 -0
  117. package/lib/components/appTooltip/appTooltip.vue.js +23 -12
  118. package/lib/components/appTree/appTree.vue.js +308 -0
  119. package/lib/components/appTree/index.js +11 -0
  120. package/lib/components/appTree/js/index.js +533 -0
  121. package/lib/components/appUserAvatar/appUserAvatar.vue.js +9 -8
  122. package/lib/components/appUserAvatar/style/appUserAvatar.scss +0 -1
  123. package/lib/components/appVideoPlayer/appVideoPlayer.vue.js +649 -0
  124. package/lib/components/appVideoPlayer/cpns/mediaLoading.vue.js +39 -0
  125. package/lib/components/appVideoPlayer/index.js +11 -0
  126. package/lib/components/appVideoPlayer/js/index.js +429 -0
  127. package/lib/components/appVideoPlayer/style/appVideoPlayer.scss +275 -0
  128. package/lib/components/appVideoPlayer/style/mediaLoading.scss +62 -0
  129. package/lib/components/index.js +42 -32
  130. package/lib/hooks/index.js +9 -0
  131. package/lib/hooks/useApi.js +4 -4
  132. package/lib/hooks/useAudioPlayerConfig.js +15 -0
  133. package/lib/hooks/useGlobalConfig.js +18 -7
  134. package/lib/hooks/useLocale.js +3 -11
  135. package/lib/hooks/useMixins.js +1 -1
  136. package/lib/hooks/usePermissionMap.js +15 -0
  137. package/lib/hooks/useUserAvatarMap.js +1 -2
  138. package/lib/hooks/useVideoPlayerConfig.js +15 -0
  139. package/lib/index.js +59 -33
  140. package/lib/locale/en.js +52 -3
  141. package/lib/locale/zh_CN.js +48 -3
  142. package/lib/make-installer.js +2 -0
  143. package/lib/static/hy-svg-icons.js +459 -8
  144. package/lib/static/index.js +5 -0
  145. package/lib/static/protocolcheck.js +249 -0
  146. package/lib/style/element/element.scss +9 -0
  147. package/lib/style/element/index.scss +6 -3
  148. package/lib/style/index.scss +11 -0
  149. package/lib/style/theme.scss +73 -0
  150. package/lib/utils/date.js +25 -0
  151. package/lib/utils/file.js +4 -4
  152. package/lib/utils/form.js +57 -0
  153. package/lib/utils/handler.js +22 -1
  154. package/lib/utils/index.js +8 -1
  155. package/lib/utils/is.js +23 -1
  156. package/lib/version.js +1 -1
  157. package/package.json +25 -9
  158. package/es/config/index.mjs +0 -1
  159. package/es/static/hy-svg-icons.mjs +0 -11
  160. package/lib/config/index.js +0 -2
@@ -0,0 +1,649 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var vue = require('vue');
6
+ var elementPlus = require('element-plus');
7
+ var mediaLoading = require('./cpns/mediaLoading.vue.js');
8
+ var index = require('./js/index.js');
9
+ var useLocale = require('../../hooks/useLocale.js');
10
+ var useMixins = require('../../hooks/useMixins.js');
11
+ var index$1 = require('../appIcon/index.js');
12
+ var index$2 = require('../appButton/index.js');
13
+ var index$3 = require('../appTooltip/index.js');
14
+ var useVideoPlayerConfig = require('../../hooks/useVideoPlayerConfig.js');
15
+ var is = require('../../utils/is.js');
16
+
17
+ import "./style/appVideoPlayer.scss";
18
+
19
+ const __default__ = vue.defineComponent({
20
+ name: "AppVideoPlayer"
21
+ });
22
+ const _sfc_main = /* @__PURE__ */ Object.assign(__default__, {
23
+ props: {
24
+ type: {
25
+ type: String,
26
+ default: () => {
27
+ const { videoPlayerConfig } = useVideoPlayerConfig.useVideoPlayerConfig();
28
+ const { type } = videoPlayerConfig.value;
29
+ if (["default", "analyse"].includes(type)) return type;
30
+ return "default";
31
+ }
32
+ },
33
+ // 播放列表
34
+ playList: {
35
+ type: Array,
36
+ default: () => []
37
+ },
38
+ // 播放速度
39
+ speed: {
40
+ type: Number,
41
+ default: () => {
42
+ const { videoPlayerConfig } = useVideoPlayerConfig.useVideoPlayerConfig();
43
+ if (is.isNumber(videoPlayerConfig.value.speed)) {
44
+ return videoPlayerConfig.value.speed;
45
+ }
46
+ return 1;
47
+ }
48
+ },
49
+ // 播放规则
50
+ playRules: {
51
+ type: Number,
52
+ default: () => {
53
+ const { videoPlayerConfig } = useVideoPlayerConfig.useVideoPlayerConfig();
54
+ if ([1, 2, 3].includes) {
55
+ return videoPlayerConfig.value.playRules;
56
+ }
57
+ return 3;
58
+ }
59
+ },
60
+ // 是否显示播放规则
61
+ showPlayRules: {
62
+ type: Boolean,
63
+ default: () => {
64
+ const { videoPlayerConfig } = useVideoPlayerConfig.useVideoPlayerConfig();
65
+ const { showPlayRules } = videoPlayerConfig.value;
66
+ return is.isBoolean(showPlayRules) ? showPlayRules : true;
67
+ }
68
+ },
69
+ // 是否显示下载文件
70
+ showDownloadFiles: {
71
+ type: Boolean,
72
+ default: () => {
73
+ const { videoPlayerConfig } = useVideoPlayerConfig.useVideoPlayerConfig();
74
+ const { showDownloadFiles } = videoPlayerConfig.value;
75
+ return is.isBoolean(showDownloadFiles) ? showDownloadFiles : true;
76
+ }
77
+ },
78
+ // 是否显示展开控件
79
+ showShrink: {
80
+ type: Boolean,
81
+ default: () => {
82
+ const { videoPlayerConfig } = useVideoPlayerConfig.useVideoPlayerConfig();
83
+ const { showShrink } = videoPlayerConfig.value;
84
+ return is.isBoolean(showShrink) ? showShrink : false;
85
+ }
86
+ },
87
+ // 是否显示全屏控件
88
+ showFullScreen: {
89
+ type: Boolean,
90
+ default: () => {
91
+ const { videoPlayerConfig } = useVideoPlayerConfig.useVideoPlayerConfig();
92
+ const { showFullScreen } = videoPlayerConfig.value;
93
+ return is.isBoolean(showFullScreen) ? showFullScreen : true;
94
+ }
95
+ },
96
+ // VLC协议
97
+ vlcProtocol: {
98
+ type: String,
99
+ default: () => {
100
+ const { videoPlayerConfig } = useVideoPlayerConfig.useVideoPlayerConfig();
101
+ return videoPlayerConfig.value.vlcProtocol || "hyvlc";
102
+ }
103
+ },
104
+ // VLC下载地址
105
+ vlcAddress: {
106
+ type: String,
107
+ default: () => {
108
+ const { videoPlayerConfig } = useVideoPlayerConfig.useVideoPlayerConfig();
109
+ return videoPlayerConfig.value.vlcAddress;
110
+ }
111
+ },
112
+ // 下载处理
113
+ downloadFn: {
114
+ type: Function
115
+ }
116
+ },
117
+ emits: [
118
+ "canplay",
119
+ "timeupdate",
120
+ "play-start",
121
+ "play-ended",
122
+ "play-previous",
123
+ "play-next"
124
+ ],
125
+ setup(__props, { expose: __expose, emit: __emit }) {
126
+ const props = __props;
127
+ const emits = __emit;
128
+ const { t } = useLocale.useLocale();
129
+ const videoWrapperRef = vue.useTemplateRef("videoWrapperRef");
130
+ const videoRef = vue.useTemplateRef("videoRef");
131
+ const {
132
+ // useVideoPlayer
133
+ speed,
134
+ playRules,
135
+ loading,
136
+ videoItem,
137
+ videoUrl,
138
+ currentDuration,
139
+ totalDuration,
140
+ progress,
141
+ isDrop,
142
+ isFullScreen,
143
+ volumeValue,
144
+ hasVLC,
145
+ isCanNotPlayType,
146
+ videoState,
147
+ speedLabel,
148
+ isCanPlay,
149
+ isAnalyseType,
150
+ // 配置
151
+ speedList,
152
+ playRulesList,
153
+ // 函数
154
+ playVideo,
155
+ pauseVideo,
156
+ playPrevious,
157
+ playNext,
158
+ playRulesHandler,
159
+ speedHandler,
160
+ changeVolume,
161
+ getNowWh,
162
+ setVideoCurrentTime,
163
+ getPercent,
164
+ initFullScreenEvent,
165
+ destroyFullScreenEvent,
166
+ onFullScreenHandler,
167
+ openVLC,
168
+ downloadVLC,
169
+ onDownloadHandler,
170
+ // useVideoResize
171
+ isExpand,
172
+ videoHeight,
173
+ onSwitchShrink,
174
+ listenerVideoWrapper,
175
+ unlistenerVideoWrapper
176
+ } = useMixins.useMixins(
177
+ {
178
+ props,
179
+ emits,
180
+ videoWrapperRef,
181
+ videoRef
182
+ },
183
+ [index.useVideoPlayer, index.useVideoResize]
184
+ );
185
+ vue.onMounted(() => {
186
+ initFullScreenEvent();
187
+ listenerVideoWrapper();
188
+ });
189
+ vue.onUnmounted(() => {
190
+ destroyFullScreenEvent();
191
+ unlistenerVideoWrapper();
192
+ });
193
+ __expose({
194
+ playVideo,
195
+ pauseVideo,
196
+ setVideoCurrentTime
197
+ });
198
+ return (_ctx, _cache) => {
199
+ return vue.openBlock(), vue.createElementBlock(
200
+ "div",
201
+ {
202
+ ref_key: "videoWrapperRef",
203
+ ref: videoWrapperRef,
204
+ class: vue.normalizeClass(["video-player-content", {
205
+ "video-player-content-pick-up": !vue.unref(isExpand) && !vue.unref(isFullScreen),
206
+ "full-video-player-content": vue.unref(isFullScreen)
207
+ }])
208
+ },
209
+ [
210
+ vue.createCommentVNode(" loading "),
211
+ vue.unref(loading) ? (vue.openBlock(), vue.createElementBlock("div", {
212
+ key: 0,
213
+ class: "w-full h-full flex flex-col justify-center items-center absolute left-0 top-0"
214
+ }, [
215
+ vue.createVNode(mediaLoading.default),
216
+ vue.createElementVNode(
217
+ "span",
218
+ { class: "text-xs text-theme mt-4" },
219
+ "..." + vue.toDisplayString(vue.unref(t)("videoPlayer.videoResourcesAreLoading")) + "...",
220
+ 1
221
+ /* TEXT */
222
+ )
223
+ ])) : vue.createCommentVNode("v-if", true),
224
+ vue.createCommentVNode(" \u65E0\u6CD5\u64AD\u653E "),
225
+ vue.unref(videoState) === "CAN_NOT_PLAY" ? (vue.openBlock(), vue.createElementBlock("div", {
226
+ key: 1,
227
+ class: "w-full h-full flex flex-col justify-center items-center px-[34px]"
228
+ }, [
229
+ vue.createCommentVNode(" \u91C7\u96C6\u7AD9\u6587\u4EF6 "),
230
+ vue.unref(videoItem) && vue.unref(videoItem).csFile === 1 && vue.unref(videoItem).onlineState !== 1 ? (vue.openBlock(), vue.createElementBlock(
231
+ vue.Fragment,
232
+ { key: 0 },
233
+ [
234
+ vue.createElementVNode("div", { class: "w-[54px] h-[54px] rounded-full border-[2px] border-dangerv2 flex justify-center items-center shadow-[0px_0px_10px_2px_var(--dangerv2)]" }, [
235
+ vue.createElementVNode("div", { class: "w-[42px] h-[42px] rounded-full border-[1px] border-dashed border-dangerv2 flex justify-center items-center" }, [
236
+ vue.createVNode(vue.unref(index$1.AppIcon), {
237
+ "svg-name": "player-icon_brokLink",
238
+ class: "!w-[24px] !h-[24px] text-dangerv2"
239
+ })
240
+ ])
241
+ ]),
242
+ vue.createElementVNode(
243
+ "span",
244
+ { class: "text-xs text-auxiliary mt-4" },
245
+ vue.toDisplayString(vue.unref(t)("videoPlayer.fileLoadingFailed")),
246
+ 1
247
+ /* TEXT */
248
+ ),
249
+ vue.createElementVNode(
250
+ "span",
251
+ { class: "text-xs text-auxiliary" },
252
+ vue.toDisplayString(_ctx.$t(
253
+ "pleaseCheckWhetherTheCollectionStationIsOnlineAndWhetherTheFileExists"
254
+ )),
255
+ 1
256
+ /* TEXT */
257
+ )
258
+ ],
259
+ 64
260
+ /* STABLE_FRAGMENT */
261
+ )) : (vue.openBlock(), vue.createElementBlock(
262
+ vue.Fragment,
263
+ { key: 1 },
264
+ [
265
+ vue.createCommentVNode(" \u666E\u901A\u6587\u4EF6 "),
266
+ vue.createElementVNode("div", { class: "flex items-center justify-center text-auxiliary" }, [
267
+ vue.createVNode(vue.unref(index$1.AppIcon), {
268
+ "svg-name": "player-media-center-right-ripple",
269
+ className: "!w-[12px] !h-[12px]"
270
+ }),
271
+ vue.createVNode(vue.unref(index$1.AppIcon), {
272
+ "svg-name": "player-media-center-video",
273
+ className: "!w-[40px] !h-[40px] mx-1"
274
+ }),
275
+ vue.createVNode(vue.unref(index$1.AppIcon), {
276
+ "svg-name": "player-media-center-left-ripple",
277
+ className: "!w-[12px] !h-[12px]"
278
+ })
279
+ ]),
280
+ vue.createElementVNode(
281
+ "div",
282
+ { class: "text-theme text-center mt-3 mb-[14px]" },
283
+ vue.toDisplayString(vue.unref(isCanNotPlayType) ? vue.unref(t)("videoPlayer.vlcPlayerTip") : vue.unref(t)("theVideoCannotBePlayed")),
284
+ 1
285
+ /* TEXT */
286
+ ),
287
+ vue.unref(isCanNotPlayType) ? (vue.openBlock(), vue.createElementBlock("div", {
288
+ key: 0,
289
+ class: "flex justify-center"
290
+ }, [
291
+ vue.unref(hasVLC) ? (vue.openBlock(), vue.createBlock(vue.unref(index$2.AppButton), {
292
+ key: 0,
293
+ onClick: vue.unref(openVLC)
294
+ }, {
295
+ default: vue.withCtx(() => [
296
+ vue.createTextVNode(
297
+ vue.toDisplayString(vue.unref(t)("videoPlayer.clickPlay")),
298
+ 1
299
+ /* TEXT */
300
+ )
301
+ ]),
302
+ _: 1
303
+ /* STABLE */
304
+ }, 8, ["onClick"])) : (vue.openBlock(), vue.createBlock(vue.unref(index$2.AppButton), {
305
+ key: 1,
306
+ onClick: vue.unref(downloadVLC)
307
+ }, {
308
+ default: vue.withCtx(() => [
309
+ vue.createTextVNode(
310
+ vue.toDisplayString(vue.unref(t)("videoPlayer.toDownloadVlc")),
311
+ 1
312
+ /* TEXT */
313
+ )
314
+ ]),
315
+ _: 1
316
+ /* STABLE */
317
+ }, 8, ["onClick"]))
318
+ ])) : vue.createCommentVNode("v-if", true)
319
+ ],
320
+ 64
321
+ /* STABLE_FRAGMENT */
322
+ )),
323
+ vue.createCommentVNode(" \u5207\u6362\u89C6\u9891\u63A7\u4EF6 "),
324
+ __props.playList?.length > 1 ? (vue.openBlock(), vue.createElementBlock(
325
+ vue.Fragment,
326
+ { key: 2 },
327
+ [
328
+ vue.createElementVNode("div", { class: "vlc-between-control left-0" }, [
329
+ vue.createVNode(vue.unref(index$3.AppTooltip), {
330
+ isAlways: "",
331
+ content: "\u67E5\u770B\u4E0A\u4E00\u6761\u89C6\u9891"
332
+ }, {
333
+ default: vue.withCtx(() => [
334
+ vue.createElementVNode("div", {
335
+ class: "w-[30px] h-[30px] bg-[#3D6286] flex items-center justify-center cursor-pointer",
336
+ onClick: vue.unref(playPrevious)
337
+ }, [
338
+ vue.createVNode(vue.unref(index$1.AppIcon), {
339
+ "svg-name": "player--previous",
340
+ className: "!w-3 !h-3 text-main"
341
+ })
342
+ ], 8, ["onClick"])
343
+ ]),
344
+ _: 1
345
+ /* STABLE */
346
+ })
347
+ ]),
348
+ vue.createElementVNode("div", { class: "vlc-between-control right-0" }, [
349
+ vue.createVNode(vue.unref(index$3.AppTooltip), {
350
+ isAlways: "",
351
+ content: "\u67E5\u770B\u4E0B\u4E00\u6761\u89C6\u9891"
352
+ }, {
353
+ default: vue.withCtx(() => [
354
+ vue.createElementVNode("div", {
355
+ class: "w-[30px] h-[30px] bg-[#3D6286] flex items-center justify-center cursor-pointer",
356
+ onClick: vue.unref(playNext)
357
+ }, [
358
+ vue.createVNode(vue.unref(index$1.AppIcon), {
359
+ "svg-name": "player--next",
360
+ className: "!w-3 !h-3 text-main"
361
+ })
362
+ ], 8, ["onClick"])
363
+ ]),
364
+ _: 1
365
+ /* STABLE */
366
+ })
367
+ ])
368
+ ],
369
+ 64
370
+ /* STABLE_FRAGMENT */
371
+ )) : vue.createCommentVNode("v-if", true)
372
+ ])) : (vue.openBlock(), vue.createElementBlock(
373
+ vue.Fragment,
374
+ { key: 2 },
375
+ [
376
+ vue.createCommentVNode(" \u53EF\u4EE5\u64AD\u653E "),
377
+ vue.createElementVNode(
378
+ "video",
379
+ {
380
+ ref_key: "videoRef",
381
+ ref: videoRef,
382
+ style: vue.normalizeStyle({ height: vue.unref(videoHeight) })
383
+ },
384
+ [
385
+ vue.createElementVNode("source", { type: "video/mp4" }),
386
+ vue.createElementVNode("source", { type: "video/webm" }),
387
+ vue.createElementVNode("source", { type: "video/ogg" }),
388
+ vue.createTextVNode(
389
+ " " + vue.toDisplayString(vue.unref(t)("videoPlayer.yourBrowserDoesNotSupportHTMLVideoPlayback")),
390
+ 1
391
+ /* TEXT */
392
+ )
393
+ ],
394
+ 4
395
+ /* STYLE */
396
+ ),
397
+ vue.createElementVNode("div", { class: "operator-box" }, [
398
+ vue.createElementVNode("div", { class: "progress-box" }, [
399
+ vue.withDirectives(vue.createElementVNode("input", {
400
+ "onUpdate:modelValue": ($event) => vue.isRef(progress) ? progress.value = $event : null,
401
+ type: "range",
402
+ max: "100",
403
+ style: vue.normalizeStyle({
404
+ background: `linear-gradient(to right, rgba(var(--hy-theme)) ${vue.unref(getPercent)(
405
+ vue.unref(progress),
406
+ 100
407
+ )}%, rgba(var(--hy-theme), 0.5) ${vue.unref(getPercent)(vue.unref(progress), 100)}% `
408
+ }),
409
+ onMousedown: ($event) => isDrop.value = true,
410
+ onMouseup: ($event) => vue.unref(getNowWh)($event)
411
+ }, null, 44, ["onUpdate:modelValue", "onMousedown", "onMouseup"]), [
412
+ [vue.vModelText, vue.unref(progress)]
413
+ ])
414
+ ]),
415
+ vue.createElementVNode("div", { class: "left-operator" }, [
416
+ vue.createElementVNode(
417
+ "span",
418
+ { class: "text-main" },
419
+ vue.toDisplayString(vue.unref(currentDuration)),
420
+ 1
421
+ /* TEXT */
422
+ ),
423
+ vue.createTextVNode(" / "),
424
+ vue.createElementVNode(
425
+ "span",
426
+ null,
427
+ vue.toDisplayString(vue.unref(totalDuration)),
428
+ 1
429
+ /* TEXT */
430
+ )
431
+ ]),
432
+ vue.unref(isCanPlay) ? (vue.openBlock(), vue.createElementBlock(
433
+ "div",
434
+ {
435
+ key: 0,
436
+ class: vue.normalizeClass(["center-operator", { "center-analyse": vue.unref(isAnalyseType) }])
437
+ },
438
+ [
439
+ vue.createElementVNode("div", { onClick: vue.unref(playPrevious) }, [
440
+ vue.createVNode(vue.unref(index$1.AppIcon), {
441
+ "svg-name": vue.unref(isAnalyseType) ? "player--interpretation-last" : "player-audio_previous-btn",
442
+ "class-name": "last-icon"
443
+ }, null, 8, ["svg-name"])
444
+ ], 8, ["onClick"]),
445
+ vue.unref(videoState) !== "PLAYING" ? (vue.openBlock(), vue.createElementBlock("div", {
446
+ key: 0,
447
+ onClick: ($event) => vue.unref(playVideo)(vue.unref(videoUrl))
448
+ }, [
449
+ vue.createVNode(vue.unref(index$1.AppIcon), { "svg-name": "player-audio_play-btn" })
450
+ ], 8, ["onClick"])) : vue.createCommentVNode("v-if", true),
451
+ vue.unref(videoState) === "PLAYING" ? (vue.openBlock(), vue.createElementBlock("div", {
452
+ key: 1,
453
+ onClick: vue.unref(pauseVideo)
454
+ }, [
455
+ vue.createVNode(vue.unref(index$1.AppIcon), { "svg-name": "player-audio_pause-btn" })
456
+ ], 8, ["onClick"])) : vue.createCommentVNode("v-if", true),
457
+ vue.createElementVNode("div", { onClick: vue.unref(playNext) }, [
458
+ vue.createVNode(vue.unref(index$1.AppIcon), {
459
+ "svg-name": vue.unref(isAnalyseType) ? "player--interpretation-next" : "player-audio_next-btn",
460
+ "class-name": "next-icon"
461
+ }, null, 8, ["svg-name"])
462
+ ], 8, ["onClick"])
463
+ ],
464
+ 2
465
+ /* CLASS */
466
+ )) : vue.createCommentVNode("v-if", true),
467
+ vue.createElementVNode("div", { class: "right-operator" }, [
468
+ vue.createCommentVNode(" \u901F\u5EA6 "),
469
+ vue.createVNode(vue.unref(elementPlus.ElPopover), {
470
+ placement: "top",
471
+ trigger: "click",
472
+ appendToBody: false,
473
+ "popper-class": "popover-speed"
474
+ }, {
475
+ reference: vue.withCtx(() => [
476
+ vue.createElementVNode(
477
+ "div",
478
+ { class: "speed-box" },
479
+ vue.toDisplayString(vue.unref(speedLabel)),
480
+ 1
481
+ /* TEXT */
482
+ )
483
+ ]),
484
+ default: vue.withCtx(() => [
485
+ vue.createElementVNode("div", { class: "flex items-center justify-center py-[10px]" }, [
486
+ vue.createElementVNode("ul", { class: "speed-list" }, [
487
+ (vue.openBlock(true), vue.createElementBlock(
488
+ vue.Fragment,
489
+ null,
490
+ vue.renderList(vue.unref(speedList), (item, index) => {
491
+ return vue.openBlock(), vue.createElementBlock("li", {
492
+ key: index,
493
+ class: vue.normalizeClass(["clickBox", { selectBox: item.value === vue.unref(speed) }]),
494
+ onClick: ($event) => vue.unref(speedHandler)(item.value)
495
+ }, vue.toDisplayString(item.label), 11, ["onClick"]);
496
+ }),
497
+ 128
498
+ /* KEYED_FRAGMENT */
499
+ ))
500
+ ])
501
+ ])
502
+ ]),
503
+ _: 1
504
+ /* STABLE */
505
+ }),
506
+ vue.createCommentVNode(" \u58F0\u97F3 "),
507
+ vue.createVNode(vue.unref(elementPlus.ElPopover), {
508
+ placement: "top",
509
+ appendToBody: false,
510
+ trigger: "click",
511
+ "popper-class": "popover-volume-slider"
512
+ }, {
513
+ reference: vue.withCtx(() => [
514
+ vue.createElementVNode("div", { class: "flex items-center justify-center" }, [
515
+ vue.createVNode(vue.unref(index$3.AppTooltip), {
516
+ isAlways: "",
517
+ content: vue.unref(t)("videoPlayer.adjustPlaybackVolume")
518
+ }, {
519
+ default: vue.withCtx(() => [
520
+ vue.createVNode(vue.unref(index$1.AppIcon), {
521
+ "svg-name": "player-audio_volumn",
522
+ "class-name": "volume-icon"
523
+ })
524
+ ]),
525
+ _: 1
526
+ /* STABLE */
527
+ }, 8, ["content"])
528
+ ])
529
+ ]),
530
+ default: vue.withCtx(() => [
531
+ vue.createElementVNode("div", { class: "flex items-center justify-center" }, [
532
+ vue.createVNode(vue.unref(elementPlus.ElSlider), {
533
+ modelValue: vue.unref(volumeValue),
534
+ "onUpdate:modelValue": ($event) => vue.isRef(volumeValue) ? volumeValue.value = $event : null,
535
+ vertical: "",
536
+ height: "105px",
537
+ onInput: ($event) => vue.unref(changeVolume)($event)
538
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "onInput"])
539
+ ])
540
+ ]),
541
+ _: 1
542
+ /* STABLE */
543
+ }),
544
+ vue.createCommentVNode(" \u653E\u5927 "),
545
+ __props.showFullScreen ? (vue.openBlock(), vue.createBlock(vue.unref(index$3.AppTooltip), {
546
+ key: 0,
547
+ isAlways: "",
548
+ content: vue.unref(t)("videoPlayer.fullScreenSwitch")
549
+ }, {
550
+ default: vue.withCtx(() => [
551
+ vue.createVNode(vue.unref(index$1.AppIcon), {
552
+ "svg-name": vue.unref(isFullScreen) ? "player-audio_reduce" : "player-audio_enlarge",
553
+ onClick: vue.unref(onFullScreenHandler)
554
+ }, null, 8, ["svg-name", "onClick"])
555
+ ]),
556
+ _: 1
557
+ /* STABLE */
558
+ }, 8, ["content"])) : vue.createCommentVNode("v-if", true),
559
+ vue.createCommentVNode(" \u6536\u8D77/\u5C55\u5F00 "),
560
+ !vue.unref(isFullScreen) && __props.showShrink ? (vue.openBlock(), vue.createBlock(vue.unref(index$3.AppTooltip), {
561
+ key: 1,
562
+ isAlways: "",
563
+ content: vue.unref(isExpand) ? "\u6536\u8D77" : "\u5C55\u5F00"
564
+ }, {
565
+ default: vue.withCtx(() => [
566
+ vue.createVNode(vue.unref(index$1.AppIcon), {
567
+ "svg-name": vue.unref(isExpand) ? "player--interpretation-foldup" : "player--interpretation-expand",
568
+ onClick: vue.unref(onSwitchShrink)
569
+ }, null, 8, ["svg-name", "onClick"])
570
+ ]),
571
+ _: 1
572
+ /* STABLE */
573
+ }, 8, ["content"])) : vue.createCommentVNode("v-if", true)
574
+ ])
575
+ ])
576
+ ],
577
+ 64
578
+ /* STABLE_FRAGMENT */
579
+ )),
580
+ vue.createCommentVNode(" \u89C6\u9891\u989D\u5916\u529F\u80FD "),
581
+ (__props.showDownloadFiles || __props.showPlayRules) && vue.unref(isExpand) ? (vue.openBlock(), vue.createElementBlock(
582
+ "div",
583
+ {
584
+ key: 3,
585
+ class: vue.normalizeClass(["float-operator-item", {
586
+ "!right-[43px]": vue.unref(videoState) === "CAN_NOT_PLAY" && __props.playList?.length > 1
587
+ }])
588
+ },
589
+ [
590
+ vue.createCommentVNode(" \u4E0B\u8F7D "),
591
+ __props.showDownloadFiles ? (vue.openBlock(), vue.createBlock(vue.unref(index$3.AppTooltip), {
592
+ key: 0,
593
+ isAlways: "",
594
+ content: vue.unref(t)("videoPlayer.downloadFile")
595
+ }, {
596
+ default: vue.withCtx(() => [
597
+ vue.createVNode(vue.unref(index$1.AppIcon), {
598
+ "svg-name": "player-audio_down-btn",
599
+ onClick: vue.unref(onDownloadHandler)
600
+ }, null, 8, ["onClick"])
601
+ ]),
602
+ _: 1
603
+ /* STABLE */
604
+ }, 8, ["content"])) : vue.createCommentVNode("v-if", true),
605
+ vue.createCommentVNode(" \u64AD\u653E\u89C4\u5219 "),
606
+ __props.showPlayRules && vue.unref(videoState) !== "CAN_NOT_PLAY" ? (vue.openBlock(true), vue.createElementBlock(
607
+ vue.Fragment,
608
+ { key: 1 },
609
+ vue.renderList(vue.unref(playRulesList), (item, index) => {
610
+ return vue.openBlock(), vue.createElementBlock(
611
+ vue.Fragment,
612
+ { key: index },
613
+ [
614
+ vue.unref(playRules) === item.value ? (vue.openBlock(), vue.createBlock(vue.unref(index$3.AppTooltip), {
615
+ key: 0,
616
+ isAlways: "",
617
+ content: item.label
618
+ }, {
619
+ default: vue.withCtx(() => [
620
+ vue.createVNode(vue.unref(index$1.AppIcon), {
621
+ "svg-name": item.svgName,
622
+ onClick: ($event) => vue.unref(playRulesHandler)(item.value)
623
+ }, null, 8, ["svg-name", "onClick"])
624
+ ]),
625
+ _: 2
626
+ /* DYNAMIC */
627
+ }, 1032, ["content"])) : vue.createCommentVNode("v-if", true)
628
+ ],
629
+ 64
630
+ /* STABLE_FRAGMENT */
631
+ );
632
+ }),
633
+ 128
634
+ /* KEYED_FRAGMENT */
635
+ )) : vue.createCommentVNode("v-if", true),
636
+ vue.renderSlot(_ctx.$slots, "pight-control-ranel")
637
+ ],
638
+ 2
639
+ /* CLASS */
640
+ )) : vue.createCommentVNode("v-if", true)
641
+ ],
642
+ 2
643
+ /* CLASS */
644
+ );
645
+ };
646
+ }
647
+ });
648
+
649
+ exports.default = _sfc_main;
@@ -0,0 +1,39 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var vue = require('vue');
6
+
7
+ import "../style/mediaLoading.scss";
8
+
9
+ const _sfc_main = {
10
+ __name: "mediaLoading",
11
+ props: {
12
+ width: {
13
+ type: Number,
14
+ default: 60
15
+ },
16
+ height: {
17
+ type: Number,
18
+ default: 60
19
+ }
20
+ },
21
+ setup(__props) {
22
+ return (_ctx, _cache) => {
23
+ return vue.openBlock(), vue.createElementBlock(
24
+ "div",
25
+ {
26
+ class: "tech-loader",
27
+ style: vue.normalizeStyle({ width: __props.width + "px", height: __props.height + "px" })
28
+ },
29
+ [
30
+ vue.createElementVNode("div", { class: "tech-center-dot" })
31
+ ],
32
+ 4
33
+ /* STYLE */
34
+ );
35
+ };
36
+ }
37
+ };
38
+
39
+ exports.default = _sfc_main;