add update button
This commit is contained in:
72
README.md
Normal file
72
README.md
Normal file
@@ -0,0 +1,72 @@
|
||||
# Izipus — менеджер шаблонов ответов
|
||||
|
||||
Расширение для браузеров на базе Chromium, которое собирает текстовые шаблоны в одном месте и позволяет копировать их в буфер обмена одним кликом.
|
||||
|
||||
## Возможности
|
||||
|
||||
- **Категории шаблонов** — шаблоны сгруппированы по сценариям (ответы клиентам, запросы партнёрам, коды ошибок и т.д.). Состояние разворота категорий сохраняется
|
||||
- **Быстрое копирование** — один клик копирует текст в буфер. `Alt+1...0` для первых десяти шаблонов, `Alt+Shift+1...0` для английской версии
|
||||
- **Поиск** — быстрый поиск по названиям и содержимому шаблонов
|
||||
- **Пользовательские шаблоны** — создание, редактирование и удаление своих шаблонов. Сохраняются в `chrome.storage.sync`
|
||||
- **Экспорт/импорт** — экспорт всех шаблонов в JSON, импорт через drag&drop, выбор файла или вставку текста
|
||||
- **Темы** — тёмная, светлая и системная тема с переключением в один клик
|
||||
- **Проверка обновлений** — кнопка в шапке запрашивает версию из репозитория (Gitea) и при наличии новой версии открывает страницу репозитория для ручной загрузки
|
||||
|
||||
## Обновление расширения (вручную)
|
||||
|
||||
Браузер **не разрешает** расширению самостоятельно скачивать и устанавливать себе новую версию с произвольного URL (Gitea, GitHub и т.п.) — это ограничение безопасности. Поэтому возможен только такой сценарий:
|
||||
|
||||
1. В расширении нажмите кнопку **«Проверить обновления»** (иконка обновления в шапке).
|
||||
2. При первом нажатии браузер запросит доступ к репозиторию — разрешите.
|
||||
3. Если доступна новая версия, откроется вкладка с репозиторием. Скачайте архив (например, **Clone** → **Download ZIP** или страница релизов).
|
||||
4. Распакуйте архив поверх папки, в которой установлено расширение (замените файлы).
|
||||
5. Откройте `chrome://extensions` и нажмите **Обновить** (или перезагрузите расширение).
|
||||
|
||||
**Если расширение установлено из клона репозитория (git clone):** можно обновляться скриптом в корне проекта:
|
||||
- **Windows:** двойной клик по `update.bat`.
|
||||
- **Linux / macOS:** в терминале выполните `chmod +x update.sh` (один раз), затем `./update.sh`.
|
||||
|
||||
После обновления перезагрузите расширение в `chrome://extensions`.
|
||||
|
||||
Версия для сравнения берётся из `manifest.json` в ветке `main` (или `master`) репозитория. Убедитесь, что в репозитории в этой ветке поле `version` в `manifest.json` обновлено.
|
||||
|
||||
## Установка
|
||||
|
||||
1. Скачайте или клонируйте репозиторий
|
||||
2. Откройте `chrome://extensions` в браузере
|
||||
3. Включите "Режим разработчика"
|
||||
4. Нажмите "Загрузить распакованное" и укажите папку проекта
|
||||
5. Иконка расширения появится на панели инструментов
|
||||
|
||||
## Структура проекта
|
||||
|
||||
```
|
||||
src/
|
||||
├── popup.html # HTML разметка
|
||||
├── popup.js # Главный файл инициализации
|
||||
├── popup.css # Стили
|
||||
├── templates.json # Предустановленные шаблоны
|
||||
└── js/ # Модули приложения
|
||||
├── constants.js # Константы
|
||||
├── storage.js # Работа с хранилищем
|
||||
├── clipboard.js # Буфер обмена
|
||||
├── templates.js # Валидация и работа с шаблонами
|
||||
├── ui.js # Модальные окна и категории
|
||||
├── hotkeys.js # Горячие клавиши
|
||||
├── search.js # Поиск
|
||||
├── theme.js # Управление темой
|
||||
└── update-check.js # Проверка версии в репозитории (Gitea)
|
||||
```
|
||||
|
||||
## Разработка
|
||||
|
||||
- **Редактирование шаблонов** — тексты в `src/templates.json`, после изменений перезагрузите расширение
|
||||
- **Добавление шаблонов** — создайте элемент в `popup.html` с нужным `id` и добавьте текст в `templates.json`
|
||||
- **Стили** — все стили в `src/popup.css`, используется Bootstrap для базовых компонентов
|
||||
|
||||
## Ограничения
|
||||
|
||||
- Лимит `chrome.storage.sync` — 100 КБ на расширение. При превышении экспортируйте данные
|
||||
- Предустановленные шаблоны редактируются только через JSON/HTML
|
||||
- Только ручная установка, публикация в магазинах не планируется
|
||||
- Обновление расширения только вручную: расширение не может само скачать и установить новую версию; кнопка «Проверить обновления» лишь показывает, есть ли новая версия в репозитории, и открывает страницу для загрузки
|
||||
Reference in New Issue
Block a user