52 lines
1.9 KiB
Markdown
52 lines
1.9 KiB
Markdown
# Локальные vendor-ассеты (шрифты и Plyr)
|
|
|
|
Сайт не использует Google Fonts и jsDelivr в рантайме. Файлы лежат в `public/` и попадают на хостинг через git push.
|
|
|
|
## Что где
|
|
|
|
| Путь | Содержимое |
|
|
|------|------------|
|
|
| `public/assets/fonts/*.css` | Три пресета темы: `merriweather`, `geologica`, `mono` |
|
|
| `public/assets/fonts/files/*.woff2` | Файлы шрифтов (из `@fontsource/*`) |
|
|
| `public/vendor/plyr/` | `plyr.css`, `plyr.min.mjs` (из `plyr@3.8.4`) |
|
|
|
|
Подключение:
|
|
|
|
- Шрифты — inline `theme-init-script` и [`theme-fonts.js`](../public/js/modules/theme/theme-fonts.js).
|
|
- CSS Plyr — partial [`src/partials/head-plyr.html`](../src/partials/head-plyr.html) только на страницах с `video[data-case-video-player]`.
|
|
- JS Plyr — [`video-player.js`](../public/js/modules/cases/video-player.js).
|
|
|
|
## Обновление
|
|
|
|
```bash
|
|
npm install
|
|
npm run vendor:copy
|
|
```
|
|
|
|
Скрипт: [`scripts/copy-vendor.mjs`](../scripts/copy-vendor.mjs). Пересобирает `public/assets/fonts/` и `public/vendor/plyr/` из `node_modules`.
|
|
|
|
Полная сборка (vendor + HTML):
|
|
|
|
```bash
|
|
npm run build
|
|
```
|
|
|
|
Только HTML из `src/`:
|
|
|
|
```bash
|
|
npm run build:pages
|
|
```
|
|
|
|
## Добавить или изменить шрифт
|
|
|
|
1. Установить пакет `@fontsource/...` или `@fontsource-variable/...`.
|
|
2. Добавить источник в `FONT_BUNDLES` в `copy-vendor.mjs`.
|
|
3. `npm run vendor:copy`.
|
|
4. Проверить имена `font-family` в [`public/css/main.css`](../public/css/main.css) (`html[data-font=...]`).
|
|
|
|
## Обновить Plyr
|
|
|
|
1. Обновить версию в `package.json` (`dependencies.plyr`).
|
|
2. `npm install` → `npm run vendor:copy`.
|
|
3. При смене API — правки в `video-player.js`.
|