@heroiclands/package-build 22.3.1 → 22.4.0
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 +47 -0
- package/CONTENT.md +182 -306
- package/bin/content-build.mjs +15 -20
- package/bin/package-build.mjs +4 -3
- package/content-config.mjs +70 -179
- package/docs/api.md +27 -32
- package/docs/commands.md +31 -19
- package/docs/configuration.md +90 -126
- package/docs/content-format.md +25 -15
- package/docs/getting-started.md +5 -4
- package/docs/project-setup.md +1 -1
- package/engine/content-links.mjs +25 -60
- package/engine/diagnostics.mjs +2 -2
- package/engine/field-reference.mjs +7 -1
- package/engine/homepage.mjs +91 -172
- package/engine/metadata-index.mjs +7 -3
- package/engine/note-vocabulary.mjs +0 -20
- package/engine/pdf-build.mjs +2 -2
- package/engine/site-build.mjs +64 -225
- package/engine/site-config.mjs +15 -53
- package/engine/site-root.mjs +26 -70
- package/package.json +1 -1
- package/types/content-config.d.mts +6 -8
- package/types/engine/content-links.d.mts +12 -23
- package/types/engine/diagnostics.d.mts +2 -2
- package/types/engine/homepage.d.mts +51 -91
- package/types/engine/note-vocabulary.d.mts +0 -12
- package/types/engine/site-build.d.mts +28 -129
- package/types/engine/site-config.d.mts +10 -19
- package/types/engine/site-root.d.mts +11 -36
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,52 @@
|
|
|
1
1
|
# @heroiclands/package-build
|
|
2
2
|
|
|
3
|
+
## 22.4.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 0dec39f: **A package site is its homepage and its pages.** The `type: homepage` note is
|
|
8
|
+
published at `/<package>/` itself — it is written as the mount's `_index.md`,
|
|
9
|
+
and `[[homepage-root|…]]` resolves there — and every other note is one page at
|
|
10
|
+
`/<package>/<type>-<shortcode>/`. Nothing is generated between them: no section
|
|
11
|
+
directory, no listing of a type, no tag page. An index of what a package
|
|
12
|
+
publishes is a `doc` note carrying a content table, authored and linked like
|
|
13
|
+
any other page.
|
|
14
|
+
|
|
15
|
+
**What a consumer changes**
|
|
16
|
+
|
|
17
|
+
- Delete `site.sections`, `site.landing`, `site.backfillSections` and
|
|
18
|
+
`site.list` from `package-build.config.yaml`; each is refused by name with a
|
|
19
|
+
message saying an index is a `doc` note.
|
|
20
|
+
- Delete the `landing:` block from the homepage note; it is refused. The
|
|
21
|
+
homepage is a page with a body, and its links are markdown links in that
|
|
22
|
+
body.
|
|
23
|
+
- Delete any root redirect the repository authors itself: `site-root` writes
|
|
24
|
+
`_headers` only — the `noindex` rules, with no `Cache-Control` on the root —
|
|
25
|
+
and removes a `_redirects` left beside the site.
|
|
26
|
+
|
|
27
|
+
**What stops answering**
|
|
28
|
+
|
|
29
|
+
- `/<package>/<section>/` for every declared section, `/<package>/tags/` and
|
|
30
|
+
every tag page, and `/<package>/homepage-root/`. The generated Hugo
|
|
31
|
+
configuration disables the `section`, `taxonomy`, `term` and `RSS` kinds on
|
|
32
|
+
every site.
|
|
33
|
+
|
|
34
|
+
**API**
|
|
35
|
+
|
|
36
|
+
- `HOMEPAGE_DESTINATION` names the homepage's file; `homepageDestination`,
|
|
37
|
+
`writeSectionLandings`, `sectionFrontmatter`, `pluralTitle`, `landingPath`,
|
|
38
|
+
`redirects`, `HOMEPAGE_ADDRESS_KEYS` and `hasAnyTag` are gone; `headers()`
|
|
39
|
+
takes no package.
|
|
40
|
+
`homepageAddresses` takes the body alone, `hugoConfig` and
|
|
41
|
+
`generateHugoConfig` take no `hasTags`, and `buildSite` reports none.
|
|
42
|
+
|
|
43
|
+
### Patch Changes
|
|
44
|
+
|
|
45
|
+
- 6270453: **`content-build docs item-fields`.** The note written under the content tree
|
|
46
|
+
carries a blank line between the frontmatter and the H1, so the page passes a
|
|
47
|
+
consumer's `lint:format` and `lint:item-fields` guards as written, rather than
|
|
48
|
+
leaving the two in permanent disagreement over one file.
|
|
49
|
+
|
|
3
50
|
## 22.3.1
|
|
4
51
|
|
|
5
52
|
### Patch Changes
|