@riverbankcms/sdk 0.130.0 → 0.130.2
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/CHANGELOG.md +85 -0
- package/README.md +1 -1
- package/dist/{PreviewEditorSidebar-DiEpbOdw.mjs → PreviewEditorSidebar-BY-1QdE2.mjs} +18 -15
- package/dist/{PreviewEditorUI-C6MvxnIa.mjs → PreviewEditorUI-BS34jI9_.mjs} +3 -3
- package/dist/{PreviewQueryProvider-C2rnoPz6.mjs → PreviewQueryProvider-BD0kOjtI.mjs} +1 -1
- package/dist/{SdkPreviewModeRuntime-DRXA_m5L.mjs → SdkPreviewModeRuntime-B1pWnhu-.mjs} +48 -21
- package/dist/{SiteChromeCustomizeContext-BTHdv5_-.mjs → SiteChromeCustomizeContext-BhUG_72i.mjs} +6180 -5076
- package/dist/_dts/ai/src/contracts/proposals.d.ts +309 -32
- package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +969 -112
- package/dist/_dts/api/src/accountApi.d.ts +213 -0
- package/dist/_dts/api/src/accountEndpointDefinitions.d.ts +30 -0
- package/dist/_dts/api/src/accountEndpoints.d.ts +254 -0
- package/dist/_dts/api/src/apiCallParams.d.ts +60 -0
- package/dist/_dts/api/src/bookingConfig.d.ts +10 -20
- package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +4 -5
- package/dist/_dts/api/src/bookingManagementEventEndpointTypes.d.ts +15 -0
- package/dist/_dts/api/src/bookingSettingsSections.d.ts +9 -0
- package/dist/_dts/api/src/bookingVerticals.d.ts +2 -2
- package/dist/_dts/api/src/commercePortalEndpoints.d.ts +2 -0
- package/dist/_dts/api/src/endpoints.d.ts +1253 -1209
- package/dist/_dts/api/src/event-destination-policy.d.ts +1 -1
- package/dist/_dts/api/src/eventManagementContracts.d.ts +83 -7
- package/dist/_dts/api/src/eventManagementEndpointDefinitions.d.ts +26 -0
- package/dist/_dts/api/src/eventSeriesPresentationPreset.d.ts +12 -0
- package/dist/_dts/api/src/index.d.ts +11 -3
- package/dist/_dts/api/src/indexCoreTypes.d.ts +1 -0
- package/dist/_dts/api/src/indexExtendedTypes.d.ts +1 -0
- package/dist/_dts/api/src/oauth.d.ts +8 -0
- package/dist/_dts/api/src/preview-auth.d.ts +26 -0
- package/dist/_dts/api/src/publicExperience/eventEndpoints.d.ts +5 -5
- package/dist/_dts/api/src/publicExperience/wholeSeriesEndpoints.d.ts +0 -1
- package/dist/_dts/api/src/sdk-event-upsert.d.ts +2 -0
- package/dist/_dts/api/src/sdkBlockUpsertContracts.d.ts +48 -0
- package/dist/_dts/api/src/sdkContracts.d.ts +5 -13
- package/dist/_dts/api/src/sdkEventCategoryContracts.d.ts +9 -0
- package/dist/_dts/api/src/sdkThemeWire.d.ts +40 -8
- package/dist/_dts/api/src/settings/permissions.d.ts +2 -2
- package/dist/_dts/api/src/siteApiKeyEndpointDefinitions.d.ts +66 -0
- package/dist/_dts/api/src/siteInfrastructure.d.ts +3 -3
- package/dist/_dts/api/src/siteOperations.d.ts +1 -1
- package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +12 -4
- package/dist/_dts/api/src/types.d.ts +7 -59
- package/dist/_dts/block-form/src/client/index.d.ts +15 -23
- package/dist/_dts/block-form/src/index.d.ts +23 -22
- package/dist/_dts/blocks/src/primitives/layout/Grid.d.ts +18 -1
- package/dist/_dts/blocks/src/system/blocks/appointment-booking.d.ts +1 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/filtering.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +61 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +24 -22
- package/dist/_dts/blocks/src/system/blocks/feature-cards.d.ts +25 -1
- package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +7 -30
- package/dist/_dts/blocks/src/system/blocks/site-header.d.ts +0 -1
- package/dist/_dts/blocks/src/system/blocks/team-members.d.ts +4 -63
- package/dist/_dts/blocks/src/system/customize/backgrounds.d.ts +1 -3
- package/dist/_dts/blocks/src/system/fields/boxStyles.d.ts +13 -1
- package/dist/_dts/blocks/src/system/fields/gridLayout.d.ts +20 -0
- package/dist/_dts/blocks/src/system/node/fragments/classNameBinding.d.ts +6 -1
- package/dist/_dts/blocks/src/system/node/fragments/styledCard.d.ts +31 -0
- package/dist/_dts/blocks/src/system/runtime/api/endpoints.d.ts +4 -0
- package/dist/_dts/blocks/src/system/runtime/api/types/courses.d.ts +0 -1
- package/dist/_dts/blocks/src/system/runtime/api/types/events.d.ts +0 -1
- package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessBookingFlow.state.d.ts +4 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.headless.state.d.ts +24 -8
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.server.d.ts +8 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.validationErrors.d.ts +17 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.planning.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventScope.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.server.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +42 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/utils.d.ts +4 -1
- package/dist/_dts/blocks/src/system/runtime/shared/components/FeedbackMessage.d.ts +17 -1
- package/dist/_dts/blocks/src/system/runtime/shared/components/index.d.ts +1 -1
- package/dist/_dts/blocks/src/system/spacing.d.ts +1 -1
- package/dist/_dts/blocks/src/system/transforms/registry/_utils/boxStyleClassNames.d.ts +90 -0
- package/dist/_dts/blocks/src/system/transforms/registry/_utils/surfaceForegroundStyles.d.ts +4 -0
- package/dist/_dts/blocks/src/system/transforms/registry/boxStyles.d.ts +26 -0
- package/dist/_dts/blocks/src/system/transforms/registry/layout.d.ts +4 -37
- package/dist/_dts/content-editor/src/components/ContentFieldsForm.d.ts +2 -2
- package/dist/_dts/content-model/src/content-types/builtin-schemas.d.ts +6 -6
- package/dist/_dts/content-model/src/content-types/builtins.d.ts +6 -6
- package/dist/_dts/core/src/branded.d.ts +4 -0
- package/dist/_dts/core/src/event-page-surface-subject.d.ts +25 -4
- package/dist/_dts/core/src/index.d.ts +3 -0
- package/dist/_dts/core/src/public-event-booking-availability.d.ts +8 -0
- package/dist/_dts/core/src/secret.d.ts +44 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +341 -0
- package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +2 -1
- package/dist/_dts/editor-blocks/src/BlockForm.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/block-editor/BlockCard.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/block-editor/BlockCardBody.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/BlockCardHeader.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/SortableBlockItem.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockValidationManifests.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/preparedManifest.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/blockPayload.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/index.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/media/MediaField.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/widgets/button/ButtonField.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/button/ButtonVariantField.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/button/index.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/content-type-select/ContentTypeSelectField.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/entry-picker/EntryPickerField.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/entry-picker/index.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/icon-picker/IconPickerField.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/inline-text/InlineTextField.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/link/LinkField.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/widgets/offerings-preview/OfferingsPreviewGroupOrderField.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/reference/ReferenceField.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/widgets/rich-text/RichTextField.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/widgets/site-option-picker/SiteOptionPickerField.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/site-option-picker/utils.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/blocks/useBlockCustomizeControls.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/EntryEditorPanel.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/EntrySlotBlockEditorPanel.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +2 -0
- package/dist/_dts/preview-next/src/client/preview/PreviewSiteFontStorageContext.d.ts +6 -0
- package/dist/_dts/preview-next/src/client/preview/siteFontPreview.d.ts +5 -0
- package/dist/_dts/preview-next/src/client/sdk/contentStorage.d.ts +10 -0
- package/dist/_dts/preview-next/src/client/widgets/widgetOverrides.d.ts +1 -1
- package/dist/_dts/preview-next/src/index.d.ts +1 -0
- package/dist/_dts/preview-next/src/keepAlive.d.ts +3 -5
- package/dist/_dts/preview-next/src/refresh-contract.d.ts +1 -0
- package/dist/_dts/preview-next/src/route-contract.d.ts +7 -0
- package/dist/_dts/sdk/src/contracts/index.d.ts +1 -1
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +61 -39
- package/dist/_dts/sdk/src/preview-next/keep-alive.d.ts +1 -1
- package/dist/_dts/sdk/src/rendering/components/Layout.d.ts +1 -1
- package/dist/_dts/sdk/src/rendering/index.d.ts +1 -1
- package/dist/_dts/sdk/src/rendering/islands/types.d.ts +9 -1
- package/dist/_dts/sdk/src/theme-bridge/types.d.ts +4 -2
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/theme-core/src/cards/core.d.ts +54 -10
- package/dist/_dts/theme-core/src/cards/decorations.d.ts +33 -0
- package/dist/_dts/theme-core/src/cards/generateDefaultCardSystem.d.ts +7 -2
- package/dist/_dts/theme-core/src/cards/index.d.ts +3 -0
- package/dist/_dts/theme-core/src/cards/openCardVariant.d.ts +24 -0
- package/dist/_dts/theme-core/src/cards/roles.d.ts +38 -0
- package/dist/_dts/theme-core/src/cards/siteStyleDefaults.d.ts +53 -8
- package/dist/_dts/theme-core/src/cards/types.d.ts +489 -21
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/header/legacyHeaderVariant.d.ts +59 -0
- package/dist/_dts/theme-core/src/header/paintTargets.d.ts +2 -2
- package/dist/_dts/theme-core/src/header/scrollTreatment.d.ts +3 -2
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +12 -135
- package/dist/_dts/theme-core/src/palette/utils/contrast.d.ts +1 -0
- package/dist/_dts/theme-core/src/palette/utils/opaqueSurfaceColor.d.ts +6 -0
- package/dist/_dts/theme-core/src/runtime/buildThemeRuntimeFromBridge.d.ts +1 -1
- package/dist/_dts/theme-core/src/schema.d.ts +301 -94
- package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +84 -102
- package/dist/_dts/theme-core/src/site-styles/appearancePresetResolution.d.ts +12 -1
- package/dist/_dts/theme-core/src/site-styles/appearancePresetTypes.d.ts +9 -4
- package/dist/_dts/theme-core/src/site-styles/backgroundAppearance.d.ts +0 -20
- package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +84 -102
- package/dist/_dts/theme-core/src/site-styles/cardRoleVocabulary.d.ts +48 -0
- package/dist/_dts/theme-core/src/site-styles/designState.d.ts +21 -385
- package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +10 -18
- package/dist/_dts/theme-core/src/site-styles/headerLayoutTypes.d.ts +2 -4
- package/dist/_dts/theme-core/src/site-styles/headerOpeningForeground.d.ts +2 -9
- package/dist/_dts/theme-core/src/site-styles/headerOpeningSection.d.ts +0 -2
- package/dist/_dts/theme-core/src/site-styles/index.d.ts +5 -0
- package/dist/_dts/theme-core/src/site-styles/pageDesignAppearanceAvailability.d.ts +3 -0
- package/dist/_dts/theme-core/src/site-styles/pageDesignEditorCapabilities.d.ts +22 -0
- package/dist/_dts/theme-core/src/site-styles/pageDesignEditorModel.d.ts +9 -8
- package/dist/_dts/theme-core/src/site-styles/pageDesignIntentEquality.d.ts +3 -0
- package/dist/_dts/theme-core/src/site-styles/previewRuntimeCapabilities.d.ts +19 -0
- package/dist/_dts/theme-core/src/site-styles/runtimeBackgroundResolution.d.ts +9 -0
- package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +1 -62
- package/dist/_dts/theme-core/src/site-styles/sourceCatalogs.d.ts +13 -12
- package/dist/_dts/theme-core/src/site-styles/types.d.ts +50 -39
- package/dist/_dts/theme-core/src/siteChromePlanning.d.ts +9 -9
- package/dist/_dts/theme-core/src/status/generateStatusCss.d.ts +1 -0
- package/dist/_dts/theme-core/src/surfaces/index.d.ts +1 -0
- package/dist/_dts/theme-core/src/surfaces/resolveSurfaceForeground.d.ts +39 -0
- package/dist/_dts/ui/src/navigation-tabs.d.ts +3 -2
- package/dist/client/{CourseRegistrationWizard-Bvtz9G9g.mjs → CourseRegistrationWizard-DGW9F0SQ.mjs} +7 -7
- package/dist/client/{DiscountCodeDisclosure-Ur-Xx1U_.mjs → DiscountCodeDisclosure-BPZ-yfGI.mjs} +1 -1
- package/dist/client/{EventCombined.client-EhscD4U6.mjs → EventCombined.client-Cjt3kKYR.mjs} +4 -4
- package/dist/client/{EventListing.client-Bn26cFTY.mjs → EventListing.client-DY9dn6Fh.mjs} +2 -2
- package/dist/client/{FeedbackMessage-ByMrs3cr.mjs → FeedbackMessage-CtLvvS_d.mjs} +15 -3
- package/dist/client/{LeafletStaticMap-BUw9Ntzr.mjs → LeafletStaticMap--2c61XYn.mjs} +1 -1
- package/dist/client/{StepIndicator-BfbdiVQI.mjs → StepIndicator-CLjQhkDb.mjs} +3 -3
- package/dist/client/{accordion-CjIeof73.mjs → accordion-_boYwHHi.mjs} +1 -1
- package/dist/client/{bookingForm-DwEeovf_.mjs → bookingForm--AqEfyBX.mjs} +56 -39
- package/dist/client/bookings.mjs +393 -192
- package/dist/client/{carousel-BMrfgOba.mjs → carousel-CVI2dqZr.mjs} +2 -2
- package/dist/client/{carousel.client-CpwTUhIo.mjs → carousel.client-59G_WMr4.mjs} +1 -1
- package/dist/client/{cart-rXEdxTdb.mjs → cart-DR6IiPz9.mjs} +3 -3
- package/dist/client/{checkout-D3JlSzh3.mjs → checkout-CsrGAfQt.mjs} +3 -3
- package/dist/client/client.mjs +4524 -3512
- package/dist/client/{colorStyles-BWpj_h4C.mjs → colorStyles-CrxJrPjJ.mjs} +277 -1
- package/dist/client/{context-CJz1Vlsz.mjs → context-B83PiNzm.mjs} +6 -21
- package/dist/client/{courseRegistration-DO5XvMAA.mjs → courseRegistration-aNJVaLa3.mjs} +3 -3
- package/dist/client/{eventCalendar-DO6rTqCn.mjs → eventCalendar-OZ7h59VN.mjs} +6 -6
- package/dist/client/{eventCombined-bJ3i_ovU.mjs → eventCombined-BbJ6bFKz.mjs} +3 -3
- package/dist/client/{eventDetails-CCbrXE7o.mjs → eventDetails-BLyUBiCT.mjs} +3 -3
- package/dist/client/{eventListing-Bdlt9YTm.mjs → eventListing-DuP1yhBS.mjs} +3 -3
- package/dist/client/{eventRegistration-B02lt6iY.mjs → eventRegistration-BXyECPa-.mjs} +11 -12
- package/dist/client/{form-DrUBAAox.mjs → form-BA4t3kKU.mjs} +4 -4
- package/dist/client/{headerSection-MzqvHL6T.mjs → headerSection-CpNaJxhW.mjs} +2 -2
- package/dist/client/hooks.mjs +1967 -2059
- package/dist/client/{locationMap-DG8BxTBm.mjs → locationMap-3HGMCL7_.mjs} +3 -3
- package/dist/client/{media-CNE1Z-wb.mjs → media-BOHuueS5.mjs} +16 -4
- package/dist/client/{newsletterForm-BzO-Td3p.mjs → newsletterForm-C2s6Mw67.mjs} +4 -4
- package/dist/client/{pricing-NgK7ozkg.mjs → pricing-BiqIMgZk.mjs} +1 -1
- package/dist/client/{productDetail-CfQ7rhVK.mjs → productDetail-C9joWhdE.mjs} +3 -3
- package/dist/client/{productList-C23rOLUi.mjs → productList-CjzdU3pB.mjs} +3 -3
- package/dist/client/{propsDecoder-CAZdhwjs.mjs → propsDecoder-CBPGXEYX.mjs} +395 -402
- package/dist/client/rendering/client.mjs +2004 -2856
- package/dist/client/rendering/islands.mjs +20 -20
- package/dist/client/rendering.mjs +4605 -3496
- package/dist/client/{scrollToBlock-DSSqVQr1.mjs → scrollToBlock-DZ73aEX6.mjs} +1 -1
- package/dist/client/{shop-BMToKLK7.mjs → shop-CQRai7hj.mjs} +7 -7
- package/dist/client/{shop-commerce-DB4JRKmp.mjs → shop-commerce-hP9UboOx.mjs} +8 -8
- package/dist/client/{shop-commerce-store-BOqSIOuc.mjs → shop-commerce-store-DiD5a32e.mjs} +1 -1
- package/dist/client/{shopShared-B6SK9DZv.mjs → shopShared-DP8DXTkF.mjs} +5 -5
- package/dist/client/{useEventFilters-CULOa4nB.mjs → useEventFilters-pF_OJNQP.mjs} +137 -81
- package/dist/client/{usePolling-BGG_8-jl.mjs → usePolling-Cls91SD2.mjs} +2 -2
- package/dist/preview-next/before-render.mjs +192 -108
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/preview-next/keepAlive.mjs +7406 -29
- package/dist/preview-next/middleware.mjs +186 -107
- package/dist/{previewAuthStore-_GXFRg2W.mjs → previewAuthStore-CX1C_KJ4.mjs} +185 -107
- package/dist/{sdk-runtime-hhSOMShR.mjs → sdk-runtime-5CcPAI14.mjs} +2 -2
- package/dist/{separator-flRaFc14.mjs → separator-BXlYN_gr.mjs} +1 -1
- package/dist/server/components.mjs +6363 -4998
- package/dist/server/config-validation.mjs +1967 -2059
- package/dist/server/config.mjs +1967 -2059
- package/dist/server/data.mjs +1967 -2059
- package/dist/server/index.mjs +186 -108
- package/dist/server/next.mjs +6553 -5285
- package/dist/server/page-converter.mjs +1031 -1844
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +3352 -3006
- package/dist/server/rendering.mjs +6289 -4924
- package/dist/server/routing.mjs +1906 -1036
- package/dist/server/server.mjs +1976 -2165
- package/dist/server/theme-bridge.mjs +949 -670
- package/dist/server/theme.mjs +252 -51
- package/dist/styles/index.css +295 -334
- package/package.json +3 -2
- package/dist/_dts/block-form/src/client/blockDraftSaveability.d.ts +0 -1
- package/dist/_dts/block-form/src/widgets/index.d.ts +0 -20
- package/dist/_dts/blocks/src/system/runtime/api/requestBody.d.ts +0 -7
- package/dist/client/clsx-DgIEfj3H.mjs +0 -16
|
@@ -6,9 +6,14 @@ import type { CardSystem } from './types';
|
|
|
6
6
|
* Creates the baseline card roles that blocks can request:
|
|
7
7
|
* - `default` for everyday surfaced cards
|
|
8
8
|
* - `alternative` for emphasised cards
|
|
9
|
+
* - `open` for boxless-but-marked cards
|
|
9
10
|
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
11
|
+
* This is the terminal arm of the role fallback chain, so every theme
|
|
12
|
+
* implements every surface role whether or not its site style defines cards.
|
|
13
|
+
*
|
|
14
|
+
* The surfaced variants explicitly set theme.shadow and theme.corners for
|
|
15
|
+
* runtime transform access, and both use theme.border when it has meaningful
|
|
16
|
+
* width.
|
|
12
17
|
*
|
|
13
18
|
* This ensures cards have sensible defaults even when theme.cards is undefined.
|
|
14
19
|
*
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { CardEdgeRuleWidth, CardVariant } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* The boxless `open` card, as data.
|
|
4
|
+
*
|
|
5
|
+
* Every implementation of the role is the same shape — no fill, no box, square
|
|
6
|
+
* corners, an inline-flush content edge, a full hairline rule across the top
|
|
7
|
+
* and a short brand accent sitting on it. This absorbed the legacy
|
|
8
|
+
* `editorial-rule` treatment class, which Phase 3 deleted; the treatment's
|
|
9
|
+
* bundled `margin-top: 1rem` is deliberately absent, because outer rhythm is
|
|
10
|
+
* composition, not card identity. Pinned by `openCardVariant.test.ts`.
|
|
11
|
+
*
|
|
12
|
+
* What a site style gets to change is the *marking*: which token the accent
|
|
13
|
+
* uses and how heavy it is. Anna Raven's grounded-practice style takes her
|
|
14
|
+
* ochre `accent` where the generated baseline takes `primary`.
|
|
15
|
+
*/
|
|
16
|
+
export declare function boxlessOpenCardVariant(marking: Readonly<{
|
|
17
|
+
/** Token for the short accent rule riding on the hairline. */
|
|
18
|
+
accentToken: string;
|
|
19
|
+
accentWidth: CardEdgeRuleWidth;
|
|
20
|
+
/** Token for the full-width hairline. Defaults to `border`. */
|
|
21
|
+
ruleToken?: string;
|
|
22
|
+
/** Opacity for the hairline, when it should sit back from the border colour. */
|
|
23
|
+
ruleAlpha?: number;
|
|
24
|
+
}>): CardVariant;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { Theme } from '../schema';
|
|
2
|
+
import type { CardRole, CardSystem, CardVariant, SurfaceCardRole } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Card role resolution — the closed interface between Looks (which say *which
|
|
5
|
+
* role*) and site styles (which say *what the role looks like*).
|
|
6
|
+
*
|
|
7
|
+
* The fallback chain is total, so a Look never has to know which variants a
|
|
8
|
+
* site style happens to define.
|
|
9
|
+
*/
|
|
10
|
+
/** Where a resolved surface came from. */
|
|
11
|
+
export type CardSurfaceSource = 'site-style' | 'generated-baseline';
|
|
12
|
+
export type ResolvedCardSurface = {
|
|
13
|
+
kind: 'none';
|
|
14
|
+
requestedRole: CardRole;
|
|
15
|
+
} | {
|
|
16
|
+
kind: 'surface';
|
|
17
|
+
requestedRole: CardRole;
|
|
18
|
+
/** The role whose variant actually supplied the surface. */
|
|
19
|
+
resolvedRole: SurfaceCardRole;
|
|
20
|
+
variant: CardVariant;
|
|
21
|
+
source: CardSurfaceSource;
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Resolve a card role against a site style's card system.
|
|
25
|
+
*
|
|
26
|
+
* - `none` — terminal, no surface.
|
|
27
|
+
* - `open` — site style's `open` variant → generated baseline `open`.
|
|
28
|
+
* - `default` — site style's `default` → generated baseline `default`.
|
|
29
|
+
* - `alternative` — site style's `alternative` → site style's `default` →
|
|
30
|
+
* generated baseline `default`.
|
|
31
|
+
*
|
|
32
|
+
* The `theme` argument exists solely so the chain can reach the generated
|
|
33
|
+
* baseline without the caller synthesizing one. Pass `null` for `cardSystem`
|
|
34
|
+
* when the site style declares none — resolving against a baseline the caller
|
|
35
|
+
* synthesized would report `source: 'site-style'` for a surface no site style
|
|
36
|
+
* chose.
|
|
37
|
+
*/
|
|
38
|
+
export declare function resolveCardRole(theme: Theme, cardSystem: CardSystem | null, role: CardRole): ResolvedCardSurface;
|
|
@@ -1,14 +1,16 @@
|
|
|
1
|
+
import type { CardSystem } from './types';
|
|
1
2
|
/**
|
|
2
3
|
* Reusable card systems for curated site styles.
|
|
3
4
|
*
|
|
4
|
-
* generateCardCss emits a `.card-{id}` class per enabled variant
|
|
5
|
-
*
|
|
6
|
-
*
|
|
5
|
+
* generateCardCss emits a `.card-{id}` class per enabled variant, plus stable
|
|
6
|
+
* `.card-role-{role}` aliases resolved through the fallback chain. Each variant
|
|
7
|
+
* declares which role it implements:
|
|
7
8
|
* - `default` — the quiet, everyday card (most blocks, most of the time)
|
|
8
9
|
* - `alternative` — the prominent "statement" card for sections that pop
|
|
9
|
-
*
|
|
10
|
-
* variants
|
|
11
|
-
* `alternative
|
|
10
|
+
* - `open` — boxless but marked; falls back to the generated baseline
|
|
11
|
+
* The schema allows three variants, one per role. A block asking for a role a
|
|
12
|
+
* site style does not define falls back per `resolveCardRole`: `alternative` →
|
|
13
|
+
* `default` → generated baseline.
|
|
12
14
|
*
|
|
13
15
|
* Keep `default` close to the generated baseline so shared consumers (event
|
|
14
16
|
* cards, testimonials) stay stable; put the personality in `alternative`.
|
|
@@ -25,6 +27,7 @@ export declare const southWestCardSystem: {
|
|
|
25
27
|
readonly name: "Default";
|
|
26
28
|
readonly enabled: true;
|
|
27
29
|
readonly priority: 1;
|
|
30
|
+
readonly role: "default";
|
|
28
31
|
readonly background: {
|
|
29
32
|
readonly type: "solid";
|
|
30
33
|
readonly colorToken: "surface";
|
|
@@ -42,6 +45,7 @@ export declare const southWestCardSystem: {
|
|
|
42
45
|
readonly name: "Statement";
|
|
43
46
|
readonly enabled: true;
|
|
44
47
|
readonly priority: 2;
|
|
48
|
+
readonly role: "alternative";
|
|
45
49
|
readonly background: {
|
|
46
50
|
readonly type: "solid";
|
|
47
51
|
readonly colorToken: "primary-700";
|
|
@@ -53,11 +57,12 @@ export declare const southWestCardSystem: {
|
|
|
53
57
|
readonly softness: null;
|
|
54
58
|
readonly position: "bottom";
|
|
55
59
|
};
|
|
56
|
-
readonly
|
|
60
|
+
readonly decorations: [{
|
|
57
61
|
readonly edge: "left";
|
|
58
62
|
readonly colorToken: "secondary";
|
|
59
63
|
readonly width: "heavy";
|
|
60
|
-
|
|
64
|
+
readonly length: "full";
|
|
65
|
+
}];
|
|
61
66
|
readonly cornerRadii: {
|
|
62
67
|
readonly topLeft: "square";
|
|
63
68
|
readonly topRight: "expressive";
|
|
@@ -72,6 +77,7 @@ export declare const clarityZenCardSystem: {
|
|
|
72
77
|
readonly name: "Default";
|
|
73
78
|
readonly enabled: true;
|
|
74
79
|
readonly priority: 1;
|
|
80
|
+
readonly role: "default";
|
|
75
81
|
readonly background: {
|
|
76
82
|
readonly type: "solid";
|
|
77
83
|
readonly colorToken: "surface";
|
|
@@ -89,6 +95,7 @@ export declare const clarityZenCardSystem: {
|
|
|
89
95
|
readonly name: "Statement";
|
|
90
96
|
readonly enabled: true;
|
|
91
97
|
readonly priority: 2;
|
|
98
|
+
readonly role: "alternative";
|
|
92
99
|
readonly background: {
|
|
93
100
|
readonly type: "solid";
|
|
94
101
|
readonly colorToken: "surfaceAlt";
|
|
@@ -103,6 +110,42 @@ export declare const clarityZenCardSystem: {
|
|
|
103
110
|
};
|
|
104
111
|
}];
|
|
105
112
|
};
|
|
113
|
+
/**
|
|
114
|
+
* Grounded Practice: the first site style to own the `open` role.
|
|
115
|
+
*
|
|
116
|
+
* `default` and `alternative` restate the generated baseline this style's token
|
|
117
|
+
* recipes already produce (soft corners, flat surface card, tinted statement
|
|
118
|
+
* card, hairline border) so nothing that renders today moves — declaring a card
|
|
119
|
+
* system means the `.card-{id}` classes must keep existing for event and
|
|
120
|
+
* offering cards.
|
|
121
|
+
*
|
|
122
|
+
* `open` is the change, and it is the one place this style deliberately
|
|
123
|
+
* diverges from `boxlessOpenCardVariant` (the generated baseline's
|
|
124
|
+
* hairline-plus-short-accent marking). Grounded Practice takes Luna's
|
|
125
|
+
* therapy-page card literally
|
|
126
|
+
* (`apps/dashboard/scripts/design-bakeoff/results/studies/anna-raven-yoga-20260713-115605Z/revisions/005/index.html`,
|
|
127
|
+
* `.fit__card`: `padding: 1.6rem 1.45rem 1.75rem; border-top: 2px solid
|
|
128
|
+
* var(--ochre); background: rgba(242,243,235,.72)`):
|
|
129
|
+
*
|
|
130
|
+
* - one **full-length 2px** rule in the style's ochre `accent` (`#c69a3c` —
|
|
131
|
+
* the mockup's `--ochre`); `width: 'thin'` is the 2px step in
|
|
132
|
+
* `CARD_EDGE_RULE_WIDTH_MAP`. No hairline underneath and no short marker:
|
|
133
|
+
* the single rule *is* the marking.
|
|
134
|
+
* - a light solid fill. Card backgrounds take no alpha, so the token that
|
|
135
|
+
* reads like the mockup's translucent pale tint is `surfaceAlt`
|
|
136
|
+
* (`#f2ecdb`), which sits one step lighter than the `muted` band the
|
|
137
|
+
* Look now paints — the same lift Luna gets from `rgba(242,243,235,.72)`
|
|
138
|
+
* over `--ground-2`.
|
|
139
|
+
* - comfortable spacing on both axes. The baseline keeps `inline: 'none'`
|
|
140
|
+
* so a boxless card stays flush with the section; a filled card needs its
|
|
141
|
+
* padding back or the text touches the fill's edge.
|
|
142
|
+
*
|
|
143
|
+
* The baseline `boxlessOpenCardVariant` is unchanged — this divergence is
|
|
144
|
+
* grounded-practice's alone. See
|
|
145
|
+
* `.project/plans/1297-card-role-contract-site-styles-own-card-surfaces/decisions.md`
|
|
146
|
+
* §0.7 and "Phase 2.4".
|
|
147
|
+
*/
|
|
148
|
+
export declare const groundedPracticeCardSystem: CardSystem;
|
|
106
149
|
/**
|
|
107
150
|
* Original Joy: warm, flat, generously rounded cards on the dark clay ground.
|
|
108
151
|
* `default` is a quiet brown surface card with cream text; `alternative` is a
|
|
@@ -116,6 +159,7 @@ export declare const originalJoyCardSystem: {
|
|
|
116
159
|
readonly name: "Default";
|
|
117
160
|
readonly enabled: true;
|
|
118
161
|
readonly priority: 1;
|
|
162
|
+
readonly role: "default";
|
|
119
163
|
readonly background: {
|
|
120
164
|
readonly type: "solid";
|
|
121
165
|
readonly colorToken: "surface";
|
|
@@ -133,6 +177,7 @@ export declare const originalJoyCardSystem: {
|
|
|
133
177
|
readonly name: "Statement";
|
|
134
178
|
readonly enabled: true;
|
|
135
179
|
readonly priority: 2;
|
|
180
|
+
readonly role: "alternative";
|
|
136
181
|
readonly background: {
|
|
137
182
|
readonly type: "solid";
|
|
138
183
|
readonly colorToken: "primary";
|