Концепції, цінність і типові сценарії
Концепції, цінність і типові сценарії
Preparing Ring content
Preparing Ring content
Preparing Ring content
Використовуйте вкладки Founder / Developer на бічній панелі документації, щоб відфільтрувати цю сторінку. HTTP-обробники для тих самих робочих столів розташовані в Admin API.
Консоль адміністратора Ring (/admin/*) — це робоче середовище оператора з трьома панелями: ліві меню для центрів розділів, центральна область для роботи, права панель для підменю модуля та пов’язаних центрів. Навігація фільтрується за роллю з одного SSOT — адміністратори платформи (admin | superadmin) бачать центри спільноти, довіри, комерції та CRM; superadmin також бачить Platform ops (налаштування, процеси, продуктивність, підписки, Web3).
|| Поверхня | Що показує | Джерело |
||---------|---------------|--------|
|| Панель піктограм | Один пункт Admin → /admin | sidebar-rail.tsx + isPlatformAdmin |
|| Бічна панель для ПК | Згруповані центри (Overview → … → Platform) | useAdminNavMenu ← admin-nav-config.ts |
|| Мобільний нижній аркуш | Ті самі відфільтровані центри | bottom-navigation.tsx |
|| Права панель | Підменю → пов’язані центри → необов’язкова статистика новин → довідка | AdminWrapper → admin-rail.tsx |
|| Плитки дашборда | Ті самі центри (без самого Dashboard) | admin-dashboard-tiles.ts |
|| Оболонка CRM | Центральна область на всю ширину + горизонтальні вкладки (без правої панелі) | CrmAdminShell |
Оператори не повинні шукати потрібний пункт у трьох різних меню. Одна конфігурація керує робочим столом для ПК, мобільною версією, плитками дашборда та правою панеллю — тому надання комусь ролі admin або superadmin узгоджено змінює те, що ця людина може відкривати.
Центр безпеки об’єднує робочі столи протидії шахрайству та верифікації у /admin/security?tab=….
Вхідні, чернетки, контакти, аналітика й завдання розташовані в /admin/crm/* із вкладками CrmAdminShell.
Робочий стіл замовлень CRM, спільна кімната Project, розділ покупця My Projects.
Центр Store відкриває товари; панель містить посилання на замовлення, запаси, комісії та додавання товару.
RBAC із білим списком для віддалених операцій — доповнює вебконсоль.
Застарілі URL /admin/fraud-desk і /admin/verification досі працюють — вони перенаправляють на вкладки центру Security, тому закладки й старі документи продовжують працювати.
|| Роль | Головні меню | Група Platform |
||------|------------|----------------|
|| admin | Overview, Community, Trust & safety, Commerce, Email & CRM | Прихована |
|| superadmin | Те саме + Platform | Settings, Processes, Performance, Subscriptions, Web3 |
SSOT ролей: features/auth/user-role.ts (isPlatformAdmin, isSuperadmin). Захист макета: AdminAuthGuard у app/[locale]/admin/layout.tsx.
Глибокий огляд: перевірені маршрути `/api/admin/*` і рівні доступу для роботи з консоллю.
Залежність: рівні RBAC і конфіденційні рівні, які захищають AdminWrapper.
Той самий процес: UI адміністратора CRM у `/admin/crm/*` використовує модель робочого столу оператора.
Наступний крок: зберігайте накопичувані знання про проєкт у сховищі Admin Wiki поруч із News.
Використовуйте вкладки Founder / Developer на бічній панелі документації, щоб відфільтрувати цю сторінку. HTTP-обробники для тих самих робочих столів розташовані в Admin API.
Консоль адміністратора Ring (/admin/*) — це робоче середовище оператора з трьома панелями: ліві меню для центрів розділів, центральна область для роботи, права панель для підменю модуля та пов’язаних центрів. Навігація фільтрується за роллю з одного SSOT — адміністратори платформи (admin | superadmin) бачать центри спільноти, довіри, комерції та CRM; superadmin також бачить Platform ops (налаштування, процеси, продуктивність, підписки, Web3).
|| Поверхня | Що показує | Джерело |
||---------|---------------|--------|
|| Панель піктограм | Один пункт Admin → /admin | sidebar-rail.tsx + isPlatformAdmin |
|| Бічна панель для ПК | Згруповані центри (Overview → … → Platform) | useAdminNavMenu ← admin-nav-config.ts |
|| Мобільний нижній аркуш | Ті самі відфільтровані центри | bottom-navigation.tsx |
|| Права панель | Підменю → пов’язані центри → необов’язкова статистика новин → довідка | AdminWrapper → admin-rail.tsx |
|| Плитки дашборда | Ті самі центри (без самого Dashboard) | admin-dashboard-tiles.ts |
|| Оболонка CRM | Центральна область на всю ширину + горизонтальні вкладки (без правої панелі) | CrmAdminShell |
Оператори не повинні шукати потрібний пункт у трьох різних меню. Одна конфігурація керує робочим столом для ПК, мобільною версією, плитками дашборда та правою панеллю — тому надання комусь ролі admin або superadmin узгоджено змінює те, що ця людина може відкривати.
Центр безпеки об’єднує робочі столи протидії шахрайству та верифікації у /admin/security?tab=….
Вхідні, чернетки, контакти, аналітика й завдання розташовані в /admin/crm/* із вкладками CrmAdminShell.
Робочий стіл замовлень CRM, спільна кімната Project, розділ покупця My Projects.
Центр Store відкриває товари; панель містить посилання на замовлення, запаси, комісії та додавання товару.
RBAC із білим списком для віддалених операцій — доповнює вебконсоль.
Застарілі URL /admin/fraud-desk і /admin/verification досі працюють — вони перенаправляють на вкладки центру Security, тому закладки й старі документи продовжують працювати.
|| Роль | Головні меню | Група Platform |
||------|------------|----------------|
|| admin | Overview, Community, Trust & safety, Commerce, Email & CRM | Прихована |
|| superadmin | Те саме + Platform | Settings, Processes, Performance, Subscriptions, Web3 |
SSOT ролей: features/auth/user-role.ts (isPlatformAdmin, isSuperadmin). Захист макета: AdminAuthGuard у app/[locale]/admin/layout.tsx.
Глибокий огляд: перевірені маршрути `/api/admin/*` і рівні доступу для роботи з консоллю.
Залежність: рівні RBAC і конфіденційні рівні, які захищають AdminWrapper.
Той самий процес: UI адміністратора CRM у `/admin/crm/*` використовує модель робочого столу оператора.
Наступний крок: зберігайте накопичувані знання про проєкт у сховищі Admin Wiki поруч із News.
Використовуйте вкладки Founder / Developer на бічній панелі документації, щоб відфільтрувати цю сторінку. HTTP-обробники для тих самих робочих столів розташовані в Admin API.
Консоль адміністратора Ring (/admin/*) — це робоче середовище оператора з трьома панелями: ліві меню для центрів розділів, центральна область для роботи, права панель для підменю модуля та пов’язаних центрів. Навігація фільтрується за роллю з одного SSOT — адміністратори платформи (admin | superadmin) бачать центри спільноти, довіри, комерції та CRM; superadmin також бачить Platform ops (налаштування, процеси, продуктивність, підписки, Web3).
|| Поверхня | Що показує | Джерело |
||---------|---------------|--------|
|| Панель піктограм | Один пункт Admin → /admin | sidebar-rail.tsx + isPlatformAdmin |
|| Бічна панель для ПК | Згруповані центри (Overview → … → Platform) | useAdminNavMenu ← admin-nav-config.ts |
|| Мобільний нижній аркуш | Ті самі відфільтровані центри | bottom-navigation.tsx |
|| Права панель | Підменю → пов’язані центри → необов’язкова статистика новин → довідка | AdminWrapper → admin-rail.tsx |
|| Плитки дашборда | Ті самі центри (без самого Dashboard) | admin-dashboard-tiles.ts |
|| Оболонка CRM | Центральна область на всю ширину + горизонтальні вкладки (без правої панелі) | CrmAdminShell |
Оператори не повинні шукати потрібний пункт у трьох різних меню. Одна конфігурація керує робочим столом для ПК, мобільною версією, плитками дашборда та правою панеллю — тому надання комусь ролі admin або superadmin узгоджено змінює те, що ця людина може відкривати.
Центр безпеки об’єднує робочі столи протидії шахрайству та верифікації у /admin/security?tab=….
Вхідні, чернетки, контакти, аналітика й завдання розташовані в /admin/crm/* із вкладками CrmAdminShell.
Робочий стіл замовлень CRM, спільна кімната Project, розділ покупця My Projects.
Центр Store відкриває товари; панель містить посилання на замовлення, запаси, комісії та додавання товару.
RBAC із білим списком для віддалених операцій — доповнює вебконсоль.
Застарілі URL /admin/fraud-desk і /admin/verification досі працюють — вони перенаправляють на вкладки центру Security, тому закладки й старі документи продовжують працювати.
|| Роль | Головні меню | Група Platform |
||------|------------|----------------|
|| admin | Overview, Community, Trust & safety, Commerce, Email & CRM | Прихована |
|| superadmin | Те саме + Platform | Settings, Processes, Performance, Subscriptions, Web3 |
SSOT ролей: features/auth/user-role.ts (isPlatformAdmin, isSuperadmin). Захист макета: AdminAuthGuard у app/[locale]/admin/layout.tsx.
Глибокий огляд: перевірені маршрути `/api/admin/*` і рівні доступу для роботи з консоллю.
Залежність: рівні RBAC і конфіденційні рівні, які захищають AdminWrapper.
Той самий процес: UI адміністратора CRM у `/admin/crm/*` використовує модель робочого столу оператора.
Наступний крок: зберігайте накопичувані знання про проєкт у сховищі Admin Wiki поруч із News.
Порядок в AdminSidebarContent:
resolveRailSection(pageContext) не дорівнює null і getRailSubmenu повертає посиланняgetRelatedHubspageContext === 'dashboard'pageContext === 'news' і передано newsStatsПідсвічування активних вкладок у query використовує pathWithQuery (pathname + useSearchParams), тому посилання з ?tab= у Security / Matcher / Moderation підсвічуються правильно.
|| pageContext | Розділ панелі | Помітне підменю |
||---------------|--------------|-----------------|
|| security / застарілі fraud-desk / verification | security | ?tab=overview\|fraud\|verification\|events |
|| matcher | matcher | Analytics або ?tab=moderation |
|| store | store | Products, orders, stock, commissions, add |
|| crm-* | CRM (вкладки, без панелі) | Orders, inbox, drafts, contacts, analytics, tasks через CrmAdminShell |
|| news | news | Articles, categories, analytics, bulk |
|| web3 | web3 | Dashboard + Settings (посилання на settings — якщо superadmin) |
|| users | users | ?tab= overview / users / verification / analytics |
|| moderation | moderation | queue / rules / reports / analytics (синхронізується з URL на клієнті) |
SSOT вкладок: features/admin/security/types/security-overview.ts (SECURITY_TABS). Клієнт: admin-security-center-client.tsx (контрольовані Tabs + router.push).
Moderation у панелі → /admin/matcher?tab=moderation. Клієнт admin-matcher-client.tsx читає tab; підвкладки аналітики (performance, quality, …) залишаються локальними для клієнта, коли tab відсутня.
Усі маршрути CRM обгортаються в CrmAdminShell + pageContext (crm-orders, crm-inbox, crm-drafts, crm-contacts, crm-tasks, crm-analytics). Оболонка встановлює showRightRail={false} і відображає горизонтальні вкладки: Orders | Inbox | Drafts | Contacts | Tasks | Analytics. HTTP API Email залишаються в /api/admin/email/*. Топологія чату замовлення проєкту: Owner Project Lab.
Немає перенаправлень зі старих URL /admin/email-*. Використовуйте /admin/crm/*. Константи ADMIN_EMAIL_* є псевдонімами шляхів CRM для сумісності коду.
/admin/web3/settings має передавати pageContext="web3" (сторінка лише для superadmin), щоб відображалося підменю Web3 замість пов’язаних центрів дашборда.
Додайте елемент у відповідну групу ADMIN_NAV_GROUPS з href, pageContext, minRole і labelKey. Додайте мітку до admin-labels.ts і locales/{en,uk,ru}/modules/admin.json.
Огорніть сторінку (або клієнт) у AdminWrapper із відповідним pageContext. Для маршрутів Email використовуйте EmailAdminShell.
Розширте getRailSubmenu / resolveRailSection. Надавайте перевагу реальним маршрутам або ?tab=, синхронізованим у клієнті сторінки (див. Security / Moderation). Передавайте pathWithQuery у предикати isActive, які перевіряють query-рядки.
Див. також: налаштування навігації на рівні клону під час розгалуження меню адміністратора.
/admin/fraud-desk → /admin/security?tab=fraud
/admin/verification → /admin/security?tab=verificationПорядок в AdminSidebarContent:
resolveRailSection(pageContext) не дорівнює null і getRailSubmenu повертає посиланняgetRelatedHubspageContext === 'dashboard'pageContext === 'news' і передано newsStatsПідсвічування активних вкладок у query використовує pathWithQuery (pathname + useSearchParams), тому посилання з ?tab= у Security / Matcher / Moderation підсвічуються правильно.
|| pageContext | Розділ панелі | Помітне підменю |
||---------------|--------------|-----------------|
|| security / застарілі fraud-desk / verification | security | ?tab=overview\|fraud\|verification\|events |
|| matcher | matcher | Analytics або ?tab=moderation |
|| store | store | Products, orders, stock, commissions, add |
|| crm-* | CRM (вкладки, без панелі) | Orders, inbox, drafts, contacts, analytics, tasks через CrmAdminShell |
|| news | news | Articles, categories, analytics, bulk |
|| web3 | web3 | Dashboard + Settings (посилання на settings — якщо superadmin) |
|| users | users | ?tab= overview / users / verification / analytics |
|| moderation | moderation | queue / rules / reports / analytics (синхронізується з URL на клієнті) |
SSOT вкладок: features/admin/security/types/security-overview.ts (SECURITY_TABS). Клієнт: admin-security-center-client.tsx (контрольовані Tabs + router.push).
Moderation у панелі → /admin/matcher?tab=moderation. Клієнт admin-matcher-client.tsx читає tab; підвкладки аналітики (performance, quality, …) залишаються локальними для клієнта, коли tab відсутня.
Усі маршрути CRM обгортаються в CrmAdminShell + pageContext (crm-orders, crm-inbox, crm-drafts, crm-contacts, crm-tasks, crm-analytics). Оболонка встановлює showRightRail={false} і відображає горизонтальні вкладки: Orders | Inbox | Drafts | Contacts | Tasks | Analytics. HTTP API Email залишаються в /api/admin/email/*. Топологія чату замовлення проєкту: Owner Project Lab.
Немає перенаправлень зі старих URL /admin/email-*. Використовуйте /admin/crm/*. Константи ADMIN_EMAIL_* є псевдонімами шляхів CRM для сумісності коду.
/admin/web3/settings має передавати pageContext="web3" (сторінка лише для superadmin), щоб відображалося підменю Web3 замість пов’язаних центрів дашборда.
Додайте елемент у відповідну групу ADMIN_NAV_GROUPS з href, pageContext, minRole і labelKey. Додайте мітку до admin-labels.ts і locales/{en,uk,ru}/modules/admin.json.
Огорніть сторінку (або клієнт) у AdminWrapper із відповідним pageContext. Для маршрутів Email використовуйте EmailAdminShell.
Розширте getRailSubmenu / resolveRailSection. Надавайте перевагу реальним маршрутам або ?tab=, синхронізованим у клієнті сторінки (див. Security / Moderation). Передавайте pathWithQuery у предикати isActive, які перевіряють query-рядки.
Див. також: налаштування навігації на рівні клону під час розгалуження меню адміністратора.
/admin/fraud-desk → /admin/security?tab=fraud
/admin/verification → /admin/security?tab=verificationПорядок в AdminSidebarContent:
resolveRailSection(pageContext) не дорівнює null і getRailSubmenu повертає посиланняgetRelatedHubspageContext === 'dashboard'pageContext === 'news' і передано newsStatsПідсвічування активних вкладок у query використовує pathWithQuery (pathname + useSearchParams), тому посилання з ?tab= у Security / Matcher / Moderation підсвічуються правильно.
|| pageContext | Розділ панелі | Помітне підменю |
||---------------|--------------|-----------------|
|| security / застарілі fraud-desk / verification | security | ?tab=overview\|fraud\|verification\|events |
|| matcher | matcher | Analytics або ?tab=moderation |
|| store | store | Products, orders, stock, commissions, add |
|| crm-* | CRM (вкладки, без панелі) | Orders, inbox, drafts, contacts, analytics, tasks через CrmAdminShell |
|| news | news | Articles, categories, analytics, bulk |
|| web3 | web3 | Dashboard + Settings (посилання на settings — якщо superadmin) |
|| users | users | ?tab= overview / users / verification / analytics |
|| moderation | moderation | queue / rules / reports / analytics (синхронізується з URL на клієнті) |
SSOT вкладок: features/admin/security/types/security-overview.ts (SECURITY_TABS). Клієнт: admin-security-center-client.tsx (контрольовані Tabs + router.push).
Moderation у панелі → /admin/matcher?tab=moderation. Клієнт admin-matcher-client.tsx читає tab; підвкладки аналітики (performance, quality, …) залишаються локальними для клієнта, коли tab відсутня.
Усі маршрути CRM обгортаються в CrmAdminShell + pageContext (crm-orders, crm-inbox, crm-drafts, crm-contacts, crm-tasks, crm-analytics). Оболонка встановлює showRightRail={false} і відображає горизонтальні вкладки: Orders | Inbox | Drafts | Contacts | Tasks | Analytics. HTTP API Email залишаються в /api/admin/email/*. Топологія чату замовлення проєкту: Owner Project Lab.
Немає перенаправлень зі старих URL /admin/email-*. Використовуйте /admin/crm/*. Константи ADMIN_EMAIL_* є псевдонімами шляхів CRM для сумісності коду.
/admin/web3/settings має передавати pageContext="web3" (сторінка лише для superadmin), щоб відображалося підменю Web3 замість пов’язаних центрів дашборда.
Додайте елемент у відповідну групу ADMIN_NAV_GROUPS з href, pageContext, minRole і labelKey. Додайте мітку до admin-labels.ts і locales/{en,uk,ru}/modules/admin.json.
Огорніть сторінку (або клієнт) у AdminWrapper із відповідним pageContext. Для маршрутів Email використовуйте EmailAdminShell.
Розширте getRailSubmenu / resolveRailSection. Надавайте перевагу реальним маршрутам або ?tab=, синхронізованим у клієнті сторінки (див. Security / Moderation). Передавайте pathWithQuery у предикати isActive, які перевіряють query-рядки.
Див. також: налаштування навігації на рівні клону під час розгалуження меню адміністратора.
/admin/fraud-desk → /admin/security?tab=fraud
/admin/verification → /admin/security?tab=verification