@yimou6/common-ui 1.11.12 → 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: {
@@ -2,7 +2,6 @@ import { defineComponent, toRefs, shallowRef, watch, computed, openBlock, create
2
2
  import { debounce } from 'lodash-es';
3
3
  import './ctyun-player.vue.mjs';
4
4
  import './easyPlayer.vue.mjs';
5
- import './xgplayer.vue.mjs';
6
5
  import { TzjPlayerProps, isSupportedProtocol, getVideoType } from './tzj-player.mjs';
7
6
  import './ysPlayer.vue.mjs';
8
7
  import './errorPage.vue.mjs';
@@ -10,9 +9,8 @@ import './yunzhiyanPlayer.vue.mjs';
10
9
  import _sfc_main$1 from './yunzhiyanPlayer.vue2.mjs';
11
10
  import _sfc_main$2 from './ysPlayer.vue2.mjs';
12
11
  import _sfc_main$3 from './ctyun-player.vue2.mjs';
13
- import _sfc_main$4 from './xgplayer.vue2.mjs';
14
- import _sfc_main$5 from './easyPlayer.vue2.mjs';
15
- import _sfc_main$6 from './errorPage.vue2.mjs';
12
+ import _sfc_main$4 from './easyPlayer.vue2.mjs';
13
+ import _sfc_main$5 from './errorPage.vue2.mjs';
16
14
 
17
15
  const _hoisted_1 = { class: "i-tzj-player" };
18
16
  var _sfc_main = /* @__PURE__ */ defineComponent({
@@ -41,12 +39,12 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
41
39
  const PLATFORM_COMPONENTS = {
42
40
  \u4E91\u667A\u773C: _sfc_main$1,
43
41
  \u8424\u77F3\u4E91: _sfc_main$2,
44
- \u5929\u7FFC\u4E91: _sfc_main$3,
45
- hls: _sfc_main$4
42
+ \u5929\u7FFC\u4E91: _sfc_main$3
43
+ // hls: XgPlayer,
46
44
  };
47
45
  const playerComponent = computed(() => {
48
46
  if (platformTypeName.value) {
49
- return PLATFORM_COMPONENTS[platformTypeName.value] || _sfc_main$5;
47
+ return PLATFORM_COMPONENTS[platformTypeName.value] || _sfc_main$4;
50
48
  }
51
49
  if (!url.value) {
52
50
  return null;
@@ -58,7 +56,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
58
56
  return _sfc_main$2;
59
57
  }
60
58
  const videoType = getVideoType(url.value);
61
- return videoType ? _sfc_main$5 : null;
59
+ return videoType ? _sfc_main$4 : null;
62
60
  });
63
61
  const errorState = computed(() => {
64
62
  if (platformTypeName.value === "\u4E91\u667A\u773C" || platformTypeName.value === "\u5929\u7FFC\u4E91") {
@@ -139,7 +137,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
139
137
  return (_ctx, _cache) => {
140
138
  return openBlock(), createElementBlock("div", _hoisted_1, [
141
139
  createCommentVNode(" \u9519\u8BEF\u72B6\u6001\u663E\u793A "),
142
- errorState.value ? (openBlock(), createBlock(_sfc_main$6, {
140
+ errorState.value ? (openBlock(), createBlock(_sfc_main$5, {
143
141
  key: 0,
144
142
  videoName: _ctx.areaName || _ctx.deviceSerial,
145
143
  message: errorState.value.message
@@ -166,7 +164,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
166
164
  { key: 2 },
167
165
  [
168
166
  createCommentVNode(" \u65E0\u53EF\u7528\u64AD\u653E\u5668 "),
169
- createVNode(_sfc_main$6, {
167
+ createVNode(_sfc_main$5, {
170
168
  videoName: _ctx.areaName || _ctx.deviceSerial,
171
169
  message: "\u65E0\u4FE1\u53F7"
172
170
  }, null, 8, ["videoName"])
@@ -1 +1 @@
1
- {"version":3,"file":"tzj-player.vue2.mjs","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":["YunzhiyanPlayer","YsPlayer","CtyunPlayer","XgPlayer","EasyPlayer","_openBlock","_createElementBlock","_createCommentVNode","_createBlock","ErrorPage","areaName","deviceSerial","_Fragment","_resolveDynamicComponent","_mergeProps","_createVNode"],"mappings":"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"}
1
+ {"version":3,"file":"tzj-player.vue2.mjs","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":["YunzhiyanPlayer","YsPlayer","CtyunPlayer","EasyPlayer","_openBlock","_createElementBlock","_createCommentVNode","_createBlock","ErrorPage","areaName","deviceSerial","_Fragment","_resolveDynamicComponent","_mergeProps","_createVNode"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAmBA,IAAA,MAAM,KAAQ,GAAA,OAAA;AACd,IAAA,MAAM,EAAE,GAAK,EAAA,gBAAA,EAAkB,WAAY,EAAA,GAAI,OAAO,KAAK,CAAA;AAE3D,IAAA,MAAM,UAAU,UAAW,EAAA;AAG3B,IAAM,MAAA,qBAAA,GAAwB,SAAS,MAAM;;AAE3C,MAAA,IAAI,QAAQ,KAAO,EAAA;AACjB,QAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,OAAA,CAAQ,OAAM,OAAd,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,EAAA,CAAA;AAAA;AACF,OACC,GAAG,CAAA;AAGN,IAAA,KAAA;AAAA,MACE,MAAM,CAAC,GAAA,CAAI,OAAO,gBAAiB,CAAA,KAAA,EAAO,YAAY,KAAK,CAAA;AAAA,MAC3D,MAAM;AAEJ,QAAsB,qBAAA,EAAA;AAAA,OACxB;AAAA,MACA,EAAE,MAAM,IAAK;AAAA,KACf;AAKA,IAAA,MAAM,mBAAsB,GAAA;AAAA,MAC1B,kBAAK,EAAAA,WAAA;AAAA,MACL,kBAAK,EAAAC,WAAA;AAAA,MACL,kBAAK,EAAAC;AAAA;AAAA,KAEP;AAMA,IAAM,MAAA,eAAA,GAAkB,SAAS,MAAM;AAErC,MAAA,IAAI,iBAAiB,KAAO,EAAA;AAC1B,QACE,OAAA,mBAAA,CACE,gBAAiB,CAAA,KACnB,CAAK,IAAAC,WAAA;AAAA;AAKT,MAAI,IAAA,CAAC,IAAI,KAAO,EAAA;AACd,QAAO,OAAA,IAAA;AAAA;AAIT,MAAA,IAAI,CAAC,mBAAA,CAAoB,GAAI,CAAA,KAAK,CAAG,EAAA;AACnC,QAAO,OAAA,IAAA;AAAA;AAIT,MAAA,IAAI,GAAI,CAAA,KAAA,CAAM,QAAS,CAAA,QAAQ,CAAG,EAAA;AAChC,QAAO,OAAAF,WAAA;AAAA;AAIT,MAAM,MAAA,SAAA,GAAY,YAAa,CAAA,GAAA,CAAI,KAAK,CAAA;AACxC,MAAA,OAAO,YAAYE,WAAa,GAAA,IAAA;AAAA,KACjC,CAAA;AAMD,IAAM,MAAA,UAAA,GAAa,SAAS,MAAM;AAEhC,MAAA,IACE,gBAAiB,CAAA,KAAA,KAAU,oBAC3B,IAAA,gBAAA,CAAiB,UAAU,oBAC3B,EAAA;AACA,QAAO,OAAA,IAAA;AAAA;AAIT,MAAI,IAAA,CAAC,IAAI,KAAO,EAAA;AACd,QAAO,OAAA;AAAA,UACL,IAAM,EAAA,QAAA;AAAA,UACN,OAAS,EAAA;AAAA,SACX;AAAA;AAIF,MAAA,IAAI,CAAC,mBAAA,CAAoB,GAAI,CAAA,KAAK,CAAG,EAAA;AACnC,QAAO,OAAA;AAAA,UACL,IAAM,EAAA,sBAAA;AAAA,UACN,OAAS,EAAA;AAAA,SACX;AAAA;AAIF,MACG,IAAA,CAAA,gBAAA,CAAiB,KAAU,KAAA,oBAAA,IAAS,GAAI,CAAA,KAAA,CAAM,SAAS,QAAQ,CAAA,KAChE,CAAC,WAAA,CAAY,KACb,EAAA;AACA,QAAO,OAAA;AAAA,UACL,IAAM,EAAA,UAAA;AAAA,UACN,OAAS,EAAA;AAAA,SACX;AAAA;AAGF,MAAO,OAAA,IAAA;AAAA,KACR,CAAA;AAKD,IAAM,MAAA,gBAAA,GAAmB,SAAS,MAAM;AACtC,MAAO,OAAA,CAAC,UAAW,CAAA,KAAA,IAAS,eAAgB,CAAA,KAAA;AAAA,KAC7C,CAAA;AAKD,IAAa,QAAA,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAKX,KAAK,OAAe,EAAA;;AAClB,QAAI,IAAA,CAAC,QAAQ,KAAO,EAAA;AAClB,UAAM,KAAA,CAAA,KAAA,IAAS,OAAQ,CAAA,IAAA,CAAK,oEAAuB,CAAA;AACnD,UAAA;AAAA;AAEF,QAAQ,CAAA,EAAA,GAAA,OAAA,CAAA,KAAA,KAAR,mBAAe,IAAK,CAAA,OAAA,CAAA;AAAA,OACtB;AAAA;AAAA;AAAA;AAAA,MAKA,OAAU,GAAA;;AACR,QAAI,IAAA,CAAC,QAAQ,KAAO,EAAA;AAClB,UAAM,KAAA,CAAA,KAAA,IAAS,OAAQ,CAAA,IAAA,CAAK,oEAAuB,CAAA;AACnD,UAAA;AAAA;AAEF,QAAA,CAAA,EAAA,GAAA,OAAA,CAAQ,UAAR,IAAe,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAA,EAAA;AAAA,OACjB;AAAA;AAAA;AAAA;AAAA,MAKA,MAAS,GAAA;;AACP,QAAI,IAAA,CAAC,QAAQ,KAAO,EAAA;AAClB,UAAM,KAAA,CAAA,KAAA,IAAS,OAAQ,CAAA,IAAA,CAAK,oEAAuB,CAAA;AACnD,UAAA;AAAA;AAEF,QAAA,CAAA,EAAA,GAAA,OAAA,CAAQ,UAAR,IAAe,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAA,EAAA;AAAA,OACjB;AAAA;AAAA;AAAA;AAAA,MAKA,aAAgB,GAAA;;AACd,QAAO,OAAA,CAAA,CAAA,EAAA,GAAA,eAAA,CAAgB,KAAhB,KAAA,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAuB,IAAQ,KAAA,IAAA;AAAA,OACxC;AAAA;AAAA;AAAA;AAAA,MAKA,aAAgB,GAAA;AACd,QAAA,OAAO,UAAW,CAAA,KAAA;AAAA;AACpB,KACD,CAAA;;AAIC,MAAA,OAAAC,SAAA,EAAA,EAAAC,kBAkBM,CAAA,KAAA,EAlBN,UAkBM,EAAA;AAAA,QAjBJC,mBAAe,wCAAA,CAAA;AAAA,QAIP,UAAU,CAAA,KAAA,iBAHlBC,YAIEC,WAAA,EAAA;AAAA;UAHC,SAAA,EAAWC,IAAQ,CAAA,QAAA,IAAIC,IAAY,CAAA,YAAA;AAAA,UACnC,OAAA,EAAS,WAAU,KAAC,CAAA;AAAA,6CAOV,IAAA,gBAAA,CAAgB,oBAF7B,EAAAL,kBAAA;AAAA,UAKEM,QAAA;AAAA,UAAA,EAAA,KAAA,CAAA,EAAA;AAAA,UAAA;AAAA,YANFL,mBAAc,kCAAA,CAAA;AAAA,wBACd,EAAAC,WAAA;AAAA,cAKEK,uBAAA,CAJK,gBAAe,KAAA,CAAA;AAAA,cADtBC,UAKE,CAAA;AAAA,uBAFI,EAAA,SAAA;AAAA,gBAAJ,GAAI,EAAA;AAAA,iBACI,KAAK,CAAA;AAAA,cAAA,IAAA;AAAA,cAAA;AAAA;AAAA,aAAA;AAAA;;;yBAIf,EAAAR,kBAAA;AAAA,UAAyEM,QAAA;AAAA,UAAA,EAAA,KAAA,CAAA,EAAA;AAAA,UAAA;AAAA,YADzEL,mBAAe,wCAAA,CAAA;AAAA,YACfQ,YAAyEN,WAAA,EAAA;AAAA,cAA5D,SAAA,EAAWC,IAAQ,CAAA,QAAA,IAAIC,IAAY,CAAA,YAAA;AAAA,cAAE,OAAQ,EAAA;AAAA;;;;;;;;;;;;"}
@@ -59,7 +59,9 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
59
59
  // 避免跨域凭证问题
60
60
  }
61
61
  };
62
- new window.Player(config);
62
+ if (window == null ? void 0 : window.Player) {
63
+ new window.Player(config);
64
+ }
63
65
  }
64
66
  __name(setCamera, "setCamera");
65
67
  onMounted(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"xgplayer.vue2.mjs","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":["_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,IAAA,SAAA,CAAU,MAAM;AACd,MAAU,SAAA,EAAA;AAAA,KACX,CAAA;;AAIC,MAAA,OAAAA,SAAA,EAAA,EAAAC,kBAOM,CAAA,KAAA,EAPN,UAOM,EAAA;AAAA,QANJC,mBAAwB,oFAAA,CAAA;AAAA,QACbC,IAAAA,CAAAA,YAAYC,IAAY,CAAA,YAAA,IAAnCJ,WAAA,EAAAC,kBAAA,CAGM,OAHN,UAGM,EAAA;AAAA,iCAFJ,GAAAI,kBAAA;AAAA,YAAwC,GAAA;AAAA,YAAA,EAArC,OAAM,4BAA4B,EAAA;AAAA,YAAA,IAAA;AAAA,YAAA,CAAA;AAAA;AAAA,WAAA,CAAA;AAAA,UACrCA,kBAAA;AAAA,YAA2C,MAAA;AAAA,YAAA,IAAA;AAAA,YAAAC,eAAlCH,CAAAA,IAAAA,CAAQ,QAAIC,IAAAA,IAAAA,CAAY,YAAA,CAAA;AAAA,YAAA;AAAA;AAAA;AAAA;+BAEnC,GAAAC,kBAAA;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.mjs","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":["_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,IAAA,SAAA,CAAU,MAAM;AACd,MAAU,SAAA,EAAA;AAAA,KACX,CAAA;;AAIC,MAAA,OAAAA,SAAA,EAAA,EAAAC,kBAOM,CAAA,KAAA,EAPN,UAOM,EAAA;AAAA,QANJC,mBAAwB,oFAAA,CAAA;AAAA,QACbC,IAAAA,CAAAA,YAAYC,IAAY,CAAA,YAAA,IAAnCJ,WAAA,EAAAC,kBAAA,CAGM,OAHN,UAGM,EAAA;AAAA,iCAFJ,GAAAI,kBAAA;AAAA,YAAwC,GAAA;AAAA,YAAA,EAArC,OAAM,4BAA4B,EAAA;AAAA,YAAA,IAAA;AAAA,YAAA,CAAA;AAAA;AAAA,WAAA,CAAA;AAAA,UACrCA,kBAAA;AAAA,YAA2C,MAAA;AAAA,YAAA,IAAA;AAAA,YAAAC,eAAlCH,CAAAA,IAAAA,CAAQ,QAAIC,IAAAA,IAAAA,CAAY,YAAA,CAAA;AAAA,YAAA;AAAA;AAAA;AAAA;+BAEnC,GAAAC,kBAAA;AAAA,UAAmE,KAAA;AAAA,UAAA;AAAA,YAA9D,EAAG,EAAA,YAAA;AAAA,YAAa,OAAA,EAAuC,MAAA,EAAA,KAAA,QAAA,EAAA,GAAA,EAAA,SAAA,MAAA;AAAA;;;;;;;;;;;;"}
@@ -103,7 +103,7 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
103
103
  }
104
104
  const current = findEnterprise(
105
105
  defaultCheck.value.enterpriseId,
106
- treeData.value
106
+ treeData.value || []
107
107
  );
108
108
  if (current) {
109
109
  (_g = treeRef.value) == null ? void 0 : _g.setCheckedKeys([current.id], true);