@yimou6/common-ui 1.6.1 → 1.6.2

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 (56) hide show
  1. package/cdn/index.cdn.js +8 -8
  2. package/cdn/index.cdn.js.map +1 -1
  3. package/cdn/index.cdn.mjs +11 -11
  4. package/cdn/index.cdn.mjs.map +1 -1
  5. package/cdn/index.css +1 -1
  6. package/es/components/live-player/index.d.ts +15 -3
  7. package/es/components/live-player/src/live-player.d.ts +5 -0
  8. package/es/components/live-player/src/live-player.mjs +13 -1
  9. package/es/components/live-player/src/live-player.mjs.map +1 -1
  10. package/es/components/live-player/src/live-player.vue.d.ts +15 -3
  11. package/es/components/live-player/src/live-player.vue2.mjs +32 -85
  12. package/es/components/live-player/src/live-player.vue2.mjs.map +1 -1
  13. package/es/components/live-player/src/xgPlayer.vue.d.ts +29 -0
  14. package/es/components/live-player/src/xgPlayer.vue.mjs +6 -0
  15. package/es/components/live-player/src/xgPlayer.vue.mjs.map +1 -0
  16. package/es/components/live-player/src/xgPlayer.vue2.mjs +108 -0
  17. package/es/components/live-player/src/xgPlayer.vue2.mjs.map +1 -0
  18. package/es/components/live-player/src/ysPlayer.vue.d.ts +73 -0
  19. package/es/components/live-player/src/ysPlayer.vue.mjs +6 -0
  20. package/es/components/live-player/src/ysPlayer.vue.mjs.map +1 -0
  21. package/es/components/live-player/src/ysPlayer.vue2.mjs +172 -0
  22. package/es/components/live-player/src/ysPlayer.vue2.mjs.map +1 -0
  23. package/es/components/tenant-enterprise/index.d.ts +13 -0
  24. package/es/components/tenant-enterprise/src/tenant-enterprise.d.ts +4 -0
  25. package/es/components/tenant-enterprise/src/tenant-enterprise.mjs +4 -0
  26. package/es/components/tenant-enterprise/src/tenant-enterprise.mjs.map +1 -1
  27. package/es/components/tenant-enterprise/src/tenant-enterprise.vue.d.ts +13 -0
  28. package/es/components/tenant-enterprise/src/tenant-enterprise.vue2.mjs +2 -2
  29. package/es/components/tenant-enterprise/src/tenant-enterprise.vue2.mjs.map +1 -1
  30. package/lib/components/live-player/index.d.ts +15 -3
  31. package/lib/components/live-player/src/live-player.d.ts +5 -0
  32. package/lib/components/live-player/src/live-player.js +13 -0
  33. package/lib/components/live-player/src/live-player.js.map +1 -1
  34. package/lib/components/live-player/src/live-player.vue.d.ts +15 -3
  35. package/lib/components/live-player/src/live-player.vue2.js +30 -83
  36. package/lib/components/live-player/src/live-player.vue2.js.map +1 -1
  37. package/lib/components/live-player/src/xgPlayer.vue.d.ts +29 -0
  38. package/lib/components/live-player/src/xgPlayer.vue.js +10 -0
  39. package/lib/components/live-player/src/xgPlayer.vue.js.map +1 -0
  40. package/lib/components/live-player/src/xgPlayer.vue2.js +112 -0
  41. package/lib/components/live-player/src/xgPlayer.vue2.js.map +1 -0
  42. package/lib/components/live-player/src/ysPlayer.vue.d.ts +73 -0
  43. package/lib/components/live-player/src/ysPlayer.vue.js +10 -0
  44. package/lib/components/live-player/src/ysPlayer.vue.js.map +1 -0
  45. package/lib/components/live-player/src/ysPlayer.vue2.js +176 -0
  46. package/lib/components/live-player/src/ysPlayer.vue2.js.map +1 -0
  47. package/lib/components/tenant-enterprise/index.d.ts +13 -0
  48. package/lib/components/tenant-enterprise/src/tenant-enterprise.d.ts +4 -0
  49. package/lib/components/tenant-enterprise/src/tenant-enterprise.js +4 -0
  50. package/lib/components/tenant-enterprise/src/tenant-enterprise.js.map +1 -1
  51. package/lib/components/tenant-enterprise/src/tenant-enterprise.vue.d.ts +13 -0
  52. package/lib/components/tenant-enterprise/src/tenant-enterprise.vue2.js +2 -2
  53. package/lib/components/tenant-enterprise/src/tenant-enterprise.vue2.js.map +1 -1
  54. package/package.json +5 -2
  55. package/theme-default/i-live-player.css +1 -1
  56. package/theme-default/index.css +1 -1
@@ -0,0 +1,108 @@
1
+ import { defineComponent, shallowRef, onMounted, nextTick, openBlock, createElementBlock, createElementVNode } from 'vue';
2
+ import Player from 'xgplayer';
3
+ import FlvPlugin from 'xgplayer-flv';
4
+ import HlsPlugin from 'xgplayer-hls';
5
+ import { videoType } from './live-player.mjs';
6
+ import { customLang, onLineIgnores, recordIgnores } from './preset.mjs';
7
+
8
+ var __defProp = Object.defineProperty;
9
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
10
+ const _hoisted_1 = { class: "i-player-bg i-player-container" };
11
+ var _sfc_main = /* @__PURE__ */ defineComponent({
12
+ ...{
13
+ name: "XgPlayer"
14
+ },
15
+ __name: "xgPlayer",
16
+ props: {
17
+ url: {},
18
+ onLine: { type: Boolean }
19
+ },
20
+ setup(__props, { expose: __expose }) {
21
+ const props = __props;
22
+ const playerRef = shallowRef();
23
+ let playerInstance = null;
24
+ onMounted(() => {
25
+ Player.I18N.extend([customLang]);
26
+ play();
27
+ });
28
+ __expose({ play, destroy });
29
+ function play(options) {
30
+ destroy();
31
+ nextTick(() => {
32
+ createXgPlayer(options);
33
+ });
34
+ }
35
+ __name(play, "play");
36
+ function destroy() {
37
+ if (playerInstance) {
38
+ playerInstance == null ? void 0 : playerInstance.destroy();
39
+ playerInstance = null;
40
+ }
41
+ }
42
+ __name(destroy, "destroy");
43
+ function createXgPlayer(options) {
44
+ const plugins = [];
45
+ const type = videoType(props.url);
46
+ try {
47
+ if (type === "flv") {
48
+ if (FlvPlugin.isSupported()) {
49
+ plugins.push(FlvPlugin);
50
+ }
51
+ } else if (type === "hls") {
52
+ const videoElement = document.createElement("video");
53
+ const isNativeHlsSupported = videoElement.canPlayType("application/vnd.apple.mpegurl");
54
+ if (!isNativeHlsSupported && HlsPlugin.isSupported()) {
55
+ plugins.push(HlsPlugin);
56
+ }
57
+ } else {
58
+ console.warn(`Unsupported type: ${type}. Please use 'flv' or 'hls'.`);
59
+ }
60
+ } catch (error) {
61
+ console.error("Error occurred while checking plugin support:", error);
62
+ }
63
+ const ignores = props.onLine ? onLineIgnores : recordIgnores;
64
+ playerInstance = new Player({
65
+ el: playerRef.value,
66
+ url: props.url,
67
+ height: "100%",
68
+ width: "100%",
69
+ plugins,
70
+ ignores,
71
+ autoplayMuted: true,
72
+ marginControls: true,
73
+ screenShot: props.onLine,
74
+ autoplay: true,
75
+ lang: "zh-cn",
76
+ videoAttributes: {
77
+ crossOrigin: "anonymous"
78
+ },
79
+ ...options
80
+ });
81
+ playerInstance.getPlugin("error").useHooks("errorRetry", () => {
82
+ playerInstance.config.url = props.url;
83
+ playerInstance.resetState();
84
+ playerInstance.play();
85
+ return false;
86
+ });
87
+ }
88
+ __name(createXgPlayer, "createXgPlayer");
89
+ return (_ctx, _cache) => {
90
+ return openBlock(), createElementBlock("div", _hoisted_1, [
91
+ createElementVNode(
92
+ "div",
93
+ {
94
+ ref_key: "playerRef",
95
+ ref: playerRef,
96
+ class: "i-player-container"
97
+ },
98
+ null,
99
+ 512
100
+ /* NEED_PATCH */
101
+ )
102
+ ]);
103
+ };
104
+ }
105
+ });
106
+
107
+ export { _sfc_main as default };
108
+ //# sourceMappingURL=xgPlayer.vue2.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xgPlayer.vue2.mjs","sources":["../../../../../../../packages/components/live-player/src/xgPlayer.vue"],"sourcesContent":["<script setup lang=\"ts\">\n import { nextTick, onMounted, shallowRef } from 'vue';\n import Player from 'xgplayer';\n import FlvPlugin from 'xgplayer-flv';\n import HlsPlugin from 'xgplayer-hls';\n import { videoType } from './live-player';\n import { customLang, onLineIgnores, recordIgnores } from './preset';\n defineOptions({\n name: 'XgPlayer',\n });\n\n const props = defineProps<{\n url: string;\n onLine?: boolean;\n }>();\n\n const playerRef = shallowRef();\n let playerInstance: any = null;\n\n onMounted(() => {\n // @ts-ignore\n Player.I18N.extend([customLang]);\n play();\n });\n\n defineExpose({ play, destroy });\n\n function play(options?: Record<string, any>) {\n destroy();\n nextTick(() => {\n createXgPlayer(options);\n });\n }\n function destroy() {\n if (playerInstance) {\n playerInstance?.destroy();\n playerInstance = null;\n }\n }\n\n /**\n * 创建西瓜播放器实例,播放hls,flv流\n */\n function createXgPlayer(options?: Record<string, any>) {\n const plugins: any[] = [];\n const type = videoType(props.url);\n try {\n if (type === 'flv') {\n if (FlvPlugin.isSupported()) {\n plugins.push(FlvPlugin);\n }\n } else if (type === 'hls') {\n const videoElement = document.createElement('video');\n const isNativeHlsSupported = videoElement.canPlayType('application/vnd.apple.mpegurl');\n\n if (!isNativeHlsSupported && HlsPlugin.isSupported()) {\n plugins.push(HlsPlugin);\n }\n } else {\n console.warn(`Unsupported type: ${type}. Please use 'flv' or 'hls'.`);\n }\n } catch (error) {\n console.error('Error occurred while checking plugin support:', error);\n }\n\n const ignores = props.onLine ? onLineIgnores : recordIgnores;\n\n playerInstance = new Player({\n el: playerRef.value,\n url: props.url,\n height: '100%',\n width: '100%',\n plugins,\n ignores,\n autoplayMuted: true,\n marginControls: true,\n screenShot: props.onLine,\n autoplay: true,\n lang: 'zh-cn',\n videoAttributes: {\n crossOrigin: 'anonymous',\n },\n ...options,\n });\n\n playerInstance.getPlugin('error').useHooks('errorRetry', () => {\n playerInstance.config.url = props.url;\n playerInstance.resetState();\n playerInstance.play();\n return false;\n });\n }\n</script>\n\n<template>\n <div class=\"i-player-bg i-player-container\">\n <div ref=\"playerRef\" class=\"i-player-container\" />\n </div>\n</template>\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,73 @@
1
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ url: {
3
+ type: StringConstructor;
4
+ required: false;
5
+ };
6
+ deviceSerial: {
7
+ type: StringConstructor;
8
+ required: false;
9
+ };
10
+ channel: {
11
+ type: NumberConstructor;
12
+ required: false;
13
+ };
14
+ quality: {
15
+ type: StringConstructor;
16
+ required: false;
17
+ };
18
+ accessToken: {
19
+ type: StringConstructor;
20
+ required: true;
21
+ };
22
+ debug: {
23
+ type: BooleanConstructor;
24
+ required: false;
25
+ };
26
+ }>, {
27
+ props: any;
28
+ PLAYER_TEMPLATE: string;
29
+ id: string;
30
+ playerInstance: any;
31
+ errorMsg: string;
32
+ ysRef: import("vue").ShallowRef<any, any>;
33
+ width: import("vue").Ref<number, number>;
34
+ height: import("vue").Ref<number, number>;
35
+ ratio: number;
36
+ debounce: (func: Function, wait: number) => (this: any, ...args: any[]) => void;
37
+ debouncedResize: (this: any, ...args: any[]) => void;
38
+ play: (options?: Record<string, any>) => void;
39
+ destroy: () => void;
40
+ resize: () => void;
41
+ createPlayer: (options?: Record<string, any>) => void;
42
+ formatterUrl: () => string;
43
+ removePlayerDom: () => void;
44
+ createPlayerDom: () => void;
45
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
46
+ url: {
47
+ type: StringConstructor;
48
+ required: false;
49
+ };
50
+ deviceSerial: {
51
+ type: StringConstructor;
52
+ required: false;
53
+ };
54
+ channel: {
55
+ type: NumberConstructor;
56
+ required: false;
57
+ };
58
+ quality: {
59
+ type: StringConstructor;
60
+ required: false;
61
+ };
62
+ accessToken: {
63
+ type: StringConstructor;
64
+ required: true;
65
+ };
66
+ debug: {
67
+ type: BooleanConstructor;
68
+ required: false;
69
+ };
70
+ }>> & Readonly<{}>, {
71
+ debug: boolean;
72
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
73
+ export default _default;
@@ -0,0 +1,6 @@
1
+ import _sfc_main from './ysPlayer.vue2.mjs';
2
+
3
+
4
+
5
+ export { _sfc_main as default };
6
+ //# sourceMappingURL=ysPlayer.vue.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ysPlayer.vue.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,172 @@
1
+ import { defineComponent, shallowRef, onMounted, watch, nextTick, openBlock, createElementBlock, unref, toDisplayString, createCommentVNode } from 'vue';
2
+ import { useElementSize } from '@vueuse/core';
3
+ import EZUIKit from 'ezuikit-js';
4
+ import { uuid } from './live-player.mjs';
5
+
6
+ var __defProp = Object.defineProperty;
7
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
8
+ const _hoisted_1 = {
9
+ key: 0,
10
+ class: "i-player__error"
11
+ };
12
+ const PLAYER_TEMPLATE = "5f295a9341a74d439b5d69374c90d501";
13
+ var _sfc_main = /* @__PURE__ */ defineComponent({
14
+ ...{
15
+ name: "YsPlayer"
16
+ },
17
+ __name: "ysPlayer",
18
+ props: {
19
+ url: {},
20
+ deviceSerial: {},
21
+ channel: {},
22
+ quality: {},
23
+ accessToken: {},
24
+ debug: { type: Boolean }
25
+ },
26
+ setup(__props, { expose: __expose }) {
27
+ const props = __props;
28
+ const id = uuid();
29
+ let playerInstance = null;
30
+ let errorMsg = "";
31
+ const ysRef = shallowRef();
32
+ const { width, height } = useElementSize(ysRef);
33
+ let ratio = 16 / 9;
34
+ onMounted(() => play());
35
+ __expose({ play, destroy, resize });
36
+ function debounce(func, wait) {
37
+ let timeout = null;
38
+ return function(...args) {
39
+ if (timeout) clearTimeout(timeout);
40
+ timeout = setTimeout(() => func.apply(this, args), wait);
41
+ };
42
+ }
43
+ __name(debounce, "debounce");
44
+ const debouncedResize = debounce(resize, 300);
45
+ watch(
46
+ () => [width.value, height.value, ratio],
47
+ () => debouncedResize()
48
+ );
49
+ function play(options) {
50
+ props.debug && console.log("play", options);
51
+ if (!props.accessToken) {
52
+ errorMsg = `params 'accessToken' is not fount`;
53
+ } else {
54
+ const url = formatterUrl();
55
+ if (url) {
56
+ createPlayerDom();
57
+ nextTick(() => createPlayer(options));
58
+ }
59
+ }
60
+ }
61
+ __name(play, "play");
62
+ function destroy() {
63
+ if (playerInstance) {
64
+ playerInstance.destroy();
65
+ playerInstance = null;
66
+ removePlayerDom();
67
+ }
68
+ }
69
+ __name(destroy, "destroy");
70
+ function resize() {
71
+ if (width.value > 0 && height.value > 0) {
72
+ let calculatedWidth = width.value;
73
+ let calculatedHeight = calculatedWidth / ratio;
74
+ if (calculatedHeight > height.value) {
75
+ calculatedHeight = height.value;
76
+ calculatedWidth = calculatedHeight * ratio;
77
+ }
78
+ playerInstance == null ? void 0 : playerInstance.resize(calculatedWidth, calculatedHeight);
79
+ }
80
+ }
81
+ __name(resize, "resize");
82
+ function createPlayer(options) {
83
+ playerInstance = new EZUIKit.EZUIKitPlayer({
84
+ id,
85
+ url: formatterUrl(),
86
+ accessToken: props.accessToken,
87
+ template: PLAYER_TEMPLATE,
88
+ width: width.value,
89
+ height: height.value,
90
+ audio: 1,
91
+ // @ts-ignore
92
+ loggerOptions: {
93
+ name: "YSPLAYER",
94
+ level: "ERROR",
95
+ showTime: true
96
+ },
97
+ ...options
98
+ });
99
+ playerInstance.eventEmitter.on("destroy", (args) => {
100
+ props.debug && console.log("destroy", args);
101
+ });
102
+ playerInstance.eventEmitter.on("init", (args) => {
103
+ props.debug && console.log("init", args);
104
+ });
105
+ playerInstance.eventEmitter.on("play", (args) => {
106
+ props.debug && console.log("play", args);
107
+ });
108
+ playerInstance.eventEmitter.on("videoInfo", (args) => {
109
+ const { width: w, height: h } = args;
110
+ if (w && h) {
111
+ ratio = w / h;
112
+ }
113
+ });
114
+ }
115
+ __name(createPlayer, "createPlayer");
116
+ function formatterUrl() {
117
+ if (props.url) {
118
+ return props.url;
119
+ } else {
120
+ if (props.deviceSerial && props.channel) {
121
+ const quality = props.quality === "" || props.quality === "hd" ? "hd." : "";
122
+ return `ezopen://open.ys7.com/${props.deviceSerial}/${props.channel}.${quality}live`;
123
+ } else {
124
+ errorMsg = `params 'deviceSerial' or 'channel' is not fount`;
125
+ return "";
126
+ }
127
+ }
128
+ }
129
+ __name(formatterUrl, "formatterUrl");
130
+ function removePlayerDom() {
131
+ const dom = document.getElementById(id);
132
+ dom && dom.remove();
133
+ }
134
+ __name(removePlayerDom, "removePlayerDom");
135
+ function createPlayerDom() {
136
+ var _a;
137
+ if (!errorMsg) {
138
+ removePlayerDom();
139
+ const dom = document.createElement("div");
140
+ dom.id = id;
141
+ dom.style.width = "100%";
142
+ dom.style.height = "100%";
143
+ (_a = ysRef.value) == null ? void 0 : _a.appendChild(dom);
144
+ }
145
+ }
146
+ __name(createPlayerDom, "createPlayerDom");
147
+ return (_ctx, _cache) => {
148
+ return openBlock(), createElementBlock(
149
+ "div",
150
+ {
151
+ ref_key: "ysRef",
152
+ ref: ysRef,
153
+ class: "i-player-bg i-player-container"
154
+ },
155
+ [
156
+ unref(errorMsg) ? (openBlock(), createElementBlock(
157
+ "div",
158
+ _hoisted_1,
159
+ toDisplayString(unref(errorMsg)),
160
+ 1
161
+ /* TEXT */
162
+ )) : createCommentVNode("v-if", true)
163
+ ],
164
+ 512
165
+ /* NEED_PATCH */
166
+ );
167
+ };
168
+ }
169
+ });
170
+
171
+ export { _sfc_main as default };
172
+ //# sourceMappingURL=ysPlayer.vue2.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ysPlayer.vue2.mjs","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, 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 }>();\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\n onMounted(() => play());\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 () => debouncedResize(),\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 fount`;\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 playerInstance?.resize(calculatedWidth, calculatedHeight);\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: 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 ...options,\n });\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 fount`;\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\">{{ errorMsg }}</div>\n </div>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;AAgCE,MAAM,eAAkB,GAAA,kCAAA;;;;;;;;;;;;;;;AAnBxB,IAAA,MAAM,KAAQ,GAAA,OAAA;AAoBd,IAAA,MAAM,KAAK,IAAK,EAAA;AAChB,IAAA,IAAI,cAAsB,GAAA,IAAA;AAC1B,IAAA,IAAI,QAAW,GAAA,EAAA;AACf,IAAA,MAAM,QAAQ,UAAW,EAAA;AACzB,IAAA,MAAM,EAAE,KAAA,EAAO,MAAO,EAAA,GAAI,eAAe,KAAK,CAAA;AAC9C,IAAA,IAAI,QAAQ,EAAK,GAAA,CAAA;AAEjB,IAAU,SAAA,CAAA,MAAM,MAAM,CAAA;AAEtB,IAAA,QAAA,CAAa,EAAE,IAAA,EAAM,OAAS,EAAA,MAAA,EAAQ,CAAA;AAGtC,IAAS,SAAA,QAAA,CAAS,MAAgB,IAAc,EAAA;AAC9C,MAAA,IAAI,OAAgD,GAAA,IAAA;AACpD,MAAA,OAAO,YAAwB,IAAa,EAAA;AAC1C,QAAI,IAAA,OAAA,eAAsB,OAAO,CAAA;AACjC,QAAA,OAAA,GAAU,WAAW,MAAM,IAAA,CAAK,MAAM,IAAM,EAAA,IAAI,GAAG,IAAI,CAAA;AAAA,OACzD;AAAA;AALO,IAAA,MAAA,CAAA,QAAA,EAAA,UAAA,CAAA;AAST,IAAM,MAAA,eAAA,GAAkB,QAAS,CAAA,MAAA,EAAQ,GAAG,CAAA;AAE5C,IAAA,KAAA;AAAA,MACE,MAAM,CAAC,KAAA,CAAM,KAAO,EAAA,MAAA,CAAO,OAAO,KAAK,CAAA;AAAA,MACvC,MAAM,eAAgB;AAAA,KACxB;AAEA,IAAA,SAAS,KAAK,OAA+B,EAAA;AAC3C,MAAA,KAAA,CAAM,KAAS,IAAA,OAAA,CAAQ,GAAI,CAAA,MAAA,EAAQ,OAAO,CAAA;AAC1C,MAAI,IAAA,CAAC,MAAM,WAAa,EAAA;AACtB,QAAW,QAAA,GAAA,CAAA,iCAAA,CAAA;AAAA,OACN,MAAA;AACL,QAAA,MAAM,MAAM,YAAa,EAAA;AACzB,QAAA,IAAI,GAAK,EAAA;AACP,UAAgB,eAAA,EAAA;AAChB,UAAS,QAAA,CAAA,MAAM,YAAa,CAAA,OAAO,CAAC,CAAA;AAAA;AACtC;AACF;AAVO,IAAA,MAAA,CAAA,IAAA,EAAA,MAAA,CAAA;AAYT,IAAA,SAAS,OAAU,GAAA;AACjB,MAAA,IAAI,cAAgB,EAAA;AAClB,QAAA,cAAA,CAAe,OAAQ,EAAA;AACvB,QAAiB,cAAA,GAAA,IAAA;AACjB,QAAgB,eAAA,EAAA;AAAA;AAClB;AALO,IAAA,MAAA,CAAA,OAAA,EAAA,SAAA,CAAA;AAOT,IAAA,SAAS,MAAS,GAAA;AAEhB,MAAA,IAAI,KAAM,CAAA,KAAA,GAAQ,CAAK,IAAA,MAAA,CAAO,QAAQ,CAAG,EAAA;AACvC,QAAA,IAAI,kBAAkB,KAAM,CAAA,KAAA;AAC5B,QAAA,IAAI,mBAAmB,eAAkB,GAAA,KAAA;AACzC,QAAI,IAAA,gBAAA,GAAmB,OAAO,KAAO,EAAA;AACnC,UAAA,gBAAA,GAAmB,MAAO,CAAA,KAAA;AAC1B,UAAA,eAAA,GAAkB,gBAAmB,GAAA,KAAA;AAAA;AAEvC,QAAA,cAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,cAAA,CAAgB,OAAO,eAAiB,EAAA,gBAAA,CAAA;AAAA;AAC1C;AAVO,IAAA,MAAA,CAAA,MAAA,EAAA,QAAA,CAAA;AAgBT,IAAA,SAAS,aAAa,OAA+B,EAAA;AACnD,MAAiB,cAAA,GAAA,IAAI,QAAQ,aAAc,CAAA;AAAA,QACzC,EAAA;AAAA,QACA,KAAK,YAAa,EAAA;AAAA,QAClB,aAAa,KAAM,CAAA,WAAA;AAAA,QACnB,QAAU,EAAA,eAAA;AAAA,QACV,OAAO,KAAM,CAAA,KAAA;AAAA,QACb,QAAQ,MAAO,CAAA,KAAA;AAAA,QACf,KAAO,EAAA,CAAA;AAAA;AAAA,QAEP,aAAe,EAAA;AAAA,UACb,IAAM,EAAA,UAAA;AAAA,UACN,KAAO,EAAA,OAAA;AAAA,UACP,QAAU,EAAA;AAAA,SACZ;AAAA,QACA,GAAG;AAAA,OACJ,CAAA;AAED,MAAA,cAAA,CAAe,YAAa,CAAA,EAAA,CAAG,SAAW,EAAA,CAAC,IAAc,KAAA;AACvD,QAAA,KAAA,CAAM,KAAS,IAAA,OAAA,CAAQ,GAAI,CAAA,SAAA,EAAW,IAAI,CAAA;AAAA,OAC3C,CAAA;AACD,MAAA,cAAA,CAAe,YAAa,CAAA,EAAA,CAAG,MAAQ,EAAA,CAAC,IAAc,KAAA;AACpD,QAAA,KAAA,CAAM,KAAS,IAAA,OAAA,CAAQ,GAAI,CAAA,MAAA,EAAQ,IAAI,CAAA;AAAA,OACxC,CAAA;AACD,MAAA,cAAA,CAAe,YAAa,CAAA,EAAA,CAAG,MAAQ,EAAA,CAAC,IAAc,KAAA;AACpD,QAAA,KAAA,CAAM,KAAS,IAAA,OAAA,CAAQ,GAAI,CAAA,MAAA,EAAQ,IAAI,CAAA;AAAA,OACxC,CAAA;AACD,MAAA,cAAA,CAAe,YAAa,CAAA,EAAA,CAAG,WAAa,EAAA,CAAC,IAAc,KAAA;AACzD,QAAA,MAAM,EAAE,KAAA,EAAO,CAAG,EAAA,MAAA,EAAQ,GAAM,GAAA,IAAA;AAEhC,QAAA,IAAI,KAAK,CAAG,EAAA;AACV,UAAA,KAAA,GAAQ,CAAI,GAAA,CAAA;AAAA;AACd,OACD,CAAA;AAAA;AAjCM,IAAA,MAAA,CAAA,YAAA,EAAA,cAAA,CAAA;AAoCT,IAAA,SAAS,YAAuB,GAAA;AAC9B,MAAA,IAAI,MAAM,GAAK,EAAA;AACb,QAAA,OAAO,KAAM,CAAA,GAAA;AAAA,OACR,MAAA;AACL,QAAI,IAAA,KAAA,CAAM,YAAgB,IAAA,KAAA,CAAM,OAAS,EAAA;AACvC,UAAA,MAAM,UAAU,KAAM,CAAA,OAAA,KAAY,MAAM,KAAM,CAAA,OAAA,KAAY,OAAO,KAAQ,GAAA,EAAA;AACzE,UAAA,OAAO,yBAAyB,KAAM,CAAA,YAAY,IAAI,KAAM,CAAA,OAAO,IAAI,OAAO,CAAA,IAAA,CAAA;AAAA,SACzE,MAAA;AACL,UAAW,QAAA,GAAA,CAAA,+CAAA,CAAA;AACX,UAAO,OAAA,EAAA;AAAA;AACT;AACF;AAXO,IAAA,MAAA,CAAA,YAAA,EAAA,cAAA,CAAA;AAeT,IAAA,SAAS,eAAkB,GAAA;AACzB,MAAM,MAAA,GAAA,GAAM,QAAS,CAAA,cAAA,CAAe,EAAE,CAAA;AACtC,MAAA,GAAA,IAAO,IAAI,MAAO,EAAA;AAAA;AAFX,IAAA,MAAA,CAAA,eAAA,EAAA,iBAAA,CAAA;AAKT,IAAA,SAAS,eAAkB,GAAA;;AACzB,MAAA,IAAI,CAAC,QAAU,EAAA;AACb,QAAgB,eAAA,EAAA;AAChB,QAAM,MAAA,GAAA,GAAM,QAAS,CAAA,aAAA,CAAc,KAAK,CAAA;AACxC,QAAA,GAAA,CAAI,EAAK,GAAA,EAAA;AACT,QAAA,GAAA,CAAI,MAAM,KAAQ,GAAA,MAAA;AAClB,QAAA,GAAA,CAAI,MAAM,MAAS,GAAA,MAAA;AACnB,QAAM,CAAA,EAAA,GAAA,KAAA,CAAA,KAAA,KAAN,mBAAa,WAAY,CAAA,GAAA,CAAA;AAAA;AAC3B;AARO,IAAA,MAAA,CAAA,eAAA,EAAA,iBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -16,6 +16,10 @@ export declare const ITenantEnterprise: import("../../types").SFCWithInstall<imp
16
16
  type: BooleanConstructor;
17
17
  default: boolean;
18
18
  };
19
+ popperClass: {
20
+ type: StringConstructor;
21
+ default: string;
22
+ };
19
23
  action: ObjectConstructor;
20
24
  }>, {
21
25
  props: import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
@@ -35,6 +39,10 @@ export declare const ITenantEnterprise: import("../../types").SFCWithInstall<imp
35
39
  type: BooleanConstructor;
36
40
  default: boolean;
37
41
  };
42
+ popperClass: {
43
+ type: StringConstructor;
44
+ default: string;
45
+ };
38
46
  action: ObjectConstructor;
39
47
  }>> & Readonly<{
40
48
  onChange?: ((value: import("./src/tenant-enterprise").TenantEnterpriseChangeValueType) => any) | undefined;
@@ -1332,6 +1340,10 @@ export declare const ITenantEnterprise: import("../../types").SFCWithInstall<imp
1332
1340
  type: BooleanConstructor;
1333
1341
  default: boolean;
1334
1342
  };
1343
+ popperClass: {
1344
+ type: StringConstructor;
1345
+ default: string;
1346
+ };
1335
1347
  action: ObjectConstructor;
1336
1348
  }>> & Readonly<{
1337
1349
  onChange?: ((value: import("./src/tenant-enterprise").TenantEnterpriseChangeValueType) => any) | undefined;
@@ -1339,6 +1351,7 @@ export declare const ITenantEnterprise: import("../../types").SFCWithInstall<imp
1339
1351
  label: string;
1340
1352
  data: any[];
1341
1353
  multiple: boolean;
1354
+ popperClass: string;
1342
1355
  showLabel: boolean;
1343
1356
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
1344
1357
  export default ITenantEnterprise;
@@ -17,6 +17,10 @@ export declare const TenantEnterpriseProps: {
17
17
  type: BooleanConstructor;
18
18
  default: boolean;
19
19
  };
20
+ popperClass: {
21
+ type: StringConstructor;
22
+ default: string;
23
+ };
20
24
  action: ObjectConstructor;
21
25
  };
22
26
  export interface TenantEnterpriseItem {
@@ -17,6 +17,10 @@ const TenantEnterpriseProps = {
17
17
  type: Boolean,
18
18
  default: true
19
19
  },
20
+ popperClass: {
21
+ type: String,
22
+ default: ""
23
+ },
20
24
  /**
21
25
  * pinia window.microApp.getData()
22
26
  */
@@ -1 +1 @@
1
- {"version":3,"file":"tenant-enterprise.mjs","sources":["../../../../../../../packages/components/tenant-enterprise/src/tenant-enterprise.ts"],"sourcesContent":["import type { ExtractPropTypes, PropType } from 'vue';\nimport type TenantEnterprise from './tenant-enterprise.vue';\n\nexport const TenantEnterpriseProps = {\n label: {\n type: String,\n default: '当前单位',\n },\n showLabel: {\n type: Boolean,\n default: true,\n },\n data: {\n type: Array as PropType<any[]>,\n default: () => [],\n },\n multiple: {\n type: Boolean,\n default: true,\n },\n /**\n * pinia window.microApp.getData()\n */\n action: Object,\n};\n\nexport interface TenantEnterpriseItem {\n name: string;\n enterpriseId: number | string;\n tenantId: number | string;\n}\nexport interface TenantEnterpriseChangeValueType {\n arr: TenantEnterpriseItem[];\n obj: TenantEnterpriseItem;\n}\n\nexport const TenantEnterpriseEmits = {\n change: (value: TenantEnterpriseChangeValueType) => value,\n};\n\nexport type TenantEnterprisePropsType = ExtractPropTypes<typeof TenantEnterpriseProps>;\nexport type TenantEnterpriseInstance = InstanceType<typeof TenantEnterprise>;\n"],"names":[],"mappings":";;AAGO,MAAM,qBAAwB,GAAA;AAAA,EACnC,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA;AAAA,GACX;AAAA,EACA,SAAW,EAAA;AAAA,IACT,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA;AAAA,GACX;AAAA,EACA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,KAAA;AAAA,IACN,OAAA,kBAAe,MAAA,CAAA,MAAA,EAAN,EAAA,SAAA;AAAA,GACX;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,MAAQ,EAAA;AACV;AAYO,MAAM,qBAAwB,GAAA;AAAA,EACnC,MAAA,kBAAS,MAAA,CAAA,CAAA,KAAA,KAA2C,KAA5C,EAAA,QAAA;AACV;;;;"}
1
+ {"version":3,"file":"tenant-enterprise.mjs","sources":["../../../../../../../packages/components/tenant-enterprise/src/tenant-enterprise.ts"],"sourcesContent":["import type { ExtractPropTypes, PropType } from 'vue';\nimport type TenantEnterprise from './tenant-enterprise.vue';\n\nexport const TenantEnterpriseProps = {\n label: {\n type: String,\n default: '当前单位',\n },\n showLabel: {\n type: Boolean,\n default: true,\n },\n data: {\n type: Array as PropType<any[]>,\n default: () => [],\n },\n multiple: {\n type: Boolean,\n default: true,\n },\n popperClass: {\n type: String,\n default: '',\n },\n /**\n * pinia window.microApp.getData()\n */\n action: Object,\n};\n\nexport interface TenantEnterpriseItem {\n name: string;\n enterpriseId: number | string;\n tenantId: number | string;\n}\nexport interface TenantEnterpriseChangeValueType {\n arr: TenantEnterpriseItem[];\n obj: TenantEnterpriseItem;\n}\n\nexport const TenantEnterpriseEmits = {\n change: (value: TenantEnterpriseChangeValueType) => value,\n};\n\nexport type TenantEnterprisePropsType = ExtractPropTypes<typeof TenantEnterpriseProps>;\nexport type TenantEnterpriseInstance = InstanceType<typeof TenantEnterprise>;\n"],"names":[],"mappings":";;AAGO,MAAM,qBAAwB,GAAA;AAAA,EACnC,KAAO,EAAA;AAAA,IACL,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA;AAAA,GACX;AAAA,EACA,SAAW,EAAA;AAAA,IACT,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA;AAAA,GACX;AAAA,EACA,IAAM,EAAA;AAAA,IACJ,IAAM,EAAA,KAAA;AAAA,IACN,OAAA,kBAAe,MAAA,CAAA,MAAA,EAAN,EAAA,SAAA;AAAA,GACX;AAAA,EACA,QAAU,EAAA;AAAA,IACR,IAAM,EAAA,OAAA;AAAA,IACN,OAAS,EAAA;AAAA,GACX;AAAA,EACA,WAAa,EAAA;AAAA,IACX,IAAM,EAAA,MAAA;AAAA,IACN,OAAS,EAAA;AAAA,GACX;AAAA;AAAA;AAAA;AAAA,EAIA,MAAQ,EAAA;AACV;AAYO,MAAM,qBAAwB,GAAA;AAAA,EACnC,MAAA,kBAAS,MAAA,CAAA,CAAA,KAAA,KAA2C,KAA5C,EAAA,QAAA;AACV;;;;"}
@@ -15,6 +15,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
15
15
  type: BooleanConstructor;
16
16
  default: boolean;
17
17
  };
18
+ popperClass: {
19
+ type: StringConstructor;
20
+ default: string;
21
+ };
18
22
  action: ObjectConstructor;
19
23
  }>, {
20
24
  props: import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
@@ -34,6 +38,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
34
38
  type: BooleanConstructor;
35
39
  default: boolean;
36
40
  };
41
+ popperClass: {
42
+ type: StringConstructor;
43
+ default: string;
44
+ };
37
45
  action: ObjectConstructor;
38
46
  }>> & Readonly<{
39
47
  onChange?: ((value: import("./tenant-enterprise").TenantEnterpriseChangeValueType) => any) | undefined;
@@ -1331,6 +1339,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
1331
1339
  type: BooleanConstructor;
1332
1340
  default: boolean;
1333
1341
  };
1342
+ popperClass: {
1343
+ type: StringConstructor;
1344
+ default: string;
1345
+ };
1334
1346
  action: ObjectConstructor;
1335
1347
  }>> & Readonly<{
1336
1348
  onChange?: ((value: import("./tenant-enterprise").TenantEnterpriseChangeValueType) => any) | undefined;
@@ -1338,6 +1350,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
1338
1350
  label: string;
1339
1351
  data: any[];
1340
1352
  multiple: boolean;
1353
+ popperClass: string;
1341
1354
  showLabel: boolean;
1342
1355
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
1343
1356
  export default _default;
@@ -356,7 +356,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
356
356
  clearable: false,
357
357
  style: { "width": "240px" },
358
358
  placement: "bottom-end",
359
- "popper-class": "tenant-enterprise-popper",
359
+ "popper-class": `tenant-enterprise-popper ${_ctx.popperClass}`,
360
360
  onVisibleChange: handleVisibleChange
361
361
  }, {
362
362
  empty: withCtx(() => [
@@ -428,7 +428,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
428
428
  ]),
429
429
  _: 1
430
430
  /* STABLE */
431
- }, 8, ["modelValue", "multiple"])
431
+ }, 8, ["modelValue", "multiple", "popper-class"])
432
432
  ],
433
433
  512
434
434
  /* NEED_PATCH */