scavold 0.2.0-rc.9 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +88 -3
- package/COMPONENTS.md +636 -429
- package/FRONTMATTER.md +30 -0
- package/components/ScavoldCover.vue +162 -0
- package/components/ScavoldImage.vue +5 -1
- package/components/ScavoldMenu.vue +20 -1
- package/components/ScavoldMenuItems.vue +3 -1
- package/components/ScavoldVideo.vue +12 -53
- package/composables/hierarchy.ts +75 -1
- package/composables/useAutoplay.js +128 -0
- package/composables/useCover.js +128 -0
- package/composables/useVideo.js +11 -21
- package/index.d.ts +3 -0
- package/l10n/de.json +4 -0
- package/l10n/en.json +4 -0
- package/lib/config.js +28 -6
- package/lib/containers.js +53 -7
- package/lib/media.js +9 -2
- package/lib/menus.d.ts +17 -0
- package/lib/menus.js +73 -0
- package/lib/sectionManifest.js +40 -10
- package/package.json +1 -1
- package/scripts/check-fixture.js +105 -9
package/CHANGELOG.md
CHANGED
|
@@ -4,11 +4,91 @@ All notable changes to Scavold are documented here. The format follows
|
|
|
4
4
|
[Keep a Changelog](https://keepachangelog.com/en/1.1.0/), versions follow
|
|
5
5
|
[Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
6
6
|
|
|
7
|
-
While the version stays below `1.0.0
|
|
8
|
-
|
|
7
|
+
While the version stays below `1.0.0`, a minor release may break what the previous
|
|
8
|
+
one offered; a patch release does not.
|
|
9
9
|
|
|
10
10
|
## [Unreleased]
|
|
11
11
|
|
|
12
|
+
## [0.2.1] — 2026-10-04
|
|
13
|
+
|
|
14
|
+
### Fixed
|
|
15
|
+
|
|
16
|
+
- Menus and breadcrumbs no longer link a folder without an `index.md` — there is no page
|
|
17
|
+
to go to, and the link was dead. Such a folder is named as text above its pages where a
|
|
18
|
+
menu shows them, left out where a menu does not, and named as text in a breadcrumb.
|
|
19
|
+
|
|
20
|
+
## [0.2.0] — 2026-10-04
|
|
21
|
+
|
|
22
|
+
### Added
|
|
23
|
+
|
|
24
|
+
- Named menus. A site declares them under `menus` in `.cratly.config.yaml`, a page
|
|
25
|
+
chooses in its `menus` front matter which of them it appears in, and the theme renders
|
|
26
|
+
one with `<ScavoldMenu menu="footer">` — so a page no longer has to sit in a folder of
|
|
27
|
+
its own, hidden from its URL by an alias, just to be collected into a footer. `depth`,
|
|
28
|
+
`active-only` and `expand` descend below each listed page as before, and a page
|
|
29
|
+
chosen along with its parent is listed below it there — or beside it in a flat menu,
|
|
30
|
+
which stays flat. `from-path` and `from-root` narrow the part of the site searched,
|
|
31
|
+
e.g. to one language. A name the site does not declare is warned about at build time.
|
|
32
|
+
|
|
33
|
+
### Changed
|
|
34
|
+
|
|
35
|
+
- A page choosing named menus only leaves the page tree's menus unless it chooses
|
|
36
|
+
`auto` as well. Pages without `menus` front matter are listed exactly as before.
|
|
37
|
+
|
|
38
|
+
## [0.2.0-rc.12] — 2026-10-03
|
|
39
|
+
|
|
40
|
+
### Added
|
|
41
|
+
|
|
42
|
+
- `:::cover` takes `tone=light` or `tone=dark` for content on top that is meant to be
|
|
43
|
+
light or dark, depending on the picture. It only marks the cover with
|
|
44
|
+
`scavold-cover--light` or `scavold-cover--dark`; the colours are the theme's. The
|
|
45
|
+
editor offers it as a choice.
|
|
46
|
+
|
|
47
|
+
## [0.2.0-rc.11] — 2026-10-01
|
|
48
|
+
|
|
49
|
+
### Added
|
|
50
|
+
|
|
51
|
+
- A container opening a page carries an empty `data-leading` attribute, and the page
|
|
52
|
+
data name it as `leadingContainer` — known before the content renders, so a layout
|
|
53
|
+
can arrange its own parts around a cover at the top of a page, e.g. move its
|
|
54
|
+
breadcrumb below it. Both are information only; nothing changes for a theme that
|
|
55
|
+
does not ask.
|
|
56
|
+
|
|
57
|
+
## [0.2.0-rc.10] — 2026-10-01
|
|
58
|
+
|
|
59
|
+
### Added
|
|
60
|
+
|
|
61
|
+
- `:::cover` shows an image or a video across the full width and height of the
|
|
62
|
+
window, cropped to fit, with the block's content laid on top. An image comes with
|
|
63
|
+
all its variants and a `sizes` value that accounts for the cropping; a video plays
|
|
64
|
+
muted in a loop while at least half of it is on screen, stays still for visitors
|
|
65
|
+
asking for reduced motion, and always has a button to pause it. The editor offers it
|
|
66
|
+
as a section type.
|
|
67
|
+
- A container argument declared as `media-file` that names an image hands its
|
|
68
|
+
component the variants and dimensions as well, as `data-<arg>-srcset`,
|
|
69
|
+
`data-<arg>-webp-srcset`, `data-<arg>-width` and `data-<arg>-height`.
|
|
70
|
+
- `<ScavoldImage>` takes `loading` and `fetchpriority`, for an image at the top of a
|
|
71
|
+
page.
|
|
72
|
+
- `useAutoplay()` brings the same autoplay behaviour to a site's own video component.
|
|
73
|
+
|
|
74
|
+
### Changed
|
|
75
|
+
|
|
76
|
+
- A `:::video` with `autoplay` plays only while at least half of it is on screen, and
|
|
77
|
+
pauses when scrolled away — unless the visitor turned the sound up. It stays paused
|
|
78
|
+
for visitors whose system asks for reduced motion, and once the visitor paused it.
|
|
79
|
+
The `autoplay` attribute is no longer part of the markup: it started the video at
|
|
80
|
+
once, wherever it was on the page and before reduced motion could be checked.
|
|
81
|
+
|
|
82
|
+
### Removed
|
|
83
|
+
|
|
84
|
+
- The `overlay` and `controls` arguments of `:::video`. Use `:::cover` for a video
|
|
85
|
+
with content on top: the background mode had no way to pause a looping video, which
|
|
86
|
+
WCAG 2.2.2 requires, and ignored reduced motion. A `:::video` now always is a player
|
|
87
|
+
with its controls; a block still carrying `overlay` renders as one, with its content
|
|
88
|
+
as fallback text. `useVideo()` no longer returns `overlay` and `controls`, and the
|
|
89
|
+
`.scavold-video--overlay`, `.scavold-video__media` and `.scavold-video__overlay`
|
|
90
|
+
classes are gone.
|
|
91
|
+
|
|
12
92
|
## [0.2.0-rc.9] — 2026-10-01
|
|
13
93
|
|
|
14
94
|
### Fixed
|
|
@@ -289,7 +369,12 @@ First published release. Version `0.1.0` existed in-tree only.
|
|
|
289
369
|
- Only images are processed out of `media_folder`; other file types (video, documents)
|
|
290
370
|
are never copied into the build output and have to live in the static folder.
|
|
291
371
|
|
|
292
|
-
[Unreleased]: https://gitlab.com/cratly/scavold/-/compare/v0.2.
|
|
372
|
+
[Unreleased]: https://gitlab.com/cratly/scavold/-/compare/v0.2.1...main
|
|
373
|
+
[0.2.1]: https://gitlab.com/cratly/scavold/-/compare/v0.2.0...v0.2.1
|
|
374
|
+
[0.2.0]: https://gitlab.com/cratly/scavold/-/compare/v0.2.0-rc.12...v0.2.0
|
|
375
|
+
[0.2.0-rc.12]: https://gitlab.com/cratly/scavold/-/compare/v0.2.0-rc.11...v0.2.0-rc.12
|
|
376
|
+
[0.2.0-rc.11]: https://gitlab.com/cratly/scavold/-/compare/v0.2.0-rc.10...v0.2.0-rc.11
|
|
377
|
+
[0.2.0-rc.10]: https://gitlab.com/cratly/scavold/-/compare/v0.2.0-rc.9...v0.2.0-rc.10
|
|
293
378
|
[0.2.0-rc.9]: https://gitlab.com/cratly/scavold/-/compare/v0.2.0-rc.8...v0.2.0-rc.9
|
|
294
379
|
[0.2.0-rc.8]: https://gitlab.com/cratly/scavold/-/compare/v0.2.0-rc.7...v0.2.0-rc.8
|
|
295
380
|
[0.2.0-rc.7]: https://gitlab.com/cratly/scavold/-/compare/v0.2.0-rc.6...v0.2.0-rc.7
|