roomkit-web-vue3
Version:
<h1 align="center"> TUIRoomKit</h1> Conference (TUIRoomKit) is a product suitable for multi-person audio and video conversation scenarios such as business meetings, webinars, and online education. By integrating this product, you can add room management,
62 lines (61 loc) • 2.96 kB
JavaScript
;
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
const Vue = require("vue");
const SvgIcon = require("../../common/base/SvgIcon.vue.js");
const CameraSwitchIcon = require("../../common/icons/CameraSwitchIcon.vue.js");
const vTap = require("../../../directives/vTap.js");
require("../../common/base/IconButton.vue2.js");
;/* empty css */
require("../../../stores/room.js");
require("pinia");
require("../../../utils/environment.js");
;/* empty css */
require("../../../hooks/useZIndex.js");
require("../../../services/main.js");
require("../../../services/roomService.js");
require("../../../locales/index.js");
require("@tencentcloud/tuiroom-engine-js");
require("mitt");
require("../../../services/manager/roomActionManager.js");
require("@tencentcloud/tui-core");
;/* empty css */
;/* empty css */
;/* empty css */
;/* empty css */
;/* empty css */
require("../../../core/hooks/useAudioDeviceState/index.js");
;/* empty css */
;/* empty css */
require("@tencentcloud/uikit-base-component-vue3");
;/* empty css */
require("../../../stores/basic.js");
;/* empty css */
;/* empty css */
;/* empty css */
require("../../../hooks/useRoomEngine.js");
const index = require("../../../core/hooks/useVideoDeviceState/index.js");
;/* empty css */
;/* empty css */
;/* empty css */
;/* empty css */
;/* empty css */
;/* empty css */
;/* empty css */
const _hoisted_1 = { class: "camera-icon" };
const _sfc_main = /* @__PURE__ */ Vue.defineComponent({
__name: "SwitchCamera",
setup(__props) {
const { isFrontCamera, camera } = index.useVideoDeviceState();
async function handleSwitchCamera() {
camera.switchCamera({ isFrontCamera: !isFrontCamera.value });
}
return (_ctx, _cache) => {
return Vue.openBlock(), Vue.createElementBlock("div", _hoisted_1, [
Vue.withDirectives(Vue.createVNode(SvgIcon.default, { icon: CameraSwitchIcon.default }, null, 512), [
[Vue.unref(vTap.default), handleSwitchCamera]
])
]);
};
}
});
exports.default = _sfc_main;