openpencil/src/App.vue
Danila Poyarkov 60bb484ee4 refactor(ui): remove test-id prop APIs
- Forward data-test-id attrs through rendered controls instead of exposing test-id props
- Move shell chrome components into the Shell namespace
- Remove internal planning docs from published VitePress docs
- Add guardrails and contributor guidance for test hooks and component placement
2026-07-01 09:05:27 +03:00

32 lines
877 B
Vue

<script setup lang="ts">
import { onMounted } from 'vue'
import { useHead } from '@unhead/vue'
import { TooltipProvider } from 'reka-ui'
import { provideEditor, useI18n } from '@open-pencil/vue'
import AppToast from '@/components/Shell/AppToast.vue'
import { useEditorStore } from '@/app/editor/active-store'
import { toast } from '@/app/shell/ui'
import { useAppTheme } from '@/app/shell/theme'
import { scheduleStartupUpdateCheck } from '@/app/shell/updater'
useHead({ titleTemplate: (title) => (title ? `${title} — OpenPencil` : 'OpenPencil') })
const store = useEditorStore()
const { dialogs } = useI18n()
provideEditor(store)
useAppTheme()
onMounted(() => {
toast.setupGlobalErrorHandler()
scheduleStartupUpdateCheck(dialogs)
})
</script>
<template>
<TooltipProvider :delay-duration="400">
<RouterView />
<AppToast />
</TooltipProvider>
</template>