@tencentcloud/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,
104 lines (103 loc) • 4.45 kB
JavaScript
import { defineComponent, ref, computed, createBlock, openBlock, unref, withCtx, createElementVNode, createVNode, createTextVNode, toDisplayString } from "vue";
import Dialog from "../../../../../components/common/base/Dialog/index.mjs";
import "../../../../../utils/environment.mjs";
/* empty css */
/* empty css */
import "../../../../../hooks/useZIndex.mjs";
import { TUIButton } from "@tencentcloud/uikit-base-component-vue3";
/* empty css */
/* empty css */
/* empty css */
/* empty css */
/* empty css */
import "../../../../../components/common/base/IconButton.vue2.mjs";
/* empty css */
import Input from "../../../../../components/common/base/Input/index.mjs";
/* empty css */
/* empty css */
import "../../../../../stores/basic.mjs";
/* empty css */
import "../../../../../services/main.mjs";
import "../../../../../services/roomService.mjs";
import { useI18n } from "../../../../../locales/index.mjs";
import "@tencentcloud/tuiroom-engine-js";
import "mitt";
import "../../../../../services/manager/roomActionManager.mjs";
import "@tencentcloud/tui-core";
/* empty css */
/* empty css */
/* empty css */
/* empty css */
/* empty css */
const _hoisted_1 = { class: "dialog-content" };
const _sfc_main = /* @__PURE__ */ defineComponent({
__name: "changeNameCardDialog",
props: {
userInfo: {},
confirmFunction: { type: Function }
},
setup(__props) {
const props = __props;
const { t } = useI18n();
const inputUserName = ref(props.userInfo.nameCard);
const isShowDialog = ref(true);
const isConfirmButtonDisable = computed(() => !inputUserName.value.trim());
async function handleConfirm() {
await props.confirmFunction(inputUserName.value);
isShowDialog.value = false;
}
function handleCancel() {
inputUserName.value = props.userInfo.nameCard || props.userInfo.userName || "";
isShowDialog.value = false;
}
return (_ctx, _cache) => {
return openBlock(), createBlock(unref(Dialog), {
modelValue: isShowDialog.value,
"onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => isShowDialog.value = $event),
title: unref(t)("change name"),
modal: true,
width: "480px",
"before-close": handleCancel,
"close-on-click-modal": true,
"append-to-room-container": true
}, {
footer: withCtx(() => [
createVNode(unref(TUIButton), {
type: "primary",
style: { "min-width": "88px" },
onClick: handleConfirm,
disabled: isConfirmButtonDisable.value
}, {
default: withCtx(() => [
createTextVNode(toDisplayString(unref(t)("Confirm")), 1)
]),
_: 1
}, 8, ["disabled"]),
createVNode(unref(TUIButton), {
style: { "min-width": "88px" },
onClick: handleCancel
}, {
default: withCtx(() => [
createTextVNode(toDisplayString(unref(t)("Cancel")), 1)
]),
_: 1
})
]),
default: withCtx(() => [
createElementVNode("div", _hoisted_1, [
createVNode(unref(Input), {
"model-value": inputUserName.value,
onInput: _cache[0] || (_cache[0] = ($event) => inputUserName.value = $event),
class: "dialog-input",
placeholder: unref(t)("Please input user name")
}, null, 8, ["model-value", "placeholder"])
])
]),
_: 1
}, 8, ["modelValue", "title"]);
};
}
});
export {
_sfc_main as default
};