openpencil/src/components/FileApiBanner.vue
Danila Poyarkov a029e267c2
feat(updater): show download progress while installing an update
Report desktop update downloads through persistent determinate or indeterminate toasts while retaining native confirmation. Use a spinner during progress and cancel pending expiry when progress resumes.

Standardize substantial Storybook fixtures as colocated example SFCs, preserve shared SDK documentation examples, and enforce semantic anatomy instead of shared-layer test IDs.
2026-09-25 23:15:14 +04:00

23 lines
844 B
Vue

<script setup lang="ts">
import { useI18n } from '@open-pencil/vue'
import { supportsFileSystemAccess } from '@/app/document/io/capability'
import ExternalLink from '@/components/links/ExternalLink.vue'
import AppBanner from '@/components/ui/feedback/AppBanner.vue'
import { IS_TAURI } from '@/constants'
/** Neutral capability reference: the File System Access API support table. */
const supportURL = 'https://caniuse.com/native-filesystem-api'
const { files, common } = useI18n()
const show = !IS_TAURI && !supportsFileSystemAccess()
</script>
<template>
<AppBanner v-if="show" storage-key="safari-banner-dismissed">
{{ files.browserFileAPINotSupported }}
<ExternalLink :href="supportURL" class="ml-1">{{ common.browserSupport }}</ExternalLink>
<template #dismiss>{{ common.dismiss }}</template>
</AppBanner>
</template>