@riverbankcms/sdk 0.2.1 → 0.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/README.md +255 -1
- package/dist/cli/index.js +249 -40
- package/dist/cli/index.js.map +1 -1
- package/dist/client/bookings.js +15 -1
- package/dist/client/bookings.js.map +1 -1
- package/dist/client/bookings.mjs +15 -1
- package/dist/client/bookings.mjs.map +1 -1
- package/dist/client/client.d.mts +2 -2
- package/dist/client/client.d.ts +2 -2
- package/dist/client/client.js +51 -6
- package/dist/client/client.js.map +1 -1
- package/dist/client/client.mjs +51 -6
- package/dist/client/client.mjs.map +1 -1
- package/dist/client/hooks.d.mts +2 -2
- package/dist/client/hooks.d.ts +2 -2
- package/dist/client/rendering/client.js +114 -116
- package/dist/client/rendering/client.js.map +1 -1
- package/dist/client/rendering/client.mjs +114 -116
- package/dist/client/rendering/client.mjs.map +1 -1
- package/dist/client/usePage-BcjWPXvh.d.mts +6388 -0
- package/dist/client/usePage-C3ZKNwY7.d.mts +6393 -0
- package/dist/client/usePage-CrKw1H6Y.d.ts +6338 -0
- package/dist/client/usePage-CyYpOJud.d.ts +6388 -0
- package/dist/client/usePage-DMI8ImsU.d.mts +6338 -0
- package/dist/client/usePage-gpVaeWDy.d.ts +6393 -0
- package/dist/server/{Layout-DK_9OOgb.d.mts → Layout-B_zUr9ci.d.mts} +1 -1
- package/dist/server/{Layout-CLg8oH_S.d.ts → Layout-CHG77dhK.d.ts} +1 -1
- package/dist/server/blockKinds-B6MWzNWp.d.mts +16 -0
- package/dist/server/blockKinds-B6MWzNWp.d.ts +16 -0
- package/dist/server/chunk-BOHTTHY5.mjs +406 -0
- package/dist/server/chunk-BOHTTHY5.mjs.map +1 -0
- package/dist/server/{chunk-5R4NMVXA.js → chunk-BUCJWG6G.js} +5 -5
- package/dist/server/chunk-BUCJWG6G.js.map +1 -0
- package/dist/server/chunk-D2QLTPUJ.mjs +33 -0
- package/dist/server/chunk-D2QLTPUJ.mjs.map +1 -0
- package/dist/server/{chunk-62ZJI564.js → chunk-FPYK6527.js} +4 -4
- package/dist/server/{chunk-62ZJI564.js.map → chunk-FPYK6527.js.map} +1 -1
- package/dist/server/{chunk-YXDDFG3N.js → chunk-G4CKM4EN.js} +1 -1
- package/dist/server/chunk-G4CKM4EN.js.map +1 -0
- package/dist/server/chunk-GERCMTPQ.js +33 -0
- package/dist/server/chunk-GERCMTPQ.js.map +1 -0
- package/dist/server/{chunk-SF63XAX7.js → chunk-IT5ICP43.js} +24 -4
- package/dist/server/chunk-IT5ICP43.js.map +1 -0
- package/dist/server/{chunk-GWBMJPLH.mjs → chunk-M5KTLZTD.mjs} +1 -1
- package/dist/server/chunk-M5KTLZTD.mjs.map +1 -0
- package/dist/server/{chunk-3J46ILMJ.mjs → chunk-N3PX76AP.mjs} +29 -4
- package/dist/server/chunk-N3PX76AP.mjs.map +1 -0
- package/dist/server/{chunk-O5DC7MYW.mjs → chunk-NKXS4TBK.mjs} +24 -4
- package/dist/server/chunk-NKXS4TBK.mjs.map +1 -0
- package/dist/server/{chunk-INWKF3IC.js → chunk-P6CDRJN3.js} +8 -8
- package/dist/server/{chunk-INWKF3IC.js.map → chunk-P6CDRJN3.js.map} +1 -1
- package/dist/server/{chunk-GKYNDDJS.js → chunk-R5B6IOFQ.js} +29 -4
- package/dist/server/chunk-R5B6IOFQ.js.map +1 -0
- package/dist/server/{chunk-FK64TZBT.mjs → chunk-SFQ7VF3G.mjs} +2 -2
- package/dist/server/{chunk-JTAERCX2.mjs → chunk-VVFYHAUD.mjs} +2 -2
- package/dist/server/{chunk-PN3CHDVX.mjs → chunk-XK2YIISA.mjs} +2 -2
- package/dist/server/chunk-XK2YIISA.mjs.map +1 -0
- package/dist/server/chunk-ZIM53VP6.js +406 -0
- package/dist/server/chunk-ZIM53VP6.js.map +1 -0
- package/dist/server/{components-DhIcstww.d.ts → components-BYxloYJm.d.ts} +3 -3
- package/dist/server/{components-BzdA6NAc.d.mts → components-Ci5nlyUj.d.mts} +3 -3
- package/dist/server/components.d.mts +7 -5
- package/dist/server/components.d.ts +7 -5
- package/dist/server/components.js +3 -3
- package/dist/server/components.mjs +2 -2
- package/dist/server/config-validation.d.mts +5 -300
- package/dist/server/config-validation.d.ts +5 -300
- package/dist/server/config-validation.js +6 -3
- package/dist/server/config-validation.js.map +1 -1
- package/dist/server/config-validation.mjs +5 -2
- package/dist/server/config.d.mts +43 -4
- package/dist/server/config.d.ts +43 -4
- package/dist/server/config.js +27 -3
- package/dist/server/config.js.map +1 -1
- package/dist/server/config.mjs +26 -2
- package/dist/server/config.mjs.map +1 -1
- package/dist/server/data.d.mts +5 -3
- package/dist/server/data.d.ts +5 -3
- package/dist/server/data.js +2 -2
- package/dist/server/data.mjs +1 -1
- package/dist/server/{index-BB28KAui.d.ts → index-DbSfrRA0.d.ts} +1 -1
- package/dist/server/{index-C_FVup_o.d.mts → index-Dj7VKH34.d.mts} +1 -1
- package/dist/server/index.d.mts +19 -4
- package/dist/server/index.d.ts +19 -4
- package/dist/server/index.js +6 -2
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +5 -1
- package/dist/server/{loadContent-AQOBf_gP.d.ts → loadContent-BqQ-VPMW.d.ts} +4 -3
- package/dist/server/{loadContent-DBmprsB4.d.mts → loadContent-Czu7xTOU.d.mts} +4 -3
- package/dist/server/{loadPage-BMg8PJxJ.d.ts → loadPage-BElEkA_J.d.ts} +3 -2
- package/dist/server/{loadPage-pg4HimlK.d.mts → loadPage-Dw57_n5N.d.mts} +3 -2
- package/dist/server/loadPage-E3ZC6NHB.js +11 -0
- package/dist/server/{loadPage-3ECPF426.js.map → loadPage-E3ZC6NHB.js.map} +1 -1
- package/dist/server/{loadPage-LW273NYO.mjs → loadPage-E7L7NMR3.mjs} +3 -3
- package/dist/server/metadata.d.mts +5 -3
- package/dist/server/metadata.d.ts +5 -3
- package/dist/server/navigation.d.mts +100 -0
- package/dist/server/navigation.d.ts +100 -0
- package/dist/server/navigation.js +44 -0
- package/dist/server/navigation.js.map +1 -0
- package/dist/server/navigation.mjs +44 -0
- package/dist/server/navigation.mjs.map +1 -0
- package/dist/server/rendering/server.d.mts +8 -6
- package/dist/server/rendering/server.d.ts +8 -6
- package/dist/server/rendering/server.js +4 -4
- package/dist/server/rendering/server.mjs +3 -3
- package/dist/server/rendering.d.mts +9 -7
- package/dist/server/rendering.d.ts +9 -7
- package/dist/server/rendering.js +6 -6
- package/dist/server/rendering.mjs +5 -5
- package/dist/server/routing.d.mts +5 -3
- package/dist/server/routing.d.ts +5 -3
- package/dist/server/routing.js +1 -1
- package/dist/server/routing.mjs +1 -1
- package/dist/server/server.d.mts +7 -5
- package/dist/server/server.d.ts +7 -5
- package/dist/server/server.js +4 -4
- package/dist/server/server.mjs +3 -3
- package/dist/server/theme-bridge.js +7 -7
- package/dist/server/theme-bridge.mjs +1 -1
- package/dist/server/{types-BprgZt-t.d.ts → types-5XdVD2J1.d.ts} +43 -147
- package/dist/server/{types-C0G9IxWO.d.mts → types-BA-J9K8r.d.mts} +43 -147
- package/dist/server/types-BC9eB2KH.d.mts +198 -0
- package/dist/server/{types-_nDnPHpv.d.ts → types-BuZJWVmj.d.mts} +4 -1
- package/dist/server/types-CAnC529E.d.ts +198 -0
- package/dist/server/{types--u4GLCAY.d.ts → types-CMqVHYLG.d.ts} +266 -4
- package/dist/server/{types-_zWJTgv0.d.mts → types-CYfHxUhe.d.mts} +266 -4
- package/dist/server/{types-_nDnPHpv.d.mts → types-DSFvXKhO.d.ts} +4 -1
- package/dist/server/validation-C7W2Fe0i.d.ts +459 -0
- package/dist/server/validation-hg1sqhrt.d.mts +459 -0
- package/package.json +23 -17
- package/dist/server/chunk-3J46ILMJ.mjs.map +0 -1
- package/dist/server/chunk-5R4NMVXA.js.map +0 -1
- package/dist/server/chunk-BPKYRPCQ.mjs +0 -215
- package/dist/server/chunk-BPKYRPCQ.mjs.map +0 -1
- package/dist/server/chunk-GKYNDDJS.js.map +0 -1
- package/dist/server/chunk-GWBMJPLH.mjs.map +0 -1
- package/dist/server/chunk-O5DC7MYW.mjs.map +0 -1
- package/dist/server/chunk-PN3CHDVX.mjs.map +0 -1
- package/dist/server/chunk-SF63XAX7.js.map +0 -1
- package/dist/server/chunk-XLVL5WPH.js +0 -215
- package/dist/server/chunk-XLVL5WPH.js.map +0 -1
- package/dist/server/chunk-YXDDFG3N.js.map +0 -1
- package/dist/server/loadPage-3ECPF426.js +0 -11
- /package/dist/server/{chunk-FK64TZBT.mjs.map → chunk-SFQ7VF3G.mjs.map} +0 -0
- /package/dist/server/{chunk-JTAERCX2.mjs.map → chunk-VVFYHAUD.mjs.map} +0 -0
- /package/dist/server/{loadPage-LW273NYO.mjs.map → loadPage-E7L7NMR3.mjs.map} +0 -0
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { N as NavigationMenuWithItems } from './types-BA-J9K8r.mjs';
|
|
2
|
+
export { L as LinkPayload, a as NavigationItemRecord } from './types-BA-J9K8r.mjs';
|
|
3
|
+
import '@riverbankcms/ai';
|
|
4
|
+
import './schema-Bpy9N5ZI.mjs';
|
|
5
|
+
import 'zod';
|
|
6
|
+
import '@riverbankcms/media-storage-supabase';
|
|
7
|
+
import '@riverbankcms/db';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Navigation helper utilities for SDK sites.
|
|
11
|
+
*
|
|
12
|
+
* Provides simple helpers to transform CMS navigation data into
|
|
13
|
+
* render-ready NavItem arrays.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```ts
|
|
17
|
+
* import { getPrimaryNavItems, getNavItemsBySlug } from '@riverbankcms/sdk/navigation';
|
|
18
|
+
*
|
|
19
|
+
* // Get header navigation (primary menu)
|
|
20
|
+
* const headerNav = getPrimaryNavItems(siteData.navigation);
|
|
21
|
+
*
|
|
22
|
+
* // Get footer navigation by slug
|
|
23
|
+
* const footerNav = getNavItemsBySlug(siteData.navigation, 'footer');
|
|
24
|
+
*
|
|
25
|
+
* // Result: [{ href: '/', label: 'Home', isExternal: false }, ...]
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* @packageDocumentation
|
|
29
|
+
*/
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* A simplified navigation item structure for component rendering.
|
|
33
|
+
*/
|
|
34
|
+
type NavItem = {
|
|
35
|
+
/** The URL to navigate to */
|
|
36
|
+
href: string;
|
|
37
|
+
/** Display text for the navigation link */
|
|
38
|
+
label: string;
|
|
39
|
+
/** Whether link should open in new tab (external links) */
|
|
40
|
+
isExternal: boolean;
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* Get nav items from the primary menu (marked isPrimary, or first menu).
|
|
44
|
+
* Returns empty array if no navigation configured.
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```ts
|
|
48
|
+
* const headerNav = getPrimaryNavItems(siteData.navigation);
|
|
49
|
+
* // [{ href: '/', label: 'Home', isExternal: false }, ...]
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
declare function getPrimaryNavItems(navigation: NavigationMenuWithItems[]): NavItem[];
|
|
53
|
+
/**
|
|
54
|
+
* Get nav items from a specific menu by slug.
|
|
55
|
+
* Useful for footer nav, secondary nav, etc.
|
|
56
|
+
* Returns empty array if menu not found.
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* ```ts
|
|
60
|
+
* const footerNav = getNavItemsBySlug(siteData.navigation, 'footer');
|
|
61
|
+
* ```
|
|
62
|
+
*/
|
|
63
|
+
declare function getNavItemsBySlug(navigation: NavigationMenuWithItems[], slug: string): NavItem[];
|
|
64
|
+
/**
|
|
65
|
+
* Get the primary navigation menu object.
|
|
66
|
+
* Returns menu marked as isPrimary, or first menu if none marked.
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* ```ts
|
|
70
|
+
* const menu = getPrimaryNavigation(siteData.navigation);
|
|
71
|
+
* console.log(menu?.title); // "Main Navigation"
|
|
72
|
+
* console.log(menu?.slug); // "main"
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
75
|
+
declare function getPrimaryNavigation(navigation: NavigationMenuWithItems[]): NavigationMenuWithItems | null;
|
|
76
|
+
/**
|
|
77
|
+
* Get a navigation menu by name.
|
|
78
|
+
*
|
|
79
|
+
* @example
|
|
80
|
+
* ```ts
|
|
81
|
+
* const footerMenu = getNavigationBySlug(siteData.navigation, 'footer');
|
|
82
|
+
* ```
|
|
83
|
+
*/
|
|
84
|
+
declare function getNavigationBySlug(navigation: NavigationMenuWithItems[], slug: string): NavigationMenuWithItems | null;
|
|
85
|
+
/**
|
|
86
|
+
* Transform a menu into NavItem array.
|
|
87
|
+
* - Sorts by orderIndex
|
|
88
|
+
* - Resolves link hrefs
|
|
89
|
+
* - Identifies external links
|
|
90
|
+
* - Filters out items without valid hrefs
|
|
91
|
+
*
|
|
92
|
+
* @example
|
|
93
|
+
* ```ts
|
|
94
|
+
* const menu = getNavigationBySlug(siteData.navigation, 'main');
|
|
95
|
+
* const items = transformNavItems(menu);
|
|
96
|
+
* ```
|
|
97
|
+
*/
|
|
98
|
+
declare function transformNavItems(menu: NavigationMenuWithItems | null): NavItem[];
|
|
99
|
+
|
|
100
|
+
export { type NavItem, NavigationMenuWithItems, getNavItemsBySlug, getNavigationBySlug, getPrimaryNavItems, getPrimaryNavigation, transformNavItems };
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { N as NavigationMenuWithItems } from './types-5XdVD2J1.js';
|
|
2
|
+
export { L as LinkPayload, a as NavigationItemRecord } from './types-5XdVD2J1.js';
|
|
3
|
+
import '@riverbankcms/ai';
|
|
4
|
+
import './schema-Bpy9N5ZI.js';
|
|
5
|
+
import 'zod';
|
|
6
|
+
import '@riverbankcms/media-storage-supabase';
|
|
7
|
+
import '@riverbankcms/db';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Navigation helper utilities for SDK sites.
|
|
11
|
+
*
|
|
12
|
+
* Provides simple helpers to transform CMS navigation data into
|
|
13
|
+
* render-ready NavItem arrays.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```ts
|
|
17
|
+
* import { getPrimaryNavItems, getNavItemsBySlug } from '@riverbankcms/sdk/navigation';
|
|
18
|
+
*
|
|
19
|
+
* // Get header navigation (primary menu)
|
|
20
|
+
* const headerNav = getPrimaryNavItems(siteData.navigation);
|
|
21
|
+
*
|
|
22
|
+
* // Get footer navigation by slug
|
|
23
|
+
* const footerNav = getNavItemsBySlug(siteData.navigation, 'footer');
|
|
24
|
+
*
|
|
25
|
+
* // Result: [{ href: '/', label: 'Home', isExternal: false }, ...]
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* @packageDocumentation
|
|
29
|
+
*/
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* A simplified navigation item structure for component rendering.
|
|
33
|
+
*/
|
|
34
|
+
type NavItem = {
|
|
35
|
+
/** The URL to navigate to */
|
|
36
|
+
href: string;
|
|
37
|
+
/** Display text for the navigation link */
|
|
38
|
+
label: string;
|
|
39
|
+
/** Whether link should open in new tab (external links) */
|
|
40
|
+
isExternal: boolean;
|
|
41
|
+
};
|
|
42
|
+
/**
|
|
43
|
+
* Get nav items from the primary menu (marked isPrimary, or first menu).
|
|
44
|
+
* Returns empty array if no navigation configured.
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```ts
|
|
48
|
+
* const headerNav = getPrimaryNavItems(siteData.navigation);
|
|
49
|
+
* // [{ href: '/', label: 'Home', isExternal: false }, ...]
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
declare function getPrimaryNavItems(navigation: NavigationMenuWithItems[]): NavItem[];
|
|
53
|
+
/**
|
|
54
|
+
* Get nav items from a specific menu by slug.
|
|
55
|
+
* Useful for footer nav, secondary nav, etc.
|
|
56
|
+
* Returns empty array if menu not found.
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* ```ts
|
|
60
|
+
* const footerNav = getNavItemsBySlug(siteData.navigation, 'footer');
|
|
61
|
+
* ```
|
|
62
|
+
*/
|
|
63
|
+
declare function getNavItemsBySlug(navigation: NavigationMenuWithItems[], slug: string): NavItem[];
|
|
64
|
+
/**
|
|
65
|
+
* Get the primary navigation menu object.
|
|
66
|
+
* Returns menu marked as isPrimary, or first menu if none marked.
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* ```ts
|
|
70
|
+
* const menu = getPrimaryNavigation(siteData.navigation);
|
|
71
|
+
* console.log(menu?.title); // "Main Navigation"
|
|
72
|
+
* console.log(menu?.slug); // "main"
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
75
|
+
declare function getPrimaryNavigation(navigation: NavigationMenuWithItems[]): NavigationMenuWithItems | null;
|
|
76
|
+
/**
|
|
77
|
+
* Get a navigation menu by name.
|
|
78
|
+
*
|
|
79
|
+
* @example
|
|
80
|
+
* ```ts
|
|
81
|
+
* const footerMenu = getNavigationBySlug(siteData.navigation, 'footer');
|
|
82
|
+
* ```
|
|
83
|
+
*/
|
|
84
|
+
declare function getNavigationBySlug(navigation: NavigationMenuWithItems[], slug: string): NavigationMenuWithItems | null;
|
|
85
|
+
/**
|
|
86
|
+
* Transform a menu into NavItem array.
|
|
87
|
+
* - Sorts by orderIndex
|
|
88
|
+
* - Resolves link hrefs
|
|
89
|
+
* - Identifies external links
|
|
90
|
+
* - Filters out items without valid hrefs
|
|
91
|
+
*
|
|
92
|
+
* @example
|
|
93
|
+
* ```ts
|
|
94
|
+
* const menu = getNavigationBySlug(siteData.navigation, 'main');
|
|
95
|
+
* const items = transformNavItems(menu);
|
|
96
|
+
* ```
|
|
97
|
+
*/
|
|
98
|
+
declare function transformNavItems(menu: NavigationMenuWithItems | null): NavItem[];
|
|
99
|
+
|
|
100
|
+
export { type NavItem, NavigationMenuWithItems, getNavItemsBySlug, getNavigationBySlug, getPrimaryNavItems, getPrimaryNavigation, transformNavItems };
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }require('./chunk-DGUM43GV.js');
|
|
2
|
+
|
|
3
|
+
// src/navigation/index.ts
|
|
4
|
+
function getPrimaryNavItems(navigation) {
|
|
5
|
+
return transformNavItems(getPrimaryNavigation(navigation));
|
|
6
|
+
}
|
|
7
|
+
function getNavItemsBySlug(navigation, slug) {
|
|
8
|
+
return transformNavItems(getNavigationBySlug(navigation, slug));
|
|
9
|
+
}
|
|
10
|
+
function getPrimaryNavigation(navigation) {
|
|
11
|
+
if (!navigation || navigation.length === 0) return null;
|
|
12
|
+
return _nullishCoalesce(navigation.find((menu) => menu.isPrimary), () => ( navigation[0]));
|
|
13
|
+
}
|
|
14
|
+
function getNavigationBySlug(navigation, slug) {
|
|
15
|
+
if (!navigation || navigation.length === 0) return null;
|
|
16
|
+
return _nullishCoalesce(navigation.find((menu) => menu.name === slug), () => ( null));
|
|
17
|
+
}
|
|
18
|
+
function transformNavItems(menu) {
|
|
19
|
+
if (!_optionalChain([menu, 'optionalAccess', _ => _.items]) || menu.items.length === 0) return [];
|
|
20
|
+
const items = menu.items;
|
|
21
|
+
return items.slice().sort((a, b) => (_nullishCoalesce(a.orderIndex, () => ( 0))) - (_nullishCoalesce(b.orderIndex, () => ( 0)))).map((item) => ({
|
|
22
|
+
label: item.label,
|
|
23
|
+
href: resolveItemHref(item),
|
|
24
|
+
isExternal: isExternalLink(item)
|
|
25
|
+
})).filter((item) => Boolean(item.href));
|
|
26
|
+
}
|
|
27
|
+
function resolveItemHref(item) {
|
|
28
|
+
const link = item.url;
|
|
29
|
+
if (!link || typeof link !== "object" || !("href" in link)) return "";
|
|
30
|
+
return link.href;
|
|
31
|
+
}
|
|
32
|
+
function isExternalLink(item) {
|
|
33
|
+
const link = item.url;
|
|
34
|
+
if (!link || typeof link !== "object" || !("kind" in link)) return false;
|
|
35
|
+
return link.kind === "external";
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
exports.getNavItemsBySlug = getNavItemsBySlug; exports.getNavigationBySlug = getNavigationBySlug; exports.getPrimaryNavItems = getPrimaryNavItems; exports.getPrimaryNavigation = getPrimaryNavigation; exports.transformNavItems = transformNavItems;
|
|
44
|
+
//# sourceMappingURL=navigation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["/Users/will/Projects/Business/cms/builder/packages/sdk/dist/server/navigation.js","../../src/navigation/index.ts"],"names":[],"mappings":"AAAA,gtBAA4B;AAC5B;AACA;ACgDO,SAAS,kBAAA,CAAmB,UAAA,EAAkD;AACnF,EAAA,OAAO,iBAAA,CAAkB,oBAAA,CAAqB,UAAU,CAAC,CAAA;AAC3D;AAYO,SAAS,iBAAA,CAAkB,UAAA,EAAuC,IAAA,EAAyB;AAChG,EAAA,OAAO,iBAAA,CAAkB,mBAAA,CAAoB,UAAA,EAAY,IAAI,CAAC,CAAA;AAChE;AAiBO,SAAS,oBAAA,CACd,UAAA,EACgC;AAChC,EAAA,GAAA,CAAI,CAAC,WAAA,GAAc,UAAA,CAAW,OAAA,IAAW,CAAA,EAAG,OAAO,IAAA;AACnD,EAAA,wBAAO,UAAA,CAAW,IAAA,CAAK,CAAC,IAAA,EAAA,GAAS,IAAA,CAAK,SAAS,CAAA,UAAK,UAAA,CAAW,CAAC,GAAA;AAClE;AAUO,SAAS,mBAAA,CACd,UAAA,EACA,IAAA,EACgC;AAChC,EAAA,GAAA,CAAI,CAAC,WAAA,GAAc,UAAA,CAAW,OAAA,IAAW,CAAA,EAAG,OAAO,IAAA;AAEnD,EAAA,wBAAO,UAAA,CAAW,IAAA,CAAK,CAAC,IAAA,EAAA,GAAS,IAAA,CAAK,KAAA,IAAS,IAAI,CAAA,UAAK,MAAA;AAC1D;AAeO,SAAS,iBAAA,CAAkB,IAAA,EAAiD;AACjF,EAAA,GAAA,CAAI,iBAAC,IAAA,2BAAM,QAAA,GAAS,IAAA,CAAK,KAAA,CAAM,OAAA,IAAW,CAAA,EAAG,OAAO,CAAC,CAAA;AAErD,EAAA,MAAM,MAAA,EAAgC,IAAA,CAAK,KAAA;AAE3C,EAAA,OAAO,KAAA,CACJ,KAAA,CAAM,CAAA,CACN,IAAA,CAAK,CAAC,CAAA,EAAyB,CAAA,EAAA,GAAA,kBAA6B,CAAA,CAAE,UAAA,UAAc,GAAA,EAAA,EAAA,kBAAM,CAAA,CAAE,UAAA,UAAc,GAAA,CAAE,CAAA,CACpG,GAAA,CAAI,CAAC,IAAA,EAAA,GAAA,CAAgC;AAAA,IACpC,KAAA,EAAO,IAAA,CAAK,KAAA;AAAA,IACZ,IAAA,EAAM,eAAA,CAAgB,IAAI,CAAA;AAAA,IAC1B,UAAA,EAAY,cAAA,CAAe,IAAI;AAAA,EACjC,CAAA,CAAE,CAAA,CACD,MAAA,CAAO,CAAC,IAAA,EAAA,GAA0B,OAAA,CAAQ,IAAA,CAAK,IAAI,CAAC,CAAA;AACzD;AAWA,SAAS,eAAA,CAAgB,IAAA,EAAoC;AAE3D,EAAA,MAAM,KAAA,EAAO,IAAA,CAAK,GAAA;AAClB,EAAA,GAAA,CAAI,CAAC,KAAA,GAAQ,OAAO,KAAA,IAAS,SAAA,GAAY,CAAA,CAAE,OAAA,GAAU,IAAA,CAAA,EAAO,OAAO,EAAA;AACnE,EAAA,OAAO,IAAA,CAAK,IAAA;AACd;AAMA,SAAS,cAAA,CAAe,IAAA,EAAqC;AAC3D,EAAA,MAAM,KAAA,EAAO,IAAA,CAAK,GAAA;AAClB,EAAA,GAAA,CAAI,CAAC,KAAA,GAAQ,OAAO,KAAA,IAAS,SAAA,GAAY,CAAA,CAAE,OAAA,GAAU,IAAA,CAAA,EAAO,OAAO,KAAA;AACnE,EAAA,OAAO,IAAA,CAAK,KAAA,IAAS,UAAA;AACvB;AD5HA;AACE;AACA;AACA;AACA;AACA;AACF,sPAAC","file":"/Users/will/Projects/Business/cms/builder/packages/sdk/dist/server/navigation.js","sourcesContent":[null,"/**\n * Navigation helper utilities for SDK sites.\n *\n * Provides simple helpers to transform CMS navigation data into\n * render-ready NavItem arrays.\n *\n * @example\n * ```ts\n * import { getPrimaryNavItems, getNavItemsBySlug } from '@riverbankcms/sdk/navigation';\n *\n * // Get header navigation (primary menu)\n * const headerNav = getPrimaryNavItems(siteData.navigation);\n *\n * // Get footer navigation by slug\n * const footerNav = getNavItemsBySlug(siteData.navigation, 'footer');\n *\n * // Result: [{ href: '/', label: 'Home', isExternal: false }, ...]\n * ```\n *\n * @packageDocumentation\n */\n\nimport type { NavigationMenuWithItems, NavigationItemRecord, LinkPayload } from '@riverbankcms/api';\n\n/**\n * A simplified navigation item structure for component rendering.\n */\nexport type NavItem = {\n /** The URL to navigate to */\n href: string;\n /** Display text for the navigation link */\n label: string;\n /** Whether link should open in new tab (external links) */\n isExternal: boolean;\n};\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Primary API: Simple one-liner helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Get nav items from the primary menu (marked isPrimary, or first menu).\n * Returns empty array if no navigation configured.\n *\n * @example\n * ```ts\n * const headerNav = getPrimaryNavItems(siteData.navigation);\n * // [{ href: '/', label: 'Home', isExternal: false }, ...]\n * ```\n */\nexport function getPrimaryNavItems(navigation: NavigationMenuWithItems[]): NavItem[] {\n return transformNavItems(getPrimaryNavigation(navigation));\n}\n\n/**\n * Get nav items from a specific menu by slug.\n * Useful for footer nav, secondary nav, etc.\n * Returns empty array if menu not found.\n *\n * @example\n * ```ts\n * const footerNav = getNavItemsBySlug(siteData.navigation, 'footer');\n * ```\n */\nexport function getNavItemsBySlug(navigation: NavigationMenuWithItems[], slug: string): NavItem[] {\n return transformNavItems(getNavigationBySlug(navigation, slug));\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Building blocks for advanced use cases\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Get the primary navigation menu object.\n * Returns menu marked as isPrimary, or first menu if none marked.\n *\n * @example\n * ```ts\n * const menu = getPrimaryNavigation(siteData.navigation);\n * console.log(menu?.title); // \"Main Navigation\"\n * console.log(menu?.slug); // \"main\"\n * ```\n */\nexport function getPrimaryNavigation(\n navigation: NavigationMenuWithItems[],\n): NavigationMenuWithItems | null {\n if (!navigation || navigation.length === 0) return null;\n return navigation.find((menu) => menu.isPrimary) ?? navigation[0];\n}\n\n/**\n * Get a navigation menu by name.\n *\n * @example\n * ```ts\n * const footerMenu = getNavigationBySlug(siteData.navigation, 'footer');\n * ```\n */\nexport function getNavigationBySlug(\n navigation: NavigationMenuWithItems[],\n slug: string,\n): NavigationMenuWithItems | null {\n if (!navigation || navigation.length === 0) return null;\n // Match by name (the database field) - function is named \"slug\" for API simplicity\n return navigation.find((menu) => menu.name === slug) ?? null;\n}\n\n/**\n * Transform a menu into NavItem array.\n * - Sorts by orderIndex\n * - Resolves link hrefs\n * - Identifies external links\n * - Filters out items without valid hrefs\n *\n * @example\n * ```ts\n * const menu = getNavigationBySlug(siteData.navigation, 'main');\n * const items = transformNavItems(menu);\n * ```\n */\nexport function transformNavItems(menu: NavigationMenuWithItems | null): NavItem[] {\n if (!menu?.items || menu.items.length === 0) return [];\n\n const items: NavigationItemRecord[] = menu.items;\n\n return items\n .slice()\n .sort((a: NavigationItemRecord, b: NavigationItemRecord) => (a.orderIndex ?? 0) - (b.orderIndex ?? 0))\n .map((item: NavigationItemRecord) => ({\n label: item.label,\n href: resolveItemHref(item),\n isExternal: isExternalLink(item),\n }))\n .filter((item): item is NavItem => Boolean(item.href));\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Internal helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Extracts the href from a navigation item's url field.\n * The `url` field is a JSON column containing link data with { kind, href, ... } structure.\n * Gracefully returns empty string for malformed or missing link data.\n */\nfunction resolveItemHref(item: NavigationItemRecord): string {\n // The database field is `url` (JSON) which gets camelized to `url`\n const link = item.url as LinkPayload | null | undefined;\n if (!link || typeof link !== 'object' || !('href' in link)) return '';\n return link.href;\n}\n\n/**\n * Determines if a navigation item's link is external.\n * External links (kind: 'external') should typically open in a new tab.\n */\nfunction isExternalLink(item: NavigationItemRecord): boolean {\n const link = item.url as LinkPayload | null | undefined;\n if (!link || typeof link !== 'object' || !('kind' in link)) return false;\n return link.kind === 'external';\n}\n\n// Re-export types for convenience\nexport type { NavigationMenuWithItems, NavigationItemRecord, LinkPayload } from '@riverbankcms/api';\n"]}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import "./chunk-BJTO5JO5.mjs";
|
|
2
|
+
|
|
3
|
+
// src/navigation/index.ts
|
|
4
|
+
function getPrimaryNavItems(navigation) {
|
|
5
|
+
return transformNavItems(getPrimaryNavigation(navigation));
|
|
6
|
+
}
|
|
7
|
+
function getNavItemsBySlug(navigation, slug) {
|
|
8
|
+
return transformNavItems(getNavigationBySlug(navigation, slug));
|
|
9
|
+
}
|
|
10
|
+
function getPrimaryNavigation(navigation) {
|
|
11
|
+
if (!navigation || navigation.length === 0) return null;
|
|
12
|
+
return navigation.find((menu) => menu.isPrimary) ?? navigation[0];
|
|
13
|
+
}
|
|
14
|
+
function getNavigationBySlug(navigation, slug) {
|
|
15
|
+
if (!navigation || navigation.length === 0) return null;
|
|
16
|
+
return navigation.find((menu) => menu.name === slug) ?? null;
|
|
17
|
+
}
|
|
18
|
+
function transformNavItems(menu) {
|
|
19
|
+
if (!menu?.items || menu.items.length === 0) return [];
|
|
20
|
+
const items = menu.items;
|
|
21
|
+
return items.slice().sort((a, b) => (a.orderIndex ?? 0) - (b.orderIndex ?? 0)).map((item) => ({
|
|
22
|
+
label: item.label,
|
|
23
|
+
href: resolveItemHref(item),
|
|
24
|
+
isExternal: isExternalLink(item)
|
|
25
|
+
})).filter((item) => Boolean(item.href));
|
|
26
|
+
}
|
|
27
|
+
function resolveItemHref(item) {
|
|
28
|
+
const link = item.url;
|
|
29
|
+
if (!link || typeof link !== "object" || !("href" in link)) return "";
|
|
30
|
+
return link.href;
|
|
31
|
+
}
|
|
32
|
+
function isExternalLink(item) {
|
|
33
|
+
const link = item.url;
|
|
34
|
+
if (!link || typeof link !== "object" || !("kind" in link)) return false;
|
|
35
|
+
return link.kind === "external";
|
|
36
|
+
}
|
|
37
|
+
export {
|
|
38
|
+
getNavItemsBySlug,
|
|
39
|
+
getNavigationBySlug,
|
|
40
|
+
getPrimaryNavItems,
|
|
41
|
+
getPrimaryNavigation,
|
|
42
|
+
transformNavItems
|
|
43
|
+
};
|
|
44
|
+
//# sourceMappingURL=navigation.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/navigation/index.ts"],"sourcesContent":["/**\n * Navigation helper utilities for SDK sites.\n *\n * Provides simple helpers to transform CMS navigation data into\n * render-ready NavItem arrays.\n *\n * @example\n * ```ts\n * import { getPrimaryNavItems, getNavItemsBySlug } from '@riverbankcms/sdk/navigation';\n *\n * // Get header navigation (primary menu)\n * const headerNav = getPrimaryNavItems(siteData.navigation);\n *\n * // Get footer navigation by slug\n * const footerNav = getNavItemsBySlug(siteData.navigation, 'footer');\n *\n * // Result: [{ href: '/', label: 'Home', isExternal: false }, ...]\n * ```\n *\n * @packageDocumentation\n */\n\nimport type { NavigationMenuWithItems, NavigationItemRecord, LinkPayload } from '@riverbankcms/api';\n\n/**\n * A simplified navigation item structure for component rendering.\n */\nexport type NavItem = {\n /** The URL to navigate to */\n href: string;\n /** Display text for the navigation link */\n label: string;\n /** Whether link should open in new tab (external links) */\n isExternal: boolean;\n};\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Primary API: Simple one-liner helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Get nav items from the primary menu (marked isPrimary, or first menu).\n * Returns empty array if no navigation configured.\n *\n * @example\n * ```ts\n * const headerNav = getPrimaryNavItems(siteData.navigation);\n * // [{ href: '/', label: 'Home', isExternal: false }, ...]\n * ```\n */\nexport function getPrimaryNavItems(navigation: NavigationMenuWithItems[]): NavItem[] {\n return transformNavItems(getPrimaryNavigation(navigation));\n}\n\n/**\n * Get nav items from a specific menu by slug.\n * Useful for footer nav, secondary nav, etc.\n * Returns empty array if menu not found.\n *\n * @example\n * ```ts\n * const footerNav = getNavItemsBySlug(siteData.navigation, 'footer');\n * ```\n */\nexport function getNavItemsBySlug(navigation: NavigationMenuWithItems[], slug: string): NavItem[] {\n return transformNavItems(getNavigationBySlug(navigation, slug));\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Building blocks for advanced use cases\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Get the primary navigation menu object.\n * Returns menu marked as isPrimary, or first menu if none marked.\n *\n * @example\n * ```ts\n * const menu = getPrimaryNavigation(siteData.navigation);\n * console.log(menu?.title); // \"Main Navigation\"\n * console.log(menu?.slug); // \"main\"\n * ```\n */\nexport function getPrimaryNavigation(\n navigation: NavigationMenuWithItems[],\n): NavigationMenuWithItems | null {\n if (!navigation || navigation.length === 0) return null;\n return navigation.find((menu) => menu.isPrimary) ?? navigation[0];\n}\n\n/**\n * Get a navigation menu by name.\n *\n * @example\n * ```ts\n * const footerMenu = getNavigationBySlug(siteData.navigation, 'footer');\n * ```\n */\nexport function getNavigationBySlug(\n navigation: NavigationMenuWithItems[],\n slug: string,\n): NavigationMenuWithItems | null {\n if (!navigation || navigation.length === 0) return null;\n // Match by name (the database field) - function is named \"slug\" for API simplicity\n return navigation.find((menu) => menu.name === slug) ?? null;\n}\n\n/**\n * Transform a menu into NavItem array.\n * - Sorts by orderIndex\n * - Resolves link hrefs\n * - Identifies external links\n * - Filters out items without valid hrefs\n *\n * @example\n * ```ts\n * const menu = getNavigationBySlug(siteData.navigation, 'main');\n * const items = transformNavItems(menu);\n * ```\n */\nexport function transformNavItems(menu: NavigationMenuWithItems | null): NavItem[] {\n if (!menu?.items || menu.items.length === 0) return [];\n\n const items: NavigationItemRecord[] = menu.items;\n\n return items\n .slice()\n .sort((a: NavigationItemRecord, b: NavigationItemRecord) => (a.orderIndex ?? 0) - (b.orderIndex ?? 0))\n .map((item: NavigationItemRecord) => ({\n label: item.label,\n href: resolveItemHref(item),\n isExternal: isExternalLink(item),\n }))\n .filter((item): item is NavItem => Boolean(item.href));\n}\n\n// ─────────────────────────────────────────────────────────────────────────────\n// Internal helpers\n// ─────────────────────────────────────────────────────────────────────────────\n\n/**\n * Extracts the href from a navigation item's url field.\n * The `url` field is a JSON column containing link data with { kind, href, ... } structure.\n * Gracefully returns empty string for malformed or missing link data.\n */\nfunction resolveItemHref(item: NavigationItemRecord): string {\n // The database field is `url` (JSON) which gets camelized to `url`\n const link = item.url as LinkPayload | null | undefined;\n if (!link || typeof link !== 'object' || !('href' in link)) return '';\n return link.href;\n}\n\n/**\n * Determines if a navigation item's link is external.\n * External links (kind: 'external') should typically open in a new tab.\n */\nfunction isExternalLink(item: NavigationItemRecord): boolean {\n const link = item.url as LinkPayload | null | undefined;\n if (!link || typeof link !== 'object' || !('kind' in link)) return false;\n return link.kind === 'external';\n}\n\n// Re-export types for convenience\nexport type { NavigationMenuWithItems, NavigationItemRecord, LinkPayload } from '@riverbankcms/api';\n"],"mappings":";;;AAkDO,SAAS,mBAAmB,YAAkD;AACnF,SAAO,kBAAkB,qBAAqB,UAAU,CAAC;AAC3D;AAYO,SAAS,kBAAkB,YAAuC,MAAyB;AAChG,SAAO,kBAAkB,oBAAoB,YAAY,IAAI,CAAC;AAChE;AAiBO,SAAS,qBACd,YACgC;AAChC,MAAI,CAAC,cAAc,WAAW,WAAW,EAAG,QAAO;AACnD,SAAO,WAAW,KAAK,CAAC,SAAS,KAAK,SAAS,KAAK,WAAW,CAAC;AAClE;AAUO,SAAS,oBACd,YACA,MACgC;AAChC,MAAI,CAAC,cAAc,WAAW,WAAW,EAAG,QAAO;AAEnD,SAAO,WAAW,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,KAAK;AAC1D;AAeO,SAAS,kBAAkB,MAAiD;AACjF,MAAI,CAAC,MAAM,SAAS,KAAK,MAAM,WAAW,EAAG,QAAO,CAAC;AAErD,QAAM,QAAgC,KAAK;AAE3C,SAAO,MACJ,MAAM,EACN,KAAK,CAAC,GAAyB,OAA6B,EAAE,cAAc,MAAM,EAAE,cAAc,EAAE,EACpG,IAAI,CAAC,UAAgC;AAAA,IACpC,OAAO,KAAK;AAAA,IACZ,MAAM,gBAAgB,IAAI;AAAA,IAC1B,YAAY,eAAe,IAAI;AAAA,EACjC,EAAE,EACD,OAAO,CAAC,SAA0B,QAAQ,KAAK,IAAI,CAAC;AACzD;AAWA,SAAS,gBAAgB,MAAoC;AAE3D,QAAM,OAAO,KAAK;AAClB,MAAI,CAAC,QAAQ,OAAO,SAAS,YAAY,EAAE,UAAU,MAAO,QAAO;AACnE,SAAO,KAAK;AACd;AAMA,SAAS,eAAe,MAAqC;AAC3D,QAAM,OAAO,KAAK;AAClB,MAAI,CAAC,QAAQ,OAAO,SAAS,YAAY,EAAE,UAAU,MAAO,QAAO;AACnE,SAAO,KAAK,SAAS;AACvB;","names":[]}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
export { b as Page, P as PageProps } from '../loadPage-
|
|
2
|
-
export { H as HeaderData, L as Layout, a as LayoutProps } from '../Layout-
|
|
1
|
+
export { b as Page, P as PageProps } from '../loadPage-Dw57_n5N.mjs';
|
|
2
|
+
export { H as HeaderData, L as Layout, a as LayoutProps } from '../Layout-B_zUr9ci.mjs';
|
|
3
3
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
4
4
|
import * as React from 'react';
|
|
5
|
-
import { T as Theme
|
|
5
|
+
import { T as Theme } from '../types-BA-J9K8r.mjs';
|
|
6
6
|
import '../schema-Bpy9N5ZI.mjs';
|
|
7
|
+
import { R as RiverbankClient } from '../types-BC9eB2KH.mjs';
|
|
8
|
+
import { B as BlockKind } from '../blockKinds-B6MWzNWp.mjs';
|
|
7
9
|
import 'zod';
|
|
8
|
-
import '../types-
|
|
10
|
+
import '../types-BuZJWVmj.mjs';
|
|
9
11
|
import '@riverbankcms/site-renderer';
|
|
10
12
|
import '@riverbankcms/ai';
|
|
11
13
|
import '@riverbankcms/media-storage-supabase';
|
|
@@ -21,10 +23,10 @@ type BlockOverrideComponent = React.ComponentType<{
|
|
|
21
23
|
themeConfig?: Theme;
|
|
22
24
|
data?: Record<string, unknown>;
|
|
23
25
|
blockId?: string | null;
|
|
24
|
-
blockKind?:
|
|
26
|
+
blockKind?: BlockKind;
|
|
25
27
|
}>;
|
|
26
28
|
type BlockProps = {
|
|
27
|
-
blockKind:
|
|
29
|
+
blockKind: BlockKind;
|
|
28
30
|
blockId?: string | null;
|
|
29
31
|
content: Record<string, unknown>;
|
|
30
32
|
theme: Theme;
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
export { b as Page, P as PageProps } from '../loadPage-
|
|
2
|
-
export { H as HeaderData, L as Layout, a as LayoutProps } from '../Layout-
|
|
1
|
+
export { b as Page, P as PageProps } from '../loadPage-BElEkA_J.js';
|
|
2
|
+
export { H as HeaderData, L as Layout, a as LayoutProps } from '../Layout-CHG77dhK.js';
|
|
3
3
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
4
4
|
import * as React from 'react';
|
|
5
|
-
import { T as Theme
|
|
5
|
+
import { T as Theme } from '../types-5XdVD2J1.js';
|
|
6
6
|
import '../schema-Bpy9N5ZI.js';
|
|
7
|
+
import { R as RiverbankClient } from '../types-CAnC529E.js';
|
|
8
|
+
import { B as BlockKind } from '../blockKinds-B6MWzNWp.js';
|
|
7
9
|
import 'zod';
|
|
8
|
-
import '../types-
|
|
10
|
+
import '../types-DSFvXKhO.js';
|
|
9
11
|
import '@riverbankcms/site-renderer';
|
|
10
12
|
import '@riverbankcms/ai';
|
|
11
13
|
import '@riverbankcms/media-storage-supabase';
|
|
@@ -21,10 +23,10 @@ type BlockOverrideComponent = React.ComponentType<{
|
|
|
21
23
|
themeConfig?: Theme;
|
|
22
24
|
data?: Record<string, unknown>;
|
|
23
25
|
blockId?: string | null;
|
|
24
|
-
blockKind?:
|
|
26
|
+
blockKind?: BlockKind;
|
|
25
27
|
}>;
|
|
26
28
|
type BlockProps = {
|
|
27
|
-
blockKind:
|
|
29
|
+
blockKind: BlockKind;
|
|
28
30
|
blockId?: string | null;
|
|
29
31
|
content: Record<string, unknown>;
|
|
30
32
|
theme: Theme;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _chunkBUCJWG6Gjs = require('../chunk-BUCJWG6G.js');
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
var
|
|
8
|
-
require('../chunk-
|
|
7
|
+
var _chunkP6CDRJN3js = require('../chunk-P6CDRJN3.js');
|
|
8
|
+
require('../chunk-IT5ICP43.js');
|
|
9
9
|
require('../chunk-HOY77YBF.js');
|
|
10
10
|
require('../chunk-EGTDJ4PL.js');
|
|
11
11
|
require('../chunk-DGUM43GV.js');
|
|
@@ -13,5 +13,5 @@ require('../chunk-DGUM43GV.js');
|
|
|
13
13
|
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
exports.Block =
|
|
16
|
+
exports.Block = _chunkBUCJWG6Gjs.Block; exports.Layout = _chunkP6CDRJN3js.Layout; exports.Page = _chunkP6CDRJN3js.Page;
|
|
17
17
|
//# sourceMappingURL=server.js.map
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Block
|
|
3
|
-
} from "../chunk-
|
|
3
|
+
} from "../chunk-XK2YIISA.mjs";
|
|
4
4
|
import {
|
|
5
5
|
Layout,
|
|
6
6
|
Page
|
|
7
|
-
} from "../chunk-
|
|
8
|
-
import "../chunk-
|
|
7
|
+
} from "../chunk-SFQ7VF3G.mjs";
|
|
8
|
+
import "../chunk-NKXS4TBK.mjs";
|
|
9
9
|
import "../chunk-7DS4Q3GA.mjs";
|
|
10
10
|
import "../chunk-USQF2XTU.mjs";
|
|
11
11
|
import "../chunk-BJTO5JO5.mjs";
|
|
@@ -1,15 +1,17 @@
|
|
|
1
|
-
export { e as BlockOverrideComponent, B as BlockOverrides, L as LoadPageParams, a as LoadPageResult, b as Page, P as PageProps, c as PageRenderer, d as RouteMap, S as SystemBlockComponentProps, T as ThemeTokens, l as loadPage } from './loadPage-
|
|
2
|
-
export { H as HeaderData, L as Layout, a as LayoutProps } from './Layout-
|
|
1
|
+
export { e as BlockOverrideComponent, B as BlockOverrides, L as LoadPageParams, a as LoadPageResult, b as Page, P as PageProps, c as PageRenderer, d as RouteMap, S as SystemBlockComponentProps, T as ThemeTokens, l as loadPage } from './loadPage-Dw57_n5N.mjs';
|
|
2
|
+
export { H as HeaderData, L as Layout, a as LayoutProps } from './Layout-B_zUr9ci.mjs';
|
|
3
3
|
export { Block, BlockProps } from './rendering/server.mjs';
|
|
4
|
-
export { C as ContentEntryData, L as LoadContentParams, b as LoadContentResult, a as isEntryContent, i as isPageContent, l as loadContent } from './loadContent-
|
|
5
|
-
export { C as CustomLinkValue,
|
|
4
|
+
export { C as ContentEntryData, L as LoadContentParams, b as LoadContentResult, a as isEntryContent, i as isPageContent, l as loadContent } from './loadContent-Czu7xTOU.mjs';
|
|
5
|
+
export { C as CustomLinkValue, E as ExternalLinkValue, I as InternalLinkValue, d as LinkValue, c as SiteFooterContent, S as SiteHeaderContent, T as Theme } from './types-BA-J9K8r.mjs';
|
|
6
6
|
export { P as PageOutline } from './schema-Bpy9N5ZI.mjs';
|
|
7
|
-
import { G as GradientConfig, M as Media } from './components-
|
|
8
|
-
export { e as BackgroundInput, B as BodyTextContent, H as HeroContent, a as HeroMedia, f as ResolvedBackground, R as RichText, c as RichTextPrimitiveProps, S as SectionBackground, g as SectionBackgroundProps, T as TipTapNode, b as buildThemeRuntime, d as resolveBackground, r as resolveImageUrl } from './components-
|
|
7
|
+
import { G as GradientConfig, M as Media } from './components-Ci5nlyUj.mjs';
|
|
8
|
+
export { e as BackgroundInput, B as BodyTextContent, H as HeroContent, a as HeroMedia, f as ResolvedBackground, R as RichText, c as RichTextPrimitiveProps, S as SectionBackground, g as SectionBackgroundProps, T as TipTapNode, b as buildThemeRuntime, d as resolveBackground, r as resolveImageUrl } from './components-Ci5nlyUj.mjs';
|
|
9
|
+
import './types-BC9eB2KH.mjs';
|
|
9
10
|
import 'react/jsx-runtime';
|
|
10
11
|
import 'react';
|
|
11
12
|
import 'zod';
|
|
12
|
-
import './types-
|
|
13
|
+
import './types-BuZJWVmj.mjs';
|
|
14
|
+
import './blockKinds-B6MWzNWp.mjs';
|
|
13
15
|
import '@riverbankcms/site-renderer';
|
|
14
16
|
import '@riverbankcms/ai';
|
|
15
17
|
import '@riverbankcms/media-storage-supabase';
|
|
@@ -1,15 +1,17 @@
|
|
|
1
|
-
export { e as BlockOverrideComponent, B as BlockOverrides, L as LoadPageParams, a as LoadPageResult, b as Page, P as PageProps, c as PageRenderer, d as RouteMap, S as SystemBlockComponentProps, T as ThemeTokens, l as loadPage } from './loadPage-
|
|
2
|
-
export { H as HeaderData, L as Layout, a as LayoutProps } from './Layout-
|
|
1
|
+
export { e as BlockOverrideComponent, B as BlockOverrides, L as LoadPageParams, a as LoadPageResult, b as Page, P as PageProps, c as PageRenderer, d as RouteMap, S as SystemBlockComponentProps, T as ThemeTokens, l as loadPage } from './loadPage-BElEkA_J.js';
|
|
2
|
+
export { H as HeaderData, L as Layout, a as LayoutProps } from './Layout-CHG77dhK.js';
|
|
3
3
|
export { Block, BlockProps } from './rendering/server.js';
|
|
4
|
-
export { C as ContentEntryData, L as LoadContentParams, b as LoadContentResult, a as isEntryContent, i as isPageContent, l as loadContent } from './loadContent-
|
|
5
|
-
export { C as CustomLinkValue,
|
|
4
|
+
export { C as ContentEntryData, L as LoadContentParams, b as LoadContentResult, a as isEntryContent, i as isPageContent, l as loadContent } from './loadContent-BqQ-VPMW.js';
|
|
5
|
+
export { C as CustomLinkValue, E as ExternalLinkValue, I as InternalLinkValue, d as LinkValue, c as SiteFooterContent, S as SiteHeaderContent, T as Theme } from './types-5XdVD2J1.js';
|
|
6
6
|
export { P as PageOutline } from './schema-Bpy9N5ZI.js';
|
|
7
|
-
import { G as GradientConfig, M as Media } from './components-
|
|
8
|
-
export { e as BackgroundInput, B as BodyTextContent, H as HeroContent, a as HeroMedia, f as ResolvedBackground, R as RichText, c as RichTextPrimitiveProps, S as SectionBackground, g as SectionBackgroundProps, T as TipTapNode, b as buildThemeRuntime, d as resolveBackground, r as resolveImageUrl } from './components-
|
|
7
|
+
import { G as GradientConfig, M as Media } from './components-BYxloYJm.js';
|
|
8
|
+
export { e as BackgroundInput, B as BodyTextContent, H as HeroContent, a as HeroMedia, f as ResolvedBackground, R as RichText, c as RichTextPrimitiveProps, S as SectionBackground, g as SectionBackgroundProps, T as TipTapNode, b as buildThemeRuntime, d as resolveBackground, r as resolveImageUrl } from './components-BYxloYJm.js';
|
|
9
|
+
import './types-CAnC529E.js';
|
|
9
10
|
import 'react/jsx-runtime';
|
|
10
11
|
import 'react';
|
|
11
12
|
import 'zod';
|
|
12
|
-
import './types-
|
|
13
|
+
import './types-DSFvXKhO.js';
|
|
14
|
+
import './blockKinds-B6MWzNWp.js';
|
|
13
15
|
import '@riverbankcms/site-renderer';
|
|
14
16
|
import '@riverbankcms/ai';
|
|
15
17
|
import '@riverbankcms/media-storage-supabase';
|
package/dist/server/rendering.js
CHANGED
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
var _chunkTO7FD6TQjs = require('./chunk-TO7FD6TQ.js');
|
|
6
6
|
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _chunkFPYK6527js = require('./chunk-FPYK6527.js');
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
var
|
|
11
|
+
var _chunkBUCJWG6Gjs = require('./chunk-BUCJWG6G.js');
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
|
|
15
|
-
var
|
|
15
|
+
var _chunkP6CDRJN3js = require('./chunk-P6CDRJN3.js');
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
|
|
@@ -20,8 +20,8 @@ var _chunkINWKF3ICjs = require('./chunk-INWKF3IC.js');
|
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
|
|
23
|
-
var
|
|
24
|
-
require('./chunk-
|
|
23
|
+
var _chunkIT5ICP43js = require('./chunk-IT5ICP43.js');
|
|
24
|
+
require('./chunk-G4CKM4EN.js');
|
|
25
25
|
require('./chunk-HOY77YBF.js');
|
|
26
26
|
require('./chunk-EGTDJ4PL.js');
|
|
27
27
|
require('./chunk-DGUM43GV.js');
|
|
@@ -39,5 +39,5 @@ require('./chunk-DGUM43GV.js');
|
|
|
39
39
|
|
|
40
40
|
|
|
41
41
|
|
|
42
|
-
exports.Block =
|
|
42
|
+
exports.Block = _chunkBUCJWG6Gjs.Block; exports.Layout = _chunkP6CDRJN3js.Layout; exports.Page = _chunkP6CDRJN3js.Page; exports.PageRenderer = _chunkIT5ICP43js.PageRenderer; exports.RichText = _chunkIT5ICP43js.RichText; exports.SectionBackground = _chunkIT5ICP43js.SectionBackground; exports.buildThemeRuntime = _chunkIT5ICP43js.buildThemeRuntime; exports.isEntryContent = _chunkTO7FD6TQjs.isEntryContent; exports.isPageContent = _chunkTO7FD6TQjs.isPageContent; exports.loadContent = _chunkTO7FD6TQjs.loadContent; exports.loadPage = _chunkFPYK6527js.loadPage; exports.resolveBackground = _chunkIT5ICP43js.resolveBackground; exports.resolveImageUrl = _chunkIT5ICP43js.resolveImageUrl;
|
|
43
43
|
//# sourceMappingURL=rendering.js.map
|
|
@@ -5,14 +5,14 @@ import {
|
|
|
5
5
|
} from "./chunk-OP2GHK27.mjs";
|
|
6
6
|
import {
|
|
7
7
|
loadPage
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-VVFYHAUD.mjs";
|
|
9
9
|
import {
|
|
10
10
|
Block
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-XK2YIISA.mjs";
|
|
12
12
|
import {
|
|
13
13
|
Layout,
|
|
14
14
|
Page
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-SFQ7VF3G.mjs";
|
|
16
16
|
import {
|
|
17
17
|
PageRenderer,
|
|
18
18
|
RichText,
|
|
@@ -20,8 +20,8 @@ import {
|
|
|
20
20
|
buildThemeRuntime,
|
|
21
21
|
resolveBackground,
|
|
22
22
|
resolveImageUrl
|
|
23
|
-
} from "./chunk-
|
|
24
|
-
import "./chunk-
|
|
23
|
+
} from "./chunk-NKXS4TBK.mjs";
|
|
24
|
+
import "./chunk-M5KTLZTD.mjs";
|
|
25
25
|
import "./chunk-7DS4Q3GA.mjs";
|
|
26
26
|
import "./chunk-USQF2XTU.mjs";
|
|
27
27
|
import "./chunk-BJTO5JO5.mjs";
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { R as RiverbankClient } from './types-
|
|
2
|
-
import { a as LoadPageResult } from './loadPage-
|
|
1
|
+
import { R as RiverbankClient } from './types-BC9eB2KH.mjs';
|
|
2
|
+
import { a as LoadPageResult } from './loadPage-Dw57_n5N.mjs';
|
|
3
|
+
import './types-BA-J9K8r.mjs';
|
|
3
4
|
import '@riverbankcms/ai';
|
|
4
5
|
import './schema-Bpy9N5ZI.mjs';
|
|
5
6
|
import 'zod';
|
|
@@ -7,7 +8,8 @@ import '@riverbankcms/media-storage-supabase';
|
|
|
7
8
|
import '@riverbankcms/db';
|
|
8
9
|
import 'react/jsx-runtime';
|
|
9
10
|
import 'react';
|
|
10
|
-
import './types-
|
|
11
|
+
import './types-BuZJWVmj.mjs';
|
|
12
|
+
import './blockKinds-B6MWzNWp.mjs';
|
|
11
13
|
|
|
12
14
|
/**
|
|
13
15
|
* Route resolution helper for dynamic page routing
|
package/dist/server/routing.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { R as RiverbankClient } from './types-
|
|
2
|
-
import { a as LoadPageResult } from './loadPage-
|
|
1
|
+
import { R as RiverbankClient } from './types-CAnC529E.js';
|
|
2
|
+
import { a as LoadPageResult } from './loadPage-BElEkA_J.js';
|
|
3
|
+
import './types-5XdVD2J1.js';
|
|
3
4
|
import '@riverbankcms/ai';
|
|
4
5
|
import './schema-Bpy9N5ZI.js';
|
|
5
6
|
import 'zod';
|
|
@@ -7,7 +8,8 @@ import '@riverbankcms/media-storage-supabase';
|
|
|
7
8
|
import '@riverbankcms/db';
|
|
8
9
|
import 'react/jsx-runtime';
|
|
9
10
|
import 'react';
|
|
10
|
-
import './types-
|
|
11
|
+
import './types-DSFvXKhO.js';
|
|
12
|
+
import './blockKinds-B6MWzNWp.js';
|
|
11
13
|
|
|
12
14
|
/**
|
|
13
15
|
* Route resolution helper for dynamic page routing
|
package/dist/server/routing.js
CHANGED
|
@@ -10,7 +10,7 @@ async function resolveRoute(params) {
|
|
|
10
10
|
preview
|
|
11
11
|
});
|
|
12
12
|
if (pageResponse) {
|
|
13
|
-
const { loadPage } = await Promise.resolve().then(() => _interopRequireWildcard(require("./loadPage-
|
|
13
|
+
const { loadPage } = await Promise.resolve().then(() => _interopRequireWildcard(require("./loadPage-E3ZC6NHB.js")));
|
|
14
14
|
const pageData = await loadPage({
|
|
15
15
|
client,
|
|
16
16
|
siteId,
|
package/dist/server/routing.mjs
CHANGED
|
@@ -10,7 +10,7 @@ async function resolveRoute(params) {
|
|
|
10
10
|
preview
|
|
11
11
|
});
|
|
12
12
|
if (pageResponse) {
|
|
13
|
-
const { loadPage } = await import("./loadPage-
|
|
13
|
+
const { loadPage } = await import("./loadPage-E7L7NMR3.mjs");
|
|
14
14
|
const pageData = await loadPage({
|
|
15
15
|
client,
|
|
16
16
|
siteId,
|
package/dist/server/server.d.mts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
export { c as createRiverbankClient } from './index-
|
|
2
|
-
export { E as EntriesResponse, b as EntryResponse, P as PageResponse, R as RiverbankClient, a as RiverbankClientConfig, S as SiteResponse } from './types-
|
|
3
|
-
export { L as LoadPageParams, a as LoadPageResult, R as RuntimeSdkConfig, l as loadPage } from './loadPage-
|
|
4
|
-
export { C as ContentEntryData, E as EntryContentResult, L as LoadContentParams, b as LoadContentResult, P as PageContentResult, a as isEntryContent, i as isPageContent, l as loadContent } from './loadContent-
|
|
1
|
+
export { c as createRiverbankClient } from './index-Dj7VKH34.mjs';
|
|
2
|
+
export { E as EntriesResponse, b as EntryResponse, P as PageResponse, R as RiverbankClient, a as RiverbankClientConfig, S as SiteResponse } from './types-BC9eB2KH.mjs';
|
|
3
|
+
export { L as LoadPageParams, a as LoadPageResult, R as RuntimeSdkConfig, l as loadPage } from './loadPage-Dw57_n5N.mjs';
|
|
4
|
+
export { C as ContentEntryData, E as EntryContentResult, L as LoadContentParams, b as LoadContentResult, P as PageContentResult, a as isEntryContent, i as isPageContent, l as loadContent } from './loadContent-Czu7xTOU.mjs';
|
|
5
|
+
import './types-BA-J9K8r.mjs';
|
|
5
6
|
import '@riverbankcms/ai';
|
|
6
7
|
import './schema-Bpy9N5ZI.mjs';
|
|
7
8
|
import 'zod';
|
|
@@ -9,4 +10,5 @@ import '@riverbankcms/media-storage-supabase';
|
|
|
9
10
|
import '@riverbankcms/db';
|
|
10
11
|
import 'react/jsx-runtime';
|
|
11
12
|
import 'react';
|
|
12
|
-
import './types-
|
|
13
|
+
import './types-BuZJWVmj.mjs';
|
|
14
|
+
import './blockKinds-B6MWzNWp.mjs';
|