@riverbankcms/sdk 0.84.1 → 0.85.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/dist/{PreviewEditorSidebar-X7RLMEI6.mjs → PreviewEditorSidebar-4PH35ZIE.mjs} +3 -3
- package/dist/{PreviewEditorUI-CT67N4O3.mjs → PreviewEditorUI-WHMCRJGM.mjs} +11 -6
- package/dist/SdkPreviewModeRuntime-4FGSVUYI.mjs +8 -0
- package/dist/_dts/ai/src/contracts/proposals.d.ts +684 -0
- package/dist/_dts/api/src/bookingConfig.d.ts +2 -0
- package/dist/_dts/api/src/index.d.ts +3 -3
- package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +2 -1
- package/dist/_dts/api/src/sdk-event-payment-terms.d.ts +16 -0
- package/dist/_dts/api/src/sdk-event-upsert.d.ts +11 -2
- package/dist/_dts/api/src/sdkContracts.d.ts +3 -0
- package/dist/_dts/api/src/types.d.ts +1 -0
- package/dist/_dts/api/src/url.d.ts +12 -4
- package/dist/_dts/blocks/src/system/runtime/api/types.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +3 -1
- package/dist/_dts/content-editor/src/hooks/useSimpleAutosave.d.ts +8 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/preview/MaintenanceModeBadge.d.ts +3 -2
- package/dist/_dts/preview-next/src/client/preview/PreviewEditorUI.d.ts +2 -1
- package/dist/_dts/sdk/src/cli/canonical-entry-policy.d.ts +53 -0
- package/dist/_dts/sdk/src/cli/commands/migrate.d.ts +1 -0
- package/dist/_dts/sdk/src/cli/commands/pull.d.ts +7 -1
- package/dist/_dts/sdk/src/cli/content/reader.d.ts +2 -0
- package/dist/_dts/sdk/src/cli/migrations/events.d.ts +73 -0
- package/dist/_dts/sdk/src/client/management/index.d.ts +1 -1
- package/dist/_dts/sdk/src/client/management/types.d.ts +6 -0
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/site-commands/src/commands.d.ts +57 -0
- package/dist/_dts/surfaces/src/index.d.ts +12 -0
- package/dist/{chunk-LBBPD2IW.mjs → chunk-4QNLOTES.mjs} +11 -16
- package/dist/{chunk-X5ZCSU6F.mjs → chunk-NFWGLRZZ.mjs} +1 -70
- package/dist/{chunk-QRKJDWT7.mjs → chunk-OCGTXHSO.mjs} +8 -7
- package/dist/{chunk-3LXFQS7T.mjs → chunk-PYDHOMEO.mjs} +1 -1
- package/dist/{chunk-RCTJAZSK.mjs → chunk-WFPYN7KA.mjs} +2 -2
- package/dist/{chunk-O62NDCTI.mjs → chunk-ZR2GQK2A.mjs} +6 -37
- package/dist/cli/index.mjs +1460 -414
- package/dist/client/{bookingForm-DYXT6YB6.mjs → bookingForm-36CWQUMV.mjs} +1 -1
- package/dist/client/bookings.mjs +1 -4
- package/dist/client/{chunk-UHDWIXVR.mjs → chunk-3C2VTPWI.mjs} +3 -2
- package/dist/client/{chunk-GFSQNTRW.mjs → chunk-SDIYSQAY.mjs} +0 -4
- package/dist/client/client.mjs +12 -16
- package/dist/client/{courseRegistration-YBOGURTA.mjs → courseRegistration-TMKU6ABO.mjs} +1 -1
- package/dist/client/{eventCalendar-K4QJVCMD.mjs → eventCalendar-G6TI32X6.mjs} +2 -2
- package/dist/client/{eventCombined-MTXGMTCZ.mjs → eventCombined-SCKEMNAR.mjs} +2 -2
- package/dist/client/{eventDetails-3PC4NL3U.mjs → eventDetails-XPIFXXPK.mjs} +2 -2
- package/dist/client/{eventListing-TFJET6DN.mjs → eventListing-7QFMEMGT.mjs} +2 -2
- package/dist/client/{eventRegistration-QGPBGJTW.mjs → eventRegistration-TOODSZUI.mjs} +2 -2
- package/dist/client/{form-MDKR4FNB.mjs → form-MTCMVCZT.mjs} +1 -1
- package/dist/client/{newsletterForm-ZR5UDGBT.mjs → newsletterForm-PCAIPFMA.mjs} +1 -1
- package/dist/client/rendering/client.mjs +2 -5
- package/dist/client/rendering/islands.mjs +9 -9
- package/dist/client/rendering.mjs +2 -5
- package/dist/client/spam-protection.mjs +0 -4
- package/dist/preview-next/client/runtime.mjs +5 -5
- package/dist/{sdk-runtime-7HJYPRWQ.mjs → sdk-runtime-QLOCYKVU.mjs} +6 -6
- package/dist/server/index.mjs +10 -11
- package/dist/server/next.mjs +10 -11
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/server.mjs +10 -11
- package/package.json +1 -1
- package/dist/SdkPreviewModeRuntime-EIMQ3S2V.mjs +0 -8
|
@@ -12,6 +12,8 @@ export type { EventPricingMode } from "../../core/src/index";
|
|
|
12
12
|
* contracts while the owning services validate and normalize inputs.
|
|
13
13
|
*/
|
|
14
14
|
export type BookingCollectionOptionKind = "upfront" | "deferred_manual" | "instalment_plan" | "flexible_balance";
|
|
15
|
+
export declare const DIRECT_CHECKOUT_COLLECTION_OPTION_KINDS: readonly ["upfront", "deferred_manual", "flexible_balance"];
|
|
16
|
+
export type DirectCheckoutCollectionOptionKind = (typeof DIRECT_CHECKOUT_COLLECTION_OPTION_KINDS)[number];
|
|
15
17
|
export type BookingPaymentArchetype = "event" | "class" | "workshop" | "retreat" | "performance" | "course" | "appointment";
|
|
16
18
|
export type BookingPaymentOptionsSource = "default" | "custom";
|
|
17
19
|
export type BookingInstalmentIntervalUnit = "day" | "week" | "month";
|
|
@@ -13,7 +13,7 @@ export { createIncrementalJsonAccumulator } from "./incrementalJson";
|
|
|
13
13
|
export type { SaveSiteChromeLookSelectionBody, SaveSiteChromeLookSelectionResponse, SiteThemeSelectionsPayload, } from "./siteRuntimeEndpoints";
|
|
14
14
|
export type { GeneratedIconSetApplyRequest, GeneratedIconSetApplyResponse, GeneratedIconSetCandidate, GeneratedIconSetGenerateRequest, GeneratedIconSetGenerateResponse, GeneratedIconRenderAsset, GeneratedIconRenderAssetRef, GeneratedIconRenderAssetsRequest, GeneratedIconRenderAssetsResponse, SiteIconStyleGuidePayload, SiteIconStyleGuideResponse, SiteIconStyleStrokeRule, SiteIconStyleGuideUpdateRequest, } from "./siteIcons";
|
|
15
15
|
export { DEFAULT_LAUNCH_READINESS_INPUT, deriveLaunchReadiness, } from "./launchReadiness";
|
|
16
|
-
export { getDashboardBaseUrl, getDashboardUrl, getAbsoluteDashboardUrl, getCmsApiUrl, resolveApiBaseUrl, } from "./url";
|
|
16
|
+
export { getDashboardBaseUrl, getDashboardUrl, getAbsoluteDashboardUrl, getCmsApiUrl, resolveApiBaseUrl, normalizeDashboardOrigin, deriveCmsApiUrlFromDashboardUrl, } from "./url";
|
|
17
17
|
export { unwrapResponse, ApiEnvelopeError } from "./common/envelope";
|
|
18
18
|
export { createAuthenticatedApiClient, createInternalAPIClient, createServerAPIClient, createBearerAPIClient, ApiRequestError, } from "./request";
|
|
19
19
|
export { normalizeCmsApiKey } from "./env";
|
|
@@ -36,7 +36,7 @@ export { FLEXIBLE_BALANCE_ADMIN_ACTION_SOURCES } from "./types";
|
|
|
36
36
|
export { getEventAttendanceModeLabel, getEventDeliveryModeLabel, getEventTicketTypeAttendanceScopeLabel, } from "./eventAttendanceLabels";
|
|
37
37
|
export { analyzeSiteBannerBody, decodeSiteBannerSettings, EMPTY_SITE_BANNER_BODY, SITE_BANNER_COOKIE_NAME_PREFIX, SITE_BANNER_MAX_PARAGRAPHS, SITE_BANNER_MAX_TEXT_LENGTH, createSiteBannerRevision, encodeSiteBannerSettings, fromSiteBannerDraft, getSiteBannerCookieName, isSiteBannerEligibleForPath, planSiteBannerRender, resolveSiteBannerAnnouncementRole, resolveSiteBannerShellBehavior, sanitizeSiteBannerBody, siteBannerDraftEquals, siteBannerSettingsInputSchema, siteBannerSettingsSchema, toSiteBannerDraft, validateSiteBannerDraft, } from "./siteBanner";
|
|
38
38
|
export type { SiteBannerBodyAnalysis, SiteBannerBodyIssue, SiteBannerDraft, SiteBannerDraftValidationIssue, SiteBannerRenderPlan, SiteBannerResolvedCta, } from "./siteBanner";
|
|
39
|
-
export type { AiSiteWizardSuggestGoalsRequest, AiSiteWizardSuggestGoalsResponse, AdminDeleteSiteResponse, AdminDeleteUserResponse, AdminOwnedSiteSummary, DashboardConfig, DashboardNavigationConfig, DashboardNavVisibilityConfig, DashboardNavVisibilityConfigWithRoles, DashboardWaitlistEntry, DashboardWaitlistEntryStatus, DashboardWaitlistListResponse, MediaUsageCheckItem, MediaUsageCheckResponse, MediaUsageLocation, BookingCollectionOptionKind, BookingPaymentArchetype, BookingPaymentDefaults, BookingInstalmentIntervalUnit, BookingPaymentOptionsSource, BookingInstalmentPlanConfig, BookingPaymentCollectionOption, BookingPaymentTermsConfig, PublicBookingPaymentTermsAvailability, PublishedBlockBaseline, PublicBookingAppointmentSummary, PublicBookingCustomerSummary, PublicBookingAppointmentStatusResponse, PublicCreateBookingAppointmentResponse, EventPricingMode, EventAttendanceMode, EventCapacityByAttendanceMode, EventDeliveryMode, EventModeCapacity, PublicEventEligibilityTicketTypeRecord, PublicEventTicketTypeAvailability, PublicEventTicketTypeRecord, EventTicketTypeCapacityMode, EventTicketTypeAttendanceScope, EventTicketTypeInput, EventTicketTypeRecord, GoLiveDecision, LaunchReadiness, LaunchRequirement, LaunchRequirementAction, LaunchEmailPackState, LaunchReviewPackState, LaunchAppointmentsPackState, LaunchEventsPackState, LaunchCoursesPackState, LaunchPaymentsPackState, LaunchCustomDomainPackState, AcknowledgeLaunchRequirementRequest, AcknowledgeLaunchRequirementResponse, GoLiveSiteRequest, GoLiveSiteResponse, LaunchRequirementEvidence, LaunchRequirementId, LaunchOverridableRequirementId, LaunchRequirementOverride, LaunchRequirementOverrideDefinition, LaunchRequirementOverrideReason, LaunchRequirementOwner, LaunchRequirementPackId, LaunchRequirementPriority, LaunchRequirementState, OnboardingPreviewStatusResponse, OnboardingPreviewThemeOption, OnboardingPreviewThemesResponse, ResendOnboardingPreviewConfirmationResponse, PublicOnboardingAttemptResponse, PublicOnboardingAttemptProgress, PublicOnboardingAttemptProgressResponse, PublicOnboardingProvisioningStage, PublicOnboardingAttemptRunKickoff, PublicOnboardingAttemptRunResponse, MacadamiaOnboardingCourseSession, MacadamiaOnboardingDraftFirstOffering, MacadamiaOnboardingFirstOffering, MacadamiaOnboardingFirstOfferingDeliveryMode, MacadamiaOnboardingFirstOfferingKind, MacadamiaOnboardingFirstOfferingScheduleMode, MacadamiaOnboardingLogoAnalysis, MacadamiaOnboardingLogoPaletteRecommendation, MacadamiaOnboardingMappedPalette, MacadamiaOnboardingOfferingKind, MacadamiaOnboardingSiteMode, MacadamiaOnboardingStyleMood, MacadamiaOnboardingSurfaceData, MacadamiaOnboardingTeamMode, MacadamiaOnboardingVisualIdentity, MacadamiaOnboardingWeekday, SiteGenerationBookingOfferingKind, SiteAnalyticsCookieBannerCopyOverrides, SiteAnalyticsSettingsPayload, SiteBannerAnnouncementRole, SiteBannerCta, SiteBannerScope, SiteBannerSettingsPayload, SiteBannerTone, StripeConnectRestrictions, SiteLegalJurisdiction, SiteLegalProfilePayload, SensitiveClientRecordsConfirmationKey, SensitiveClientRecordsMode, SensitiveClientRecordsRetentionProfile, SensitiveClientRecordsSettings, SensitiveClientRecordsUpdatePayload, SitePrivacyPolicyCapabilities, SitePrivacyPolicyDocument, SitePrivacySettings, SitePrivacySettingsPayload, SitePrivacySettingsResponse, SiteRuntimePrivacyPolicy, WaitlistDashboardActionResponse, } from "./types";
|
|
39
|
+
export type { AiSiteWizardSuggestGoalsRequest, AiSiteWizardSuggestGoalsResponse, AdminDeleteSiteResponse, AdminDeleteUserResponse, AdminOwnedSiteSummary, DashboardConfig, DashboardNavigationConfig, DashboardNavVisibilityConfig, DashboardNavVisibilityConfigWithRoles, DashboardWaitlistEntry, DashboardWaitlistEntryStatus, DashboardWaitlistListResponse, MediaUsageCheckItem, MediaUsageCheckResponse, MediaUsageLocation, BookingCollectionOptionKind, DirectCheckoutCollectionOptionKind, BookingPaymentArchetype, BookingPaymentDefaults, BookingInstalmentIntervalUnit, BookingPaymentOptionsSource, BookingInstalmentPlanConfig, BookingPaymentCollectionOption, BookingPaymentTermsConfig, PublicBookingPaymentTermsAvailability, PublishedBlockBaseline, PublicBookingAppointmentSummary, PublicBookingCustomerSummary, PublicBookingAppointmentStatusResponse, PublicCreateBookingAppointmentResponse, EventPricingMode, EventAttendanceMode, EventCapacityByAttendanceMode, EventDeliveryMode, EventModeCapacity, PublicEventEligibilityTicketTypeRecord, PublicEventTicketTypeAvailability, PublicEventTicketTypeRecord, EventTicketTypeCapacityMode, EventTicketTypeAttendanceScope, EventTicketTypeInput, EventTicketTypeRecord, GoLiveDecision, LaunchReadiness, LaunchRequirement, LaunchRequirementAction, LaunchEmailPackState, LaunchReviewPackState, LaunchAppointmentsPackState, LaunchEventsPackState, LaunchCoursesPackState, LaunchPaymentsPackState, LaunchCustomDomainPackState, AcknowledgeLaunchRequirementRequest, AcknowledgeLaunchRequirementResponse, GoLiveSiteRequest, GoLiveSiteResponse, LaunchRequirementEvidence, LaunchRequirementId, LaunchOverridableRequirementId, LaunchRequirementOverride, LaunchRequirementOverrideDefinition, LaunchRequirementOverrideReason, LaunchRequirementOwner, LaunchRequirementPackId, LaunchRequirementPriority, LaunchRequirementState, OnboardingPreviewStatusResponse, OnboardingPreviewThemeOption, OnboardingPreviewThemesResponse, ResendOnboardingPreviewConfirmationResponse, PublicOnboardingAttemptResponse, PublicOnboardingAttemptProgress, PublicOnboardingAttemptProgressResponse, PublicOnboardingProvisioningStage, PublicOnboardingAttemptRunKickoff, PublicOnboardingAttemptRunResponse, MacadamiaOnboardingCourseSession, MacadamiaOnboardingDraftFirstOffering, MacadamiaOnboardingFirstOffering, MacadamiaOnboardingFirstOfferingDeliveryMode, MacadamiaOnboardingFirstOfferingKind, MacadamiaOnboardingFirstOfferingScheduleMode, MacadamiaOnboardingLogoAnalysis, MacadamiaOnboardingLogoPaletteRecommendation, MacadamiaOnboardingMappedPalette, MacadamiaOnboardingOfferingKind, MacadamiaOnboardingSiteMode, MacadamiaOnboardingStyleMood, MacadamiaOnboardingSurfaceData, MacadamiaOnboardingTeamMode, MacadamiaOnboardingVisualIdentity, MacadamiaOnboardingWeekday, SiteGenerationBookingOfferingKind, SiteAnalyticsCookieBannerCopyOverrides, SiteAnalyticsSettingsPayload, SiteBannerAnnouncementRole, SiteBannerCta, SiteBannerScope, SiteBannerSettingsPayload, SiteBannerTone, StripeConnectRestrictions, SiteLegalJurisdiction, SiteLegalProfilePayload, SensitiveClientRecordsConfirmationKey, SensitiveClientRecordsMode, SensitiveClientRecordsRetentionProfile, SensitiveClientRecordsSettings, SensitiveClientRecordsUpdatePayload, SitePrivacyPolicyCapabilities, SitePrivacyPolicyDocument, SitePrivacySettings, SitePrivacySettingsPayload, SitePrivacySettingsResponse, SiteRuntimePrivacyPolicy, WaitlistDashboardActionResponse, } from "./types";
|
|
40
40
|
export { acknowledgeLaunchRequirementRequestSchema, goLiveSiteRequestSchema, LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS, toAcknowledgeLaunchRequirementRequest, } from "./siteOnboarding";
|
|
41
41
|
export { MANAGED_PRIVACY_POLICY_PATH, DEFAULT_SITE_LEGAL_JURISDICTION, JURISDICTION_LABELS, SENSITIVE_CLIENT_RECORDS_CONFIRMATION_KEYS, SENSITIVE_CLIENT_RECORDS_CONFIRMATION_VERSION, buildManagedPrivacyPolicyDocument, } from "./privacyPolicy";
|
|
42
42
|
export { analyticsCollect } from "./analytics";
|
|
@@ -55,7 +55,7 @@ export type { RouteMetadataPayload, RouteMetadataResponse } from "./routes";
|
|
|
55
55
|
export { getBookingSettingsRequest, updateBookingSettingsRequest, createAppointmentRequest, createCourseRequest, updateCourseRequest, deleteCourseRequest, deleteCourseProgramRequest, duplicateCourseRequest, addCourseEnrollmentRequest, addEventOccurrenceAttendeeRequest, updateCourseEnrollmentRequest, } from "./bookings";
|
|
56
56
|
export type { AppointmentService, AppointmentServiceOnlineDetails, AppointmentServiceOnlineDetailsInput, } from "./bookingOperations";
|
|
57
57
|
export type { BookingPricing } from "./bookingConfig";
|
|
58
|
-
export { DEFAULT_APPOINTMENT_STAFF_DIGEST_LOCAL_SEND_TIME } from "./bookingConfig";
|
|
58
|
+
export { DEFAULT_APPOINTMENT_STAFF_DIGEST_LOCAL_SEND_TIME, DIRECT_CHECKOUT_COLLECTION_OPTION_KINDS, } from "./bookingConfig";
|
|
59
59
|
export { BOOKING_LEDGER_CANCELLATION_MODE_VALUES, BOOKING_LEDGER_DATE_BASIS_VALUES, BOOKING_LEDGER_KIND_VALUES, BOOKING_LEDGER_PERIOD_PRESET_VALUES, BOOKING_QUESTION_ANSWER_EXPORT_SCOPES, BOOKING_QUESTION_ANSWER_EXPORT_SCOPE_VALUES, CUSTOMER_MEMBERSHIP_STATUS_VALUES, CUSTOMER_PASS_STATUS_VALUES, } from "./bookingRecords";
|
|
60
60
|
export type { BookingQuestionAnswerExportScopeKind, ExportBookingQuestionAnswersCsvRequest, } from "./bookingRecords";
|
|
61
61
|
export { getEmailSettingsRequest, updateEmailSettingsRequest, sendTestEmailRequest, previewEmailTemplateRequest, } from "./emailSettings";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { APIEndpoint } from "./apiEndpointTypes";
|
|
2
2
|
import type { PublicEventPricing } from "../../core/src/index";
|
|
3
|
-
import type { BookingPaymentTermsConfig, BookingPricing, EventAttendanceMode, EventDeliveryMode, EventPricingMode, PublicEventEligibilityTicketTypeRecord, PublicEventTicketTypeRecord } from "./bookingConfig";
|
|
3
|
+
import type { BookingPaymentTermsConfig, BookingPricing, DirectCheckoutCollectionOptionKind, EventAttendanceMode, EventDeliveryMode, EventPricingMode, PublicEventEligibilityTicketTypeRecord, PublicEventTicketTypeRecord } from "./bookingConfig";
|
|
4
4
|
import type { AutoAppliedDiscountPreview } from "./bookingRecords";
|
|
5
5
|
import type { PublicCourseDetails } from "./courses";
|
|
6
6
|
import type { PublicTeamMemberBlockItem, PublicTeamMemberSummary } from "./teamMembers";
|
|
@@ -779,6 +779,7 @@ export type PublicExperienceAPIEndpoints = {
|
|
|
779
779
|
checkoutType?: "event" | "pass_bundle" | "membership_bundle";
|
|
780
780
|
productId?: string;
|
|
781
781
|
discountCode?: string;
|
|
782
|
+
collectionOptionKind?: DirectCheckoutCollectionOptionKind;
|
|
782
783
|
successUrl: string;
|
|
783
784
|
cancelUrl: string;
|
|
784
785
|
}, {
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { BookingCollectionOptionKind, BookingPaymentTermsConfig } from './bookingConfig';
|
|
2
|
+
export type SdkEventPaymentTerms = BookingPaymentTermsConfig;
|
|
3
|
+
export type SdkEventPaymentTermsInput = BookingPaymentTermsConfig;
|
|
4
|
+
export type SdkEventSupportedPaymentOptionKind = Exclude<BookingCollectionOptionKind, 'instalment_plan'>;
|
|
5
|
+
export type SdkEventPaymentTermsIssue = Readonly<{
|
|
6
|
+
path: readonly string[];
|
|
7
|
+
message: string;
|
|
8
|
+
}>;
|
|
9
|
+
export type SdkEventPaymentTermsClassification = Readonly<{
|
|
10
|
+
ok: true;
|
|
11
|
+
paymentTerms?: SdkEventPaymentTerms;
|
|
12
|
+
}> | Readonly<{
|
|
13
|
+
ok: false;
|
|
14
|
+
issues: readonly SdkEventPaymentTermsIssue[];
|
|
15
|
+
}>;
|
|
16
|
+
export declare function classifySdkEventPaymentTerms(rawInput: unknown): SdkEventPaymentTermsClassification;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type { SdkPullEventSeries, SdkEventUpsertPricingInput, SdkEventUpsertScheduleInput } from './sdkContracts';
|
|
1
|
+
import type { SdkPullEventSeries, SdkEventUpsertPaymentTermsInput, SdkEventUpsertPricingInput, SdkEventUpsertScheduleInput } from './sdkContracts';
|
|
2
|
+
import { type SdkEventPaymentTerms, type SdkEventPaymentTermsIssue } from './sdk-event-payment-terms';
|
|
2
3
|
import { type SdkEventPricing, type SdkEventPricingIssue } from './sdk-event-pricing';
|
|
3
4
|
import { type ClassifySdkEventScheduleOptions, type SdkEventCanonicalSchedule, type SdkEventScheduleInput, type SdkEventScheduleIssue } from './sdk-event-schedule';
|
|
4
5
|
export type SdkEventUpsertBody = Readonly<{
|
|
@@ -10,6 +11,7 @@ export type SdkEventUpsertBody = Readonly<{
|
|
|
10
11
|
schedule: SdkEventUpsertScheduleInput;
|
|
11
12
|
capacity?: number | null;
|
|
12
13
|
pricing?: SdkEventUpsertPricingInput;
|
|
14
|
+
paymentTerms?: SdkEventUpsertPaymentTermsInput;
|
|
13
15
|
venueRef?: string | null;
|
|
14
16
|
categoryRef?: string | null;
|
|
15
17
|
content?: SdkPullEventSeries['content'];
|
|
@@ -21,10 +23,12 @@ export type SdkEventUpsertBody = Readonly<{
|
|
|
21
23
|
export type ValidatedSdkEventUpsertInput = Omit<SdkEventUpsertBody, 'schedule' | 'pricing'> & Readonly<{
|
|
22
24
|
schedule: SdkEventCanonicalSchedule;
|
|
23
25
|
pricing?: SdkEventPricing;
|
|
26
|
+
paymentTerms?: SdkEventPaymentTerms;
|
|
24
27
|
}>;
|
|
25
|
-
export type SdkEventUpsertParseInput = Omit<SdkEventUpsertBody, 'schedule' | 'pricing'> & Readonly<{
|
|
28
|
+
export type SdkEventUpsertParseInput = Omit<SdkEventUpsertBody, 'schedule' | 'pricing' | 'paymentTerms'> & Readonly<{
|
|
26
29
|
schedule: SdkEventScheduleInput;
|
|
27
30
|
pricing?: unknown;
|
|
31
|
+
paymentTerms?: unknown;
|
|
28
32
|
}>;
|
|
29
33
|
export type SdkEventUpsertValidationIssue = Readonly<{
|
|
30
34
|
source: 'schedule';
|
|
@@ -36,6 +40,11 @@ export type SdkEventUpsertValidationIssue = Readonly<{
|
|
|
36
40
|
path: readonly string[];
|
|
37
41
|
message: string;
|
|
38
42
|
issue: SdkEventPricingIssue;
|
|
43
|
+
}> | Readonly<{
|
|
44
|
+
source: 'paymentTerms';
|
|
45
|
+
path: readonly string[];
|
|
46
|
+
message: string;
|
|
47
|
+
issue: SdkEventPaymentTermsIssue;
|
|
39
48
|
}>;
|
|
40
49
|
export type SdkEventUpsertValidationResult = Readonly<{
|
|
41
50
|
ok: true;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { FieldDefinition, FieldDefinitionInput, SdkCustomBlock, SdkCustomBlockInput, SiteFooterContent, Theme } from '../../blocks/src/index';
|
|
2
2
|
import type { LinkPayload } from './navigation/types';
|
|
3
3
|
import type { SdkEventPricing, SdkEventPricingInput } from './sdk-event-pricing';
|
|
4
|
+
import type { SdkEventPaymentTerms, SdkEventPaymentTermsInput } from './sdk-event-payment-terms';
|
|
4
5
|
/**
|
|
5
6
|
* SDK Site Configuration Types
|
|
6
7
|
*
|
|
@@ -493,6 +494,7 @@ export interface SdkPullEventSeries {
|
|
|
493
494
|
};
|
|
494
495
|
capacity: number | null;
|
|
495
496
|
pricing: SdkEventPricing;
|
|
497
|
+
paymentTerms?: SdkEventPaymentTerms;
|
|
496
498
|
venueRef: string | null;
|
|
497
499
|
categoryRef: string | null;
|
|
498
500
|
content: {
|
|
@@ -536,6 +538,7 @@ export type SdkEventStartDurationScheduleInput = {
|
|
|
536
538
|
};
|
|
537
539
|
export type SdkEventUpsertScheduleInput = SdkEventCanonicalScheduleInput | SdkEventStartEndScheduleInput | SdkEventStartDurationScheduleInput;
|
|
538
540
|
export type SdkEventUpsertPricingInput = SdkEventPricingInput;
|
|
541
|
+
export type SdkEventUpsertPaymentTermsInput = SdkEventPaymentTermsInput;
|
|
539
542
|
export interface SdkPullEventsResponse {
|
|
540
543
|
events: SdkPullEventSeries[];
|
|
541
544
|
meta: SdkPullMeta;
|
|
@@ -23,6 +23,7 @@ export type * from "./courses";
|
|
|
23
23
|
export type * from "./participantMessaging";
|
|
24
24
|
export type * from "./publicExperienceEndpoints";
|
|
25
25
|
export type * from "./sdkContracts";
|
|
26
|
+
export type * from "./sdk-event-payment-terms";
|
|
26
27
|
export type * from "./siteInfrastructure";
|
|
27
28
|
export type * from "./siteGeneration";
|
|
28
29
|
export type * from "./siteManagementEndpoints";
|
|
@@ -5,6 +5,15 @@
|
|
|
5
5
|
* and derive the API URL from the dashboard URL to avoid duplicate env vars.
|
|
6
6
|
*/
|
|
7
7
|
import { type SurfaceId } from '../../surfaces/src/index';
|
|
8
|
+
/**
|
|
9
|
+
* Normalize a public dashboard URL/env value to an origin.
|
|
10
|
+
*
|
|
11
|
+
* Accepts fully-qualified origins, bare authorities like `localhost:4000`,
|
|
12
|
+
* and accidental `/api` suffixes. Bare local/test authorities default to
|
|
13
|
+
* `http`; other bare authorities default to `https`.
|
|
14
|
+
*/
|
|
15
|
+
export declare function normalizeDashboardOrigin(input: string): string;
|
|
16
|
+
export declare function deriveCmsApiUrlFromDashboardUrl(input: string): string;
|
|
8
17
|
/**
|
|
9
18
|
* Get the public, user-facing dashboard origin from environment.
|
|
10
19
|
*
|
|
@@ -13,13 +22,13 @@ import { type SurfaceId } from '../../surfaces/src/index';
|
|
|
13
22
|
* host that should never appear in emails, redirects, or browser links.
|
|
14
23
|
*
|
|
15
24
|
* @returns Dashboard base URL (e.g., 'http://localhost:4000')
|
|
16
|
-
* @throws Error if
|
|
25
|
+
* @throws Error if NEXT_PUBLIC_DASHBOARD_URL is not configured
|
|
17
26
|
*/
|
|
18
27
|
export declare function getDashboardBaseUrl(): string;
|
|
19
28
|
/**
|
|
20
29
|
* Get the CMS API URL by appending /api to the dashboard URL
|
|
21
30
|
* @returns API base URL (e.g., 'http://localhost:4000/api' or '/api' in browser)
|
|
22
|
-
* @throws Error if neither
|
|
31
|
+
* @throws Error if neither CMS_API_URL nor NEXT_PUBLIC_DASHBOARD_URL is configured (server-side only)
|
|
23
32
|
*/
|
|
24
33
|
export declare function getCmsApiUrl(): string;
|
|
25
34
|
/**
|
|
@@ -71,7 +80,6 @@ export declare function getAbsoluteDashboardUrl(path?: string, options?: GetAbso
|
|
|
71
80
|
*/
|
|
72
81
|
export declare const getDashboardUrl: typeof getAbsoluteDashboardUrl;
|
|
73
82
|
/**
|
|
74
|
-
*
|
|
75
|
-
* @deprecated Use getCmsApiUrl() instead - this function is maintained for backwards compatibility
|
|
83
|
+
* @deprecated Use getCmsApiUrl() instead - this alias is maintained for backwards compatibility.
|
|
76
84
|
*/
|
|
77
85
|
export declare function resolveApiBaseUrl(): string;
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* Request/response types for all client-side API calls from blocks.
|
|
5
5
|
*/
|
|
6
6
|
import type { AppointmentResourceId } from "../../../../../core/src/index";
|
|
7
|
+
export type DirectCheckoutCollectionOptionKind = "upfront" | "deferred_manual" | "flexible_balance";
|
|
7
8
|
/** API key auth for SDK sites (bld_live_sk_*) */
|
|
8
9
|
export type ApiKeyAuth = {
|
|
9
10
|
type: "api-key";
|
|
@@ -380,6 +381,7 @@ export interface EventCheckoutRequest {
|
|
|
380
381
|
productId?: string;
|
|
381
382
|
/** Optional booking discount code (applies only to Stripe/card flows) */
|
|
382
383
|
discountCode?: string;
|
|
384
|
+
collectionOptionKind?: DirectCheckoutCollectionOptionKind;
|
|
383
385
|
successUrl: string;
|
|
384
386
|
cancelUrl: string;
|
|
385
387
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { PublicEvent, PublicEventTicketType, PublicEventTicketTypeAvailability } from '../../../blocks/events/shared/types';
|
|
2
2
|
import type { OccurrenceContext } from '../../../blocks/event-registration.shared';
|
|
3
|
-
import type { AvailablePass, AvailableMembership, EligibilityEventTicketType } from '../../api/types';
|
|
3
|
+
import type { AvailablePass, AvailableMembership, DirectCheckoutCollectionOptionKind, EligibilityEventTicketType } from '../../api/types';
|
|
4
4
|
export type { PublicEvent, OccurrenceContext };
|
|
5
5
|
export type { FormData } from '../../shared';
|
|
6
6
|
/**
|
|
@@ -114,6 +114,8 @@ export type PaymentSelection = {
|
|
|
114
114
|
productCurrency?: string;
|
|
115
115
|
/** Payment interval for memberships (e.g., 'month', 'year') */
|
|
116
116
|
productInterval?: string;
|
|
117
|
+
/** Direct-payment collection option chosen for this registration. */
|
|
118
|
+
collectionOptionKind?: DirectCheckoutCollectionOptionKind;
|
|
117
119
|
};
|
|
118
120
|
/**
|
|
119
121
|
* State reported by PaymentSelectionStep for parent to render footer actions.
|
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
import type { DraftWorkflowStatus } from '../types';
|
|
2
2
|
import type { EditorUiStoreInstance } from '../ui/editorUiStore';
|
|
3
|
+
/**
|
|
4
|
+
* Autosave hook backed by the shared debounced-latest-save scheduler.
|
|
5
|
+
* New changes made while a save is in flight queue one follow-up save with the
|
|
6
|
+
* latest snapshot instead of blocking the editor or starting parallel writes.
|
|
7
|
+
*
|
|
8
|
+
* Status is stored in the Zustand uiStore instead of local state, allowing
|
|
9
|
+
* components to subscribe granularly via selectors.
|
|
10
|
+
*/
|
|
3
11
|
type AutosaveConfig<TValues, TPayload> = {
|
|
4
12
|
/** Function to call to save the data */
|
|
5
13
|
saveFn: (payload: TPayload) => Promise<unknown>;
|
|
@@ -17364,13 +17364,13 @@ export type Enums<DefaultSchemaEnumNameOrOptions extends keyof DefaultSchema["En
|
|
|
17364
17364
|
} ? keyof DatabaseWithoutInternals[DefaultSchemaEnumNameOrOptions["schema"]]["Enums"] : never = never> = DefaultSchemaEnumNameOrOptions extends {
|
|
17365
17365
|
schema: keyof DatabaseWithoutInternals;
|
|
17366
17366
|
} ? DatabaseWithoutInternals[DefaultSchemaEnumNameOrOptions["schema"]]["Enums"][EnumName] : DefaultSchemaEnumNameOrOptions extends keyof DefaultSchema["Enums"] ? DefaultSchema["Enums"][DefaultSchemaEnumNameOrOptions] : never;
|
|
17367
|
-
export type CompositeTypes<PublicCompositeTypeNameOrOptions extends {
|
|
17367
|
+
export type CompositeTypes<PublicCompositeTypeNameOrOptions extends keyof DefaultSchema["CompositeTypes"] | {
|
|
17368
17368
|
schema: keyof DatabaseWithoutInternals;
|
|
17369
17369
|
}, CompositeTypeName extends PublicCompositeTypeNameOrOptions extends {
|
|
17370
17370
|
schema: keyof DatabaseWithoutInternals;
|
|
17371
17371
|
} ? keyof DatabaseWithoutInternals[PublicCompositeTypeNameOrOptions["schema"]]["CompositeTypes"] : never = never> = PublicCompositeTypeNameOrOptions extends {
|
|
17372
17372
|
schema: keyof DatabaseWithoutInternals;
|
|
17373
|
-
} ? DatabaseWithoutInternals[PublicCompositeTypeNameOrOptions["schema"]]["CompositeTypes"][CompositeTypeName] : never;
|
|
17373
|
+
} ? DatabaseWithoutInternals[PublicCompositeTypeNameOrOptions["schema"]]["CompositeTypes"][CompositeTypeName] : PublicCompositeTypeNameOrOptions extends keyof DefaultSchema["CompositeTypes"] ? DefaultSchema["CompositeTypes"][PublicCompositeTypeNameOrOptions] : never;
|
|
17374
17374
|
export declare const Constants: {
|
|
17375
17375
|
readonly graphql_public: {
|
|
17376
17376
|
readonly Enums: {};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
export declare function MaintenanceModeBadge({ siteId }: {
|
|
1
|
+
export declare function MaintenanceModeBadge({ dashboardBaseUrl, siteId, }: {
|
|
2
|
+
dashboardBaseUrl: string | null | undefined;
|
|
2
3
|
siteId: string;
|
|
3
|
-
}): import("react").JSX.Element;
|
|
4
|
+
}): import("react").JSX.Element | null;
|
|
@@ -2,11 +2,12 @@ import React from 'react';
|
|
|
2
2
|
import type { ApiClient } from '../../../../api/src/request';
|
|
3
3
|
import { type SurfaceId } from '../../../../surfaces/src/index';
|
|
4
4
|
type PreviewEditorUIProps = {
|
|
5
|
+
dashboardBaseUrl?: string | null;
|
|
5
6
|
inMaintenanceMode?: boolean;
|
|
6
7
|
siteId?: string;
|
|
7
8
|
surfaceId?: SurfaceId;
|
|
8
9
|
isSiteLaunched?: boolean;
|
|
9
10
|
apiClient?: ApiClient;
|
|
10
11
|
};
|
|
11
|
-
export declare function PreviewEditorUI({ inMaintenanceMode, siteId, surfaceId, isSiteLaunched, apiClient, }: PreviewEditorUIProps): React.ReactPortal | null;
|
|
12
|
+
export declare function PreviewEditorUI({ dashboardBaseUrl, inMaintenanceMode, siteId, surfaceId, isSiteLaunched, apiClient, }: PreviewEditorUIProps): React.ReactPortal | null;
|
|
12
13
|
export {};
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { PulledContent } from '../client/management';
|
|
2
|
+
import type { LocalContent } from './content/reader';
|
|
3
|
+
export declare const CANONICAL_EVENT_ENTRY_TYPE = "event";
|
|
4
|
+
export declare const EVENT_MIGRATION_COMMAND = "riverbankcms migrate events";
|
|
5
|
+
export declare const EVENT_PUSH_COMMAND = "riverbankcms push events";
|
|
6
|
+
export declare const EVENT_PULL_COMMAND = "riverbankcms pull events";
|
|
7
|
+
export type CanonicalEntrySurface = typeof CANONICAL_EVENT_ENTRY_TYPE;
|
|
8
|
+
export type CanonicalEntryOperation = 'push' | 'pull';
|
|
9
|
+
export type CanonicalEntryPolicy = Readonly<{
|
|
10
|
+
contentType: CanonicalEntrySurface;
|
|
11
|
+
migrationCommand: string;
|
|
12
|
+
commands: Readonly<Record<CanonicalEntryOperation, string>>;
|
|
13
|
+
}>;
|
|
14
|
+
export type CanonicalEntryScopeViolation = Readonly<{
|
|
15
|
+
contentType: CanonicalEntrySurface;
|
|
16
|
+
message: string;
|
|
17
|
+
suggestion: string;
|
|
18
|
+
}>;
|
|
19
|
+
export type CanonicalEntrySyncDecision = Readonly<{
|
|
20
|
+
tag: 'allow';
|
|
21
|
+
}> | Readonly<{
|
|
22
|
+
tag: 'reject';
|
|
23
|
+
violation: CanonicalEntryScopeViolation;
|
|
24
|
+
}> | Readonly<{
|
|
25
|
+
tag: 'allow-with-canonical-exclusions';
|
|
26
|
+
policies: readonly CanonicalEntryPolicy[];
|
|
27
|
+
}>;
|
|
28
|
+
export type CanonicalEntryFilterResult<TContent> = Readonly<{
|
|
29
|
+
content: TContent;
|
|
30
|
+
removedEntryCount: number;
|
|
31
|
+
removedContentTypes: readonly CanonicalEntrySurface[];
|
|
32
|
+
}>;
|
|
33
|
+
export declare function isCanonicalEventEntryType(contentType: string | undefined): contentType is CanonicalEntrySurface;
|
|
34
|
+
export declare function getCanonicalEntryPolicy(contentType: string | undefined): CanonicalEntryPolicy | null;
|
|
35
|
+
export declare function getCanonicalEntrySyncDecision(input: {
|
|
36
|
+
scope: string;
|
|
37
|
+
contentType?: string;
|
|
38
|
+
operation: CanonicalEntryOperation;
|
|
39
|
+
}): CanonicalEntrySyncDecision;
|
|
40
|
+
export declare function getCanonicalEntryScopeViolation(input: {
|
|
41
|
+
scope: string;
|
|
42
|
+
contentType?: string;
|
|
43
|
+
operation: CanonicalEntryOperation;
|
|
44
|
+
}): CanonicalEntryScopeViolation | null;
|
|
45
|
+
export declare function shouldExcludeCanonicalEntries(decision: CanonicalEntrySyncDecision): boolean;
|
|
46
|
+
export declare function filterGenericEntryContentTypes(contentTypes: readonly string[]): string[];
|
|
47
|
+
export declare function stripCanonicalEventEntriesFromLocalContent(content: LocalContent): CanonicalEntryFilterResult<LocalContent>;
|
|
48
|
+
export declare function stripCanonicalEventEntriesFromPulledContent(content: PulledContent): CanonicalEntryFilterResult<PulledContent>;
|
|
49
|
+
export declare function findLegacyEventEntryFiles(contentDir: string): Promise<string[]>;
|
|
50
|
+
export declare function formatLegacyEventEntryWarning(files: readonly string[]): Readonly<{
|
|
51
|
+
files: readonly string[];
|
|
52
|
+
suggestion: string;
|
|
53
|
+
}>;
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*
|
|
6
6
|
* Usage:
|
|
7
7
|
* riverbankcms migrate entries [contentType] [--content-dir <dir>] [--dry-run] [--force] [--yes]
|
|
8
|
+
* riverbankcms migrate events [--content-dir <dir>] [--dry-run] [--yes]
|
|
8
9
|
*/
|
|
9
10
|
import { Command } from 'commander';
|
|
10
11
|
export declare const migrateCommand: Command;
|
|
@@ -15,12 +15,18 @@
|
|
|
15
15
|
* riverbankcms pull footer # Pull footer content
|
|
16
16
|
*/
|
|
17
17
|
import { Command } from 'commander';
|
|
18
|
-
import type { PulledContent } from '../../client/management';
|
|
18
|
+
import type { ManagementClient, PulledContent } from '../../client/management';
|
|
19
|
+
import type { OutputContext } from '../output';
|
|
19
20
|
import type { EntryBaseSnapshotTarget } from '../merge-remote/entrySnapshots';
|
|
20
21
|
export declare function entryBaseSnapshotTargetForPull(input: Readonly<{
|
|
21
22
|
isRemote: boolean;
|
|
22
23
|
siteId: string;
|
|
23
24
|
}>): EntryBaseSnapshotTarget;
|
|
25
|
+
/**
|
|
26
|
+
* Fetch broad generic content, including paginated entry payloads when needed,
|
|
27
|
+
* then remove canonical/owner-managed entry types before diffing or writing.
|
|
28
|
+
*/
|
|
29
|
+
export declare function pullAllContentWithCanonicalEntryPolicy(client: ManagementClient, output: OutputContext): Promise<PulledContent>;
|
|
24
30
|
export declare function createScopedPullContent(meta: PulledContent['meta'], overrides: Partial<Omit<PulledContent, 'meta'>>): PulledContent;
|
|
25
31
|
/**
|
|
26
32
|
* Determines whether the pull command should prompt for overwrite confirmation.
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import type { NavigationAuthoringLinkInput, NavigationLocalItemInput } from '../../../../api/src/navigation';
|
|
8
8
|
import type { SdkEventPricingInput } from '../../../../api/src/sdk-event-pricing';
|
|
9
|
+
import type { EventPaymentTermsInput } from '../../client/management/types';
|
|
9
10
|
import type { Theme } from '../../contracts';
|
|
10
11
|
export interface LocalEntry {
|
|
11
12
|
identifier: string;
|
|
@@ -172,6 +173,7 @@ export interface LocalEvent {
|
|
|
172
173
|
schedule?: LocalEventSchedule;
|
|
173
174
|
capacity?: number | null;
|
|
174
175
|
pricing?: LocalEventPricing;
|
|
176
|
+
paymentTerms?: EventPaymentTermsInput;
|
|
175
177
|
venueRef?: string | null;
|
|
176
178
|
categoryRef?: string | null;
|
|
177
179
|
content?: LocalEventContent;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import type { LocalEvent } from '../content/reader';
|
|
2
|
+
export type EventMigrationPlanItem = Readonly<{
|
|
3
|
+
tag: 'mergeLegacyIntoEvent';
|
|
4
|
+
legacyFilePath: string;
|
|
5
|
+
eventFilePath: string;
|
|
6
|
+
eventIdentifier: string;
|
|
7
|
+
mergedEvent: LocalEvent;
|
|
8
|
+
mergedFields: readonly string[];
|
|
9
|
+
}> | Readonly<{
|
|
10
|
+
tag: 'archiveLegacyOnly';
|
|
11
|
+
legacyFilePath: string;
|
|
12
|
+
eventFilePath: string;
|
|
13
|
+
eventIdentifier: string;
|
|
14
|
+
reason: string;
|
|
15
|
+
}> | Readonly<{
|
|
16
|
+
tag: 'conflict';
|
|
17
|
+
legacyFilePath: string;
|
|
18
|
+
eventIdentifier: string;
|
|
19
|
+
conflicts: readonly string[];
|
|
20
|
+
}> | Readonly<{
|
|
21
|
+
tag: 'ambiguousMatch';
|
|
22
|
+
legacyFilePath: string;
|
|
23
|
+
candidateEventIdentifiers: readonly string[];
|
|
24
|
+
}> | Readonly<{
|
|
25
|
+
tag: 'unmappableLegacyFields';
|
|
26
|
+
legacyFilePath: string;
|
|
27
|
+
eventIdentifier?: string;
|
|
28
|
+
fields: readonly string[];
|
|
29
|
+
}> | Readonly<{
|
|
30
|
+
tag: 'orphanedLegacy';
|
|
31
|
+
legacyFilePath: string;
|
|
32
|
+
legacyIdentifier: string;
|
|
33
|
+
reason: string;
|
|
34
|
+
}> | Readonly<{
|
|
35
|
+
tag: 'invalidLegacyShape';
|
|
36
|
+
legacyFilePath: string;
|
|
37
|
+
reason: string;
|
|
38
|
+
}>;
|
|
39
|
+
export type WritableEventMigrationPlanItem = Extract<EventMigrationPlanItem, {
|
|
40
|
+
tag: 'mergeLegacyIntoEvent' | 'archiveLegacyOnly';
|
|
41
|
+
}>;
|
|
42
|
+
export type BlockedEventMigrationPlanItem = Exclude<EventMigrationPlanItem, WritableEventMigrationPlanItem>;
|
|
43
|
+
export type EventMigrationPlan = Readonly<{
|
|
44
|
+
tag: 'writable';
|
|
45
|
+
contentDir: string;
|
|
46
|
+
items: readonly WritableEventMigrationPlanItem[];
|
|
47
|
+
}> | Readonly<{
|
|
48
|
+
tag: 'blocked';
|
|
49
|
+
contentDir: string;
|
|
50
|
+
items: readonly EventMigrationPlanItem[];
|
|
51
|
+
blockers: readonly BlockedEventMigrationPlanItem[];
|
|
52
|
+
}>;
|
|
53
|
+
export type MigrateEventsResult = Readonly<{
|
|
54
|
+
status: 'writable' | 'blocked';
|
|
55
|
+
legacyFilesFound: number;
|
|
56
|
+
eventsToWrite: number;
|
|
57
|
+
legacyFilesToArchive: number;
|
|
58
|
+
merged: number;
|
|
59
|
+
archiveOnly: number;
|
|
60
|
+
conflicts: number;
|
|
61
|
+
ambiguous: number;
|
|
62
|
+
unmappable: number;
|
|
63
|
+
orphaned: number;
|
|
64
|
+
invalid: number;
|
|
65
|
+
dryRun: boolean;
|
|
66
|
+
items: readonly EventMigrationPlanItem[];
|
|
67
|
+
}>;
|
|
68
|
+
export type MigrateEventsOptions = Readonly<{
|
|
69
|
+
contentDir: string;
|
|
70
|
+
dryRun?: boolean;
|
|
71
|
+
}>;
|
|
72
|
+
export declare function planEventMigration(contentDir: string): Promise<EventMigrationPlan>;
|
|
73
|
+
export declare function migrateEvents(options: MigrateEventsOptions): Promise<MigrateEventsResult>;
|
|
@@ -36,7 +36,7 @@ import { CourseSessionConflictError } from './courses';
|
|
|
36
36
|
* @returns ManagementClient instance
|
|
37
37
|
*/
|
|
38
38
|
export declare function createManagementClient(config: ManagementClientConfig): ManagementClient;
|
|
39
|
-
export type { ManagementClient, ManagementClientConfig, ManagementEntry, ManagementPage, ManagementBlock, ManagementNavigationMenu, ManagementNavigationItem, ManagementSettings, ManagementForm, ManagementFormField, ManagementFormSchema, ManagementFormSettings, ManagementVenue, VenueAddress, VenueLocation, VenueUpsertInput, ManagementEventCategory, EventCategoryUpsertInput, ManagementEventSeries, EventSchedule, EventScheduleUpsertInput, EventStartDurationSchedule, EventStartEndSchedule, EventPricing, EventContent, EventSeriesUpsertInput, ManagementCourseRun, CourseRunUpsertInput, CourseSession, CourseProgramContent, CourseSessionConflict, EntryUpsertInput, PageUpsertInput, BlockUpsertInput, NavigationMenuUpsertInput, NavigationItemInput, FormUpsertInput, SiteStyleSelectionApplyCommand, SiteStyleSelectionApplyCommandInput, ThemeUpsertInput, ThemeUpsertResult, ThemeStyleSelectionApplyInput, ThemeStyleSelectionApplyResult, FooterContent, ManagementFooterContent, FooterContentUpsertInput, FooterOperations, PulledFooter, PulledEntries, PulledPages, PulledNavigation, PulledSettings, PulledForms, PulledTheme, PulledVenues, PulledEventCategories, PulledEvents, PulledCourses, PulledSiteInfo, PulledContentType, PulledContentTypes, PulledContent, PaginationOptions, PaginatedResult, EntryOperations, PageOperations, BlockOperations, NavigationOperations, SettingsOperations, SettingsUpdateInput, WebhookOperations, SetupRevalidationWebhookInput, SetupRevalidationWebhookResult, ManagementWebhookEndpoint, RevalidationWebhookPlannedEndpoint, FormOperations, ThemeOperations, VenueOperations, EventCategoryOperations, EventOperations, CourseOperations, PullOperations, IdentifiersOperations, BackfillResult, BackfillPageResult, BackfillBlockResult, BackfillEntryResult, MediaOperations, MediaUploadResult, } from './types';
|
|
39
|
+
export type { ManagementClient, ManagementClientConfig, ManagementEntry, ManagementPage, ManagementBlock, ManagementNavigationMenu, ManagementNavigationItem, ManagementSettings, ManagementForm, ManagementFormField, ManagementFormSchema, ManagementFormSettings, ManagementVenue, VenueAddress, VenueLocation, VenueUpsertInput, ManagementEventCategory, EventCategoryUpsertInput, ManagementEventSeries, EventSchedule, EventScheduleUpsertInput, EventStartDurationSchedule, EventStartEndSchedule, EventPricing, EventPaymentTerms, EventPaymentTermsInput, EventContent, EventSeriesUpsertInput, ManagementCourseRun, CourseRunUpsertInput, CourseSession, CourseProgramContent, CourseSessionConflict, EntryUpsertInput, PageUpsertInput, BlockUpsertInput, NavigationMenuUpsertInput, NavigationItemInput, FormUpsertInput, SiteStyleSelectionApplyCommand, SiteStyleSelectionApplyCommandInput, ThemeUpsertInput, ThemeUpsertResult, ThemeStyleSelectionApplyInput, ThemeStyleSelectionApplyResult, FooterContent, ManagementFooterContent, FooterContentUpsertInput, FooterOperations, PulledFooter, PulledEntries, PulledPages, PulledNavigation, PulledSettings, PulledForms, PulledTheme, PulledVenues, PulledEventCategories, PulledEvents, PulledCourses, PulledSiteInfo, PulledContentType, PulledContentTypes, PulledContent, PaginationOptions, PaginatedResult, EntryOperations, PageOperations, BlockOperations, NavigationOperations, SettingsOperations, SettingsUpdateInput, WebhookOperations, SetupRevalidationWebhookInput, SetupRevalidationWebhookResult, ManagementWebhookEndpoint, RevalidationWebhookPlannedEndpoint, FormOperations, ThemeOperations, VenueOperations, EventCategoryOperations, EventOperations, CourseOperations, PullOperations, IdentifiersOperations, BackfillResult, BackfillPageResult, BackfillBlockResult, BackfillEntryResult, MediaOperations, MediaUploadResult, } from './types';
|
|
40
40
|
export { ManagementApiError, type ManagementApiErrorRequest } from './http';
|
|
41
41
|
export { applySiteStyleSelectionBodyFromCommand, buildApplySiteStyleSelectionCommand, } from './theme';
|
|
42
42
|
export { CourseSessionConflictError };
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
import type { LinkPayload, NavigationLinkInput } from '../../public-api/contracts';
|
|
7
7
|
import type { SiteCommandOf } from '../../../../site-commands/src/index';
|
|
8
8
|
import type { SdkEventPricing, SdkEventPricingInput, SdkEventTicketTypeInput } from '../../../../api/src/sdk-event-pricing';
|
|
9
|
+
import type { SdkEventPaymentTerms, SdkEventPaymentTermsInput } from '../../../../api/src/sdk-event-payment-terms';
|
|
9
10
|
import type { Theme } from '../../contracts';
|
|
10
11
|
export interface ManagementClientConfig {
|
|
11
12
|
/**
|
|
@@ -395,6 +396,8 @@ export type EventTicketTypeInput = SdkEventTicketTypeInput;
|
|
|
395
396
|
*/
|
|
396
397
|
export type EventPricing = SdkEventPricing;
|
|
397
398
|
export type EventPricingInput = SdkEventPricingInput;
|
|
399
|
+
export type EventPaymentTerms = SdkEventPaymentTerms;
|
|
400
|
+
export type EventPaymentTermsInput = SdkEventPaymentTermsInput;
|
|
398
401
|
/**
|
|
399
402
|
* Event content data (embedded from content_entry).
|
|
400
403
|
*/
|
|
@@ -417,6 +420,7 @@ export interface ManagementEventSeries {
|
|
|
417
420
|
schedule: EventSchedule;
|
|
418
421
|
capacity: number | null;
|
|
419
422
|
pricing: EventPricing;
|
|
423
|
+
paymentTerms?: EventPaymentTerms;
|
|
420
424
|
/** Venue slug reference */
|
|
421
425
|
venueRef: string | null;
|
|
422
426
|
/** Category identifier reference */
|
|
@@ -445,6 +449,7 @@ export interface EventSeriesUpsertInput {
|
|
|
445
449
|
schedule: EventScheduleUpsertInput;
|
|
446
450
|
capacity?: number | null;
|
|
447
451
|
pricing?: EventPricingInput;
|
|
452
|
+
paymentTerms?: EventPaymentTermsInput;
|
|
448
453
|
/** Venue slug - resolved to venue_id on push */
|
|
449
454
|
venueRef?: string | null;
|
|
450
455
|
/** Category identifier - resolved to event_category_id on push */
|
|
@@ -739,6 +744,7 @@ export interface PulledEvents {
|
|
|
739
744
|
schedule: EventSchedule;
|
|
740
745
|
capacity: number | null;
|
|
741
746
|
pricing: EventPricing;
|
|
747
|
+
paymentTerms?: EventPaymentTerms;
|
|
742
748
|
venueRef: string | null;
|
|
743
749
|
categoryRef: string | null;
|
|
744
750
|
content: EventContent;
|
|
@@ -457,6 +457,24 @@ export declare const upsertEventSeriesCommandSchema: z.ZodObject<{
|
|
|
457
457
|
}, z.core.$strict>, z.ZodObject<{
|
|
458
458
|
kind: z.ZodLiteral<"ticket_types">;
|
|
459
459
|
currency: z.ZodOptional<z.ZodString>;
|
|
460
|
+
ticketTypes: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodObject<{
|
|
461
|
+
identifier: z.ZodString;
|
|
462
|
+
cmsTicketTypeId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
463
|
+
name: z.ZodString;
|
|
464
|
+
description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
465
|
+
priceAmount: z.ZodNumber;
|
|
466
|
+
priceCurrency: z.ZodOptional<z.ZodString>;
|
|
467
|
+
isActive: z.ZodOptional<z.ZodBoolean>;
|
|
468
|
+
sortOrder: z.ZodOptional<z.ZodNumber>;
|
|
469
|
+
capacityLimit: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
470
|
+
attendanceScope: z.ZodOptional<z.ZodEnum<{
|
|
471
|
+
both: "both";
|
|
472
|
+
in_person: "in_person";
|
|
473
|
+
online: "online";
|
|
474
|
+
}>>;
|
|
475
|
+
saleStartsAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
476
|
+
saleEndsAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
477
|
+
}, z.core.$strict>>>>;
|
|
460
478
|
}, z.core.$strict>, z.ZodObject<{
|
|
461
479
|
kind: z.ZodLiteral<"manual_payment">;
|
|
462
480
|
instructions: z.ZodOptional<z.ZodString>;
|
|
@@ -493,6 +511,7 @@ export declare const upsertEventSeriesCommandSchema: z.ZodObject<{
|
|
|
493
511
|
contentEntryRef: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<ContentEntryRef, string>>>;
|
|
494
512
|
}, z.core.$strict>>;
|
|
495
513
|
settings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
514
|
+
paymentTerms: z.ZodOptional<z.ZodUnknown>;
|
|
496
515
|
presentation: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
497
516
|
tags: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
|
|
498
517
|
staffRefs: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<StaffRef, string>>>>>;
|
|
@@ -1398,6 +1417,24 @@ export declare const siteCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
1398
1417
|
}, z.core.$strict>, z.ZodObject<{
|
|
1399
1418
|
kind: z.ZodLiteral<"ticket_types">;
|
|
1400
1419
|
currency: z.ZodOptional<z.ZodString>;
|
|
1420
|
+
ticketTypes: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodObject<{
|
|
1421
|
+
identifier: z.ZodString;
|
|
1422
|
+
cmsTicketTypeId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
1423
|
+
name: z.ZodString;
|
|
1424
|
+
description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
1425
|
+
priceAmount: z.ZodNumber;
|
|
1426
|
+
priceCurrency: z.ZodOptional<z.ZodString>;
|
|
1427
|
+
isActive: z.ZodOptional<z.ZodBoolean>;
|
|
1428
|
+
sortOrder: z.ZodOptional<z.ZodNumber>;
|
|
1429
|
+
capacityLimit: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
1430
|
+
attendanceScope: z.ZodOptional<z.ZodEnum<{
|
|
1431
|
+
both: "both";
|
|
1432
|
+
in_person: "in_person";
|
|
1433
|
+
online: "online";
|
|
1434
|
+
}>>;
|
|
1435
|
+
saleStartsAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
1436
|
+
saleEndsAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
1437
|
+
}, z.core.$strict>>>>;
|
|
1401
1438
|
}, z.core.$strict>, z.ZodObject<{
|
|
1402
1439
|
kind: z.ZodLiteral<"manual_payment">;
|
|
1403
1440
|
instructions: z.ZodOptional<z.ZodString>;
|
|
@@ -1434,6 +1471,7 @@ export declare const siteCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
1434
1471
|
contentEntryRef: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<ContentEntryRef, string>>>;
|
|
1435
1472
|
}, z.core.$strict>>;
|
|
1436
1473
|
settings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
1474
|
+
paymentTerms: z.ZodOptional<z.ZodUnknown>;
|
|
1437
1475
|
presentation: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
1438
1476
|
tags: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
|
|
1439
1477
|
staffRefs: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<StaffRef, string>>>>>;
|
|
@@ -2254,6 +2292,24 @@ export declare const siteCommandBatchSchema: z.ZodObject<{
|
|
|
2254
2292
|
}, z.core.$strict>, z.ZodObject<{
|
|
2255
2293
|
kind: z.ZodLiteral<"ticket_types">;
|
|
2256
2294
|
currency: z.ZodOptional<z.ZodString>;
|
|
2295
|
+
ticketTypes: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodObject<{
|
|
2296
|
+
identifier: z.ZodString;
|
|
2297
|
+
cmsTicketTypeId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
2298
|
+
name: z.ZodString;
|
|
2299
|
+
description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
2300
|
+
priceAmount: z.ZodNumber;
|
|
2301
|
+
priceCurrency: z.ZodOptional<z.ZodString>;
|
|
2302
|
+
isActive: z.ZodOptional<z.ZodBoolean>;
|
|
2303
|
+
sortOrder: z.ZodOptional<z.ZodNumber>;
|
|
2304
|
+
capacityLimit: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
2305
|
+
attendanceScope: z.ZodOptional<z.ZodEnum<{
|
|
2306
|
+
both: "both";
|
|
2307
|
+
in_person: "in_person";
|
|
2308
|
+
online: "online";
|
|
2309
|
+
}>>;
|
|
2310
|
+
saleStartsAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
2311
|
+
saleEndsAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
2312
|
+
}, z.core.$strict>>>>;
|
|
2257
2313
|
}, z.core.$strict>, z.ZodObject<{
|
|
2258
2314
|
kind: z.ZodLiteral<"manual_payment">;
|
|
2259
2315
|
instructions: z.ZodOptional<z.ZodString>;
|
|
@@ -2290,6 +2346,7 @@ export declare const siteCommandBatchSchema: z.ZodObject<{
|
|
|
2290
2346
|
contentEntryRef: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<ContentEntryRef, string>>>;
|
|
2291
2347
|
}, z.core.$strict>>;
|
|
2292
2348
|
settings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
2349
|
+
paymentTerms: z.ZodOptional<z.ZodUnknown>;
|
|
2293
2350
|
presentation: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
2294
2351
|
tags: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
|
|
2295
2352
|
staffRefs: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<StaffRef, string>>>>>;
|