@riverbankcms/sdk 0.82.0 → 0.84.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +16 -0
- package/dist/{PreviewEditorSidebar-LHGK6RIO.mjs → PreviewEditorSidebar-HML67UDA.mjs} +330 -11
- package/dist/{PreviewEditorUI-AXZG2SDC.mjs → PreviewEditorUI-I4BQUU6K.mjs} +3 -3
- package/dist/SdkPreviewModeRuntime-MCKMVDTK.mjs +8 -0
- package/dist/_dts/ai/src/contracts/proposals.d.ts +200 -0
- package/dist/_dts/api/src/blocks.d.ts +36 -0
- package/dist/_dts/api/src/contentRuntime.d.ts +46 -0
- package/dist/_dts/api/src/endpoints.d.ts +40 -0
- package/dist/_dts/api/src/index.d.ts +2 -2
- package/dist/_dts/api/src/sdk-event-pricing.d.ts +61 -0
- package/dist/_dts/api/src/sdk-event-schedule.d.ts +52 -0
- package/dist/_dts/api/src/sdk-event-upsert.d.ts +50 -0
- package/dist/_dts/api/src/sdkContracts.d.ts +67 -33
- package/dist/_dts/api/src/shared-contracts.d.ts +13 -0
- package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +22 -36
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +46 -1
- package/dist/_dts/block-form/src/backend/useBackendWatch.d.ts +6 -1
- package/dist/_dts/block-form/src/utils/evaluateVisibility.d.ts +3 -2
- package/dist/_dts/block-form/src/utils/visibleWhen.d.ts +7 -0
- package/dist/_dts/blocks/src/PageRenderer.d.ts +11 -0
- package/dist/_dts/blocks/src/bindings/index.d.ts +1 -1
- package/dist/_dts/blocks/src/client/site-chrome.d.ts +1 -1
- package/dist/_dts/blocks/src/client.d.ts +4 -0
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +16 -4
- package/dist/_dts/blocks/src/system/blocks/appointment-booking.d.ts +288 -2016
- package/dist/_dts/blocks/src/system/blocks/blog-listing.d.ts +288 -2016
- package/dist/_dts/blocks/src/system/blocks/cart.d.ts +288 -2016
- package/dist/_dts/blocks/src/system/blocks/checkout.d.ts +288 -2016
- package/dist/_dts/blocks/src/system/blocks/collection.d.ts +288 -2016
- package/dist/_dts/blocks/src/system/blocks/contact-newsletter.d.ts +171 -0
- package/dist/_dts/blocks/src/system/blocks/faq.d.ts +288 -2016
- package/dist/_dts/blocks/src/system/blocks/gifting.d.ts +288 -2016
- package/dist/_dts/blocks/src/system/blocks/hero.d.ts +3 -2
- package/dist/_dts/blocks/src/system/blocks/index.d.ts +1 -0
- package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +1 -7
- package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +2534 -151
- package/dist/_dts/blocks/src/system/blocks/product-detail.d.ts +288 -2016
- package/dist/_dts/blocks/src/system/blocks/product-list.d.ts +288 -2016
- package/dist/_dts/blocks/src/system/blocks/shop.d.ts +288 -2016
- package/dist/_dts/blocks/src/system/blocks/site-header.d.ts +36 -3
- package/dist/_dts/blocks/src/system/blocks/team-members.d.ts +2 -2
- package/dist/_dts/blocks/src/system/constants/blockKinds.d.ts +1 -1
- package/dist/_dts/blocks/src/system/fields/aspectRatio.d.ts +4 -1
- package/dist/_dts/blocks/src/system/fields/imageShape.d.ts +30 -0
- package/dist/_dts/blocks/src/system/fragments/library/heroLayoutControls.d.ts +25 -0
- package/dist/_dts/blocks/src/system/manifest/schema.d.ts +35 -161
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +24 -6
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +12 -3
- package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessEventRegistrationFlow.d.ts +33 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.state.d.ts +303 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.d.ts +20 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +4 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/utils.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +26 -6
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/pricing.d.ts +14 -0
- package/dist/_dts/content-editor/src/controller/EntryControllerProvider.d.ts +1 -1
- package/dist/_dts/content-editor/src/controller/buildBlockPublishedBaselines.d.ts +1 -1
- package/dist/_dts/content-editor/src/controller/seedDraftBaselinesFromBlocks.d.ts +1 -1
- package/dist/_dts/content-editor/src/controller/useBlocksList.d.ts +1 -1
- package/dist/_dts/content-editor/src/controller/useInvalidBlockRecovery.d.ts +1 -1
- package/dist/_dts/content-editor/src/primitives/PreviewRichTextEditor.d.ts +2 -1
- package/dist/_dts/content-editor/src/primitives/PreviewTextEditor.d.ts +1 -0
- package/dist/_dts/content-model/src/entry-slots/index.d.ts +1 -0
- package/dist/_dts/content-model/src/entry-slots/types.d.ts +356 -0
- package/dist/_dts/content-model/src/index.d.ts +1 -0
- package/dist/_dts/content-model/src/templates/defaults.d.ts +7 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +100 -5
- package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +6 -1
- package/dist/_dts/editor-blocks/src/BlockForm.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockCreation.d.ts +3 -2
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockDuplication.d.ts +3 -2
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockReorder.d.ts +3 -2
- package/dist/_dts/editor-blocks/src/block-editor/owner.d.ts +27 -0
- package/dist/_dts/editor-blocks/src/index.d.ts +1 -0
- package/dist/_dts/media-core/src/assetsInUseSummary.d.ts +8 -0
- package/dist/_dts/media-core/src/mediaUsageProjection.d.ts +37 -3
- package/dist/_dts/preview-next/src/client/blocks/pageDesignRuntimePreview.d.ts +4 -2
- package/dist/_dts/preview-next/src/client/blocks/previewProjection/runtimeContentDecoration.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/preview/EntryEditorPanel.d.ts +3 -1
- package/dist/_dts/preview-next/src/client/preview/EntrySlotBlockEditorPanel.d.ts +19 -0
- package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeButton.d.ts +8 -0
- package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +4 -1
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/linkedEntryEditEvents.d.ts +9 -0
- package/dist/_dts/preview-next/src/client/preview/previewCustomizeControls.d.ts +9 -8
- package/dist/_dts/preview-next/src/client/preview/siteChromeLookRows.d.ts +10 -1
- package/dist/_dts/preview-next/src/client/preview/siteChromeQuickControlHistoryState.d.ts +5 -1
- package/dist/_dts/sdk/src/bookings/index.d.ts +5 -4
- package/dist/_dts/sdk/src/bookings/types.d.ts +2 -2
- package/dist/_dts/sdk/src/cli/content/reader.d.ts +9 -8
- package/dist/_dts/sdk/src/cli/content/writer.d.ts +6 -1
- package/dist/_dts/sdk/src/cli/helpers.d.ts +10 -5
- package/dist/_dts/sdk/src/cli/merge-remote/entryLocal.d.ts +2 -2
- package/dist/_dts/sdk/src/cli/merge-remote/entryMerge.d.ts +2 -1
- package/dist/_dts/sdk/src/cli/merge-remote/entrySnapshots.d.ts +2 -2
- package/dist/_dts/sdk/src/client/management/index.d.ts +1 -1
- package/dist/_dts/sdk/src/client/management/types.d.ts +40 -10
- package/dist/_dts/sdk/src/config/field-definitions.d.ts +13 -7
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +26 -3
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +13 -0
- package/dist/_dts/sdk/src/rendering/blocks-page-renderer.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +6 -1
- package/dist/_dts/sdk/src/rendering/overrides.d.ts +6 -1
- package/dist/_dts/sdk/src/types/block-kinds.d.ts +1 -1
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/site-commands/src/commands.d.ts +15 -0
- package/dist/_dts/theme-core/src/accordions/types.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/ornate-ritual.d.ts +16 -0
- package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +1 -1
- package/dist/_dts/theme-core/src/buttons/types.d.ts +3 -3
- package/dist/_dts/theme-core/src/cards/types.d.ts +15 -15
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/inputs/types.d.ts +1 -1
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +33 -33
- package/dist/_dts/theme-core/src/palette/variants/index.d.ts +15 -0
- package/dist/_dts/theme-core/src/palette/variants/warm-dark.d.ts +16 -0
- package/dist/_dts/theme-core/src/schema.d.ts +30 -25
- package/dist/_dts/theme-core/src/site-styles/backgroundAppearance.d.ts +2 -2
- package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +141 -1
- package/dist/_dts/theme-core/src/site-styles/designState.d.ts +2 -0
- package/dist/_dts/theme-core/src/site-styles/footerLooks.d.ts +110 -5
- package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +4 -2
- package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +5 -1
- package/dist/_dts/theme-core/src/site-styles/tokenRecipes.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/types.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/typographyPresets.d.ts +16 -1
- package/dist/_dts/theme-core/src/siteChromePlanning.d.ts +1 -0
- package/dist/_dts/theme-core/src/utils/colorStyles.d.ts +6 -6
- package/dist/{chunk-2BUMISSH.mjs → chunk-3LXFQS7T.mjs} +1 -1
- package/dist/{chunk-G35HOQEN.mjs → chunk-5E33VO6J.mjs} +132 -46
- package/dist/{chunk-HKB6XVIP.mjs → chunk-6X2OVO3S.mjs} +2 -2
- package/dist/{chunk-6FWNF3DJ.mjs → chunk-HFMGVJCE.mjs} +158 -20
- package/dist/{chunk-FIREV57T.mjs → chunk-LBBPD2IW.mjs} +40 -0
- package/dist/{chunk-XQR6THQJ.mjs → chunk-MSHZO4SL.mjs} +3193 -1216
- package/dist/cli/index.mjs +2635 -575
- package/dist/cli/init-docs/content/getting-started.md +2 -0
- package/dist/cli/init-docs/content/workflow-templates.md +93 -2
- package/dist/client/{accordion-G34C45TW.mjs → accordion-ESY65T56.mjs} +2 -2
- package/dist/client/{bookingForm-BLBVKSAQ.mjs → bookingForm-JRFNZUHD.mjs} +5 -5
- package/dist/client/bookings.mjs +3539 -269
- package/dist/client/{carousel-7ZVTBRMD.mjs → carousel-CPR5VWIP.mjs} +3 -3
- package/dist/client/{cart-Q6S6LZUO.mjs → cart-ZUX5BA7O.mjs} +6 -6
- package/dist/client/{checkout-5QJLDE4I.mjs → checkout-RULGBADZ.mjs} +6 -6
- package/dist/client/{chunk-CHAB5ACD.mjs → chunk-52I7BGEK.mjs} +2 -2
- package/dist/client/{chunk-CSZGLBYR.mjs → chunk-5ZEAZ33K.mjs} +1 -1
- package/dist/client/{chunk-ZF4XEWDM.mjs → chunk-BT6AEIKN.mjs} +1 -1
- package/dist/client/{chunk-RJHTCTCZ.mjs → chunk-HXPWP5EN.mjs} +268 -15
- package/dist/client/{chunk-5PQH4Y75.mjs → chunk-JWEYB4V6.mjs} +2 -2
- package/dist/client/{chunk-EQKYMX4N.mjs → chunk-RDJFCPY3.mjs} +158 -51
- package/dist/client/{chunk-SBBSMFFG.mjs → chunk-SYIJ5JO2.mjs} +1 -1
- package/dist/client/{chunk-WJFHDTYF.mjs → chunk-URQCZD5W.mjs} +5 -5
- package/dist/client/{chunk-U2EW7RSR.mjs → chunk-Z5OBQ5I4.mjs} +1 -1
- package/dist/client/{chunk-S3MKFGOG.mjs → chunk-ZE5G642V.mjs} +1 -1
- package/dist/client/client.mjs +2391 -673
- package/dist/client/{courseRegistration-VUG2JJDB.mjs → courseRegistration-QTUDC35T.mjs} +5 -5
- package/dist/client/{eventCalendar-E7D2LD4N.mjs → eventCalendar-Q7NS4XLD.mjs} +7 -7
- package/dist/client/{eventCombined-FUZ2Z3CS.mjs → eventCombined-QAO7VUO5.mjs} +7 -7
- package/dist/client/{eventDetails-QRITJAOW.mjs → eventDetails-WTNNU6Q3.mjs} +7 -7
- package/dist/client/{eventListing-INMQMJZ5.mjs → eventListing-5TA2ELDT.mjs} +7 -7
- package/dist/client/{eventRegistration-TOOJD4WU.mjs → eventRegistration-M6USZGRF.mjs} +7 -7
- package/dist/client/{form-BOWN7ZNQ.mjs → form-DGVGXLMH.mjs} +2 -2
- package/dist/client/{headerSection-HFQNZOUU.mjs → headerSection-O2AGMPCU.mjs} +3 -3
- package/dist/client/hooks.mjs +1636 -385
- package/dist/client/{locationMap-VUZGC7Y5.mjs → locationMap-EJRNRIKJ.mjs} +2 -2
- package/dist/client/{newsletterForm-X2XQTPCB.mjs → newsletterForm-7NTC2DTR.mjs} +2 -2
- package/dist/client/{productDetail-TA7D2G2B.mjs → productDetail-HH4LP53D.mjs} +6 -6
- package/dist/client/{productList-AZOLOZKM.mjs → productList-YVHYM2AF.mjs} +6 -6
- package/dist/client/rendering/client.mjs +2303 -1068
- package/dist/client/rendering/islands.mjs +19 -19
- package/dist/client/rendering.mjs +2587 -796
- package/dist/client/{shop-ZDLO7IIG.mjs → shop-UIFX7XRK.mjs} +6 -6
- package/dist/preview-next/before-render.mjs +40 -0
- package/dist/preview-next/client/runtime.mjs +5 -5
- package/dist/preview-next/middleware.mjs +40 -0
- package/dist/{sdk-runtime-CTWKNBDQ.mjs → sdk-runtime-ZENAOYMN.mjs} +6 -6
- package/dist/server/components.mjs +2028 -457
- package/dist/server/config-validation.mjs +1629 -377
- package/dist/server/config.mjs +1629 -377
- package/dist/server/data.mjs +1636 -385
- package/dist/server/index.mjs +42 -1
- package/dist/server/next.mjs +2215 -571
- package/dist/server/page-converter.mjs +2068 -884
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +2040 -469
- package/dist/server/rendering.mjs +2119 -475
- package/dist/server/routing.mjs +1711 -419
- package/dist/server/server.mjs +1718 -394
- package/dist/server/theme-bridge.mjs +1180 -101
- package/dist/server/theme.mjs +92 -1
- package/dist/styles/index.css +292 -36
- package/package.json +1 -1
- package/dist/SdkPreviewModeRuntime-RNVRHFFR.mjs +0 -8
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { type BlockApiConfig } from '../api';
|
|
3
|
+
import type { EventRegistrationClientProps } from '../nodes/event-registration/types';
|
|
4
|
+
import { useEventRegistrationWizard } from '../nodes/event-registration/useEventRegistrationWizard';
|
|
5
|
+
import type { HeadlessEventRegistrationFlow } from '../nodes/event-registration/event-registration.headless.state';
|
|
6
|
+
import { createEventRegistrationBlockApiConfig } from '../nodes/event-registration/event-registration.headless.state';
|
|
7
|
+
export type { BlockApiConfig };
|
|
8
|
+
export { createEventRegistrationBlockApiConfig };
|
|
9
|
+
export type { EventRegistrationAttendeeModel, EventRegistrationDiscountModel, EventRegistrationEventsModel, EventRegistrationFlowActionResult, EventRegistrationFlowActions, EventRegistrationFlowStatus, EventRegistrationFlowStep, EventRegistrationFlowStepId, EventRegistrationFlowView, EventRegistrationGuestsModel, EventRegistrationLoadState, EventRegistrationOverrideData, EventRegistrationOverrideInput, EventRegistrationOverrideInputResult, EventRegistrationOverridePropsLike, EventRegistrationPaymentModel, EventRegistrationPaymentSelection, EventRegistrationPortalAuthModel, EventRegistrationSpamProtectionModel, EventRegistrationTerminalModel, EventRegistrationTicketsModel, HeadlessEventRegistrationFlow, } from '../nodes/event-registration/event-registration.headless.state';
|
|
10
|
+
export type { EventRegistrationSubmitOptions, EventRegistrationSubmitResult, } from '../nodes/event-registration/useEventRegistrationSubmit';
|
|
11
|
+
export type HeadlessEventRegistrationFlowOptions = Readonly<{
|
|
12
|
+
anchorId?: string;
|
|
13
|
+
occurrenceContext?: EventRegistrationClientProps['occurrenceContext'];
|
|
14
|
+
contentEntry?: EventRegistrationClientProps['contentEntry'];
|
|
15
|
+
events?: readonly NonNullable<EventRegistrationClientProps['events']>[number][];
|
|
16
|
+
maxTickets?: string | number;
|
|
17
|
+
spamProtectionEnabled?: boolean;
|
|
18
|
+
}>;
|
|
19
|
+
export type HeadlessEventRegistrationProviderProps = Readonly<{
|
|
20
|
+
config: BlockApiConfig;
|
|
21
|
+
children?: React.ReactNode;
|
|
22
|
+
}>;
|
|
23
|
+
export type EventRegistrationController = Readonly<{
|
|
24
|
+
flow: HeadlessEventRegistrationFlow;
|
|
25
|
+
wizard: ReturnType<typeof useEventRegistrationWizard>;
|
|
26
|
+
}>;
|
|
27
|
+
export type EventRegistrationWizardController = Readonly<{
|
|
28
|
+
wizard: ReturnType<typeof useEventRegistrationWizard>;
|
|
29
|
+
}>;
|
|
30
|
+
export declare function HeadlessEventRegistrationProvider({ config, children, }: HeadlessEventRegistrationProviderProps): React.ReactElement;
|
|
31
|
+
export declare function useHeadlessEventRegistrationFlow(options: HeadlessEventRegistrationFlowOptions): HeadlessEventRegistrationFlow;
|
|
32
|
+
export declare function useEventRegistrationController(options: HeadlessEventRegistrationFlowOptions): EventRegistrationController;
|
|
33
|
+
export declare function useEventRegistrationWizardController(options: HeadlessEventRegistrationFlowOptions): EventRegistrationWizardController;
|
|
@@ -0,0 +1,303 @@
|
|
|
1
|
+
import type { BlockApiConfig } from '../../api';
|
|
2
|
+
import type { PaymentMethod } from '../../api/types';
|
|
3
|
+
import type { EventRegistrationContentEntry } from '../event-registration.interactive';
|
|
4
|
+
import type { EligibilityData, FormData, Guest, GuestErrors, OccurrenceContext, PaymentSelection, PaymentStepState, PublicEvent, RegistrationEvent, RegistrationResult, RegistrationStep } from './types';
|
|
5
|
+
import type { SelectableEventTicketType } from './utils';
|
|
6
|
+
import type { PortalAuthState, PortalProfile } from './hooks';
|
|
7
|
+
import type { UseWaitlistClaimResult } from '../../shared/useWaitlistClaim';
|
|
8
|
+
import type { UseEventRegistrationWizardResult } from './useEventRegistrationWizard';
|
|
9
|
+
import type { EventRegistrationSubmitOptions, EventRegistrationSubmitResult } from './useEventRegistrationSubmit';
|
|
10
|
+
export declare const DEFAULT_EVENT_REGISTRATION_MAX_TICKETS = 5;
|
|
11
|
+
export type EventRegistrationLoadState<T> = Readonly<{
|
|
12
|
+
tag: 'idle';
|
|
13
|
+
value: T | null;
|
|
14
|
+
}> | Readonly<{
|
|
15
|
+
tag: 'loading';
|
|
16
|
+
value: T | null;
|
|
17
|
+
}> | Readonly<{
|
|
18
|
+
tag: 'loaded';
|
|
19
|
+
value: T;
|
|
20
|
+
}>;
|
|
21
|
+
export type EventRegistrationSubmitArgs = Readonly<{
|
|
22
|
+
method: PaymentMethod;
|
|
23
|
+
passId?: string;
|
|
24
|
+
membershipId?: string;
|
|
25
|
+
selection?: PaymentSelection;
|
|
26
|
+
}>;
|
|
27
|
+
export type EventRegistrationSubmitPlan = Readonly<{
|
|
28
|
+
ok: true;
|
|
29
|
+
args: EventRegistrationSubmitArgs;
|
|
30
|
+
}> | Readonly<{
|
|
31
|
+
ok: false;
|
|
32
|
+
reason: 'payment-selection-required';
|
|
33
|
+
message: string;
|
|
34
|
+
}>;
|
|
35
|
+
export type EventRegistrationFlowStatus = Readonly<{
|
|
36
|
+
tag: 'ready';
|
|
37
|
+
}> | Readonly<{
|
|
38
|
+
tag: 'submitting';
|
|
39
|
+
}> | Readonly<{
|
|
40
|
+
tag: 'redirecting';
|
|
41
|
+
}> | Readonly<{
|
|
42
|
+
tag: 'verifying-payment';
|
|
43
|
+
}> | Readonly<{
|
|
44
|
+
tag: 'verifying-timeout';
|
|
45
|
+
}> | Readonly<{
|
|
46
|
+
tag: 'payment-failed';
|
|
47
|
+
message: string;
|
|
48
|
+
}> | Readonly<{
|
|
49
|
+
tag: 'success';
|
|
50
|
+
result: RegistrationResult;
|
|
51
|
+
}> | Readonly<{
|
|
52
|
+
tag: 'error';
|
|
53
|
+
message: string;
|
|
54
|
+
}>;
|
|
55
|
+
export type EventRegistrationFlowView = Readonly<{
|
|
56
|
+
kind: 'empty';
|
|
57
|
+
message: string;
|
|
58
|
+
}> | Readonly<{
|
|
59
|
+
kind: 'unavailable';
|
|
60
|
+
message: string;
|
|
61
|
+
}> | Readonly<{
|
|
62
|
+
kind: 'form';
|
|
63
|
+
}> | Readonly<{
|
|
64
|
+
kind: 'verifying';
|
|
65
|
+
message: string;
|
|
66
|
+
}> | Readonly<{
|
|
67
|
+
kind: 'success';
|
|
68
|
+
result: RegistrationResult;
|
|
69
|
+
}> | Readonly<{
|
|
70
|
+
kind: 'error';
|
|
71
|
+
message: string;
|
|
72
|
+
}>;
|
|
73
|
+
export type EventRegistrationFlowStepId = 'select-event' | 'select-tickets' | 'enter-details' | 'select-payment';
|
|
74
|
+
export type EventRegistrationFlowStepState = 'complete' | 'active' | 'available' | 'blocked';
|
|
75
|
+
export type EventRegistrationFlowStep = Readonly<{
|
|
76
|
+
id: EventRegistrationFlowStepId;
|
|
77
|
+
label: string;
|
|
78
|
+
state: EventRegistrationFlowStepState;
|
|
79
|
+
index: number;
|
|
80
|
+
canEnter: boolean;
|
|
81
|
+
canLeave: boolean;
|
|
82
|
+
}>;
|
|
83
|
+
export type EventRegistrationFlowActionResult = Readonly<{
|
|
84
|
+
ok: true;
|
|
85
|
+
}> | Readonly<{
|
|
86
|
+
ok: false;
|
|
87
|
+
reason: 'blocked' | 'validation-failed' | 'submission-failed';
|
|
88
|
+
message: string;
|
|
89
|
+
}>;
|
|
90
|
+
export type EventRegistrationEventsModel = Readonly<{
|
|
91
|
+
items: readonly PublicEvent[];
|
|
92
|
+
scoped: readonly RegistrationEvent[];
|
|
93
|
+
selected: RegistrationEvent | null;
|
|
94
|
+
preSelected: RegistrationEvent | null;
|
|
95
|
+
hasPreSelectedContext: boolean;
|
|
96
|
+
target: UseEventRegistrationWizardResult['registrationTarget'];
|
|
97
|
+
occurrenceContext: OccurrenceContext | null | undefined;
|
|
98
|
+
contentEntry: EventRegistrationContentEntry | null | undefined;
|
|
99
|
+
}>;
|
|
100
|
+
export type EventRegistrationTicketsModel = Readonly<{
|
|
101
|
+
count: number;
|
|
102
|
+
max: number;
|
|
103
|
+
selectedTicketTypeId: string | null;
|
|
104
|
+
selectedTicketType: SelectableEventTicketType | null;
|
|
105
|
+
visibleTicketTypes: readonly SelectableEventTicketType[];
|
|
106
|
+
selectionRequired: boolean;
|
|
107
|
+
hasValidSelection: boolean;
|
|
108
|
+
eventRequiresPayment: boolean;
|
|
109
|
+
selectedAttendanceMode: 'in_person' | 'online' | null;
|
|
110
|
+
}>;
|
|
111
|
+
export type EventRegistrationAttendeeModel = Readonly<{
|
|
112
|
+
values: FormData;
|
|
113
|
+
errors: Partial<Record<keyof FormData, string>>;
|
|
114
|
+
}>;
|
|
115
|
+
export type EventRegistrationGuestsModel = Readonly<{
|
|
116
|
+
required: boolean;
|
|
117
|
+
items: readonly Guest[];
|
|
118
|
+
errors: GuestErrors;
|
|
119
|
+
shake: boolean;
|
|
120
|
+
}>;
|
|
121
|
+
export type EventRegistrationPaymentSelection = Readonly<{
|
|
122
|
+
method: 'none';
|
|
123
|
+
}> | Readonly<{
|
|
124
|
+
method: 'free';
|
|
125
|
+
}> | Readonly<{
|
|
126
|
+
method: 'stripe';
|
|
127
|
+
}> | Readonly<{
|
|
128
|
+
method: 'pass';
|
|
129
|
+
passId: string;
|
|
130
|
+
productName?: string;
|
|
131
|
+
}> | Readonly<{
|
|
132
|
+
method: 'membership';
|
|
133
|
+
membershipId: string;
|
|
134
|
+
productName?: string;
|
|
135
|
+
}> | Readonly<{
|
|
136
|
+
method: 'pass_bundle';
|
|
137
|
+
passId: string;
|
|
138
|
+
productName?: string;
|
|
139
|
+
}> | Readonly<{
|
|
140
|
+
method: 'membership_bundle';
|
|
141
|
+
membershipId: string;
|
|
142
|
+
productName?: string;
|
|
143
|
+
}>;
|
|
144
|
+
export type EventRegistrationPaymentModel = Readonly<{
|
|
145
|
+
kind: 'hidden';
|
|
146
|
+
selection: EventRegistrationPaymentSelection;
|
|
147
|
+
stepState: PaymentStepState;
|
|
148
|
+
}> | Readonly<{
|
|
149
|
+
kind: 'loading' | 'error' | 'not-eligible' | 'ready';
|
|
150
|
+
selection: EventRegistrationPaymentSelection;
|
|
151
|
+
stepState: PaymentStepState;
|
|
152
|
+
eligibility: EligibilityData | null;
|
|
153
|
+
eligibilityError: string | null | undefined;
|
|
154
|
+
}>;
|
|
155
|
+
export type EventRegistrationDiscountModel = Readonly<{
|
|
156
|
+
code: string;
|
|
157
|
+
isOpen: boolean;
|
|
158
|
+
available: boolean;
|
|
159
|
+
manualCodeEntryAllowed: boolean;
|
|
160
|
+
loading: boolean;
|
|
161
|
+
autoAppliedDiscount: UseEventRegistrationWizardResult['autoAppliedDiscount'];
|
|
162
|
+
}>;
|
|
163
|
+
export type EventRegistrationPortalAuthModel = Readonly<{
|
|
164
|
+
state: PortalAuthState;
|
|
165
|
+
profile: PortalProfile | null;
|
|
166
|
+
isAuthenticated: boolean;
|
|
167
|
+
showMagicLinkModal: boolean;
|
|
168
|
+
}>;
|
|
169
|
+
export type EventRegistrationSpamProtectionModel = Readonly<{
|
|
170
|
+
enabled: false;
|
|
171
|
+
}> | Readonly<{
|
|
172
|
+
enabled: true;
|
|
173
|
+
provider: 'altcha';
|
|
174
|
+
challenge: {
|
|
175
|
+
url: string;
|
|
176
|
+
auto: 'onfocus';
|
|
177
|
+
};
|
|
178
|
+
solution: string | null;
|
|
179
|
+
}>;
|
|
180
|
+
export type EventRegistrationTerminalModel = Readonly<{
|
|
181
|
+
result: RegistrationResult | null;
|
|
182
|
+
errorMessage: string;
|
|
183
|
+
verification: UseEventRegistrationWizardResult['verification'];
|
|
184
|
+
}>;
|
|
185
|
+
export type EventRegistrationFlowActions = Readonly<{
|
|
186
|
+
selectEvent: (event: RegistrationEvent) => void;
|
|
187
|
+
selectAttendanceMode: (mode: 'in_person' | 'online' | null) => void;
|
|
188
|
+
selectTicketType: (ticketTypeId: string | null) => void;
|
|
189
|
+
setTicketsCount: (count: number) => void;
|
|
190
|
+
updateAttendee: (values: FormData) => void;
|
|
191
|
+
updateGuests: (guests: Guest[]) => void;
|
|
192
|
+
selectPayment: (selection: EventRegistrationPaymentSelection) => void;
|
|
193
|
+
setDiscountCode: (code: string) => void;
|
|
194
|
+
setDiscountOpen: (isOpen: boolean) => void;
|
|
195
|
+
setAltchaSolution: (solution: string | null) => void;
|
|
196
|
+
requestLogin: () => void;
|
|
197
|
+
logout: () => void;
|
|
198
|
+
next: () => Promise<EventRegistrationFlowActionResult>;
|
|
199
|
+
back: () => void;
|
|
200
|
+
submit: (options?: EventRegistrationSubmitOptions) => Promise<EventRegistrationSubmitResult>;
|
|
201
|
+
retry: () => void;
|
|
202
|
+
}>;
|
|
203
|
+
export type HeadlessEventRegistrationFlow = Readonly<{
|
|
204
|
+
status: EventRegistrationFlowStatus;
|
|
205
|
+
view: EventRegistrationFlowView;
|
|
206
|
+
steps: readonly EventRegistrationFlowStep[];
|
|
207
|
+
currentStep: EventRegistrationFlowStep | null;
|
|
208
|
+
events: EventRegistrationEventsModel;
|
|
209
|
+
tickets: EventRegistrationTicketsModel;
|
|
210
|
+
attendee: EventRegistrationAttendeeModel;
|
|
211
|
+
guests: EventRegistrationGuestsModel;
|
|
212
|
+
payment: EventRegistrationPaymentModel;
|
|
213
|
+
discount: EventRegistrationDiscountModel;
|
|
214
|
+
portalAuth: EventRegistrationPortalAuthModel;
|
|
215
|
+
existingRegistration: Readonly<{
|
|
216
|
+
state: EventRegistrationLoadState<UseEventRegistrationWizardResult['existingRegistration']>;
|
|
217
|
+
registration: UseEventRegistrationWizardResult['existingRegistration'];
|
|
218
|
+
}>;
|
|
219
|
+
waitlistClaim: UseWaitlistClaimResult;
|
|
220
|
+
spamProtection: EventRegistrationSpamProtectionModel;
|
|
221
|
+
terminal: EventRegistrationTerminalModel;
|
|
222
|
+
actions: EventRegistrationFlowActions;
|
|
223
|
+
}>;
|
|
224
|
+
export type EventRegistrationOverrideData = Readonly<{
|
|
225
|
+
events?: readonly PublicEvent[] | null;
|
|
226
|
+
}>;
|
|
227
|
+
export type EventRegistrationOverridePropsLike = Readonly<{
|
|
228
|
+
content?: Partial<{
|
|
229
|
+
maxTickets: string | null;
|
|
230
|
+
showVenue: boolean | null;
|
|
231
|
+
showCapacity: boolean | null;
|
|
232
|
+
successMessage: string | null;
|
|
233
|
+
waitlistMessage: string | null;
|
|
234
|
+
buttonVariant: 'primary' | 'secondary' | 'outline' | null;
|
|
235
|
+
buttonText: string | null;
|
|
236
|
+
spamProtectionEnabled: boolean | null;
|
|
237
|
+
supportEmail: string | null;
|
|
238
|
+
}> | null;
|
|
239
|
+
data?: EventRegistrationOverrideData | Record<string, unknown> | null;
|
|
240
|
+
siteId?: string;
|
|
241
|
+
apiBaseUrl?: string;
|
|
242
|
+
portalToken?: string | null;
|
|
243
|
+
previewToken?: string | null;
|
|
244
|
+
stage?: 'preview' | 'published';
|
|
245
|
+
occurrenceContext?: OccurrenceContext | null;
|
|
246
|
+
contentEntry?: Record<string, unknown> | null;
|
|
247
|
+
blockId?: string | null;
|
|
248
|
+
}>;
|
|
249
|
+
export type EventRegistrationOverrideInput = Readonly<{
|
|
250
|
+
siteId: string;
|
|
251
|
+
apiBaseUrl: string;
|
|
252
|
+
portalToken: string | null;
|
|
253
|
+
previewToken: string | null;
|
|
254
|
+
stage?: 'preview' | 'published';
|
|
255
|
+
occurrenceContext?: OccurrenceContext | null;
|
|
256
|
+
contentEntry?: EventRegistrationContentEntry | null;
|
|
257
|
+
events: readonly PublicEvent[];
|
|
258
|
+
maxTickets?: string;
|
|
259
|
+
showVenue?: boolean;
|
|
260
|
+
showCapacity?: boolean;
|
|
261
|
+
successMessage?: string;
|
|
262
|
+
waitlistMessage?: string;
|
|
263
|
+
buttonText?: string | null;
|
|
264
|
+
buttonVariant?: 'primary' | 'secondary' | 'outline';
|
|
265
|
+
spamProtectionEnabled?: boolean;
|
|
266
|
+
supportEmail?: string;
|
|
267
|
+
blockId?: string | null;
|
|
268
|
+
}>;
|
|
269
|
+
export type EventRegistrationOverrideInputResult = Readonly<{
|
|
270
|
+
ok: true;
|
|
271
|
+
value: EventRegistrationOverrideInput;
|
|
272
|
+
}> | Readonly<{
|
|
273
|
+
ok: false;
|
|
274
|
+
reason: 'missing-site-id' | 'missing-api-base-url';
|
|
275
|
+
message: string;
|
|
276
|
+
}>;
|
|
277
|
+
export declare function createEventRegistrationBlockApiConfig(input: Readonly<{
|
|
278
|
+
siteId: string;
|
|
279
|
+
apiBaseUrl: string;
|
|
280
|
+
portalToken?: string | null;
|
|
281
|
+
previewToken?: string | null;
|
|
282
|
+
stage?: 'preview' | 'published';
|
|
283
|
+
}>): BlockApiConfig;
|
|
284
|
+
export declare function getRegistrableStatuses(isPreview: boolean | undefined): readonly PublicEvent['status'][];
|
|
285
|
+
export declare function normalizeEventRegistrationMaxTickets(value: string | number | undefined): number;
|
|
286
|
+
export declare function getEventRegistrationOverrideInput(props: EventRegistrationOverridePropsLike): EventRegistrationOverrideInputResult;
|
|
287
|
+
export declare function toHeadlessPaymentSelection(selection: PaymentSelection): EventRegistrationPaymentSelection;
|
|
288
|
+
export declare function toInternalPaymentSelection(selection: EventRegistrationPaymentSelection): PaymentSelection;
|
|
289
|
+
export declare function resolveEventRegistrationSubmitPlan(input: Readonly<{
|
|
290
|
+
paymentSelection: PaymentSelection;
|
|
291
|
+
eventRequiresPayment: boolean;
|
|
292
|
+
canJoinWaitlist?: boolean | null;
|
|
293
|
+
}>): EventRegistrationSubmitPlan;
|
|
294
|
+
export declare function resolveHeadlessEventRegistrationStatus(wizard: Pick<UseEventRegistrationWizardResult, 'step' | 'registrationResult' | 'errorMessage'>): EventRegistrationFlowStatus;
|
|
295
|
+
export declare function resolveHeadlessEventRegistrationView(wizard: Readonly<Pick<UseEventRegistrationWizardResult, 'step' | 'scopedEvents' | 'occurrenceContext' | 'registrationResult' | 'errorMessage'> & {
|
|
296
|
+
api: Pick<UseEventRegistrationWizardResult['api'], 'config'>;
|
|
297
|
+
}>): EventRegistrationFlowView;
|
|
298
|
+
export declare function deriveEventRegistrationSteps(input: Readonly<{
|
|
299
|
+
step: RegistrationStep;
|
|
300
|
+
hasPreSelectedContext: boolean;
|
|
301
|
+
eventRequiresPayment: boolean;
|
|
302
|
+
paymentSelection: PaymentSelection;
|
|
303
|
+
}>): readonly EventRegistrationFlowStep[];
|
package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.d.ts
CHANGED
|
@@ -2,6 +2,25 @@ import type { BlockApiClient } from '../../api';
|
|
|
2
2
|
import type { FormData, Guest, RegistrationResult, RegistrationStep, PaymentSelection } from './types';
|
|
3
3
|
import type { PaymentMethod } from '../../api/types';
|
|
4
4
|
import type { RegistrationTarget } from './registrationDerivations';
|
|
5
|
+
export type EventRegistrationSubmitOptions = Readonly<{
|
|
6
|
+
redirect?: 'auto' | 'manual';
|
|
7
|
+
}>;
|
|
8
|
+
export type EventRegistrationSubmitResult = Readonly<{
|
|
9
|
+
ok: true;
|
|
10
|
+
outcome: {
|
|
11
|
+
kind: 'completed';
|
|
12
|
+
};
|
|
13
|
+
}> | Readonly<{
|
|
14
|
+
ok: true;
|
|
15
|
+
outcome: {
|
|
16
|
+
kind: 'checkout_redirect';
|
|
17
|
+
checkoutUrl: string;
|
|
18
|
+
};
|
|
19
|
+
}> | Readonly<{
|
|
20
|
+
ok: false;
|
|
21
|
+
reason: 'blocked' | 'missing-target' | 'submission-failed';
|
|
22
|
+
message: string;
|
|
23
|
+
}>;
|
|
5
24
|
export declare function useEventRegistrationSubmit(options: {
|
|
6
25
|
api: BlockApiClient;
|
|
7
26
|
registrationTarget: RegistrationTarget | null;
|
|
@@ -18,4 +37,4 @@ export declare function useEventRegistrationSubmit(options: {
|
|
|
18
37
|
setStep: (step: RegistrationStep) => void;
|
|
19
38
|
setRegistrationResult: (result: RegistrationResult) => void;
|
|
20
39
|
setErrorMessage: (message: string) => void;
|
|
21
|
-
}): (method: PaymentMethod, passId?: string, membershipId?: string, selection?: PaymentSelection) => Promise<
|
|
40
|
+
}): (method: PaymentMethod, passId?: string, membershipId?: string, selection?: PaymentSelection, submitOptions?: EventRegistrationSubmitOptions) => Promise<EventRegistrationSubmitResult>;
|
package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { DiscountContext } from '../../api/types';
|
|
2
2
|
import type { EventRegistrationClientProps, FormData, Guest, GuestErrors, PaymentSelection, PaymentStepState, PublicEvent, RegistrationEvent, RegistrationResult, RegistrationStep } from './types';
|
|
3
|
-
import type { PaymentMethod } from './PaymentSelectionStep';
|
|
4
3
|
export declare function useEventRegistrationWizard(options: {
|
|
5
4
|
anchorId: string;
|
|
6
5
|
occurrenceContext: EventRegistrationClientProps['occurrenceContext'];
|
|
@@ -61,6 +60,7 @@ export declare function useEventRegistrationWizard(options: {
|
|
|
61
60
|
altchaSolution: string | null;
|
|
62
61
|
setAltchaSolution: import("react").Dispatch<import("react").SetStateAction<string | null>>;
|
|
63
62
|
portalAuthState: import("./hooks").PortalAuthState;
|
|
63
|
+
portalProfile: import("./hooks").PortalProfile | null;
|
|
64
64
|
showMagicLinkModal: boolean;
|
|
65
65
|
setShowMagicLinkModal: import("react").Dispatch<import("react").SetStateAction<boolean>>;
|
|
66
66
|
handleLogout: () => void;
|
|
@@ -75,6 +75,7 @@ export declare function useEventRegistrationWizard(options: {
|
|
|
75
75
|
eligibilityError: string | null;
|
|
76
76
|
existingRegistration: import("../../api").CustomerEventRegistration | null;
|
|
77
77
|
existingRegistrationLoading: boolean;
|
|
78
|
+
existingRegistrationState: import("./hooks.state").ExistingRegistrationLookupState;
|
|
78
79
|
hasEligibility: boolean;
|
|
79
80
|
hasMembershipEligibility: boolean;
|
|
80
81
|
requireGuestDetails: boolean;
|
|
@@ -90,10 +91,10 @@ export declare function useEventRegistrationWizard(options: {
|
|
|
90
91
|
shouldShowDiscountToggle: boolean;
|
|
91
92
|
verification: import("../../hooks/usePaymentVerification").PaymentVerificationResult;
|
|
92
93
|
handleDetailsComplete: () => Promise<void>;
|
|
93
|
-
handlePaymentSelect: (
|
|
94
|
+
handlePaymentSelect: () => Promise<void>;
|
|
94
95
|
handleUseCardInsteadOfPass: () => void;
|
|
95
96
|
handleBookForSomeoneElse: () => void;
|
|
96
|
-
handleSubmit: (method: PaymentMethod, passId?: string, membershipId?: string, selection?: PaymentSelection) => Promise<
|
|
97
|
+
handleSubmit: (method: import("./PaymentSelectionStep").PaymentMethod, passId?: string, membershipId?: string, selection?: PaymentSelection, submitOptions?: import("./useEventRegistrationSubmit").EventRegistrationSubmitOptions) => Promise<import("./useEventRegistrationSubmit").EventRegistrationSubmitResult>;
|
|
97
98
|
handleEventSelect: (event: RegistrationEvent) => void;
|
|
98
99
|
handleRetry: () => void;
|
|
99
100
|
};
|
|
@@ -2,7 +2,7 @@ import type { EligibilityCheckResponse } from '../../api/types';
|
|
|
2
2
|
import type { EligibilityData, EligibilityEventTicketType, PublicEvent, PublicEventTicketType, RegistrationEvent } from './types';
|
|
3
3
|
export declare const DEFAULT_EVENT_CURRENCY = "usd";
|
|
4
4
|
export type SelectableEventTicketType = EligibilityEventTicketType | PublicEventTicketType;
|
|
5
|
-
type TicketTypeSourceEvent =
|
|
5
|
+
type TicketTypeSourceEvent = PublicEvent | RegistrationEvent;
|
|
6
6
|
/**
|
|
7
7
|
* Format date for display
|
|
8
8
|
*/
|
|
@@ -7,6 +7,8 @@ export type EventRegistrationContentEntry = Readonly<{
|
|
|
7
7
|
slug: string;
|
|
8
8
|
contentTypeSlug: string;
|
|
9
9
|
}>;
|
|
10
|
+
export declare const EVENT_REGISTRATION_GENERIC_SHELL_STEP_LABELS: readonly ["Date", "Tickets", "Details"];
|
|
11
|
+
export type EventRegistrationGenericShellStepLabels = typeof EVENT_REGISTRATION_GENERIC_SHELL_STEP_LABELS;
|
|
10
12
|
export type EventRegistrationSourceProps = Readonly<{
|
|
11
13
|
siteId?: string;
|
|
12
14
|
apiBaseUrl?: string;
|
|
@@ -29,8 +31,11 @@ export type EventRegistrationSourceProps = Readonly<{
|
|
|
29
31
|
}>;
|
|
30
32
|
export type EventRegistrationDisplay = Readonly<{
|
|
31
33
|
kind: 'event-registration';
|
|
32
|
-
state: 'shell';
|
|
34
|
+
state: 'generic-shell';
|
|
33
35
|
className: string | null;
|
|
36
|
+
titleText: string;
|
|
37
|
+
bodyText: string;
|
|
38
|
+
stepLabels: EventRegistrationGenericShellStepLabels;
|
|
34
39
|
summaryButtonText: string;
|
|
35
40
|
}>;
|
|
36
41
|
export type EventRegistrationHydration = Readonly<Omit<InternalEventRegistrationClientProps, 'siteId' | 'stage' | 'registrationEndpoint' | 'eligibilityEndpoint' | 'checkoutEndpoint' | 'buttonText' | 'className'>>;
|
|
@@ -71,8 +76,11 @@ export declare const eventRegistrationBlockRuntime: Readonly<{
|
|
|
71
76
|
}>) => Readonly<{
|
|
72
77
|
display: Readonly<{
|
|
73
78
|
kind: "event-registration";
|
|
74
|
-
state: "shell";
|
|
79
|
+
state: "generic-shell";
|
|
75
80
|
className: string | null;
|
|
81
|
+
titleText: string;
|
|
82
|
+
bodyText: string;
|
|
83
|
+
stepLabels: EventRegistrationGenericShellStepLabels;
|
|
76
84
|
summaryButtonText: string;
|
|
77
85
|
}>;
|
|
78
86
|
hydration: Readonly<Omit<InternalEventRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText" | "registrationEndpoint" | "eligibilityEndpoint" | "checkoutEndpoint">>;
|
|
@@ -132,8 +140,11 @@ export declare const eventRegistrationBlockRuntime: Readonly<{
|
|
|
132
140
|
encode: (value: Readonly<{
|
|
133
141
|
display: Readonly<{
|
|
134
142
|
kind: "event-registration";
|
|
135
|
-
state: "shell";
|
|
143
|
+
state: "generic-shell";
|
|
136
144
|
className: string | null;
|
|
145
|
+
titleText: string;
|
|
146
|
+
bodyText: string;
|
|
147
|
+
stepLabels: EventRegistrationGenericShellStepLabels;
|
|
137
148
|
summaryButtonText: string;
|
|
138
149
|
}>;
|
|
139
150
|
hydration: Readonly<Omit<InternalEventRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText" | "registrationEndpoint" | "eligibilityEndpoint" | "checkoutEndpoint">>;
|
|
@@ -141,8 +152,11 @@ export declare const eventRegistrationBlockRuntime: Readonly<{
|
|
|
141
152
|
decode: (input: unknown) => import("../../../contracts").DecodeResult<Readonly<{
|
|
142
153
|
display: Readonly<{
|
|
143
154
|
kind: "event-registration";
|
|
144
|
-
state: "shell";
|
|
155
|
+
state: "generic-shell";
|
|
145
156
|
className: string | null;
|
|
157
|
+
titleText: string;
|
|
158
|
+
bodyText: string;
|
|
159
|
+
stepLabels: EventRegistrationGenericShellStepLabels;
|
|
146
160
|
summaryButtonText: string;
|
|
147
161
|
}>;
|
|
148
162
|
hydration: Readonly<Omit<InternalEventRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText" | "registrationEndpoint" | "eligibilityEndpoint" | "checkoutEndpoint">>;
|
|
@@ -164,8 +178,11 @@ export declare const eventRegistrationInteractiveIslandPropsCodec: Readonly<{
|
|
|
164
178
|
} & Readonly<{
|
|
165
179
|
display: Readonly<{
|
|
166
180
|
kind: "event-registration";
|
|
167
|
-
state: "shell";
|
|
181
|
+
state: "generic-shell";
|
|
168
182
|
className: string | null;
|
|
183
|
+
titleText: string;
|
|
184
|
+
bodyText: string;
|
|
185
|
+
stepLabels: EventRegistrationGenericShellStepLabels;
|
|
169
186
|
summaryButtonText: string;
|
|
170
187
|
}>;
|
|
171
188
|
hydration: Readonly<Omit<InternalEventRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText" | "registrationEndpoint" | "eligibilityEndpoint" | "checkoutEndpoint">>;
|
|
@@ -184,8 +201,11 @@ export declare const eventRegistrationInteractiveIslandPropsCodec: Readonly<{
|
|
|
184
201
|
} & Readonly<{
|
|
185
202
|
display: Readonly<{
|
|
186
203
|
kind: "event-registration";
|
|
187
|
-
state: "shell";
|
|
204
|
+
state: "generic-shell";
|
|
188
205
|
className: string | null;
|
|
206
|
+
titleText: string;
|
|
207
|
+
bodyText: string;
|
|
208
|
+
stepLabels: EventRegistrationGenericShellStepLabels;
|
|
189
209
|
summaryButtonText: string;
|
|
190
210
|
}>;
|
|
191
211
|
hydration: Readonly<Omit<InternalEventRegistrationClientProps, "siteId" | "stage" | "className" | "buttonText" | "registrationEndpoint" | "eligibilityEndpoint" | "checkoutEndpoint">>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { PublicEventPricing } from '../../../../../../../core/src/index';
|
|
2
|
+
import type { PublicEventTicketType } from '../../../../blocks/events/shared/types';
|
|
3
|
+
type RuntimeEventPricingSource = {
|
|
4
|
+
pricing?: unknown;
|
|
5
|
+
requiresRegistration?: boolean | null;
|
|
6
|
+
pricingType?: unknown;
|
|
7
|
+
price?: unknown;
|
|
8
|
+
currency?: unknown;
|
|
9
|
+
priceDisplay?: unknown;
|
|
10
|
+
pricingMode?: unknown;
|
|
11
|
+
ticketTypes?: unknown;
|
|
12
|
+
};
|
|
13
|
+
export declare function resolveRuntimeEventPricing(event: RuntimeEventPricingSource): PublicEventPricing<PublicEventTicketType>;
|
|
14
|
+
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type ContentEntrySnapshot, type ContentTypeSchema, type ToolbarState } from "../../../content-model/src/index";
|
|
2
2
|
import type { EditorBlockId } from "../../../core/src/index";
|
|
3
|
-
import type { BlockItem } from "../../../editor-blocks/src/
|
|
3
|
+
import type { BlockItem } from "../../../editor-blocks/src/block-editor/types";
|
|
4
4
|
import { type ReactNode } from "react";
|
|
5
5
|
import { type PublishOptions } from "../hooks/useEntryActions";
|
|
6
6
|
import { type ApiClient } from "../services";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { type EditorBlockPublishedBaselineInput } from '../../../core/src/index';
|
|
2
|
-
import type { BlockItem } from '../../../editor-blocks/src/
|
|
2
|
+
import type { BlockItem } from '../../../editor-blocks/src/block-editor/types';
|
|
3
3
|
export type BlockPublishedBaselineInput = EditorBlockPublishedBaselineInput;
|
|
4
4
|
export declare function buildBlockPublishedBaselines(blocks: readonly BlockItem[]): BlockPublishedBaselineInput[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { BlockItem } from '../../../editor-blocks/src/
|
|
1
|
+
import type { BlockItem } from '../../../editor-blocks/src/block-editor/types';
|
|
2
2
|
import type { EditorUiState } from '../ui/editorUiStore';
|
|
3
3
|
import type { ApiClient } from '../services';
|
|
4
4
|
type StoreApi<T> = {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { BlockItem } from '../../../editor-blocks/src/
|
|
1
|
+
import type { BlockItem } from '../../../editor-blocks/src/block-editor/types';
|
|
2
2
|
import type { EditorUiStoreInstance } from '../ui/editorUiStore';
|
|
3
3
|
import { type RecoveryConflict } from './deriveRecoveryConflict';
|
|
4
4
|
type UseInvalidBlockRecoveryOptions = Readonly<{
|
|
@@ -2,10 +2,11 @@ import type { RichTextPrimitiveProps } from "../../../blocks/src/index";
|
|
|
2
2
|
import type { PreviewLinkedEntryFieldBinding } from '../../../blocks/src/system/data/index';
|
|
3
3
|
type PreviewRichTextEditorProps = RichTextPrimitiveProps & {
|
|
4
4
|
onLinkedEntryFieldFocus?: (binding: PreviewLinkedEntryFieldBinding) => void;
|
|
5
|
+
onBlockFieldFocus?: (path: string) => void;
|
|
5
6
|
};
|
|
6
7
|
/**
|
|
7
8
|
* Memoized version to prevent unnecessary re-renders.
|
|
8
9
|
* Only re-renders when path, doc, variant, or className props actually change.
|
|
9
10
|
*/
|
|
10
|
-
export declare const PreviewRichTextEditor: import("react").MemoExoticComponent<({ path, linkedEntryField, onLinkedEntryFieldFocus, className, doc, variant }: PreviewRichTextEditorProps) => import("react").JSX.Element>;
|
|
11
|
+
export declare const PreviewRichTextEditor: import("react").MemoExoticComponent<({ path, linkedEntryField, onLinkedEntryFieldFocus, onBlockFieldFocus, className, doc, variant }: PreviewRichTextEditorProps) => import("react").JSX.Element>;
|
|
11
12
|
export {};
|
|
@@ -2,6 +2,7 @@ import type { TextProps } from '../../../blocks/src/index';
|
|
|
2
2
|
import type { PreviewLinkedEntryFieldBinding } from '../../../blocks/src/system/data/index';
|
|
3
3
|
type PreviewTextEditorProps = TextProps & {
|
|
4
4
|
onLinkedEntryFieldFocus?: (binding: PreviewLinkedEntryFieldBinding) => void;
|
|
5
|
+
onBlockFieldFocus?: (path: string) => void;
|
|
5
6
|
};
|
|
6
7
|
/**
|
|
7
8
|
* Inline text editor for preview mode with local authority.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './types';
|