Исправлена сборка плагина и удалён нерабочий код
- Исправлен маппинг статусов Logseq → PPDB (теперь отправляет TODO/DOING/DONE вместо new/in_progress/completed) - Удалён нерабочий код setupConfig (использовал несуществующий API) - Исправлена сборка: теперь создаётся index.html + assets/ вместо одного index.js - Исправлено чтение свойств блоков (проверка source-id/sourceId/source_id) - Добавлен скрипт deploy.sh для деплоя в ~/.logseq/plugins/
This commit is contained in:
47
CLAUDE.md
Normal file
47
CLAUDE.md
Normal file
@@ -0,0 +1,47 @@
|
||||
# CLAUDE.md
|
||||
|
||||
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
||||
|
||||
## Описание проекта
|
||||
|
||||
TODO Everywhere — Logseq плагин для синхронизации задач из внешних источников (PPDB, Gitea) в Logseq.
|
||||
|
||||
## Команды сборки
|
||||
|
||||
```bash
|
||||
npm install # Установка зависимостей
|
||||
npm run build # Сборка для продакшена (dist/index.js)
|
||||
npm run dev # Режим разработки с автопересборкой
|
||||
```
|
||||
|
||||
## Архитектура
|
||||
|
||||
Плагин состоит из одного файла `src/index.ts`, который:
|
||||
|
||||
1. **Настройка config.edn** (`setupConfig`) — при первой установке автоматически добавляет Datalog-запросы для PPDB и Gitea в конфиг Logseq
|
||||
2. **Синхронизация PPDB** (`syncPPDBTasks`) — получает задачи через `/api/logseq/tasks` и создаёт страницу `PPDB - TODO`
|
||||
3. **Синхронизация Gitea** (`syncGiteaTasks`) — получает issues через Gitea API и создаёт страницы `Gitea - {name} - TODO`
|
||||
4. **Запись в страницу** (`writeToPage`) — конвертирует данные в формат Logseq блоков с TODO/DOING/DONE статусами
|
||||
|
||||
### Ключевые интерфейсы
|
||||
|
||||
- `PPDBTask` — структура задачи из PPDB API (включает `logseq_priority` и `logseq_status`)
|
||||
- `GiteaIssue` — структура issue из Gitea API
|
||||
- `GiteaSource` — настройки подключения к Gitea репозиторию
|
||||
|
||||
### Конвертация данных
|
||||
|
||||
- Приоритеты: critical/high → [#A], normal → [#B], low → [#C]
|
||||
- Статусы: new → TODO, in_progress → DOING, completed/rejected → DONE
|
||||
- Gitea labels определяют приоритет и тип (bug/feature)
|
||||
|
||||
## Настройки плагина
|
||||
|
||||
Настройки хранятся через `logseq.settings` и включают:
|
||||
- `ppdbUrl`, `ppdbApiKey` — подключение к PPDB
|
||||
- `giteaSources` — JSON массив Gitea репозиториев
|
||||
- `configVersion` — версия конфига для отслеживания миграций
|
||||
|
||||
## Связанный API
|
||||
|
||||
PPDB endpoint `/api/logseq/tasks` (в проекте ppdb-site) требует `LOGSEQ_API_KEY` в переменных окружения.
|
||||
Reference in New Issue
Block a user