nodality 1.0.173 → 1.0.175
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/bin/nodality.js +14 -0
- package/layout/animator.js +1 -1
- package/layout/audio.js +1 -1
- package/layout/audionew.js +1 -1
- package/layout/base-2.js +1 -1
- package/layout/base.js +1 -1
- package/layout/beta-desktop-bar.js +1 -1
- package/layout/beta-mobile-bar.js +1 -1
- package/layout/box.js +1 -1
- package/layout/button.js +1 -1
- package/layout/cards.js +1 -1
- package/layout/center.js +1 -1
- package/layout/checkbox.js +1 -1
- package/layout/circle.js +1 -1
- package/layout/clean-row.js +1 -1
- package/layout/code.js +1 -1
- package/layout/container.js +1 -1
- package/layout/custom.js +1 -1
- package/layout/div-image.js +1 -1
- package/layout/dropdown-2025.js +1 -1
- package/layout/dropdown.js +1 -1
- package/layout/empty-element.js +1 -1
- package/layout/external-stylesheet.js +1 -1
- package/layout/flex-card.js +1 -1
- package/layout/flex-grid.js +1 -1
- package/layout/flex-row.js +1 -1
- package/layout/footer.js +1 -1
- package/layout/form-components/custom.js +1 -1
- package/layout/form-components/data-list.js +1 -1
- package/layout/form-components/floating-input.js +1 -1
- package/layout/form-components/form-all.js +1 -1
- package/layout/form-components/form.js +1 -1
- package/layout/form-components/image-picker.js +1 -1
- package/layout/form-components/picker.js +1 -1
- package/layout/form-components/radio.js +1 -1
- package/layout/form-components/radiogroup.js +1 -1
- package/layout/form-components/range.js +1 -1
- package/layout/free.js +1 -1
- package/layout/grid-new.js +1 -1
- package/layout/grid-switcher.js +1 -1
- package/layout/grid.js +1 -1
- package/layout/group.js +1 -1
- package/layout/header.js +1 -1
- package/layout/horizontal-scroller.js +1 -1
- package/layout/image-old.js +1 -1
- package/layout/image.js +1 -1
- package/layout/index.js +1 -1
- package/layout/label.js +1 -1
- package/layout/link.js +1 -1
- package/layout/list-OLD.js +1 -1
- package/layout/list.js +1 -1
- package/layout/meta-adder.js +1 -1
- package/layout/modal-2025.js +1 -1
- package/layout/modernwrap.js +1 -1
- package/layout/multiswitcher.js +1 -1
- package/layout/multiswitcherBeta.js +1 -1
- package/layout/nav-bar.js +1 -1
- package/layout/nav-factor/custom-div.js +1 -1
- package/layout/navBar-OLD.js +1 -1
- package/layout/new-flat-adder.js +1 -1
- package/layout/new-nav-bar.js +1 -1
- package/layout/offset-container.js +1 -1
- package/layout/polygon.js +1 -1
- package/layout/prerender-site.js +20 -1
- package/layout/prerender.js +1 -1
- package/layout/progress.js +1 -1
- package/layout/row.js +1 -1
- package/layout/saved-new-nav-bar.js +1 -1
- package/layout/scroll-video.js +1 -1
- package/layout/side-bar.js +1 -1
- package/layout/side-nav-bar.js +1 -1
- package/layout/simple-bar.js +1 -1
- package/layout/slider-2025.js +1 -1
- package/layout/spacer.js +1 -1
- package/layout/stack.js +1 -1
- package/layout/styler.js +1 -1
- package/layout/svg.js +1 -1
- package/layout/switcher.js +1 -1
- package/layout/table.js +1 -1
- package/layout/text-field.js +1 -1
- package/layout/text.js +1 -1
- package/layout/ulist.js +1 -1
- package/layout/video.js +1 -1
- package/layout/without-new.js +1 -1
- package/layout/wrap.js +1 -1
- package/layout/zoom-card.js +1 -1
- package/lib/card-getter.js +1 -1
- package/lib/data.js +1 -1
- package/lib/designer.js +1 -1
- package/lib/element-mapper.js +1 -1
- package/lib/keyframe-animation.js +1 -1
- package/lib/link-getter.js +1 -1
- package/lib/scroll-video.js +1 -1
- package/lib/seo.js +1 -1
- package/lib/stacker.js +1 -1
- package/lib/theme.js +1 -1
- package/lib/transform-anim.js +1 -1
- package/package.json +1 -1
package/bin/nodality.js
CHANGED
|
@@ -569,6 +569,20 @@ async function runPrerender(rawArgs) {
|
|
|
569
569
|
if (defaultLocale) config.defaultLocale = defaultLocale;
|
|
570
570
|
if (locales) config.locales = locales;
|
|
571
571
|
|
|
572
|
+
// Forward fanout template basenames to the sitemap writer so it
|
|
573
|
+
// can auto-exclude them. Fanout templates (e.g. `category.html`
|
|
574
|
+
// driving `category-<id>.html`) are scaffolding, not pages —
|
|
575
|
+
// listing them in sitemap.xml would invite crawlers to thin
|
|
576
|
+
// duplicates of the real per-id outputs.
|
|
577
|
+
if (Array.isArray(fileConfig.fanout) && fileConfig.fanout.length) {
|
|
578
|
+
config.fanoutTemplates = fileConfig.fanout
|
|
579
|
+
.map((spec) => spec.template)
|
|
580
|
+
.filter(Boolean);
|
|
581
|
+
}
|
|
582
|
+
if (Array.isArray(fileConfig.sitemapExclude)) {
|
|
583
|
+
config.sitemapExclude = fileConfig.sitemapExclude;
|
|
584
|
+
}
|
|
585
|
+
|
|
572
586
|
await prerenderSite(config);
|
|
573
587
|
}
|
|
574
588
|
|
package/layout/animator.js
CHANGED
package/layout/audio.js
CHANGED
package/layout/audionew.js
CHANGED
package/layout/base-2.js
CHANGED
package/layout/base.js
CHANGED
package/layout/box.js
CHANGED
package/layout/button.js
CHANGED
package/layout/cards.js
CHANGED
package/layout/center.js
CHANGED
package/layout/checkbox.js
CHANGED
package/layout/circle.js
CHANGED
package/layout/clean-row.js
CHANGED
package/layout/code.js
CHANGED
package/layout/container.js
CHANGED
package/layout/custom.js
CHANGED
package/layout/div-image.js
CHANGED
package/layout/dropdown-2025.js
CHANGED
package/layout/dropdown.js
CHANGED
package/layout/empty-element.js
CHANGED
package/layout/flex-card.js
CHANGED
package/layout/flex-grid.js
CHANGED
package/layout/flex-row.js
CHANGED
package/layout/footer.js
CHANGED
package/layout/free.js
CHANGED
package/layout/grid-new.js
CHANGED
package/layout/grid-switcher.js
CHANGED
package/layout/grid.js
CHANGED
package/layout/group.js
CHANGED
package/layout/header.js
CHANGED
package/layout/image-old.js
CHANGED
package/layout/image.js
CHANGED
package/layout/index.js
CHANGED
package/layout/label.js
CHANGED
package/layout/link.js
CHANGED
package/layout/list-OLD.js
CHANGED
package/layout/list.js
CHANGED
package/layout/meta-adder.js
CHANGED
package/layout/modal-2025.js
CHANGED
package/layout/modernwrap.js
CHANGED
package/layout/multiswitcher.js
CHANGED
package/layout/nav-bar.js
CHANGED
package/layout/navBar-OLD.js
CHANGED
package/layout/new-flat-adder.js
CHANGED
package/layout/new-nav-bar.js
CHANGED
package/layout/polygon.js
CHANGED
package/layout/prerender-site.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* nodality v1.0.
|
|
2
|
+
* nodality v1.0.175
|
|
3
3
|
* (c) 2026 Filip Vabrousek
|
|
4
4
|
* License: MIT
|
|
5
5
|
*/
|
|
@@ -51,6 +51,13 @@
|
|
|
51
51
|
// viewport { width, height } default { 390, 844 } (mobile-first)
|
|
52
52
|
// mount CSS selector default "#mount"
|
|
53
53
|
// sitemap boolean default true (writes sitemap.xml)
|
|
54
|
+
// sitemapExclude string[] HTML filenames to omit from sitemap.xml
|
|
55
|
+
// (fanout templates are auto-excluded;
|
|
56
|
+
// use this for additional special cases)
|
|
57
|
+
// fanoutTemplates string[] fanout template basenames the prerender
|
|
58
|
+
// was built around — sitemap writer
|
|
59
|
+
// skips these automatically because they
|
|
60
|
+
// are not standalone pages by design
|
|
54
61
|
// xDefaultLocale string default = defaultLocale
|
|
55
62
|
// assetPrefixes string[] default ["assets/", "dist/", "badge-",
|
|
56
63
|
// "apple-touch-icon", "favicon."]
|
|
@@ -422,8 +429,20 @@ function alternatesFor(config, page) {
|
|
|
422
429
|
/** Write the sitemap.xml covering every (locale, page) URL. */
|
|
423
430
|
async function writeSitemap(config) {
|
|
424
431
|
const now = new Date().toISOString().slice(0, 10);
|
|
432
|
+
// Fanout templates (e.g. `category.html` driving the per-id
|
|
433
|
+
// `category-<id>.html` outputs) are not standalone pages — they
|
|
434
|
+
// ship with empty mounts and exist solely as the boilerplate the
|
|
435
|
+
// per-item wrappers clone. Indexing them would dilute ranking
|
|
436
|
+
// signal across thin duplicates of the real per-id pages, so the
|
|
437
|
+
// sitemap writer drops them automatically. Callers can also list
|
|
438
|
+
// additional `sitemapExclude` entries for one-off cases.
|
|
439
|
+
const excludeSet = new Set([
|
|
440
|
+
...(config.fanoutTemplates ?? []),
|
|
441
|
+
...(config.sitemapExclude ?? []),
|
|
442
|
+
]);
|
|
425
443
|
const entries = [];
|
|
426
444
|
for (const page of config.pages) {
|
|
445
|
+
if (excludeSet.has(page.html)) continue;
|
|
427
446
|
for (const locale of config.locales) {
|
|
428
447
|
const loc = urlFor(config, locale, page.html);
|
|
429
448
|
const alts = alternatesFor(config, page.html);
|
package/layout/prerender.js
CHANGED
package/layout/progress.js
CHANGED
package/layout/row.js
CHANGED
package/layout/scroll-video.js
CHANGED
package/layout/side-bar.js
CHANGED
package/layout/side-nav-bar.js
CHANGED
package/layout/simple-bar.js
CHANGED
package/layout/slider-2025.js
CHANGED
package/layout/spacer.js
CHANGED
package/layout/stack.js
CHANGED
package/layout/styler.js
CHANGED
package/layout/svg.js
CHANGED
package/layout/switcher.js
CHANGED
package/layout/table.js
CHANGED
package/layout/text-field.js
CHANGED
package/layout/text.js
CHANGED
package/layout/ulist.js
CHANGED
package/layout/video.js
CHANGED
package/layout/without-new.js
CHANGED
package/layout/wrap.js
CHANGED
package/layout/zoom-card.js
CHANGED
package/lib/card-getter.js
CHANGED
package/lib/data.js
CHANGED
package/lib/designer.js
CHANGED
package/lib/element-mapper.js
CHANGED
package/lib/link-getter.js
CHANGED
package/lib/scroll-video.js
CHANGED
package/lib/seo.js
CHANGED
package/lib/stacker.js
CHANGED
package/lib/theme.js
CHANGED
package/lib/transform-anim.js
CHANGED