@riverbankcms/sdk 0.60.6 → 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 (92) 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/courses.d.ts +1 -5
  6. package/dist/_dts/api/src/endpoints.d.ts +80 -1
  7. package/dist/_dts/api/src/index.d.ts +3 -2
  8. package/dist/_dts/api/src/navigation/contracts.d.ts +9 -9
  9. package/dist/_dts/api/src/public/endpoints.d.ts +1 -1
  10. package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +15 -1
  11. package/dist/_dts/api/src/resources.d.ts +1 -1
  12. package/dist/_dts/api/src/siteBanner.d.ts +8 -8
  13. package/dist/_dts/api/src/siteOnboarding.d.ts +1 -0
  14. package/dist/_dts/api/src/teamMembers.d.ts +27 -0
  15. package/dist/_dts/blocks/src/system/blocks/courses/shared/schemas.d.ts +35 -29
  16. package/dist/_dts/blocks/src/system/blocks/courses/shared/types.d.ts +1 -5
  17. package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +40 -34
  18. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +1 -5
  19. package/dist/_dts/blocks/src/system/blocks/product-list.d.ts +1 -1
  20. package/dist/_dts/blocks/src/system/blocks/products/shared.d.ts +2 -2
  21. package/dist/_dts/blocks/src/system/blocks/shared/bookingPaymentTerms.d.ts +9 -9
  22. package/dist/_dts/blocks/src/system/blocks/shared/teamMembers.d.ts +24 -0
  23. package/dist/_dts/blocks/src/system/blocks/team-members.d.ts +18 -8
  24. package/dist/_dts/blocks/src/system/constants/background.d.ts +1 -1
  25. package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
  26. package/dist/_dts/blocks/src/system/data/utils.d.ts +1 -1
  27. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +201 -201
  28. package/dist/_dts/blocks/src/system/manifest/validation.d.ts +2 -2
  29. package/dist/_dts/blocks/src/system/node/schema.d.ts +5 -5
  30. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +1 -1
  31. package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +4 -4
  32. package/dist/_dts/blocks/src/system/transforms/registry/ui.d.ts +1 -1
  33. package/dist/_dts/blocks/src/system/transforms/typed.d.ts +3 -3
  34. package/dist/_dts/content-model/src/content-types/schema.d.ts +8 -8
  35. package/dist/_dts/content-model/src/metadataConfig.d.ts +1 -0
  36. package/dist/_dts/core/src/branded.d.ts +2 -0
  37. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +124 -8
  38. package/dist/_dts/db/src/schemas/forms.d.ts +61 -61
  39. package/dist/_dts/sdk/src/client/types.d.ts +9 -2
  40. package/dist/_dts/sdk/src/config/types.d.ts +1 -1
  41. package/dist/_dts/sdk/src/config/validation.d.ts +40 -37
  42. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +17 -8
  43. package/dist/_dts/sdk/src/data/prefetchBlockData.d.ts +1 -1
  44. package/dist/_dts/sdk/src/manifest/passes/pass1-fields.d.ts +19 -19
  45. package/dist/_dts/sdk/src/public-api/contracts.d.ts +87 -69
  46. package/dist/_dts/sdk/src/public-api/runtime.d.ts +1 -1
  47. package/dist/_dts/sdk/src/rendering/islands/types.d.ts +2 -5
  48. package/dist/_dts/sdk/src/version.d.ts +1 -1
  49. package/dist/_dts/theme-core/src/accordions/types.d.ts +11 -11
  50. package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +10 -10
  51. package/dist/_dts/theme-core/src/buttons/types.d.ts +27 -27
  52. package/dist/_dts/theme-core/src/cards/types.d.ts +17 -17
  53. package/dist/_dts/theme-core/src/inputs/types.d.ts +14 -14
  54. package/dist/_dts/theme-core/src/interactive/baseSchema.d.ts +2 -2
  55. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +438 -438
  56. package/dist/_dts/theme-core/src/navigation/types.d.ts +16 -16
  57. package/dist/_dts/theme-core/src/palette/variants/types.d.ts +15 -15
  58. package/dist/_dts/theme-core/src/schema.d.ts +662 -662
  59. package/dist/_dts/theme-core/src/shared/componentStyles.d.ts +4 -4
  60. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +15 -15
  61. package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +7 -7
  62. package/dist/_dts/theme-core/src/site-styles/styleTags.d.ts +1 -1
  63. package/dist/_dts/theme-core/src/site-styles/tokenRecipes.d.ts +5 -5
  64. package/dist/_dts/ui/src/badge.d.ts +1 -1
  65. package/dist/_dts/ui/src/button-group.d.ts +1 -1
  66. package/dist/_dts/ui/src/button.d.ts +2 -2
  67. package/dist/_dts/ui/src/callout.d.ts +1 -1
  68. package/dist/_dts/ui/src/card.d.ts +1 -1
  69. package/dist/_dts/ui/src/surface.d.ts +2 -2
  70. package/dist/_dts/ui/src/toggle.d.ts +4 -4
  71. package/dist/cli/index.mjs +276 -24
  72. package/dist/client/client.mjs +607 -306
  73. package/dist/client/hooks.mjs +272 -23
  74. package/dist/client/rendering/client.mjs +179 -130
  75. package/dist/client/rendering/islands.mjs +68 -43
  76. package/dist/client/rendering.mjs +646 -363
  77. package/dist/preview-next/before-render.mjs +147 -1
  78. package/dist/preview-next/client/runtime.mjs +338 -43
  79. package/dist/preview-next/middleware.mjs +147 -1
  80. package/dist/server/components.mjs +727 -470
  81. package/dist/server/config-validation.mjs +488 -254
  82. package/dist/server/config.mjs +488 -254
  83. package/dist/server/data.mjs +272 -23
  84. package/dist/server/index.mjs +168 -2
  85. package/dist/server/next.mjs +476 -185
  86. package/dist/server/page-converter.mjs +335 -249
  87. package/dist/server/prebuild.mjs +1 -1
  88. package/dist/server/rendering/server.mjs +742 -469
  89. package/dist/server/rendering.mjs +742 -469
  90. package/dist/server/routing.mjs +274 -24
  91. package/dist/server/server.mjs +291 -24
  92. package/package.json +1 -1
@@ -850,13 +850,150 @@ var ENDPOINT_DEFINITIONS = {
850
850
  "server:internal_error"
851
851
  ]
852
852
  },
853
- deleteAppointmentResource: {
853
+ removeAppointmentResource: {
854
854
  path: "/sites/{siteId}/bookings/resources/{resourceId}",
855
855
  method: "DELETE",
856
856
  auth: "user",
857
857
  responseKind: "json",
858
858
  errors: ["resource:not_found", "server:internal_error"]
859
859
  },
860
+ createTeamMemberProfile: {
861
+ path: "/sites/{siteId}/bookings/resources/{resourceId}/profile",
862
+ method: "POST",
863
+ auth: "user",
864
+ responseKind: "json",
865
+ errors: [
866
+ "validation:invalid_input",
867
+ "resource:not_found",
868
+ "resource:conflict",
869
+ "server:internal_error"
870
+ ]
871
+ },
872
+ updateTeamMemberProfilePolicy: {
873
+ path: "/sites/{siteId}/bookings/resources/profile-policy",
874
+ method: "PUT",
875
+ auth: "user",
876
+ responseKind: "json",
877
+ errors: ["validation:invalid_input", "server:internal_error"]
878
+ },
879
+ updateTeamMemberProfileContent: {
880
+ path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/content",
881
+ method: "PUT",
882
+ tags: [
883
+ "site-{siteId}",
884
+ "content-{siteId}-team-member",
885
+ "content-entry-{entryId}"
886
+ ],
887
+ auth: "user",
888
+ responseKind: "json",
889
+ errors: [
890
+ "validation:invalid_input",
891
+ "resource:not_found",
892
+ "resource:conflict",
893
+ "server:internal_error"
894
+ ]
895
+ },
896
+ publishTeamMemberProfile: {
897
+ path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/publish",
898
+ method: "POST",
899
+ tags: [
900
+ "site-{siteId}",
901
+ "content-{siteId}-team-member",
902
+ "content-entry-{entryId}"
903
+ ],
904
+ auth: "user",
905
+ responseKind: "json",
906
+ errors: [
907
+ "validation:invalid_input",
908
+ "resource:not_found",
909
+ "server:internal_error"
910
+ ]
911
+ },
912
+ discardTeamMemberProfileDraft: {
913
+ path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/discard",
914
+ method: "POST",
915
+ tags: [
916
+ "site-{siteId}",
917
+ "content-{siteId}-team-member",
918
+ "content-entry-{entryId}"
919
+ ],
920
+ auth: "user",
921
+ responseKind: "json",
922
+ errors: [
923
+ "validation:invalid_input",
924
+ "resource:not_found",
925
+ "resource:conflict",
926
+ "server:internal_error"
927
+ ]
928
+ },
929
+ unpublishTeamMemberProfile: {
930
+ path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/unpublish",
931
+ method: "POST",
932
+ tags: [
933
+ "site-{siteId}",
934
+ "content-{siteId}-team-member",
935
+ "content-entry-{entryId}"
936
+ ],
937
+ auth: "user",
938
+ responseKind: "json",
939
+ errors: [
940
+ "validation:invalid_input",
941
+ "resource:not_found",
942
+ "resource:conflict",
943
+ "server:internal_error"
944
+ ]
945
+ },
946
+ scheduleTeamMemberProfile: {
947
+ path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/schedule",
948
+ method: "POST",
949
+ tags: [
950
+ "site-{siteId}",
951
+ "content-{siteId}-team-member",
952
+ "content-entry-{entryId}"
953
+ ],
954
+ auth: "user",
955
+ responseKind: "json",
956
+ errors: [
957
+ "validation:invalid_input",
958
+ "resource:not_found",
959
+ "resource:conflict",
960
+ "server:internal_error"
961
+ ]
962
+ },
963
+ cancelScheduledTeamMemberProfile: {
964
+ path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/schedule",
965
+ method: "DELETE",
966
+ tags: [
967
+ "site-{siteId}",
968
+ "content-{siteId}-team-member",
969
+ "content-entry-{entryId}"
970
+ ],
971
+ auth: "user",
972
+ responseKind: "json",
973
+ errors: [
974
+ "validation:invalid_input",
975
+ "resource:not_found",
976
+ "resource:conflict",
977
+ "server:internal_error"
978
+ ]
979
+ },
980
+ updateTeamMemberProfileRouteMetadata: {
981
+ path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/routes/{routeId}/metadata",
982
+ method: "PATCH",
983
+ tags: [
984
+ TAG_TEMPLATES.siteCollection,
985
+ TAG_TEMPLATES.siteRoutableContent,
986
+ TAG_TEMPLATES.routeById
987
+ ],
988
+ auth: "user",
989
+ responseKind: "json",
990
+ errors: [
991
+ "validation:invalid_input",
992
+ "resource:not_found",
993
+ "resource:conflict",
994
+ "server:internal_error"
995
+ ]
996
+ },
860
997
  listAppointmentServices: {
861
998
  path: "/sites/{siteId}/bookings/services",
862
999
  method: "GET",
@@ -3230,6 +3367,15 @@ var ENDPOINT_DEFINITIONS = {
3230
3367
  auth: "public",
3231
3368
  responseKind: "json"
3232
3369
  },
3370
+ listPublicTeamMembers: {
3371
+ path: "/public/sites/{siteId}/team-members",
3372
+ method: "GET",
3373
+ revalidate: 60,
3374
+ tags: ["public-team-members-{siteId}"],
3375
+ errors: [],
3376
+ auth: "public",
3377
+ responseKind: "json"
3378
+ },
3233
3379
  getPublicCourse: {
3234
3380
  path: "/public/sites/{siteId}/courses/{courseId}",
3235
3381
  method: "GET",
@@ -6426,6 +6572,7 @@ var SUPPORTED_LOADER_ENDPOINTS = [
6426
6572
  "listPublicEvents",
6427
6573
  "getPublicEventDetails",
6428
6574
  "listPublicCourses",
6575
+ "listPublicTeamMembers",
6429
6576
  "listPublicProducts",
6430
6577
  "listPublicPasses",
6431
6578
  "listPublicMemberships",
@@ -15300,7 +15447,19 @@ var teamMemberFragment = defineFragment({
15300
15447
  bind("photo")
15301
15448
  )
15302
15449
  ]),
15303
- text({ as: "h3" }, bind("name")),
15450
+ link(
15451
+ {
15452
+ href: { $bind: { from: "profilePath" } },
15453
+ className: "rb-team-member-name-link"
15454
+ },
15455
+ [text({ as: "h3" }, bind("name"))],
15456
+ when("profilePath")
15457
+ ),
15458
+ text(
15459
+ { as: "h3" },
15460
+ when("profilePath", { not: true }),
15461
+ bind("name")
15462
+ ),
15304
15463
  text({ as: "p", className: "rb-team-member-role" }, when("role"), bind("role")),
15305
15464
  richText(
15306
15465
  { className: "rb-prose rb-max-w-none" },
@@ -19594,7 +19753,9 @@ var courseSessionSchema = z42.object({
19594
19753
  var courseTeamMemberSummarySchema = z42.object({
19595
19754
  id: z42.string(),
19596
19755
  name: z42.string(),
19597
- summary: z42.string().nullable()
19756
+ roleLabel: z42.string().nullable(),
19757
+ summary: z42.string().nullable(),
19758
+ profilePath: z42.string().nullable()
19598
19759
  });
19599
19760
  var coursePricingOptionSchema = z42.object({
19600
19761
  id: z42.string(),
@@ -19699,7 +19860,9 @@ var publicEventTicketTypeSchema = z43.object({
19699
19860
  var publicTeamMemberSummarySchema = z43.object({
19700
19861
  id: z43.string(),
19701
19862
  name: z43.string(),
19702
- summary: z43.string().nullable()
19863
+ roleLabel: z43.string().nullable(),
19864
+ summary: z43.string().nullable(),
19865
+ profilePath: z43.string().nullable()
19703
19866
  });
19704
19867
  var publicEventSchema = z43.object({
19705
19868
  kind: z43.enum(["event", "course_session"]).optional(),
@@ -25546,7 +25709,25 @@ var newsletterSignupBlockDefinition = {
25546
25709
  };
25547
25710
 
25548
25711
  // ../blocks/src/system/blocks/team-members.ts
25712
+ import { z as z61 } from "zod";
25549
25713
  var ITEM_NAME2 = "member";
25714
+ var teamMemberPhotoSchema = mediaSchema2.refine((media2) => media2.type === "image", {
25715
+ message: "Team member photos must be image media"
25716
+ }).nullable();
25717
+ var teamMemberDataSchema = z61.object({
25718
+ _type: z61.literal("teamMember"),
25719
+ id: z61.string(),
25720
+ name: z61.string(),
25721
+ role: z61.string().nullable(),
25722
+ roleLabel: z61.string().nullable(),
25723
+ bio: z61.string().nullable(),
25724
+ summary: z61.string().nullable(),
25725
+ photo: teamMemberPhotoSchema,
25726
+ profilePath: z61.string().nullable()
25727
+ });
25728
+ var teamMembersDataSchema = z61.array(teamMemberDataSchema);
25729
+ var dynamicSourceWhen = { equals: "site_staff" };
25730
+ var manualSourceWhen = { equals: "site_staff", not: true };
25550
25731
  var headingNode = text(
25551
25732
  { as: "h2" },
25552
25733
  bind("content.heading"),
@@ -25636,7 +25817,15 @@ var teamMemberStackLayout = el(
25636
25817
  ]
25637
25818
  ),
25638
25819
  stack({ gap: "sm", className: "rb-team-member-body rb-flex-1 rb-min-w-0" }, [
25639
- text({ as: "h3" }, bind("name")),
25820
+ link(
25821
+ {
25822
+ href: { $bind: { from: "profilePath" } },
25823
+ className: "rb-team-member-name-link"
25824
+ },
25825
+ [text({ as: "h3" }, bind("name"))],
25826
+ when("profilePath")
25827
+ ),
25828
+ text({ as: "h3" }, when("profilePath", { not: true }), bind("name")),
25640
25829
  text(
25641
25830
  { as: "p", className: "rb-team-member-role" },
25642
25831
  when("role"),
@@ -25650,12 +25839,18 @@ var teamMemberStackLayout = el(
25650
25839
  ])
25651
25840
  ]
25652
25841
  );
25653
- var gridMembersNode = repeaterFragmentLayout({
25842
+ var manualGridMembersNode = when("content.source", manualSourceWhen)(repeaterFragmentLayout({
25654
25843
  collectionPath: "content.members",
25655
25844
  itemName: ITEM_NAME2,
25656
25845
  fragments: { teamMember: teamMemberFragment },
25657
25846
  itemGap: "sm"
25658
- });
25847
+ }));
25848
+ var dynamicGridMembersNode = when("content.source", dynamicSourceWhen)(repeaterFragmentLayout({
25849
+ collectionPath: "data.members",
25850
+ itemName: ITEM_NAME2,
25851
+ fragments: { teamMember: teamMemberFragment },
25852
+ itemGap: "sm"
25853
+ }));
25659
25854
  var gridVariant = wrapVariant3(
25660
25855
  el(
25661
25856
  "grid",
@@ -25669,22 +25864,29 @@ var gridVariant = wrapVariant3(
25669
25864
  },
25670
25865
  gap: { $bind: { from: "content.gap", fallback: "medium" } }
25671
25866
  },
25672
- [gridMembersNode]
25867
+ [manualGridMembersNode, dynamicGridMembersNode]
25673
25868
  )
25674
25869
  );
25675
- var stackMembersNode = repeaterFragmentLayout({
25870
+ var manualStackMembersNode = when("content.source", manualSourceWhen)(repeaterFragmentLayout({
25676
25871
  collectionPath: "content.members",
25677
25872
  itemName: ITEM_NAME2,
25678
25873
  fragments: { teamMember: teamMemberFragment },
25679
25874
  layoutOverrides: { teamMember: teamMemberStackLayout },
25680
25875
  itemGap: "sm"
25681
- });
25876
+ }));
25877
+ var dynamicStackMembersNode = when("content.source", dynamicSourceWhen)(repeaterFragmentLayout({
25878
+ collectionPath: "data.members",
25879
+ itemName: ITEM_NAME2,
25880
+ fragments: { teamMember: teamMemberFragment },
25881
+ layoutOverrides: { teamMember: teamMemberStackLayout },
25882
+ itemGap: "sm"
25883
+ }));
25682
25884
  var stackVariant = wrapVariant3({
25683
25885
  type: "stack",
25684
25886
  props: {
25685
25887
  gap: { $bind: { from: "content.gap", fallback: "medium" } }
25686
25888
  },
25687
- children: [stackMembersNode]
25889
+ children: [manualStackMembersNode, dynamicStackMembersNode]
25688
25890
  });
25689
25891
  var teamMembersManifest = createBlockManifest({
25690
25892
  id: "block.team-members",
@@ -25699,6 +25901,18 @@ var teamMembersManifest = createBlockManifest({
25699
25901
  required: false,
25700
25902
  maxLength: 120
25701
25903
  }),
25904
+ parseFieldDefinition({
25905
+ id: "source",
25906
+ type: "select",
25907
+ label: "Team members",
25908
+ description: "Choose whether to use the site-wide team or a hand-picked list.",
25909
+ defaultValue: "manual",
25910
+ options: [
25911
+ { value: "manual", label: "Choose manually" },
25912
+ { value: "site_staff", label: "Use all site team members" }
25913
+ ],
25914
+ ui: { intent: "behavior" }
25915
+ }),
25702
25916
  parseFieldDefinition({
25703
25917
  id: "layoutAlign",
25704
25918
  type: "select",
@@ -25801,18 +26015,24 @@ var teamMembersManifest = createBlockManifest({
25801
26015
  ],
25802
26016
  ui: { intent: "display" }
25803
26017
  }),
25804
- fragmentsToRepeaterField(
25805
- "members",
25806
- "Team members",
25807
- { teamMember: teamMemberFragment },
25808
- {
25809
- minItems: 0,
25810
- maxItems: 50,
25811
- itemLabel: "Team member",
25812
- itemLabelSource: "name",
25813
- description: "Add people to this section."
26018
+ {
26019
+ ...fragmentsToRepeaterField(
26020
+ "members",
26021
+ "Team members",
26022
+ { teamMember: teamMemberFragment },
26023
+ {
26024
+ minItems: 0,
26025
+ maxItems: 50,
26026
+ itemLabel: "Team member",
26027
+ itemLabelSource: "name",
26028
+ description: "Add people to this section."
26029
+ }
26030
+ ),
26031
+ ui: {
26032
+ intent: "content",
26033
+ visibleWhen: { field: "source", equals: "manual" }
25814
26034
  }
25815
- )
26035
+ }
25816
26036
  ],
25817
26037
  layout: gridVariant,
25818
26038
  variants: {
@@ -25838,7 +26058,20 @@ var teamMembersManifest = createBlockManifest({
25838
26058
  styleTokens: { spacing: "lg" }
25839
26059
  });
25840
26060
  var teamMembersBlockDefinition = {
25841
- manifest: teamMembersManifest
26061
+ manifest: teamMembersManifest,
26062
+ dataSchemas: {
26063
+ members: teamMembersDataSchema
26064
+ },
26065
+ dataLoaders: {
26066
+ members: {
26067
+ endpoint: "listPublicTeamMembers",
26068
+ params: {
26069
+ siteId: { $bind: { from: "$root.siteId" } },
26070
+ stage: { $bind: { from: "$root.previewStage", fallback: "published" } }
26071
+ },
26072
+ mode: "server"
26073
+ }
26074
+ }
25842
26075
  };
25843
26076
 
25844
26077
  // ../blocks/src/system/runtime/nodes/location-map.shared.ts
@@ -27318,6 +27551,7 @@ function coercePayload(payload) {
27318
27551
  if ("form" in record && typeof record.form !== "function") return record.form;
27319
27552
  if ("entries" in record && typeof record.entries !== "function") return record.entries;
27320
27553
  if ("services" in record && typeof record.services !== "function") return record.services;
27554
+ if ("teamMembers" in record && typeof record.teamMembers !== "function") return record.teamMembers;
27321
27555
  }
27322
27556
  return payload;
27323
27557
  }
@@ -27439,6 +27673,10 @@ function normalizeLoaderParams(endpoint, params, context) {
27439
27673
  ensureSiteId(out, context);
27440
27674
  return out;
27441
27675
  }
27676
+ if (endpoint === "listPublicTeamMembers") {
27677
+ ensureSiteId(out, context);
27678
+ return out;
27679
+ }
27442
27680
  if (endpoint === "getPublishedEntryPreview") {
27443
27681
  ensureSiteId(out, context);
27444
27682
  return out;
@@ -27453,6 +27691,7 @@ var SUPPORTED_LOADER_ENDPOINTS2 = [
27453
27691
  "getPublishedEntryPreview",
27454
27692
  "listPublicEvents",
27455
27693
  "listPublicCourses",
27694
+ "listPublicTeamMembers",
27456
27695
  "listPublicProducts",
27457
27696
  "listPublicPasses",
27458
27697
  "listPublicMemberships",
@@ -27617,6 +27856,16 @@ async function prefetchBlockData2(page, context, client, options) {
27617
27856
  const parsedLimit = typeof limit === "string" ? Number.parseInt(limit, 10) : typeof limit === "number" ? limit : void 0;
27618
27857
  return await client.listPublicCourses({ siteId, limit: parsedLimit, stage });
27619
27858
  }
27859
+ case "listPublicTeamMembers": {
27860
+ const { siteId, stage } = resolvedParams ?? {};
27861
+ if (!siteId) {
27862
+ throw new Error("listPublicTeamMembers requires siteId param");
27863
+ }
27864
+ return await client.listPublicTeamMembers({
27865
+ siteId,
27866
+ stage: typeof stage === "string" ? stage : void 0
27867
+ });
27868
+ }
27620
27869
  case "listPublicProducts": {
27621
27870
  const { siteId, stage, categorySelector } = resolvedParams ?? {};
27622
27871
  if (!siteId) {
@@ -872,13 +872,150 @@ var ENDPOINT_DEFINITIONS = {
872
872
  "server:internal_error"
873
873
  ]
874
874
  },
875
- deleteAppointmentResource: {
875
+ removeAppointmentResource: {
876
876
  path: "/sites/{siteId}/bookings/resources/{resourceId}",
877
877
  method: "DELETE",
878
878
  auth: "user",
879
879
  responseKind: "json",
880
880
  errors: ["resource:not_found", "server:internal_error"]
881
881
  },
882
+ createTeamMemberProfile: {
883
+ path: "/sites/{siteId}/bookings/resources/{resourceId}/profile",
884
+ method: "POST",
885
+ auth: "user",
886
+ responseKind: "json",
887
+ errors: [
888
+ "validation:invalid_input",
889
+ "resource:not_found",
890
+ "resource:conflict",
891
+ "server:internal_error"
892
+ ]
893
+ },
894
+ updateTeamMemberProfilePolicy: {
895
+ path: "/sites/{siteId}/bookings/resources/profile-policy",
896
+ method: "PUT",
897
+ auth: "user",
898
+ responseKind: "json",
899
+ errors: ["validation:invalid_input", "server:internal_error"]
900
+ },
901
+ updateTeamMemberProfileContent: {
902
+ path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/content",
903
+ method: "PUT",
904
+ tags: [
905
+ "site-{siteId}",
906
+ "content-{siteId}-team-member",
907
+ "content-entry-{entryId}"
908
+ ],
909
+ auth: "user",
910
+ responseKind: "json",
911
+ errors: [
912
+ "validation:invalid_input",
913
+ "resource:not_found",
914
+ "resource:conflict",
915
+ "server:internal_error"
916
+ ]
917
+ },
918
+ publishTeamMemberProfile: {
919
+ path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/publish",
920
+ method: "POST",
921
+ tags: [
922
+ "site-{siteId}",
923
+ "content-{siteId}-team-member",
924
+ "content-entry-{entryId}"
925
+ ],
926
+ auth: "user",
927
+ responseKind: "json",
928
+ errors: [
929
+ "validation:invalid_input",
930
+ "resource:not_found",
931
+ "server:internal_error"
932
+ ]
933
+ },
934
+ discardTeamMemberProfileDraft: {
935
+ path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/discard",
936
+ method: "POST",
937
+ tags: [
938
+ "site-{siteId}",
939
+ "content-{siteId}-team-member",
940
+ "content-entry-{entryId}"
941
+ ],
942
+ auth: "user",
943
+ responseKind: "json",
944
+ errors: [
945
+ "validation:invalid_input",
946
+ "resource:not_found",
947
+ "resource:conflict",
948
+ "server:internal_error"
949
+ ]
950
+ },
951
+ unpublishTeamMemberProfile: {
952
+ path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/unpublish",
953
+ method: "POST",
954
+ tags: [
955
+ "site-{siteId}",
956
+ "content-{siteId}-team-member",
957
+ "content-entry-{entryId}"
958
+ ],
959
+ auth: "user",
960
+ responseKind: "json",
961
+ errors: [
962
+ "validation:invalid_input",
963
+ "resource:not_found",
964
+ "resource:conflict",
965
+ "server:internal_error"
966
+ ]
967
+ },
968
+ scheduleTeamMemberProfile: {
969
+ path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/schedule",
970
+ method: "POST",
971
+ tags: [
972
+ "site-{siteId}",
973
+ "content-{siteId}-team-member",
974
+ "content-entry-{entryId}"
975
+ ],
976
+ auth: "user",
977
+ responseKind: "json",
978
+ errors: [
979
+ "validation:invalid_input",
980
+ "resource:not_found",
981
+ "resource:conflict",
982
+ "server:internal_error"
983
+ ]
984
+ },
985
+ cancelScheduledTeamMemberProfile: {
986
+ path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/schedule",
987
+ method: "DELETE",
988
+ tags: [
989
+ "site-{siteId}",
990
+ "content-{siteId}-team-member",
991
+ "content-entry-{entryId}"
992
+ ],
993
+ auth: "user",
994
+ responseKind: "json",
995
+ errors: [
996
+ "validation:invalid_input",
997
+ "resource:not_found",
998
+ "resource:conflict",
999
+ "server:internal_error"
1000
+ ]
1001
+ },
1002
+ updateTeamMemberProfileRouteMetadata: {
1003
+ path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/routes/{routeId}/metadata",
1004
+ method: "PATCH",
1005
+ tags: [
1006
+ TAG_TEMPLATES.siteCollection,
1007
+ TAG_TEMPLATES.siteRoutableContent,
1008
+ TAG_TEMPLATES.routeById
1009
+ ],
1010
+ auth: "user",
1011
+ responseKind: "json",
1012
+ errors: [
1013
+ "validation:invalid_input",
1014
+ "resource:not_found",
1015
+ "resource:conflict",
1016
+ "server:internal_error"
1017
+ ]
1018
+ },
882
1019
  listAppointmentServices: {
883
1020
  path: "/sites/{siteId}/bookings/services",
884
1021
  method: "GET",
@@ -3252,6 +3389,15 @@ var ENDPOINT_DEFINITIONS = {
3252
3389
  auth: "public",
3253
3390
  responseKind: "json"
3254
3391
  },
3392
+ listPublicTeamMembers: {
3393
+ path: "/public/sites/{siteId}/team-members",
3394
+ method: "GET",
3395
+ revalidate: 60,
3396
+ tags: ["public-team-members-{siteId}"],
3397
+ errors: [],
3398
+ auth: "public",
3399
+ responseKind: "json"
3400
+ },
3255
3401
  getPublicCourse: {
3256
3402
  path: "/public/sites/{siteId}/courses/{courseId}",
3257
3403
  method: "GET",
@@ -6083,7 +6229,7 @@ var SimpleCache = class {
6083
6229
  };
6084
6230
 
6085
6231
  // src/version.ts
6086
- var SDK_VERSION = "0.60.6";
6232
+ var SDK_VERSION = "0.60.7";
6087
6233
 
6088
6234
  // src/client/error.ts
6089
6235
  var RiverbankApiError = class _RiverbankApiError extends Error {
@@ -7122,6 +7268,24 @@ function createRiverbankClient(config) {
7122
7268
  return await apiClient({ endpoint: "listPublicCourses", params: apiParams, options: { signal: sig } });
7123
7269
  }, { signal });
7124
7270
  },
7271
+ async listPublicTeamMembers(params) {
7272
+ const { siteId, stage, signal } = params;
7273
+ if (!siteId) {
7274
+ throw new Error("listPublicTeamMembers() requires siteId");
7275
+ }
7276
+ const cacheKey = `public-team-members:${siteId}:${stage ?? ""}`;
7277
+ return resilientFetch(cacheKey, async (sig) => {
7278
+ const apiParams = {
7279
+ siteId,
7280
+ ...stage && { stage }
7281
+ };
7282
+ return await apiClient({
7283
+ endpoint: "listPublicTeamMembers",
7284
+ params: apiParams,
7285
+ options: { signal: sig }
7286
+ });
7287
+ }, { signal });
7288
+ },
7125
7289
  async listPublicProducts(params) {
7126
7290
  const { siteId, stage, categorySelector, signal } = params;
7127
7291
  if (!siteId) {
@@ -8603,6 +8767,7 @@ var SUPPORTED_LOADER_ENDPOINTS = [
8603
8767
  "listPublicEvents",
8604
8768
  "getPublicEventDetails",
8605
8769
  "listPublicCourses",
8770
+ "listPublicTeamMembers",
8606
8771
  "listPublicProducts",
8607
8772
  "listPublicPasses",
8608
8773
  "listPublicMemberships",
@@ -9461,6 +9626,7 @@ var PUBLIC_ENDPOINT_NAMES2 = [
9461
9626
  "listPublicEvents",
9462
9627
  "batchBlockLoaders",
9463
9628
  "listPublicCourses",
9629
+ "listPublicTeamMembers",
9464
9630
  "listPublicProducts",
9465
9631
  "listPublicPasses",
9466
9632
  "listPublicMemberships",