@yimou6/common-ui 1.11.11 → 1.11.13

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.
@@ -3344,107 +3344,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
3344
3344
  areaName: string;
3345
3345
  platformTypeName: string;
3346
3346
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
3347
- readonly hls: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
3348
- url: {
3349
- type: StringConstructor;
3350
- default: string;
3351
- };
3352
- accessToken: {
3353
- type: StringConstructor;
3354
- default: string;
3355
- };
3356
- areaName: {
3357
- type: StringConstructor;
3358
- default: string;
3359
- };
3360
- deviceSerial: {
3361
- type: StringConstructor;
3362
- default: string;
3363
- };
3364
- platformTypeName: {
3365
- type: StringConstructor;
3366
- default: string;
3367
- };
3368
- debug: {
3369
- type: BooleanConstructor;
3370
- default: boolean;
3371
- };
3372
- }>, {
3373
- props: import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
3374
- url: {
3375
- type: StringConstructor;
3376
- default: string;
3377
- };
3378
- accessToken: {
3379
- type: StringConstructor;
3380
- default: string;
3381
- };
3382
- areaName: {
3383
- type: StringConstructor;
3384
- default: string;
3385
- };
3386
- deviceSerial: {
3387
- type: StringConstructor;
3388
- default: string;
3389
- };
3390
- platformTypeName: {
3391
- type: StringConstructor;
3392
- default: string;
3393
- };
3394
- debug: {
3395
- type: BooleanConstructor;
3396
- default: boolean;
3397
- };
3398
- }>> & Readonly<{
3399
- onPlay?: ((...args: any[]) => any) | undefined;
3400
- onPause?: ((...args: any[]) => any) | undefined;
3401
- onError?: ((...args: any[]) => any) | undefined;
3402
- onVideoInfo?: ((...args: any[]) => any) | undefined;
3403
- onTimeout?: ((...args: any[]) => any) | undefined;
3404
- onMute?: ((...args: any[]) => any) | undefined;
3405
- }> & {}>;
3406
- emits: (event: "error" | "play" | "pause" | "videoInfo" | "timeout" | "mute", ...args: any[]) => void;
3407
- setCamera: () => void;
3408
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("error" | "play" | "pause" | "videoInfo" | "timeout" | "mute")[], "error" | "play" | "pause" | "videoInfo" | "timeout" | "mute", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
3409
- url: {
3410
- type: StringConstructor;
3411
- default: string;
3412
- };
3413
- accessToken: {
3414
- type: StringConstructor;
3415
- default: string;
3416
- };
3417
- areaName: {
3418
- type: StringConstructor;
3419
- default: string;
3420
- };
3421
- deviceSerial: {
3422
- type: StringConstructor;
3423
- default: string;
3424
- };
3425
- platformTypeName: {
3426
- type: StringConstructor;
3427
- default: string;
3428
- };
3429
- debug: {
3430
- type: BooleanConstructor;
3431
- default: boolean;
3432
- };
3433
- }>> & Readonly<{
3434
- onPlay?: ((...args: any[]) => any) | undefined;
3435
- onPause?: ((...args: any[]) => any) | undefined;
3436
- onError?: ((...args: any[]) => any) | undefined;
3437
- onVideoInfo?: ((...args: any[]) => any) | undefined;
3438
- onTimeout?: ((...args: any[]) => any) | undefined;
3439
- onMute?: ((...args: any[]) => any) | undefined;
3440
- }>, {
3441
- url: string;
3442
- accessToken: string;
3443
- debug: boolean;
3444
- deviceSerial: string;
3445
- areaName: string;
3446
- platformTypeName: string;
3447
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
3448
3347
  };
3449
3348
  playerComponent: import("vue").ComputedRef<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
3450
3349
  url: {
@@ -6885,106 +6784,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
6885
6784
  deviceSerial: string;
6886
6785
  areaName: string;
6887
6786
  platformTypeName: string;
6888
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any> | import("vue").DefineComponent<import("vue").ExtractPropTypes<{
6889
- url: {
6890
- type: StringConstructor;
6891
- default: string;
6892
- };
6893
- accessToken: {
6894
- type: StringConstructor;
6895
- default: string;
6896
- };
6897
- areaName: {
6898
- type: StringConstructor;
6899
- default: string;
6900
- };
6901
- deviceSerial: {
6902
- type: StringConstructor;
6903
- default: string;
6904
- };
6905
- platformTypeName: {
6906
- type: StringConstructor;
6907
- default: string;
6908
- };
6909
- debug: {
6910
- type: BooleanConstructor;
6911
- default: boolean;
6912
- };
6913
- }>, {
6914
- props: import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
6915
- url: {
6916
- type: StringConstructor;
6917
- default: string;
6918
- };
6919
- accessToken: {
6920
- type: StringConstructor;
6921
- default: string;
6922
- };
6923
- areaName: {
6924
- type: StringConstructor;
6925
- default: string;
6926
- };
6927
- deviceSerial: {
6928
- type: StringConstructor;
6929
- default: string;
6930
- };
6931
- platformTypeName: {
6932
- type: StringConstructor;
6933
- default: string;
6934
- };
6935
- debug: {
6936
- type: BooleanConstructor;
6937
- default: boolean;
6938
- };
6939
- }>> & Readonly<{
6940
- onPlay?: ((...args: any[]) => any) | undefined;
6941
- onPause?: ((...args: any[]) => any) | undefined;
6942
- onError?: ((...args: any[]) => any) | undefined;
6943
- onVideoInfo?: ((...args: any[]) => any) | undefined;
6944
- onTimeout?: ((...args: any[]) => any) | undefined;
6945
- onMute?: ((...args: any[]) => any) | undefined;
6946
- }> & {}>;
6947
- emits: (event: "error" | "play" | "pause" | "videoInfo" | "timeout" | "mute", ...args: any[]) => void;
6948
- setCamera: () => void;
6949
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("error" | "play" | "pause" | "videoInfo" | "timeout" | "mute")[], "error" | "play" | "pause" | "videoInfo" | "timeout" | "mute", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
6950
- url: {
6951
- type: StringConstructor;
6952
- default: string;
6953
- };
6954
- accessToken: {
6955
- type: StringConstructor;
6956
- default: string;
6957
- };
6958
- areaName: {
6959
- type: StringConstructor;
6960
- default: string;
6961
- };
6962
- deviceSerial: {
6963
- type: StringConstructor;
6964
- default: string;
6965
- };
6966
- platformTypeName: {
6967
- type: StringConstructor;
6968
- default: string;
6969
- };
6970
- debug: {
6971
- type: BooleanConstructor;
6972
- default: boolean;
6973
- };
6974
- }>> & Readonly<{
6975
- onPlay?: ((...args: any[]) => any) | undefined;
6976
- onPause?: ((...args: any[]) => any) | undefined;
6977
- onError?: ((...args: any[]) => any) | undefined;
6978
- onVideoInfo?: ((...args: any[]) => any) | undefined;
6979
- onTimeout?: ((...args: any[]) => any) | undefined;
6980
- onMute?: ((...args: any[]) => any) | undefined;
6981
- }>, {
6982
- url: string;
6983
- accessToken: string;
6984
- debug: boolean;
6985
- deviceSerial: string;
6986
- areaName: string;
6987
- platformTypeName: string;
6988
6787
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any> | null>;
6989
6788
  errorState: import("vue").ComputedRef<{
6990
6789
  type: string;
@@ -10429,106 +10228,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
10429
10228
  deviceSerial: string;
10430
10229
  areaName: string;
10431
10230
  platformTypeName: string;
10432
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any> | import("vue").DefineComponent<import("vue").ExtractPropTypes<{
10433
- url: {
10434
- type: StringConstructor;
10435
- default: string;
10436
- };
10437
- accessToken: {
10438
- type: StringConstructor;
10439
- default: string;
10440
- };
10441
- areaName: {
10442
- type: StringConstructor;
10443
- default: string;
10444
- };
10445
- deviceSerial: {
10446
- type: StringConstructor;
10447
- default: string;
10448
- };
10449
- platformTypeName: {
10450
- type: StringConstructor;
10451
- default: string;
10452
- };
10453
- debug: {
10454
- type: BooleanConstructor;
10455
- default: boolean;
10456
- };
10457
- }>, {
10458
- props: import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
10459
- url: {
10460
- type: StringConstructor;
10461
- default: string;
10462
- };
10463
- accessToken: {
10464
- type: StringConstructor;
10465
- default: string;
10466
- };
10467
- areaName: {
10468
- type: StringConstructor;
10469
- default: string;
10470
- };
10471
- deviceSerial: {
10472
- type: StringConstructor;
10473
- default: string;
10474
- };
10475
- platformTypeName: {
10476
- type: StringConstructor;
10477
- default: string;
10478
- };
10479
- debug: {
10480
- type: BooleanConstructor;
10481
- default: boolean;
10482
- };
10483
- }>> & Readonly<{
10484
- onPlay?: ((...args: any[]) => any) | undefined;
10485
- onPause?: ((...args: any[]) => any) | undefined;
10486
- onError?: ((...args: any[]) => any) | undefined;
10487
- onVideoInfo?: ((...args: any[]) => any) | undefined;
10488
- onTimeout?: ((...args: any[]) => any) | undefined;
10489
- onMute?: ((...args: any[]) => any) | undefined;
10490
- }> & {}>;
10491
- emits: (event: "error" | "play" | "pause" | "videoInfo" | "timeout" | "mute", ...args: any[]) => void;
10492
- setCamera: () => void;
10493
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("error" | "play" | "pause" | "videoInfo" | "timeout" | "mute")[], "error" | "play" | "pause" | "videoInfo" | "timeout" | "mute", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
10494
- url: {
10495
- type: StringConstructor;
10496
- default: string;
10497
- };
10498
- accessToken: {
10499
- type: StringConstructor;
10500
- default: string;
10501
- };
10502
- areaName: {
10503
- type: StringConstructor;
10504
- default: string;
10505
- };
10506
- deviceSerial: {
10507
- type: StringConstructor;
10508
- default: string;
10509
- };
10510
- platformTypeName: {
10511
- type: StringConstructor;
10512
- default: string;
10513
- };
10514
- debug: {
10515
- type: BooleanConstructor;
10516
- default: boolean;
10517
- };
10518
- }>> & Readonly<{
10519
- onPlay?: ((...args: any[]) => any) | undefined;
10520
- onPause?: ((...args: any[]) => any) | undefined;
10521
- onError?: ((...args: any[]) => any) | undefined;
10522
- onVideoInfo?: ((...args: any[]) => any) | undefined;
10523
- onTimeout?: ((...args: any[]) => any) | undefined;
10524
- onMute?: ((...args: any[]) => any) | undefined;
10525
- }>, {
10526
- url: string;
10527
- accessToken: string;
10528
- debug: boolean;
10529
- deviceSerial: string;
10530
- areaName: string;
10531
- platformTypeName: string;
10532
10231
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any> | null>;
10533
10232
  ErrorPage: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
10534
10233
  videoName: {
@@ -6,7 +6,6 @@ var vue = require('vue');
6
6
  var lodashEs = require('lodash-es');
7
7
  require('./ctyun-player.vue.js');
8
8
  require('./easyPlayer.vue.js');
9
- require('./xgplayer.vue.js');
10
9
  var tzjPlayer = require('./tzj-player.js');
11
10
  require('./ysPlayer.vue.js');
12
11
  require('./errorPage.vue.js');
@@ -14,7 +13,6 @@ require('./yunzhiyanPlayer.vue.js');
14
13
  var yunzhiyanPlayer_vue_vue_type_script_setup_true_lang = require('./yunzhiyanPlayer.vue2.js');
15
14
  var ysPlayer_vue_vue_type_script_setup_true_lang = require('./ysPlayer.vue2.js');
16
15
  var ctyunPlayer_vue_vue_type_script_setup_true_lang = require('./ctyun-player.vue2.js');
17
- var xgplayer_vue_vue_type_script_setup_true_lang = require('./xgplayer.vue2.js');
18
16
  var easyPlayer_vue_vue_type_script_setup_true_lang = require('./easyPlayer.vue2.js');
19
17
  var errorPage_vue_vue_type_script_setup_true_lang = require('./errorPage.vue2.js');
20
18
 
@@ -45,8 +43,8 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
45
43
  const PLATFORM_COMPONENTS = {
46
44
  \u4E91\u667A\u773C: yunzhiyanPlayer_vue_vue_type_script_setup_true_lang.default,
47
45
  \u8424\u77F3\u4E91: ysPlayer_vue_vue_type_script_setup_true_lang.default,
48
- \u5929\u7FFC\u4E91: ctyunPlayer_vue_vue_type_script_setup_true_lang.default,
49
- hls: xgplayer_vue_vue_type_script_setup_true_lang.default
46
+ \u5929\u7FFC\u4E91: ctyunPlayer_vue_vue_type_script_setup_true_lang.default
47
+ // hls: XgPlayer,
50
48
  };
51
49
  const playerComponent = vue.computed(() => {
52
50
  if (platformTypeName.value) {
@@ -1 +1 @@
1
- {"version":3,"file":"tzj-player.vue2.js","sources":["../../../../../../../packages/components/tzj-player/src/tzj-player.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, shallowRef, toRefs, watch } from \"vue\";\nimport { debounce } from \"lodash-es\";\nimport CtyunPlayer from \"./ctyun-player.vue\";\nimport EasyPlayer from \"./easyPlayer.vue\";\nimport XgPlayer from \"./xgplayer.vue\";\nimport {\n getVideoType,\n isSupportedProtocol,\n TzjPlayerProps,\n} from \"./tzj-player\";\nimport YsPlayer from \"./ysPlayer.vue\";\nimport ErrorPage from \"./errorPage.vue\";\nimport YunzhiyanPlayer from \"./yunzhiyanPlayer.vue\";\n\ndefineOptions({\n name: \"ITzjPlayer\",\n});\n\nconst props = defineProps(TzjPlayerProps);\nconst { url, platformTypeName, accessToken } = toRefs(props);\n\nconst compRef = shallowRef();\n\n// 防抖处理组件渲染更新,避免频繁切换播放器类型\nconst updatePlayerComponent = debounce(() => {\n // 强制更新组件,销毁旧实例\n if (compRef.value) {\n compRef.value.destroy?.();\n }\n}, 300);\n\n// 监听URL变化,使用防抖处理\nwatch(\n () => [url.value, platformTypeName.value, accessToken.value],\n () => {\n // 更新播放器组件\n updatePlayerComponent();\n },\n { deep: true },\n);\n\n/**\n * 平台类型映射表,提升可维护性\n */\nconst PLATFORM_COMPONENTS = {\n 云智眼: YunzhiyanPlayer,\n 萤石云: YsPlayer,\n 天翼云: CtyunPlayer,\n hls: XgPlayer,\n} as const;\n\n/**\n * 计算当前播放器组件类型\n * 使用计算属性避免重复计算,提升性能\n */\nconst playerComponent = computed(() => {\n // 优先使用指定的平台类型\n if (platformTypeName.value) {\n return (\n PLATFORM_COMPONENTS[\n platformTypeName.value as keyof typeof PLATFORM_COMPONENTS\n ] || EasyPlayer\n );\n }\n\n // 未指定平台类型时,根据URL自动判断\n if (!url.value) {\n return null;\n }\n\n // 检查协议支持性\n if (!isSupportedProtocol(url.value)) {\n return null;\n }\n\n // ezopen协议使用萤石云播放器\n if (url.value.includes(\"ezopen\")) {\n return YsPlayer;\n }\n\n // 根据视频类型选择播放器\n const videoType = getVideoType(url.value);\n return videoType ? EasyPlayer : null;\n});\n\n/**\n * 计算错误状态信息\n * 统一错误状态管理,提升用户体验\n */\nconst errorState = computed(() => {\n // 云智眼平台不需要URL\n if (\n platformTypeName.value === \"云智眼\" ||\n platformTypeName.value === \"天翼云\"\n ) {\n return null;\n }\n\n // 检查URL是否存在\n if (!url.value) {\n return {\n type: \"no-url\",\n message: \"无视频地址\",\n };\n }\n\n // 检查协议支持性\n if (!isSupportedProtocol(url.value)) {\n return {\n type: \"unsupported-protocol\",\n message: \"不支持该视频协议\",\n };\n }\n\n // 萤石云平台需要accessToken\n if (\n (platformTypeName.value === \"萤石云\" || url.value.includes(\"ezopen\")) &&\n !accessToken.value\n ) {\n return {\n type: \"no-token\",\n message: \"缺少访问令牌\",\n };\n }\n\n return null;\n});\n\n/**\n * 计算是否显示播放器组件\n */\nconst shouldShowPlayer = computed(() => {\n return !errorState.value && playerComponent.value;\n});\n\n/**\n * 暴露的方法,增加错误处理\n */\ndefineExpose({\n /**\n * 播放视频\n * @param options 播放选项\n */\n play(options?: any) {\n if (!compRef.value) {\n props.debug && console.warn(\"[TzjPlayer] 播放器组件未初始化\");\n return;\n }\n compRef.value?.play(options);\n },\n\n /**\n * 销毁播放器\n */\n destroy() {\n if (!compRef.value) {\n props.debug && console.warn(\"[TzjPlayer] 播放器组件未初始化\");\n return;\n }\n compRef.value?.destroy();\n },\n\n /**\n * 调整播放器尺寸\n */\n resize() {\n if (!compRef.value) {\n props.debug && console.warn(\"[TzjPlayer] 播放器组件未初始化\");\n return;\n }\n compRef.value?.resize();\n },\n\n /**\n * 获取当前播放器类型\n */\n getPlayerType() {\n return playerComponent.value?.name || null;\n },\n\n /**\n * 获取错误状态\n */\n getErrorState() {\n return errorState.value;\n },\n});\n</script>\n\n<template>\n <div class=\"i-tzj-player\">\n <!-- 错误状态显示 -->\n <error-page\n :videoName=\"areaName || deviceSerial\"\n :message=\"errorState.message\"\n v-if=\"errorState\"\n />\n\n <!-- 播放器组件 -->\n <component\n :is=\"playerComponent\"\n v-else-if=\"shouldShowPlayer\"\n ref=\"compRef\"\n v-bind=\"props\"\n />\n\n <!-- 无可用播放器 -->\n <error-page :videoName=\"areaName || deviceSerial\" message=\"无信号\" v-else />\n </div>\n</template>\n"],"names":["toRefs","shallowRef","debounce","watch","YunzhiyanPlayer","YsPlayer","CtyunPlayer","XgPlayer","computed","EasyPlayer","isSupportedProtocol","getVideoType","_openBlock","_createElementBlock","_createCommentVNode","_createBlock","ErrorPage","areaName","deviceSerial","_Fragment","_resolveDynamicComponent","_mergeProps","_createVNode"],"mappings":"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"}
1
+ {"version":3,"file":"tzj-player.vue2.js","sources":["../../../../../../../packages/components/tzj-player/src/tzj-player.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, shallowRef, toRefs, watch } from \"vue\";\nimport { debounce } from \"lodash-es\";\nimport CtyunPlayer from \"./ctyun-player.vue\";\nimport EasyPlayer from \"./easyPlayer.vue\";\n// import XgPlayer from \"./xgplayer.vue\";\nimport {\n getVideoType,\n isSupportedProtocol,\n TzjPlayerProps,\n} from \"./tzj-player\";\nimport YsPlayer from \"./ysPlayer.vue\";\nimport ErrorPage from \"./errorPage.vue\";\nimport YunzhiyanPlayer from \"./yunzhiyanPlayer.vue\";\n\ndefineOptions({\n name: \"ITzjPlayer\",\n});\n\nconst props = defineProps(TzjPlayerProps);\nconst { url, platformTypeName, accessToken } = toRefs(props);\n\nconst compRef = shallowRef();\n\n// 防抖处理组件渲染更新,避免频繁切换播放器类型\nconst updatePlayerComponent = debounce(() => {\n // 强制更新组件,销毁旧实例\n if (compRef.value) {\n compRef.value.destroy?.();\n }\n}, 300);\n\n// 监听URL变化,使用防抖处理\nwatch(\n () => [url.value, platformTypeName.value, accessToken.value],\n () => {\n // 更新播放器组件\n updatePlayerComponent();\n },\n { deep: true },\n);\n\n/**\n * 平台类型映射表,提升可维护性\n */\nconst PLATFORM_COMPONENTS = {\n 云智眼: YunzhiyanPlayer,\n 萤石云: YsPlayer,\n 天翼云: CtyunPlayer,\n // hls: XgPlayer,\n} as const;\n\n/**\n * 计算当前播放器组件类型\n * 使用计算属性避免重复计算,提升性能\n */\nconst playerComponent = computed(() => {\n // 优先使用指定的平台类型\n if (platformTypeName.value) {\n return (\n PLATFORM_COMPONENTS[\n platformTypeName.value as keyof typeof PLATFORM_COMPONENTS\n ] || EasyPlayer\n );\n }\n\n // 未指定平台类型时,根据URL自动判断\n if (!url.value) {\n return null;\n }\n\n // 检查协议支持性\n if (!isSupportedProtocol(url.value)) {\n return null;\n }\n\n // ezopen协议使用萤石云播放器\n if (url.value.includes(\"ezopen\")) {\n return YsPlayer;\n }\n\n // 根据视频类型选择播放器\n const videoType = getVideoType(url.value);\n return videoType ? EasyPlayer : null;\n});\n\n/**\n * 计算错误状态信息\n * 统一错误状态管理,提升用户体验\n */\nconst errorState = computed(() => {\n // 云智眼平台不需要URL\n if (\n platformTypeName.value === \"云智眼\" ||\n platformTypeName.value === \"天翼云\"\n ) {\n return null;\n }\n\n // 检查URL是否存在\n if (!url.value) {\n return {\n type: \"no-url\",\n message: \"无视频地址\",\n };\n }\n\n // 检查协议支持性\n if (!isSupportedProtocol(url.value)) {\n return {\n type: \"unsupported-protocol\",\n message: \"不支持该视频协议\",\n };\n }\n\n // 萤石云平台需要accessToken\n if (\n (platformTypeName.value === \"萤石云\" || url.value.includes(\"ezopen\")) &&\n !accessToken.value\n ) {\n return {\n type: \"no-token\",\n message: \"缺少访问令牌\",\n };\n }\n\n return null;\n});\n\n/**\n * 计算是否显示播放器组件\n */\nconst shouldShowPlayer = computed(() => {\n return !errorState.value && playerComponent.value;\n});\n\n/**\n * 暴露的方法,增加错误处理\n */\ndefineExpose({\n /**\n * 播放视频\n * @param options 播放选项\n */\n play(options?: any) {\n if (!compRef.value) {\n props.debug && console.warn(\"[TzjPlayer] 播放器组件未初始化\");\n return;\n }\n compRef.value?.play(options);\n },\n\n /**\n * 销毁播放器\n */\n destroy() {\n if (!compRef.value) {\n props.debug && console.warn(\"[TzjPlayer] 播放器组件未初始化\");\n return;\n }\n compRef.value?.destroy();\n },\n\n /**\n * 调整播放器尺寸\n */\n resize() {\n if (!compRef.value) {\n props.debug && console.warn(\"[TzjPlayer] 播放器组件未初始化\");\n return;\n }\n compRef.value?.resize();\n },\n\n /**\n * 获取当前播放器类型\n */\n getPlayerType() {\n return playerComponent.value?.name || null;\n },\n\n /**\n * 获取错误状态\n */\n getErrorState() {\n return errorState.value;\n },\n});\n</script>\n\n<template>\n <div class=\"i-tzj-player\">\n <!-- 错误状态显示 -->\n <error-page\n :videoName=\"areaName || deviceSerial\"\n :message=\"errorState.message\"\n v-if=\"errorState\"\n />\n\n <!-- 播放器组件 -->\n <component\n :is=\"playerComponent\"\n v-else-if=\"shouldShowPlayer\"\n ref=\"compRef\"\n v-bind=\"props\"\n />\n\n <!-- 无可用播放器 -->\n <error-page :videoName=\"areaName || deviceSerial\" message=\"无信号\" v-else />\n </div>\n</template>\n"],"names":["toRefs","shallowRef","debounce","watch","YunzhiyanPlayer","YsPlayer","CtyunPlayer","computed","EasyPlayer","isSupportedProtocol","getVideoType","_openBlock","_createElementBlock","_createCommentVNode","_createBlock","ErrorPage","areaName","deviceSerial","_Fragment","_resolveDynamicComponent","_mergeProps","_createVNode"],"mappings":"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"}
@@ -63,7 +63,9 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
63
63
  // 避免跨域凭证问题
64
64
  }
65
65
  };
66
- new window.Player(config);
66
+ if (window == null ? void 0 : window.Player) {
67
+ new window.Player(config);
68
+ }
67
69
  }
68
70
  __name(setCamera, "setCamera");
69
71
  vue.onMounted(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"xgplayer.vue2.js","sources":["../../../../../../../packages/components/tzj-player/src/xgplayer.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { onMounted } from \"vue\";\nimport { TzjPlayerProps } from \"./tzj-player\";\n\ndefineOptions({\n name: \"xgplayer1\",\n});\nconst props = defineProps(TzjPlayerProps);\nconst emits = defineEmits([\n \"timeout\",\n \"error\",\n \"play\",\n \"pause\",\n \"mute\",\n \"videoInfo\",\n]);\nfunction setCamera() {\n const config = {\n id: \"xgplayerId\",\n url: props.url,\n playsinline: true,\n plugins: [window.HlsPlayer],\n isLive: true,\n autoplayMuted: true,\n autoplay: true,\n playbackRate: [null],\n // Edge特定优化\n videoAttributes: {\n playsInline: true,\n crossOrigin: \"anonymous\",\n },\n live: {\n alwaysLive: true, // 保持直播状态,避免切换为点播\n minCacheTime: 1,\n maxCacheTime: 3,\n },\n // Edge特有优化\n customPlayback: false, // 禁用可能冲突的自定义播放逻辑\n ignoreMutedError: true, // 忽略静音状态错误\n edgeCompat: true, // 西瓜播放器Edge兼容模式(v3.0+支持)\n mediaDataSource: {\n cors: true,\n withCredentials: false, // 避免跨域凭证问题\n },\n };\n new window.Player(config);\n}\nonMounted(() => {\n setCamera();\n});\n</script>\n\n<template>\n <div class=\"i-tzj-xgplayer\">\n <!-- 播放器顶部显示区域(设备)名称 -->\n <div v-if=\"areaName || deviceSerial\" class=\"i-tzj-xgplayer__top\">\n <i class=\"iconfont icon-shexiangtou4\" />\n <span>{{ areaName || deviceSerial }}</span>\n </div>\n <div id=\"xgplayerId\" style=\"flex: 1; height: 0; width: 100%\"></div>\n </div>\n</template>\n"],"names":["onMounted","_openBlock","_createElementBlock","_createCommentVNode","areaName","deviceSerial","_createElementVNode","_toDisplayString"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,IAAA,MAAM,KAAQ,GAAA,OAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA;AAQd,IAAA,SAAS,SAAY,GAAA;AACnB,MAAA,MAAM,MAAS,GAAA;AAAA,QACb,EAAI,EAAA,YAAA;AAAA,QACJ,KAAK,KAAM,CAAA,GAAA;AAAA,QACX,WAAa,EAAA,IAAA;AAAA,QACb,OAAA,EAAS,CAAC,MAAA,CAAO,SAAS,CAAA;AAAA,QAC1B,MAAQ,EAAA,IAAA;AAAA,QACR,aAAe,EAAA,IAAA;AAAA,QACf,QAAU,EAAA,IAAA;AAAA,QACV,YAAA,EAAc,CAAC,IAAI,CAAA;AAAA;AAAA,QAEnB,eAAiB,EAAA;AAAA,UACf,WAAa,EAAA,IAAA;AAAA,UACb,WAAa,EAAA;AAAA,SACf;AAAA,QACA,IAAM,EAAA;AAAA,UACJ,UAAY,EAAA,IAAA;AAAA;AAAA,UACZ,YAAc,EAAA,CAAA;AAAA,UACd,YAAc,EAAA;AAAA,SAChB;AAAA;AAAA,QAEA,cAAgB,EAAA,KAAA;AAAA;AAAA,QAChB,gBAAkB,EAAA,IAAA;AAAA;AAAA,QAClB,UAAY,EAAA,IAAA;AAAA;AAAA,QACZ,eAAiB,EAAA;AAAA,UACf,IAAM,EAAA,IAAA;AAAA,UACN,eAAiB,EAAA;AAAA;AAAA;AACnB,OACF;AACA,MAAI,IAAA,MAAA,CAAO,OAAO,MAAM,CAAA;AAAA;AA7BjB,IAAA,MAAA,CAAA,SAAA,EAAA,WAAA,CAAA;AA+BT,IAAAA,aAAA,CAAU,MAAM;AACd,MAAU,SAAA,EAAA;AAAA,KACX,CAAA;;AAIC,MAAA,OAAAC,aAAA,EAAA,EAAAC,sBAOM,CAAA,KAAA,EAPN,UAOM,EAAA;AAAA,QANJC,uBAAwB,oFAAA,CAAA;AAAA,QACbC,IAAAA,CAAAA,YAAYC,IAAY,CAAA,YAAA,IAAnCJ,eAAA,EAAAC,sBAAA,CAGM,OAHN,UAGM,EAAA;AAAA,iCAFJ,GAAAI,sBAAA;AAAA,YAAwC,GAAA;AAAA,YAAA,EAArC,OAAM,4BAA4B,EAAA;AAAA,YAAA,IAAA;AAAA,YAAA,CAAA;AAAA;AAAA,WAAA,CAAA;AAAA,UACrCA,sBAAA;AAAA,YAA2C,MAAA;AAAA,YAAA,IAAA;AAAA,YAAAC,mBAAlCH,CAAAA,IAAAA,CAAQ,QAAIC,IAAAA,IAAAA,CAAY,YAAA,CAAA;AAAA,YAAA;AAAA;AAAA;AAAA;+BAEnC,GAAAC,sBAAA;AAAA,UAAmE,KAAA;AAAA,UAAA;AAAA,YAA9D,EAAG,EAAA,YAAA;AAAA,YAAa,OAAA,EAAuC,MAAA,EAAA,KAAA,QAAA,EAAA,GAAA,EAAA,SAAA,MAAA;AAAA;;;;;;;;;;;;"}
1
+ {"version":3,"file":"xgplayer.vue2.js","sources":["../../../../../../../packages/components/tzj-player/src/xgplayer.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { onMounted } from \"vue\";\nimport { TzjPlayerProps } from \"./tzj-player\";\n\ndefineOptions({\n name: \"xgplayer1\",\n});\nconst props = defineProps(TzjPlayerProps);\nconst emits = defineEmits([\n \"timeout\",\n \"error\",\n \"play\",\n \"pause\",\n \"mute\",\n \"videoInfo\",\n]);\nfunction setCamera() {\n const config = {\n id: \"xgplayerId\",\n url: props.url,\n playsinline: true,\n plugins: [window.HlsPlayer],\n isLive: true,\n autoplayMuted: true,\n autoplay: true,\n playbackRate: [null],\n // Edge特定优化\n videoAttributes: {\n playsInline: true,\n crossOrigin: \"anonymous\",\n },\n live: {\n alwaysLive: true, // 保持直播状态,避免切换为点播\n minCacheTime: 1,\n maxCacheTime: 3,\n },\n // Edge特有优化\n customPlayback: false, // 禁用可能冲突的自定义播放逻辑\n ignoreMutedError: true, // 忽略静音状态错误\n edgeCompat: true, // 西瓜播放器Edge兼容模式(v3.0+支持)\n mediaDataSource: {\n cors: true,\n withCredentials: false, // 避免跨域凭证问题\n },\n };\n if (window?.Player) {\n new window.Player(config);\n }\n}\nonMounted(() => {\n setCamera();\n});\n</script>\n\n<template>\n <div class=\"i-tzj-xgplayer\">\n <!-- 播放器顶部显示区域(设备)名称 -->\n <div v-if=\"areaName || deviceSerial\" class=\"i-tzj-xgplayer__top\">\n <i class=\"iconfont icon-shexiangtou4\" />\n <span>{{ areaName || deviceSerial }}</span>\n </div>\n <div id=\"xgplayerId\" style=\"flex: 1; height: 0; width: 100%\"></div>\n </div>\n</template>\n"],"names":["onMounted","_openBlock","_createElementBlock","_createCommentVNode","areaName","deviceSerial","_createElementVNode","_toDisplayString"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,IAAA,MAAM,KAAQ,GAAA,OAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA;AAQd,IAAA,SAAS,SAAY,GAAA;AACnB,MAAA,MAAM,MAAS,GAAA;AAAA,QACb,EAAI,EAAA,YAAA;AAAA,QACJ,KAAK,KAAM,CAAA,GAAA;AAAA,QACX,WAAa,EAAA,IAAA;AAAA,QACb,OAAA,EAAS,CAAC,MAAA,CAAO,SAAS,CAAA;AAAA,QAC1B,MAAQ,EAAA,IAAA;AAAA,QACR,aAAe,EAAA,IAAA;AAAA,QACf,QAAU,EAAA,IAAA;AAAA,QACV,YAAA,EAAc,CAAC,IAAI,CAAA;AAAA;AAAA,QAEnB,eAAiB,EAAA;AAAA,UACf,WAAa,EAAA,IAAA;AAAA,UACb,WAAa,EAAA;AAAA,SACf;AAAA,QACA,IAAM,EAAA;AAAA,UACJ,UAAY,EAAA,IAAA;AAAA;AAAA,UACZ,YAAc,EAAA,CAAA;AAAA,UACd,YAAc,EAAA;AAAA,SAChB;AAAA;AAAA,QAEA,cAAgB,EAAA,KAAA;AAAA;AAAA,QAChB,gBAAkB,EAAA,IAAA;AAAA;AAAA,QAClB,UAAY,EAAA,IAAA;AAAA;AAAA,QACZ,eAAiB,EAAA;AAAA,UACf,IAAM,EAAA,IAAA;AAAA,UACN,eAAiB,EAAA;AAAA;AAAA;AACnB,OACF;AACA,MAAA,IAAI,iCAAQ,MAAQ,EAAA;AAClB,QAAI,IAAA,MAAA,CAAO,OAAO,MAAM,CAAA;AAAA;AAC1B;AA/BO,IAAA,MAAA,CAAA,SAAA,EAAA,WAAA,CAAA;AAiCT,IAAAA,aAAA,CAAU,MAAM;AACd,MAAU,SAAA,EAAA;AAAA,KACX,CAAA;;AAIC,MAAA,OAAAC,aAAA,EAAA,EAAAC,sBAOM,CAAA,KAAA,EAPN,UAOM,EAAA;AAAA,QANJC,uBAAwB,oFAAA,CAAA;AAAA,QACbC,IAAAA,CAAAA,YAAYC,IAAY,CAAA,YAAA,IAAnCJ,eAAA,EAAAC,sBAAA,CAGM,OAHN,UAGM,EAAA;AAAA,iCAFJ,GAAAI,sBAAA;AAAA,YAAwC,GAAA;AAAA,YAAA,EAArC,OAAM,4BAA4B,EAAA;AAAA,YAAA,IAAA;AAAA,YAAA,CAAA;AAAA;AAAA,WAAA,CAAA;AAAA,UACrCA,sBAAA;AAAA,YAA2C,MAAA;AAAA,YAAA,IAAA;AAAA,YAAAC,mBAAlCH,CAAAA,IAAAA,CAAQ,QAAIC,IAAAA,IAAAA,CAAY,YAAA,CAAA;AAAA,YAAA;AAAA;AAAA;AAAA;+BAEnC,GAAAC,sBAAA;AAAA,UAAmE,KAAA;AAAA,UAAA;AAAA,YAA9D,EAAG,EAAA,YAAA;AAAA,YAAa,OAAA,EAAuC,MAAA,EAAA,KAAA,QAAA,EAAA,GAAA,EAAA,SAAA,MAAA;AAAA;;;;;;;;;;;;"}
@@ -1,12 +1,12 @@
1
- import type { Component } from 'vue';
1
+ import type { Component } from "vue";
2
2
  export interface ElInputProps {
3
- size?: '' | 'default' | 'small' | 'large';
3
+ size?: "" | "default" | "small" | "large";
4
4
  disabled?: boolean;
5
5
  modelValue?: string | number | null | undefined;
6
6
  maxlength?: string | number;
7
7
  minlength?: string | number;
8
8
  type?: string;
9
- resize?: 'none' | 'both' | 'horizontal' | 'vertical';
9
+ resize?: "none" | "both" | "horizontal" | "vertical";
10
10
  autosize?: boolean | object;
11
11
  autocomplete?: string;
12
12
  formatter?: Function;
@@ -30,13 +30,13 @@ export interface ElSelectProps {
30
30
  multiple?: boolean;
31
31
  disabled?: boolean;
32
32
  valueKey?: string;
33
- size?: '' | 'large' | 'default' | 'small';
33
+ size?: "" | "large" | "default" | "small";
34
34
  clearable?: boolean;
35
35
  collapseTags?: boolean;
36
36
  collapseTagsTooltip?: boolean;
37
37
  multipleLimit?: number;
38
38
  name?: string;
39
- effect?: 'dark' | 'light';
39
+ effect?: "dark" | "light";
40
40
  autocomplete?: string;
41
41
  placeholder?: string;
42
42
  filterable?: boolean;
@@ -63,22 +63,22 @@ export interface ElInputNumberProps {
63
63
  step?: number;
64
64
  stepStrictly?: boolean;
65
65
  precision?: number;
66
- size?: 'large' | 'default' | 'small';
66
+ size?: "large" | "default" | "small";
67
67
  readonly?: boolean;
68
68
  disabled?: boolean;
69
69
  controls?: boolean;
70
- controlsPosition?: '' | 'right';
70
+ controlsPosition?: "" | "right";
71
71
  }
72
72
  export interface ElDatePickerProps {
73
73
  readonly?: boolean;
74
74
  disabled?: boolean;
75
- size?: '' | 'large' | 'default' | 'small';
75
+ size?: "" | "large" | "default" | "small";
76
76
  editable?: boolean;
77
77
  clearable?: boolean;
78
78
  placeholder?: string;
79
79
  startPlaceholder?: string;
80
80
  endPlaceholder?: string;
81
- type?: 'year' | 'years' | 'month' | 'months' | 'date' | 'dates' | 'datetime' | 'week' | 'datetimerange' | 'daterange' | 'monthrange' | 'yearrange';
81
+ type?: "year" | "years" | "month" | "months" | "date" | "dates" | "datetime" | "week" | "datetimerange" | "daterange" | "monthrange" | "yearrange";
82
82
  format?: string;
83
83
  popperClass?: string;
84
84
  popperOptions?: object;
@@ -89,9 +89,10 @@ export interface ElDatePickerProps {
89
89
  unlinkPanels?: boolean;
90
90
  shortcuts?: object;
91
91
  teleported?: boolean;
92
+ disabledDate?: (date: any) => boolean;
92
93
  }
93
94
  export interface ElCascaderProps {
94
- size?: '' | 'large' | 'default' | 'small';
95
+ size?: "" | "large" | "default" | "small";
95
96
  disabled?: boolean;
96
97
  clearable?: boolean;
97
98
  filterable?: boolean;
@@ -113,19 +114,19 @@ export interface ElCascaderProps {
113
114
  leaf?: string;
114
115
  checkStrictly?: boolean;
115
116
  emitPath?: boolean;
116
- expandTrigger?: 'click' | 'hover';
117
+ expandTrigger?: "click" | "hover";
117
118
  lazy?: boolean;
118
119
  lazyLoad?: () => void;
119
120
  hoverThreshold?: number;
120
121
  };
121
- expandTrigger?: 'click' | 'hover';
122
+ expandTrigger?: "click" | "hover";
122
123
  options?: Record<string, unknown>[];
123
124
  }
124
125
  export interface ElSwitchProps {
125
126
  disabled?: boolean;
126
127
  loading?: boolean;
127
128
  inlinePrompt?: boolean;
128
- size?: '' | 'large' | 'default' | 'small';
129
+ size?: "" | "large" | "default" | "small";
129
130
  width?: number | string;
130
131
  activeText?: string;
131
132
  inactiveText?: string;
@@ -141,7 +142,7 @@ export interface ElSwitchProps {
141
142
  export interface ElTimePickerProps {
142
143
  readonly?: boolean;
143
144
  disabled?: boolean;
144
- size?: '' | 'large' | 'default' | 'small';
145
+ size?: "" | "large" | "default" | "small";
145
146
  editable?: boolean;
146
147
  clearable?: boolean;
147
148
  placeholder?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yimou6/common-ui",
3
- "version": "1.11.11",
3
+ "version": "1.11.13",
4
4
  "description": "Vue3 Component Library",
5
5
  "author": "yimou6",
6
6
  "license": "MIT",