@riverbankcms/sdk 0.22.0 → 0.25.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.
Files changed (124) hide show
  1. package/README.md +15 -0
  2. package/dist/_dts/blocks/src/system/defineBlock.d.ts +2 -2
  3. package/dist/_dts/blocks/src/system/fragments/utils/toRepeaterSchema.d.ts +1 -0
  4. package/dist/_dts/blocks/src/system/manifest/fieldPath.d.ts +1 -1
  5. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +3 -3
  6. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +20 -6
  7. package/dist/_dts/sdk/src/components.d.ts +1 -1
  8. package/dist/_dts/sdk/src/manifest/prompt/examples/types.d.ts +1 -1
  9. package/dist/_dts/sdk/src/manifest/validation/output-schema.d.ts +1 -1
  10. package/dist/_dts/sdk/src/rendering/components/Layout.d.ts +13 -2
  11. package/dist/_dts/sdk/src/rendering/server.d.ts +1 -1
  12. package/dist/_dts/sdk/src/version.d.ts +1 -1
  13. package/dist/_dts/sdk/src/zod/titleSourceSchema.d.ts +3 -0
  14. package/dist/cli/index.js +38 -16
  15. package/dist/cli/index.js.map +1 -1
  16. package/dist/client/client.js +16 -4
  17. package/dist/client/client.js.map +1 -1
  18. package/dist/client/client.mjs +16 -4
  19. package/dist/client/client.mjs.map +1 -1
  20. package/dist/client/hooks.js +15 -3
  21. package/dist/client/hooks.js.map +1 -1
  22. package/dist/client/hooks.mjs +15 -3
  23. package/dist/client/hooks.mjs.map +1 -1
  24. package/dist/server/{chunk-QE4VT6ZZ.js → chunk-2VZTRLVN.js} +2 -2
  25. package/dist/server/{chunk-QE4VT6ZZ.js.map → chunk-2VZTRLVN.js.map} +1 -1
  26. package/dist/server/{chunk-2M7734OW.mjs → chunk-2Y65RENO.mjs} +2 -2
  27. package/dist/server/{chunk-ZUEYJXML.js → chunk-36KFN6AU.js} +6 -6
  28. package/dist/server/{chunk-ZUEYJXML.js.map → chunk-36KFN6AU.js.map} +1 -1
  29. package/dist/server/{chunk-53NRFMMN.js → chunk-377J7BKC.js} +16 -4
  30. package/dist/server/chunk-377J7BKC.js.map +1 -0
  31. package/dist/server/chunk-3OR6EF3W.js +11 -0
  32. package/dist/server/chunk-3OR6EF3W.js.map +1 -0
  33. package/dist/server/chunk-3YMYSDUU.mjs +7 -0
  34. package/dist/server/{chunk-VHVKDZCV.mjs.map → chunk-3YMYSDUU.mjs.map} +1 -1
  35. package/dist/server/{chunk-WUAHP5L2.mjs → chunk-7NJZJL2D.mjs} +4 -4
  36. package/dist/server/{chunk-PY2A4FGZ.js → chunk-ACLGZTVX.js} +3 -3
  37. package/dist/server/{chunk-PY2A4FGZ.js.map → chunk-ACLGZTVX.js.map} +1 -1
  38. package/dist/server/{chunk-D5NOG6VZ.mjs → chunk-DHFU2AQ7.mjs} +2 -2
  39. package/dist/server/{chunk-7XBBV6UY.mjs → chunk-DWMPTB3G.mjs} +2 -2
  40. package/dist/server/{chunk-J2ZBKZVF.mjs → chunk-E5G5COYU.mjs} +21 -15
  41. package/dist/server/chunk-E5G5COYU.mjs.map +1 -0
  42. package/dist/server/{chunk-H3SRB5G4.js → chunk-EFQNS3HS.js} +6 -6
  43. package/dist/server/{chunk-H3SRB5G4.js.map → chunk-EFQNS3HS.js.map} +1 -1
  44. package/dist/server/{chunk-PTHRXZUJ.js → chunk-END3H7C6.js} +32 -26
  45. package/dist/server/chunk-END3H7C6.js.map +1 -0
  46. package/dist/server/{chunk-TOBOHAEX.js → chunk-FKMJDBEA.js} +5 -5
  47. package/dist/server/{chunk-TOBOHAEX.js.map → chunk-FKMJDBEA.js.map} +1 -1
  48. package/dist/server/{chunk-TU3WAJPX.js → chunk-GTE6ZI5W.js} +13 -10
  49. package/dist/server/chunk-GTE6ZI5W.js.map +1 -0
  50. package/dist/server/{chunk-ZIY3QZJ3.mjs → chunk-HQZKJ5MH.mjs} +2 -2
  51. package/dist/server/{chunk-UK7SLIIG.js → chunk-IH2NRKKI.js} +3 -3
  52. package/dist/server/{chunk-UK7SLIIG.js.map → chunk-IH2NRKKI.js.map} +1 -1
  53. package/dist/server/{chunk-OPW33AGO.mjs → chunk-JMKX5FTE.mjs} +16 -4
  54. package/dist/server/chunk-JMKX5FTE.mjs.map +1 -0
  55. package/dist/server/{chunk-RVLBSKSU.mjs → chunk-KNF42IKQ.mjs} +2 -2
  56. package/dist/server/{chunk-7ORXXMTP.js → chunk-QIBPYE44.js} +9 -9
  57. package/dist/server/{chunk-7ORXXMTP.js.map → chunk-QIBPYE44.js.map} +1 -1
  58. package/dist/server/{chunk-3Z25JQ6H.mjs → chunk-QOBADLB4.mjs} +2 -2
  59. package/dist/server/{chunk-OOIGZH5B.mjs → chunk-RFQZDDUM.mjs} +2 -2
  60. package/dist/server/{chunk-33KZRQJY.mjs → chunk-T3ZGODHW.mjs} +2 -2
  61. package/dist/server/{chunk-CCAD7BUN.mjs → chunk-TCRV6VRW.mjs} +8 -5
  62. package/dist/server/chunk-TCRV6VRW.mjs.map +1 -0
  63. package/dist/server/{chunk-Z4AMGXH2.js → chunk-UZMAP5RH.js} +3 -3
  64. package/dist/server/{chunk-Z4AMGXH2.js.map → chunk-UZMAP5RH.js.map} +1 -1
  65. package/dist/server/chunk-VRDQJRYS.mjs +11 -0
  66. package/dist/server/chunk-VRDQJRYS.mjs.map +1 -0
  67. package/dist/server/{chunk-V5EQHRVR.js → chunk-WEEEYI47.js} +4 -4
  68. package/dist/server/{chunk-V5EQHRVR.js.map → chunk-WEEEYI47.js.map} +1 -1
  69. package/dist/server/{chunk-KAVH2CX7.js → chunk-X5XHOSOM.js} +49 -49
  70. package/dist/server/{chunk-KAVH2CX7.js.map → chunk-X5XHOSOM.js.map} +1 -1
  71. package/dist/server/components.js +5 -5
  72. package/dist/server/components.mjs +4 -4
  73. package/dist/server/config-validation.js +6 -5
  74. package/dist/server/config-validation.js.map +1 -1
  75. package/dist/server/config-validation.mjs +5 -4
  76. package/dist/server/config.js +6 -5
  77. package/dist/server/config.js.map +1 -1
  78. package/dist/server/config.mjs +5 -4
  79. package/dist/server/config.mjs.map +1 -1
  80. package/dist/server/data.js +3 -3
  81. package/dist/server/data.mjs +2 -2
  82. package/dist/server/index.js +4 -4
  83. package/dist/server/index.mjs +3 -3
  84. package/dist/server/{loadPage-3F57VAE2.mjs → loadPage-EZXWZ7SJ.mjs} +4 -4
  85. package/dist/server/{loadPage-JRS5JUAY.js → loadPage-G74D6VXZ.js} +5 -5
  86. package/dist/server/{loadPage-JRS5JUAY.js.map → loadPage-G74D6VXZ.js.map} +1 -1
  87. package/dist/server/next.js +17 -17
  88. package/dist/server/next.mjs +7 -7
  89. package/dist/server/page-converter.js +16 -10
  90. package/dist/server/page-converter.js.map +1 -1
  91. package/dist/server/page-converter.mjs +9 -3
  92. package/dist/server/page-converter.mjs.map +1 -1
  93. package/dist/server/prebuild.js +3 -3
  94. package/dist/server/prebuild.mjs +2 -2
  95. package/dist/server/rendering/server.js +7 -7
  96. package/dist/server/rendering/server.mjs +6 -6
  97. package/dist/server/rendering.js +9 -9
  98. package/dist/server/rendering.mjs +8 -8
  99. package/dist/server/routing.js +1 -1
  100. package/dist/server/routing.mjs +1 -1
  101. package/dist/server/server.js +7 -7
  102. package/dist/server/server.mjs +6 -6
  103. package/dist/server/theme-bridge.js +10 -10
  104. package/dist/server/theme-bridge.mjs +2 -2
  105. package/dist/server/theme.js +4 -4
  106. package/dist/server/theme.mjs +2 -2
  107. package/package.json +1 -1
  108. package/dist/server/chunk-53NRFMMN.js.map +0 -1
  109. package/dist/server/chunk-CCAD7BUN.mjs.map +0 -1
  110. package/dist/server/chunk-J2ZBKZVF.mjs.map +0 -1
  111. package/dist/server/chunk-OPW33AGO.mjs.map +0 -1
  112. package/dist/server/chunk-PTHRXZUJ.js.map +0 -1
  113. package/dist/server/chunk-TU3WAJPX.js.map +0 -1
  114. package/dist/server/chunk-VHVKDZCV.mjs +0 -7
  115. /package/dist/server/{chunk-2M7734OW.mjs.map → chunk-2Y65RENO.mjs.map} +0 -0
  116. /package/dist/server/{chunk-WUAHP5L2.mjs.map → chunk-7NJZJL2D.mjs.map} +0 -0
  117. /package/dist/server/{chunk-D5NOG6VZ.mjs.map → chunk-DHFU2AQ7.mjs.map} +0 -0
  118. /package/dist/server/{chunk-7XBBV6UY.mjs.map → chunk-DWMPTB3G.mjs.map} +0 -0
  119. /package/dist/server/{chunk-ZIY3QZJ3.mjs.map → chunk-HQZKJ5MH.mjs.map} +0 -0
  120. /package/dist/server/{chunk-RVLBSKSU.mjs.map → chunk-KNF42IKQ.mjs.map} +0 -0
  121. /package/dist/server/{chunk-3Z25JQ6H.mjs.map → chunk-QOBADLB4.mjs.map} +0 -0
  122. /package/dist/server/{chunk-OOIGZH5B.mjs.map → chunk-RFQZDDUM.mjs.map} +0 -0
  123. /package/dist/server/{chunk-33KZRQJY.mjs.map → chunk-T3ZGODHW.mjs.map} +0 -0
  124. /package/dist/server/{loadPage-3F57VAE2.mjs.map → loadPage-EZXWZ7SJ.mjs.map} +0 -0
@@ -13,18 +13,18 @@ import {
13
13
  } from "./chunk-V4FP3RIQ.mjs";
14
14
  import {
15
15
  createRiverbankClient
16
- } from "./chunk-7XBBV6UY.mjs";
17
- import "./chunk-VHVKDZCV.mjs";
16
+ } from "./chunk-DWMPTB3G.mjs";
17
+ import "./chunk-3YMYSDUU.mjs";
18
18
  import "./chunk-YFVX3DKB.mjs";
19
19
  import {
20
20
  isEntryContent,
21
21
  isPageContent,
22
22
  loadContent
23
- } from "./chunk-ZIY3QZJ3.mjs";
23
+ } from "./chunk-HQZKJ5MH.mjs";
24
24
  import "./chunk-EGXGTKGQ.mjs";
25
25
  import {
26
26
  Page
27
- } from "./chunk-OOIGZH5B.mjs";
27
+ } from "./chunk-RFQZDDUM.mjs";
28
28
  import {
29
29
  BlocksIslandsHydrator
30
30
  } from "./chunk-TWKOQ5WX.mjs";
@@ -32,11 +32,11 @@ import "./chunk-LIJJEVQS.mjs";
32
32
  import {
33
33
  isPreviewMode
34
34
  } from "./chunk-2XTTEIXY.mjs";
35
- import "./chunk-3Z25JQ6H.mjs";
35
+ import "./chunk-QOBADLB4.mjs";
36
36
  import "./chunk-GOXKDN55.mjs";
37
37
  import "./chunk-NHEUEGDN.mjs";
38
- import "./chunk-33KZRQJY.mjs";
39
- import "./chunk-OPW33AGO.mjs";
38
+ import "./chunk-T3ZGODHW.mjs";
39
+ import "./chunk-JMKX5FTE.mjs";
40
40
  import "./chunk-ADKFU25P.mjs";
41
41
  import "./chunk-LKM4VPXJ.mjs";
42
42
  import "./chunk-BJTO5JO5.mjs";
@@ -3,14 +3,17 @@
3
3
  var _chunkPHJCGO63js = require('./chunk-PHJCGO63.js');
4
4
 
5
5
 
6
+ var _chunk3OR6EF3Wjs = require('./chunk-3OR6EF3W.js');
6
7
 
7
- var _chunkKAVH2CX7js = require('./chunk-KAVH2CX7.js');
8
+
9
+
10
+ var _chunkX5XHOSOMjs = require('./chunk-X5XHOSOM.js');
8
11
  require('./chunk-DAIAPNHC.js');
9
12
  require('./chunk-DGBDBMRB.js');
10
13
 
11
14
 
12
15
 
13
- var _chunk53NRFMMNjs = require('./chunk-53NRFMMN.js');
16
+ var _chunk377J7BKCjs = require('./chunk-377J7BKC.js');
14
17
  require('./chunk-NICYAKAP.js');
15
18
  require('./chunk-FWMGMDLV.js');
16
19
  require('./chunk-DGUM43GV.js');
@@ -94,7 +97,7 @@ function blockDescriptorToSummary(descriptor) {
94
97
  };
95
98
  }
96
99
  function getAvailableBlockSummaries() {
97
- _nullishCoalesce(cachedBlockSummaries, () => ( (cachedBlockSummaries = _chunk53NRFMMNjs.listBlockDescriptors.call(void 0, ).map(blockDescriptorToSummary))));
100
+ _nullishCoalesce(cachedBlockSummaries, () => ( (cachedBlockSummaries = _chunk377J7BKCjs.listBlockDescriptors.call(void 0, ).map(blockDescriptorToSummary))));
98
101
  return cachedBlockSummaries;
99
102
  }
100
103
  var cachedBlockSummaries;
@@ -781,9 +784,12 @@ var llmCustomBlockSchema = _zod.z.object({
781
784
  message: "Block ID must start with 'custom.' followed by lowercase letters, numbers, or hyphens"
782
785
  }),
783
786
  title: _zod.z.string().min(1, "Title is required"),
784
- titleSource: _zod.z.string().nullable(),
787
+ // Keep in sync with `sdkCustomBlockSchema` and the system manifest schema:
788
+ // - `null` used by OpenAI structured output for "optional" values
789
+ // - array allows multi-part titles (e.g. ["navLabel", "title"])
790
+ titleSource: _chunk3OR6EF3Wjs.titleSourceValueSchema.nullable(),
785
791
  description: _zod.z.string().nullable(),
786
- category: _chunk53NRFMMNjs.blockCategoryEnum,
792
+ category: _chunk377J7BKCjs.blockCategoryEnum,
787
793
  icon: _zod.z.string().nullable(),
788
794
  tags: _zod.z.array(_zod.z.string()).nullable(),
789
795
  // Use LLM-specific field schema (no z.any() for OpenAI compatibility)
@@ -1249,11 +1255,11 @@ function extractBlockIdFromSelector(selector) {
1249
1255
  return _nullishCoalesce(_optionalChain([match, 'optionalAccess', _23 => _23[2]]), () => ( null));
1250
1256
  }
1251
1257
  function validateNodeType(nodeType, path, ctx) {
1252
- if (!_chunkKAVH2CX7js.ALLOWED_NODE_TYPES.includes(nodeType)) {
1258
+ if (!_chunkX5XHOSOMjs.ALLOWED_NODE_TYPES.includes(nodeType)) {
1253
1259
  return {
1254
1260
  path: `${path}.type`,
1255
1261
  message: `Block "${ctx.blockId}": Unknown node type "${nodeType}" at ${path}`,
1256
- suggestion: `ALLOWED: ${_chunkKAVH2CX7js.ALLOWED_NODE_TYPES.slice(0, 10).join(", ")}... FIX: Replace "${nodeType}" with a valid node type.`
1262
+ suggestion: `ALLOWED: ${_chunkX5XHOSOMjs.ALLOWED_NODE_TYPES.slice(0, 10).join(", ")}... FIX: Replace "${nodeType}" with a valid node type.`
1257
1263
  };
1258
1264
  }
1259
1265
  return null;
@@ -1263,11 +1269,11 @@ function validateTransforms(transforms, path, ctx) {
1263
1269
  for (let i = 0; i < transforms.length; i++) {
1264
1270
  const transform = transforms[i];
1265
1271
  if (transform.id && typeof transform.id === "string") {
1266
- if (!_chunkKAVH2CX7js.ALLOWED_TRANSFORM_IDS.includes(transform.id)) {
1272
+ if (!_chunkX5XHOSOMjs.ALLOWED_TRANSFORM_IDS.includes(transform.id)) {
1267
1273
  errors.push({
1268
1274
  path: `${path}.transforms[${i}].id`,
1269
1275
  message: `Block "${ctx.blockId}": Unknown transform "${transform.id}"`,
1270
- suggestion: `ALLOWED: ${_chunkKAVH2CX7js.ALLOWED_TRANSFORM_IDS.slice(0, 8).join(", ")}... FIX: Replace with a valid transform ID or remove.`
1276
+ suggestion: `ALLOWED: ${_chunkX5XHOSOMjs.ALLOWED_TRANSFORM_IDS.slice(0, 8).join(", ")}... FIX: Replace with a valid transform ID or remove.`
1271
1277
  });
1272
1278
  }
1273
1279
  }
@@ -2698,7 +2704,7 @@ Given fields: headline (text), description (text), ctaButton (link)
2698
2704
  - **Container nodes** (organize children, $bind: null): section, stack, inline, grid, div
2699
2705
  - **Content nodes** (display data, MUST have $bind): text, richText, media, button, link
2700
2706
 
2701
- Valid types: ${_chunkKAVH2CX7js.ALLOWED_NODE_TYPES.slice(0, 15).join(", ")}...
2707
+ Valid types: ${_chunkX5XHOSOMjs.ALLOWED_NODE_TYPES.slice(0, 15).join(", ")}...
2702
2708
 
2703
2709
  ## LAYOUT DEPTH LIMIT
2704
2710