@tencentcloud/roomkit-electron-vue3 2.3.3 → 2.4.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 (106) hide show
  1. package/es/components/ManageMember/MemberControl/index.vue.mjs +1 -1
  2. package/es/components/ManageMember/MemberControl/index.vue2.mjs +5 -4
  3. package/es/components/ManageMember/MemberControl/useMemberControlHooks.mjs +19 -4
  4. package/es/components/ManageMember/useIndexHooks.mjs +2 -1
  5. package/es/components/RoomFooter/ApplyControl/MemberApplyControl.vue.mjs +1 -1
  6. package/es/components/RoomFooter/ApplyControl/MemberApplyControl.vue2.mjs +2 -2
  7. package/es/components/RoomFooter/VirtualBackground.vue.mjs +1 -1
  8. package/es/components/RoomFooter/VirtualBackground.vue2.mjs +87 -27
  9. package/es/components/RoomFooter/index/index.vue.mjs +1 -1
  10. package/es/components/RoomFooter/index/index.vue2.mjs +0 -2
  11. package/es/components/RoomHeader/RoomInfo/useRoomInfoHooks.mjs +2 -2
  12. package/es/components/RoomHeader/index/LayoutControl.vue.mjs +1 -1
  13. package/es/components/RoomHeader/index/LayoutControl.vue2.mjs +1 -3
  14. package/es/components/RoomHeader/index/NetworkInfo.vue.mjs +1 -1
  15. package/es/components/RoomHeader/index/NetworkInfo.vue2.mjs +0 -2
  16. package/es/components/common/base/MessageBox/index.mjs +3 -1
  17. package/es/conference.d.ts +1 -1
  18. package/es/conference.vue.mjs +1 -1
  19. package/es/conference.vue2.mjs +1 -14
  20. package/es/constants/room.d.ts +3 -1
  21. package/es/extension/RoomMessageCard/RoomMessageCard.vue.mjs +1 -1
  22. package/es/extension/RoomMessageCard/RoomMessageCard.vue2.mjs +2 -2
  23. package/es/extension/chatExtension.mjs +1 -1
  24. package/es/hooks/useDeviceManager.d.ts +3 -1
  25. package/es/hooks/useMasterApplyControl.mjs +16 -10
  26. package/es/hooks/useRoomEngine.d.ts +3 -1
  27. package/es/index.d.ts +2 -1
  28. package/es/index.mjs +1494 -1437
  29. package/es/locales/en-US.d.ts +8 -7
  30. package/es/locales/en-US.mjs +8 -7
  31. package/es/locales/zh-CN.d.ts +10 -9
  32. package/es/locales/zh-CN.mjs +10 -9
  33. package/es/services/function/virtualBackground.d.ts +2 -0
  34. package/es/services/function/virtualBackground.mjs +19 -9
  35. package/es/services/function/waterMark.mjs +3 -0
  36. package/es/services/manager/componentManager.mjs +1 -1
  37. package/es/services/manager/roomActionManager.mjs +1 -1
  38. package/es/services/roomService.d.ts +3 -2
  39. package/es/stores/room.mjs +9 -1
  40. package/lib/components/ManageMember/MemberControl/index.vue.js +1 -1
  41. package/lib/components/ManageMember/MemberControl/index.vue2.js +4 -3
  42. package/lib/components/ManageMember/MemberControl/useMemberControlHooks.js +19 -4
  43. package/lib/components/ManageMember/useIndexHooks.js +2 -1
  44. package/lib/components/RoomFooter/ApplyControl/MemberApplyControl.vue.js +1 -1
  45. package/lib/components/RoomFooter/ApplyControl/MemberApplyControl.vue2.js +2 -2
  46. package/lib/components/RoomFooter/VirtualBackground.vue.js +1 -1
  47. package/lib/components/RoomFooter/VirtualBackground.vue2.js +86 -26
  48. package/lib/components/RoomFooter/index/index.vue.js +1 -1
  49. package/lib/components/RoomFooter/index/index.vue2.js +0 -2
  50. package/lib/components/RoomHeader/RoomInfo/useRoomInfoHooks.js +2 -2
  51. package/lib/components/RoomHeader/index/LayoutControl.vue.js +1 -1
  52. package/lib/components/RoomHeader/index/LayoutControl.vue2.js +1 -3
  53. package/lib/components/RoomHeader/index/NetworkInfo.vue.js +1 -1
  54. package/lib/components/RoomHeader/index/NetworkInfo.vue2.js +0 -2
  55. package/lib/components/common/base/MessageBox/index.js +3 -1
  56. package/lib/conference.d.ts +1 -1
  57. package/lib/conference.vue.js +1 -1
  58. package/lib/conference.vue2.js +10 -23
  59. package/lib/constants/room.d.ts +3 -1
  60. package/lib/extension/RoomMessageCard/RoomMessageCard.vue.js +1 -1
  61. package/lib/extension/RoomMessageCard/RoomMessageCard.vue2.js +2 -2
  62. package/lib/extension/chatExtension.js +1 -1
  63. package/lib/hooks/useDeviceManager.d.ts +3 -1
  64. package/lib/hooks/useMasterApplyControl.js +16 -10
  65. package/lib/hooks/useRoomEngine.d.ts +3 -1
  66. package/lib/index.d.ts +2 -1
  67. package/lib/index.js +1493 -1436
  68. package/lib/locales/en-US.d.ts +8 -7
  69. package/lib/locales/en-US.js +8 -7
  70. package/lib/locales/zh-CN.d.ts +10 -9
  71. package/lib/locales/zh-CN.js +10 -9
  72. package/lib/services/function/virtualBackground.d.ts +2 -0
  73. package/lib/services/function/virtualBackground.js +19 -9
  74. package/lib/services/function/waterMark.js +3 -0
  75. package/lib/services/manager/componentManager.js +1 -1
  76. package/lib/services/manager/roomActionManager.js +1 -1
  77. package/lib/services/roomService.d.ts +3 -2
  78. package/lib/stores/room.js +9 -1
  79. package/package.json +2 -2
  80. package/src/TUIRoom/assets/style/global.scss +1 -1
  81. package/src/TUIRoom/components/ManageMember/MemberControl/index.vue +5 -4
  82. package/src/TUIRoom/components/ManageMember/MemberControl/useMemberControlHooks.ts +20 -5
  83. package/src/TUIRoom/components/ManageMember/useIndexHooks.ts +3 -2
  84. package/src/TUIRoom/components/RoomFooter/ApplyControl/MemberApplyControl.vue +2 -2
  85. package/src/TUIRoom/components/RoomFooter/VirtualBackground.vue +100 -16
  86. package/src/TUIRoom/components/RoomFooter/index/index.vue +0 -3
  87. package/src/TUIRoom/components/RoomHeader/RoomInfo/useRoomInfoHooks.ts +2 -2
  88. package/src/TUIRoom/components/RoomHeader/index/LayoutControl.vue +0 -2
  89. package/src/TUIRoom/components/RoomHeader/index/NetworkInfo.vue +0 -2
  90. package/src/TUIRoom/components/common/base/MessageBox/index.ts +2 -1
  91. package/src/TUIRoom/conference.vue +6 -13
  92. package/src/TUIRoom/extension/RoomMessageCard/RoomMessageCard.vue +1 -1
  93. package/src/TUIRoom/extension/chatExtension.ts +1 -1
  94. package/src/TUIRoom/hooks/useMasterApplyControl.ts +15 -10
  95. package/src/TUIRoom/index.ts +2 -1
  96. package/src/TUIRoom/locales/en-US.ts +8 -7
  97. package/src/TUIRoom/locales/zh-CN.ts +10 -9
  98. package/src/TUIRoom/services/function/virtualBackground.ts +21 -9
  99. package/src/TUIRoom/services/function/waterMark.ts +6 -0
  100. package/src/TUIRoom/services/manager/componentManager.ts +1 -1
  101. package/src/TUIRoom/services/manager/roomActionManager.ts +1 -1
  102. package/src/TUIRoom/stores/room.ts +9 -1
  103. package/es/utils/aegis/config.mjs +0 -12
  104. package/es/utils/aegis/index.mjs +0 -63
  105. package/lib/utils/aegis/config.js +0 -12
  106. package/lib/utils/aegis/index.js +0 -63
@@ -12,46 +12,75 @@ require("../../services/manager/roomActionManager.js");
12
12
  const index$1 = require("../common/base/Dialog/index.vue.js");
13
13
  const closeVirtualBackground = require("../../assets/imgs/close-virtual-background.png.js");
14
14
  const blurredBackground = require("../../assets/imgs/blurred-background.png.js");
15
- const _withScopeId = (n) => (Vue.pushScopeId("data-v-f058868a"), n = n(), Vue.popScopeId(), n);
15
+ const Button = require("../common/base/Button.vue.js");
16
16
  const _hoisted_1 = {
17
17
  key: 0,
18
18
  class: "virtualBackground-control-container"
19
19
  };
20
- const _hoisted_2 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ Vue.createElementVNode("div", {
20
+ const _hoisted_2 = {
21
21
  id: "stream-preview",
22
22
  class: "stream-preview"
23
- }, null, -1));
24
- const _hoisted_3 = { class: "setting" };
25
- const _hoisted_4 = { class: "setting-item-icon" };
26
- const _hoisted_5 = ["src"];
23
+ };
24
+ const _hoisted_3 = {
25
+ key: 0,
26
+ class: "mask"
27
+ };
28
+ const _hoisted_4 = {
29
+ key: 1,
30
+ class: "spinner"
31
+ };
32
+ const _hoisted_5 = { class: "setting" };
27
33
  const _hoisted_6 = { class: "setting-item-icon" };
28
34
  const _hoisted_7 = ["src"];
35
+ const _hoisted_8 = { class: "setting-item-icon" };
36
+ const _hoisted_9 = ["src"];
37
+ const _hoisted_10 = { class: "footer" };
29
38
  const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
30
39
  __name: "VirtualBackground",
31
40
  setup(__props) {
32
41
  const { t } = index.useI18n();
33
42
  const componentConfig = roomService.roomService.componentManager.getComponentConfig("VirtualBackground");
34
- const currentVirtualBackground = Vue.ref("close");
43
+ const isAllowed = Vue.computed(() => roomService.roomService.roomStore.localStream.hasVideoStream);
44
+ const appliedBackground = Vue.ref("close");
45
+ const selectedBackground = Vue.ref("close");
35
46
  const isDialogVisible = Vue.ref(false);
47
+ const isLoading = Vue.ref(false);
36
48
  const openSettingPanel = async () => {
37
49
  var _a;
38
50
  roomService.roomService.virtualBackground.initVirtualBackground();
39
51
  isDialogVisible.value = true;
52
+ isLoading.value = true;
40
53
  await Vue.nextTick();
41
- (_a = roomService.roomService.roomEngine.instance) == null ? void 0 : _a.startCameraDeviceTest({ view: "stream-preview" });
54
+ await ((_a = roomService.roomService.roomEngine.instance) == null ? void 0 : _a.startCameraDeviceTest({ view: "stream-preview" }));
55
+ await applyVirtualBackground(appliedBackground.value);
56
+ isLoading.value = false;
42
57
  };
43
- const closeSettingPanel = () => {
58
+ const closeSettingPanel = async () => {
44
59
  var _a;
45
60
  isDialogVisible.value = false;
46
61
  (_a = roomService.roomService.roomEngine.instance) == null ? void 0 : _a.stopCameraDeviceTest();
62
+ selectedBackground.value = appliedBackground.value;
47
63
  };
48
- const openBlurredBackground = () => {
49
- currentVirtualBackground.value = "blur";
50
- roomService.roomService.virtualBackground.toggleVirtualBackground(true);
64
+ const confirmVirtualBackground = async () => {
65
+ if (!isAllowed.value)
66
+ return;
67
+ appliedBackground.value = selectedBackground.value;
68
+ closeSettingPanel();
69
+ if (selectedBackground.value === "blur") {
70
+ await roomService.roomService.virtualBackground.toggleVirtualBackground(true);
71
+ }
72
+ if (selectedBackground.value === "close") {
73
+ await roomService.roomService.virtualBackground.toggleVirtualBackground(false);
74
+ }
51
75
  };
52
- const closeVirtualBackground$1 = () => {
53
- currentVirtualBackground.value = "close";
54
- roomService.roomService.virtualBackground.toggleVirtualBackground(false);
76
+ const applyVirtualBackground = async (type) => {
77
+ isLoading.value = true;
78
+ try {
79
+ selectedBackground.value = type;
80
+ await roomService.roomService.virtualBackground.toggleTestVirtualBackground(type === "blur");
81
+ } finally {
82
+ isLoading.value = false;
83
+ }
55
84
  };
56
85
  return (_ctx, _cache) => {
57
86
  return Vue.unref(componentConfig).visible ? (Vue.openBlock(), Vue.createElementBlock("div", _hoisted_1, [
@@ -66,7 +95,7 @@ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
66
95
  }, 8, ["title"]),
67
96
  Vue.createVNode(index$1.default, {
68
97
  modelValue: isDialogVisible.value,
69
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isDialogVisible.value = $event),
98
+ "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => isDialogVisible.value = $event),
70
99
  title: Vue.unref(t)("VirtualBackground"),
71
100
  width: "600px",
72
101
  modal: true,
@@ -74,33 +103,64 @@ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
74
103
  onClose: closeSettingPanel
75
104
  }, {
76
105
  default: Vue.withCtx(() => [
77
- _hoisted_2,
78
- Vue.createElementVNode("div", _hoisted_3, [
106
+ Vue.createElementVNode("div", _hoisted_2, [
107
+ isLoading.value ? (Vue.openBlock(), Vue.createElementBlock("div", _hoisted_3)) : Vue.createCommentVNode("", true),
108
+ isLoading.value ? (Vue.openBlock(), Vue.createElementBlock("div", _hoisted_4)) : Vue.createCommentVNode("", true)
109
+ ]),
110
+ Vue.createElementVNode("div", _hoisted_5, [
79
111
  Vue.createElementVNode("div", {
80
- class: Vue.normalizeClass(["setting-item", currentVirtualBackground.value === "close" ? "active" : ""]),
81
- onClick: closeVirtualBackground$1
112
+ class: Vue.normalizeClass([
113
+ "setting-item",
114
+ selectedBackground.value === "close" ? "active" : ""
115
+ ]),
116
+ onClick: _cache[0] || (_cache[0] = ($event) => applyVirtualBackground("close"))
82
117
  }, [
83
- Vue.createElementVNode("i", _hoisted_4, [
118
+ Vue.createElementVNode("i", _hoisted_6, [
84
119
  Vue.createElementVNode("img", {
85
120
  src: Vue.unref(closeVirtualBackground.default),
86
121
  alt: "close",
87
122
  style: { "width": "32px" }
88
- }, null, 8, _hoisted_5)
123
+ }, null, 8, _hoisted_7)
89
124
  ]),
90
125
  Vue.createElementVNode("span", null, Vue.toDisplayString(Vue.unref(t)("Close")), 1)
91
126
  ], 2),
92
127
  Vue.createElementVNode("div", {
93
- class: Vue.normalizeClass(["setting-item", currentVirtualBackground.value === "blur" ? "active" : ""]),
94
- onClick: openBlurredBackground
128
+ class: Vue.normalizeClass([
129
+ "setting-item",
130
+ selectedBackground.value === "blur" ? "active" : ""
131
+ ]),
132
+ onClick: _cache[1] || (_cache[1] = ($event) => applyVirtualBackground("blur"))
95
133
  }, [
96
- Vue.createElementVNode("i", _hoisted_6, [
134
+ Vue.createElementVNode("i", _hoisted_8, [
97
135
  Vue.createElementVNode("img", {
98
136
  src: Vue.unref(blurredBackground.default),
99
137
  alt: "blurred"
100
- }, null, 8, _hoisted_7)
138
+ }, null, 8, _hoisted_9)
101
139
  ]),
102
140
  Vue.createElementVNode("span", null, Vue.toDisplayString(Vue.unref(t)("BlurredBackground")), 1)
103
141
  ], 2)
142
+ ]),
143
+ Vue.createElementVNode("div", _hoisted_10, [
144
+ Vue.createVNode(Button.default, {
145
+ class: "button",
146
+ disabled: !isAllowed.value,
147
+ onClick: confirmVirtualBackground
148
+ }, {
149
+ default: Vue.withCtx(() => [
150
+ Vue.createTextVNode(Vue.toDisplayString(Vue.unref(t)("Save")), 1)
151
+ ]),
152
+ _: 1
153
+ }, 8, ["disabled"]),
154
+ Vue.createVNode(Button.default, {
155
+ class: "button",
156
+ type: "primary",
157
+ onClick: closeSettingPanel
158
+ }, {
159
+ default: Vue.withCtx(() => [
160
+ Vue.createTextVNode(Vue.toDisplayString(Vue.unref(t)("Cancel")), 1)
161
+ ]),
162
+ _: 1
163
+ })
104
164
  ])
105
165
  ]),
106
166
  _: 1
@@ -3,5 +3,5 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
3
3
  const index_vue_vue_type_script_setup_true_lang = require("./index.vue2.js");
4
4
  require("./index.vue3.js");
5
5
  const _pluginVue_exportHelper = require("../../../_virtual/_plugin-vue_export-helper.js");
6
- const RoomFooter = /* @__PURE__ */ _pluginVue_exportHelper.default(index_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-0175eb1f"]]);
6
+ const RoomFooter = /* @__PURE__ */ _pluginVue_exportHelper.default(index_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-cc1a7a3e"]]);
7
7
  exports.default = RoomFooter;
@@ -15,7 +15,6 @@ const index = require("../EndControl/index.vue.js");
15
15
  const SettingControl_vue_vue_type_script_setup_true_lang = require("../SettingControl.vue.js");
16
16
  const VirtualBackground = require("../VirtualBackground.vue.js");
17
17
  const useMitt = require("../../../hooks/useMitt.js");
18
- const index$1 = require("../../../utils/aegis/index.js");
19
18
  const useRoomFooterHooks = require("./useRoomFooterHooks.js");
20
19
  const _hoisted_1 = { class: "footer-container" };
21
20
  const _hoisted_2 = { class: "left-container" };
@@ -31,7 +30,6 @@ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
31
30
  isAudience
32
31
  } = useRoomFooterHooks.default();
33
32
  function handleControlClick(name) {
34
- index$1.default.reportEvent({ name, ext1: name });
35
33
  useMitt.default.emit("experience-communication", name);
36
34
  }
37
35
  return (_ctx, _cache) => {
@@ -19,7 +19,7 @@ function useRoomInfo() {
19
19
  const basicStore = basic.useBasicStore();
20
20
  const roomStore = room.useRoomStore();
21
21
  const { roomId, isRoomLinkVisible } = pinia.storeToRefs(basicStore);
22
- const { masterUserId } = pinia.storeToRefs(roomStore);
22
+ const { masterUserId, roomName } = pinia.storeToRefs(roomStore);
23
23
  const { t } = index.useI18n();
24
24
  const isShowRoomInfo = Vue.ref(false);
25
25
  const roomType = Vue.computed(() => roomStore.isFreeSpeakMode ? t("Free Speech Room") : t("On-stage Speaking Room"));
@@ -27,7 +27,7 @@ function useRoomInfo() {
27
27
  const roomLinkConfig = roomService.roomService.getComponentConfig("RoomLink");
28
28
  const masterUserName = Vue.computed(() => roomStore.getUserName(masterUserId.value) || masterUserId.value);
29
29
  const isShowRoomInfoTitle = Vue.computed(() => masterUserName.value);
30
- const conferenceTitle = Vue.computed(() => `${masterUserName.value}${t("Quick Meeting")}`);
30
+ const conferenceTitle = Vue.computed(() => `${roomName.value}`);
31
31
  const roomInfoTabList = Vue.computed(() => [
32
32
  { id: 1, title: "Host", content: masterUserName.value, copyLink: "", isShowCopyIcon: false, visible: true },
33
33
  { id: 2, title: "Room Type", content: roomType.value, copyLink: "", isShowCopyIcon: false, visible: true },
@@ -3,5 +3,5 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
3
3
  const LayoutControl_vue_vue_type_script_setup_true_lang = require("./LayoutControl.vue2.js");
4
4
  require("./LayoutControl.vue3.js");
5
5
  const _pluginVue_exportHelper = require("../../../_virtual/_plugin-vue_export-helper.js");
6
- const LayoutControl = /* @__PURE__ */ _pluginVue_exportHelper.default(LayoutControl_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-80cb6f9f"]]);
6
+ const LayoutControl = /* @__PURE__ */ _pluginVue_exportHelper.default(LayoutControl_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-7afa85d3"]]);
7
7
  exports.default = LayoutControl;
@@ -5,7 +5,6 @@ const render = require("../../../constants/render.js");
5
5
  const basic = require("../../../stores/basic.js");
6
6
  const room = require("../../../stores/room.js");
7
7
  const pinia = require("pinia");
8
- const index$1 = require("../../../utils/aegis/index.js");
9
8
  const index = require("../../../locales/index.js");
10
9
  const room$1 = require("../../../constants/room.js");
11
10
  const IconButton = require("../../common/base/IconButton.vue.js");
@@ -16,7 +15,7 @@ const roomService = require("../../../services/roomService.js");
16
15
  require("@tencentcloud/tuiroom-engine-electron");
17
16
  require("mitt");
18
17
  require("../../../services/manager/roomActionManager.js");
19
- const _withScopeId = (n) => (Vue.pushScopeId("data-v-80cb6f9f"), n = n(), Vue.popScopeId(), n);
18
+ const _withScopeId = (n) => (Vue.pushScopeId("data-v-7afa85d3"), n = n(), Vue.popScopeId(), n);
20
19
  const _hoisted_1 = {
21
20
  key: 0,
22
21
  class: "layout-container"
@@ -48,7 +47,6 @@ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
48
47
  const layoutControlConfig = roomService.roomService.getComponentConfig("LayoutControl");
49
48
  function handleClick(layout2) {
50
49
  basicStore.setLayout(layout2);
51
- index$1.default.reportEvent({ name: "layout", ext1: layout2 });
52
50
  }
53
51
  function handleClickLayoutIcon() {
54
52
  if (isStreamNumberLessThanTwo.value) {
@@ -3,5 +3,5 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
3
3
  const NetworkInfo_vue_vue_type_script_setup_true_lang = require("./NetworkInfo.vue2.js");
4
4
  require("./NetworkInfo.vue3.js");
5
5
  const _pluginVue_exportHelper = require("../../../_virtual/_plugin-vue_export-helper.js");
6
- const NetworkInfo = /* @__PURE__ */ _pluginVue_exportHelper.default(NetworkInfo_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-7764fd2c"]]);
6
+ const NetworkInfo = /* @__PURE__ */ _pluginVue_exportHelper.default(NetworkInfo_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-4b8a18b9"]]);
7
7
  exports.default = NetworkInfo;
@@ -3,7 +3,6 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
3
3
  const Vue = require("vue");
4
4
  const basic = require("../../../stores/basic.js");
5
5
  const pinia = require("pinia");
6
- const index$1 = require("../../../utils/aegis/index.js");
7
6
  const index = require("../../../locales/index.js");
8
7
  const TUIRoomEngine = require("@tencentcloud/tuiroom-engine-electron");
9
8
  const useRoomEngine = require("../../../hooks/useRoomEngine.js");
@@ -67,7 +66,6 @@ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
67
66
  });
68
67
  function handleClickNetworkIcon() {
69
68
  showNetworkInfo.value = !showNetworkInfo.value;
70
- index$1.default.reportEvent({ name: "networkInfo", ext1: "networkInfo" });
71
69
  }
72
70
  function handleClickOutSide() {
73
71
  if (showNetworkInfo.value) {
@@ -4,7 +4,9 @@ const Vue = require("vue");
4
4
  const index = require("./index.vue.js");
5
5
  const MessageBox = ({ title, message, callback, confirmButtonText }) => {
6
6
  const container = document.createElement("div");
7
- const fullscreenElement = document.fullscreenElement || document.getElementById("roomContainer") || document.body;
7
+ const fullscreenElement = document.fullscreenElement || document.getElementById("roomContainer") || document.getElementById("pre-conference-container");
8
+ if (!fullscreenElement)
9
+ return;
8
10
  fullscreenElement.appendChild(container);
9
11
  const onRemove = () => {
10
12
  Vue.render(null, container);
@@ -55,7 +55,7 @@ declare class Conference implements IConference {
55
55
  tim?: ChatSDK;
56
56
  }): Promise<void>;
57
57
  logout(): Promise<void>;
58
- getRoomEngine(): any;
58
+ getRoomEngine(): TUIRoomEngine | null;
59
59
  on(eventType: RoomEvent, callback: () => any): void;
60
60
  off(eventType: RoomEvent, callback: () => void): void;
61
61
  start(roomId: string, params?: StartParams): Promise<void>;
@@ -4,5 +4,5 @@ const conference_vue_vue_type_script_setup_true_lang = require("./conference.vue
4
4
  require("./conference.vue3.js");
5
5
  require("./conference.vue4.js");
6
6
  const _pluginVue_exportHelper = require("./_virtual/_plugin-vue_export-helper.js");
7
- const ConferenceMainView = /* @__PURE__ */ _pluginVue_exportHelper.default(conference_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-a415c478"]]);
7
+ const ConferenceMainView = /* @__PURE__ */ _pluginVue_exportHelper.default(conference_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-66f598bb"]]);
8
8
  exports.default = ConferenceMainView;
@@ -1,17 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const Vue = require("vue");
4
- const index$1 = require("./components/RoomHeader/index/index.vue.js");
5
- const index$3 = require("./components/RoomFooter/index/index.vue.js");
4
+ const index = require("./components/RoomHeader/index/index.vue.js");
5
+ const index$2 = require("./components/RoomFooter/index/index.vue.js");
6
6
  const index_vue_vue_type_script_setup_true_lang = require("./components/RoomSidebar/index.vue.js");
7
- const index$2 = require("./components/RoomContent/index.vue.js");
8
- const index$4 = require("./components/RoomSetting/index.vue.js");
7
+ const index$1 = require("./components/RoomContent/index.vue.js");
8
+ const index$3 = require("./components/RoomSetting/index.vue.js");
9
9
  const utils = require("./utils/utils.js");
10
10
  const basic = require("./stores/basic.js");
11
11
  const environment = require("./utils/environment.js");
12
12
  const vTap = require("./directives/vTap.js");
13
- const index = require("./utils/aegis/index.js");
14
- const index$5 = require("./components/common/base/MessageBox/index.js");
13
+ const index$4 = require("./components/common/base/MessageBox/index.js");
15
14
  const Message = require("./components/common/base/Message/Message.js");
16
15
  require("./services/main.js");
17
16
  const roomService = require("./services/roomService.js");
@@ -60,7 +59,7 @@ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
60
59
  callback = () => {
61
60
  }
62
61
  } = data;
63
- index$5.default({
62
+ index$4.default({
64
63
  title,
65
64
  message,
66
65
  confirmButtonText,
@@ -103,18 +102,6 @@ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
103
102
  roomService.roomService.resetStore();
104
103
  });
105
104
  const { sdkAppId, showHeaderTool } = roomService.roomService.basicStore;
106
- Vue.watch(
107
- () => sdkAppId,
108
- (val) => {
109
- if (val) {
110
- index.default.setSdkAppId(val);
111
- index.default.reportEvent({
112
- name: "loaded",
113
- ext1: "loaded-success"
114
- });
115
- }
116
- }
117
- );
118
105
  const tuiRoomClass = Vue.computed(() => {
119
106
  const roomClassList = ["tui-room", `tui-theme-${roomService.roomService.basicStore.defaultTheme}`];
120
107
  if (environment.isMobile) {
@@ -232,13 +219,13 @@ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
232
219
  ref: roomRef,
233
220
  class: Vue.normalizeClass(tuiRoomClass.value)
234
221
  }, [
235
- Vue.withDirectives(Vue.createVNode(index$1.default, {
222
+ Vue.withDirectives(Vue.createVNode(index.default, {
236
223
  class: "header",
237
224
  onLogOut: logOut
238
225
  }, null, 512), [
239
226
  [Vue.vShow, showRoomTool.value && Vue.unref(showHeaderTool)]
240
227
  ]),
241
- Vue.withDirectives(Vue.createVNode(index$2.default, {
228
+ Vue.withDirectives(Vue.createVNode(index$1.default, {
242
229
  ref_key: "roomContentRef",
243
230
  ref: roomContentRef,
244
231
  "show-room-tool": showRoomTool.value,
@@ -246,11 +233,11 @@ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
246
233
  }, null, 8, ["show-room-tool"]), [
247
234
  [Vue.unref(vTap.default), handleRoomContentTap]
248
235
  ]),
249
- Vue.withDirectives(Vue.createVNode(index$3.default, { class: "footer" }, null, 512), [
236
+ Vue.withDirectives(Vue.createVNode(index$2.default, { class: "footer" }, null, 512), [
250
237
  [Vue.vShow, showRoomTool.value]
251
238
  ]),
252
239
  Vue.createVNode(index_vue_vue_type_script_setup_true_lang.default),
253
- Vue.createVNode(index$4.default)
240
+ Vue.createVNode(index$3.default)
254
241
  ], 2)) : Vue.createCommentVNode("", true);
255
242
  };
256
243
  }
@@ -1,3 +1,5 @@
1
+ import { TRTCVideoResolution } from '@tencentcloud/tuiroom-engine-electron';
2
+
1
3
  export declare enum SpeechMode {
2
4
  FREE_SPEECH = "FreeSpeech",
3
5
  APPLY_SPEECH = "ApplySpeech"
@@ -13,7 +15,7 @@ export declare enum MediaDeviceState {
13
15
  UNAVAILABLE = "UNAVAILABLE"
14
16
  }
15
17
  export declare const SMALL_VIDEO_ENC_PARAM: {
16
- videoResolution: any;
18
+ videoResolution: TRTCVideoResolution;
17
19
  videoFps: number;
18
20
  videoBitrate: number;
19
21
  };
@@ -3,5 +3,5 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
3
3
  const RoomMessageCard_vue_vue_type_script_setup_true_lang = require("./RoomMessageCard.vue2.js");
4
4
  require("./RoomMessageCard.vue3.js");
5
5
  const _pluginVue_exportHelper = require("../../_virtual/_plugin-vue_export-helper.js");
6
- const RoomMessageCard = /* @__PURE__ */ _pluginVue_exportHelper.default(RoomMessageCard_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-1ec3d8c6"]]);
6
+ const RoomMessageCard = /* @__PURE__ */ _pluginVue_exportHelper.default(RoomMessageCard_vue_vue_type_script_setup_true_lang.default, [["__scopeId", "data-v-95ab4274"]]);
7
7
  exports.default = RoomMessageCard;
@@ -4,7 +4,7 @@ const Vue = require("vue");
4
4
  const chatExtension = require("../chatExtension.js");
5
5
  const handleRoomMessage = require("./handleRoomMessage.js");
6
6
  const index = require("../../locales/index.js");
7
- const _withScopeId = (n) => (Vue.pushScopeId("data-v-1ec3d8c6"), n = n(), Vue.popScopeId(), n);
7
+ const _withScopeId = (n) => (Vue.pushScopeId("data-v-95ab4274"), n = n(), Vue.popScopeId(), n);
8
8
  const _hoisted_1 = { class: "content" };
9
9
  const _hoisted_2 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ Vue.createElementVNode("span", { class: "icon" }, null, -1));
10
10
  const _hoisted_3 = { key: 0 };
@@ -169,7 +169,7 @@ const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
169
169
  Vue.unref(chatExtension.RoomState).CREATED === roomCardData.value.roomState ? (Vue.openBlock(), Vue.createElementBlock("p", _hoisted_3, Vue.toDisplayString(Vue.unref(t)("Meeting in progress")), 1)) : (Vue.openBlock(), Vue.createElementBlock("p", _hoisted_4, Vue.toDisplayString(Vue.unref(t)("Meeting")), 1))
170
170
  ], 2),
171
171
  Vue.createElementVNode("div", _hoisted_5, [
172
- Vue.createElementVNode("div", _hoisted_6, Vue.toDisplayString(`${roomCardData.value.ownerName || roomCardData.value.owner}${Vue.unref(t)("Quick Meeting")}`), 1),
172
+ Vue.createElementVNode("div", _hoisted_6, Vue.toDisplayString(`${roomCardData.value.ownerName || roomCardData.value.owner}${Vue.unref(t)("Quick Conference")}`), 1),
173
173
  Vue.createElementVNode("ul", _hoisted_7, [
174
174
  (Vue.openBlock(true), Vue.createElementBlock(Vue.Fragment, null, Vue.renderList(roomCardData.value.userList, (user, index2) => {
175
175
  return Vue.openBlock(), Vue.createElementBlock(Vue.Fragment, {
@@ -210,7 +210,7 @@ const _ChatExtension = class _ChatExtension {
210
210
  const chatType = params == null ? void 0 : params.chatType;
211
211
  const extension = {
212
212
  weight: -1,
213
- text: ((_a = this.service) == null ? void 0 : _a.t("quick meeting")) || "快速会议",
213
+ text: ((_a = this.service) == null ? void 0 : _a.t("quick conference")) || "快速会议",
214
214
  icon: "https://qcloudimg.tencent-cloud.cn/raw/148ab10dfe654076b41f0d0945bb82e8.png",
215
215
  data: {
216
216
  name: "quickRoom"
@@ -1,8 +1,10 @@
1
+ import { TUIRoomDeviceManager } from '@tencentcloud/tuiroom-engine-electron';
2
+
1
3
  export default function (options?: {
2
4
  listenForDeviceChange: boolean;
3
5
  }): {
4
6
  deviceManager: {
5
- instance: any;
7
+ instance: TUIRoomDeviceManager | null | undefined;
6
8
  };
7
9
  initMediaDeviceList: () => Promise<void>;
8
10
  };
@@ -52,7 +52,7 @@ function useMasterApplyControl() {
52
52
  }
53
53
  } catch (error) {
54
54
  if (error.code === TUIRoomEngine.TUIErrorCode.ERR_ALL_SEAT_OCCUPIED) {
55
- Message.default({ type: "warning", message: t("The current number of people on stage has reached the limit") });
55
+ Message.default({ type: "warning", message: t("The stage is full") });
56
56
  } else {
57
57
  index$1.default.error("Failure to process a user request", error);
58
58
  }
@@ -70,7 +70,7 @@ function useMasterApplyControl() {
70
70
  }
71
71
  } catch (error) {
72
72
  if (error.code === TUIRoomEngine.TUIErrorCode.ERR_ALL_SEAT_OCCUPIED) {
73
- Message.default({ type: "warning", message: t("The current number of people on stage has reached the limit") });
73
+ Message.default({ type: "warning", message: t("The stage is full") });
74
74
  } else {
75
75
  index$1.default.error("Failed application for consent to go on stage", error);
76
76
  }
@@ -91,12 +91,13 @@ function useMasterApplyControl() {
91
91
  }
92
92
  async function handleAllUserApply(isAgreeOrRejectAllUserApply) {
93
93
  var _a;
94
+ let hasErrorOccurred = false;
94
95
  const applyUserList = applyToAnchorList.value.map((item) => ({
95
96
  userId: item.userId,
96
97
  userName: item.userName,
97
98
  applyToAnchorRequestId: item.applyToAnchorRequestId
98
99
  }));
99
- for (const { userId, userName, applyToAnchorRequestId } of applyUserList) {
100
+ for (const { applyToAnchorRequestId } of applyUserList) {
100
101
  const action = isAgreeOrRejectAllUserApply ? "Agree" : "Reject";
101
102
  const actionFailedMessage = `${action} sb on stage failed, please retry`;
102
103
  try {
@@ -108,12 +109,15 @@ function useMasterApplyControl() {
108
109
  roomStore.removeApplyToAnchorUser(applyToAnchorRequestId);
109
110
  }
110
111
  } catch (error) {
111
- index$1.default.error(actionFailedMessage);
112
- Message.default({
113
- type: "warning",
114
- message: t(`${action} sb on stage failed, please retry`, { name: userName || userId }),
115
- duration: message.MESSAGE_DURATION.NORMAL
116
- });
112
+ if (!hasErrorOccurred) {
113
+ index$1.default.error(actionFailedMessage);
114
+ Message.default({
115
+ type: "warning",
116
+ message: t("The stage is full"),
117
+ duration: message.MESSAGE_DURATION.NORMAL
118
+ });
119
+ hasErrorOccurred = true;
120
+ }
117
121
  }
118
122
  }
119
123
  }
@@ -215,6 +219,7 @@ function useMasterApplyControl() {
215
219
  }
216
220
  function handleShowNotification() {
217
221
  Vue.watch(applyToAnchorUserIdList, (newVal, oldVal) => {
222
+ var _a, _b;
218
223
  if (newVal.length === oldVal.length && newVal === oldVal) {
219
224
  return;
220
225
  }
@@ -225,7 +230,8 @@ function useMasterApplyControl() {
225
230
  }
226
231
  const onlyOneUserTakeStage = newVal.length === 1;
227
232
  const firstUser = applyToAnchorList.value[0];
228
- const userName = (firstUser == null ? void 0 : firstUser.userName) || (firstUser == null ? void 0 : firstUser.userId);
233
+ const lastIndex = applyToAnchorList.value.length - 1;
234
+ const userName = ((_a = applyToAnchorList.value[lastIndex]) == null ? void 0 : _a.userName) || ((_b = applyToAnchorList.value[lastIndex]) == null ? void 0 : _b.userId);
229
235
  const message2 = onlyOneUserTakeStage ? `${userName} ${t("Applying for the stage")}` : `${userName} ${t("and so on number people applying to stage", { number: applyToAnchorList.value.length })}`;
230
236
  const confirmButtonText = environment.isMobile ? t("Check") : onlyOneUserTakeStage ? t("Agree to the stage") : t("Check");
231
237
  const cancelButtonText = environment.isMobile ? void 0 : onlyOneUserTakeStage ? t("Reject") : t("Neglect");
@@ -1 +1,3 @@
1
- export default function useGetRoomEngine(): Record<string, any>;
1
+ import { default as TUIRoomEngine } from '@tencentcloud/tuiroom-engine-electron';
2
+
3
+ export default function useGetRoomEngine(): Record<string, TUIRoomEngine | null>;
package/lib/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { roomService } from './services';
1
2
  import { default as RoomMessageCard } from './extension/RoomMessageCard/RoomMessageCard.vue';
2
3
  import { conference, RoomEvent } from './conference';
3
4
  import { default as TUIRoomEngine } from '@tencentcloud/tuiroom-engine-electron';
@@ -5,5 +6,5 @@ import { default as PreConferenceView } from './preConference.vue';
5
6
  import { default as ConferenceMainView } from './conference.vue';
6
7
 
7
8
  export * from './components/common/base/index';
8
- export { ConferenceMainView, PreConferenceView, TUIRoomEngine, conference, RoomEvent, RoomMessageCard };
9
+ export { ConferenceMainView, PreConferenceView, TUIRoomEngine, roomService, conference, RoomEvent, RoomMessageCard };
9
10
  export default ConferenceMainView;