@riverbankcms/sdk 0.60.3 → 0.60.7

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 (126) hide show
  1. package/dist/_dts/api/src/appointmentSetup.d.ts +2 -2
  2. package/dist/_dts/api/src/bookingConfig.d.ts +6 -0
  3. package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +45 -3
  4. package/dist/_dts/api/src/bookingOperations.d.ts +40 -3
  5. package/dist/_dts/api/src/bookingVerticals.d.ts +1 -0
  6. package/dist/_dts/api/src/courses.d.ts +1 -5
  7. package/dist/_dts/api/src/endpoints.d.ts +80 -1
  8. package/dist/_dts/api/src/index.d.ts +3 -2
  9. package/dist/_dts/api/src/navigation/contracts.d.ts +9 -9
  10. package/dist/_dts/api/src/public/endpoints.d.ts +1 -1
  11. package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +15 -1
  12. package/dist/_dts/api/src/resources.d.ts +1 -1
  13. package/dist/_dts/api/src/siteBanner.d.ts +8 -8
  14. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +3 -39
  15. package/dist/_dts/api/src/siteOnboarding.d.ts +1 -0
  16. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +2 -0
  17. package/dist/_dts/api/src/teamMembers.d.ts +27 -0
  18. package/dist/_dts/blocks/src/system/blocks/courses/shared/schemas.d.ts +35 -29
  19. package/dist/_dts/blocks/src/system/blocks/courses/shared/types.d.ts +1 -5
  20. package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +40 -34
  21. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +1 -5
  22. package/dist/_dts/blocks/src/system/blocks/product-list.d.ts +1 -1
  23. package/dist/_dts/blocks/src/system/blocks/products/shared.d.ts +2 -2
  24. package/dist/_dts/blocks/src/system/blocks/shared/bookingPaymentTerms.d.ts +9 -9
  25. package/dist/_dts/blocks/src/system/blocks/shared/teamMembers.d.ts +24 -0
  26. package/dist/_dts/blocks/src/system/blocks/team-members.d.ts +18 -8
  27. package/dist/_dts/blocks/src/system/constants/background.d.ts +1 -1
  28. package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
  29. package/dist/_dts/blocks/src/system/data/utils.d.ts +1 -1
  30. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +201 -201
  31. package/dist/_dts/blocks/src/system/manifest/validation.d.ts +2 -2
  32. package/dist/_dts/blocks/src/system/node/fragments/ctaButton.d.ts +2 -0
  33. package/dist/_dts/blocks/src/system/node/schema.d.ts +5 -5
  34. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +1 -1
  35. package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +4 -4
  36. package/dist/_dts/blocks/src/system/runtime/shared/themedButtonClass.d.ts +11 -0
  37. package/dist/_dts/blocks/src/system/transforms/registry/ui.d.ts +1 -1
  38. package/dist/_dts/blocks/src/system/transforms/typed.d.ts +3 -3
  39. package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +10 -2
  40. package/dist/_dts/content-model/src/content-types/schema.d.ts +8 -8
  41. package/dist/_dts/content-model/src/metadataConfig.d.ts +1 -0
  42. package/dist/_dts/core/src/branded.d.ts +2 -0
  43. package/dist/_dts/core/src/participants.d.ts +32 -1
  44. package/dist/_dts/core/src/rectification.d.ts +79 -0
  45. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +130 -14
  46. package/dist/_dts/db/src/schemas/forms.d.ts +61 -61
  47. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +17 -15
  48. package/dist/_dts/sdk/src/client/types.d.ts +10 -2
  49. package/dist/_dts/sdk/src/config/types.d.ts +1 -1
  50. package/dist/_dts/sdk/src/config/validation.d.ts +40 -37
  51. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +17 -8
  52. package/dist/_dts/sdk/src/data/prefetchBlockData.d.ts +1 -1
  53. package/dist/_dts/sdk/src/manifest/passes/pass1-fields.d.ts +19 -19
  54. package/dist/_dts/sdk/src/public-api/contracts.d.ts +87 -69
  55. package/dist/_dts/sdk/src/public-api/runtime.d.ts +1 -1
  56. package/dist/_dts/sdk/src/rendering/islands/types.d.ts +2 -5
  57. package/dist/_dts/sdk/src/version.d.ts +1 -1
  58. package/dist/_dts/theme-core/src/accordions/types.d.ts +11 -11
  59. package/dist/_dts/theme-core/src/buttons/personalities/brushed-wash.d.ts +7 -2
  60. package/dist/_dts/theme-core/src/buttons/personalities/confident-chip.d.ts +7 -2
  61. package/dist/_dts/theme-core/src/buttons/personalities/editorial-link.d.ts +7 -2
  62. package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +86 -5
  63. package/dist/_dts/theme-core/src/buttons/personalities/ink-stamp.d.ts +7 -2
  64. package/dist/_dts/theme-core/src/buttons/personalities/pebble.d.ts +7 -2
  65. package/dist/_dts/theme-core/src/buttons/personalities/soft-pill.d.ts +7 -2
  66. package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +20 -20
  67. package/dist/_dts/theme-core/src/buttons/types.d.ts +27 -27
  68. package/dist/_dts/theme-core/src/cards/types.d.ts +17 -17
  69. package/dist/_dts/theme-core/src/inputs/types.d.ts +14 -14
  70. package/dist/_dts/theme-core/src/interactive/baseSchema.d.ts +2 -2
  71. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +438 -438
  72. package/dist/_dts/theme-core/src/navigation/types.d.ts +16 -16
  73. package/dist/_dts/theme-core/src/palette/variants/brand-led.d.ts +33 -9
  74. package/dist/_dts/theme-core/src/palette/variants/high-contrast.d.ts +33 -9
  75. package/dist/_dts/theme-core/src/palette/variants/index.d.ts +200 -4
  76. package/dist/_dts/theme-core/src/palette/variants/soft-natural.d.ts +33 -9
  77. package/dist/_dts/theme-core/src/palette/variants/types.d.ts +25 -25
  78. package/dist/_dts/theme-core/src/palette/variants/warm-neutral.d.ts +33 -9
  79. package/dist/_dts/theme-core/src/schema.d.ts +662 -662
  80. package/dist/_dts/theme-core/src/shared/componentStyles.d.ts +4 -4
  81. package/dist/_dts/theme-core/src/site-styles/curatedChoices.d.ts +27 -0
  82. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +48 -194
  83. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +15 -15
  84. package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +7 -7
  85. package/dist/_dts/theme-core/src/site-styles/index.d.ts +2 -1
  86. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +12 -14
  87. package/dist/_dts/theme-core/src/site-styles/styleTags.d.ts +46 -0
  88. package/dist/_dts/theme-core/src/site-styles/tokenRecipes.d.ts +5 -5
  89. package/dist/_dts/ui/src/badge.d.ts +1 -1
  90. package/dist/_dts/ui/src/button-group.d.ts +1 -1
  91. package/dist/_dts/ui/src/button.d.ts +2 -2
  92. package/dist/_dts/ui/src/callout.d.ts +1 -1
  93. package/dist/_dts/ui/src/card.d.ts +1 -1
  94. package/dist/_dts/ui/src/palette/ColorChooserDialog.d.ts +47 -0
  95. package/dist/_dts/ui/src/palette/ColorSlotButton.d.ts +15 -0
  96. package/dist/_dts/ui/src/palette/ColorSwatchButton.d.ts +15 -0
  97. package/dist/_dts/ui/src/palette/PaletteTokenEditor.d.ts +50 -0
  98. package/dist/_dts/ui/src/palette/hex.d.ts +23 -0
  99. package/dist/_dts/ui/src/palette/index.d.ts +14 -0
  100. package/dist/_dts/ui/src/surface.d.ts +2 -2
  101. package/dist/_dts/ui/src/toggle.d.ts +4 -4
  102. package/dist/cli/index.mjs +1535 -1183
  103. package/dist/client/client.mjs +3944 -3454
  104. package/dist/client/hooks.mjs +2053 -1743
  105. package/dist/client/rendering/client.mjs +311 -167
  106. package/dist/client/rendering/islands.mjs +159 -73
  107. package/dist/client/rendering.mjs +1918 -1447
  108. package/dist/preview-next/before-render.mjs +147 -1
  109. package/dist/preview-next/client/runtime.mjs +2828 -2174
  110. package/dist/preview-next/middleware.mjs +147 -1
  111. package/dist/server/components.mjs +4311 -3928
  112. package/dist/server/config-validation.mjs +2201 -1906
  113. package/dist/server/config.mjs +2201 -1906
  114. package/dist/server/data.mjs +2053 -1743
  115. package/dist/server/index.mjs +171 -4
  116. package/dist/server/next.mjs +3442 -3024
  117. package/dist/server/page-converter.mjs +2109 -1962
  118. package/dist/server/prebuild.mjs +1 -1
  119. package/dist/server/rendering/server.mjs +4021 -3622
  120. package/dist/server/rendering.mjs +4021 -3622
  121. package/dist/server/routing.mjs +2377 -2058
  122. package/dist/server/server.mjs +2244 -1915
  123. package/dist/server/theme-bridge.mjs +130 -126
  124. package/dist/server/theme.mjs +131 -129
  125. package/package.json +1 -1
  126. package/dist/_dts/theme-core/src/site-styles/compatibility.d.ts +0 -109
@@ -27,8 +27,8 @@ export declare const internalLinkSchema: z.ZodObject<{
27
27
  routeId: z.ZodString;
28
28
  entityId: z.ZodOptional<z.ZodString>;
29
29
  entityType: z.ZodOptional<z.ZodEnum<{
30
- page: "page";
31
30
  content: "content";
31
+ page: "page";
32
32
  }>>;
33
33
  href: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNull]>>;
34
34
  title: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNull]>>;
@@ -77,8 +77,8 @@ export declare const linkSchema: z.ZodUnion<readonly [z.ZodObject<{
77
77
  routeId: z.ZodString;
78
78
  entityId: z.ZodOptional<z.ZodString>;
79
79
  entityType: z.ZodOptional<z.ZodEnum<{
80
- page: "page";
81
80
  content: "content";
81
+ page: "page";
82
82
  }>>;
83
83
  href: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNull]>>;
84
84
  title: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNull]>>;
@@ -1,4 +1,5 @@
1
1
  import type { NodeDefinition } from "../schema";
2
+ import type { ThemedButtonSize } from "../../runtime/shared/themedButtonClass";
2
3
  export declare function ctaButton(opts?: {
3
4
  basePath?: string;
4
5
  linkPath?: string;
@@ -14,4 +15,5 @@ export declare function ctaButton(opts?: {
14
15
  };
15
16
  className?: string;
16
17
  variantFallback?: string;
18
+ sizeFallback?: ThemedButtonSize;
17
19
  }): NodeDefinition;
@@ -9,8 +9,8 @@ export declare const bindingSchema: z.ZodObject<{
9
9
  }, z.core.$strip>>>;
10
10
  pick: z.ZodDefault<z.ZodEnum<{
11
11
  value: "value";
12
- collection: "collection";
13
12
  context: "context";
13
+ collection: "collection";
14
14
  }>>;
15
15
  coerce: z.ZodOptional<z.ZodEnum<{
16
16
  string: "string";
@@ -29,8 +29,8 @@ export declare const repeatSchema: z.ZodObject<{
29
29
  }, z.core.$strip>>>;
30
30
  pick: z.ZodDefault<z.ZodEnum<{
31
31
  value: "value";
32
- collection: "collection";
33
32
  context: "context";
33
+ collection: "collection";
34
34
  }>>;
35
35
  coerce: z.ZodOptional<z.ZodEnum<{
36
36
  string: "string";
@@ -44,8 +44,8 @@ export declare const repeatSchema: z.ZodObject<{
44
44
  sortBy: z.ZodOptional<z.ZodObject<{
45
45
  path: z.ZodString;
46
46
  direction: z.ZodDefault<z.ZodEnum<{
47
- desc: "desc";
48
47
  asc: "asc";
48
+ desc: "desc";
49
49
  }>>;
50
50
  }, z.core.$strip>>;
51
51
  }, z.core.$strip>;
@@ -60,8 +60,8 @@ export declare const conditionSchema: z.ZodObject<{
60
60
  }, z.core.$strip>>>;
61
61
  pick: z.ZodDefault<z.ZodEnum<{
62
62
  value: "value";
63
- collection: "collection";
64
63
  context: "context";
64
+ collection: "collection";
65
65
  }>>;
66
66
  coerce: z.ZodOptional<z.ZodEnum<{
67
67
  string: "string";
@@ -84,8 +84,8 @@ export declare const dataScopeSchema: z.ZodObject<{
84
84
  }, z.core.$strip>>>;
85
85
  pick: z.ZodDefault<z.ZodEnum<{
86
86
  value: "value";
87
- collection: "collection";
88
87
  context: "context";
88
+ collection: "collection";
89
89
  }>>;
90
90
  coerce: z.ZodOptional<z.ZodEnum<{
91
91
  string: "string";
@@ -1409,7 +1409,7 @@ export declare const runtimeBackedBlockModes: {
1409
1409
  readonly shop: "passes-memberships";
1410
1410
  };
1411
1411
  export type RuntimeBackedBlockMode<TKind extends RuntimeBackedBlockKind> = typeof runtimeBackedBlockModes[TKind];
1412
- export declare const runtimeBackedBlockKinds: readonly ("form" | "event-registration" | "course-registration" | "event-listing" | "event-calendar" | "shop" | "product-list" | "product-detail" | "cart" | "checkout" | "gifting" | "newsletter-form")[];
1412
+ export declare const runtimeBackedBlockKinds: readonly ("cart" | "event-registration" | "form" | "event-listing" | "event-calendar" | "shop" | "product-list" | "product-detail" | "checkout" | "gifting" | "course-registration" | "newsletter-form")[];
1413
1413
  export declare const runtimeBackedBlockServerRegistry: Readonly<{
1414
1414
  readonly form: React.ElementType<any, keyof React.JSX.IntrinsicElements>;
1415
1415
  readonly 'event-listing': React.ElementType<any, keyof React.JSX.IntrinsicElements>;
@@ -1,7 +1,7 @@
1
1
  import { z } from 'zod';
2
2
  export declare const previewStageSchema: z.ZodEnum<{
3
- published: "published";
4
3
  preview: "preview";
4
+ published: "published";
5
5
  }>;
6
6
  export declare const registrationButtonVariantSchema: z.ZodEnum<{
7
7
  primary: "primary";
@@ -16,8 +16,8 @@ export declare const eventButtonVariantSchema: z.ZodEnum<{
16
16
  }>;
17
17
  export declare const eventLayoutSchema: z.ZodEnum<{
18
18
  compact: "compact";
19
- grid: "grid";
20
19
  stack: "stack";
20
+ grid: "grid";
21
21
  }>;
22
22
  export declare const columnOptionSchema: z.ZodEnum<{
23
23
  2: "2";
@@ -29,12 +29,12 @@ export declare const weekStartSchema: z.ZodEnum<{
29
29
  monday: "monday";
30
30
  }>;
31
31
  export declare const filterAutoShowSchema: z.ZodEnum<{
32
+ never: "never";
32
33
  auto: "auto";
33
34
  always: "always";
34
- never: "never";
35
35
  }>;
36
36
  export declare const calendarTabViewsSchema: z.ZodEnum<{
37
- week: "week";
38
37
  month: "month";
39
38
  both: "both";
39
+ week: "week";
40
40
  }>;
@@ -0,0 +1,11 @@
1
+ export type ThemedButtonVariant = 'primary' | 'secondary' | 'outline' | 'link';
2
+ export type ThemedButtonSize = 'sm' | 'md' | 'lg' | 'xl';
3
+ export type ThemedButtonClassName = string & {
4
+ readonly __brand: 'ThemedButtonClassName';
5
+ };
6
+ export type ThemedButtonClassSpec = Readonly<{
7
+ variant: ThemedButtonVariant;
8
+ size: ThemedButtonSize;
9
+ extraClassName?: string | null;
10
+ }>;
11
+ export declare function themedButtonClass(spec: ThemedButtonClassSpec): ThemedButtonClassName;
@@ -45,8 +45,8 @@ declare const twoColumnContainerClassOptionsSchema: z.ZodObject<{
45
45
  export declare const twoColumnContainerClassTransform: TransformDefinition<z.infer<typeof twoColumnContainerClassOptionsSchema>>;
46
46
  declare const twoColumnFlexBasisOptionsSchema: z.ZodObject<{
47
47
  side: z.ZodEnum<{
48
- image: "image";
49
48
  text: "text";
49
+ image: "image";
50
50
  }>;
51
51
  }, z.core.$strip>;
52
52
  export declare const twoColumnFlexBasisTransform: TransformDefinition<z.infer<typeof twoColumnFlexBasisOptionsSchema>>;
@@ -68,7 +68,7 @@ export declare const transformDefinitions: {
68
68
  reverseClass: string;
69
69
  }>;
70
70
  readonly "ui.twoColumnFlexBasis": TransformDefinition<{
71
- side: "image" | "text";
71
+ side: "text" | "image";
72
72
  }>;
73
73
  readonly "media.fromUrl": TransformDefinition<{
74
74
  width?: number;
@@ -104,9 +104,9 @@ export declare function bindProp(from: string, opts?: {
104
104
  pick?: "value" | "collection" | "context";
105
105
  }): {
106
106
  readonly $bind: {
107
- readonly pick?: "value" | "collection" | "context" | undefined;
107
+ readonly pick?: "value" | "context" | "collection" | undefined;
108
108
  readonly fallback?: {} | null | undefined;
109
- readonly transforms?: TransformStep<"date.formatShort" | "string.uppercase" | "value.fallback" | "layout.maxWidthClass" | "layout.headerRootClass" | "layout.footerRootClass" | "layout.headerRootStyle" | "layout.footerRootStyle" | "ui.headerNavLinkClass" | "ui.headingClassFromAlignment" | "ui.bodyClassFromAlignment" | "ui.stackAlignFromAlignment" | "ui.sectionStateTone" | "ui.heroContentWrapperClass" | "ui.heroCtaJustify" | "ui.heroStackJustifyFromVerticalAlignment" | "ui.heroGridClassFromVerticalAlignment" | "ui.conditionalClass" | "ui.twoColumnContainerClass" | "ui.twoColumnFlexBasis" | "media.fromUrl" | "content.interpolateRichTextTokens" | "boxStyles.semanticGap" | "boxStyles.semanticGapValue" | "layout.footerBottomBarClass" | "layout.footerBottomBarContainerClass" | "layout.footerBottomBarStyle" | "layout.footerSplitNavSingleClass" | "layout.footerLogoClass" | "layout.footerLogoMediaClass" | "layout.footerLogoTextVisible">[] | undefined;
109
+ readonly transforms?: TransformStep<"string.uppercase" | "value.fallback" | "date.formatShort" | "layout.maxWidthClass" | "layout.headerRootClass" | "layout.footerRootClass" | "layout.headerRootStyle" | "layout.footerRootStyle" | "ui.headerNavLinkClass" | "ui.headingClassFromAlignment" | "ui.bodyClassFromAlignment" | "ui.stackAlignFromAlignment" | "ui.sectionStateTone" | "ui.heroContentWrapperClass" | "ui.heroCtaJustify" | "ui.heroStackJustifyFromVerticalAlignment" | "ui.heroGridClassFromVerticalAlignment" | "ui.conditionalClass" | "ui.twoColumnContainerClass" | "ui.twoColumnFlexBasis" | "media.fromUrl" | "content.interpolateRichTextTokens" | "boxStyles.semanticGap" | "boxStyles.semanticGapValue" | "layout.footerBottomBarClass" | "layout.footerBottomBarContainerClass" | "layout.footerBottomBarStyle" | "layout.footerSplitNavSingleClass" | "layout.footerLogoClass" | "layout.footerLogoMediaClass" | "layout.footerLogoTextVisible">[] | undefined;
110
110
  readonly from: string;
111
111
  };
112
112
  };
@@ -19,6 +19,14 @@ export type ActivePreviewField = Readonly<{
19
19
  blockId: EditorBlockId;
20
20
  fieldPath: string;
21
21
  }> | null;
22
+ /**
23
+ * Version of the local draft snapshot that a completed autosave request persisted.
24
+ * The reducer uses this to accept the saved baseline without treating older
25
+ * in-flight saves as acknowledgements of newer local edits.
26
+ */
27
+ export type AutosaveAcknowledgement = Readonly<{
28
+ acknowledgedVersion: number;
29
+ }>;
22
30
  /**
23
31
  * Form-facing metadata facade. Consumers pass plain records for ergonomics;
24
32
  * the reducer core normalizes and brands values at this boundary.
@@ -33,7 +41,7 @@ export type MetadataState = {
33
41
  setCurrentValues: (values: Record<string, unknown> | null) => void;
34
42
  setAtPath: (path: string, value: unknown) => void;
35
43
  getAtPath: <R = unknown>(path: string) => R | undefined;
36
- autosaveSucceeded: (savedValues: Record<string, unknown> | null, sentValues?: Record<string, unknown> | null) => void;
44
+ autosaveSucceeded: (savedValues: Record<string, unknown> | null, acknowledgement?: AutosaveAcknowledgement) => void;
37
45
  autosaveFailed: (message?: string) => void;
38
46
  clearError: () => void;
39
47
  };
@@ -77,7 +85,7 @@ export type DraftsState = {
77
85
  setPending: (blockId: EditorBlockId) => void;
78
86
  clearPending: (blockId: EditorBlockId) => void;
79
87
  setFailed: (blockId: EditorBlockId, message?: string) => void;
80
- autosaveSucceeded: (blockId: EditorBlockId, content: Record<string, unknown> | null) => void;
88
+ autosaveSucceeded: (blockId: EditorBlockId, content: Record<string, unknown> | null, acknowledgement?: AutosaveAcknowledgement) => void;
81
89
  autosaveFailed: (blockId: EditorBlockId, message?: string) => void;
82
90
  setAtPath: (blockId: EditorBlockId, path: string, value: unknown) => void;
83
91
  getAtPath: <T = unknown>(blockId: EditorBlockId, path: string) => T | undefined;
@@ -7,19 +7,19 @@ declare const BaseContentFieldSchema: z.ZodObject<{
7
7
  type: z.ZodEnum<{
8
8
  number: "number";
9
9
  boolean: "boolean";
10
- date: "date";
10
+ link: "link";
11
11
  url: "url";
12
+ date: "date";
13
+ text: "text";
14
+ textarea: "textarea";
15
+ select: "select";
12
16
  media: "media";
13
17
  button: "button";
14
- link: "link";
15
- select: "select";
16
- textarea: "textarea";
17
- text: "text";
18
- richText: "richText";
18
+ group: "group";
19
19
  datetime: "datetime";
20
20
  reference: "reference";
21
+ richText: "richText";
21
22
  repeater: "repeater";
22
- group: "group";
23
23
  }>;
24
24
  label: z.ZodOptional<z.ZodString>;
25
25
  description: z.ZodOptional<z.ZodString>;
@@ -51,8 +51,8 @@ declare const BaseContentFieldSchema: z.ZodObject<{
51
51
  }, z.core.$strip>>;
52
52
  valueFrom: z.ZodOptional<z.ZodEnum<{
53
53
  id: "id";
54
- identifier: "identifier";
55
54
  slug: "slug";
55
+ identifier: "identifier";
56
56
  }>>;
57
57
  ui: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
58
58
  itemLabel: z.ZodOptional<z.ZodString>;
@@ -77,6 +77,7 @@ export declare const ROUTE_METADATA_MANAGED_FIELDS_BY_TYPE: {
77
77
  readonly course: readonly ["draftTitle", "draftSlug", "draftStatus", "scheduledPublishAt"];
78
78
  readonly product: readonly ["draftTitle", "draftSlug", "draftStatus", "scheduledPublishAt"];
79
79
  readonly "product-category": readonly ["draftTitle", "draftSlug", "draftStatus", "scheduledPublishAt"];
80
+ readonly "team-member": readonly ["draftTitle", "draftSlug", "draftStatus", "scheduledPublishAt"];
80
81
  };
81
82
  export declare function getManagedRouteMetadataFieldIdsForType(typeKey: string | null | undefined): ReadonlyArray<RouteMetadataFieldId>;
82
83
  export declare function isRouteMetadataFieldEditableForType(typeKey: string | null | undefined, fieldId: string): boolean;
@@ -60,6 +60,7 @@ export type AppointmentId = Brand<string, 'AppointmentId'>;
60
60
  export type AppointmentServiceId = Brand<string, 'AppointmentServiceId'>;
61
61
  export type AppointmentResourceId = Brand<string, 'AppointmentResourceId'>;
62
62
  export type StaffMemberId = Brand<string, 'StaffMemberId'>;
63
+ export type ContentEntryId = Brand<string, 'ContentEntryId'>;
63
64
  export type StripeInvoiceId = Brand<string, 'StripeInvoiceId'>;
64
65
  export type NewsletterSubscriberId = Brand<string, 'NewsletterSubscriberId'>;
65
66
  export type EmailAuditRowId = Brand<string, 'EmailAuditRowId'>;
@@ -134,6 +135,7 @@ export declare const asAppointmentId: (id: string) => AppointmentId;
134
135
  export declare const asAppointmentServiceId: (id: string) => AppointmentServiceId;
135
136
  export declare const asAppointmentResourceId: (id: string) => AppointmentResourceId;
136
137
  export declare const asStaffMemberId: (id: string) => StaffMemberId;
138
+ export declare const asContentEntryId: (id: string) => ContentEntryId;
137
139
  export declare const asStripeInvoiceId: (id: string) => StripeInvoiceId;
138
140
  export declare const asNewsletterSubscriberId: (id: string) => NewsletterSubscriberId;
139
141
  export declare const asEmailAuditRowId: (id: string) => EmailAuditRowId;
@@ -1,8 +1,9 @@
1
- import type { AppointmentId, AttendeeId, Brand, CustomerId, EnrollmentId, EventAttendeeGuestId, ParticipantId } from './branded';
1
+ import { type AppointmentId, type AttendeeId, type Brand, type CustomerId, type EnrollmentId, type EventAttendeeGuestId, type ParticipantId } from './branded';
2
2
  import { type Result } from './result';
3
3
  export type ParticipantEmail = Brand<string, 'ParticipantEmail'>;
4
4
  export type ParticipantSlotKey = Brand<string, 'ParticipantSlotKey'>;
5
5
  export type ParticipantCount = Brand<number, 'ParticipantCount'>;
6
+ export type ParticipantDisplayLabel = Brand<string, 'ParticipantDisplayLabel'>;
6
7
  export type ParticipantEmailNormalizationError = {
7
8
  kind: 'empty_email';
8
9
  } | {
@@ -13,6 +14,26 @@ export type ParticipantCountParseError = {
13
14
  } | {
14
15
  kind: 'non_positive_participant_count';
15
16
  };
17
+ export type ProvisionalParticipantIdentity = Readonly<{
18
+ kind: 'event_guest';
19
+ eventAttendeeGuestId: EventAttendeeGuestId;
20
+ slotKey: ParticipantSlotKey;
21
+ }>;
22
+ export type ProvisionalParticipantIdentityMetadata = Readonly<{
23
+ kind: 'event_guest';
24
+ source: 'event_guest_backfill';
25
+ eventAttendeeGuestId: EventAttendeeGuestId;
26
+ slotKey: ParticipantSlotKey;
27
+ }>;
28
+ export type ProvisionalParticipantIdentityParseError = {
29
+ kind: 'not_an_object';
30
+ } | {
31
+ kind: 'unsupported_identity_kind';
32
+ } | {
33
+ kind: 'missing_event_attendee_guest_id';
34
+ } | {
35
+ kind: 'missing_slot_key';
36
+ };
16
37
  export declare function asParticipantSlotKey(value: string): ParticipantSlotKey;
17
38
  export declare function asParticipantCount(value: number): ParticipantCount;
18
39
  /**
@@ -24,6 +45,16 @@ export declare function asParticipantCount(value: number): ParticipantCount;
24
45
  export declare function normalizeParticipantEmail(value: string | null | undefined): ParticipantEmail | null;
25
46
  export declare function parseParticipantEmail(value: string | null | undefined): Result<ParticipantEmail, ParticipantEmailNormalizationError>;
26
47
  export declare function parseParticipantCount(value: number): Result<ParticipantCount, ParticipantCountParseError>;
48
+ export declare function provisionalEventGuestParticipantIdentity(input: Readonly<{
49
+ eventAttendeeGuestId: EventAttendeeGuestId;
50
+ slotKey: ParticipantSlotKey;
51
+ }>): ProvisionalParticipantIdentity;
52
+ export declare function encodeProvisionalParticipantIdentity(identity: ProvisionalParticipantIdentity): ProvisionalParticipantIdentityMetadata;
53
+ export declare function parseProvisionalParticipantIdentity(value: unknown): Result<ProvisionalParticipantIdentity, ProvisionalParticipantIdentityParseError>;
54
+ export declare function deriveParticipantDisplayLabel(input: Readonly<{
55
+ displayName: string | null;
56
+ emailNormalized: ParticipantEmail | null;
57
+ }>): ParticipantDisplayLabel;
27
58
  export type ParticipantIdentityState = {
28
59
  kind: 'booker_supplied';
29
60
  } | {
@@ -2,3 +2,82 @@ export declare const RECTIFICATION_SURFACES: readonly ["customer_profile", "book
2
2
  export type RectificationSurface = (typeof RECTIFICATION_SURFACES)[number];
3
3
  export declare const RECTIFICATION_ISSUE_URL_BASE: "https://github.com/wubss/builder/issues";
4
4
  export type RectificationIssueUrl<TNumber extends number = number> = `${typeof RECTIFICATION_ISSUE_URL_BASE}/${TNumber}`;
5
+ /**
6
+ * Names which identity concept a rectification surface is allowed to mutate or
7
+ * explain, so customer, participant, snapshot, and ledger corrections cannot blur.
8
+ */
9
+ export type RectificationIdentityBoundary = Readonly<{
10
+ kind: 'customer_commercial_current_identity';
11
+ }> | Readonly<{
12
+ kind: 'customer_backed_participant_current_identity';
13
+ }> | Readonly<{
14
+ kind: 'person_record_current_note';
15
+ }> | Readonly<{
16
+ kind: 'immutable_subject_snapshot';
17
+ }> | Readonly<{
18
+ kind: 'newsletter_current_subscription_identity';
19
+ }> | Readonly<{
20
+ kind: 'finance_integrity_record';
21
+ }> | Readonly<{
22
+ kind: 'immutable_audit_history';
23
+ }> | Readonly<{
24
+ kind: 'derived_history_projection_or_ledger';
25
+ }>;
26
+ export declare const RECTIFICATION_IDENTITY_BOUNDARIES: {
27
+ readonly customer_commercial_current_identity: {
28
+ readonly kind: "customer_commercial_current_identity";
29
+ };
30
+ readonly customer_backed_participant_current_identity: {
31
+ readonly kind: "customer_backed_participant_current_identity";
32
+ };
33
+ readonly person_record_current_note: {
34
+ readonly kind: "person_record_current_note";
35
+ };
36
+ readonly immutable_subject_snapshot: {
37
+ readonly kind: "immutable_subject_snapshot";
38
+ };
39
+ readonly newsletter_current_subscription_identity: {
40
+ readonly kind: "newsletter_current_subscription_identity";
41
+ };
42
+ readonly finance_integrity_record: {
43
+ readonly kind: "finance_integrity_record";
44
+ };
45
+ readonly immutable_audit_history: {
46
+ readonly kind: "immutable_audit_history";
47
+ };
48
+ readonly derived_history_projection_or_ledger: {
49
+ readonly kind: "derived_history_projection_or_ledger";
50
+ };
51
+ };
52
+ /**
53
+ * Describes what happens to historical copies when the current identity source
54
+ * is corrected; immutable evidence is retained unless a plan says otherwise.
55
+ */
56
+ export type RectificationHistoryPropagationPlan = Readonly<{
57
+ kind: 'update_current_identity_only';
58
+ }> | Readonly<{
59
+ kind: 'append_correction_note';
60
+ }> | Readonly<{
61
+ kind: 'annotate_immutable_snapshot';
62
+ }> | Readonly<{
63
+ kind: 'manual_review_required';
64
+ }> | Readonly<{
65
+ kind: 'blocked_immutable_history';
66
+ }>;
67
+ export declare const RECTIFICATION_HISTORY_PROPAGATION_PLANS: {
68
+ readonly update_current_identity_only: {
69
+ readonly kind: "update_current_identity_only";
70
+ };
71
+ readonly append_correction_note: {
72
+ readonly kind: "append_correction_note";
73
+ };
74
+ readonly annotate_immutable_snapshot: {
75
+ readonly kind: "annotate_immutable_snapshot";
76
+ };
77
+ readonly manual_review_required: {
78
+ readonly kind: "manual_review_required";
79
+ };
80
+ readonly blocked_immutable_history: {
81
+ readonly kind: "blocked_immutable_history";
82
+ };
83
+ };