feat(admin): sprint 19 admin dashboard, routing, i18n
- Add admin dashboard feature (models/gateway/facade/components/page) - Wire admin/products routes and backoffice coming-soon placeholders - Add lastPublishedAt to ProjectEditorFacade/state - Add dashboard i18n keys (en/ru/hy) and docs/ADMIN.md Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -512,6 +512,8 @@ export const en: Translations = {
|
||||
validationMissingWidget: 'A homepage section has a widget with no type.',
|
||||
validationDuplicateNavLinks: 'Two or more header navigation links are duplicates.',
|
||||
validationInvalidColors: 'One or more theme colors are not valid hex colors.',
|
||||
validationMissingTranslations: 'Some content is missing translations for a supported language.',
|
||||
validationInvalidLayouts: 'One or more layouts reference an unknown layout type.',
|
||||
statusDraft: 'Draft',
|
||||
statusPublished: 'Published',
|
||||
unsavedChanges: 'Unsaved changes',
|
||||
@@ -530,6 +532,52 @@ export const en: Translations = {
|
||||
confirmResetDraft: 'This discards all unpublished changes and restores the last published configuration. Continue?',
|
||||
confirmResetSection: 'This discards unpublished changes in this section only. Continue?',
|
||||
},
|
||||
dashboard: {
|
||||
title: 'Dashboard',
|
||||
subtitle: 'Overview of your marketplace',
|
||||
cardMarketplaceStatus: 'Marketplace Status',
|
||||
cardProjectName: 'Project Name',
|
||||
cardCurrentTheme: 'Current Theme',
|
||||
cardLanguages: 'Languages',
|
||||
cardCategoriesCount: 'Categories',
|
||||
cardProductsCount: 'Products',
|
||||
cardOrders: 'Orders',
|
||||
cardRevenue: 'Revenue',
|
||||
cardLastPublish: 'Last Publish',
|
||||
cardLastDraftSave: 'Last Draft Save',
|
||||
cardBootstrapVersion: 'Bootstrap Version',
|
||||
cardActiveLayout: 'Active Layout',
|
||||
cardEnabledWidgets: 'Enabled Widgets',
|
||||
stateLoading: 'Loading...',
|
||||
stateEmpty: 'No data yet',
|
||||
stateError: 'Could not load this card',
|
||||
statePendingBackend: 'Awaiting backend integration',
|
||||
never: 'Never',
|
||||
quickActionsTitle: 'Quick Actions',
|
||||
actionEditProject: 'Edit Project',
|
||||
actionCategories: 'Categories',
|
||||
actionProducts: 'Products',
|
||||
actionStaticPages: 'Static Pages',
|
||||
actionTransactions: 'Transactions',
|
||||
actionOrders: 'Orders',
|
||||
actionMediaLibrary: 'Media Library',
|
||||
actionPreviewMarketplace: 'Preview Marketplace',
|
||||
activityTitle: 'Recent Activity',
|
||||
activityEmpty: 'No activity yet. Save or publish a change to see it here.',
|
||||
activityDraftSaved: 'Draft saved',
|
||||
activityPublished: 'Published',
|
||||
healthTitle: 'System Health',
|
||||
healthAllClear: 'All checks passed',
|
||||
healthBootstrapValid: 'Bootstrap valid',
|
||||
healthConfigurationValid: 'Configuration valid',
|
||||
healthMissingTranslations: 'Missing translations',
|
||||
healthInvalidColors: 'Invalid colors',
|
||||
healthInvalidWidgetReferences: 'Invalid widget references',
|
||||
healthInvalidLayouts: 'Invalid layouts',
|
||||
comingSoonTitle: 'Coming soon',
|
||||
comingSoonDescription: 'This section is not built yet. Check back in a future update.',
|
||||
backToDashboard: 'Back to dashboard',
|
||||
},
|
||||
staticPages: {
|
||||
notFound: 'Page not found',
|
||||
backHome: 'Back to home',
|
||||
|
||||
Reference in New Issue
Block a user