Add components.serviceResources and move the resources/scaling panel
(metrics, storage usage/expansion, CPU/memory adjust, dump restore,
upgrade toasts) onto it; route through the locale-aware router.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Add components.dbConfig / components.snapshots and dashboard.servicesNew
dictionaries; move the managed-database config (engine, credentials, dump
upload, storage), the snapshots panel and the three-step new-service
wizard onto them. validateDbDumpStorage now takes a localized template.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Add components.workloadLogs, components.deployStatus and
components.externalAccess dictionaries; move the workload logs panel and
the service external-access panel onto them (tabs, live-refresh hints,
access modes, countdown units, toasts) with RTL-aware spacing.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Add a components.res resource-label set and move the database workload
resources and optional-service resource-field components onto it.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Move the cluster management page (resource panel, tools install/uninstall
flow, statuses/health) and the billing-plans page (pricing matrices,
deploy defaults, add-ons, data-retention settings) onto the dictionaries
with locale-aware dates and RTL-aware tables.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Add a components dictionary (delete/deleting overlays, confirm-modal
defaults, build-progress phases, deployment bar, resource-upgrade modal)
and move the logs, admin users, and admin cluster-pools pages onto the
dictionaries — filters, tables, forms, statuses, toasts and confirm
dialogs — with locale-aware dates and RTL-aware layout.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Localize the confirm modal, delete button, deleting overlays/modal, the
build-progress modal, deployment progress bar/manager and the resource
upgrade modal via a shared components dictionary. Build-phase labels now
resolve from the dictionary; deleting overlays take name/kind and build
their own localized message (callers updated).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Move both invoice views onto a shared invoices dictionary — statuses,
filters, payment/line-item/transaction labels, manual status controls and
toasts — with locale-aware Link, dates and RTL-aware table/search layout.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Move the wallet page and all four ticket views (user list, ticket detail,
staff queue, admin overview) onto the i18n dictionaries — statuses,
priorities, departments, forms, stats, toasts and empty states — using
locale-aware Link/router and locale-aware date formatting.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Move the apps and managed-services list pages onto the i18n dictionaries
(titles, table headers, lifecycle/expiry labels, delete confirmations,
toast messages) and the locale-aware Link, reusing the shared status and
lifecycle/expiry copy. Add RTL-aware table alignment and icon spacing.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Convert the dashboard layout (sidebar nav, header, role badges, wallet,
sign-out, language switcher) and the dashboard home page to the i18n
dictionaries, including a shared deployment-status label map. Switch their
links/router to the locale-aware helpers and add RTL-aware spacing.
Remaining dashboard page bodies and shared components still render English
copy and will be localized in follow-up commits.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Introduce path-prefixed locale routing under app/[lang] with a middleware
that detects locale from cookie/Accept-Language (default fa-IR) and
redirects. Add fa-IR (source of truth) and en-US dictionaries, a server
getDictionary, a client I18nProvider/useT, locale-aware Link + router
helpers, and a language switcher. The root [lang] layout sets html
lang/dir and the per-locale font (Peyda for fa, Inter for en).
Landing sections and the login/register/auth shell now read all copy from
the dictionaries; dashboard localization follows in a later commit.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>