feat: close stub-page gaps - profile login/logout, admin Reports/Settings, Help/Docs links
Some checks failed
Architecture Governance / architecture (push) Has been cancelled
Some checks failed
Architecture Governance / architecture (push) Has been cancelled
Sprint A: storefront header profile control (login/logout only, no menu), wired to existing customer Telegram auth (AuthService). Sprint B: backoffice/reports page, reuses AdminAnalyticsFacade (Sales, Top Products, Marketplace Health cards + CSV export). Sprint C: backoffice/settings page, admin UI density preference (comfortable/compact), localStorage-persisted, applied to app-table across all admin list pages. Sprint D: admin bottom-nav Help -> mailto using existing supportEmail, Documentation -> external link via new TenantConfig.documentationUrl. AdminNavLink gains externalHref for non-routerLink nav entries. Docs: docs/GLOBAL-SPRINT-PLAN.md tracks the full sprint breakdown. docs/COMING-SOON-AUDIT.md removed, folded into docs/KNOWN-ISSUES.md. docs/BACKEND.md updated with the new documentationUrl bootstrap field. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -12,6 +12,8 @@ export const en: Translations = {
|
||||
compare: 'Compare',
|
||||
openMenu: 'Open menu',
|
||||
closeMenu: 'Close menu',
|
||||
login: 'Log in',
|
||||
logout: 'Log out',
|
||||
},
|
||||
footer: {
|
||||
description: 'A modern marketplace for comfortable shopping',
|
||||
@@ -1909,6 +1911,16 @@ export const en: Translations = {
|
||||
lastPublished: 'Last published',
|
||||
syncStatus: 'Sync',
|
||||
},
|
||||
adminReports: {
|
||||
sales: 'Sales',
|
||||
topProducts: 'Top Products',
|
||||
marketplaceHealth: 'Marketplace Health',
|
||||
},
|
||||
adminSettings: {
|
||||
density: 'Table density',
|
||||
densityExplain: 'Reduce row padding across backoffice list pages for a more compact view.',
|
||||
densityCompact: 'Compact rows',
|
||||
},
|
||||
adminAnalytics: {
|
||||
topProductsEmptyTitle: 'No product sales in this period',
|
||||
topProductsEmptyDescription: 'Try a wider date range.',
|
||||
@@ -2060,6 +2072,8 @@ export const en: Translations = {
|
||||
monitoring: { title: 'Monitoring', description: 'Queue, webhook, and system event status' },
|
||||
analytics: { title: 'Analytics', description: 'Sales, products, and shopper behavior' },
|
||||
sellerManagement: { title: 'Seller Management', description: 'Onboard and manage independent sellers on your marketplace' },
|
||||
reports: { title: 'Reports', description: 'Export sales, product, and marketplace health reports' },
|
||||
settings: { title: 'Settings', description: 'Backoffice display preferences' },
|
||||
},
|
||||
},
|
||||
adminSellerManagement: {
|
||||
|
||||
@@ -12,6 +12,8 @@ export const hy: Translations = {
|
||||
compare: 'Համեմատում',
|
||||
openMenu: 'Բացել մենյուն',
|
||||
closeMenu: 'Փակել մենյուն',
|
||||
login: 'Մուտք',
|
||||
logout: 'Ելք',
|
||||
},
|
||||
footer: {
|
||||
description: 'Ժամանակակից մարքեթփլեյս հարմար գնումների համար',
|
||||
@@ -1904,6 +1906,16 @@ export const hy: Translations = {
|
||||
lastPublished: 'Վերջին հրապարակում',
|
||||
syncStatus: 'Համաժամացում',
|
||||
},
|
||||
adminReports: {
|
||||
sales: 'Վաճառքներ',
|
||||
topProducts: 'Լավագույն ապրանքներ',
|
||||
marketplaceHealth: 'Մարքեթփլեյսի վիճակ',
|
||||
},
|
||||
adminSettings: {
|
||||
density: 'Աղյուսակի խտություն',
|
||||
densityExplain: 'Փոքրացնել տողերի հեռավորությունը ադմինիստրատիվ վահանակի ցուցակներում՝ ավելի կոմպակտ տեսքի համար։',
|
||||
densityCompact: 'Կոմպակտ տողեր',
|
||||
},
|
||||
adminAnalytics: {
|
||||
topProductsEmptyTitle: 'Այս ժամանակահատվածում ապրանքների վաճառք չկա',
|
||||
topProductsEmptyDescription: 'Փորձեք ընտրել ավելի լայն ամսաթվերի միջակայք։',
|
||||
@@ -2055,6 +2067,8 @@ export const hy: Translations = {
|
||||
monitoring: { title: 'Մոնիտորինգ', description: 'Հերթերի, webhook-ների և համակարգային իրադարձությունների վիճակը' },
|
||||
analytics: { title: 'Վերլուծություն', description: 'Վաճառքներ, ապրանքներ և գնորդների վարքագիծ' },
|
||||
sellerManagement: { title: 'Վաճառողների կառավարում', description: 'Թույլ տվեք անկախ վաճառողներին միանալ ձեր մարքեթփլեյսին՝ պահպանելով կենտրոնացված կառավարումը' },
|
||||
reports: { title: 'Հաշվետվություններ', description: 'Արտահանել վաճառքների, ապրանքների և մարքեթփլեյսի վիճակի հաշվետվություններ' },
|
||||
settings: { title: 'Կարգավորումներ', description: 'Ադմինիստրատիվ վահանակի ցուցադրման նախապատվություններ' },
|
||||
},
|
||||
},
|
||||
adminSellerManagement: {
|
||||
|
||||
@@ -12,6 +12,8 @@ export const ru: Translations = {
|
||||
compare: 'Сравнение',
|
||||
openMenu: 'Открыть меню',
|
||||
closeMenu: 'Закрыть меню',
|
||||
login: 'Войти',
|
||||
logout: 'Выйти',
|
||||
},
|
||||
footer: {
|
||||
description: 'Современный маркетплейс для комфортных покупок',
|
||||
@@ -1904,6 +1906,16 @@ export const ru: Translations = {
|
||||
lastPublished: 'Последняя публикация',
|
||||
syncStatus: 'Синхронизация',
|
||||
},
|
||||
adminReports: {
|
||||
sales: 'Продажи',
|
||||
topProducts: 'Топ товаров',
|
||||
marketplaceHealth: 'Состояние маркетплейса',
|
||||
},
|
||||
adminSettings: {
|
||||
density: 'Плотность таблиц',
|
||||
densityExplain: 'Уменьшить отступы строк в списках панели управления для более компактного вида.',
|
||||
densityCompact: 'Компактные строки',
|
||||
},
|
||||
adminAnalytics: {
|
||||
topProductsEmptyTitle: 'Нет продаж товаров за этот период',
|
||||
topProductsEmptyDescription: 'Попробуйте выбрать более широкий диапазон дат.',
|
||||
@@ -2055,6 +2067,8 @@ export const ru: Translations = {
|
||||
monitoring: { title: 'Мониторинг', description: 'Состояние очередей, вебхуков и системных событий' },
|
||||
analytics: { title: 'Аналитика', description: 'Продажи, товары и поведение покупателей' },
|
||||
sellerManagement: { title: 'Управление продавцами', description: 'Подключайте независимых продавцов к вашему маркетплейсу с централизованным администрированием' },
|
||||
reports: { title: 'Отчёты', description: 'Экспорт отчётов по продажам, товарам и состоянию маркетплейса' },
|
||||
settings: { title: 'Настройки', description: 'Настройки отображения панели управления' },
|
||||
},
|
||||
},
|
||||
adminSellerManagement: {
|
||||
|
||||
@@ -10,6 +10,8 @@ export interface Translations {
|
||||
compare: string;
|
||||
openMenu: string;
|
||||
closeMenu: string;
|
||||
login: string;
|
||||
logout: string;
|
||||
};
|
||||
footer: {
|
||||
description: string;
|
||||
@@ -1917,6 +1919,16 @@ export interface Translations {
|
||||
lastPublished: string;
|
||||
syncStatus: string;
|
||||
};
|
||||
adminReports: {
|
||||
sales: string;
|
||||
topProducts: string;
|
||||
marketplaceHealth: string;
|
||||
};
|
||||
adminSettings: {
|
||||
density: string;
|
||||
densityExplain: string;
|
||||
densityCompact: string;
|
||||
};
|
||||
adminAnalytics: {
|
||||
topProductsEmptyTitle: string;
|
||||
topProductsEmptyDescription: string;
|
||||
@@ -2068,6 +2080,8 @@ export interface Translations {
|
||||
monitoring: { title: string; description: string };
|
||||
analytics: { title: string; description: string };
|
||||
sellerManagement: { title: string; description: string };
|
||||
reports: { title: string; description: string };
|
||||
settings: { title: string; description: string };
|
||||
};
|
||||
};
|
||||
adminSellerManagement: {
|
||||
|
||||
Reference in New Issue
Block a user