Skip to content

Translate · Search params & storage

6 modules · 31 exports · 0 repositories · 2 e2e tests · 3 routes

The state Translate keeps in the URL and in the browser's storage. Every param has a default and never fails to decode, see Search params, and each definition should have an assertRoundTrips test. The definitions of the whole app are listed in the reference.

Search params

URL translateLanguageSearchParams

app/features/translate/translate-search-params.ts:6

ParamValueDefaultLoaderDescription
pagepage 1true
namespace v.nullable(v.pipe(v.string(), v.maxLength(100)))nulltrue

Resets page

status v.picklist(TRANSLATION_STATUSES)"untranslated"true

Resets page

search v.pipe(v.string(), v.maxLength(100))""true

Resets page

Used in translate.$language.index.server.tstranslate.$language.index.tsxtranslate.$language.tsx

Web storage

localStorage draftsPersisted

app/features/translate/translate-persisted.ts:6

Drafts written on the /translate page, per language: namespace -> key -> draft

Key prefixtranslation-drafts__
Value
v.record(
	v.string(),
	v.record(v.string(), v.object({ value: v.string(), source: v.string() })),
)
Default{}

Used in translate-drafts.ts

localStorage previewLanguagePersisted

app/features/translate/translate-persisted.ts:17

Language whose drafts are previewed on the site, null when not previewing

Keytranslation-preview
Valuev.nullable(v.picklist(TRANSLATABLE_LANGUAGES))
Defaultnull

Used in DraftActions.tsxTranslationPreview.tsx