@riverbankcms/sdk 0.60.12 → 0.60.14
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.
- package/README.md +10 -7
- package/dist/_dts/api/src/bookingConfig.d.ts +31 -1
- package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +38 -1
- package/dist/_dts/api/src/bookingOperations.d.ts +3 -0
- package/dist/_dts/api/src/bookingRecords.d.ts +45 -0
- package/dist/_dts/api/src/bookingRefundOutcomes.d.ts +4 -4
- package/dist/_dts/api/src/commercePortalEndpoints.d.ts +1 -5
- package/dist/_dts/api/src/communications.d.ts +1 -1
- package/dist/_dts/api/src/contentRuntime.d.ts +1 -1
- package/dist/_dts/api/src/endpoints.d.ts +89 -9
- package/dist/_dts/api/src/index.d.ts +2 -1
- package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +1 -0
- package/dist/_dts/api/src/seoEndpoints.d.ts +2 -0
- package/dist/_dts/api/src/siteAssets.d.ts +0 -10
- package/dist/_dts/api/src/types.d.ts +1 -1
- package/dist/_dts/blocks/src/PageRenderer.d.ts +1 -0
- package/dist/_dts/blocks/src/index.d.ts +1 -0
- package/dist/_dts/blocks/src/portal/types.d.ts +1 -1
- package/dist/_dts/blocks/src/server.d.ts +1 -0
- package/dist/_dts/blocks/src/subroutes/fold.d.ts +40 -0
- package/dist/_dts/blocks/src/subroutes/formatDate.d.ts +12 -0
- package/dist/_dts/blocks/src/subroutes/index.d.ts +3 -0
- package/dist/_dts/blocks/src/subroutes/kinds.d.ts +32 -0
- package/dist/_dts/blocks/src/system/fields/boxStyles.d.ts +3 -1
- package/dist/_dts/blocks/src/system/helpers/resolveBackground.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/types.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.interactive.d.ts +1 -0
- package/dist/_dts/blocks/src/system/spacing.d.ts +2 -1
- package/dist/_dts/blocks/src/system/transforms/registry/layout.d.ts +5 -0
- package/dist/_dts/blocks/src/system/transforms/typed.d.ts +5 -1
- package/dist/_dts/core/src/booking-refunds.d.ts +8 -0
- package/dist/_dts/core/src/participant-identity.d.ts +1 -73
- package/dist/_dts/core/src/participants.d.ts +19 -7
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +188 -36
- package/dist/_dts/preview-next/src/client/preview/EntryEditorPanel.d.ts +3 -3
- package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +3 -3
- package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +3 -3
- package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +3 -3
- package/dist/_dts/preview-next/src/client/preview/SubrouteNoticePanel.d.ts +13 -0
- package/dist/_dts/preview-next/src/client/preview/subrouteNotice.d.ts +26 -0
- package/dist/_dts/sdk/src/contracts/page.d.ts +1 -0
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/types.d.ts +1 -0
- package/dist/_dts/sdk/src/routing/resolvePageContent.d.ts +4 -5
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +11 -0
- package/dist/_dts/theme-core/src/buttons/personalities/showtime-pill.d.ts +17 -0
- package/dist/_dts/theme-core/src/buttons/types.d.ts +1 -1
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +66 -30
- package/dist/_dts/theme-core/src/palette/variants/brand-led.d.ts +16 -0
- package/dist/_dts/theme-core/src/palette/variants/index.d.ts +15 -0
- package/dist/_dts/theme-core/src/palette/variants/types.d.ts +3 -3
- package/dist/_dts/theme-core/src/schema.d.ts +174 -6
- package/dist/_dts/theme-core/src/site-styles/appearancePresets.d.ts +328 -15
- package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +54 -2
- package/dist/_dts/theme-core/src/site-styles/designState.d.ts +124 -0
- package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +4 -2
- package/dist/_dts/theme-core/src/site-styles/index.d.ts +1 -0
- package/dist/_dts/theme-core/src/site-styles/lookResolution.d.ts +21 -0
- package/dist/_dts/theme-core/src/site-styles/pageDesignEditorModel.d.ts +2 -1
- package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/types.d.ts +135 -2
- package/dist/_dts/ui/src/badge.d.ts +1 -1
- package/dist/_dts/ui/src/button.d.ts +1 -1
- package/dist/cli/index.mjs +744 -176
- package/dist/client/bookings.mjs +115 -63
- package/dist/client/client.mjs +848 -227
- package/dist/client/hooks.mjs +737 -173
- package/dist/client/rendering/client.mjs +179 -100
- package/dist/client/rendering/islands.mjs +179 -99
- package/dist/client/rendering.mjs +847 -226
- package/dist/preview-next/before-render.mjs +103 -16
- package/dist/preview-next/client/runtime.mjs +1615 -319
- package/dist/preview-next/middleware.mjs +103 -16
- package/dist/server/components.mjs +838 -227
- package/dist/server/config-validation.mjs +737 -173
- package/dist/server/config.mjs +737 -173
- package/dist/server/data.mjs +737 -173
- package/dist/server/index.mjs +106 -79
- package/dist/server/next.mjs +841 -229
- package/dist/server/page-converter.mjs +589 -144
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +838 -227
- package/dist/server/rendering.mjs +838 -227
- package/dist/server/routing.mjs +771 -178
- package/dist/server/server.mjs +738 -174
- package/dist/server/theme-bridge.mjs +216 -39
- package/dist/server/theme.mjs +139 -37
- package/dist/styles/index.css +44 -2
- package/package.json +1 -1
|
@@ -69,68 +69,6 @@ function toLocationCoordinates(value) {
|
|
|
69
69
|
};
|
|
70
70
|
}
|
|
71
71
|
|
|
72
|
-
// ../core/src/participant-identity.ts
|
|
73
|
-
var PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD = {
|
|
74
|
-
participant_id: {
|
|
75
|
-
field: "participant_id",
|
|
76
|
-
role: "canonical_link",
|
|
77
|
-
canonicalSource: "booking_participants.id",
|
|
78
|
-
contractAction: "tighten_in_839",
|
|
79
|
-
notes: "Canonical person-subject link for a participation. #839 should enforce this once preflight is clean."
|
|
80
|
-
},
|
|
81
|
-
display_name: {
|
|
82
|
-
field: "display_name",
|
|
83
|
-
role: "contextual_snapshot",
|
|
84
|
-
canonicalSource: "booking_participants.display_name for live identity",
|
|
85
|
-
contractAction: "retain_as_snapshot",
|
|
86
|
-
notes: "Participation-time display context. Readers must not treat it as mutable live participant identity."
|
|
87
|
-
},
|
|
88
|
-
email: {
|
|
89
|
-
field: "email",
|
|
90
|
-
role: "contextual_snapshot",
|
|
91
|
-
canonicalSource: "booking_participants.email_normalized for live email identity",
|
|
92
|
-
contractAction: "retain_as_snapshot",
|
|
93
|
-
notes: "Participation-time contact snapshot used for notifications/context. Live identity belongs to the participant row."
|
|
94
|
-
},
|
|
95
|
-
email_normalized: {
|
|
96
|
-
field: "email_normalized",
|
|
97
|
-
role: "contextual_snapshot",
|
|
98
|
-
canonicalSource: "booking_participants.email_normalized for live email identity",
|
|
99
|
-
contractAction: "retain_as_snapshot",
|
|
100
|
-
notes: "Normalized snapshot/dedupe helper for the participation slot, not live person authority."
|
|
101
|
-
},
|
|
102
|
-
phone: {
|
|
103
|
-
field: "phone",
|
|
104
|
-
role: "contextual_snapshot",
|
|
105
|
-
canonicalSource: "booking_participants.phone for live phone identity",
|
|
106
|
-
contractAction: "retain_as_snapshot",
|
|
107
|
-
notes: "Participation-time phone context. Live identity belongs to the participant row."
|
|
108
|
-
},
|
|
109
|
-
identity_state: {
|
|
110
|
-
field: "identity_state",
|
|
111
|
-
role: "materialization_state",
|
|
112
|
-
canonicalSource: "booking_participants.identity_state for subject state",
|
|
113
|
-
contractAction: "review_for_later_contract_cleanup",
|
|
114
|
-
notes: "Slot materialization state: booker_supplied, contactable, portal_claimed, or staff_verified."
|
|
115
|
-
},
|
|
116
|
-
event_attendee_guest_id: {
|
|
117
|
-
field: "event_attendee_guest_id",
|
|
118
|
-
role: "compatibility_projection",
|
|
119
|
-
canonicalSource: "canonical participant slot plus #838 event guest compatibility projection",
|
|
120
|
-
contractAction: "retain_as_projection",
|
|
121
|
-
notes: "Compatibility FK for event guest read models. It is not person identity authority."
|
|
122
|
-
}
|
|
123
|
-
};
|
|
124
|
-
var PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATIONS = [
|
|
125
|
-
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.participant_id,
|
|
126
|
-
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.display_name,
|
|
127
|
-
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.email,
|
|
128
|
-
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.email_normalized,
|
|
129
|
-
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.phone,
|
|
130
|
-
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.identity_state,
|
|
131
|
-
PARTICIPANT_PARTICIPATION_IDENTITY_FIELD_CLASSIFICATION_BY_FIELD.event_attendee_guest_id
|
|
132
|
-
];
|
|
133
|
-
|
|
134
72
|
// ../media-core/src/aspectTransforms.ts
|
|
135
73
|
function parseAspectRatioValue(value) {
|
|
136
74
|
if (typeof value === "number") {
|
|
@@ -1050,12 +988,29 @@ function defineFrameCapability(capability) {
|
|
|
1050
988
|
function defineBlockDesignCapability(capability) {
|
|
1051
989
|
return {
|
|
1052
990
|
...capability,
|
|
1053
|
-
kind: "designed"
|
|
991
|
+
kind: "designed",
|
|
992
|
+
sectionHeights: capability.sectionHeights ?? ["default"],
|
|
993
|
+
imageSurfaceTreatments: capability.imageSurfaceTreatments ?? ["none"],
|
|
994
|
+
imageSurfaceMotions: capability.imageSurfaceMotions ?? ["static"],
|
|
995
|
+
testimonialCardTreatments: capability.testimonialCardTreatments ?? ["default"]
|
|
1054
996
|
};
|
|
1055
997
|
}
|
|
1056
998
|
|
|
1057
999
|
// ../theme-core/src/site-styles/appearancePresets.ts
|
|
1000
|
+
function assertValidOptionGroups(preset) {
|
|
1001
|
+
preset.optionGroups?.forEach((group) => {
|
|
1002
|
+
const selectedOption = group.options.find(
|
|
1003
|
+
(option) => option.id === group.selectedOptionId
|
|
1004
|
+
);
|
|
1005
|
+
if (!selectedOption) {
|
|
1006
|
+
throw new Error(
|
|
1007
|
+
`Appearance preset "${preset.id}" option group "${group.id}" selects missing option "${group.selectedOptionId}".`
|
|
1008
|
+
);
|
|
1009
|
+
}
|
|
1010
|
+
});
|
|
1011
|
+
}
|
|
1058
1012
|
function defineBlockAppearancePreset(preset) {
|
|
1013
|
+
assertValidOptionGroups(preset);
|
|
1059
1014
|
return preset;
|
|
1060
1015
|
}
|
|
1061
1016
|
function defineSiteChromeAppearancePreset(preset) {
|
|
@@ -1068,13 +1023,122 @@ var appearancePresets = [
|
|
|
1068
1023
|
target: "hero",
|
|
1069
1024
|
label: "Immersive image hero",
|
|
1070
1025
|
blockKinds: ["block.hero"],
|
|
1026
|
+
constraints: {
|
|
1027
|
+
layoutFamilies: ["centered", "compact"]
|
|
1028
|
+
},
|
|
1029
|
+
design: {
|
|
1030
|
+
sectionSurface: "hero-image",
|
|
1031
|
+
contentFrame: plainFrame,
|
|
1032
|
+
itemSurface: "none",
|
|
1033
|
+
transitionAfter: "soft-fade-short",
|
|
1034
|
+
emphasis: "high",
|
|
1035
|
+
sectionHeight: "hero",
|
|
1036
|
+
imageSurfaceTreatment: { kind: "neutral-wash" }
|
|
1037
|
+
}
|
|
1038
|
+
}),
|
|
1039
|
+
defineBlockAppearancePreset({
|
|
1040
|
+
kind: "block-design",
|
|
1041
|
+
id: "hero-brand-scrim",
|
|
1042
|
+
target: "hero",
|
|
1043
|
+
label: "Brand scrim image hero",
|
|
1044
|
+
blockKinds: ["block.hero"],
|
|
1045
|
+
constraints: {
|
|
1046
|
+
layoutFamilies: ["centered", "compact"]
|
|
1047
|
+
},
|
|
1048
|
+
optionGroups: [
|
|
1049
|
+
{
|
|
1050
|
+
id: "image-surface-treatment",
|
|
1051
|
+
label: "Treatment",
|
|
1052
|
+
selectedOptionId: "brand-scrim-primary",
|
|
1053
|
+
options: [
|
|
1054
|
+
{
|
|
1055
|
+
id: "brand-scrim-primary",
|
|
1056
|
+
label: "Brand scrim",
|
|
1057
|
+
designPatch: {
|
|
1058
|
+
imageSurfaceTreatment: { kind: "brand-scrim", token: "primary" }
|
|
1059
|
+
}
|
|
1060
|
+
},
|
|
1061
|
+
{
|
|
1062
|
+
id: "neutral-scrim",
|
|
1063
|
+
label: "Neutral scrim",
|
|
1064
|
+
designPatch: {
|
|
1065
|
+
imageSurfaceTreatment: { kind: "neutral-scrim" }
|
|
1066
|
+
}
|
|
1067
|
+
}
|
|
1068
|
+
]
|
|
1069
|
+
}
|
|
1070
|
+
],
|
|
1071
|
+
layoutPatches: [
|
|
1072
|
+
{
|
|
1073
|
+
constraints: {
|
|
1074
|
+
layoutVariantKeys: ["micro"]
|
|
1075
|
+
},
|
|
1076
|
+
designPatch: {
|
|
1077
|
+
sectionHeight: "banner"
|
|
1078
|
+
}
|
|
1079
|
+
}
|
|
1080
|
+
],
|
|
1081
|
+
design: {
|
|
1082
|
+
sectionSurface: "hero-image",
|
|
1083
|
+
contentFrame: plainFrame,
|
|
1084
|
+
itemSurface: "none",
|
|
1085
|
+
transitionAfter: "soft-fade-short",
|
|
1086
|
+
emphasis: "high",
|
|
1087
|
+
sectionHeight: "immersive",
|
|
1088
|
+
imageSurfaceTreatment: { kind: "brand-scrim", token: "primary" }
|
|
1089
|
+
}
|
|
1090
|
+
}),
|
|
1091
|
+
defineBlockAppearancePreset({
|
|
1092
|
+
kind: "block-design",
|
|
1093
|
+
id: "hero-brand-scrim-fixed-frame",
|
|
1094
|
+
target: "hero",
|
|
1095
|
+
label: "Fixed-frame brand scrim hero",
|
|
1096
|
+
blockKinds: ["block.hero"],
|
|
1097
|
+
constraints: {
|
|
1098
|
+
layoutFamilies: ["centered", "compact"]
|
|
1099
|
+
},
|
|
1100
|
+
optionGroups: [
|
|
1101
|
+
{
|
|
1102
|
+
id: "image-surface-treatment",
|
|
1103
|
+
label: "Treatment",
|
|
1104
|
+
selectedOptionId: "brand-scrim-primary",
|
|
1105
|
+
options: [
|
|
1106
|
+
{
|
|
1107
|
+
id: "brand-scrim-primary",
|
|
1108
|
+
label: "Brand scrim",
|
|
1109
|
+
designPatch: {
|
|
1110
|
+
imageSurfaceTreatment: { kind: "brand-scrim", token: "primary" }
|
|
1111
|
+
}
|
|
1112
|
+
},
|
|
1113
|
+
{
|
|
1114
|
+
id: "neutral-scrim",
|
|
1115
|
+
label: "Neutral scrim",
|
|
1116
|
+
designPatch: {
|
|
1117
|
+
imageSurfaceTreatment: { kind: "neutral-scrim" }
|
|
1118
|
+
}
|
|
1119
|
+
}
|
|
1120
|
+
]
|
|
1121
|
+
}
|
|
1122
|
+
],
|
|
1123
|
+
layoutPatches: [
|
|
1124
|
+
{
|
|
1125
|
+
constraints: {
|
|
1126
|
+
layoutVariantKeys: ["micro"]
|
|
1127
|
+
},
|
|
1128
|
+
designPatch: {
|
|
1129
|
+
sectionHeight: "banner"
|
|
1130
|
+
}
|
|
1131
|
+
}
|
|
1132
|
+
],
|
|
1071
1133
|
design: {
|
|
1072
1134
|
sectionSurface: "hero-image",
|
|
1073
1135
|
contentFrame: plainFrame,
|
|
1074
1136
|
itemSurface: "none",
|
|
1075
1137
|
transitionAfter: "soft-fade-short",
|
|
1076
1138
|
emphasis: "high",
|
|
1077
|
-
|
|
1139
|
+
sectionHeight: "immersive",
|
|
1140
|
+
imageSurfaceTreatment: { kind: "brand-scrim", token: "primary" },
|
|
1141
|
+
imageSurfaceMotion: "fixed-frame"
|
|
1078
1142
|
}
|
|
1079
1143
|
}),
|
|
1080
1144
|
defineBlockAppearancePreset({
|
|
@@ -1091,17 +1155,26 @@ var appearancePresets = [
|
|
|
1091
1155
|
emphasis: "high"
|
|
1092
1156
|
}
|
|
1093
1157
|
}),
|
|
1158
|
+
defineBlockAppearancePreset({
|
|
1159
|
+
kind: "block-design",
|
|
1160
|
+
id: "body-text-editorial-intro",
|
|
1161
|
+
target: "body-text",
|
|
1162
|
+
label: "Editorial intro copy",
|
|
1163
|
+
blockKinds: ["block.body-text"],
|
|
1164
|
+
design: {
|
|
1165
|
+
sectionSurface: "base",
|
|
1166
|
+
contentFrame: plainFrame,
|
|
1167
|
+
itemSurface: "none",
|
|
1168
|
+
transitionAfter: "soft-fade-short",
|
|
1169
|
+
emphasis: "high"
|
|
1170
|
+
}
|
|
1171
|
+
}),
|
|
1094
1172
|
defineBlockAppearancePreset({
|
|
1095
1173
|
kind: "block-design",
|
|
1096
1174
|
id: "offerings-calm-list",
|
|
1097
1175
|
target: "offerings",
|
|
1098
1176
|
label: "Calm offerings list",
|
|
1099
|
-
blockKinds: [
|
|
1100
|
-
"block.event-listing",
|
|
1101
|
-
"block.event-calendar",
|
|
1102
|
-
"block.event-spotlight",
|
|
1103
|
-
"block.product-list"
|
|
1104
|
-
],
|
|
1177
|
+
blockKinds: ["block.event-listing", "block.event-calendar", "block.event-spotlight", "block.product-list"],
|
|
1105
1178
|
design: {
|
|
1106
1179
|
sectionSurface: "muted-band",
|
|
1107
1180
|
contentFrame: plainFrame,
|
|
@@ -1180,6 +1253,35 @@ var appearancePresets = [
|
|
|
1180
1253
|
emphasis: "high"
|
|
1181
1254
|
}
|
|
1182
1255
|
}),
|
|
1256
|
+
defineBlockAppearancePreset({
|
|
1257
|
+
kind: "block-design",
|
|
1258
|
+
id: "testimonials-dark-proof",
|
|
1259
|
+
target: "testimonials",
|
|
1260
|
+
label: "Dark proof panel",
|
|
1261
|
+
blockKinds: ["block.testimonials"],
|
|
1262
|
+
design: {
|
|
1263
|
+
sectionSurface: "accent-band",
|
|
1264
|
+
contentFrame: panelFrame("raised"),
|
|
1265
|
+
itemSurface: "raised",
|
|
1266
|
+
transitionAfter: "soft-fade-short",
|
|
1267
|
+
emphasis: "high"
|
|
1268
|
+
}
|
|
1269
|
+
}),
|
|
1270
|
+
defineBlockAppearancePreset({
|
|
1271
|
+
kind: "block-design",
|
|
1272
|
+
id: "testimonials-accent-quote-proof",
|
|
1273
|
+
target: "testimonials",
|
|
1274
|
+
label: "Accent quote proof",
|
|
1275
|
+
blockKinds: ["block.testimonials"],
|
|
1276
|
+
design: {
|
|
1277
|
+
sectionSurface: "accent-band",
|
|
1278
|
+
contentFrame: plainFrame,
|
|
1279
|
+
itemSurface: "raised",
|
|
1280
|
+
transitionAfter: "soft-fade-short",
|
|
1281
|
+
emphasis: "high",
|
|
1282
|
+
testimonialCardTreatment: "accent-quote"
|
|
1283
|
+
}
|
|
1284
|
+
}),
|
|
1183
1285
|
defineBlockAppearancePreset({
|
|
1184
1286
|
kind: "block-design",
|
|
1185
1287
|
id: "faq-contained-help",
|
|
@@ -1208,6 +1310,20 @@ var appearancePresets = [
|
|
|
1208
1310
|
emphasis: "medium"
|
|
1209
1311
|
}
|
|
1210
1312
|
}),
|
|
1313
|
+
defineBlockAppearancePreset({
|
|
1314
|
+
kind: "block-design",
|
|
1315
|
+
id: "contact-form-dark-card",
|
|
1316
|
+
target: "contact-form",
|
|
1317
|
+
label: "Dark form card",
|
|
1318
|
+
blockKinds: ["block.form"],
|
|
1319
|
+
design: {
|
|
1320
|
+
sectionSurface: "accent-band",
|
|
1321
|
+
contentFrame: panelFrame("raised"),
|
|
1322
|
+
itemSurface: "none",
|
|
1323
|
+
transitionAfter: "soft-fade-short",
|
|
1324
|
+
emphasis: "high"
|
|
1325
|
+
}
|
|
1326
|
+
}),
|
|
1211
1327
|
defineBlockAppearancePreset({
|
|
1212
1328
|
kind: "block-design",
|
|
1213
1329
|
id: "cta-accent-band",
|
|
@@ -1227,9 +1343,33 @@ var appearancePresets = [
|
|
|
1227
1343
|
id: "header-clean-base",
|
|
1228
1344
|
target: "site-header",
|
|
1229
1345
|
label: "Clean base header",
|
|
1230
|
-
|
|
1231
|
-
surface:
|
|
1232
|
-
|
|
1346
|
+
header: {
|
|
1347
|
+
surface: {
|
|
1348
|
+
kind: "neutral-solid",
|
|
1349
|
+
token: "surface",
|
|
1350
|
+
textColorToken: "text"
|
|
1351
|
+
},
|
|
1352
|
+
navTreatment: "minimal",
|
|
1353
|
+
dropdownTreatment: "surface",
|
|
1354
|
+
ctaTreatment: "default",
|
|
1355
|
+
behavior: "default"
|
|
1356
|
+
}
|
|
1357
|
+
}),
|
|
1358
|
+
defineSiteChromeAppearancePreset({
|
|
1359
|
+
kind: "site-chrome",
|
|
1360
|
+
id: "site-header-brand-solid-inverted-cta",
|
|
1361
|
+
target: "site-header",
|
|
1362
|
+
label: "Brand solid header with inverted CTA",
|
|
1363
|
+
header: {
|
|
1364
|
+
surface: {
|
|
1365
|
+
kind: "brand-solid",
|
|
1366
|
+
token: "primary",
|
|
1367
|
+
textColorToken: "primaryForeground"
|
|
1368
|
+
},
|
|
1369
|
+
navTreatment: "uppercase-underline",
|
|
1370
|
+
dropdownTreatment: "matched-solid",
|
|
1371
|
+
ctaTreatment: "inverted",
|
|
1372
|
+
behavior: "sticky-shrink"
|
|
1233
1373
|
}
|
|
1234
1374
|
}),
|
|
1235
1375
|
defineSiteChromeAppearancePreset({
|
|
@@ -1237,10 +1377,31 @@ var appearancePresets = [
|
|
|
1237
1377
|
id: "footer-muted-grounding",
|
|
1238
1378
|
target: "site-footer",
|
|
1239
1379
|
label: "Muted grounding footer",
|
|
1240
|
-
|
|
1380
|
+
footer: {
|
|
1381
|
+
kind: "grounding",
|
|
1241
1382
|
surface: "muted-band",
|
|
1242
1383
|
emphasis: "low"
|
|
1243
1384
|
}
|
|
1385
|
+
}),
|
|
1386
|
+
defineSiteChromeAppearancePreset({
|
|
1387
|
+
kind: "site-chrome",
|
|
1388
|
+
id: "site-footer-brand-two-band",
|
|
1389
|
+
target: "site-footer",
|
|
1390
|
+
label: "Two-band brand footer",
|
|
1391
|
+
footer: {
|
|
1392
|
+
kind: "brand-two-band",
|
|
1393
|
+
surface: {
|
|
1394
|
+
token: "primary",
|
|
1395
|
+
shade: "800",
|
|
1396
|
+
textColorToken: "primaryForeground"
|
|
1397
|
+
},
|
|
1398
|
+
bottomBand: {
|
|
1399
|
+
token: "primary",
|
|
1400
|
+
shade: "900",
|
|
1401
|
+
textColorToken: "primaryForeground"
|
|
1402
|
+
},
|
|
1403
|
+
emphasis: "high"
|
|
1404
|
+
}
|
|
1244
1405
|
})
|
|
1245
1406
|
];
|
|
1246
1407
|
|
|
@@ -1900,6 +2061,111 @@ var pebble = defineButtonPersonality({
|
|
|
1900
2061
|
}
|
|
1901
2062
|
});
|
|
1902
2063
|
|
|
2064
|
+
// ../theme-core/src/buttons/personalities/showtime-pill.ts
|
|
2065
|
+
var showtimePill = defineButtonPersonality({
|
|
2066
|
+
id: "showtime-pill",
|
|
2067
|
+
name: "Showtime Pill",
|
|
2068
|
+
description: "Bold pill buttons with uppercase labels, generous padding, and a playful pop.",
|
|
2069
|
+
tags: { tone: "bold", energy: "vibrant", motion: "expressive", era: "modern" },
|
|
2070
|
+
buttonSystem: {
|
|
2071
|
+
global: {
|
|
2072
|
+
cornerStyle: "pill",
|
|
2073
|
+
shadow: "low",
|
|
2074
|
+
textTransform: "uppercase",
|
|
2075
|
+
fontWeight: 700,
|
|
2076
|
+
borderWidth: 2,
|
|
2077
|
+
hoverTransform: "lift",
|
|
2078
|
+
hoverColor: "darken",
|
|
2079
|
+
typography: "body",
|
|
2080
|
+
paddingPreset: "spacious",
|
|
2081
|
+
italic: false
|
|
2082
|
+
},
|
|
2083
|
+
sizes: {
|
|
2084
|
+
sm: { padding: "0.625rem 1.25rem", fontSize: "0.875rem" },
|
|
2085
|
+
md: { padding: "0.875rem 1.75rem", fontSize: "1rem" },
|
|
2086
|
+
lg: { padding: "1.125rem 2.25rem", fontSize: "1.125rem" },
|
|
2087
|
+
xl: { padding: "1.125rem 2.25rem", fontSize: "1.125rem" }
|
|
2088
|
+
},
|
|
2089
|
+
variants: [
|
|
2090
|
+
{
|
|
2091
|
+
id: "primary",
|
|
2092
|
+
name: "Primary",
|
|
2093
|
+
enabled: true,
|
|
2094
|
+
priority: 1,
|
|
2095
|
+
background: { type: "solid", colorToken: "primary" },
|
|
2096
|
+
textColorToken: "background",
|
|
2097
|
+
borderRadius: "rounded-full",
|
|
2098
|
+
effects: {
|
|
2099
|
+
hover: [{ effectId: "pop" }]
|
|
2100
|
+
}
|
|
2101
|
+
},
|
|
2102
|
+
{
|
|
2103
|
+
id: "secondary",
|
|
2104
|
+
name: "Secondary",
|
|
2105
|
+
enabled: true,
|
|
2106
|
+
priority: 2,
|
|
2107
|
+
background: { type: "transparent" },
|
|
2108
|
+
textColorToken: "primary",
|
|
2109
|
+
borderRadius: "rounded-full",
|
|
2110
|
+
border: { widthClass: "border-2", colorToken: "primary" },
|
|
2111
|
+
effects: {
|
|
2112
|
+
hover: [{ effectId: "pop" }]
|
|
2113
|
+
}
|
|
2114
|
+
},
|
|
2115
|
+
{
|
|
2116
|
+
id: "hero",
|
|
2117
|
+
name: "Hero",
|
|
2118
|
+
enabled: true,
|
|
2119
|
+
priority: 1,
|
|
2120
|
+
background: { type: "solid", colorToken: "secondary" },
|
|
2121
|
+
textColorToken: "primary",
|
|
2122
|
+
borderRadius: "rounded-full",
|
|
2123
|
+
effects: {
|
|
2124
|
+
hover: [{ effectId: "pop" }]
|
|
2125
|
+
}
|
|
2126
|
+
},
|
|
2127
|
+
{
|
|
2128
|
+
id: "header",
|
|
2129
|
+
name: "Header",
|
|
2130
|
+
enabled: true,
|
|
2131
|
+
priority: 2,
|
|
2132
|
+
background: { type: "solid", colorToken: "background" },
|
|
2133
|
+
textColorToken: "primary",
|
|
2134
|
+
borderRadius: "rounded-full",
|
|
2135
|
+
border: { widthClass: "border-2", colorToken: "primary" },
|
|
2136
|
+
effects: {
|
|
2137
|
+
hover: [{ effectId: "background-on-hover", options: { colorToken: "surface" } }]
|
|
2138
|
+
}
|
|
2139
|
+
},
|
|
2140
|
+
{
|
|
2141
|
+
id: "outline",
|
|
2142
|
+
name: "Outline",
|
|
2143
|
+
enabled: true,
|
|
2144
|
+
priority: 3,
|
|
2145
|
+
background: { type: "transparent" },
|
|
2146
|
+
textColorToken: "primary",
|
|
2147
|
+
borderRadius: "rounded-full",
|
|
2148
|
+
border: { widthClass: "border-2", colorToken: "primary" },
|
|
2149
|
+
effects: {
|
|
2150
|
+
hover: [{ effectId: "background-on-hover", options: { colorToken: "background" } }]
|
|
2151
|
+
}
|
|
2152
|
+
},
|
|
2153
|
+
{
|
|
2154
|
+
id: "ghost",
|
|
2155
|
+
name: "Ghost",
|
|
2156
|
+
enabled: true,
|
|
2157
|
+
priority: 3,
|
|
2158
|
+
background: { type: "transparent" },
|
|
2159
|
+
textColorToken: "primary",
|
|
2160
|
+
borderRadius: "rounded-full",
|
|
2161
|
+
effects: {
|
|
2162
|
+
hover: [{ effectId: "background-on-hover", options: { colorToken: "surface" } }]
|
|
2163
|
+
}
|
|
2164
|
+
}
|
|
2165
|
+
]
|
|
2166
|
+
}
|
|
2167
|
+
});
|
|
2168
|
+
|
|
1903
2169
|
// ../theme-core/src/buttons/personalities/soft-pill.ts
|
|
1904
2170
|
var softPill = defineButtonPersonality({
|
|
1905
2171
|
id: "soft-pill",
|
|
@@ -1980,7 +2246,8 @@ var buttonPersonalities = [
|
|
|
1980
2246
|
editorialLink,
|
|
1981
2247
|
pebble,
|
|
1982
2248
|
inkStamp,
|
|
1983
|
-
brushedWash
|
|
2249
|
+
brushedWash,
|
|
2250
|
+
showtimePill
|
|
1984
2251
|
];
|
|
1985
2252
|
var personalitiesById = new Map(
|
|
1986
2253
|
buttonPersonalities.map((p) => [p.id, p])
|
|
@@ -2511,14 +2778,7 @@ var proseLinkStyleSchema = z16.object({
|
|
|
2511
2778
|
underlineThickness: proseLinkUnderlineThicknessSchema.optional(),
|
|
2512
2779
|
underlineOffset: proseLinkUnderlineOffsetSchema.optional()
|
|
2513
2780
|
});
|
|
2514
|
-
var semanticSpacingSchema = z16.enum([
|
|
2515
|
-
"none",
|
|
2516
|
-
"compact",
|
|
2517
|
-
"cozy",
|
|
2518
|
-
"medium",
|
|
2519
|
-
"comfortable",
|
|
2520
|
-
"spacious"
|
|
2521
|
-
]);
|
|
2781
|
+
var semanticSpacingSchema = z16.enum(["none", "compact", "cozy", "medium", "comfortable", "spacious"]);
|
|
2522
2782
|
var boxRoundedSchema = z16.enum(["none", "sm", "md", "lg", "xl", "2xl", "full"]);
|
|
2523
2783
|
var boxBackgroundOverlaySchema = z16.object({
|
|
2524
2784
|
type: z16.enum(["none", "color", "gradient"]).nullable().optional(),
|
|
@@ -2535,6 +2795,7 @@ var boxBackgroundSchema = z16.object({
|
|
|
2535
2795
|
scale: z16.string().nullable().optional(),
|
|
2536
2796
|
position: z16.string().nullable().optional(),
|
|
2537
2797
|
opacity: z16.number().min(0).max(1).nullable().optional(),
|
|
2798
|
+
motion: z16.enum(["static", "fixed-frame"]).nullable().optional(),
|
|
2538
2799
|
overlay: boxBackgroundOverlaySchema.nullable().optional(),
|
|
2539
2800
|
textColor: z16.string().nullable().optional(),
|
|
2540
2801
|
headingColor: z16.string().nullable().optional()
|
|
@@ -2542,7 +2803,7 @@ var boxBackgroundSchema = z16.object({
|
|
|
2542
2803
|
var sectionStylesOverrideSchema = z16.object({
|
|
2543
2804
|
background: boxBackgroundSchema.nullable().optional(),
|
|
2544
2805
|
spacing: semanticSpacingSchema.nullable().optional(),
|
|
2545
|
-
minHeight: z16.enum(["none", "hero", "immersive"]).nullable().optional()
|
|
2806
|
+
minHeight: z16.enum(["none", "banner", "hero", "immersive"]).nullable().optional()
|
|
2546
2807
|
});
|
|
2547
2808
|
var containerStylesOverrideSchema = z16.object({
|
|
2548
2809
|
background: boxBackgroundSchema.nullable().optional(),
|
|
@@ -2561,7 +2822,8 @@ var cardStylesOverrideSchema = z16.object({
|
|
|
2561
2822
|
border: cardBorderOverrideSchema.nullable().optional(),
|
|
2562
2823
|
spacing: semanticSpacingSchema.nullable().optional(),
|
|
2563
2824
|
raised: z16.boolean().nullable().optional(),
|
|
2564
|
-
rounded: boxRoundedSchema.nullable().optional()
|
|
2825
|
+
rounded: boxRoundedSchema.nullable().optional(),
|
|
2826
|
+
treatment: z16.enum(["accent-quote"]).nullable().optional()
|
|
2565
2827
|
});
|
|
2566
2828
|
var blockStyleOverridesSchema = z16.object({
|
|
2567
2829
|
sectionStyles: sectionStylesOverrideSchema.nullable().optional(),
|
|
@@ -2636,15 +2898,7 @@ var inputStyle = z16.object({
|
|
|
2636
2898
|
});
|
|
2637
2899
|
var headerVariant = z16.enum(["classic", "centered", "transparent", "floating", "editorial"]);
|
|
2638
2900
|
var headerPositioning = z16.enum(["static", "sticky", "fixed"]);
|
|
2639
|
-
var headerNavStyle = z16.enum([
|
|
2640
|
-
"minimal",
|
|
2641
|
-
"underline",
|
|
2642
|
-
"underline-grow",
|
|
2643
|
-
"capsule",
|
|
2644
|
-
"scale",
|
|
2645
|
-
"frosted",
|
|
2646
|
-
"solid"
|
|
2647
|
-
]);
|
|
2901
|
+
var headerNavStyle = z16.enum(["minimal", "underline", "underline-grow", "capsule", "scale", "frosted", "solid"]);
|
|
2648
2902
|
var navFontWeight = z16.enum(["regular", "medium", "semibold", "bold"]);
|
|
2649
2903
|
var headerMaxWidth = z16.enum(["container", "full"]);
|
|
2650
2904
|
var headerContainerSchema = z16.object({
|
|
@@ -2698,6 +2952,7 @@ var dropdownStyleSchema = z16.object({
|
|
|
2698
2952
|
// optional = no override (browser default)
|
|
2699
2953
|
}).optional();
|
|
2700
2954
|
var headerCtaGapSchema = z16.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
|
|
2955
|
+
var headerCtaTreatmentSchema = z16.enum(["default", "primary", "secondary", "inverted", "outline", "ghost"]);
|
|
2701
2956
|
var navContainerSchema = z16.object({
|
|
2702
2957
|
type: z16.enum(["none", "pill", "glass"]).default("none"),
|
|
2703
2958
|
tint: z16.string().nullable().optional(),
|
|
@@ -2716,7 +2971,10 @@ var headerSchema = z16.object({
|
|
|
2716
2971
|
shrinkOnScroll: z16.boolean(),
|
|
2717
2972
|
maxWidth: headerMaxWidth,
|
|
2718
2973
|
logoOverride: mediaSchema.nullable().optional(),
|
|
2719
|
-
background: headerBackgroundSchema.default({
|
|
2974
|
+
background: headerBackgroundSchema.default({
|
|
2975
|
+
type: "color",
|
|
2976
|
+
color: "surface"
|
|
2977
|
+
}),
|
|
2720
2978
|
textColor: z16.string().nullable().optional(),
|
|
2721
2979
|
// Site title and general header text
|
|
2722
2980
|
navStyle: headerNavStyle,
|
|
@@ -2736,6 +2994,13 @@ var headerSchema = z16.object({
|
|
|
2736
2994
|
navLinkStyle: navLinkStyleSchema.optional(),
|
|
2737
2995
|
// CTA button spacing (desktop left margin)
|
|
2738
2996
|
ctaGap: headerCtaGapSchema.optional(),
|
|
2997
|
+
// Semantic CTA treatment for header/nav CTA buttons. The Theme V2 compiler
|
|
2998
|
+
// materializes this to ctaVariant against the active button personality.
|
|
2999
|
+
ctaTreatment: headerCtaTreatmentSchema.optional(),
|
|
3000
|
+
// Optional theme-level CTA variant for header/nav CTA buttons.
|
|
3001
|
+
// Internal runtime bridge for the block renderer; prefer ctaTreatment in
|
|
3002
|
+
// authored Theme V2 concepts.
|
|
3003
|
+
ctaVariant: z16.string().min(1).optional(),
|
|
2739
3004
|
// Dropdown menu styling (nav dropdowns and mobile drawer)
|
|
2740
3005
|
dropdownStyle: dropdownStyleSchema
|
|
2741
3006
|
});
|
|
@@ -2792,7 +3057,10 @@ var footerSchema = z16.object({
|
|
|
2792
3057
|
variant: footerVariant,
|
|
2793
3058
|
maxWidth: footerMaxWidth,
|
|
2794
3059
|
showLogoText: z16.boolean().optional(),
|
|
2795
|
-
background: headerBackgroundSchema.default({
|
|
3060
|
+
background: headerBackgroundSchema.default({
|
|
3061
|
+
type: "color",
|
|
3062
|
+
color: "surface"
|
|
3063
|
+
}),
|
|
2796
3064
|
// Footer nav styling (independent from header)
|
|
2797
3065
|
navStyle: headerNavStyle.default("minimal"),
|
|
2798
3066
|
navColor: z16.string().nullable().optional(),
|
|
@@ -2814,17 +3082,7 @@ var layoutSchema = z16.object({
|
|
|
2814
3082
|
desktop: containerPaddingPresetSchema.optional()
|
|
2815
3083
|
}).optional()
|
|
2816
3084
|
}).optional();
|
|
2817
|
-
var heroTypographySizeSchema = z16.enum([
|
|
2818
|
-
"sm",
|
|
2819
|
-
"base",
|
|
2820
|
-
"lg",
|
|
2821
|
-
"xl",
|
|
2822
|
-
"2xl",
|
|
2823
|
-
"3xl",
|
|
2824
|
-
"4xl",
|
|
2825
|
-
"5xl",
|
|
2826
|
-
"6xl"
|
|
2827
|
-
]);
|
|
3085
|
+
var heroTypographySizeSchema = z16.enum(["sm", "base", "lg", "xl", "2xl", "3xl", "4xl", "5xl", "6xl", "editorial"]);
|
|
2828
3086
|
var heroTypographyLineHeightSchema = z16.enum(["tight", "snug", "normal", "relaxed"]);
|
|
2829
3087
|
var heroResponsiveTypographySchema = z16.object({
|
|
2830
3088
|
headlineSize: heroTypographySizeSchema.optional(),
|
|
@@ -2849,6 +3107,13 @@ var heroTypographySchema = z16.object({
|
|
|
2849
3107
|
var heroSchema = z16.object({
|
|
2850
3108
|
typography: heroTypographySchema.optional()
|
|
2851
3109
|
}).optional();
|
|
3110
|
+
var bodyTextIntroTypographySizeSchema = z16.enum(["default", "editorial"]);
|
|
3111
|
+
var bodyTextSchema = z16.object({
|
|
3112
|
+
intro: z16.object({
|
|
3113
|
+
paragraphSize: bodyTextIntroTypographySizeSchema.optional(),
|
|
3114
|
+
headingSize: bodyTextIntroTypographySizeSchema.optional()
|
|
3115
|
+
}).optional()
|
|
3116
|
+
}).optional();
|
|
2852
3117
|
var gradientsSchema = z16.object({
|
|
2853
3118
|
button: z16.string().min(1).nullable().optional(),
|
|
2854
3119
|
hero: z16.string().min(1).nullable().optional(),
|
|
@@ -2870,6 +3135,7 @@ var themeSchema = z16.object({
|
|
|
2870
3135
|
gradients: gradientsSchema.optional(),
|
|
2871
3136
|
layout: layoutSchema,
|
|
2872
3137
|
hero: heroSchema,
|
|
3138
|
+
bodyText: bodyTextSchema,
|
|
2873
3139
|
header: headerSchema,
|
|
2874
3140
|
footer: footerSchema,
|
|
2875
3141
|
buttons: buttonSystemSchema.optional(),
|
|
@@ -2893,10 +3159,7 @@ var themeSchema = z16.object({
|
|
|
2893
3159
|
).optional(),
|
|
2894
3160
|
// Structured block-kind theme overrides (v1: typography prose-link style only)
|
|
2895
3161
|
// Keyed by block kind (usually data-block value like "hero"; "block.hero" also accepted)
|
|
2896
|
-
blockOverrides: z16.record(
|
|
2897
|
-
z16.string(),
|
|
2898
|
-
blockThemeOverrideSchema
|
|
2899
|
-
).optional(),
|
|
3162
|
+
blockOverrides: z16.record(z16.string(), blockThemeOverrideSchema).optional(),
|
|
2900
3163
|
// Structured custom CSS rules
|
|
2901
3164
|
// Validated, scoped, and safe by construction - no @import, remote url(), or global selectors
|
|
2902
3165
|
customCssRules: customCssRulesSchema,
|
|
@@ -3067,6 +3330,28 @@ var brandLedJewel = definePaletteVariant({
|
|
|
3067
3330
|
{ name: "border", hex: "#a8a29e" }
|
|
3068
3331
|
]
|
|
3069
3332
|
});
|
|
3333
|
+
var brandLedBurgundyGold = definePaletteVariant({
|
|
3334
|
+
id: "brand-led-burgundy-gold",
|
|
3335
|
+
name: "Brand-led \u2014 Burgundy Gold",
|
|
3336
|
+
description: "Deep burgundy with warm gold accents and soft neutral grounds.",
|
|
3337
|
+
tags: { tone: "bold", energy: "vibrant", era: "modern" },
|
|
3338
|
+
mode: "light",
|
|
3339
|
+
colors: [
|
|
3340
|
+
{ name: "primary", hex: "#7c2e38" },
|
|
3341
|
+
{ name: "secondary", hex: "#d4af37" },
|
|
3342
|
+
{ name: "accent", hex: "#b8e19a" },
|
|
3343
|
+
{ name: "success", hex: "#10b981" },
|
|
3344
|
+
{ name: "warning", hex: "#f59e0b" },
|
|
3345
|
+
{ name: "destructive", hex: "#ef4444" },
|
|
3346
|
+
{ name: "background", hex: "#f1dfd0" },
|
|
3347
|
+
{ name: "surface", hex: "#f5e6db" },
|
|
3348
|
+
{ name: "surfaceAlt", hex: "#f8ece3" },
|
|
3349
|
+
{ name: "muted", hex: "#c9b8a8" },
|
|
3350
|
+
{ name: "text", hex: "#400000" },
|
|
3351
|
+
{ name: "primaryForeground", hex: "#ffffff" },
|
|
3352
|
+
{ name: "border", hex: "#c9b8a8" }
|
|
3353
|
+
]
|
|
3354
|
+
});
|
|
3070
3355
|
|
|
3071
3356
|
// ../theme-core/src/palette/variants/high-contrast.ts
|
|
3072
3357
|
var highContrastInk = definePaletteVariant({
|
|
@@ -3278,6 +3563,7 @@ var paletteVariants = [
|
|
|
3278
3563
|
brandLedCool,
|
|
3279
3564
|
brandLedWarm,
|
|
3280
3565
|
brandLedJewel,
|
|
3566
|
+
brandLedBurgundyGold,
|
|
3281
3567
|
// Warm-neutral family
|
|
3282
3568
|
warmNeutralClay,
|
|
3283
3569
|
warmNeutralCream,
|
|
@@ -3353,7 +3639,8 @@ var curatedSiteStyleIdValues = [
|
|
|
3353
3639
|
"site-style:quiet-luxury",
|
|
3354
3640
|
"site-style:practical-services",
|
|
3355
3641
|
"site-style:modern-wellness",
|
|
3356
|
-
"site-style:bold-launch"
|
|
3642
|
+
"site-style:bold-launch",
|
|
3643
|
+
"site-style:south-west-twerk-school"
|
|
3357
3644
|
];
|
|
3358
3645
|
var quietBudget = {
|
|
3359
3646
|
accentDensity: "low",
|
|
@@ -3408,6 +3695,8 @@ function defineCuratedSiteStyle(input) {
|
|
|
3408
3695
|
supportedItemSurfaces: generatedDesignOptionCatalog.itemSurfaces,
|
|
3409
3696
|
supportedTransitions: generatedDesignOptionCatalog.transitions
|
|
3410
3697
|
},
|
|
3698
|
+
...input.themeOverrides ? { themeOverrides: input.themeOverrides } : {},
|
|
3699
|
+
recommendedAppearancePresetIds: (input.recommendedAppearancePresetIds ?? []).map(asAppearancePresetId),
|
|
3411
3700
|
buttonPersonalityChoices: input.buttonPersonalityChoices,
|
|
3412
3701
|
paletteVariantChoices: input.paletteVariantChoices
|
|
3413
3702
|
};
|
|
@@ -3654,6 +3943,101 @@ var curatedSiteStyles = [
|
|
|
3654
3943
|
paletteChoice("brand-led-jewel"),
|
|
3655
3944
|
paletteChoice("brand-led-warm")
|
|
3656
3945
|
]
|
|
3946
|
+
}),
|
|
3947
|
+
defineCuratedSiteStyle({
|
|
3948
|
+
id: "site-style:south-west-twerk-school",
|
|
3949
|
+
name: "South West Twerk School",
|
|
3950
|
+
description: "Energetic, editorial, and high-contrast for a branded dance school presence.",
|
|
3951
|
+
generationBrief: "Use confident rhythm, bold burgundy-and-gold accents, large editorial intro copy, strong booking routes, and dark feature sections where proof or forms need emphasis.",
|
|
3952
|
+
selectionKeywords: [
|
|
3953
|
+
"dance",
|
|
3954
|
+
"classes",
|
|
3955
|
+
"workshop",
|
|
3956
|
+
"school",
|
|
3957
|
+
"movement",
|
|
3958
|
+
"performance",
|
|
3959
|
+
"community"
|
|
3960
|
+
],
|
|
3961
|
+
tokenRecipes: {
|
|
3962
|
+
palette: "brand-led",
|
|
3963
|
+
contrast: "maximum",
|
|
3964
|
+
radius: "soft",
|
|
3965
|
+
shadow: "layered",
|
|
3966
|
+
typography: "clean-sans",
|
|
3967
|
+
spacing: "airy",
|
|
3968
|
+
motion: "expressive"
|
|
3969
|
+
},
|
|
3970
|
+
compositionBudget: expressiveBudget,
|
|
3971
|
+
themeOverrides: {
|
|
3972
|
+
typography: {
|
|
3973
|
+
body: {
|
|
3974
|
+
family: "Manrope, system-ui, sans-serif",
|
|
3975
|
+
size: "lg",
|
|
3976
|
+
weight: "regular",
|
|
3977
|
+
lineHeight: "relaxed",
|
|
3978
|
+
letterSpacing: "normal"
|
|
3979
|
+
},
|
|
3980
|
+
headings: {
|
|
3981
|
+
default: {
|
|
3982
|
+
family: '"TAN - PEARL", sans-serif',
|
|
3983
|
+
weight: "bold",
|
|
3984
|
+
lineHeight: "normal",
|
|
3985
|
+
letterSpacing: "tight",
|
|
3986
|
+
colorToken: "primary",
|
|
3987
|
+
italic: null,
|
|
3988
|
+
case: null
|
|
3989
|
+
},
|
|
3990
|
+
h1: {
|
|
3991
|
+
size: "xl",
|
|
3992
|
+
weight: "bold",
|
|
3993
|
+
lineHeight: "normal",
|
|
3994
|
+
letterSpacing: "tight",
|
|
3995
|
+
italic: null
|
|
3996
|
+
},
|
|
3997
|
+
h2: {
|
|
3998
|
+
size: "lg",
|
|
3999
|
+
weight: "bold",
|
|
4000
|
+
lineHeight: "normal",
|
|
4001
|
+
letterSpacing: "normal",
|
|
4002
|
+
italic: null
|
|
4003
|
+
},
|
|
4004
|
+
h3: {
|
|
4005
|
+
size: "md",
|
|
4006
|
+
weight: "bold",
|
|
4007
|
+
lineHeight: "normal",
|
|
4008
|
+
letterSpacing: "normal",
|
|
4009
|
+
italic: null
|
|
4010
|
+
}
|
|
4011
|
+
},
|
|
4012
|
+
scale: "balanced"
|
|
4013
|
+
},
|
|
4014
|
+
bodyText: {
|
|
4015
|
+
intro: {
|
|
4016
|
+
paragraphSize: "editorial",
|
|
4017
|
+
headingSize: "editorial"
|
|
4018
|
+
}
|
|
4019
|
+
}
|
|
4020
|
+
},
|
|
4021
|
+
recommendedAppearancePresetIds: [
|
|
4022
|
+
"site-header-brand-solid-inverted-cta",
|
|
4023
|
+
"site-footer-brand-two-band",
|
|
4024
|
+
"hero-brand-scrim-fixed-frame",
|
|
4025
|
+
"body-text-editorial-intro",
|
|
4026
|
+
"testimonials-accent-quote-proof",
|
|
4027
|
+
"contact-form-dark-card"
|
|
4028
|
+
],
|
|
4029
|
+
buttonPersonalityChoices: [
|
|
4030
|
+
buttonChoice("showtime-pill"),
|
|
4031
|
+
buttonChoice("confident-chip"),
|
|
4032
|
+
buttonChoice("ink-stamp"),
|
|
4033
|
+
buttonChoice("brushed-wash")
|
|
4034
|
+
],
|
|
4035
|
+
paletteVariantChoices: [
|
|
4036
|
+
paletteChoice("brand-led-burgundy-gold"),
|
|
4037
|
+
paletteChoice("brand-led-jewel"),
|
|
4038
|
+
paletteChoice("brand-led-warm"),
|
|
4039
|
+
paletteChoice("high-contrast-ink")
|
|
4040
|
+
]
|
|
3657
4041
|
})
|
|
3658
4042
|
];
|
|
3659
4043
|
var curatedSiteStylesById = new Map(
|
|
@@ -3698,6 +4082,40 @@ var heroLegibilityStrategySchema = z18.enum([
|
|
|
3698
4082
|
"scrim-gradient",
|
|
3699
4083
|
"solid-panel"
|
|
3700
4084
|
]);
|
|
4085
|
+
var sectionHeightIntentSchema = z18.enum([
|
|
4086
|
+
"default",
|
|
4087
|
+
"banner",
|
|
4088
|
+
"hero",
|
|
4089
|
+
"immersive"
|
|
4090
|
+
]);
|
|
4091
|
+
var imageSurfaceTreatmentIntensitySchema = z18.enum(["soft", "balanced", "strong"]);
|
|
4092
|
+
var imageSurfaceMotionSchema = z18.enum(["static", "fixed-frame"]);
|
|
4093
|
+
var imageSurfaceTreatmentSchema = z18.discriminatedUnion("kind", [
|
|
4094
|
+
z18.object({ kind: z18.literal("none") }).strict(),
|
|
4095
|
+
z18.object({
|
|
4096
|
+
kind: z18.literal("brand-scrim"),
|
|
4097
|
+
token: z18.enum(["primary", "secondary", "accent"]),
|
|
4098
|
+
intensity: imageSurfaceTreatmentIntensitySchema.optional()
|
|
4099
|
+
}).strict(),
|
|
4100
|
+
z18.object({
|
|
4101
|
+
kind: z18.literal("brand-wash"),
|
|
4102
|
+
token: z18.enum(["primary", "secondary", "accent"]),
|
|
4103
|
+
intensity: imageSurfaceTreatmentIntensitySchema.optional()
|
|
4104
|
+
}).strict(),
|
|
4105
|
+
z18.object({
|
|
4106
|
+
kind: z18.literal("neutral-scrim"),
|
|
4107
|
+
intensity: imageSurfaceTreatmentIntensitySchema.optional()
|
|
4108
|
+
}).strict(),
|
|
4109
|
+
z18.object({
|
|
4110
|
+
kind: z18.literal("neutral-wash"),
|
|
4111
|
+
intensity: imageSurfaceTreatmentIntensitySchema.optional()
|
|
4112
|
+
}).strict(),
|
|
4113
|
+
z18.object({
|
|
4114
|
+
kind: z18.literal("solid-panel"),
|
|
4115
|
+
intensity: imageSurfaceTreatmentIntensitySchema.optional()
|
|
4116
|
+
}).strict()
|
|
4117
|
+
]);
|
|
4118
|
+
var testimonialCardTreatmentSchema = z18.enum(["default", "accent-quote"]);
|
|
3701
4119
|
function uniqueNonEmpty(values) {
|
|
3702
4120
|
const uniqueValues = [...new Set(values)];
|
|
3703
4121
|
const firstValue = uniqueValues[0];
|
|
@@ -3736,7 +4154,11 @@ var blockDesignPlanSchema = z18.object({
|
|
|
3736
4154
|
itemSurface: z18.enum(userDesignOptionCatalog.itemSurfaces),
|
|
3737
4155
|
transitionAfter: z18.enum(userDesignOptionCatalog.transitions),
|
|
3738
4156
|
emphasis: z18.enum(userDesignOptionCatalog.emphases),
|
|
3739
|
-
|
|
4157
|
+
sectionHeight: sectionHeightIntentSchema.optional(),
|
|
4158
|
+
heroLegibility: heroLegibilityStrategySchema.optional(),
|
|
4159
|
+
imageSurfaceTreatment: imageSurfaceTreatmentSchema.optional(),
|
|
4160
|
+
imageSurfaceMotion: imageSurfaceMotionSchema.optional(),
|
|
4161
|
+
testimonialCardTreatment: testimonialCardTreatmentSchema.optional()
|
|
3740
4162
|
}).strict();
|
|
3741
4163
|
var styleAuthoritySchema = z18.discriminatedUnion("kind", [
|
|
3742
4164
|
z18.object({
|
|
@@ -5845,23 +6267,6 @@ function styledCard(children, opts, ...mods) {
|
|
|
5845
6267
|
);
|
|
5846
6268
|
}
|
|
5847
6269
|
|
|
5848
|
-
// ../blocks/src/system/node/fragments/typography.ts
|
|
5849
|
-
function mergeClassName(base, extra) {
|
|
5850
|
-
return [base, extra ?? ""].filter(Boolean).join(" ");
|
|
5851
|
-
}
|
|
5852
|
-
function captionText(opts, ...mods) {
|
|
5853
|
-
const {
|
|
5854
|
-
as: asProp,
|
|
5855
|
-
className: classNameProp,
|
|
5856
|
-
color,
|
|
5857
|
-
...rest
|
|
5858
|
-
} = opts ?? {};
|
|
5859
|
-
const as = asProp ?? "p";
|
|
5860
|
-
const className = mergeClassName("rb-caption", classNameProp);
|
|
5861
|
-
const style = textColorStyle(color ?? "mutedText");
|
|
5862
|
-
return text({ ...rest, as, className, style }, ...mods);
|
|
5863
|
-
}
|
|
5864
|
-
|
|
5865
6270
|
// ../blocks/src/system/node/fragments/feedbackCallout.ts
|
|
5866
6271
|
function joinClasses(...parts) {
|
|
5867
6272
|
return parts.filter((part) => typeof part === "string" && part.length > 0).join(" ");
|
|
@@ -6760,18 +7165,17 @@ function buildAttributionNodes() {
|
|
|
6760
7165
|
const name = text(
|
|
6761
7166
|
{
|
|
6762
7167
|
as: "strong",
|
|
6763
|
-
className: "rb-block"
|
|
6764
|
-
style: textColorStyle("text")
|
|
7168
|
+
className: "rb-block"
|
|
6765
7169
|
},
|
|
6766
7170
|
bind("testimonial.content.name", { fallback: "Anonymous" })
|
|
6767
7171
|
);
|
|
6768
|
-
const jobTitle =
|
|
6769
|
-
|
|
7172
|
+
const jobTitle = text(
|
|
7173
|
+
{ as: "p", className: "rb-caption" },
|
|
6770
7174
|
when("testimonial.content.jobTitle"),
|
|
6771
7175
|
bind("testimonial.content.jobTitle")
|
|
6772
7176
|
);
|
|
6773
|
-
const company =
|
|
6774
|
-
|
|
7177
|
+
const company = text(
|
|
7178
|
+
{ as: "p", className: "rb-caption" },
|
|
6775
7179
|
when("testimonial.content.company"),
|
|
6776
7180
|
bind("testimonial.content.company")
|
|
6777
7181
|
);
|
|
@@ -6805,8 +7209,7 @@ function buildTestimonialCard(...mods) {
|
|
|
6805
7209
|
);
|
|
6806
7210
|
const body = richText(
|
|
6807
7211
|
{
|
|
6808
|
-
className: "rb-prose rb-max-w-none"
|
|
6809
|
-
style: textColorStyle("text")
|
|
7212
|
+
className: "rb-prose rb-max-w-none"
|
|
6810
7213
|
},
|
|
6811
7214
|
bind("testimonial.content.body"),
|
|
6812
7215
|
when("testimonial.content.body")
|
|
@@ -8436,6 +8839,7 @@ function heroContentCard(children, gap) {
|
|
|
8436
8839
|
return styledContainer({
|
|
8437
8840
|
bindFrom: "_contentCardStyles",
|
|
8438
8841
|
constrainWidth: false,
|
|
8842
|
+
baseClassName: "rb-relative rb-isolate",
|
|
8439
8843
|
rootType: "stack",
|
|
8440
8844
|
rootProps: {
|
|
8441
8845
|
gap
|
|
@@ -8466,6 +8870,7 @@ function heroContentWrapper(children, gap, fallbackClassName) {
|
|
|
8466
8870
|
function heroContainerStack(children, gap) {
|
|
8467
8871
|
return styledContainer({
|
|
8468
8872
|
rootType: "stack",
|
|
8873
|
+
baseClassName: "rb-relative rb-isolate",
|
|
8469
8874
|
rootProps: {
|
|
8470
8875
|
gap: "none",
|
|
8471
8876
|
justify: {
|
|
@@ -9581,7 +9986,7 @@ var createNavRow = (className, align = "end") => navRow({
|
|
|
9581
9986
|
var headerCta = ctaButton({
|
|
9582
9987
|
basePath: "menu.ctaItem",
|
|
9583
9988
|
whenPath: "menu.ctaItem.label",
|
|
9584
|
-
variantPath: "
|
|
9989
|
+
variantPath: "$root.theme.header.ctaVariant",
|
|
9585
9990
|
linkPath: "menu.ctaItem.link",
|
|
9586
9991
|
sizeFallback: "sm",
|
|
9587
9992
|
className: `header-cta ${desktopOnlyDisplay("inline-flex")} rb-ml-6`
|
|
@@ -9589,7 +9994,7 @@ var headerCta = ctaButton({
|
|
|
9589
9994
|
var mobileCta = ctaButton({
|
|
9590
9995
|
basePath: "menu.ctaItem",
|
|
9591
9996
|
whenPath: "menu.ctaItem.label",
|
|
9592
|
-
variantPath: "
|
|
9997
|
+
variantPath: "$root.theme.header.ctaVariant",
|
|
9593
9998
|
linkPath: "menu.ctaItem.link",
|
|
9594
9999
|
sizeFallback: "md",
|
|
9595
10000
|
className: "nav-mobile-cta rb-w-full"
|
|
@@ -10050,7 +10455,13 @@ var splitFooterLayout = stack(
|
|
|
10050
10455
|
[
|
|
10051
10456
|
inline(
|
|
10052
10457
|
{
|
|
10053
|
-
className:
|
|
10458
|
+
className: {
|
|
10459
|
+
$bind: {
|
|
10460
|
+
from: "$root.theme.footer.logo",
|
|
10461
|
+
transforms: [{ id: "layout.footerSplitMainClass" }],
|
|
10462
|
+
fallback: "rb-flex rb-w-full rb-flex-col rb-items-start rb-justify-between rb-gap-8 rb-md-flex-row rb-md-items-end"
|
|
10463
|
+
}
|
|
10464
|
+
}
|
|
10054
10465
|
},
|
|
10055
10466
|
[
|
|
10056
10467
|
stack(
|
|
@@ -12138,7 +12549,8 @@ var courseEntrySubrouteContextSchema = z37.union([
|
|
|
12138
12549
|
run: z37.object({
|
|
12139
12550
|
courseId: z37.string(),
|
|
12140
12551
|
seriesId: z37.string(),
|
|
12141
|
-
runSlug: z37.string()
|
|
12552
|
+
runSlug: z37.string(),
|
|
12553
|
+
runName: z37.string().nullable()
|
|
12142
12554
|
})
|
|
12143
12555
|
}),
|
|
12144
12556
|
z37.object({
|
|
@@ -18009,6 +18421,34 @@ function panelCapable() {
|
|
|
18009
18421
|
itemSurfaces: "unsupported"
|
|
18010
18422
|
});
|
|
18011
18423
|
}
|
|
18424
|
+
var heroSectionHeights = [
|
|
18425
|
+
"default",
|
|
18426
|
+
"banner",
|
|
18427
|
+
"hero",
|
|
18428
|
+
"immersive"
|
|
18429
|
+
];
|
|
18430
|
+
var heroImageSurfaceTreatments = [
|
|
18431
|
+
"none",
|
|
18432
|
+
"brand-scrim",
|
|
18433
|
+
"brand-wash",
|
|
18434
|
+
"neutral-scrim",
|
|
18435
|
+
"neutral-wash",
|
|
18436
|
+
"solid-panel"
|
|
18437
|
+
];
|
|
18438
|
+
var heroImageSurfaceMotions = [
|
|
18439
|
+
"static",
|
|
18440
|
+
"fixed-frame"
|
|
18441
|
+
];
|
|
18442
|
+
function heroCapable() {
|
|
18443
|
+
return declareBlockDesignCapability({
|
|
18444
|
+
sectionSurfaces: "supported",
|
|
18445
|
+
contentFrames: ["plain", "panel"],
|
|
18446
|
+
itemSurfaces: "unsupported",
|
|
18447
|
+
sectionHeights: heroSectionHeights,
|
|
18448
|
+
imageSurfaceTreatments: heroImageSurfaceTreatments,
|
|
18449
|
+
imageSurfaceMotions: heroImageSurfaceMotions
|
|
18450
|
+
});
|
|
18451
|
+
}
|
|
18012
18452
|
function plainItemsCapable() {
|
|
18013
18453
|
return declareBlockDesignCapability({
|
|
18014
18454
|
sectionSurfaces: "supported",
|
|
@@ -18125,7 +18565,7 @@ function withDesignCapability(blockKind, definition, designCapability, designMet
|
|
|
18125
18565
|
};
|
|
18126
18566
|
}
|
|
18127
18567
|
var systemBlockDefinitionsRaw = [
|
|
18128
|
-
withDesignCapability("block.hero", heroBlockDefinition,
|
|
18568
|
+
withDesignCapability("block.hero", heroBlockDefinition, heroCapable(), defineBlockDesignMetadata({
|
|
18129
18569
|
flow: heroFlow,
|
|
18130
18570
|
layoutProfiles: [
|
|
18131
18571
|
layoutProfile({
|
|
@@ -18229,7 +18669,12 @@ var systemBlockDefinitionsRaw = [
|
|
|
18229
18669
|
flow: siteChromeFlow,
|
|
18230
18670
|
layoutProfiles: []
|
|
18231
18671
|
})),
|
|
18232
|
-
withDesignCapability("block.testimonials", testimonialsBlockDefinition,
|
|
18672
|
+
withDesignCapability("block.testimonials", testimonialsBlockDefinition, declareBlockDesignCapability({
|
|
18673
|
+
sectionSurfaces: "supported",
|
|
18674
|
+
contentFrames: ["plain", "panel"],
|
|
18675
|
+
itemSurfaces: "supported",
|
|
18676
|
+
testimonialCardTreatments: ["default", "accent-quote"]
|
|
18677
|
+
}), defineBlockDesignMetadata({
|
|
18233
18678
|
flow: proofFlow,
|
|
18234
18679
|
layoutProfiles: [
|
|
18235
18680
|
layoutProfile({
|