riverbankcms 0.6.0 → 0.7.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/dist/acceptance/matrix.mjs +24 -38
- package/dist/cli/index.mjs +2903 -2093
- package/dist/cli/init-docs/content/cli-reference.md +12 -17
- package/dist/cli/init-docs/content/content-management.md +4 -5
- package/dist/cli/init-docs/content/workflow-isr-revalidation.md +2 -2
- package/dist/{eventUpsertInputSchema-CtkDnYlQ.mjs → eventUpsertInputSchema-DP8gbZJ9.mjs} +2 -2
- package/dist/{load-config-DbMjs6df.mjs → load-config-CkSoLJFY.mjs} +1 -1
- package/dist/load-config-Dgi_eByc.mjs +5 -0
- package/dist/{plan-DubdLR3N.mjs → plan-BFmMfERc.mjs} +22 -14
- package/dist/scaffold/index.mjs +2 -2
- package/dist/{sdk-event-upsert-CvFCbzNc.mjs → sdk-event-upsert-Cp043nSP.mjs} +842 -631
- package/dist/{sdk-peer-CyQ2so48.mjs → sdk-peer-CADuG9SR.mjs} +3 -3
- package/dist/{src-X9oZOIoK.mjs → src-B8fOSKJ6.mjs} +1236 -174
- package/dist/{style-aixm8BXi.mjs → style-BiosmAJm.mjs} +11 -18
- package/dist/testing.mjs +4 -4
- package/package.json +2 -2
- package/dist/load-config-NNJ0ww1N.mjs +0 -5
|
@@ -749,32 +749,27 @@ riverbankcms block list home --json
|
|
|
749
749
|
|
|
750
750
|
## Navigation Commands
|
|
751
751
|
|
|
752
|
-
|
|
752
|
+
Every site has three fixed locations: `main`, `footer`, and `legal`. Each owns its items. Locations cannot be renamed, reassigned, shared or deleted.
|
|
753
753
|
|
|
754
754
|
### navigation upsert
|
|
755
755
|
|
|
756
|
-
|
|
756
|
+
Replace the items in one location. An empty array clears its links and keeps the location.
|
|
757
757
|
|
|
758
758
|
```bash
|
|
759
|
-
|
|
760
|
-
riverbankcms navigation upsert
|
|
761
|
-
|
|
762
|
-
# With JSON file
|
|
763
|
-
riverbankcms navigation upsert main --file ./main-nav.json
|
|
759
|
+
riverbankcms navigation upsert main --data '[{"label":"Home","link":{"kind":"page","identifier":"home"}}]'
|
|
760
|
+
riverbankcms navigation upsert footer --file ./footer-links.json
|
|
761
|
+
riverbankcms navigation upsert legal --data '[]'
|
|
764
762
|
```
|
|
765
763
|
|
|
766
|
-
|
|
764
|
+
Example item array:
|
|
767
765
|
|
|
768
766
|
```json
|
|
769
767
|
[
|
|
770
|
-
{ "label": "Home", "
|
|
771
|
-
{ "label": "About", "url": "/about" },
|
|
768
|
+
{ "label": "Home", "link": { "kind": "page", "identifier": "home" } },
|
|
772
769
|
{
|
|
773
770
|
"label": "Products",
|
|
774
|
-
"url": "/products",
|
|
775
771
|
"children": [
|
|
776
|
-
{ "label": "Category A", "url": "/products/a" }
|
|
777
|
-
{ "label": "Category B", "url": "/products/b" }
|
|
772
|
+
{ "label": "Category A", "link": { "kind": "url", "href": "/products/a" } }
|
|
778
773
|
]
|
|
779
774
|
}
|
|
780
775
|
]
|
|
@@ -782,17 +777,17 @@ riverbankcms navigation upsert main --file ./main-nav.json
|
|
|
782
777
|
|
|
783
778
|
### navigation get
|
|
784
779
|
|
|
785
|
-
|
|
780
|
+
Read one fixed location.
|
|
786
781
|
|
|
787
782
|
```bash
|
|
788
|
-
riverbankcms navigation get <menu-name>
|
|
789
783
|
riverbankcms navigation get main
|
|
790
|
-
riverbankcms navigation get
|
|
784
|
+
riverbankcms navigation get footer --json
|
|
785
|
+
riverbankcms navigation get legal
|
|
791
786
|
```
|
|
792
787
|
|
|
793
788
|
### navigation list
|
|
794
789
|
|
|
795
|
-
List all
|
|
790
|
+
List all three locations, including those with no items.
|
|
796
791
|
|
|
797
792
|
```bash
|
|
798
793
|
riverbankcms navigation list
|
|
@@ -65,7 +65,8 @@ See `block-types.md` for the full list.
|
|
|
65
65
|
|
|
66
66
|
Menu structures for site navigation.
|
|
67
67
|
|
|
68
|
-
-
|
|
68
|
+
- Three independent fixed locations: `main`, `footer`, and `legal`
|
|
69
|
+
- Empty item lists clear a location; omitted locations are left unchanged
|
|
69
70
|
- Hierarchical items with labels, URLs, and children
|
|
70
71
|
|
|
71
72
|
**Local file structure:**
|
|
@@ -557,8 +558,7 @@ riverbankcms push --env=remote --yes
|
|
|
557
558
|
{
|
|
558
559
|
"menus": [
|
|
559
560
|
{
|
|
560
|
-
"
|
|
561
|
-
"name": "Main Navigation",
|
|
561
|
+
"location": "main",
|
|
562
562
|
"items": [
|
|
563
563
|
{ "label": "Home", "link": { "kind": "page", "identifier": "home" } },
|
|
564
564
|
{
|
|
@@ -582,8 +582,7 @@ riverbankcms push --env=remote --yes
|
|
|
582
582
|
]
|
|
583
583
|
},
|
|
584
584
|
{
|
|
585
|
-
"
|
|
586
|
-
"name": "Footer Navigation",
|
|
585
|
+
"location": "footer",
|
|
587
586
|
"items": [
|
|
588
587
|
{ "label": "Privacy", "link": { "kind": "url", "href": "/privacy" } },
|
|
589
588
|
{ "label": "Terms", "link": { "kind": "url", "href": "/terms" } }
|
|
@@ -30,7 +30,7 @@ import { blockOverrides } from '@/lib/block-overrides'
|
|
|
30
30
|
import { getRiverbankClient } from '@/lib/riverbank-client'
|
|
31
31
|
|
|
32
32
|
// Next.js route config values must remain statically analyzable literals.
|
|
33
|
-
export const revalidate =
|
|
33
|
+
export const revalidate = 60
|
|
34
34
|
export const dynamicParams = true
|
|
35
35
|
export const generateStaticParams = createGenerateStaticParams({
|
|
36
36
|
getClient: getRiverbankClient,
|
|
@@ -130,7 +130,7 @@ riverbankcms webhooks setup \
|
|
|
130
130
|
|
|
131
131
|
The command keeps the CMS as the source of truth for the webhook secret. It creates or updates the endpoint, ensures the full SDK revalidation event list is subscribed, writes a newly generated one-time secret to `.env.local` when one is returned, and prints hosted-environment and deploy/test steps. Existing endpoint secrets are not returned or changed unless you pass `--rotate-secret`.
|
|
132
132
|
|
|
133
|
-
The deployed SDK site uses the returned one-time `RIVERBANK_WEBHOOK_SECRET`. The dashboard/CMS uses a separate `
|
|
133
|
+
The deployed SDK site uses the returned one-time `RIVERBANK_WEBHOOK_SECRET`. The dashboard/CMS uses a separate `SERVICE_SECRET_KEYRING_JSON` environment variable to encrypt stored endpoint secrets; keep that keyring only in the dashboard environment.
|
|
134
134
|
|
|
135
135
|
The same destination URL can also be configured from the Riverbank dashboard:
|
|
136
136
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { a as classifySdkEventBookingOffer, i as classifySdkEventSchedule, r as sdkEventUpsertOptionalFieldSchemas } from "./sdk-event-upsert-
|
|
3
|
-
import {
|
|
2
|
+
import { a as classifySdkEventBookingOffer, i as classifySdkEventSchedule, r as sdkEventUpsertOptionalFieldSchemas } from "./sdk-event-upsert-Cp043nSP.mjs";
|
|
3
|
+
import { l as EVENT_PRESET_VALUES } from "./src-B8fOSKJ6.mjs";
|
|
4
4
|
import { z } from "zod";
|
|
5
5
|
|
|
6
6
|
//#region ../blocks/src/lib/typeGuards.ts
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { n as assertCompatibleSdkPeer } from "./sdk-peer-
|
|
2
|
+
import { n as assertCompatibleSdkPeer } from "./sdk-peer-CADuG9SR.mjs";
|
|
3
3
|
import { dirname, resolve } from "path";
|
|
4
4
|
import { createJiti } from "jiti";
|
|
5
5
|
import { existsSync } from "fs";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
2
|
+
import { Ht as ok, Vt as err, mt as parseSiteId } from "./src-B8fOSKJ6.mjs";
|
|
3
3
|
import { existsSync, readFileSync } from "node:fs";
|
|
4
4
|
import { dirname, isAbsolute, join, parse, relative, resolve, sep } from "node:path";
|
|
5
5
|
import { fileURLToPath } from "node:url";
|
|
@@ -561,7 +561,7 @@ import { dataLoaderOverrides } from '@/lib/data-loader-overrides.server';
|
|
|
561
561
|
${previewImports}
|
|
562
562
|
|
|
563
563
|
// Next.js route config values must remain statically analyzable literals.
|
|
564
|
-
export const revalidate =
|
|
564
|
+
export const revalidate = 60;
|
|
565
565
|
export const dynamicParams = true;
|
|
566
566
|
// Route discovery falls back to the homepage when the CMS is unavailable so
|
|
567
567
|
// the scaffold verification build does not require a live API. Add
|
|
@@ -2014,18 +2014,26 @@ function starterContentTemplates(config) {
|
|
|
2014
2014
|
status: "published",
|
|
2015
2015
|
blocks: []
|
|
2016
2016
|
}),
|
|
2017
|
-
jsonTemplate("content/navigation.json", { menus: [
|
|
2018
|
-
|
|
2019
|
-
|
|
2020
|
-
|
|
2021
|
-
|
|
2022
|
-
|
|
2023
|
-
|
|
2024
|
-
|
|
2025
|
-
|
|
2026
|
-
}
|
|
2027
|
-
}
|
|
2028
|
-
|
|
2017
|
+
jsonTemplate("content/navigation.json", { menus: [
|
|
2018
|
+
{
|
|
2019
|
+
location: "main",
|
|
2020
|
+
items: [{
|
|
2021
|
+
label: "Home",
|
|
2022
|
+
link: {
|
|
2023
|
+
kind: "page",
|
|
2024
|
+
identifier: "home"
|
|
2025
|
+
}
|
|
2026
|
+
}]
|
|
2027
|
+
},
|
|
2028
|
+
{
|
|
2029
|
+
location: "footer",
|
|
2030
|
+
items: []
|
|
2031
|
+
},
|
|
2032
|
+
{
|
|
2033
|
+
location: "legal",
|
|
2034
|
+
items: []
|
|
2035
|
+
}
|
|
2036
|
+
] }),
|
|
2029
2037
|
jsonTemplate("content/settings.json", {
|
|
2030
2038
|
homepageId: "home",
|
|
2031
2039
|
seoDefaults: {
|
package/dist/scaffold/index.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import "../src-
|
|
3
|
-
import { a as prepareScaffoldExecution, d as loadGeneratedPackageRanges, i as preflightScaffoldTargets, l as deriveGeneratedPackageRanges, o as writeScaffoldFiles, r as preflightScaffoldPlan, s as deriveScaffoldLocalManifest, t as deriveScaffoldPlan, u as findPackageManifestPath } from "../plan-
|
|
2
|
+
import "../src-B8fOSKJ6.mjs";
|
|
3
|
+
import { a as prepareScaffoldExecution, d as loadGeneratedPackageRanges, i as preflightScaffoldTargets, l as deriveGeneratedPackageRanges, o as writeScaffoldFiles, r as preflightScaffoldPlan, s as deriveScaffoldLocalManifest, t as deriveScaffoldPlan, u as findPackageManifestPath } from "../plan-BFmMfERc.mjs";
|
|
4
4
|
|
|
5
5
|
export { deriveGeneratedPackageRanges, deriveScaffoldLocalManifest, deriveScaffoldPlan, findPackageManifestPath, loadGeneratedPackageRanges, preflightScaffoldPlan, preflightScaffoldTargets, prepareScaffoldExecution, writeScaffoldFiles };
|