Skip to content

Commit c605e85

Browse files
committed
added: color mode support to HxMeeting component #7
1 parent 46fbfbc commit c605e85

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

src/components/HxMeeting.vue

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,19 +54,21 @@ import {
5454
useToggleCamera, useToggleLayout, useToggleMicrophone
5555
} from "../composable/conferenceActions.ts";
5656
import {useClickSidebarButton, useModal} from "../composable/ui.ts";
57-
import {useThrottleFn} from "@vueuse/core";
57+
import {useColorMode, useThrottleFn} from "@vueuse/core";
5858
import {defineShortcuts2 as defineShortcuts} from "../composable/nuxtui/defineShortcuts2.ts";
5959
import {type HxComponentDescriptor, useExtensions} from "../composable/useExtensions.ts";
6060
import {type HxHandler, type HxEvent, useEvents} from "../composable/useEvents.ts";
6161
6262
const { hideSidebar } = useUIState();
6363
const {closeAllModals} = useModal()
64+
const colorMode = useColorMode()
6465
6566
export interface HxMeetingProps {
6667
livekitUrl: string,
6768
livekitToken: string,
6869
extensions?: Record<string, string | Ref | HxComponentDescriptor>;
6970
events?: Partial<Record<HxEvent, HxHandler>>;
71+
colorMode?: 'light' | 'dark' | 'auto';
7072
}
7173
const props = defineProps<HxMeetingProps>()
7274
@@ -88,6 +90,12 @@ watch(() => props.events, (events) => {
8890
for (const [name, item] of Object.entries(events)) on(name as HxEvent, item);
8991
}, { immediate: true, deep: true });
9092
93+
watch(() => props.colorMode, () => {
94+
if (props.colorMode !== undefined) {
95+
colorMode.value = props.colorMode
96+
}
97+
}, { immediate: true });
98+
9199
onBeforeMount(() => {
92100
provideLivekitConfig(
93101
props.livekitUrl,

0 commit comments

Comments
 (0)