33 lines
2.2 KiB
Markdown
33 lines
2.2 KiB
Markdown
# Chat Area (расширение VS Code / Cursor)
|
||
|
||
## 1. Назначение и цели
|
||
|
||
Расширение добавляет в боковую панель область в виде **чата**: фиксированный заголовок (очистка и меню), лента сообщений и поле ввода с кнопкой «Отправить». Сообщения обрабатываются через **заглушку бэкенда** (эхо-ответ); реальная интеграция с API подключается позже.
|
||
|
||
## 2. Архитектура и workflow
|
||
|
||
- **Activity Bar** → контейнер представлений `chat-area-sidebar` → **WebviewView** `chat-area.chatView`.
|
||
- **Extension Host** ([`src/extension.ts`](src/extension.ts)): провайдер веб-представления, хранение истории сообщений в памяти, при `send` вызов [`src/backendStub.ts`](src/backendStub.ts) и рассылка списка сообщений в Webview через `postMessage`.
|
||
- **Webview** ([`media/chat.html`](media/chat.html) + CSS/JS): вёрстка 80/20 (лента / ввод), кнопки, меню «⋯»; события уходят в расширение через `vscode.postMessage`.
|
||
|
||
## 3. Настройка
|
||
|
||
- **Node.js** (LTS), **npm**.
|
||
- Переменные окружения и внешние сервисы на этапе заглушек **не требуются**.
|
||
|
||
## 4. Запуск (разработка)
|
||
|
||
```bash
|
||
cd plugin
|
||
npm install
|
||
npm run compile
|
||
```
|
||
|
||
В VS Code / Cursor: **Run → Start Debugging** (или **F5**), выбрать конфигурацию **Run Extension**. В окне Extension Development Host открыть боковую панель **Chat** и вкладку **Чат**.
|
||
|
||
## 5. Тесты
|
||
|
||
Автотесты в проекте не настроены. Проверка вручную: **F5** → отправка сообщения (ожидается ответ `[stub] Echo: …`), **Очистить**, пункты меню «⋯» (заглушка — информационное сообщение).
|
||
|
||
Упаковка в `.vsix` (при установленном `@vscode/vsce`): `npx @vscode/vsce package`.
|