Skip to content

Commit 9a0be1d

Browse files
committed
feat: add template for new file
1 parent df1a0fc commit 9a0be1d

File tree

4 files changed

+22
-16
lines changed

4 files changed

+22
-16
lines changed

src/Repl.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,8 +75,8 @@ sfcOptions.script.fs = {
7575
7676
store.init()
7777
78-
const editorSlotName = computed(() => props.layoutReverse ? 'right' : 'left')
79-
const outputSlotName = computed(() => props.layoutReverse ? 'left' : 'right')
78+
const editorSlotName = computed(() => (props.layoutReverse ? 'right' : 'left'))
79+
const outputSlotName = computed(() => (props.layoutReverse ? 'left' : 'right'))
8080
8181
provide('store', store)
8282
provide('autoresize', props.autoResize)

src/store.ts

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -9,25 +9,14 @@ import {
99
} from 'vue/compiler-sfc'
1010
import { OutputModes } from './output/types'
1111
import type { editor } from 'monaco-editor-core'
12+
import welcomeCode from './template/welcome.vue?raw'
13+
import newFileCode from './template/new-file.vue?raw'
1214

1315
const defaultMainFile = 'src/App.vue'
1416

1517
export const importMapFile = 'import-map.json'
1618
export const tsconfigFile = 'tsconfig.json'
1719

18-
const welcomeCode = `
19-
<script setup>
20-
import { ref } from 'vue'
21-
22-
const msg = ref('Hello World!')
23-
</script>
24-
25-
<template>
26-
<h1>{{ msg }}</h1>
27-
<input v-model="msg">
28-
</template>
29-
`.trim()
30-
3120
const tsconfig = {
3221
compilerOptions: {
3322
allowJs: true,
@@ -254,7 +243,7 @@ export class ReplStore implements Store {
254243
addFile(fileOrFilename: string | File): void {
255244
const file =
256245
typeof fileOrFilename === 'string'
257-
? new File(fileOrFilename)
246+
? new File(fileOrFilename, newFileCode)
258247
: fileOrFilename
259248
this.state.files[file.filename] = file
260249
if (!file.hidden) this.setActive(file.filename)

src/template/new-file.vue

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
<script setup></script>
2+
3+
<template>
4+
<div>
5+
<slot />
6+
</div>
7+
</template>

src/template/welcome.vue

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
<script setup>
2+
import { ref } from 'vue'
3+
4+
const msg = ref('Hello World!')
5+
</script>
6+
7+
<template>
8+
<h1>{{ msg }}</h1>
9+
<input v-model="msg" />
10+
</template>

0 commit comments

Comments
 (0)