@riverbankcms/sdk 0.124.0 → 0.126.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 (130) hide show
  1. package/README.md +3 -1
  2. package/dist/{PreviewEditorSidebar-DBmAJJkQ.mjs → PreviewEditorSidebar-DcYJxTgc.mjs} +67 -266
  3. package/dist/{PreviewEditorUI-CfGaz9cY.mjs → PreviewEditorUI-Ctt1yTJr.mjs} +3 -3
  4. package/dist/{PreviewQueryProvider-BH-3-jSj.mjs → PreviewQueryProvider-DgFDIwvK.mjs} +1 -1
  5. package/dist/{SdkPreviewModeRuntime-BW9Z8j8T.mjs → SdkPreviewModeRuntime-CvW1vdQ4.mjs} +38 -30
  6. package/dist/{SiteChromeCustomizeContext-2z8moxYf.mjs → SiteChromeCustomizeContext-C87qlKWw.mjs} +493 -1378
  7. package/dist/_dts/ai/src/contracts/proposals.d.ts +1354 -202
  8. package/dist/_dts/api/src/accessAdmin.d.ts +2 -14
  9. package/dist/_dts/api/src/common/envelope.d.ts +1 -1
  10. package/dist/_dts/api/src/contentRuntime.d.ts +0 -2
  11. package/dist/_dts/api/src/endpoints.d.ts +0 -7
  12. package/dist/_dts/api/src/sdk-event-upsert.d.ts +42 -0
  13. package/dist/_dts/api/src/sdkContracts.d.ts +11 -9
  14. package/dist/_dts/api/src/siteAccessAdmin.d.ts +23 -0
  15. package/dist/_dts/api/src/siteOperations.d.ts +18 -1
  16. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +1 -14
  17. package/dist/_dts/billing/src/plans/types.d.ts +24 -5
  18. package/dist/_dts/blocks/src/contracts/non-block-islands.d.ts +4 -0
  19. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +2 -0
  20. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +1 -0
  21. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/logic.d.ts +2 -0
  22. package/dist/_dts/blocks/src/system/runtime/nodes/event-details.client.d.ts +3 -1
  23. package/dist/_dts/blocks/src/system/runtime/nodes/event-details.server.d.ts +2 -1
  24. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationStripeReturn.d.ts +15 -2
  25. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +331 -19
  26. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +1 -2
  27. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +2 -3
  28. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +1 -2
  29. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +3 -12
  30. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +3 -13
  31. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +8 -100
  32. package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +1 -4
  33. package/dist/_dts/preview-next/src/client/preview/styleConfiguratorApplyPayload.d.ts +1 -15
  34. package/dist/_dts/preview-next/src/client/preview/styleConfiguratorSnapshot.d.ts +11 -21
  35. package/dist/_dts/sdk/src/cli/commands/event.d.ts +2 -2
  36. package/dist/_dts/sdk/src/cli/commands/eventOccurrenceSchedule.d.ts +12 -0
  37. package/dist/_dts/sdk/src/cli/commands/push/pushAllExtras.d.ts +6 -0
  38. package/dist/_dts/sdk/src/cli/commands/style.d.ts +1 -1
  39. package/dist/_dts/sdk/src/cli/content/legacyEventScheduleShapeError.d.ts +5 -0
  40. package/dist/_dts/sdk/src/cli/content/localEventSchedule.d.ts +17 -0
  41. package/dist/_dts/sdk/src/cli/content/reader.d.ts +5 -10
  42. package/dist/_dts/sdk/src/cli/migrations/events.d.ts +1 -1
  43. package/dist/_dts/sdk/src/cli/site-commands/eventScheduleCompiler.d.ts +24 -0
  44. package/dist/_dts/sdk/src/client/management/http.d.ts +1 -1
  45. package/dist/_dts/sdk/src/client/management/types.d.ts +3 -28
  46. package/dist/_dts/sdk/src/config/index.d.ts +1 -1
  47. package/dist/_dts/sdk/src/public-api/contracts.d.ts +5 -20
  48. package/dist/_dts/sdk/src/rendering/index.d.ts +1 -1
  49. package/dist/_dts/sdk/src/version.d.ts +1 -1
  50. package/dist/_dts/site-commands/src/commandContract.d.ts +33 -5
  51. package/dist/_dts/site-commands/src/commandDomain.d.ts +2 -2
  52. package/dist/_dts/site-commands/src/commands.d.ts +38 -9
  53. package/dist/_dts/site-commands/src/siteStyleCommandSchema.d.ts +28 -1
  54. package/dist/_dts/site-commands/src/siteStyleSelectionSchemaBuilder.d.ts +4 -4
  55. package/dist/_dts/theme-core/src/palette/concretePalette.d.ts +20 -0
  56. package/dist/_dts/theme-core/src/palette/curated/index.d.ts +2 -17
  57. package/dist/_dts/theme-core/src/palette/index.d.ts +1 -6
  58. package/dist/_dts/theme-core/src/palette/schema.d.ts +39 -0
  59. package/dist/_dts/theme-core/src/schema.d.ts +38 -26
  60. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +4 -6
  61. package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +5 -6
  62. package/dist/cli/index.mjs +631 -525
  63. package/dist/cli/init-docs/content/cli-reference.md +6 -3
  64. package/dist/cli/init-docs/content/content-management.md +24 -13
  65. package/dist/client/{DiscountCodeDisclosure-DxvjKvck.mjs → DiscountCodeDisclosure-DS0AuFWW.mjs} +1 -1
  66. package/dist/client/{EventCombined.client-BydMGc4c.mjs → EventCombined.client-DtMxLr7q.mjs} +2 -2
  67. package/dist/client/{EventListing.client-vpzhhysN.mjs → EventListing.client-BdLSRNg1.mjs} +2 -2
  68. package/dist/client/{LeafletStaticMap-CB07rpf8.mjs → LeafletStaticMap-BrpC6vsT.mjs} +1 -1
  69. package/dist/client/{MagicLinkForm-BzyRJ8VF.mjs → MagicLinkForm-Bt3IuLMy.mjs} +1 -1
  70. package/dist/client/{StepIndicator-CTcGf8Be.mjs → StepIndicator-CBYPFVoy.mjs} +2 -2
  71. package/dist/client/{accordion-B-DUDLRD.mjs → accordion-BqqwPJWM.mjs} +1 -1
  72. package/dist/client/{bookingForm-DSbClLcZ.mjs → bookingForm-SneP3yxC.mjs} +5 -6
  73. package/dist/client/bookings.mjs +190 -24
  74. package/dist/client/{carousel-B6Ccdx8M.mjs → carousel-BTIR9L3I.mjs} +1 -1
  75. package/dist/client/{cart-BZh8G8wM.mjs → cart-bqiqd8SX.mjs} +3 -3
  76. package/dist/client/{checkout-o6zaC-kM.mjs → checkout-WbTFV5v4.mjs} +3 -3
  77. package/dist/client/client.mjs +175 -223
  78. package/dist/client/{courseRegistration-Cf11pNDs.mjs → courseRegistration-BcemLAdN.mjs} +6 -7
  79. package/dist/client/{eventCalendar-BeXrdsSE.mjs → eventCalendar-CsxIw0V_.mjs} +4 -4
  80. package/dist/client/{eventCombined-DA76PZgG.mjs → eventCombined-B6XMoHfa.mjs} +2 -2
  81. package/dist/client/{eventDetails-BLxg0rok.mjs → eventDetails-BJaoPPfo.mjs} +10 -5
  82. package/dist/client/{eventListing-tO9LheBX.mjs → eventListing-DgwdYHRT.mjs} +2 -2
  83. package/dist/client/{eventRegistration-Cnene9D9.mjs → eventRegistration-C0O3folu.mjs} +30 -22
  84. package/dist/client/{form-DZf72CHB.mjs → form-Bk9txGFt.mjs} +1 -1
  85. package/dist/client/{headerSection-Hioja5Cr.mjs → headerSection-yIBt0yTv.mjs} +2 -2
  86. package/dist/client/hooks.mjs +54 -102
  87. package/dist/client/{locationMap-DwhUXEix.mjs → locationMap-C-3KIpv-.mjs} +2 -2
  88. package/dist/client/{newsletterForm-C350bEQf.mjs → newsletterForm-CzB8g8h2.mjs} +1 -1
  89. package/dist/client/{pricing-BYWN_ATa.mjs → pricing-C1QeDes_.mjs} +1 -1
  90. package/dist/client/{productDetail-CCqCyXgU.mjs → productDetail-w7SBp5uc.mjs} +3 -3
  91. package/dist/client/{productList-BAiNJrOU.mjs → productList-D0tGKHGf.mjs} +3 -3
  92. package/dist/client/{propsDecoder-DeunRj6m.mjs → propsDecoder-Bcin2DB3.mjs} +172 -11
  93. package/dist/client/rendering/client.mjs +322 -363
  94. package/dist/client/rendering/islands.mjs +18 -18
  95. package/dist/client/rendering.mjs +231 -272
  96. package/dist/client/{useDiscountCodeUi-I-92-x2V.mjs → scrollToBlock-h-o_STf_.mjs} +18 -2
  97. package/dist/client/{shop-DUmCdBtw.mjs → shop-BGzmL8O_.mjs} +5 -6
  98. package/dist/client/{shop-commerce-CY27mEUr.mjs → shop-commerce-lX8QxjX-.mjs} +4 -4
  99. package/dist/client/{shop-commerce-store-ChXPbWfa.mjs → shop-commerce-store-CEurARtu.mjs} +1 -1
  100. package/dist/client/{shopShared-q0kin1cv.mjs → shopShared-DXxH8xxw.mjs} +2 -2
  101. package/dist/client/{useEventFilters-DlcVluZh.mjs → useEventFilters-B591g9vd.mjs} +2 -2
  102. package/dist/client/{usePolling-Bz7GFV_a.mjs → usePolling-BvnChV4m.mjs} +2 -2
  103. package/dist/preview-next/before-render.mjs +0 -7
  104. package/dist/preview-next/client/runtime.mjs +4 -4
  105. package/dist/preview-next/middleware.mjs +0 -7
  106. package/dist/{previewAuthStore-CJX21dGi.mjs → previewAuthStore-Dev9CdG9.mjs} +0 -7
  107. package/dist/{sdk-runtime-OnPM8Z69.mjs → sdk-runtime-M__i3Jce.mjs} +2 -2
  108. package/dist/{separator-CPtfzHqA.mjs → separator-VSlnI9bc.mjs} +1 -1
  109. package/dist/server/components.mjs +99 -141
  110. package/dist/server/config-validation.mjs +54 -102
  111. package/dist/server/config.mjs +54 -102
  112. package/dist/server/data.mjs +54 -102
  113. package/dist/server/index.mjs +1 -8
  114. package/dist/server/next.mjs +103 -152
  115. package/dist/server/page-converter.mjs +54 -102
  116. package/dist/server/prebuild.mjs +1 -1
  117. package/dist/server/rendering/server.mjs +62 -104
  118. package/dist/server/rendering.mjs +100 -142
  119. package/dist/server/routing.mjs +75 -147
  120. package/dist/server/server.mjs +55 -110
  121. package/dist/server/theme-bridge.mjs +172 -162
  122. package/dist/server/theme.mjs +167 -11
  123. package/package.json +1 -1
  124. package/dist/_dts/theme-core/src/palette/editorState.d.ts +0 -75
  125. package/dist/_dts/theme-core/src/palette/libraryModel.d.ts +0 -64
  126. package/dist/_dts/theme-core/src/palette/persistenceReadSource.d.ts +0 -81
  127. package/dist/_dts/theme-core/src/palette/resolveSelection.d.ts +0 -75
  128. package/dist/_dts/theme-core/src/palette/selection.d.ts +0 -74
  129. package/dist/_dts/theme-core/src/palette/sitePalettePersistence.d.ts +0 -34
  130. package/dist/client/scrollToBlock-C86BYkyV.mjs +0 -17
@@ -1517,7 +1517,7 @@ const PALETTE_TOKEN_NAMES = [
1517
1517
  "text",
1518
1518
  "border"
1519
1519
  ];
1520
- z$1.enum(PALETTE_TOKEN_NAMES);
1520
+ const paletteTokenNameSchema = z$1.enum(PALETTE_TOKEN_NAMES);
1521
1521
  const themeColorBaseTokenNames = [
1522
1522
  ...PALETTE_TOKEN_NAMES,
1523
1523
  ...blockColorTokenNames,
@@ -1998,6 +1998,172 @@ const mediaSchema$1 = z.object({
1998
1998
  transform: transformSchema$1.optional()
1999
1999
  });
2000
2000
  //#endregion
2001
+ //#region ../theme-core/src/palette/colors.ts
2002
+ const HEX_COLOR_REGEX = /^#[0-9a-f]{6}$/;
2003
+ const NORMALIZABLE_HEX_REGEX = /^#(?:[0-9a-f]{3}|[0-9a-f]{6})$/i;
2004
+ const THEME_PALETTE_COLOR_ORDER = [
2005
+ "primary",
2006
+ "secondary",
2007
+ "accent",
2008
+ "success",
2009
+ "warning",
2010
+ "destructive",
2011
+ "background",
2012
+ "surface",
2013
+ "surfaceAlt",
2014
+ "muted",
2015
+ "text",
2016
+ "primaryForeground",
2017
+ "border"
2018
+ ];
2019
+ const hexColorSchema = z$1.string().regex(HEX_COLOR_REGEX, "Hex must be #RRGGBB (lowercase)").transform((value) => value);
2020
+ const paletteModeSchema = z$1.enum(["light", "dark"]);
2021
+ const PALETTE_VALUE_KEY_PREFIX = "palette-value:v1|";
2022
+ z$1.string().regex(/^[0-9a-f]{64}$/, "Palette hash must be a lowercase SHA-256 value").transform((value) => value);
2023
+ const paletteColorsSchema = z$1.object({
2024
+ primary: hexColorSchema,
2025
+ primaryForeground: hexColorSchema,
2026
+ secondary: hexColorSchema,
2027
+ accent: hexColorSchema,
2028
+ success: hexColorSchema,
2029
+ warning: hexColorSchema,
2030
+ destructive: hexColorSchema,
2031
+ background: hexColorSchema,
2032
+ surface: hexColorSchema,
2033
+ surfaceAlt: hexColorSchema,
2034
+ muted: hexColorSchema,
2035
+ text: hexColorSchema,
2036
+ border: hexColorSchema
2037
+ }).strict().transform((value) => value);
2038
+ function normalizePaletteHex(value) {
2039
+ if (!NORMALIZABLE_HEX_REGEX.test(value)) return null;
2040
+ const normalized = value.toLowerCase();
2041
+ if (normalized.length === 7) return normalized;
2042
+ const triplet = normalized.slice(1);
2043
+ const red = triplet.charAt(0);
2044
+ const green = triplet.charAt(1);
2045
+ const blue = triplet.charAt(2);
2046
+ return `#${red}${red}${green}${green}${blue}${blue}`;
2047
+ }
2048
+ function paletteColorsFromEntries(entries) {
2049
+ const values = {};
2050
+ for (const entry of entries) {
2051
+ const parsedRole = paletteTokenNameSchema.safeParse(entry.name);
2052
+ if (!parsedRole.success) return {
2053
+ ok: false,
2054
+ error: {
2055
+ kind: "unknown-role",
2056
+ role: entry.name
2057
+ }
2058
+ };
2059
+ const role = parsedRole.data;
2060
+ if (values[role] !== void 0) return {
2061
+ ok: false,
2062
+ error: {
2063
+ kind: "duplicate-role",
2064
+ role
2065
+ }
2066
+ };
2067
+ const hex = normalizePaletteHex(entry.hex);
2068
+ if (!hex) return {
2069
+ ok: false,
2070
+ error: {
2071
+ kind: "invalid-color",
2072
+ role,
2073
+ value: entry.hex
2074
+ }
2075
+ };
2076
+ values[role] = hex;
2077
+ }
2078
+ const missing = PALETTE_TOKEN_NAMES.filter((role) => values[role] === void 0);
2079
+ if (missing.length > 0) return {
2080
+ ok: false,
2081
+ error: {
2082
+ kind: "missing-roles",
2083
+ roles: missing
2084
+ }
2085
+ };
2086
+ return {
2087
+ ok: true,
2088
+ colors: paletteColorsSchema.parse(values)
2089
+ };
2090
+ }
2091
+ function paletteColorEntries(colors) {
2092
+ return THEME_PALETTE_COLOR_ORDER.map((name) => ({
2093
+ name,
2094
+ hex: colors[name]
2095
+ }));
2096
+ }
2097
+ function paletteColorFingerprint(colors) {
2098
+ return PALETTE_TOKEN_NAMES.map((name) => `${name}:${colors[name]}`).join("|");
2099
+ }
2100
+ function canonicalPaletteHashInput(colors, mode) {
2101
+ return `${mode}|${paletteColorFingerprint(colors)}`;
2102
+ }
2103
+ /**
2104
+ * The shared TypeScript/SQL protocol. Do not reorder roles: the order comes
2105
+ * from PALETTE_TOKEN_NAMES through canonicalPaletteHashInput.
2106
+ */
2107
+ function paletteValueKey(colors, mode) {
2108
+ return `${PALETTE_VALUE_KEY_PREFIX}${canonicalPaletteHashInput(colors, mode)}`;
2109
+ }
2110
+ /** Parses only the exact v1 canonical form emitted by paletteValueKey. */
2111
+ function parsePaletteValueKey(value) {
2112
+ if (typeof value !== "string" || !value.startsWith(PALETTE_VALUE_KEY_PREFIX)) return null;
2113
+ const [rawMode, ...rawRoles] = value.slice(17).split("|");
2114
+ const mode = paletteModeSchema.safeParse(rawMode);
2115
+ if (!mode.success || rawRoles.length !== PALETTE_TOKEN_NAMES.length) return null;
2116
+ const colors = paletteColorsFromEntries(rawRoles.map((roleValue) => {
2117
+ const separator = roleValue.indexOf(":");
2118
+ return separator === -1 ? {
2119
+ name: "",
2120
+ hex: ""
2121
+ } : {
2122
+ name: roleValue.slice(0, separator),
2123
+ hex: roleValue.slice(separator + 1)
2124
+ };
2125
+ }));
2126
+ if (!colors.ok || paletteValueKey(colors.colors, mode.data) !== value) return null;
2127
+ return value;
2128
+ }
2129
+ z$1.string().transform((value, ctx) => {
2130
+ const parsed = parsePaletteValueKey(value);
2131
+ if (parsed) return parsed;
2132
+ ctx.addIssue({
2133
+ code: "custom",
2134
+ message: "Invalid canonical palette value key"
2135
+ });
2136
+ return z$1.NEVER;
2137
+ });
2138
+ //#endregion
2139
+ //#region ../theme-core/src/palette/schema.ts
2140
+ const colourHexString = z$1.string().regex(/^#([0-9A-Fa-f]{3}){1,2}$/);
2141
+ const paletteColorSchema = z$1.object({
2142
+ name: z$1.string().min(1),
2143
+ hex: colourHexString
2144
+ });
2145
+ const paletteMetaSchema = z$1.object({ mode: z$1.enum(["light", "dark"]) });
2146
+ const paletteSchema = z$1.object({
2147
+ colors: z$1.array(paletteColorSchema),
2148
+ meta: paletteMetaSchema
2149
+ }).transform((palette, ctx) => {
2150
+ const colors = paletteColorsFromEntries(palette.colors);
2151
+ if (!colors.ok) {
2152
+ ctx.addIssue({
2153
+ code: "custom",
2154
+ message: `Invalid complete palette: ${colors.error.kind}`
2155
+ });
2156
+ return z$1.NEVER;
2157
+ }
2158
+ return {
2159
+ colors: paletteColorEntries(colors.colors).map(({ name, hex }) => ({
2160
+ name: String(name),
2161
+ hex: String(hex)
2162
+ })),
2163
+ meta: palette.meta
2164
+ };
2165
+ });
2166
+ //#endregion
2001
2167
  //#region ../theme-core/src/cards/types.ts
2002
2168
  const cardVariantRoleValues = ["default", "alternative"];
2003
2169
  const boxlessCardVariantValue = "none";
@@ -3067,16 +3233,6 @@ const axesSchema = z$1.object({
3067
3233
  "expressive"
3068
3234
  ])
3069
3235
  });
3070
- const colourHexString = z$1.string().regex(/^#([0-9A-Fa-f]{3}){1,2}$/);
3071
- const paletteColorSchema = z$1.object({
3072
- name: z$1.string().min(1),
3073
- hex: colourHexString
3074
- });
3075
- const paletteMetaSchema = z$1.object({ mode: z$1.enum(["light", "dark"]) });
3076
- const paletteSchema = z$1.object({
3077
- colors: z$1.array(paletteColorSchema),
3078
- meta: paletteMetaSchema
3079
- });
3080
3236
  const typographyStyleSchema = z$1.object({
3081
3237
  family: z$1.string().min(1),
3082
3238
  weight: z$1.enum([
@@ -9584,6 +9740,10 @@ createBlockManifest({
9584
9740
  from: "$root.occurrenceContext",
9585
9741
  fallback: null
9586
9742
  } },
9743
+ subject: { $bind: {
9744
+ from: "$root.subject",
9745
+ fallback: null
9746
+ } },
9587
9747
  events: { $bind: { from: "data.eventDetailsData.events" } },
9588
9748
  showVenue: { $bind: { from: "content.showVenue" } },
9589
9749
  showMap: { $bind: { from: "content.showMap" } },
@@ -9686,6 +9846,7 @@ const eventDetailsOccurrenceContextSchema = z$1.object({
9686
9846
  });
9687
9847
  const eventDetailsIslandSchema = z$1.object({
9688
9848
  occurrenceContext: eventDetailsOccurrenceContextSchema.nullable().optional(),
9849
+ subject: eventRegistrationPageSurfaceSubjectSchema.nullable().optional(),
9689
9850
  events: z$1.array(publicEventSchema).nullable().optional(),
9690
9851
  showVenue: z$1.boolean().optional(),
9691
9852
  showMap: z$1.boolean().optional(),