From 97e351fa61a6df671a4b8a4aa2256a64c88cb39f Mon Sep 17 00:00:00 2001 From: adlee-was-taken Date: Sat, 2 May 2026 14:52:14 -0400 Subject: [PATCH] feat(ext/setup): apply polish vocabulary to setup wizard MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Wraps setup content in .surface-backdrop - Each wizard step gets a .glass card - Mode-picker cards become glass cards - 'next' / 'continue' buttons get the ▸ glyph - Migrate from .btn .btn-primary to the new .btn-primary class --- extension/src/setup/setup.ts | 41 +++++++++++++++++++----------------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/extension/src/setup/setup.ts b/extension/src/setup/setup.ts index 99eab89..bd49f55 100644 --- a/extension/src/setup/setup.ts +++ b/extension/src/setup/setup.ts @@ -16,6 +16,7 @@ import { STRENGTH_LABELS, entropyText, } from './setup-helpers'; +import { GLYPH_NEXT } from '../shared/glyphs'; import type { VaultConfig } from '../shared/types'; import type { SessionHandle } from 'relicario-wasm'; @@ -189,12 +190,14 @@ function render(): void { } app.innerHTML = ` -
- -
Relicario vault setup
- ${progressHtml} - ${state.error ? `
${escapeHtml(state.error)}
` : ''} - ${stepHtml} +
+
+ +
Relicario vault setup
+ ${progressHtml} + ${state.error ? `
${escapeHtml(state.error)}
` : ''} + ${stepHtml} +
`; @@ -214,20 +217,20 @@ function renderStep0(): string { const isNew = state.mode === 'new'; const isAttach = state.mode === 'attach'; return ` -
+

set up Relicario

How are you using Relicario on this device?

- -
- +
`; @@ -267,7 +270,7 @@ function renderStep3Attach(): string { const gateDisabled = state.attaching || !p || !hasImage; return ` -
+

attach this device

Use your existing passphrase and reference image to attach this browser @@ -430,7 +433,7 @@ function renderStep1(): string { `; return ` -

+

choose host

@@ -442,7 +445,7 @@ function renderStep1(): string { ${state.hostType === 'gitea' ? giteaInstructions : githubInstructions}
- +
`; @@ -522,7 +525,7 @@ function renderStep2(): string { !!probe && ((state.mode === 'new' && probe.exists) || (state.mode === 'attach' && !probe.exists)); const nextDisabled = !state.connectionTested || !probe || modeMismatch; return ` -
+

configure connection

@@ -543,7 +546,7 @@ function renderStep2(): string { ${renderProbeBanner()}
- +
`; @@ -643,7 +646,7 @@ function renderStep3New(): string { const counterText = nChars === 0 ? '' : `${nChars} character${nChars === 1 ? '' : 's'}`; return ` -
+

create vault

@@ -907,7 +910,7 @@ function renderStep4(): string { const defaultName = state.deviceName || `${browser} on ${os}`; return ` -
+

name this device

This helps you identify which devices have access to your vault. @@ -918,7 +921,7 @@ function renderStep4(): string {

- +
`; @@ -979,7 +982,7 @@ function renderStep5(): string { const isAttach = state.mode === 'attach'; return ` -
+

${isAttach ? 'device verified' : 'vault created'}