@riverbankcms/sdk 0.4.0 → 0.4.2

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.
Files changed (124) hide show
  1. package/README.md +73 -0
  2. package/dist/cli/index.js +46 -5
  3. package/dist/cli/index.js.map +1 -1
  4. package/dist/client/client.d.mts +3 -3
  5. package/dist/client/client.d.ts +3 -3
  6. package/dist/client/client.js +80 -170
  7. package/dist/client/client.js.map +1 -1
  8. package/dist/client/client.mjs +80 -170
  9. package/dist/client/client.mjs.map +1 -1
  10. package/dist/client/hooks.d.mts +3 -3
  11. package/dist/client/hooks.d.ts +3 -3
  12. package/dist/client/rendering/client.d.mts +1 -1
  13. package/dist/client/rendering/client.d.ts +1 -1
  14. package/dist/client/rendering/client.js +80 -142
  15. package/dist/client/rendering/client.js.map +1 -1
  16. package/dist/client/rendering/client.mjs +80 -142
  17. package/dist/client/rendering/client.mjs.map +1 -1
  18. package/dist/client/resolver-CYyfzTQ9.d.mts +61 -0
  19. package/dist/client/resolver-CYyfzTQ9.d.ts +61 -0
  20. package/dist/client/usePage-BC8Q2E3t.d.mts +6431 -0
  21. package/dist/client/usePage-CHEybPMD.d.ts +6429 -0
  22. package/dist/client/usePage-D4fxZbRR.d.mts +6429 -0
  23. package/dist/client/usePage-DpRNZUtP.d.ts +6431 -0
  24. package/dist/server/{Layout-B_zUr9ci.d.mts → Layout-ByUnm35V.d.mts} +1 -1
  25. package/dist/server/{Layout-CHG77dhK.d.ts → Layout-kRv5sU81.d.ts} +1 -1
  26. package/dist/server/{chunk-ZIM53VP6.js → chunk-6JBKKV3G.js} +27 -4
  27. package/dist/server/chunk-6JBKKV3G.js.map +1 -0
  28. package/dist/server/{chunk-SFQ7VF3G.mjs → chunk-7BOIO2S7.mjs} +7 -5
  29. package/dist/server/{chunk-SFQ7VF3G.mjs.map → chunk-7BOIO2S7.mjs.map} +1 -1
  30. package/dist/server/{chunk-M5KTLZTD.mjs → chunk-A2FZMRDW.mjs} +3 -2
  31. package/dist/server/chunk-A2FZMRDW.mjs.map +1 -0
  32. package/dist/server/{chunk-P6CDRJN3.js → chunk-BLKVTULP.js} +13 -11
  33. package/dist/server/chunk-BLKVTULP.js.map +1 -0
  34. package/dist/server/{chunk-BOHTTHY5.mjs → chunk-I6K5REFT.mjs} +27 -4
  35. package/dist/server/chunk-I6K5REFT.mjs.map +1 -0
  36. package/dist/server/{chunk-BUCJWG6G.js → chunk-NW5KHH4A.js} +5 -5
  37. package/dist/server/{chunk-BUCJWG6G.js.map → chunk-NW5KHH4A.js.map} +1 -1
  38. package/dist/server/{chunk-XK2YIISA.mjs → chunk-SPXMMX3C.mjs} +2 -2
  39. package/dist/server/{chunk-FPYK6527.js → chunk-SWPHIUVE.js} +7 -6
  40. package/dist/server/chunk-SWPHIUVE.js.map +1 -0
  41. package/dist/server/{chunk-IT5ICP43.js → chunk-TKMA6D6U.js} +139 -229
  42. package/dist/server/chunk-TKMA6D6U.js.map +1 -0
  43. package/dist/server/{chunk-NKXS4TBK.mjs → chunk-TNRADRPH.mjs} +79 -169
  44. package/dist/server/chunk-TNRADRPH.mjs.map +1 -0
  45. package/dist/server/{chunk-G4CKM4EN.js → chunk-Y7347JMZ.js} +3 -2
  46. package/dist/server/chunk-Y7347JMZ.js.map +1 -0
  47. package/dist/server/{chunk-VVFYHAUD.mjs → chunk-ZEAJW6T3.mjs} +5 -4
  48. package/dist/server/chunk-ZEAJW6T3.mjs.map +1 -0
  49. package/dist/server/{components-Ci5nlyUj.d.mts → components-CY8jDQjv.d.mts} +20 -12
  50. package/dist/server/{components-BYxloYJm.d.ts → components-D1Z2mSDr.d.ts} +20 -12
  51. package/dist/server/components.d.mts +6 -6
  52. package/dist/server/components.d.ts +6 -6
  53. package/dist/server/components.js +3 -3
  54. package/dist/server/components.mjs +2 -2
  55. package/dist/server/config-validation.d.mts +2 -2
  56. package/dist/server/config-validation.d.ts +2 -2
  57. package/dist/server/config-validation.js +3 -3
  58. package/dist/server/config-validation.mjs +2 -2
  59. package/dist/server/config.d.mts +3 -3
  60. package/dist/server/config.d.ts +3 -3
  61. package/dist/server/config.js +3 -3
  62. package/dist/server/config.mjs +2 -2
  63. package/dist/server/data.d.mts +7 -5
  64. package/dist/server/data.d.ts +7 -5
  65. package/dist/server/data.js +2 -2
  66. package/dist/server/data.mjs +1 -1
  67. package/dist/server/{index-DbSfrRA0.d.ts → index-DCIz9Ptv.d.ts} +1 -1
  68. package/dist/server/{index-Dj7VKH34.d.mts → index-DFQwtj3J.d.mts} +1 -1
  69. package/dist/server/index.d.mts +4 -4
  70. package/dist/server/index.d.ts +4 -4
  71. package/dist/server/{loadContent-Czu7xTOU.d.mts → loadContent-CWuE8FCx.d.mts} +4 -4
  72. package/dist/server/{loadContent-BqQ-VPMW.d.ts → loadContent-DynBuR5f.d.ts} +4 -4
  73. package/dist/server/{loadPage-Dw57_n5N.d.mts → loadPage-B8RmlYgV.d.mts} +80 -28
  74. package/dist/server/{loadPage-BElEkA_J.d.ts → loadPage-BTkKpizX.d.ts} +80 -28
  75. package/dist/server/loadPage-DUHBXDEW.js +11 -0
  76. package/dist/server/{loadPage-E3ZC6NHB.js.map → loadPage-DUHBXDEW.js.map} +1 -1
  77. package/dist/server/{loadPage-E7L7NMR3.mjs → loadPage-LYVKY3WZ.mjs} +3 -3
  78. package/dist/server/metadata.d.mts +4 -4
  79. package/dist/server/metadata.d.ts +4 -4
  80. package/dist/server/navigation.d.mts +2 -2
  81. package/dist/server/navigation.d.ts +2 -2
  82. package/dist/server/rendering/server.d.mts +5 -5
  83. package/dist/server/rendering/server.d.ts +5 -5
  84. package/dist/server/rendering/server.js +4 -4
  85. package/dist/server/rendering/server.mjs +3 -3
  86. package/dist/server/rendering.d.mts +8 -8
  87. package/dist/server/rendering.d.ts +8 -8
  88. package/dist/server/rendering.js +6 -6
  89. package/dist/server/rendering.mjs +5 -5
  90. package/dist/server/routing.d.mts +79 -6
  91. package/dist/server/routing.d.ts +79 -6
  92. package/dist/server/routing.js +57 -3
  93. package/dist/server/routing.js.map +1 -1
  94. package/dist/server/routing.mjs +55 -1
  95. package/dist/server/routing.mjs.map +1 -1
  96. package/dist/server/server.d.mts +6 -6
  97. package/dist/server/server.d.ts +6 -6
  98. package/dist/server/server.js +3 -3
  99. package/dist/server/server.mjs +2 -2
  100. package/dist/server/theme-bridge.js +7 -7
  101. package/dist/server/theme-bridge.mjs +1 -1
  102. package/dist/server/{types-5XdVD2J1.d.ts → types-BiRZnxDx.d.ts} +17 -6
  103. package/dist/server/{types-CMqVHYLG.d.ts → types-CL916r6x.d.ts} +23 -1
  104. package/dist/server/{types-BuZJWVmj.d.mts → types-CbagRQ_7.d.mts} +15 -0
  105. package/dist/server/{types-BA-J9K8r.d.mts → types-CdrJqlKx.d.mts} +17 -6
  106. package/dist/server/{types-BC9eB2KH.d.mts → types-DkKEctWn.d.mts} +1 -1
  107. package/dist/server/{types-DSFvXKhO.d.ts → types-DuQCNVV0.d.ts} +15 -0
  108. package/dist/server/{types-CAnC529E.d.ts → types-oCM-fw4O.d.ts} +1 -1
  109. package/dist/server/{types-CYfHxUhe.d.mts → types-txWsSxN7.d.mts} +23 -1
  110. package/dist/server/{validation-C7W2Fe0i.d.ts → validation-CoU8uAiu.d.ts} +1 -1
  111. package/dist/server/{validation-hg1sqhrt.d.mts → validation-DzvDwwRo.d.mts} +1 -1
  112. package/package.json +1 -1
  113. package/dist/server/chunk-BOHTTHY5.mjs.map +0 -1
  114. package/dist/server/chunk-FPYK6527.js.map +0 -1
  115. package/dist/server/chunk-G4CKM4EN.js.map +0 -1
  116. package/dist/server/chunk-IT5ICP43.js.map +0 -1
  117. package/dist/server/chunk-M5KTLZTD.mjs.map +0 -1
  118. package/dist/server/chunk-NKXS4TBK.mjs.map +0 -1
  119. package/dist/server/chunk-P6CDRJN3.js.map +0 -1
  120. package/dist/server/chunk-VVFYHAUD.mjs.map +0 -1
  121. package/dist/server/chunk-ZIM53VP6.js.map +0 -1
  122. package/dist/server/loadPage-E3ZC6NHB.js +0 -11
  123. /package/dist/server/{chunk-XK2YIISA.mjs.map → chunk-SPXMMX3C.mjs.map} +0 -0
  124. /package/dist/server/{loadPage-E7L7NMR3.mjs.map → loadPage-LYVKY3WZ.mjs.map} +0 -0
@@ -18,7 +18,8 @@ async function executeCodeLoaders(page, context, overrides) {
18
18
  blockId,
19
19
  blockKind: block.kind,
20
20
  content,
21
- previewStage: _nullishCoalesce(context.previewStage, () => ( "published"))
21
+ previewStage: _nullishCoalesce(context.previewStage, () => ( "published")),
22
+ searchParams: _nullishCoalesce(context.searchParams, () => ( {}))
22
23
  };
23
24
  const data = await loaderFn(loaderContext);
24
25
  if (!results[blockId]) {
@@ -54,4 +55,4 @@ function mergeLoaderResults(configResults, codeResults) {
54
55
 
55
56
 
56
57
  exports.executeCodeLoaders = executeCodeLoaders; exports.mergeLoaderResults = mergeLoaderResults;
57
- //# sourceMappingURL=chunk-G4CKM4EN.js.map
58
+ //# sourceMappingURL=chunk-Y7347JMZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/will/Projects/Business/cms/builder/packages/sdk/dist/server/chunk-Y7347JMZ.js","../../src/data/executeCodeLoaders.ts"],"names":[],"mappings":"AAAA;ACkCA,MAAA,SAAsB,kBAAA,CACpB,IAAA,EACA,OAAA,EAGA,SAAA,EAC4B;AAC5B,EAAA,MAAM,QAAA,EAA6B,CAAC,CAAA;AACpC,EAAA,MAAM,MAAA,EAAyB,CAAC,CAAA;AAEhC,EAAA,IAAA,CAAA,MAAW,MAAA,GAAS,IAAA,CAAK,MAAA,EAAQ;AAC/B,IAAA,MAAM,QAAA,EAAU,KAAA,CAAM,EAAA;AACtB,IAAA,GAAA,CAAI,CAAC,OAAA,EAAS,QAAA;AAGd,IAAA,MAAM,aAAA,EAAe,SAAA,CAAU,KAAA,CAAM,IAAI,CAAA;AACzC,IAAA,GAAA,CAAI,CAAC,YAAA,EAAc,QAAA;AAGnB,IAAA,MAAM,QAAA,oCACH,KAAA,CAAqC,YAAA,UACrC,KAAA,CAAgC,SAAA,UACjC,CAAC,GAAA;AAIH,IAAA,IAAA,CAAA,MAAW,CAAC,GAAA,EAAK,QAAQ,EAAA,GAAK,MAAA,CAAO,OAAA,CAAQ,YAAY,CAAA,EAAG;AAC1D,MAAA,KAAA,CAAM,IAAA;AAAA,QAAA,CACH,MAAA,CAAA,EAAA,GAAY;AACX,UAAA,IAAI;AACF,YAAA,MAAM,cAAA,EAAmC;AAAA,cACvC,MAAA,mBAAQ,OAAA,CAAQ,MAAA,UAAU,IAAA;AAAA,cAC1B,MAAA,mBAAQ,OAAA,CAAQ,MAAA,UAAU,IAAA;AAAA,cAC1B,OAAA;AAAA,cACA,SAAA,EAAW,KAAA,CAAM,IAAA;AAAA,cACjB,OAAA;AAAA,cACA,YAAA,mBAAc,OAAA,CAAQ,YAAA,UAAgB,aAAA;AAAA,cACtC,YAAA,mBAAc,OAAA,CAAQ,YAAA,UAAgB,CAAC;AAAA,YACzC,CAAA;AAEA,YAAA,MAAM,KAAA,EAAO,MAAM,QAAA,CAAS,aAAa,CAAA;AAEzC,YAAA,GAAA,CAAI,CAAC,OAAA,CAAQ,OAAO,CAAA,EAAG;AACrB,cAAA,OAAA,CAAQ,OAAO,EAAA,EAAI,CAAC,CAAA;AAAA,YACtB;AACA,YAAA,OAAA,CAAQ,OAAO,CAAA,CAAG,GAAG,EAAA,EAAI,IAAA;AAAA,UAC3B,EAAA,MAAA,CAAS,KAAA,EAAO;AAGd,YAAA,OAAA,CAAQ,IAAA,CAAK,qCAAA,EAAuC;AAAA,cAClD,SAAA,EAAW,KAAA,CAAM,IAAA;AAAA,cACjB,SAAA,EAAW,GAAA;AAAA,cACX;AAAA,YACF,CAAC,CAAA;AAAA,UACH;AAAA,QACF,CAAA,CAAA,CAAG;AAAA,MACL,CAAA;AAAA,IACF;AAAA,EACF;AAEA,EAAA,MAAM,OAAA,CAAQ,GAAA,CAAI,KAAK,CAAA;AACvB,EAAA,OAAO,OAAA;AACT;AAWO,SAAS,kBAAA,CACd,aAAA,EACA,WAAA,EACmB;AACnB,EAAA,MAAM,OAAA,EAA4B,EAAE,GAAG,cAAc,CAAA;AAErD,EAAA,IAAA,CAAA,MAAW,CAAC,OAAA,EAAS,UAAU,EAAA,GAAK,MAAA,CAAO,OAAA,CAAQ,WAAW,CAAA,EAAG;AAC/D,IAAA,GAAA,CAAI,CAAC,MAAA,CAAO,OAAO,CAAA,EAAG;AACpB,MAAA,MAAA,CAAO,OAAO,EAAA,EAAI,CAAC,CAAA;AAAA,IACrB;AAEA,IAAA,MAAA,CAAO,OAAO,EAAA,EAAI,EAAE,GAAG,MAAA,CAAO,OAAO,CAAA,EAAG,GAAG,WAAW,CAAA;AAAA,EACxD;AAEA,EAAA,OAAO,MAAA;AACT;ADtEA;AACA;AACE;AACA;AACF,iGAAC","file":"/Users/will/Projects/Business/cms/builder/packages/sdk/dist/server/chunk-Y7347JMZ.js","sourcesContent":[null,"/**\n * Execute code-based data loaders for SDK custom blocks.\n *\n * Code loaders are user-defined async functions that can fetch data\n * from any API (not just whitelisted CMS endpoints). They run\n * server-side during loadPage().\n */\n\nimport type { PageOutline } from '@riverbankcms/blocks';\nimport type { PrefetchContext, ResolvedBlockData } from '@riverbankcms/blocks/system/data';\nimport type { BlockKind } from '../types';\nimport type { DataLoaderContext, DataLoaderOverrides } from './types';\n\n/**\n * Execute code-based data loaders for blocks on a page.\n *\n * Iterates through page blocks and executes any registered loader\n * functions for matching block kinds. Runs all loaders in parallel.\n *\n * @param page - Page outline with blocks to process\n * @param context - Prefetch context (siteId, pageId, previewStage)\n * @param overrides - Map of block kinds to loader functions\n * @returns Resolved data keyed by blockId, then loader key\n *\n * @example\n * ```typescript\n * const codeData = await executeCodeLoaders(page, context, {\n * 'custom.featured-products': {\n * products: async (ctx) => fetchProducts(ctx.content.categoryId),\n * },\n * });\n * // codeData: { 'block-123': { products: [...] } }\n * ```\n */\nexport async function executeCodeLoaders(\n page: PageOutline,\n context: PrefetchContext & {\n searchParams?: Record<string, string | string[] | undefined>;\n },\n overrides: DataLoaderOverrides,\n): Promise<ResolvedBlockData> {\n const results: ResolvedBlockData = {};\n const tasks: Promise<void>[] = [];\n\n for (const block of page.blocks) {\n const blockId = block.id;\n if (!blockId) continue;\n\n // Look up loaders for this block kind\n const blockLoaders = overrides[block.kind];\n if (!blockLoaders) continue;\n\n // Get block content (prefer draft in preview mode)\n const content = (\n (block as { draftContent?: unknown }).draftContent ??\n (block as { content?: unknown }).content ??\n {}\n ) as Record<string, unknown>;\n\n // Execute each loader for this block\n for (const [key, loaderFn] of Object.entries(blockLoaders)) {\n tasks.push(\n (async () => {\n try {\n const loaderContext: DataLoaderContext = {\n siteId: context.siteId ?? '',\n pageId: context.pageId ?? '',\n blockId,\n blockKind: block.kind as BlockKind,\n content,\n previewStage: context.previewStage ?? 'published',\n searchParams: context.searchParams ?? {},\n };\n\n const data = await loaderFn(loaderContext);\n\n if (!results[blockId]) {\n results[blockId] = {};\n }\n results[blockId]![key] = data;\n } catch (error) {\n // Log but don't throw - data loading is best-effort\n // SDK users should handle missing data gracefully in components\n console.warn('[executeCodeLoaders] Loader failed:', {\n blockKind: block.kind,\n loaderKey: key,\n error,\n });\n }\n })(),\n );\n }\n }\n\n await Promise.all(tasks);\n return results;\n}\n\n/**\n * Merge resolved data from config loaders and code loaders.\n *\n * Code loader results take precedence on key conflicts.\n *\n * @param configResults - Data from config-based loaders (CMS endpoints)\n * @param codeResults - Data from code-based loaders (external APIs)\n * @returns Merged data with code results overwriting config on conflicts\n */\nexport function mergeLoaderResults(\n configResults: ResolvedBlockData,\n codeResults: ResolvedBlockData,\n): ResolvedBlockData {\n const merged: ResolvedBlockData = { ...configResults };\n\n for (const [blockId, loaderData] of Object.entries(codeResults)) {\n if (!merged[blockId]) {\n merged[blockId] = {};\n }\n // Code loaders take precedence on key conflicts\n merged[blockId] = { ...merged[blockId], ...loaderData };\n }\n\n return merged;\n}\n"]}
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  executeCodeLoaders,
3
3
  mergeLoaderResults
4
- } from "./chunk-M5KTLZTD.mjs";
4
+ } from "./chunk-A2FZMRDW.mjs";
5
5
  import {
6
6
  prefetchBlockData
7
7
  } from "./chunk-7DS4Q3GA.mjs";
8
8
 
9
9
  // src/rendering/helpers/loadPage.ts
10
10
  async function loadPage(params) {
11
- const { client, siteId, path, pageId, preview = false, dataLoaderOverrides } = params;
11
+ const { client, siteId, path, pageId, preview = false, dataLoaderOverrides, searchParams } = params;
12
12
  const [site, pageResponse] = await Promise.all([
13
13
  client.getSite({ id: siteId }),
14
14
  client.getPage({ siteId, path, preview })
@@ -52,7 +52,8 @@ async function loadPage(params) {
52
52
  const prefetchContext = {
53
53
  siteId,
54
54
  pageId: pageId ?? pageData.id,
55
- previewStage: preview ? "preview" : "published"
55
+ previewStage: preview ? "preview" : "published",
56
+ searchParams
56
57
  };
57
58
  const configData = await prefetchBlockData(
58
59
  pageOutline,
@@ -83,4 +84,4 @@ async function loadPage(params) {
83
84
  export {
84
85
  loadPage
85
86
  };
86
- //# sourceMappingURL=chunk-VVFYHAUD.mjs.map
87
+ //# sourceMappingURL=chunk-ZEAJW6T3.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/rendering/helpers/loadPage.ts"],"sourcesContent":["/**\n * Server-side helper to fetch all data needed for <Page> component.\n *\n * Use this in server components, getServerSideProps, or API routes.\n */\n\nimport type { RiverbankClient, SiteResponse } from '../../client/types';\nimport type { PageProps } from '../components/Page';\nimport { prefetchBlockData } from '../../data/prefetchBlockData';\nimport { executeCodeLoaders, mergeLoaderResults } from '../../data/executeCodeLoaders';\nimport type { DataLoaderOverrides } from '../../data/types';\n\n/**\n * SDK config from API response (without siteId which is stripped at storage).\n * This is the runtime representation - for defining configs, use RiverbankSiteConfig.\n */\nexport type RuntimeSdkConfig = NonNullable<SiteResponse['sdkConfig']>;\n\nexport type LoadPageParams = {\n client: RiverbankClient;\n siteId: string;\n path: string;\n pageId?: string;\n /**\n * If true, fetches draft/unpublished content instead of published content.\n * This affects both the page structure and block data loaders.\n * Requires API key with site access.\n *\n * @default false\n */\n preview?: boolean;\n /**\n * Code-based data loaders for custom blocks.\n *\n * Use this to fetch data from external APIs (not just whitelisted CMS endpoints).\n * Keys are block kinds (e.g., 'custom.featured-products').\n *\n * Config-based loaders (defined in riverbank.config.ts) run first.\n * Code loaders run second and take precedence on key conflicts.\n *\n * @example\n * ```typescript\n * const pageData = await loadPage({\n * client,\n * siteId: 'site-123',\n * path: '/',\n * dataLoaderOverrides: {\n * 'custom.featured-products': {\n * products: async (ctx) => {\n * const res = await fetch(`https://api.shop.com/products?category=${ctx.content.categoryId}`);\n * return res.json();\n * },\n * },\n * },\n * });\n * ```\n */\n dataLoaderOverrides?: DataLoaderOverrides;\n /**\n * URL search parameters from the page request.\n * Passed to code-based data loaders for pagination, filtering, etc.\n *\n * @example\n * ```typescript\n * // In Next.js App Router\n * export default async function Page({ params, searchParams }) {\n * const pageData = await loadPage({\n * client,\n * siteId: 'site-123',\n * path: `/${params.slug || ''}`,\n * searchParams: await searchParams,\n * });\n * return <Page {...pageData} />;\n * }\n * ```\n */\n searchParams?: Record<string, string | string[] | undefined>;\n};\n\nexport type LoadPageResult = Omit<PageProps, 'registry' | 'wrapBlock' | 'usePlaceholders' | 'blockOverrides'> & {\n /**\n * SDK site configuration, if available.\n * Contains SDK-defined theme palette, section backgrounds, and style options.\n */\n sdkConfig: RuntimeSdkConfig | null;\n};\n\n/**\n * Server-side helper to fetch all data needed for <Page> component.\n *\n * Fetches site data, page data, and prefetches block data loaders in parallel.\n *\n * @example Next.js App Router (published content)\n * ```tsx\n * import { createRiverbankClient } from '@riverbankcms/sdk';\n * import { loadPage, Page } from '@riverbankcms/sdk/rendering';\n *\n * const client = createRiverbankClient({\n * apiKey: process.env.RIVERBANK_API_KEY!,\n * baseUrl: process.env.NEXT_PUBLIC_DASHBOARD_URL + '/api',\n * });\n *\n * export default async function PageRoute({ params }) {\n * const pageData = await loadPage({\n * client,\n * siteId: 'site-123',\n * path: `/${params.slug || ''}`,\n * });\n *\n * return <Page {...pageData} />;\n * }\n * ```\n *\n * @example Next.js App Router (preview/draft content)\n * ```tsx\n * export default async function PreviewRoute({ params, searchParams }) {\n * const pageData = await loadPage({\n * client,\n * siteId: searchParams.siteId,\n * path: `/${params.slug || ''}`,\n * preview: true, // Fetch draft content\n * });\n *\n * return <Page {...pageData} />;\n * }\n * ```\n *\n * @example Next.js Pages Router (getServerSideProps)\n * ```tsx\n * export async function getServerSideProps({ params }) {\n * const pageData = await loadPage({\n * client,\n * siteId: 'site-123',\n * path: `/${params.slug || ''}`,\n * });\n *\n * return { props: pageData };\n * }\n *\n * export default function PageRoute(props) {\n * return <Page {...props} />;\n * }\n * ```\n */\nexport async function loadPage(params: LoadPageParams): Promise<LoadPageResult> {\n const { client, siteId, path, pageId, preview = false, dataLoaderOverrides, searchParams } = params;\n\n // Fetch site and page data in parallel\n const [site, pageResponse] = await Promise.all([\n client.getSite({ id: siteId }),\n client.getPage({ siteId, path, preview }),\n ]);\n\n // Extract page data (getContentByPath can return page or entry)\n if ('entry' in pageResponse) {\n throw new Error(\n 'This path resolves to a content entry, not a page. ' +\n 'Use loadContent() instead, which handles both pages and entries. ' +\n 'For entries, loadContent() returns the raw entry data for custom rendering.'\n );\n }\n\n const { page: pageData } = pageResponse;\n\n // Convert API response blocks to PageOutline format with content\n // API returns blocks with full content - PageRenderer needs the content field for rendering\n const blocks = pageData.blocks.map((block) => {\n if (!block || typeof block !== 'object') {\n throw new Error('Invalid block format in API response');\n }\n if (typeof block.id !== 'string' && block.id !== null) {\n throw new Error(`Invalid block id: expected string or null, got ${typeof block.id}`);\n }\n if (typeof block.kind !== 'string') {\n throw new Error(`Invalid block kind: expected string, got ${typeof block.kind}`);\n }\n if (typeof block.purpose !== 'string') {\n throw new Error(`Invalid block purpose: expected string, got ${typeof block.purpose}`);\n }\n\n // Include content for rendering\n // API provides `content` (active content for the requested stage)\n // and optionally `draftContent` for preview mode\n const typedBlock = block as {\n id: string | null;\n kind: string;\n purpose: string;\n content?: Record<string, unknown>;\n draftContent?: { data: Record<string, unknown> } | null;\n };\n\n return {\n id: typedBlock.id,\n kind: typedBlock.kind,\n purpose: typedBlock.purpose,\n // Include content for PageRenderer's getRenderableContent()\n content: typedBlock.content ?? {},\n // Include draftContent if available (for preview mode)\n draftContent: typedBlock.draftContent?.data ?? null,\n };\n });\n\n const pageOutline = {\n name: pageData.name,\n path: pageData.path,\n purpose: pageData.purpose,\n blocks,\n };\n\n // Build prefetch context\n const prefetchContext: {\n siteId: string;\n pageId: string;\n previewStage: 'published' | 'preview';\n searchParams?: Record<string, string | string[] | undefined>;\n } = {\n siteId,\n pageId: pageId ?? pageData.id,\n previewStage: preview ? 'preview' : 'published',\n searchParams,\n };\n\n // Prefetch block data loaders (config-based loaders for CMS endpoints)\n // Note: searchParams is intentionally NOT passed to config-based loaders.\n // Config loaders call CMS endpoints which don't need URL params.\n // Only code-based loaders (dataLoaderOverrides) receive searchParams for\n // custom pagination, filtering, and sorting via external APIs.\n const configData = await prefetchBlockData(\n pageOutline,\n prefetchContext,\n client,\n {\n // Pass custom blocks so their config-based loaders are discovered\n customBlocks: site.sdkConfig?.customBlocks,\n }\n );\n\n // Execute code-based loaders (external APIs) and merge results\n let resolvedData = configData;\n if (dataLoaderOverrides && Object.keys(dataLoaderOverrides).length > 0) {\n const codeData = await executeCodeLoaders(pageOutline, prefetchContext, dataLoaderOverrides);\n resolvedData = mergeLoaderResults(configData, codeData);\n }\n\n return {\n page: pageOutline,\n theme: site.theme,\n sdkConfig: site.sdkConfig ?? null,\n siteId,\n resolvedData,\n // Note: routeMap is optional and can be built from site data if needed for internal links.\n // Consumers can construct it from site.pages and pass explicitly via Page component props.\n // Example: const routeMap = site.pages.reduce((map, p) => ({ ...map, [p.id]: p.path }), {});\n };\n}\n"],"mappings":";;;;;;;;;AAgJA,eAAsB,SAAS,QAAiD;AAC9E,QAAM,EAAE,QAAQ,QAAQ,MAAM,QAAQ,UAAU,OAAO,qBAAqB,aAAa,IAAI;AAG7F,QAAM,CAAC,MAAM,YAAY,IAAI,MAAM,QAAQ,IAAI;AAAA,IAC7C,OAAO,QAAQ,EAAE,IAAI,OAAO,CAAC;AAAA,IAC7B,OAAO,QAAQ,EAAE,QAAQ,MAAM,QAAQ,CAAC;AAAA,EAC1C,CAAC;AAGD,MAAI,WAAW,cAAc;AAC3B,UAAM,IAAI;AAAA,MACR;AAAA,IAGF;AAAA,EACF;AAEA,QAAM,EAAE,MAAM,SAAS,IAAI;AAI3B,QAAM,SAAS,SAAS,OAAO,IAAI,CAAC,UAAU;AAC5C,QAAI,CAAC,SAAS,OAAO,UAAU,UAAU;AACvC,YAAM,IAAI,MAAM,sCAAsC;AAAA,IACxD;AACA,QAAI,OAAO,MAAM,OAAO,YAAY,MAAM,OAAO,MAAM;AACrD,YAAM,IAAI,MAAM,kDAAkD,OAAO,MAAM,EAAE,EAAE;AAAA,IACrF;AACA,QAAI,OAAO,MAAM,SAAS,UAAU;AAClC,YAAM,IAAI,MAAM,4CAA4C,OAAO,MAAM,IAAI,EAAE;AAAA,IACjF;AACA,QAAI,OAAO,MAAM,YAAY,UAAU;AACrC,YAAM,IAAI,MAAM,+CAA+C,OAAO,MAAM,OAAO,EAAE;AAAA,IACvF;AAKA,UAAM,aAAa;AAQnB,WAAO;AAAA,MACL,IAAI,WAAW;AAAA,MACf,MAAM,WAAW;AAAA,MACjB,SAAS,WAAW;AAAA;AAAA,MAEpB,SAAS,WAAW,WAAW,CAAC;AAAA;AAAA,MAEhC,cAAc,WAAW,cAAc,QAAQ;AAAA,IACjD;AAAA,EACF,CAAC;AAED,QAAM,cAAc;AAAA,IAClB,MAAM,SAAS;AAAA,IACf,MAAM,SAAS;AAAA,IACf,SAAS,SAAS;AAAA,IAClB;AAAA,EACF;AAGA,QAAM,kBAKF;AAAA,IACF;AAAA,IACA,QAAQ,UAAU,SAAS;AAAA,IAC3B,cAAc,UAAU,YAAY;AAAA,IACpC;AAAA,EACF;AAOA,QAAM,aAAa,MAAM;AAAA,IACvB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA,MAEE,cAAc,KAAK,WAAW;AAAA,IAChC;AAAA,EACF;AAGA,MAAI,eAAe;AACnB,MAAI,uBAAuB,OAAO,KAAK,mBAAmB,EAAE,SAAS,GAAG;AACtE,UAAM,WAAW,MAAM,mBAAmB,aAAa,iBAAiB,mBAAmB;AAC3F,mBAAe,mBAAmB,YAAY,QAAQ;AAAA,EACxD;AAEA,SAAO;AAAA,IACL,MAAM;AAAA,IACN,OAAO,KAAK;AAAA,IACZ,WAAW,KAAK,aAAa;AAAA,IAC7B;AAAA,IACA;AAAA;AAAA;AAAA;AAAA,EAIF;AACF;","names":[]}
@@ -1,12 +1,27 @@
1
- import { T as ThemeTokens } from './loadPage-Dw57_n5N.mjs';
2
- import './Layout-B_zUr9ci.mjs';
3
- import { T as Theme, H as HydratedTheme, e as ExpandedPalette } from './types-BA-J9K8r.mjs';
1
+ import { T as ThemeTokens, g as ResolverContext, h as TransformRegistry } from './loadPage-B8RmlYgV.mjs';
2
+ import './Layout-ByUnm35V.mjs';
3
+ import { T as Theme, H as HydratedTheme, e as ExpandedPalette } from './types-CdrJqlKx.mjs';
4
4
  import './schema-Bpy9N5ZI.mjs';
5
5
  import z, { z as z$1 } from 'zod';
6
6
  import * as React from 'react';
7
7
  import React__default from 'react';
8
8
  import * as react_jsx_runtime from 'react/jsx-runtime';
9
9
 
10
+ type SystemBlockComponentProps<TContent = Record<string, unknown>> = {
11
+ content: TContent;
12
+ theme?: ThemeTokens;
13
+ themeConfig?: Theme;
14
+ registry?: ResolverContext["registry"];
15
+ transforms?: TransformRegistry;
16
+ viewModelOverrides?: Record<string, unknown>;
17
+ data?: Record<string, unknown>;
18
+ pathBase?: string;
19
+ blockId?: string | null;
20
+ blockKind?: string;
21
+ blockBindings?: Record<string, unknown>;
22
+ fragmentRegistry?: ResolverContext["fragmentRegistry"];
23
+ };
24
+
10
25
  declare const mediaSchema: z.ZodObject<{
11
26
  type: z.ZodEnum<{
12
27
  image: "image";
@@ -152,14 +167,7 @@ type RichTextPrimitiveProps = {
152
167
  type RichTextVariant = "full" | "inline" | "limited" | "media";
153
168
  declare const RichText: typeof RichText$1;
154
169
 
155
- type ResolveImageUrlOptions = {
156
- /**
157
- * Preview API key for accessing unpublished images.
158
- * When provided, appended as ?preview_key=xxx to the image URL.
159
- */
160
- previewKey?: string | null;
161
- };
162
- declare function resolveImageUrl(value: Media, options?: ResolveImageUrlOptions): string | undefined;
170
+ declare function resolveImageUrl(value: Media): string | undefined;
163
171
 
164
172
  /**
165
173
  * Helper utilities for resolving background data in custom block components.
@@ -302,4 +310,4 @@ type SectionBackgroundProps = {
302
310
  */
303
311
  declare function SectionBackground({ background, theme, className, }: SectionBackgroundProps): React.ReactElement | null;
304
312
 
305
- export { type BodyTextContent as B, type GradientConfig as G, type HeroContent as H, type Media as M, RichText as R, SectionBackground as S, type TipTapNode as T, type HeroMedia as a, buildThemeRuntime as b, type RichTextPrimitiveProps as c, resolveBackground as d, type BackgroundInput as e, type ResolvedBackground as f, type SectionBackgroundProps as g, resolveImageUrl as r };
313
+ export { type BodyTextContent as B, type GradientConfig as G, type HeroContent as H, type Media as M, RichText as R, type SystemBlockComponentProps as S, type TipTapNode as T, type HeroMedia as a, buildThemeRuntime as b, type RichTextPrimitiveProps as c, resolveBackground as d, SectionBackground as e, type BackgroundInput as f, type ResolvedBackground as g, type SectionBackgroundProps as h, resolveImageUrl as r };
@@ -1,12 +1,27 @@
1
- import { T as ThemeTokens } from './loadPage-BElEkA_J.js';
2
- import './Layout-CHG77dhK.js';
3
- import { T as Theme, H as HydratedTheme, e as ExpandedPalette } from './types-5XdVD2J1.js';
1
+ import { T as ThemeTokens, g as ResolverContext, h as TransformRegistry } from './loadPage-BTkKpizX.js';
2
+ import './Layout-kRv5sU81.js';
3
+ import { T as Theme, H as HydratedTheme, e as ExpandedPalette } from './types-BiRZnxDx.js';
4
4
  import './schema-Bpy9N5ZI.js';
5
5
  import z, { z as z$1 } from 'zod';
6
6
  import * as React from 'react';
7
7
  import React__default from 'react';
8
8
  import * as react_jsx_runtime from 'react/jsx-runtime';
9
9
 
10
+ type SystemBlockComponentProps<TContent = Record<string, unknown>> = {
11
+ content: TContent;
12
+ theme?: ThemeTokens;
13
+ themeConfig?: Theme;
14
+ registry?: ResolverContext["registry"];
15
+ transforms?: TransformRegistry;
16
+ viewModelOverrides?: Record<string, unknown>;
17
+ data?: Record<string, unknown>;
18
+ pathBase?: string;
19
+ blockId?: string | null;
20
+ blockKind?: string;
21
+ blockBindings?: Record<string, unknown>;
22
+ fragmentRegistry?: ResolverContext["fragmentRegistry"];
23
+ };
24
+
10
25
  declare const mediaSchema: z.ZodObject<{
11
26
  type: z.ZodEnum<{
12
27
  image: "image";
@@ -152,14 +167,7 @@ type RichTextPrimitiveProps = {
152
167
  type RichTextVariant = "full" | "inline" | "limited" | "media";
153
168
  declare const RichText: typeof RichText$1;
154
169
 
155
- type ResolveImageUrlOptions = {
156
- /**
157
- * Preview API key for accessing unpublished images.
158
- * When provided, appended as ?preview_key=xxx to the image URL.
159
- */
160
- previewKey?: string | null;
161
- };
162
- declare function resolveImageUrl(value: Media, options?: ResolveImageUrlOptions): string | undefined;
170
+ declare function resolveImageUrl(value: Media): string | undefined;
163
171
 
164
172
  /**
165
173
  * Helper utilities for resolving background data in custom block components.
@@ -302,4 +310,4 @@ type SectionBackgroundProps = {
302
310
  */
303
311
  declare function SectionBackground({ background, theme, className, }: SectionBackgroundProps): React.ReactElement | null;
304
312
 
305
- export { type BodyTextContent as B, type GradientConfig as G, type HeroContent as H, type Media as M, RichText as R, SectionBackground as S, type TipTapNode as T, type HeroMedia as a, buildThemeRuntime as b, type RichTextPrimitiveProps as c, resolveBackground as d, type BackgroundInput as e, type ResolvedBackground as f, type SectionBackgroundProps as g, resolveImageUrl as r };
313
+ export { type BodyTextContent as B, type GradientConfig as G, type HeroContent as H, type Media as M, RichText as R, type SystemBlockComponentProps as S, type TipTapNode as T, type HeroMedia as a, buildThemeRuntime as b, type RichTextPrimitiveProps as c, resolveBackground as d, SectionBackground as e, type BackgroundInput as f, type ResolvedBackground as g, type SectionBackgroundProps as h, resolveImageUrl as r };
@@ -1,13 +1,13 @@
1
- export { e as BlockOverrideComponent, B as BlockOverrides, b as Page, P as PageProps, c as PageRenderer, d as RouteMap, S as SystemBlockComponentProps, T as ThemeTokens } from './loadPage-Dw57_n5N.mjs';
2
- export { H as HeaderData, L as Layout, a as LayoutProps } from './Layout-B_zUr9ci.mjs';
3
- export { T as Theme } from './types-BA-J9K8r.mjs';
1
+ export { e as BlockOverrideComponent, B as BlockOverrides, b as Page, P as PageProps, c as PageRenderer, d as RouteMap, T as ThemeTokens } from './loadPage-B8RmlYgV.mjs';
2
+ export { H as HeaderData, L as Layout, a as LayoutProps } from './Layout-ByUnm35V.mjs';
3
+ export { T as Theme } from './types-CdrJqlKx.mjs';
4
4
  export { P as PageOutline } from './schema-Bpy9N5ZI.mjs';
5
- export { e as BackgroundInput, B as BodyTextContent, H as HeroContent, 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';
6
- import './types-BC9eB2KH.mjs';
5
+ export { f as BackgroundInput, B as BodyTextContent, H as HeroContent, g as ResolvedBackground, R as RichText, c as RichTextPrimitiveProps, e as SectionBackground, h as SectionBackgroundProps, S as SystemBlockComponentProps, T as TipTapNode, b as buildThemeRuntime, d as resolveBackground, r as resolveImageUrl } from './components-CY8jDQjv.mjs';
6
+ import './types-DkKEctWn.mjs';
7
7
  import 'react/jsx-runtime';
8
8
  import 'react';
9
9
  import 'zod';
10
- import './types-BuZJWVmj.mjs';
10
+ import './types-CbagRQ_7.mjs';
11
11
  import './blockKinds-B6MWzNWp.mjs';
12
12
  import '@riverbankcms/site-renderer';
13
13
  import '@riverbankcms/ai';
@@ -1,13 +1,13 @@
1
- export { e as BlockOverrideComponent, B as BlockOverrides, b as Page, P as PageProps, c as PageRenderer, d as RouteMap, S as SystemBlockComponentProps, T as ThemeTokens } from './loadPage-BElEkA_J.js';
2
- export { H as HeaderData, L as Layout, a as LayoutProps } from './Layout-CHG77dhK.js';
3
- export { T as Theme } from './types-5XdVD2J1.js';
1
+ export { e as BlockOverrideComponent, B as BlockOverrides, b as Page, P as PageProps, c as PageRenderer, d as RouteMap, T as ThemeTokens } from './loadPage-BTkKpizX.js';
2
+ export { H as HeaderData, L as Layout, a as LayoutProps } from './Layout-kRv5sU81.js';
3
+ export { T as Theme } from './types-BiRZnxDx.js';
4
4
  export { P as PageOutline } from './schema-Bpy9N5ZI.js';
5
- export { e as BackgroundInput, B as BodyTextContent, H as HeroContent, 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';
6
- import './types-CAnC529E.js';
5
+ export { f as BackgroundInput, B as BodyTextContent, H as HeroContent, g as ResolvedBackground, R as RichText, c as RichTextPrimitiveProps, e as SectionBackground, h as SectionBackgroundProps, S as SystemBlockComponentProps, T as TipTapNode, b as buildThemeRuntime, d as resolveBackground, r as resolveImageUrl } from './components-D1Z2mSDr.js';
6
+ import './types-oCM-fw4O.js';
7
7
  import 'react/jsx-runtime';
8
8
  import 'react';
9
9
  import 'zod';
10
- import './types-DSFvXKhO.js';
10
+ import './types-DuQCNVV0.js';
11
11
  import './blockKinds-B6MWzNWp.js';
12
12
  import '@riverbankcms/site-renderer';
13
13
  import '@riverbankcms/ai';
@@ -1,7 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
3
 
4
- var _chunkP6CDRJN3js = require('./chunk-P6CDRJN3.js');
4
+ var _chunkBLKVTULPjs = require('./chunk-BLKVTULP.js');
5
5
 
6
6
 
7
7
 
@@ -9,7 +9,7 @@ var _chunkP6CDRJN3js = require('./chunk-P6CDRJN3.js');
9
9
 
10
10
 
11
11
 
12
- var _chunkIT5ICP43js = require('./chunk-IT5ICP43.js');
12
+ var _chunkTKMA6D6Ujs = require('./chunk-TKMA6D6U.js');
13
13
  require('./chunk-EGTDJ4PL.js');
14
14
  require('./chunk-DGUM43GV.js');
15
15
 
@@ -21,5 +21,5 @@ require('./chunk-DGUM43GV.js');
21
21
 
22
22
 
23
23
 
24
- 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.resolveBackground = _chunkIT5ICP43js.resolveBackground; exports.resolveImageUrl = _chunkIT5ICP43js.resolveImageUrl;
24
+ exports.Layout = _chunkBLKVTULPjs.Layout; exports.Page = _chunkBLKVTULPjs.Page; exports.PageRenderer = _chunkTKMA6D6Ujs.PageRenderer; exports.RichText = _chunkTKMA6D6Ujs.RichText; exports.SectionBackground = _chunkTKMA6D6Ujs.SectionBackground; exports.buildThemeRuntime = _chunkTKMA6D6Ujs.buildThemeRuntime; exports.resolveBackground = _chunkTKMA6D6Ujs.resolveBackground; exports.resolveImageUrl = _chunkTKMA6D6Ujs.resolveImageUrl;
25
25
  //# sourceMappingURL=components.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  Layout,
3
3
  Page
4
- } from "./chunk-SFQ7VF3G.mjs";
4
+ } from "./chunk-7BOIO2S7.mjs";
5
5
  import {
6
6
  PageRenderer,
7
7
  RichText,
@@ -9,7 +9,7 @@ import {
9
9
  buildThemeRuntime,
10
10
  resolveBackground,
11
11
  resolveImageUrl
12
- } from "./chunk-NKXS4TBK.mjs";
12
+ } from "./chunk-TNRADRPH.mjs";
13
13
  import "./chunk-USQF2XTU.mjs";
14
14
  import "./chunk-BJTO5JO5.mjs";
15
15
  export {
@@ -1,5 +1,5 @@
1
1
  import 'zod';
2
2
  import './schema-Bpy9N5ZI.mjs';
3
- import './types-CYfHxUhe.mjs';
4
- export { C as ContentConfigInput, z as ContentConfigOutput, V as ValidatedRiverbankSiteConfig, y as ValidatedSdkCustomBlock, k as blockFieldConfigSchema, m as blockFieldExtensionSchema, n as blockFieldExtensionsSchema, l as blockFieldOptionsSchema, d as containerAlignmentSchema, c as containerMaxWidthSchema, f as containerOptionsSchema, o as contentConfigSchema, j as fieldSelectOptionSchema, B as loaderParamBindingSchema, D as loaderParamValueSchema, r as riverbankSiteConfigSchema, E as sdkConfigLoaderSchema, i as sdkCustomBlockSchema, F as sdkDataLoadersSchema, A as sdkLoaderEndpointSchema, g as sdkThemeConfigSchema, h as sdkThemePaletteSchema, a as sectionBackgroundSchema, e as sectionOptionsSchema, b as sectionSpacingSchema, s as siteStyleConfigSchema, G as validateFieldIdConflicts } from './validation-hg1sqhrt.mjs';
3
+ import './types-txWsSxN7.mjs';
4
+ export { C as ContentConfigInput, z as ContentConfigOutput, V as ValidatedRiverbankSiteConfig, y as ValidatedSdkCustomBlock, k as blockFieldConfigSchema, m as blockFieldExtensionSchema, n as blockFieldExtensionsSchema, l as blockFieldOptionsSchema, d as containerAlignmentSchema, c as containerMaxWidthSchema, f as containerOptionsSchema, o as contentConfigSchema, j as fieldSelectOptionSchema, B as loaderParamBindingSchema, D as loaderParamValueSchema, r as riverbankSiteConfigSchema, E as sdkConfigLoaderSchema, i as sdkCustomBlockSchema, F as sdkDataLoadersSchema, A as sdkLoaderEndpointSchema, g as sdkThemeConfigSchema, h as sdkThemePaletteSchema, a as sectionBackgroundSchema, e as sectionOptionsSchema, b as sectionSpacingSchema, s as siteStyleConfigSchema, G as validateFieldIdConflicts } from './validation-DzvDwwRo.mjs';
5
5
  import './blockKinds-B6MWzNWp.mjs';
@@ -1,5 +1,5 @@
1
1
  import 'zod';
2
2
  import './schema-Bpy9N5ZI.js';
3
- import './types-CMqVHYLG.js';
4
- export { C as ContentConfigInput, z as ContentConfigOutput, V as ValidatedRiverbankSiteConfig, y as ValidatedSdkCustomBlock, k as blockFieldConfigSchema, m as blockFieldExtensionSchema, n as blockFieldExtensionsSchema, l as blockFieldOptionsSchema, d as containerAlignmentSchema, c as containerMaxWidthSchema, f as containerOptionsSchema, o as contentConfigSchema, j as fieldSelectOptionSchema, B as loaderParamBindingSchema, D as loaderParamValueSchema, r as riverbankSiteConfigSchema, E as sdkConfigLoaderSchema, i as sdkCustomBlockSchema, F as sdkDataLoadersSchema, A as sdkLoaderEndpointSchema, g as sdkThemeConfigSchema, h as sdkThemePaletteSchema, a as sectionBackgroundSchema, e as sectionOptionsSchema, b as sectionSpacingSchema, s as siteStyleConfigSchema, G as validateFieldIdConflicts } from './validation-C7W2Fe0i.js';
3
+ import './types-CL916r6x.js';
4
+ export { C as ContentConfigInput, z as ContentConfigOutput, V as ValidatedRiverbankSiteConfig, y as ValidatedSdkCustomBlock, k as blockFieldConfigSchema, m as blockFieldExtensionSchema, n as blockFieldExtensionsSchema, l as blockFieldOptionsSchema, d as containerAlignmentSchema, c as containerMaxWidthSchema, f as containerOptionsSchema, o as contentConfigSchema, j as fieldSelectOptionSchema, B as loaderParamBindingSchema, D as loaderParamValueSchema, r as riverbankSiteConfigSchema, E as sdkConfigLoaderSchema, i as sdkCustomBlockSchema, F as sdkDataLoadersSchema, A as sdkLoaderEndpointSchema, g as sdkThemeConfigSchema, h as sdkThemePaletteSchema, a as sectionBackgroundSchema, e as sectionOptionsSchema, b as sectionSpacingSchema, s as siteStyleConfigSchema, G as validateFieldIdConflicts } from './validation-CoU8uAiu.js';
5
5
  import './blockKinds-B6MWzNWp.js';
@@ -22,9 +22,9 @@
22
22
 
23
23
 
24
24
 
25
- var _chunkZIM53VP6js = require('./chunk-ZIM53VP6.js');
25
+ var _chunk6JBKKV3Gjs = require('./chunk-6JBKKV3G.js');
26
26
  require('./chunk-GERCMTPQ.js');
27
- require('./chunk-IT5ICP43.js');
27
+ require('./chunk-TKMA6D6U.js');
28
28
  require('./chunk-HOY77YBF.js');
29
29
  require('./chunk-EGTDJ4PL.js');
30
30
  require('./chunk-DGUM43GV.js');
@@ -52,5 +52,5 @@ require('./chunk-DGUM43GV.js');
52
52
 
53
53
 
54
54
 
55
- exports.blockFieldConfigSchema = _chunkZIM53VP6js.blockFieldConfigSchema; exports.blockFieldExtensionSchema = _chunkZIM53VP6js.blockFieldExtensionSchema; exports.blockFieldExtensionsSchema = _chunkZIM53VP6js.blockFieldExtensionsSchema; exports.blockFieldOptionsSchema = _chunkZIM53VP6js.blockFieldOptionsSchema; exports.containerAlignmentSchema = _chunkZIM53VP6js.containerAlignmentSchema; exports.containerMaxWidthSchema = _chunkZIM53VP6js.containerMaxWidthSchema; exports.containerOptionsSchema = _chunkZIM53VP6js.containerOptionsSchema; exports.contentConfigSchema = _chunkZIM53VP6js.contentConfigSchema; exports.fieldSelectOptionSchema = _chunkZIM53VP6js.fieldSelectOptionSchema; exports.loaderParamBindingSchema = _chunkZIM53VP6js.loaderParamBindingSchema; exports.loaderParamValueSchema = _chunkZIM53VP6js.loaderParamValueSchema; exports.riverbankSiteConfigSchema = _chunkZIM53VP6js.riverbankSiteConfigSchema; exports.sdkConfigLoaderSchema = _chunkZIM53VP6js.sdkConfigLoaderSchema; exports.sdkCustomBlockSchema = _chunkZIM53VP6js.sdkCustomBlockSchema; exports.sdkDataLoadersSchema = _chunkZIM53VP6js.sdkDataLoadersSchema; exports.sdkLoaderEndpointSchema = _chunkZIM53VP6js.sdkLoaderEndpointSchema; exports.sdkThemeConfigSchema = _chunkZIM53VP6js.sdkThemeConfigSchema; exports.sdkThemePaletteSchema = _chunkZIM53VP6js.sdkThemePaletteSchema; exports.sectionBackgroundSchema = _chunkZIM53VP6js.sectionBackgroundSchema; exports.sectionOptionsSchema = _chunkZIM53VP6js.sectionOptionsSchema; exports.sectionSpacingSchema = _chunkZIM53VP6js.sectionSpacingSchema; exports.siteStyleConfigSchema = _chunkZIM53VP6js.siteStyleConfigSchema; exports.validateFieldIdConflicts = _chunkZIM53VP6js.validateFieldIdConflicts;
55
+ exports.blockFieldConfigSchema = _chunk6JBKKV3Gjs.blockFieldConfigSchema; exports.blockFieldExtensionSchema = _chunk6JBKKV3Gjs.blockFieldExtensionSchema; exports.blockFieldExtensionsSchema = _chunk6JBKKV3Gjs.blockFieldExtensionsSchema; exports.blockFieldOptionsSchema = _chunk6JBKKV3Gjs.blockFieldOptionsSchema; exports.containerAlignmentSchema = _chunk6JBKKV3Gjs.containerAlignmentSchema; exports.containerMaxWidthSchema = _chunk6JBKKV3Gjs.containerMaxWidthSchema; exports.containerOptionsSchema = _chunk6JBKKV3Gjs.containerOptionsSchema; exports.contentConfigSchema = _chunk6JBKKV3Gjs.contentConfigSchema; exports.fieldSelectOptionSchema = _chunk6JBKKV3Gjs.fieldSelectOptionSchema; exports.loaderParamBindingSchema = _chunk6JBKKV3Gjs.loaderParamBindingSchema; exports.loaderParamValueSchema = _chunk6JBKKV3Gjs.loaderParamValueSchema; exports.riverbankSiteConfigSchema = _chunk6JBKKV3Gjs.riverbankSiteConfigSchema; exports.sdkConfigLoaderSchema = _chunk6JBKKV3Gjs.sdkConfigLoaderSchema; exports.sdkCustomBlockSchema = _chunk6JBKKV3Gjs.sdkCustomBlockSchema; exports.sdkDataLoadersSchema = _chunk6JBKKV3Gjs.sdkDataLoadersSchema; exports.sdkLoaderEndpointSchema = _chunk6JBKKV3Gjs.sdkLoaderEndpointSchema; exports.sdkThemeConfigSchema = _chunk6JBKKV3Gjs.sdkThemeConfigSchema; exports.sdkThemePaletteSchema = _chunk6JBKKV3Gjs.sdkThemePaletteSchema; exports.sectionBackgroundSchema = _chunk6JBKKV3Gjs.sectionBackgroundSchema; exports.sectionOptionsSchema = _chunk6JBKKV3Gjs.sectionOptionsSchema; exports.sectionSpacingSchema = _chunk6JBKKV3Gjs.sectionSpacingSchema; exports.siteStyleConfigSchema = _chunk6JBKKV3Gjs.siteStyleConfigSchema; exports.validateFieldIdConflicts = _chunk6JBKKV3Gjs.validateFieldIdConflicts;
56
56
  //# sourceMappingURL=config-validation.js.map
@@ -22,9 +22,9 @@ import {
22
22
  sectionSpacingSchema,
23
23
  siteStyleConfigSchema,
24
24
  validateFieldIdConflicts
25
- } from "./chunk-BOHTTHY5.mjs";
25
+ } from "./chunk-I6K5REFT.mjs";
26
26
  import "./chunk-D2QLTPUJ.mjs";
27
- import "./chunk-NKXS4TBK.mjs";
27
+ import "./chunk-TNRADRPH.mjs";
28
28
  import "./chunk-7DS4Q3GA.mjs";
29
29
  import "./chunk-USQF2XTU.mjs";
30
30
  import "./chunk-BJTO5JO5.mjs";
@@ -1,6 +1,6 @@
1
- import { R as RiverbankSiteConfig, C as ContentConfig } from './types-CYfHxUhe.mjs';
2
- export { m as BlockConfig, B as BlockFieldConfig, j as BlockFieldExtension, k as BlockFieldExtensionsMap, i as BlockFieldOptionsMap, f as ContainerAlignment, e as ContainerMaxWidth, c as ContainerOptionsConfig, l as ContentTypeConfig, E as EntryConfig, F as FieldSelectOption, n as NavigationItemConfig, o as NavigationLinkType, N as NavigationMenuConfig, P as PageConfig, g as SdkThemeConfig, h as SdkThemePalette, a as SectionBackground, b as SectionOptionsConfig, d as SectionSpacing, p as SiteSettingsConfig, S as SiteStyleConfig } from './types-CYfHxUhe.mjs';
3
- export { C as ContentConfigInput, z as ContentConfigOutput, V as ValidatedRiverbankSiteConfig, y as ValidatedSdkCustomBlock, x as blockConfigSchema, k as blockFieldConfigSchema, m as blockFieldExtensionSchema, n as blockFieldExtensionsSchema, l as blockFieldOptionsSchema, d as containerAlignmentSchema, c as containerMaxWidthSchema, f as containerOptionsSchema, o as contentConfigSchema, p as contentTypeConfigSchema, t as entryConfigSchema, j as fieldSelectOptionSchema, v as navigationItemConfigSchema, u as navigationMenuConfigSchema, q as pageConfigSchema, r as riverbankSiteConfigSchema, i as sdkCustomBlockSchema, g as sdkThemeConfigSchema, h as sdkThemePaletteSchema, a as sectionBackgroundSchema, e as sectionOptionsSchema, b as sectionSpacingSchema, w as siteSettingsConfigSchema, s as siteStyleConfigSchema } from './validation-hg1sqhrt.mjs';
1
+ import { R as RiverbankSiteConfig, C as ContentConfig } from './types-txWsSxN7.mjs';
2
+ export { m as BlockConfig, B as BlockFieldConfig, j as BlockFieldExtension, k as BlockFieldExtensionsMap, i as BlockFieldOptionsMap, f as ContainerAlignment, e as ContainerMaxWidth, c as ContainerOptionsConfig, l as ContentTypeConfig, E as EntryConfig, F as FieldSelectOption, n as NavigationItemConfig, o as NavigationLinkType, N as NavigationMenuConfig, P as PageConfig, g as SdkThemeConfig, h as SdkThemePalette, a as SectionBackground, b as SectionOptionsConfig, d as SectionSpacing, p as SiteSettingsConfig, S as SiteStyleConfig } from './types-txWsSxN7.mjs';
3
+ export { C as ContentConfigInput, z as ContentConfigOutput, V as ValidatedRiverbankSiteConfig, y as ValidatedSdkCustomBlock, x as blockConfigSchema, k as blockFieldConfigSchema, m as blockFieldExtensionSchema, n as blockFieldExtensionsSchema, l as blockFieldOptionsSchema, d as containerAlignmentSchema, c as containerMaxWidthSchema, f as containerOptionsSchema, o as contentConfigSchema, p as contentTypeConfigSchema, t as entryConfigSchema, j as fieldSelectOptionSchema, v as navigationItemConfigSchema, u as navigationMenuConfigSchema, q as pageConfigSchema, r as riverbankSiteConfigSchema, i as sdkCustomBlockSchema, g as sdkThemeConfigSchema, h as sdkThemePaletteSchema, a as sectionBackgroundSchema, e as sectionOptionsSchema, b as sectionSpacingSchema, w as siteSettingsConfigSchema, s as siteStyleConfigSchema } from './validation-DzvDwwRo.mjs';
4
4
  export { B as BlockKind, C as CustomBlockKind, S as SYSTEM_BLOCK_KINDS, a as SystemBlockKind } from './blockKinds-B6MWzNWp.mjs';
5
5
  export { F as FieldDefinition, S as SdkCustomBlock } from './schema-Bpy9N5ZI.mjs';
6
6
  import 'zod';
@@ -1,6 +1,6 @@
1
- import { R as RiverbankSiteConfig, C as ContentConfig } from './types-CMqVHYLG.js';
2
- export { m as BlockConfig, B as BlockFieldConfig, j as BlockFieldExtension, k as BlockFieldExtensionsMap, i as BlockFieldOptionsMap, f as ContainerAlignment, e as ContainerMaxWidth, c as ContainerOptionsConfig, l as ContentTypeConfig, E as EntryConfig, F as FieldSelectOption, n as NavigationItemConfig, o as NavigationLinkType, N as NavigationMenuConfig, P as PageConfig, g as SdkThemeConfig, h as SdkThemePalette, a as SectionBackground, b as SectionOptionsConfig, d as SectionSpacing, p as SiteSettingsConfig, S as SiteStyleConfig } from './types-CMqVHYLG.js';
3
- export { C as ContentConfigInput, z as ContentConfigOutput, V as ValidatedRiverbankSiteConfig, y as ValidatedSdkCustomBlock, x as blockConfigSchema, k as blockFieldConfigSchema, m as blockFieldExtensionSchema, n as blockFieldExtensionsSchema, l as blockFieldOptionsSchema, d as containerAlignmentSchema, c as containerMaxWidthSchema, f as containerOptionsSchema, o as contentConfigSchema, p as contentTypeConfigSchema, t as entryConfigSchema, j as fieldSelectOptionSchema, v as navigationItemConfigSchema, u as navigationMenuConfigSchema, q as pageConfigSchema, r as riverbankSiteConfigSchema, i as sdkCustomBlockSchema, g as sdkThemeConfigSchema, h as sdkThemePaletteSchema, a as sectionBackgroundSchema, e as sectionOptionsSchema, b as sectionSpacingSchema, w as siteSettingsConfigSchema, s as siteStyleConfigSchema } from './validation-C7W2Fe0i.js';
1
+ import { R as RiverbankSiteConfig, C as ContentConfig } from './types-CL916r6x.js';
2
+ export { m as BlockConfig, B as BlockFieldConfig, j as BlockFieldExtension, k as BlockFieldExtensionsMap, i as BlockFieldOptionsMap, f as ContainerAlignment, e as ContainerMaxWidth, c as ContainerOptionsConfig, l as ContentTypeConfig, E as EntryConfig, F as FieldSelectOption, n as NavigationItemConfig, o as NavigationLinkType, N as NavigationMenuConfig, P as PageConfig, g as SdkThemeConfig, h as SdkThemePalette, a as SectionBackground, b as SectionOptionsConfig, d as SectionSpacing, p as SiteSettingsConfig, S as SiteStyleConfig } from './types-CL916r6x.js';
3
+ export { C as ContentConfigInput, z as ContentConfigOutput, V as ValidatedRiverbankSiteConfig, y as ValidatedSdkCustomBlock, x as blockConfigSchema, k as blockFieldConfigSchema, m as blockFieldExtensionSchema, n as blockFieldExtensionsSchema, l as blockFieldOptionsSchema, d as containerAlignmentSchema, c as containerMaxWidthSchema, f as containerOptionsSchema, o as contentConfigSchema, p as contentTypeConfigSchema, t as entryConfigSchema, j as fieldSelectOptionSchema, v as navigationItemConfigSchema, u as navigationMenuConfigSchema, q as pageConfigSchema, r as riverbankSiteConfigSchema, i as sdkCustomBlockSchema, g as sdkThemeConfigSchema, h as sdkThemePaletteSchema, a as sectionBackgroundSchema, e as sectionOptionsSchema, b as sectionSpacingSchema, w as siteSettingsConfigSchema, s as siteStyleConfigSchema } from './validation-CoU8uAiu.js';
4
4
  export { B as BlockKind, C as CustomBlockKind, S as SYSTEM_BLOCK_KINDS, a as SystemBlockKind } from './blockKinds-B6MWzNWp.js';
5
5
  export { F as FieldDefinition, S as SdkCustomBlock } from './schema-Bpy9N5ZI.js';
6
6
  import 'zod';
@@ -23,11 +23,11 @@
23
23
 
24
24
 
25
25
 
26
- var _chunkZIM53VP6js = require('./chunk-ZIM53VP6.js');
26
+ var _chunk6JBKKV3Gjs = require('./chunk-6JBKKV3G.js');
27
27
 
28
28
 
29
29
  var _chunkGERCMTPQjs = require('./chunk-GERCMTPQ.js');
30
- require('./chunk-IT5ICP43.js');
30
+ require('./chunk-TKMA6D6U.js');
31
31
  require('./chunk-HOY77YBF.js');
32
32
  require('./chunk-EGTDJ4PL.js');
33
33
  require('./chunk-DGUM43GV.js');
@@ -67,5 +67,5 @@ function defineContentConfig(config) {
67
67
 
68
68
 
69
69
 
70
- exports.SYSTEM_BLOCK_KINDS = _chunkGERCMTPQjs.SYSTEM_BLOCK_KINDS; exports.blockConfigSchema = _chunkZIM53VP6js.blockConfigSchema; exports.blockFieldConfigSchema = _chunkZIM53VP6js.blockFieldConfigSchema; exports.blockFieldExtensionSchema = _chunkZIM53VP6js.blockFieldExtensionSchema; exports.blockFieldExtensionsSchema = _chunkZIM53VP6js.blockFieldExtensionsSchema; exports.blockFieldOptionsSchema = _chunkZIM53VP6js.blockFieldOptionsSchema; exports.containerAlignmentSchema = _chunkZIM53VP6js.containerAlignmentSchema; exports.containerMaxWidthSchema = _chunkZIM53VP6js.containerMaxWidthSchema; exports.containerOptionsSchema = _chunkZIM53VP6js.containerOptionsSchema; exports.contentConfigSchema = _chunkZIM53VP6js.contentConfigSchema; exports.contentTypeConfigSchema = _chunkZIM53VP6js.contentTypeConfigSchema; exports.defineConfig = defineConfig; exports.defineContentConfig = defineContentConfig; exports.entryConfigSchema = _chunkZIM53VP6js.entryConfigSchema; exports.fieldSelectOptionSchema = _chunkZIM53VP6js.fieldSelectOptionSchema; exports.navigationItemConfigSchema = _chunkZIM53VP6js.navigationItemConfigSchema; exports.navigationMenuConfigSchema = _chunkZIM53VP6js.navigationMenuConfigSchema; exports.pageConfigSchema = _chunkZIM53VP6js.pageConfigSchema; exports.riverbankSiteConfigSchema = _chunkZIM53VP6js.riverbankSiteConfigSchema; exports.sdkCustomBlockSchema = _chunkZIM53VP6js.sdkCustomBlockSchema; exports.sdkThemeConfigSchema = _chunkZIM53VP6js.sdkThemeConfigSchema; exports.sdkThemePaletteSchema = _chunkZIM53VP6js.sdkThemePaletteSchema; exports.sectionBackgroundSchema = _chunkZIM53VP6js.sectionBackgroundSchema; exports.sectionOptionsSchema = _chunkZIM53VP6js.sectionOptionsSchema; exports.sectionSpacingSchema = _chunkZIM53VP6js.sectionSpacingSchema; exports.siteSettingsConfigSchema = _chunkZIM53VP6js.siteSettingsConfigSchema; exports.siteStyleConfigSchema = _chunkZIM53VP6js.siteStyleConfigSchema;
70
+ exports.SYSTEM_BLOCK_KINDS = _chunkGERCMTPQjs.SYSTEM_BLOCK_KINDS; exports.blockConfigSchema = _chunk6JBKKV3Gjs.blockConfigSchema; exports.blockFieldConfigSchema = _chunk6JBKKV3Gjs.blockFieldConfigSchema; exports.blockFieldExtensionSchema = _chunk6JBKKV3Gjs.blockFieldExtensionSchema; exports.blockFieldExtensionsSchema = _chunk6JBKKV3Gjs.blockFieldExtensionsSchema; exports.blockFieldOptionsSchema = _chunk6JBKKV3Gjs.blockFieldOptionsSchema; exports.containerAlignmentSchema = _chunk6JBKKV3Gjs.containerAlignmentSchema; exports.containerMaxWidthSchema = _chunk6JBKKV3Gjs.containerMaxWidthSchema; exports.containerOptionsSchema = _chunk6JBKKV3Gjs.containerOptionsSchema; exports.contentConfigSchema = _chunk6JBKKV3Gjs.contentConfigSchema; exports.contentTypeConfigSchema = _chunk6JBKKV3Gjs.contentTypeConfigSchema; exports.defineConfig = defineConfig; exports.defineContentConfig = defineContentConfig; exports.entryConfigSchema = _chunk6JBKKV3Gjs.entryConfigSchema; exports.fieldSelectOptionSchema = _chunk6JBKKV3Gjs.fieldSelectOptionSchema; exports.navigationItemConfigSchema = _chunk6JBKKV3Gjs.navigationItemConfigSchema; exports.navigationMenuConfigSchema = _chunk6JBKKV3Gjs.navigationMenuConfigSchema; exports.pageConfigSchema = _chunk6JBKKV3Gjs.pageConfigSchema; exports.riverbankSiteConfigSchema = _chunk6JBKKV3Gjs.riverbankSiteConfigSchema; exports.sdkCustomBlockSchema = _chunk6JBKKV3Gjs.sdkCustomBlockSchema; exports.sdkThemeConfigSchema = _chunk6JBKKV3Gjs.sdkThemeConfigSchema; exports.sdkThemePaletteSchema = _chunk6JBKKV3Gjs.sdkThemePaletteSchema; exports.sectionBackgroundSchema = _chunk6JBKKV3Gjs.sectionBackgroundSchema; exports.sectionOptionsSchema = _chunk6JBKKV3Gjs.sectionOptionsSchema; exports.sectionSpacingSchema = _chunk6JBKKV3Gjs.sectionSpacingSchema; exports.siteSettingsConfigSchema = _chunk6JBKKV3Gjs.siteSettingsConfigSchema; exports.siteStyleConfigSchema = _chunk6JBKKV3Gjs.siteStyleConfigSchema;
71
71
  //# sourceMappingURL=config.js.map
@@ -23,11 +23,11 @@ import {
23
23
  sectionSpacingSchema,
24
24
  siteSettingsConfigSchema,
25
25
  siteStyleConfigSchema
26
- } from "./chunk-BOHTTHY5.mjs";
26
+ } from "./chunk-I6K5REFT.mjs";
27
27
  import {
28
28
  SYSTEM_BLOCK_KINDS
29
29
  } from "./chunk-D2QLTPUJ.mjs";
30
- import "./chunk-NKXS4TBK.mjs";
30
+ import "./chunk-TNRADRPH.mjs";
31
31
  import "./chunk-7DS4Q3GA.mjs";
32
32
  import "./chunk-USQF2XTU.mjs";
33
33
  import "./chunk-BJTO5JO5.mjs";
@@ -1,10 +1,10 @@
1
1
  import { P as PageOutline, S as SdkCustomBlock } from './schema-Bpy9N5ZI.mjs';
2
- import { P as PrefetchContext, R as ResolvedBlockData, D as DataLoaderOverrides } from './types-BuZJWVmj.mjs';
3
- export { B as BlockLoaderMap, a as DataLoaderContext, b as DataLoaderFn } from './types-BuZJWVmj.mjs';
4
- import { R as RiverbankClient } from './types-BC9eB2KH.mjs';
2
+ import { P as PrefetchContext, R as ResolvedBlockData, D as DataLoaderOverrides } from './types-CbagRQ_7.mjs';
3
+ export { B as BlockLoaderMap, a as DataLoaderContext, b as DataLoaderFn } from './types-CbagRQ_7.mjs';
4
+ import { R as RiverbankClient } from './types-DkKEctWn.mjs';
5
5
  import 'zod';
6
6
  import './blockKinds-B6MWzNWp.mjs';
7
- import './types-BA-J9K8r.mjs';
7
+ import './types-CdrJqlKx.mjs';
8
8
  import '@riverbankcms/ai';
9
9
  import '@riverbankcms/media-storage-supabase';
10
10
  import '@riverbankcms/db';
@@ -96,7 +96,9 @@ declare function prefetchBlockData(page: PageOutline, context: PrefetchContext,
96
96
  * // codeData: { 'block-123': { products: [...] } }
97
97
  * ```
98
98
  */
99
- declare function executeCodeLoaders(page: PageOutline, context: PrefetchContext, overrides: DataLoaderOverrides): Promise<ResolvedBlockData>;
99
+ declare function executeCodeLoaders(page: PageOutline, context: PrefetchContext & {
100
+ searchParams?: Record<string, string | string[] | undefined>;
101
+ }, overrides: DataLoaderOverrides): Promise<ResolvedBlockData>;
100
102
  /**
101
103
  * Merge resolved data from config loaders and code loaders.
102
104
  *
@@ -1,10 +1,10 @@
1
1
  import { P as PageOutline, S as SdkCustomBlock } from './schema-Bpy9N5ZI.js';
2
- import { P as PrefetchContext, R as ResolvedBlockData, D as DataLoaderOverrides } from './types-DSFvXKhO.js';
3
- export { B as BlockLoaderMap, a as DataLoaderContext, b as DataLoaderFn } from './types-DSFvXKhO.js';
4
- import { R as RiverbankClient } from './types-CAnC529E.js';
2
+ import { P as PrefetchContext, R as ResolvedBlockData, D as DataLoaderOverrides } from './types-DuQCNVV0.js';
3
+ export { B as BlockLoaderMap, a as DataLoaderContext, b as DataLoaderFn } from './types-DuQCNVV0.js';
4
+ import { R as RiverbankClient } from './types-oCM-fw4O.js';
5
5
  import 'zod';
6
6
  import './blockKinds-B6MWzNWp.js';
7
- import './types-5XdVD2J1.js';
7
+ import './types-BiRZnxDx.js';
8
8
  import '@riverbankcms/ai';
9
9
  import '@riverbankcms/media-storage-supabase';
10
10
  import '@riverbankcms/db';
@@ -96,7 +96,9 @@ declare function prefetchBlockData(page: PageOutline, context: PrefetchContext,
96
96
  * // codeData: { 'block-123': { products: [...] } }
97
97
  * ```
98
98
  */
99
- declare function executeCodeLoaders(page: PageOutline, context: PrefetchContext, overrides: DataLoaderOverrides): Promise<ResolvedBlockData>;
99
+ declare function executeCodeLoaders(page: PageOutline, context: PrefetchContext & {
100
+ searchParams?: Record<string, string | string[] | undefined>;
101
+ }, overrides: DataLoaderOverrides): Promise<ResolvedBlockData>;
100
102
  /**
101
103
  * Merge resolved data from config loaders and code loaders.
102
104
  *
@@ -1,7 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
3
 
4
- var _chunkG4CKM4ENjs = require('./chunk-G4CKM4EN.js');
4
+ var _chunkY7347JMZjs = require('./chunk-Y7347JMZ.js');
5
5
 
6
6
 
7
7
 
@@ -13,5 +13,5 @@ require('./chunk-DGUM43GV.js');
13
13
 
14
14
 
15
15
 
16
- exports.SUPPORTED_LOADER_ENDPOINTS = _chunkHOY77YBFjs.SUPPORTED_LOADER_ENDPOINTS; exports.executeCodeLoaders = _chunkG4CKM4ENjs.executeCodeLoaders; exports.mergeLoaderResults = _chunkG4CKM4ENjs.mergeLoaderResults; exports.prefetchBlockData = _chunkHOY77YBFjs.prefetchBlockData;
16
+ exports.SUPPORTED_LOADER_ENDPOINTS = _chunkHOY77YBFjs.SUPPORTED_LOADER_ENDPOINTS; exports.executeCodeLoaders = _chunkY7347JMZjs.executeCodeLoaders; exports.mergeLoaderResults = _chunkY7347JMZjs.mergeLoaderResults; exports.prefetchBlockData = _chunkHOY77YBFjs.prefetchBlockData;
17
17
  //# sourceMappingURL=data.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  executeCodeLoaders,
3
3
  mergeLoaderResults
4
- } from "./chunk-M5KTLZTD.mjs";
4
+ } from "./chunk-A2FZMRDW.mjs";
5
5
  import {
6
6
  SUPPORTED_LOADER_ENDPOINTS,
7
7
  prefetchBlockData
@@ -1,4 +1,4 @@
1
- import { a as RiverbankClientConfig, R as RiverbankClient } from './types-CAnC529E.js';
1
+ import { a as RiverbankClientConfig, R as RiverbankClient } from './types-oCM-fw4O.js';
2
2
 
3
3
  /**
4
4
  * Create a Riverbank CMS client for fetching content
@@ -1,4 +1,4 @@
1
- import { a as RiverbankClientConfig, R as RiverbankClient } from './types-BC9eB2KH.mjs';
1
+ import { a as RiverbankClientConfig, R as RiverbankClient } from './types-DkKEctWn.mjs';
2
2
 
3
3
  /**
4
4
  * Create a Riverbank CMS client for fetching content
@@ -1,8 +1,8 @@
1
- export { c as createRiverbankClient } from './index-Dj7VKH34.mjs';
2
- export { E as EntriesResponse, c as EntriesResponseWithMeta, b as EntryResponse, P as PageResponse, d as PaginationMeta, R as RiverbankClient, a as RiverbankClientConfig, S as SiteResponse } from './types-BC9eB2KH.mjs';
3
- import { A as APIEndpoints, b as APICallParams } from './types-BA-J9K8r.mjs';
1
+ export { c as createRiverbankClient } from './index-DFQwtj3J.mjs';
2
+ export { E as EntriesResponse, c as EntriesResponseWithMeta, b as EntryResponse, P as PageResponse, d as PaginationMeta, R as RiverbankClient, a as RiverbankClientConfig, S as SiteResponse } from './types-DkKEctWn.mjs';
3
+ import { A as APIEndpoints, b as APICallParams } from './types-CdrJqlKx.mjs';
4
4
  import './schema-Bpy9N5ZI.mjs';
5
- export { f as ContainerAlignment, e as ContainerMaxWidth, c as ContainerOptionsConfig, R as RiverbankSiteConfig, a as SectionBackground, b as SectionOptionsConfig, d as SectionSpacing, S as SiteStyleConfig } from './types-CYfHxUhe.mjs';
5
+ export { f as ContainerAlignment, e as ContainerMaxWidth, c as ContainerOptionsConfig, R as RiverbankSiteConfig, a as SectionBackground, b as SectionOptionsConfig, d as SectionSpacing, S as SiteStyleConfig } from './types-txWsSxN7.mjs';
6
6
  export { B as BlockKind, C as CustomBlockKind, S as SYSTEM_BLOCK_KINDS, a as SystemBlockKind } from './blockKinds-B6MWzNWp.mjs';
7
7
  import '@riverbankcms/ai';
8
8
  import 'zod';
@@ -1,8 +1,8 @@
1
- export { c as createRiverbankClient } from './index-DbSfrRA0.js';
2
- export { E as EntriesResponse, c as EntriesResponseWithMeta, b as EntryResponse, P as PageResponse, d as PaginationMeta, R as RiverbankClient, a as RiverbankClientConfig, S as SiteResponse } from './types-CAnC529E.js';
3
- import { A as APIEndpoints, b as APICallParams } from './types-5XdVD2J1.js';
1
+ export { c as createRiverbankClient } from './index-DCIz9Ptv.js';
2
+ export { E as EntriesResponse, c as EntriesResponseWithMeta, b as EntryResponse, P as PageResponse, d as PaginationMeta, R as RiverbankClient, a as RiverbankClientConfig, S as SiteResponse } from './types-oCM-fw4O.js';
3
+ import { A as APIEndpoints, b as APICallParams } from './types-BiRZnxDx.js';
4
4
  import './schema-Bpy9N5ZI.js';
5
- export { f as ContainerAlignment, e as ContainerMaxWidth, c as ContainerOptionsConfig, R as RiverbankSiteConfig, a as SectionBackground, b as SectionOptionsConfig, d as SectionSpacing, S as SiteStyleConfig } from './types-CMqVHYLG.js';
5
+ export { f as ContainerAlignment, e as ContainerMaxWidth, c as ContainerOptionsConfig, R as RiverbankSiteConfig, a as SectionBackground, b as SectionOptionsConfig, d as SectionSpacing, S as SiteStyleConfig } from './types-CL916r6x.js';
6
6
  export { B as BlockKind, C as CustomBlockKind, S as SYSTEM_BLOCK_KINDS, a as SystemBlockKind } from './blockKinds-B6MWzNWp.js';
7
7
  import '@riverbankcms/ai';
8
8
  import 'zod';
@@ -1,8 +1,8 @@
1
- import { T as Theme } from './types-BA-J9K8r.mjs';
1
+ import { T as Theme } from './types-CdrJqlKx.mjs';
2
2
  import './schema-Bpy9N5ZI.mjs';
3
- import { R as RiverbankClient } from './types-BC9eB2KH.mjs';
4
- import { P as PageProps } from './loadPage-Dw57_n5N.mjs';
5
- import { R as ResolvedBlockData } from './types-BuZJWVmj.mjs';
3
+ import { R as RiverbankClient } from './types-DkKEctWn.mjs';
4
+ import { P as PageProps } from './loadPage-B8RmlYgV.mjs';
5
+ import { R as ResolvedBlockData } from './types-CbagRQ_7.mjs';
6
6
 
7
7
  /**
8
8
  * Server-side helper to fetch content (page or entry) by path.
@@ -1,8 +1,8 @@
1
- import { T as Theme } from './types-5XdVD2J1.js';
1
+ import { T as Theme } from './types-BiRZnxDx.js';
2
2
  import './schema-Bpy9N5ZI.js';
3
- import { R as RiverbankClient } from './types-CAnC529E.js';
4
- import { P as PageProps } from './loadPage-BElEkA_J.js';
5
- import { R as ResolvedBlockData } from './types-DSFvXKhO.js';
3
+ import { R as RiverbankClient } from './types-oCM-fw4O.js';
4
+ import { P as PageProps } from './loadPage-BTkKpizX.js';
5
+ import { R as ResolvedBlockData } from './types-DuQCNVV0.js';
6
6
 
7
7
  /**
8
8
  * Server-side helper to fetch content (page or entry) by path.