export function saveAs(blob: any, name: any): void
}
-declare module '@vue/repl' {
- import { ComponentOptions } from '@vue/runtime-core'
- const Repl: ComponentOptions
- const ReplStore: any
- export { Repl, ReplStore }
-}
-
declare interface String {
/**
* @deprecated Please use String.prototype.slice instead of String.prototype.substring in the repository.
"vite": "^4.2.0"
},
"dependencies": {
- "@vue/repl": "^1.3.5",
+ "@vue/repl": "^1.4.0",
"file-saver": "^2.0.5",
"jszip": "^3.6.0",
"vue": "workspace:*"
<script setup lang="ts">
import Header from './Header.vue'
-import { Repl, ReplStore } from '@vue/repl'
+import { Repl, ReplStore, SFCOptions } from '@vue/repl'
import { ref, watchEffect } from 'vue'
const setVH = () => {
})
// enable experimental features
-const sfcOptions = {
+const sfcOptions: SFCOptions = {
script: {
inlineTemplate: !useDevMode.value,
isProd: !useDevMode.value,
function toggleDevMode() {
const dev = (useDevMode.value = !useDevMode.value)
- sfcOptions.script.inlineTemplate =
- sfcOptions.script.isProd =
- sfcOptions.template.isProd =
- sfcOptions.style.isProd =
+ sfcOptions.script!.inlineTemplate =
+ sfcOptions.script!.isProd =
+ sfcOptions.template!.isProd =
+ sfcOptions.style!.isProd =
!dev
store.setFiles(store.getFiles())
}
import Share from './icons/Share.vue'
import Download from './icons/Download.vue'
import GitHub from './icons/GitHub.vue'
+import { ReplStore } from '@vue/repl'
+
+const props = defineProps<{
+ store: ReplStore
+ dev: boolean
+ ssr: boolean
+}>()
-// @ts-ignore
-const props = defineProps(['store', 'dev', 'ssr'])
const { store } = props
const currentCommit = __COMMIT__
import pkg from './template/package.json?raw'
import config from './template/vite.config.js?raw'
import readme from './template/README.md?raw'
+import { ReplStore } from '@vue/repl'
-export async function downloadProject(store: any) {
+export async function downloadProject(store: ReplStore) {
if (!confirm('Download project files?')) {
return
}
packages/sfc-playground:
specifiers:
'@vitejs/plugin-vue': ^4.1.0
- '@vue/repl': ^1.3.5
+ '@vue/repl': ^1.4.0
file-saver: ^2.0.5
jszip: ^3.6.0
vite: ^4.2.0
vue: workspace:*
dependencies:
- '@vue/repl': 1.3.5_vue@packages+vue
+ '@vue/repl': 1.4.0_vue@packages+vue
file-saver: 2.0.5
jszip: 3.10.1
vue: link:../vue
engines: {node: '>= 0.12.0'}
dev: true
- /@vue/repl/1.3.5_vue@packages+vue:
- resolution: {integrity: sha512-O2Z8JKE15v14pE/wgw93Aw4+L0HjhsLc68ivuj1N09WXS9oyU33NTlh7PQhb75P43fadnypBDb4djD3pUWpjBQ==}
+ /@vue/repl/1.4.0_vue@packages+vue:
+ resolution: {integrity: sha512-W/OdABvbP5WCVJ6OoGG+/ULicKTpMFhhvpN2EjCsdV8bvEBHqLSCvJmDRiMkuLOm8lYw+MSOgyTKrxnhe5TH5g==}
peerDependencies:
vue: ^3.2.13
dependencies: