Skip to content

Commit

Permalink
feat: apply theme to preview (#200)
Browse files Browse the repository at this point in the history
  • Loading branch information
btea authored Jan 3, 2024
1 parent 7dd1a9b commit 7ae1061
Showing 1 changed file with 11 additions and 1 deletion.
12 changes: 11 additions & 1 deletion src/output/Preview.vue
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ const props = defineProps<{ show: boolean; ssr: boolean }>()
const store = inject('store') as Store
const clearConsole = inject('clear-console') as Ref<boolean>
const theme = inject('theme') as Ref<'dark' | 'light'>
const previewOptions = inject('preview-options') as Props['previewOptions']
Expand Down Expand Up @@ -85,6 +86,7 @@ function createSandbox() {
importMap.imports.vue = store.state.vueRuntimeURL
}
const sandboxSrc = srcdoc
.replace(/<html>/, `<html class="${theme.value}">`)
.replace(/<!--IMPORT_MAP-->/, JSON.stringify(importMap))
.replace(
/<!-- PREVIEW-OPTIONS-HEAD-HTML -->/,
Expand Down Expand Up @@ -277,7 +279,12 @@ defineExpose({ reload })
</script>

<template>
<div class="iframe-container" v-show="show" ref="container"></div>
<div
class="iframe-container"
:class="theme"
v-show="show"
ref="container"
></div>
<Message :err="runtimeError" />
<Message v-if="!runtimeError" :warn="runtimeWarning" />
</template>
Expand All @@ -290,4 +297,7 @@ defineExpose({ reload })
border: none;
background-color: #fff;
}
.iframe-container.dark :deep(iframe) {
background-color: #1e1e1e;
}
</style>

0 comments on commit 7ae1061

Please sign in to comment.