@yimou6/common-ui 1.9.7 → 1.10.0

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 (100) hide show
  1. package/cdn/index.cdn.js +12 -12
  2. package/cdn/index.cdn.js.map +1 -1
  3. package/cdn/index.cdn.mjs +10 -10
  4. package/cdn/index.cdn.mjs.map +1 -1
  5. package/cdn/index.css +1 -1
  6. package/es/components/index.d.ts +1 -1
  7. package/es/components/index.mjs +1 -1
  8. package/es/components/live-player/index.d.ts +1 -1
  9. package/es/components/live-player/src/live-player.vue.d.ts +1 -1
  10. package/es/components/live-player/src/ysPlayer.vue.d.ts +1 -11
  11. package/es/components/live-player/src/ysPlayer.vue2.mjs +3 -17
  12. package/es/components/live-player/src/ysPlayer.vue2.mjs.map +1 -1
  13. package/es/components/select/index.d.ts +1 -1
  14. package/es/components/select/src/select.vue.d.ts +1 -1
  15. package/es/components/tzj-player/index.d.ts +36 -0
  16. package/es/components/tzj-player/index.mjs +9 -0
  17. package/es/components/tzj-player/index.mjs.map +1 -0
  18. package/es/components/tzj-player/src/easyPlayer.vue.d.ts +21 -0
  19. package/es/components/tzj-player/src/easyPlayer.vue.mjs +6 -0
  20. package/es/components/tzj-player/src/easyPlayer.vue.mjs.map +1 -0
  21. package/es/components/tzj-player/src/easyPlayer.vue2.mjs +120 -0
  22. package/es/components/tzj-player/src/easyPlayer.vue2.mjs.map +1 -0
  23. package/es/components/tzj-player/src/tzj-player.d.ts +15 -0
  24. package/es/components/tzj-player/src/tzj-player.mjs +23 -0
  25. package/es/components/tzj-player/src/tzj-player.mjs.map +1 -0
  26. package/es/components/tzj-player/src/tzj-player.vue.d.ts +36 -0
  27. package/es/components/tzj-player/src/tzj-player.vue.mjs +6 -0
  28. package/es/components/tzj-player/src/tzj-player.vue.mjs.map +1 -0
  29. package/es/components/tzj-player/src/tzj-player.vue2.mjs +50 -0
  30. package/es/components/tzj-player/src/tzj-player.vue2.mjs.map +1 -0
  31. package/es/components/tzj-player/src/ysPlayer.vue.d.ts +72 -0
  32. package/es/components/tzj-player/src/ysPlayer.vue.mjs +6 -0
  33. package/es/components/tzj-player/src/ysPlayer.vue.mjs.map +1 -0
  34. package/es/components/tzj-player/src/ysPlayer.vue2.mjs +183 -0
  35. package/es/components/tzj-player/src/ysPlayer.vue2.mjs.map +1 -0
  36. package/es/index.mjs +1 -1
  37. package/es/installer.mjs +2 -2
  38. package/es/installer.mjs.map +1 -1
  39. package/es/types.d.ts +1 -1
  40. package/global.d.ts +1 -1
  41. package/lib/components/index.d.ts +1 -1
  42. package/lib/components/index.js +31 -31
  43. package/lib/components/live-player/index.d.ts +1 -1
  44. package/lib/components/live-player/src/live-player.vue.d.ts +1 -1
  45. package/lib/components/live-player/src/ysPlayer.vue.d.ts +1 -11
  46. package/lib/components/live-player/src/ysPlayer.vue2.js +3 -17
  47. package/lib/components/live-player/src/ysPlayer.vue2.js.map +1 -1
  48. package/lib/components/select/index.d.ts +1 -1
  49. package/lib/components/select/src/select.vue.d.ts +1 -1
  50. package/lib/components/tzj-player/index.d.ts +36 -0
  51. package/lib/components/tzj-player/index.js +14 -0
  52. package/lib/components/tzj-player/index.js.map +1 -0
  53. package/lib/components/tzj-player/src/easyPlayer.vue.d.ts +21 -0
  54. package/lib/components/tzj-player/src/easyPlayer.vue.js +10 -0
  55. package/lib/components/tzj-player/src/easyPlayer.vue.js.map +1 -0
  56. package/lib/components/tzj-player/src/easyPlayer.vue2.js +124 -0
  57. package/lib/components/tzj-player/src/easyPlayer.vue2.js.map +1 -0
  58. package/lib/components/tzj-player/src/tzj-player.d.ts +15 -0
  59. package/lib/components/tzj-player/src/tzj-player.js +26 -0
  60. package/lib/components/tzj-player/src/tzj-player.js.map +1 -0
  61. package/lib/components/tzj-player/src/tzj-player.vue.d.ts +36 -0
  62. package/lib/components/tzj-player/src/tzj-player.vue.js +10 -0
  63. package/lib/components/tzj-player/src/tzj-player.vue.js.map +1 -0
  64. package/lib/components/tzj-player/src/tzj-player.vue2.js +54 -0
  65. package/lib/components/tzj-player/src/tzj-player.vue2.js.map +1 -0
  66. package/lib/components/tzj-player/src/ysPlayer.vue.d.ts +72 -0
  67. package/lib/components/tzj-player/src/ysPlayer.vue.js +10 -0
  68. package/lib/components/tzj-player/src/ysPlayer.vue.js.map +1 -0
  69. package/lib/components/tzj-player/src/ysPlayer.vue2.js +187 -0
  70. package/lib/components/tzj-player/src/ysPlayer.vue2.js.map +1 -0
  71. package/lib/index.js +31 -31
  72. package/lib/installer.js +2 -2
  73. package/lib/installer.js.map +1 -1
  74. package/lib/types.d.ts +1 -1
  75. package/package.json +1 -1
  76. package/theme-default/i-tzj-player.css +1 -0
  77. package/theme-default/index.css +1 -1
  78. package/es/components/flv-player/index.d.ts +0 -78
  79. package/es/components/flv-player/index.mjs +0 -8
  80. package/es/components/flv-player/index.mjs.map +0 -1
  81. package/es/components/flv-player/src/flv-player.d.ts +0 -22
  82. package/es/components/flv-player/src/flv-player.mjs +0 -27
  83. package/es/components/flv-player/src/flv-player.mjs.map +0 -1
  84. package/es/components/flv-player/src/flv-player.vue.d.ts +0 -78
  85. package/es/components/flv-player/src/flv-player.vue.mjs +0 -6
  86. package/es/components/flv-player/src/flv-player.vue.mjs.map +0 -1
  87. package/es/components/flv-player/src/flv-player.vue2.mjs +0 -257
  88. package/es/components/flv-player/src/flv-player.vue2.mjs.map +0 -1
  89. package/lib/components/flv-player/index.d.ts +0 -78
  90. package/lib/components/flv-player/index.js +0 -13
  91. package/lib/components/flv-player/index.js.map +0 -1
  92. package/lib/components/flv-player/src/flv-player.d.ts +0 -22
  93. package/lib/components/flv-player/src/flv-player.js +0 -29
  94. package/lib/components/flv-player/src/flv-player.js.map +0 -1
  95. package/lib/components/flv-player/src/flv-player.vue.d.ts +0 -78
  96. package/lib/components/flv-player/src/flv-player.vue.js +0 -10
  97. package/lib/components/flv-player/src/flv-player.vue.js.map +0 -1
  98. package/lib/components/flv-player/src/flv-player.vue2.js +0 -261
  99. package/lib/components/flv-player/src/flv-player.vue2.js.map +0 -1
  100. package/theme-default/i-flv-player.css +0 -1
@@ -6,21 +6,21 @@ var index$2 = require('./descriptions/index.js');
6
6
  var index$3 = require('./dialog/index.js');
7
7
  var index$4 = require('./divider/index.js');
8
8
  var index$5 = require('./drawer/index.js');
9
- var index$6 = require('./flv-player/index.js');
10
- var index$7 = require('./form/index.js');
11
- var index$8 = require('./icon-select/index.js');
12
- var index$9 = require('./image-verification/index.js');
13
- var index$a = require('./link/index.js');
14
- var index$b = require('./live-player/index.js');
15
- var index$c = require('./page-header/index.js');
16
- var index$d = require('./radio/index.js');
17
- var index$e = require('./search/index.js');
18
- var index$f = require('./segmented/index.js');
19
- var index$g = require('./select/index.js');
20
- var index$h = require('./split-pane/index.js');
21
- var index$i = require('./table/index.js');
22
- var index$j = require('./tenant-enterprise/index.js');
23
- var index$k = require('./text-button/index.js');
9
+ var index$6 = require('./form/index.js');
10
+ var index$7 = require('./icon-select/index.js');
11
+ var index$8 = require('./image-verification/index.js');
12
+ var index$9 = require('./link/index.js');
13
+ var index$a = require('./live-player/index.js');
14
+ var index$b = require('./page-header/index.js');
15
+ var index$c = require('./radio/index.js');
16
+ var index$d = require('./search/index.js');
17
+ var index$e = require('./segmented/index.js');
18
+ var index$f = require('./select/index.js');
19
+ var index$g = require('./split-pane/index.js');
20
+ var index$h = require('./table/index.js');
21
+ var index$i = require('./tenant-enterprise/index.js');
22
+ var index$j = require('./text-button/index.js');
23
+ var index$k = require('./tzj-player/index.js');
24
24
  var index$l = require('./wisdom-chat/index.js');
25
25
  var form = require('./form/src/form.js');
26
26
  var search = require('./search/src/search.js');
@@ -36,22 +36,22 @@ exports.IDescriptions = index$2.IDescriptions;
36
36
  exports.IDialog = index$3.IDialog;
37
37
  exports.IDivider = index$4.IDivider;
38
38
  exports.IDrawer = index$5.IDrawer;
39
- exports.IFlvPlayer = index$6.IFlvPlayer;
40
- exports.IForm = index$7.IForm;
41
- exports.IIconSelect = index$8.IIconSelect;
42
- exports.IImageVerification = index$9.IImageVerification;
43
- exports.ILink = index$a.ILink;
44
- exports.ILivePlayer = index$b.ILivePlayer;
45
- exports.IPageHeader = index$c.IPageHeader;
46
- exports.IRadio = index$d.IRadio;
47
- exports.ISearch = index$e.ISearch;
48
- exports.ISegmented = index$f.ISegmented;
49
- exports.ISelect = index$g.ISelect;
50
- exports.ISplitPane = index$h.ISplitPane;
51
- exports.ITable = index$i.ITable;
52
- exports.ITenantEnterprise = index$j.ITenantEnterprise;
53
- exports.ITextButton = index$k.ITextButton;
54
- exports.ITextButtonGroup = index$k.ITextButtonGroup;
39
+ exports.IForm = index$6.IForm;
40
+ exports.IIconSelect = index$7.IIconSelect;
41
+ exports.IImageVerification = index$8.IImageVerification;
42
+ exports.ILink = index$9.ILink;
43
+ exports.ILivePlayer = index$a.ILivePlayer;
44
+ exports.IPageHeader = index$b.IPageHeader;
45
+ exports.IRadio = index$c.IRadio;
46
+ exports.ISearch = index$d.ISearch;
47
+ exports.ISegmented = index$e.ISegmented;
48
+ exports.ISelect = index$f.ISelect;
49
+ exports.ISplitPane = index$g.ISplitPane;
50
+ exports.ITable = index$h.ITable;
51
+ exports.ITenantEnterprise = index$i.ITenantEnterprise;
52
+ exports.ITextButton = index$j.ITextButton;
53
+ exports.ITextButtonGroup = index$j.ITextButtonGroup;
54
+ exports.ITzjPlayer = index$k.ITzjPlayer;
55
55
  exports.IWisdomChat = index$l.IWisdomChat;
56
56
  exports.FormItemProps = form.FormItemProps;
57
57
  exports.FormProps = form.FormProps;
@@ -66,9 +66,9 @@ export declare const ILivePlayer: import("../../types").SFCWithInstall<import("v
66
66
  default: string;
67
67
  };
68
68
  }>> & Readonly<{}>, {
69
- debug: boolean;
70
69
  url: string;
71
70
  accessToken: string;
71
+ debug: boolean;
72
72
  onLine: boolean;
73
73
  playerTemplate: string;
74
74
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
@@ -66,9 +66,9 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
66
66
  default: string;
67
67
  };
68
68
  }>> & Readonly<{}>, {
69
- debug: boolean;
70
69
  url: string;
71
70
  accessToken: string;
71
+ debug: boolean;
72
72
  onLine: boolean;
73
73
  playerTemplate: string;
74
74
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
@@ -19,10 +19,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
19
19
  type: StringConstructor;
20
20
  required: true;
21
21
  };
22
- debug: {
23
- type: BooleanConstructor;
24
- required: false;
25
- };
26
22
  playerTemplate: {
27
23
  type: StringConstructor;
28
24
  required: false;
@@ -68,15 +64,9 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
68
64
  type: StringConstructor;
69
65
  required: true;
70
66
  };
71
- debug: {
72
- type: BooleanConstructor;
73
- required: false;
74
- };
75
67
  playerTemplate: {
76
68
  type: StringConstructor;
77
69
  required: false;
78
70
  };
79
- }>> & Readonly<{}>, {
80
- debug: boolean;
81
- }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
71
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
82
72
  export default _default;
@@ -26,7 +26,6 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
26
26
  channel: {},
27
27
  quality: {},
28
28
  accessToken: {},
29
- debug: { type: Boolean },
30
29
  playerTemplate: {}
31
30
  },
32
31
  setup(__props, { expose: __expose }) {
@@ -59,7 +58,6 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
59
58
  }
60
59
  );
61
60
  function play(options) {
62
- props.debug && console.log("play", options);
63
61
  if (!props.accessToken) {
64
62
  errorMsg = `params 'accessToken' is not found`;
65
63
  } else {
@@ -87,7 +85,6 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
87
85
  calculatedHeight = height.value;
88
86
  calculatedWidth = calculatedHeight * ratio;
89
87
  }
90
- props.debug && console.log("playerInstance", playerInstance);
91
88
  if (playerInstance == null ? void 0 : playerInstance.resize) {
92
89
  playerInstance.resize(calculatedWidth, calculatedHeight);
93
90
  } else {
@@ -112,29 +109,18 @@ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
112
109
  // @ts-ignore
113
110
  loggerOptions: {
114
111
  name: "YSPLAYER",
115
- level: props.debug ? "INFO" : "ERROR",
112
+ level: "ERROR",
116
113
  showTime: true
117
114
  },
118
115
  staticPath: "/plugins/ezuikit/ezuikit_static",
119
116
  ...options
120
117
  });
121
- playerInstance.eventEmitter.on("fullscreen", (args) => {
122
- props.debug && console.log("fullscreen", args);
118
+ playerInstance.eventEmitter.on("fullscreen", () => {
123
119
  isCurrentFullscreen = true;
124
120
  });
125
- playerInstance.eventEmitter.on("exitFullscreen", (args) => {
126
- props.debug && console.log("exitFullscreen", args);
121
+ playerInstance.eventEmitter.on("exitFullscreen", () => {
127
122
  isCurrentFullscreen = false;
128
123
  });
129
- playerInstance.eventEmitter.on("destroy", (args) => {
130
- props.debug && console.log("destroy", args);
131
- });
132
- playerInstance.eventEmitter.on("init", (args) => {
133
- props.debug && console.log("init", args);
134
- });
135
- playerInstance.eventEmitter.on("play", (args) => {
136
- props.debug && console.log("play", args);
137
- });
138
124
  playerInstance.eventEmitter.on("videoInfo", (args) => {
139
125
  const { width: w, height: h } = args;
140
126
  if (w && h) {
@@ -1 +1 @@
1
- {"version":3,"file":"ysPlayer.vue2.js","sources":["../../../../../../../packages/components/live-player/src/ysPlayer.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import { useElementSize } from '@vueuse/core';\n import EZUIKit from 'ezuikit-js';\n import { nextTick, onBeforeUnmount, onMounted, shallowRef, watch } from 'vue';\n import { uuid } from './live-player';\n // 萤石云播放器\n defineOptions({\n name: 'YsPlayer',\n });\n\n // 传值方式\n // 1、传url、accessToken\n // 2、传deviceSerial、channel、accessToken\n const props = defineProps<{\n // 播放地址\n // 高清:ezopen://open.ys7.com/${设备序列号}/${通道号}.hd.live\n // 流畅:ezopen://open.ys7.com/${设备序列号}/${通道号}.live\n url?: string;\n // 设备序列号\n deviceSerial?: string;\n // 通道号\n channel?: number;\n // 清晰度,默认为空,也表示高清\n // hd:高清;sd:流畅\n quality?: 'hd' | 'sd' | '';\n accessToken: string;\n debug?: boolean;\n // 播放器模板ID\n playerTemplate?: string;\n }>();\n\n // 播放器模板ID\n // 可在萤石云控制台查看、修改、获取\n // 位置:云直播-轻应用-特致珈默认模板\n const PLAYER_TEMPLATE = '5f295a9341a74d439b5d69374c90d501';\n const id = uuid();\n let playerInstance: any = null;\n let errorMsg = '';\n const ysRef = shallowRef();\n const { width, height } = useElementSize(ysRef);\n let ratio = 16 / 9;\n let isCurrentFullscreen = false;\n\n onMounted(() => play());\n\n onBeforeUnmount(() => destroy());\n\n defineExpose({ play, destroy, resize });\n\n // 防抖函数\n function debounce(func: Function, wait: number) {\n let timeout: ReturnType<typeof setTimeout> | null = null;\n return function (this: any, ...args: any[]) {\n if (timeout) clearTimeout(timeout);\n timeout = setTimeout(() => func.apply(this, args), wait);\n };\n }\n\n // 加上防抖的 resize 函数\n const debouncedResize = debounce(resize, 300);\n\n watch(\n () => [width.value, height.value, ratio],\n () => {\n if (!isCurrentFullscreen) {\n debouncedResize();\n }\n },\n );\n\n function play(options?: Record<string, any>) {\n props.debug && console.log('play', options);\n if (!props.accessToken) {\n errorMsg = `params 'accessToken' is not found`;\n } else {\n const url = formatterUrl();\n if (url) {\n createPlayerDom();\n nextTick(() => createPlayer(options));\n }\n }\n }\n function destroy() {\n if (playerInstance) {\n playerInstance.destroy();\n playerInstance = null;\n removePlayerDom();\n }\n }\n function resize() {\n // 根据播放器宽高比,设置播放器高度\n if (width.value > 0 && height.value > 0) {\n let calculatedWidth = width.value;\n let calculatedHeight = calculatedWidth / ratio;\n if (calculatedHeight > height.value) {\n calculatedHeight = height.value;\n calculatedWidth = calculatedHeight * ratio;\n }\n props.debug && console.log('playerInstance', playerInstance);\n if (playerInstance?.resize) {\n playerInstance.resize(calculatedWidth, calculatedHeight);\n } else {\n const dom = document.getElementById(id);\n if (dom) {\n dom.style.width = `${calculatedWidth}px`;\n dom.style.height = `${calculatedHeight}px`;\n }\n }\n }\n }\n\n /**\n * 创建萤石云播放器实例,播放萤石云直播流\n */\n function createPlayer(options?: Record<string, any>) {\n playerInstance = new EZUIKit.EZUIKitPlayer({\n id,\n url: formatterUrl(),\n accessToken: props.accessToken,\n template: props.playerTemplate || PLAYER_TEMPLATE,\n width: width.value,\n height: height.value,\n audio: 1,\n // @ts-ignore\n loggerOptions: {\n name: 'YSPLAYER',\n level: props.debug ? 'INFO' : 'ERROR',\n showTime: true,\n },\n staticPath: '/plugins/ezuikit/ezuikit_static',\n ...options,\n });\n\n playerInstance.eventEmitter.on('fullscreen', (args: any) => {\n props.debug && console.log('fullscreen', args);\n isCurrentFullscreen = true;\n });\n playerInstance.eventEmitter.on('exitFullscreen', (args: any) => {\n props.debug && console.log('exitFullscreen', args);\n isCurrentFullscreen = false;\n });\n playerInstance.eventEmitter.on('destroy', (args: any) => {\n props.debug && console.log('destroy', args);\n });\n playerInstance.eventEmitter.on('init', (args: any) => {\n props.debug && console.log('init', args);\n });\n playerInstance.eventEmitter.on('play', (args: any) => {\n props.debug && console.log('play', args);\n });\n playerInstance.eventEmitter.on('videoInfo', (args: any) => {\n const { width: w, height: h } = args;\n // 计算播放器宽高比\n if (w && h) {\n ratio = w / h;\n }\n });\n }\n\n function formatterUrl(): string {\n if (props.url) {\n return props.url;\n } else {\n if (props.deviceSerial && props.channel) {\n const quality = props.quality === '' || props.quality === 'hd' ? 'hd.' : '';\n return `ezopen://open.ys7.com/${props.deviceSerial}/${props.channel}.${quality}live`;\n } else {\n errorMsg = `params 'deviceSerial' or 'channel' is not found`;\n return '';\n }\n }\n }\n\n // 移除播放器DOM\n function removePlayerDom() {\n const dom = document.getElementById(id);\n dom && dom.remove();\n }\n // 创建播放器DOM\n function createPlayerDom() {\n if (!errorMsg) {\n removePlayerDom();\n const dom = document.createElement('div');\n dom.id = id;\n dom.style.width = '100%';\n dom.style.height = '100%';\n ysRef.value?.appendChild(dom);\n }\n }\n</script>\n\n<template>\n <div ref=\"ysRef\" class=\"i-player-bg i-player-container\">\n <div v-if=\"errorMsg\" class=\"i-player__error\" style=\"color: red; font-weight: bold\">\n {{ errorMsg }}\n </div>\n </div>\n</template>\n"],"names":["uuid","shallowRef","useElementSize","onMounted","onBeforeUnmount","watch","nextTick"],"mappings":"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"}
1
+ {"version":3,"file":"ysPlayer.vue2.js","sources":["../../../../../../../packages/components/live-player/src/ysPlayer.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import { useElementSize } from '@vueuse/core';\n import EZUIKit from 'ezuikit-js';\n import { nextTick, onBeforeUnmount, onMounted, shallowRef, watch } from 'vue';\n import { uuid } from './live-player';\n // 萤石云播放器\n defineOptions({\n name: 'YsPlayer',\n });\n\n // 传值方式\n // 1、传url、accessToken\n // 2、传deviceSerial、channel、accessToken\n const props = defineProps<{\n // 播放地址\n // 高清:ezopen://open.ys7.com/${设备序列号}/${通道号}.hd.live\n // 流畅:ezopen://open.ys7.com/${设备序列号}/${通道号}.live\n url?: string;\n // 设备序列号\n deviceSerial?: string;\n // 通道号\n channel?: number;\n // 清晰度,默认为空,也表示高清\n // hd:高清;sd:流畅\n quality?: 'hd' | 'sd' | '';\n accessToken: string;\n // 播放器模板ID\n playerTemplate?: string;\n }>();\n\n // 播放器模板ID\n // 可在萤石云控制台查看、修改、获取\n // 位置:云直播-轻应用-特致珈默认模板\n const PLAYER_TEMPLATE = '5f295a9341a74d439b5d69374c90d501';\n const id = uuid();\n let playerInstance: any = null;\n let errorMsg = '';\n const ysRef = shallowRef();\n const { width, height } = useElementSize(ysRef);\n let ratio = 16 / 9;\n let isCurrentFullscreen = false;\n\n onMounted(() => play());\n\n onBeforeUnmount(() => destroy());\n\n defineExpose({ play, destroy, resize });\n\n // 防抖函数\n function debounce(func: Function, wait: number) {\n let timeout: ReturnType<typeof setTimeout> | null = null;\n return function (this: any, ...args: any[]) {\n if (timeout) clearTimeout(timeout);\n timeout = setTimeout(() => func.apply(this, args), wait);\n };\n }\n\n // 加上防抖的 resize 函数\n const debouncedResize = debounce(resize, 300);\n\n watch(\n () => [width.value, height.value, ratio],\n () => {\n if (!isCurrentFullscreen) {\n debouncedResize();\n }\n },\n );\n\n function play(options?: Record<string, any>) {\n if (!props.accessToken) {\n errorMsg = `params 'accessToken' is not found`;\n } else {\n const url = formatterUrl();\n if (url) {\n createPlayerDom();\n nextTick(() => createPlayer(options));\n }\n }\n }\n function destroy() {\n if (playerInstance) {\n playerInstance.destroy();\n playerInstance = null;\n removePlayerDom();\n }\n }\n function resize() {\n // 根据播放器宽高比,设置播放器高度\n if (width.value > 0 && height.value > 0) {\n let calculatedWidth = width.value;\n let calculatedHeight = calculatedWidth / ratio;\n if (calculatedHeight > height.value) {\n calculatedHeight = height.value;\n calculatedWidth = calculatedHeight * ratio;\n }\n if (playerInstance?.resize) {\n playerInstance.resize(calculatedWidth, calculatedHeight);\n } else {\n const dom = document.getElementById(id);\n if (dom) {\n dom.style.width = `${calculatedWidth}px`;\n dom.style.height = `${calculatedHeight}px`;\n }\n }\n }\n }\n\n /**\n * 创建萤石云播放器实例,播放萤石云直播流\n */\n function createPlayer(options?: Record<string, any>) {\n playerInstance = new EZUIKit.EZUIKitPlayer({\n id,\n url: formatterUrl(),\n accessToken: props.accessToken,\n template: props.playerTemplate || PLAYER_TEMPLATE,\n width: width.value,\n height: height.value,\n audio: 1,\n // @ts-ignore\n loggerOptions: {\n name: 'YSPLAYER',\n level: 'ERROR',\n showTime: true,\n },\n staticPath: '/plugins/ezuikit/ezuikit_static',\n ...options,\n });\n\n playerInstance.eventEmitter.on('fullscreen', () => {\n isCurrentFullscreen = true;\n });\n playerInstance.eventEmitter.on('exitFullscreen', () => {\n isCurrentFullscreen = false;\n });\n playerInstance.eventEmitter.on('videoInfo', (args: any) => {\n const { width: w, height: h } = args;\n // 计算播放器宽高比\n if (w && h) {\n ratio = w / h;\n }\n });\n }\n\n function formatterUrl(): string {\n if (props.url) {\n return props.url;\n } else {\n if (props.deviceSerial && props.channel) {\n const quality = props.quality === '' || props.quality === 'hd' ? 'hd.' : '';\n return `ezopen://open.ys7.com/${props.deviceSerial}/${props.channel}.${quality}live`;\n } else {\n errorMsg = `params 'deviceSerial' or 'channel' is not found`;\n return '';\n }\n }\n }\n\n // 移除播放器DOM\n function removePlayerDom() {\n const dom = document.getElementById(id);\n dom && dom.remove();\n }\n // 创建播放器DOM\n function createPlayerDom() {\n if (!errorMsg) {\n removePlayerDom();\n const dom = document.createElement('div');\n dom.id = id;\n dom.style.width = '100%';\n dom.style.height = '100%';\n ysRef.value?.appendChild(dom);\n }\n }\n</script>\n\n<template>\n <div ref=\"ysRef\" class=\"i-player-bg i-player-container\">\n <div v-if=\"errorMsg\" class=\"i-player__error\" style=\"color: red; font-weight: bold\">\n {{ errorMsg }}\n </div>\n </div>\n</template>\n"],"names":["uuid","shallowRef","useElementSize","onMounted","onBeforeUnmount","watch","nextTick"],"mappings":"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"}
@@ -800,7 +800,6 @@ export declare const ISelect: import("../../types").SFCWithInstall<import("vue")
800
800
  disabled: boolean;
801
801
  placeholder: string;
802
802
  clearable: boolean;
803
- loadingText: string;
804
803
  multiple: boolean;
805
804
  valueKey: string;
806
805
  collapseTags: boolean;
@@ -816,5 +815,6 @@ export declare const ISelect: import("../../types").SFCWithInstall<import("vue")
816
815
  persistent: boolean;
817
816
  fitInputWidth: boolean;
818
817
  placement: "left" | "bottom" | "right" | "top" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "left-start" | "left-end" | "right-start" | "right-end";
818
+ loadingText: string;
819
819
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
820
820
  export default ISelect;
@@ -800,7 +800,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
800
800
  disabled: boolean;
801
801
  placeholder: string;
802
802
  clearable: boolean;
803
- loadingText: string;
804
803
  multiple: boolean;
805
804
  valueKey: string;
806
805
  collapseTags: boolean;
@@ -816,5 +815,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
816
815
  persistent: boolean;
817
816
  fitInputWidth: boolean;
818
817
  placement: "left" | "bottom" | "right" | "top" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "left-start" | "left-end" | "right-start" | "right-end";
818
+ loadingText: string;
819
819
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
820
820
  export default _default;
@@ -0,0 +1,36 @@
1
+ export declare const ITzjPlayer: import("../../types").SFCWithInstall<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ url: {
3
+ type: StringConstructor;
4
+ default: string;
5
+ };
6
+ accessToken: {
7
+ type: StringConstructor;
8
+ default: string;
9
+ };
10
+ }>, {
11
+ props: import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
12
+ url: {
13
+ type: StringConstructor;
14
+ default: string;
15
+ };
16
+ accessToken: {
17
+ type: StringConstructor;
18
+ default: string;
19
+ };
20
+ }>> & Readonly<{}> & {}>;
21
+ comp: import("vue").ShallowRef<any, any>;
22
+ compRef: import("vue").ShallowRef<any, any>;
23
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
24
+ url: {
25
+ type: StringConstructor;
26
+ default: string;
27
+ };
28
+ accessToken: {
29
+ type: StringConstructor;
30
+ default: string;
31
+ };
32
+ }>> & Readonly<{}>, {
33
+ url: string;
34
+ accessToken: string;
35
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
36
+ export default ITzjPlayer;
@@ -0,0 +1,14 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ require('../../utils/index.js');
6
+ require('./src/tzj-player.vue.js');
7
+ var install = require('../../utils/install.js');
8
+ var tzjPlayer_vue_vue_type_script_setup_true_lang = require('./src/tzj-player.vue2.js');
9
+
10
+ const ITzjPlayer = install.withInstall(tzjPlayer_vue_vue_type_script_setup_true_lang.default);
11
+
12
+ exports.ITzjPlayer = ITzjPlayer;
13
+ exports.default = ITzjPlayer;
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../../packages/components/tzj-player/index.ts"],"sourcesContent":["import { withInstall } from '../../utils';\nimport TzjPlayer from './src/tzj-player.vue';\n\nexport const ITzjPlayer = withInstall(TzjPlayer); // 增加类型\n\nexport default ITzjPlayer;\n"],"names":["withInstall","TzjPlayer"],"mappings":";;;;;;;;;AAGa,MAAA,UAAA,GAAaA,oBAAYC,qDAAS;;;;;"}
@@ -0,0 +1,21 @@
1
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ url: {
3
+ type: StringConstructor;
4
+ required: true;
5
+ };
6
+ }>, {
7
+ props: any;
8
+ player: any;
9
+ playerRef: import("vue").ShallowRef<HTMLElement | undefined, HTMLElement | undefined>;
10
+ playSuccess: import("vue").Ref<boolean, boolean>;
11
+ playUrl: import("vue").Ref<string, string>;
12
+ createPlayer: () => Promise<void>;
13
+ destroy: () => void;
14
+ play: (url?: string) => void;
15
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
16
+ url: {
17
+ type: StringConstructor;
18
+ required: true;
19
+ };
20
+ }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
21
+ export default _default;
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var easyPlayer_vue_vue_type_script_setup_true_lang = require('./easyPlayer.vue2.js');
6
+
7
+
8
+
9
+ exports.default = easyPlayer_vue_vue_type_script_setup_true_lang.default;
10
+ //# sourceMappingURL=easyPlayer.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"easyPlayer.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
@@ -0,0 +1,124 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var vue = require('vue');
6
+
7
+ var __defProp = Object.defineProperty;
8
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
9
+ const _hoisted_1 = { class: "i-tzj-player" };
10
+ const _hoisted_2 = {
11
+ key: 0,
12
+ class: "i-tzj-player__error"
13
+ };
14
+ const _hoisted_3 = {
15
+ key: 1,
16
+ class: "i-tzj-player__error"
17
+ };
18
+ var _sfc_main = /* @__PURE__ */ vue.defineComponent({
19
+ ...{
20
+ name: "EasyPlayer"
21
+ },
22
+ __name: "easyPlayer",
23
+ props: {
24
+ url: {}
25
+ },
26
+ setup(__props, { expose: __expose }) {
27
+ const props = __props;
28
+ let player = null;
29
+ const playerRef = vue.shallowRef();
30
+ const playSuccess = vue.ref(true);
31
+ const playUrl = vue.ref("");
32
+ vue.onMounted(() => {
33
+ if (props.url) {
34
+ playUrl.value = props.url;
35
+ createPlayer();
36
+ }
37
+ });
38
+ vue.watch(
39
+ () => props.url,
40
+ (newUrl) => {
41
+ if (newUrl) {
42
+ playUrl.value = newUrl;
43
+ createPlayer();
44
+ } else {
45
+ playUrl.value = "";
46
+ destroy();
47
+ }
48
+ }
49
+ );
50
+ vue.onBeforeUnmount(() => {
51
+ playUrl.value = "";
52
+ destroy();
53
+ });
54
+ __expose({
55
+ play,
56
+ destroy
57
+ });
58
+ async function createPlayer() {
59
+ destroy();
60
+ await vue.nextTick();
61
+ player = new window.EasyPlayerPro(playerRef.value, {
62
+ isLive: true,
63
+ // 是否直播
64
+ hasAudio: true,
65
+ // 是否解析音频
66
+ bufferTime: 0.2,
67
+ // 缓存时长
68
+ stretch: true,
69
+ // 加视频拉伸
70
+ MSE: false,
71
+ WCS: false,
72
+ WASM: true,
73
+ debug: false,
74
+ operateBtns: {
75
+ performance: false
76
+ }
77
+ });
78
+ player.on("timeout", () => {
79
+ playSuccess.value = false;
80
+ destroy();
81
+ });
82
+ player.on("error", () => {
83
+ playSuccess.value = false;
84
+ destroy();
85
+ });
86
+ play(props.url);
87
+ }
88
+ __name(createPlayer, "createPlayer");
89
+ function destroy() {
90
+ if (player) {
91
+ player.destroy();
92
+ player = null;
93
+ }
94
+ }
95
+ __name(destroy, "destroy");
96
+ function play(url) {
97
+ if (player && (url || props.url)) {
98
+ playUrl.value = url || props.url;
99
+ player.play(playUrl.value);
100
+ }
101
+ }
102
+ __name(play, "play");
103
+ return (_ctx, _cache) => {
104
+ return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
105
+ vue.createElementVNode(
106
+ "div",
107
+ {
108
+ ref_key: "playerRef",
109
+ ref: playerRef,
110
+ class: "i-tzj-player-content"
111
+ },
112
+ null,
113
+ 512
114
+ /* NEED_PATCH */
115
+ ),
116
+ !playSuccess.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2, "\u65E0\u4FE1\u53F7")) : vue.createCommentVNode("v-if", true),
117
+ !playUrl.value ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_3, "\u65E0\u64AD\u653E\u5730\u5740")) : vue.createCommentVNode("v-if", true)
118
+ ]);
119
+ };
120
+ }
121
+ });
122
+
123
+ exports.default = _sfc_main;
124
+ //# sourceMappingURL=easyPlayer.vue2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"easyPlayer.vue2.js","sources":["../../../../../../../packages/components/tzj-player/src/easyPlayer.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import { nextTick, onBeforeUnmount, onMounted, ref, shallowRef, watch } from 'vue';\n\n defineOptions({\n name: 'EasyPlayer',\n });\n\n const props = defineProps<{\n url: string;\n }>();\n\n let player: any = null;\n const playerRef = shallowRef<HTMLElement>();\n const playSuccess = ref(true);\n const playUrl = ref('');\n\n onMounted(() => {\n if (props.url) {\n playUrl.value = props.url;\n createPlayer();\n }\n });\n\n watch(\n () => props.url,\n newUrl => {\n if (newUrl) {\n playUrl.value = newUrl;\n createPlayer();\n } else {\n playUrl.value = '';\n destroy();\n }\n },\n );\n\n onBeforeUnmount(() => {\n playUrl.value = '';\n destroy();\n });\n\n defineExpose({\n play,\n destroy,\n });\n\n async function createPlayer() {\n destroy();\n await nextTick();\n player = new window.EasyPlayerPro(playerRef.value, {\n isLive: true, // 是否直播\n hasAudio: true, // 是否解析音频\n bufferTime: 0.2, // 缓存时长\n stretch: true, // 加视频拉伸\n MSE: false,\n WCS: false,\n WASM: true,\n debug: false,\n operateBtns: {\n performance: false,\n },\n });\n\n // 加载超时\n player.on('timeout', () => {\n playSuccess.value = false;\n destroy();\n });\n // 播放异常\n player.on('error', () => {\n playSuccess.value = false;\n destroy();\n });\n play(props.url);\n }\n\n function destroy() {\n if (player) {\n player.destroy();\n player = null;\n }\n }\n\n function play(url?: string) {\n if (player && (url || props.url)) {\n playUrl.value = url || props.url;\n player.play(playUrl.value);\n }\n }\n</script>\n\n<template>\n <div class=\"i-tzj-player\">\n <div ref=\"playerRef\" class=\"i-tzj-player-content\" />\n\n <div v-if=\"!playSuccess\" class=\"i-tzj-player__error\">无信号</div>\n <div v-if=\"!playUrl\" class=\"i-tzj-player__error\">无播放地址</div>\n </div>\n</template>\n"],"names":["shallowRef","ref","onMounted","watch","onBeforeUnmount","nextTick"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAOE,IAAA,MAAM,KAAQ,GAAA,OAAA;AAId,IAAA,IAAI,MAAc,GAAA,IAAA;AAClB,IAAA,MAAM,YAAYA,cAAwB,EAAA;AAC1C,IAAM,MAAA,WAAA,GAAcC,QAAI,IAAI,CAAA;AAC5B,IAAM,MAAA,OAAA,GAAUA,QAAI,EAAE,CAAA;AAEtB,IAAAC,aAAA,CAAU,MAAM;AACd,MAAA,IAAI,MAAM,GAAK,EAAA;AACb,QAAA,OAAA,CAAQ,QAAQ,KAAM,CAAA,GAAA;AACtB,QAAa,YAAA,EAAA;AAAA;AACf,KACD,CAAA;AAED,IAAAC,SAAA;AAAA,MACE,MAAM,KAAM,CAAA,GAAA;AAAA,MACZ,CAAU,MAAA,KAAA;AACR,QAAA,IAAI,MAAQ,EAAA;AACV,UAAA,OAAA,CAAQ,KAAQ,GAAA,MAAA;AAChB,UAAa,YAAA,EAAA;AAAA,SACR,MAAA;AACL,UAAA,OAAA,CAAQ,KAAQ,GAAA,EAAA;AAChB,UAAQ,OAAA,EAAA;AAAA;AACV;AACF,KACF;AAEA,IAAAC,mBAAA,CAAgB,MAAM;AACpB,MAAA,OAAA,CAAQ,KAAQ,GAAA,EAAA;AAChB,MAAQ,OAAA,EAAA;AAAA,KACT,CAAA;AAED,IAAa,QAAA,CAAA;AAAA,MACX,IAAA;AAAA,MACA;AAAA,KACD,CAAA;AAED,IAAA,eAAe,YAAe,GAAA;AAC5B,MAAQ,OAAA,EAAA;AACR,MAAA,MAAMC,YAAS,EAAA;AACf,MAAA,MAAA,GAAS,IAAI,MAAA,CAAO,aAAc,CAAA,SAAA,CAAU,KAAO,EAAA;AAAA,QACjD,MAAQ,EAAA,IAAA;AAAA;AAAA,QACR,QAAU,EAAA,IAAA;AAAA;AAAA,QACV,UAAY,EAAA,GAAA;AAAA;AAAA,QACZ,OAAS,EAAA,IAAA;AAAA;AAAA,QACT,GAAK,EAAA,KAAA;AAAA,QACL,GAAK,EAAA,KAAA;AAAA,QACL,IAAM,EAAA,IAAA;AAAA,QACN,KAAO,EAAA,KAAA;AAAA,QACP,WAAa,EAAA;AAAA,UACX,WAAa,EAAA;AAAA;AACf,OACD,CAAA;AAGD,MAAO,MAAA,CAAA,EAAA,CAAG,WAAW,MAAM;AACzB,QAAA,WAAA,CAAY,KAAQ,GAAA,KAAA;AACpB,QAAQ,OAAA,EAAA;AAAA,OACT,CAAA;AAED,MAAO,MAAA,CAAA,EAAA,CAAG,SAAS,MAAM;AACvB,QAAA,WAAA,CAAY,KAAQ,GAAA,KAAA;AACpB,QAAQ,OAAA,EAAA;AAAA,OACT,CAAA;AACD,MAAA,IAAA,CAAK,MAAM,GAAG,CAAA;AAAA;AA3BD,IAAA,MAAA,CAAA,YAAA,EAAA,cAAA,CAAA;AA8Bf,IAAA,SAAS,OAAU,GAAA;AACjB,MAAA,IAAI,MAAQ,EAAA;AACV,QAAA,MAAA,CAAO,OAAQ,EAAA;AACf,QAAS,MAAA,GAAA,IAAA;AAAA;AACX;AAJO,IAAA,MAAA,CAAA,OAAA,EAAA,SAAA,CAAA;AAOT,IAAA,SAAS,KAAK,GAAc,EAAA;AAC1B,MAAI,IAAA,MAAA,KAAW,GAAO,IAAA,KAAA,CAAM,GAAM,CAAA,EAAA;AAChC,QAAQ,OAAA,CAAA,KAAA,GAAQ,OAAO,KAAM,CAAA,GAAA;AAC7B,QAAO,MAAA,CAAA,IAAA,CAAK,QAAQ,KAAK,CAAA;AAAA;AAC3B;AAJO,IAAA,MAAA,CAAA,IAAA,EAAA,MAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,15 @@
1
+ import type { ExtractPropTypes } from 'vue';
2
+ import type TzjPlayer from './tzj-player.vue';
3
+ export declare const TzjPlayerProps: {
4
+ url: {
5
+ type: StringConstructor;
6
+ default: string;
7
+ };
8
+ accessToken: {
9
+ type: StringConstructor;
10
+ default: string;
11
+ };
12
+ };
13
+ export declare function uuid(): string;
14
+ export type TzjPlayerPropsType = ExtractPropTypes<typeof TzjPlayerProps>;
15
+ export type TzjPlayerInstance = InstanceType<typeof TzjPlayer>;
@@ -0,0 +1,26 @@
1
+ 'use strict';
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
5
+ const TzjPlayerProps = {
6
+ url: {
7
+ type: String,
8
+ default: ""
9
+ },
10
+ accessToken: {
11
+ type: String,
12
+ default: ""
13
+ }
14
+ };
15
+ function uuid() {
16
+ return "xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx".replace(/[xy]/g, (c) => {
17
+ const r = Math.random() * 16 | 0;
18
+ const v = c === "x" ? r : r & 3 | 8;
19
+ return v.toString(16);
20
+ });
21
+ }
22
+ __name(uuid, "uuid");
23
+
24
+ exports.TzjPlayerProps = TzjPlayerProps;
25
+ exports.uuid = uuid;
26
+ //# sourceMappingURL=tzj-player.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tzj-player.js","sources":["../../../../../../../packages/components/tzj-player/src/tzj-player.ts"],"sourcesContent":["import type { ExtractPropTypes } from 'vue';\nimport type TzjPlayer from './tzj-player.vue';\n\nexport const TzjPlayerProps = {\n url: {\n type: String,\n default: '',\n },\n accessToken: {\n type: String,\n default: '',\n },\n};\n\nexport function uuid(): string {\n return 'xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx'.replace(/[xy]/g, c => {\n const r = (Math.random() * 16) | 0;\n const v = c === 'x' ? r : (r & 0x3) | 0x8;\n return v.toString(16);\n });\n}\n\nexport type TzjPlayerPropsType = ExtractPropTypes<typeof TzjPlayerProps>;\nexport type TzjPlayerInstance = InstanceType<typeof TzjPlayer>;\n"],"names":[],"mappings":";;;;AAGO,MAAM,cAAiB,GAAA;AAAA,EAC5B,GAAK,EAAA;AAAA,IACH,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA;AAAA,GACX;AAAA,EACA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA;AAAA;AAEb;AAEO,SAAS,IAAe,GAAA;AAC7B,EAAO,OAAA,kCAAA,CAAmC,OAAQ,CAAA,OAAA,EAAS,CAAK,CAAA,KAAA;AAC9D,IAAA,MAAM,CAAK,GAAA,IAAA,CAAK,MAAO,EAAA,GAAI,EAAM,GAAA,CAAA;AACjC,IAAA,MAAM,CAAI,GAAA,CAAA,KAAM,GAAM,GAAA,CAAA,GAAK,IAAI,CAAO,GAAA,CAAA;AACtC,IAAO,OAAA,CAAA,CAAE,SAAS,EAAE,CAAA;AAAA,GACrB,CAAA;AACH;AANgB,MAAA,CAAA,IAAA,EAAA,MAAA,CAAA;;;;;"}
@@ -0,0 +1,36 @@
1
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ url: {
3
+ type: StringConstructor;
4
+ default: string;
5
+ };
6
+ accessToken: {
7
+ type: StringConstructor;
8
+ default: string;
9
+ };
10
+ }>, {
11
+ props: import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
12
+ url: {
13
+ type: StringConstructor;
14
+ default: string;
15
+ };
16
+ accessToken: {
17
+ type: StringConstructor;
18
+ default: string;
19
+ };
20
+ }>> & Readonly<{}> & {}>;
21
+ comp: import("vue").ShallowRef<any, any>;
22
+ compRef: import("vue").ShallowRef<any, any>;
23
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
24
+ url: {
25
+ type: StringConstructor;
26
+ default: string;
27
+ };
28
+ accessToken: {
29
+ type: StringConstructor;
30
+ default: string;
31
+ };
32
+ }>> & Readonly<{}>, {
33
+ url: string;
34
+ accessToken: string;
35
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
36
+ export default _default;
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var tzjPlayer_vue_vue_type_script_setup_true_lang = require('./tzj-player.vue2.js');
6
+
7
+
8
+
9
+ exports.default = tzjPlayer_vue_vue_type_script_setup_true_lang.default;
10
+ //# sourceMappingURL=tzj-player.vue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tzj-player.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}