Onboarding: - Persist current step in localStorage — page refresh resumes where user was - Router afterEach saves step; guard redirects to saved step, not always intro - Show npub alongside DID on restore success screen UI fixes: - Clipboard polyfill for HTTP contexts (fixes Copy DID crash on non-HTTPS) - AppCard installing overlay shows for pkg.state=installing (survives refresh) - Hide uninstall button during installation - Frontend version bumped to 1.3.2 App store: - OnlyOffice fully removed from marketplace, curated apps, app config - Replaced with CryptPad references throughout - Remove OnlyOffice from ISO capture patterns Container stability: - UI containers (bitcoin-ui, lnd-ui, electrs-ui) pull from registry first - Added --cap-add FOWNER for rootless Podman compatibility - electrs-ui now included in first-boot loop alongside bitcoin-ui and lnd-ui Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
41 lines
1.1 KiB
TypeScript
41 lines
1.1 KiB
TypeScript
import { createApp } from 'vue'
|
|
import { createPinia } from 'pinia'
|
|
import './style.css'
|
|
import App from './App.vue'
|
|
import router from './router'
|
|
import i18n from './i18n'
|
|
|
|
// Clipboard polyfill for HTTP (non-secure) contexts where navigator.clipboard is unavailable
|
|
if (!navigator.clipboard) {
|
|
Object.defineProperty(navigator, 'clipboard', {
|
|
value: {
|
|
async writeText(text: string) {
|
|
const ta = document.createElement('textarea')
|
|
ta.value = text
|
|
ta.style.cssText = 'position:fixed;opacity:0'
|
|
document.body.appendChild(ta)
|
|
ta.select()
|
|
document.execCommand('copy')
|
|
document.body.removeChild(ta)
|
|
},
|
|
async readText() { return '' },
|
|
},
|
|
})
|
|
}
|
|
import { useToast } from '@/composables/useToast'
|
|
|
|
const app = createApp(App)
|
|
const pinia = createPinia()
|
|
|
|
app.use(pinia)
|
|
app.use(router)
|
|
app.use(i18n)
|
|
|
|
app.config.errorHandler = (err, _instance, info) => {
|
|
console.error('[Vue Error]', err, info)
|
|
const { error } = useToast()
|
|
error('Something went wrong. Please refresh the page.')
|
|
}
|
|
|
|
app.mount('#app')
|