Complete Sprint 2 (chat hub) and Sprint 3 (color palettes)
Sprint 2 — chat hub: - Chat tab becomes a list of three conversations: AI assistant (featured, gradient card), doctor Syndaev, and clinic administrator - data.js: new `chats` array with kind, participants, message history, online/unread state, time of last message, AI suggestions - screens-chats.jsx: ChatsListScreen and ChatConversationScreen with per-kind UI — AI gets suggestion chips + AI-badge, doctor gets video-call button, operator gets phone button - Recovery surgeon chat button routes to chat:doctor-syndaev directly - Tab bar auto-hides on pushed chat:<id> routes - ChatTabScreen removed from screens-misc.jsx Sprint 3 — color palettes: - ACCENT_OPTIONS extended with accent/accentDark/accent50, p300/success50/fg4 so palette switches change the full theme (primary + warm + accent + muted + success) - New palette "Лагуна" from the design-system screenshot: primary #29AEE3 (sky blue), accent #FFA39C (coral), warm #E9E4D4 (beige) - New palette "Бриз": Лагуна variant with primary #63BAC3 (muted teal) and the bright sky blue #29AEE3 demoted to p300 - All 9 screenshot colors wired: #f2fee6→success-50, #93908f→fg-4, #63bac3→p300 (visible as border on Clinic Stats card in Home V2) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
+58
@@ -168,6 +168,64 @@ export const CLINIC_DATA = {
|
||||
],
|
||||
},
|
||||
],
|
||||
chats: [
|
||||
{
|
||||
id: 'ai',
|
||||
kind: 'ai',
|
||||
name: 'Умный помощник',
|
||||
subtitle: 'Бот клиники УГН · отвечает мгновенно',
|
||||
icon: '✨',
|
||||
pinned: true,
|
||||
lastMessage: 'Отлично! Отметил приём ✓',
|
||||
lastTime: 'Сейчас',
|
||||
unread: 0,
|
||||
online: true,
|
||||
messages: [
|
||||
{ from: 'ai', t: 'Добрый день, Анна! Я помощник клиники УГН. Могу подсказать с записью, напомнить о лекарствах, объяснить заключение врача или помочь с тестом слуха.', tm: '09:00' },
|
||||
{ from: 'me', t: 'Когда следующий контроль?', tm: '09:12' },
|
||||
{ from: 'ai', t: 'Следующий контрольный осмотр — на 10-й день после операции, это 22 апреля. К этому дню запланирована эндоскопия полости носа у Синдяева А.В.', tm: '09:12' },
|
||||
{ from: 'ai', t: '⏰ Напоминание: приём Амоксиклава в 20:00 — через 2 часа', tm: '18:00' },
|
||||
{ from: 'me', t: 'Принял', tm: '20:03' },
|
||||
{ from: 'ai', t: 'Отлично! Отметил приём ✓ Следующая доза — завтра в 08:00. Осталось 3 дня курса.', tm: '20:03' },
|
||||
],
|
||||
suggestions: ['Что показала аудиограмма?', 'Можно ли в баню?', 'Перенести приём 21 апреля'],
|
||||
},
|
||||
{
|
||||
id: 'doctor-syndaev',
|
||||
kind: 'doctor',
|
||||
doctorId: 'syndaev',
|
||||
lastMessage: 'Отлично, жду. Если что-то изменится — напишите.',
|
||||
lastTime: '14:15',
|
||||
unread: 2,
|
||||
online: true,
|
||||
messages: [
|
||||
{ from: 'doc', t: 'Добрый день, Анна! Как самочувствие после операции?', tm: '14:02' },
|
||||
{ from: 'me', t: 'Здравствуйте! В целом хорошо, немного саднит в носу по утрам.', tm: '14:08' },
|
||||
{ from: 'doc', t: 'Это нормально на 6-й день. Продолжайте промывания Аква Марис 4 раза в день.', tm: '14:10' },
|
||||
{ from: 'doc', t: 'Выходите на осмотр сегодня? Я свободен после 15:00.', tm: '14:11' },
|
||||
{ from: 'me', t: 'Да, буду в 16:00 как запланировано.', tm: '14:14' },
|
||||
{ from: 'doc', t: 'Отлично, жду. Если что-то изменится — напишите.', tm: '14:15' },
|
||||
],
|
||||
},
|
||||
{
|
||||
id: 'operator',
|
||||
kind: 'operator',
|
||||
name: 'Администратор',
|
||||
subtitle: 'Регистратура · Пн–Вс 9:00–21:00',
|
||||
icon: '📞',
|
||||
lastMessage: 'Справка отправлена на почту.',
|
||||
lastTime: 'Вчера',
|
||||
unread: 0,
|
||||
online: false,
|
||||
messages: [
|
||||
{ from: 'op', t: 'Добрый день, Анна! Это регистратура Клиники УГН. Чем могу помочь?', tm: 'Вчера, 11:30' },
|
||||
{ from: 'me', t: 'Здравствуйте. Нужна справка о прохождении аудиометрии для работы.', tm: 'Вчера, 11:45' },
|
||||
{ from: 'op', t: 'Подготовим за час. Подъехать в клинику за оригиналом или отправить PDF на почту?', tm: 'Вчера, 11:48' },
|
||||
{ from: 'me', t: 'На почту, пожалуйста.', tm: 'Вчера, 11:50' },
|
||||
{ from: 'op', t: 'Готово. Справка отправлена на arazor72@gmail.com. Если нужен оригинал с печатью — забирайте на ресепшене в любое время.', tm: 'Вчера, 12:40' },
|
||||
],
|
||||
},
|
||||
],
|
||||
recovery: {
|
||||
op: 'Септопластика',
|
||||
surgeon: 'syndaev',
|
||||
|
||||
Reference in New Issue
Block a user