feat(embeds): geo/gpx/3D/YouTube/media keyword system + docs, sanitized mirrors

- new snippet geo_map_render.js: [map] inline geomaps (tree order, tint,
  theme-following), [gpx] stats card + elevation profile with hover cursor
  (km from start, d-height, vertical guide), [yt] privacy click-to-load
  facade, [video]/[audio] inline players fed from the new geoData indexes
- 3d_model_viewer.js: [cad] keyword + title/ID resolution via geoData.cad,
  sizes/captions, real occt-wasm ESM pair (fixes 'STEP worker error'),
  code-span-safe keyword scan (docs can show examples)
- blog_generator.js: buildGeoData() v6 – maps (geolocation + geoShape
  point/line/polygon + child GPX tracks), gpx/cad/media indexes,
  branch-change rebuild for route reordering
- generated/geo_data.js placeholder; docs/embed-keywords.md (new) +
  embed-3d-model Option D; README layout/wiring/notes tables updated
- license: runtime components (MapLibre ISC, VersaTiles MIT/ODbL, YouTube)
- hygiene: removed leaked note IDs and instance domain from theme docs
This commit is contained in:
trilium-share-gruvbox
2026-09-28 14:53:51 +02:00
parent 9e456bbaaa
commit 2818c40f96
10 changed files with 933 additions and 28 deletions
+3 -3
View File
@@ -26,7 +26,7 @@ CSS file (Gruvbox, light + dark, theme toggle without reload).
| `scripts/*.js` | one code note each (`.blog`), attached via `~shareHtml` | frontend snippets (verbatim content incl. `<script>`) |
| `templates/blog_article.html` | `Blog Article` | article template with promoted labels |
| `examples/*` | ignis8 icons/script | sample category logo |
| `generated/*` | `feed.xml`, `sitemap.xml`, `blog_data`, `state_map` | regenerated by the generator (reference only) |
| `generated/*` | `feed.xml`, `sitemap.xml`, `blog_data`, `state_map`, `geo_data` | regenerated by the generator (reference only, sanitized) |
| `assets/palette.png` | – | Gruvbox palette (from morhetz/gruvbox, MIT) |
## How the generator works (keep this intact)
@@ -160,8 +160,8 @@ set the other labels, and set `publish=true` **last**.
the repo reference file.
3. Check licenses: `THIRD_PARTY_LICENSES.md` must list every vendored third-party file;
original code stays GPL-3.0. Update it if new libraries were added.
4. Update docs if behaviour changed: `docs/embed-3d-model.md` (3D viewer), `README.md`
(features/layout) and this file.
4. Update docs if behaviour changed: `docs/embed-3d-model.md` (3D viewer),
`docs/embed-keywords.md` (embed keywords), `README.md` (features/layout) and this file.
5. Commit (English message) and push to `main` with the neutral identity
`trilium-share-gruvbox <trilium-share-gruvbox@users.noreply.git.familie-zink.org>`.