@riverbankcms/sdk 0.84.1 → 0.84.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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/api/src/bookingConfig.d.ts +2 -0
- package/dist/_dts/api/src/index.d.ts +2 -2
- 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/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/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/{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 +10 -11
- 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
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { resolvePreviewDashboardSetupHandoff, buildPreviewDashboardSetupUrl, resolvePreviewSidebarChromeModel, resolvePreviewEditorGuidanceModel, previewWidgetOverrides, canInspectSiteStyle, mapContentSchemaToFormFields, PreviewFormProvider, usePreviewBlockCustomizeSelectionOptional, BlockEditor, canApplySiteStyle, useBlockCustomizeControls, MAX_QUICK_MANIFEST_FIELDS } from './chunk-
|
|
3
|
-
import { useEntryController, useEditorUiStoreInstance, useUISelector, resolvePreviewSidebarTab, unsafeAsEditorBlockId, Tabs, TabsList, TabsTrigger, Button, X, TabsContent, useEditorUiStore, deriveRouteMetadataPresentation, resolvePageRouteSlug, createManifestValidation, createStoreBackend, ManifestForm, previewAssistantEnabled, Collapsible, CollapsibleTrigger, ChevronRight, CollapsibleContent, ContentFieldsForm, usePreviewDesignCoordinator, useSiteChromeCustomizeOptional, resolveStyleConfiguratorInitialSnapshot, createStyleConfiguratorState, isPreviewingChange, createOptimisticActionRunner, syncStyleConfiguratorState, getCuratedSiteStyle, planSiteStylePreviewChange, openRow, previewSiteStyle, applyResolvedSelections, previewButtonPersonality, previewHeaderLayout, previewHeaderStyle, planSiteChromeLookSelection, previewFooterLook, buildSiteChromeLookModels, planSiteChromeFooterLayoutSelection, previewPaletteVariant, previewTypographyPreset, setTypographyBodyFontOverride, setTypographyHeadingFontOverride, clearTypographyFontOverrides, paletteOverridesSchema, setPaletteOverrides, toggleRow, cancelPreview, dismissWarnings, dismissNotices, deriveStyleConfiguratorCapabilities, buildApplySiteStyleSelectionBody, markApplyFailed, selectionSnapshotFromApplySiteStyleSelectionResponse, styleConfiguratorHistoryEntryForPersistedSelection, markApplySaved, unwrapResponse, markApplySaving, findButtonPersonality, findPaletteVariant, findTypographyPreset, getHeaderLayout, getHeaderStyle, getFooterLayout, findFooterLook, cycleSiteChromeLookId, resolveContentTitle, foldSubroute, SUBROUTE_KINDS, Smartphone, Tablet, Monitor, Maximize2, cn, DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuItem, listEntryPageContentSlots, ContentSpinner, Callout, CalloutDescription, curatedSiteStyles, ChevronLeft, cycleableSiteChromeOptions, requireEntriesForCuratedChoices, buttonPersonalities, typographyPresets, paletteVariants, Select, SelectTrigger, SelectValue, SelectContent, SelectItem, FormRenderer, evaluateTypographyFontSlot, Separator, Surface, ColorPicker, Input } from './chunk-
|
|
4
|
-
import { usePreviewAuth, getDashboardUrl } from './chunk-
|
|
2
|
+
import { resolvePreviewDashboardSetupHandoff, buildPreviewDashboardSetupUrl, resolvePreviewSidebarChromeModel, resolvePreviewEditorGuidanceModel, previewWidgetOverrides, canInspectSiteStyle, mapContentSchemaToFormFields, PreviewFormProvider, usePreviewBlockCustomizeSelectionOptional, BlockEditor, canApplySiteStyle, useBlockCustomizeControls, MAX_QUICK_MANIFEST_FIELDS } from './chunk-NFWGLRZZ.mjs';
|
|
3
|
+
import { useEntryController, useEditorUiStoreInstance, useUISelector, resolvePreviewSidebarTab, unsafeAsEditorBlockId, Tabs, TabsList, TabsTrigger, Button, X, TabsContent, useEditorUiStore, deriveRouteMetadataPresentation, resolvePageRouteSlug, createManifestValidation, createStoreBackend, ManifestForm, previewAssistantEnabled, Collapsible, CollapsibleTrigger, ChevronRight, CollapsibleContent, ContentFieldsForm, usePreviewDesignCoordinator, useSiteChromeCustomizeOptional, resolveStyleConfiguratorInitialSnapshot, createStyleConfiguratorState, isPreviewingChange, createOptimisticActionRunner, syncStyleConfiguratorState, getCuratedSiteStyle, planSiteStylePreviewChange, openRow, previewSiteStyle, applyResolvedSelections, previewButtonPersonality, previewHeaderLayout, previewHeaderStyle, planSiteChromeLookSelection, previewFooterLook, buildSiteChromeLookModels, planSiteChromeFooterLayoutSelection, previewPaletteVariant, previewTypographyPreset, setTypographyBodyFontOverride, setTypographyHeadingFontOverride, clearTypographyFontOverrides, paletteOverridesSchema, setPaletteOverrides, toggleRow, cancelPreview, dismissWarnings, dismissNotices, deriveStyleConfiguratorCapabilities, buildApplySiteStyleSelectionBody, markApplyFailed, selectionSnapshotFromApplySiteStyleSelectionResponse, styleConfiguratorHistoryEntryForPersistedSelection, markApplySaved, unwrapResponse, markApplySaving, findButtonPersonality, findPaletteVariant, findTypographyPreset, getHeaderLayout, getHeaderStyle, getFooterLayout, findFooterLook, cycleSiteChromeLookId, resolveContentTitle, foldSubroute, SUBROUTE_KINDS, Smartphone, Tablet, Monitor, Maximize2, cn, DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuItem, listEntryPageContentSlots, ContentSpinner, Callout, CalloutDescription, curatedSiteStyles, ChevronLeft, cycleableSiteChromeOptions, requireEntriesForCuratedChoices, buttonPersonalities, typographyPresets, paletteVariants, Select, SelectTrigger, SelectValue, SelectContent, SelectItem, FormRenderer, evaluateTypographyFontSlot, Separator, Surface, ColorPicker, Input } from './chunk-ZR2GQK2A.mjs';
|
|
4
|
+
import { usePreviewAuth, getDashboardUrl } from './chunk-4QNLOTES.mjs';
|
|
5
5
|
import './chunk-R7POPVJR.mjs';
|
|
6
6
|
import { useMemo, useRef, useCallback, useEffect, useState, useTransition, useLayoutEffect, useSyncExternalStore, useId } from 'react';
|
|
7
7
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { resolvePreviewChromeSurface, usePreviewPageDesignEditorState, PREVIEW_CHROME_PORTAL_CLASS_NAME, PREVIEW_CHROME_THEME_CLASS_NAME, applyPreviewChromeSurfaceToElement, setPreviewSidebarTab } from './chunk-
|
|
3
|
-
import { useEntryEditorController, useEditorUiStore, useMultiAutosave, usePreviewDesignHistoryOrder, useSiteChromeCustomizeOptional, selectPreviewDesignHistoryDomain, EditorChrome, previewDesignHistoryDomainForCommand, classifyHistoryShortcut, previewAssistantEnabled, unwrapResponse, cn, Dialog, Button, Palette, DialogContent, DialogHeader, DialogTitle, DialogDescription, TriangleAlert, Pencil, Sparkles, useEditorUiStoreInstance } from './chunk-
|
|
4
|
-
import { usePreviewAuth
|
|
2
|
+
import { resolvePreviewChromeSurface, usePreviewPageDesignEditorState, PREVIEW_CHROME_PORTAL_CLASS_NAME, PREVIEW_CHROME_THEME_CLASS_NAME, applyPreviewChromeSurfaceToElement, setPreviewSidebarTab } from './chunk-WFPYN7KA.mjs';
|
|
3
|
+
import { useEntryEditorController, useEditorUiStore, useMultiAutosave, usePreviewDesignHistoryOrder, useSiteChromeCustomizeOptional, selectPreviewDesignHistoryDomain, EditorChrome, previewDesignHistoryDomainForCommand, classifyHistoryShortcut, previewAssistantEnabled, unwrapResponse, cn, Dialog, Button, Palette, DialogContent, DialogHeader, DialogTitle, DialogDescription, TriangleAlert, Pencil, Sparkles, useEditorUiStoreInstance } from './chunk-ZR2GQK2A.mjs';
|
|
4
|
+
import { usePreviewAuth } from './chunk-4QNLOTES.mjs';
|
|
5
5
|
import './chunk-R7POPVJR.mjs';
|
|
6
6
|
import { useState, useMemo, useCallback, useEffect, useTransition } from 'react';
|
|
7
7
|
import { createPortal } from 'react-dom';
|
|
@@ -74,8 +74,12 @@ function PreviewOpenEditorButton() {
|
|
|
74
74
|
) : null
|
|
75
75
|
] });
|
|
76
76
|
}
|
|
77
|
-
function MaintenanceModeBadge({
|
|
78
|
-
|
|
77
|
+
function MaintenanceModeBadge({
|
|
78
|
+
dashboardBaseUrl,
|
|
79
|
+
siteId
|
|
80
|
+
}) {
|
|
81
|
+
if (!dashboardBaseUrl) return null;
|
|
82
|
+
const dashboardUrl = `${dashboardBaseUrl.replace(/\/$/, "")}/dashboard/sites/${siteId}/settings/maintenance`;
|
|
79
83
|
return /* @__PURE__ */ jsxs(
|
|
80
84
|
"a",
|
|
81
85
|
{
|
|
@@ -285,6 +289,7 @@ function previewUndoControlsForDomains(domains, context) {
|
|
|
285
289
|
};
|
|
286
290
|
}
|
|
287
291
|
function PreviewEditorUI({
|
|
292
|
+
dashboardBaseUrl = null,
|
|
288
293
|
inMaintenanceMode = false,
|
|
289
294
|
siteId,
|
|
290
295
|
surfaceId,
|
|
@@ -514,7 +519,7 @@ function PreviewEditorUI({
|
|
|
514
519
|
isSiteLaunched
|
|
515
520
|
}
|
|
516
521
|
) : null,
|
|
517
|
-
inMaintenanceMode && siteId ? /* @__PURE__ */ jsx(MaintenanceModeBadge, { siteId }) : null,
|
|
522
|
+
inMaintenanceMode && siteId ? /* @__PURE__ */ jsx(MaintenanceModeBadge, { dashboardBaseUrl, siteId }) : null,
|
|
518
523
|
/* @__PURE__ */ jsx(PreviewOpenEditorButton, {})
|
|
519
524
|
] }),
|
|
520
525
|
mobileMenuItems: previewOpenEditorMobileMenuItems,
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
export { SdkPreviewModeRuntime } from './chunk-OCGTXHSO.mjs';
|
|
3
|
+
import './chunk-PYDHOMEO.mjs';
|
|
4
|
+
import './chunk-NFWGLRZZ.mjs';
|
|
5
|
+
import './chunk-WFPYN7KA.mjs';
|
|
6
|
+
import './chunk-ZR2GQK2A.mjs';
|
|
7
|
+
import './chunk-4QNLOTES.mjs';
|
|
8
|
+
import './chunk-R7POPVJR.mjs';
|
|
@@ -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";
|
|
@@ -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>;
|
|
@@ -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 {};
|
|
@@ -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;
|
|
@@ -211,26 +211,26 @@ function looksLikeLocalAuthority(authority) {
|
|
|
211
211
|
const normalized = authority.toLowerCase();
|
|
212
212
|
return normalized === "localhost" || normalized.startsWith("localhost:") || normalized.startsWith("127.") || normalized.startsWith("0.0.0.0") || normalized.includes(".localhost") || normalized.endsWith(".local") || normalized.endsWith(".test");
|
|
213
213
|
}
|
|
214
|
-
function
|
|
214
|
+
function normalizeDashboardOrigin(input) {
|
|
215
215
|
const trimmed = input.trim();
|
|
216
216
|
if (!trimmed) return "";
|
|
217
217
|
const withoutTrailingSlash = trimmed.replace(/\/+$/, "");
|
|
218
218
|
const withoutApiSuffix = withoutTrailingSlash.replace(/\/api\/?$/, "");
|
|
219
219
|
if (/^https?:\/\//i.test(withoutApiSuffix)) {
|
|
220
|
-
return withoutApiSuffix;
|
|
220
|
+
return new URL(withoutApiSuffix).origin;
|
|
221
221
|
}
|
|
222
222
|
const authority = withoutApiSuffix.replace(/^\/+/, "");
|
|
223
223
|
const protocol = looksLikeLocalAuthority(authority) ? "http" : "https";
|
|
224
|
-
return `${protocol}://${authority}
|
|
224
|
+
return new URL(`${protocol}://${authority}`).origin;
|
|
225
|
+
}
|
|
226
|
+
function deriveCmsApiUrlFromDashboardUrl(input) {
|
|
227
|
+
const origin = normalizeDashboardOrigin(input);
|
|
228
|
+
return origin ? `${origin}/api` : "";
|
|
225
229
|
}
|
|
226
230
|
function getDashboardBaseUrl() {
|
|
227
231
|
const dashboardUrl = process.env.NEXT_PUBLIC_DASHBOARD_URL;
|
|
228
232
|
if (dashboardUrl) {
|
|
229
|
-
return
|
|
230
|
-
}
|
|
231
|
-
const legacyApiUrl = process.env.NEXT_PUBLIC_CMS_API_URL;
|
|
232
|
-
if (legacyApiUrl) {
|
|
233
|
-
return legacyApiUrl.replace(/\/$/, "").replace(/\/api$/, "");
|
|
233
|
+
return normalizeDashboardOrigin(dashboardUrl);
|
|
234
234
|
}
|
|
235
235
|
throw new Error(
|
|
236
236
|
"NEXT_PUBLIC_DASHBOARD_URL is not configured. Set it to your dashboard URL (e.g., http://localhost:4000)"
|
|
@@ -246,15 +246,10 @@ function getCmsApiUrl() {
|
|
|
246
246
|
}
|
|
247
247
|
const dashboardUrl = process.env.NEXT_PUBLIC_DASHBOARD_URL;
|
|
248
248
|
if (dashboardUrl) {
|
|
249
|
-
|
|
250
|
-
return `${base}/api`;
|
|
251
|
-
}
|
|
252
|
-
const legacyApiUrl = process.env.NEXT_PUBLIC_CMS_API_URL;
|
|
253
|
-
if (legacyApiUrl) {
|
|
254
|
-
return legacyApiUrl.replace(/\/$/, "");
|
|
249
|
+
return deriveCmsApiUrlFromDashboardUrl(dashboardUrl);
|
|
255
250
|
}
|
|
256
251
|
throw new Error(
|
|
257
|
-
"NEXT_PUBLIC_DASHBOARD_URL is not configured. Set
|
|
252
|
+
"CMS_API_URL or NEXT_PUBLIC_DASHBOARD_URL is not configured. Set NEXT_PUBLIC_DASHBOARD_URL to your dashboard URL (e.g., http://localhost:4000)"
|
|
258
253
|
);
|
|
259
254
|
}
|
|
260
255
|
function getAbsoluteDashboardUrl(path, options) {
|
|
@@ -7028,4 +7023,4 @@ function createBearerAPIClient(token, baseUrl) {
|
|
|
7028
7023
|
return createCMSClient(authHeaders, baseUrl);
|
|
7029
7024
|
}
|
|
7030
7025
|
|
|
7031
|
-
export { API_ENDPOINTS, ApiRequestError, DEFAULT_SURFACE_ID, SURFACE_DOCUMENT_DATA_ATTRIBUTE, SURFACE_IDS, createBearerAPIClient,
|
|
7026
|
+
export { API_ENDPOINTS, ApiRequestError, DEFAULT_SURFACE_ID, SURFACE_DOCUMENT_DATA_ATTRIBUTE, SURFACE_IDS, createBearerAPIClient, getDashboardUrl, initPreviewAuth, isPreviewRuntimeSessionEditable, markPreviewAuthExpired, resolveSurfaceDocumentAttributes, usePreviewAuth, usePreviewAuthFetch, usePreviewToken };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { KeyboardCode, getBlockDefinition, CSS, useSdkConfig, unwrapResponse, parseSiteIconStyleGuideVersionId, parseBlockIconValue, listBlockDescriptors, useSensor, PointerSensor, useSensors, createEditorRemoveBlockCommand, unsafeAsEditorBlockId, DndContext, closestCenter, Button, Plus, useDroppable, useDraggable, useCombinedRefs, isKeyboardEvent, createCustomBlockRegistry, Card, cn, Collapsible, CollapsibleContent, listContentTypes, mergeBlockDescriptorsWithRegistry, createEditorReorderBlocksCommand, mutateBlockContent, deleteEntrySlotBlock, deleteBlock, useDndContext, useUniqueId, useIsomorphicLayoutEffect, EmptyState, Dialog, DialogContent, DialogHeader, DialogTitle, DialogDescription, Search, getClientRect, resolveBlockTitle, CardHeader, GripVertical, ChevronRight, CardTitle, ArrowUp, ArrowDown, DropdownMenu, DropdownMenuTrigger, EllipsisVertical, DropdownMenuContent, DropdownMenuSeparator, DropdownMenuItem, Copy, Trash2, DialogFooter, DialogClose, CardContent, createEntrySlotBlock, createBlock, createEditorInsertBlockCommand, reorderEntrySlotBlocks, reorderBlocks, LoaderCircle, ChevronDown, getFeatureCardIconCompletion, toFeatureCardIconSuggestionInputs, getBlockIconSemanticFallbackId, suggestSemanticIconForFeatureCard, getGeneratedBlockIconStyleState, assertNever, createManifestFormAdapter, getModalConfig, createStoreBackend, validateBlockManifestIssues, isNonEmptyValue, Settings, ScrollableDialogContent, FormRenderer, Tabs, TabsList, TabsTrigger, TabsContent, RotateCcw, ImagePlus, Sparkles, Textarea, Callout, CalloutDescription, normalEditorCuratedPromotedFieldPaths, resolveVisiblePromotedFieldPathsForEditorBlock, CalloutTitle, unfinishedBlockCopy, recoveryConflictCopy, ManifestForm, unsafeAsEditorBlockValues, Box, mergeManifestWithSdkOptions, augmentManifestWithStyleGroups, suggestFeatureCardSemanticIcons, applyFeatureCardIconSuggestions, createFeatureCardIconKey, lucide_react_exports, isThemeV2NormalEditorRawStylePath, getFieldIntent, isHeaderField, isThemeV2NormalEditorRawStyleFieldName, BackgroundGradientField, BackgroundColorField, useField, FieldFrame, Select, SelectTrigger, SelectValue, SelectContent, SelectItem, useMediaEditorOptional, useRichTextEditor, RichTextEditorSurface, ThemeScope, isObjectRecord, EMPTY_DOC, useAsyncPickerOptions, resolvePickerSelectionLabel, shouldShowPickerSearch, normalizePickerSearchThreshold, Combobox, Badge, useBlockContext, resolveMediaSlotContract, asRecord, parseAspectRatioValue, MediaEditor, PUBLIC_FILE_FIELD_KINDS, useBackendWatch, resolveIconPickerPreset, isIconPickerPreset, getIconPickerOptionsForPreset, isKnownIconName, getIconComponent, isOfferingsPreviewSourceKey, EyeOff, CommandMultiSelect, expectParsedBrandedId, parseSiteId, buildThemeRuntime, SdkConfigProvider, PaletteProvider, MediaEditorProvider, useEditorUiStoreInstance, useUISelector, getRichTextImagePositionFromTarget, insertOrReplaceRichTextImage, emitMediaCropDebug, Pencil, resolveVideoSelectionIntentForMediaField, resolveOfferingsPreviewGroupOrderEntries, normalizeOfferingsPreviewGroupOrder, inferLegacyOfferingsPreviewGroupOrder, siteOptionSources, evaluateVisibility, Root2, List, Trigger, Content, Input, Check, Label, isInternalResolvedLinkValue, resolveImageUrlWithContext, useMediaEditor, MediaPickerMini, MediaPickerDialog, toRoutableLinkPayload, classifyKnownMimeType, getDirectImageUrlForMediaAsset, isSvgMimeType } from './chunk-
|
|
2
|
+
import { KeyboardCode, getBlockDefinition, CSS, useSdkConfig, unwrapResponse, parseSiteIconStyleGuideVersionId, parseBlockIconValue, listBlockDescriptors, useSensor, PointerSensor, useSensors, createEditorRemoveBlockCommand, unsafeAsEditorBlockId, DndContext, closestCenter, Button, Plus, useDroppable, useDraggable, useCombinedRefs, isKeyboardEvent, createCustomBlockRegistry, Card, cn, Collapsible, CollapsibleContent, listContentTypes, mergeBlockDescriptorsWithRegistry, createEditorReorderBlocksCommand, mutateBlockContent, deleteEntrySlotBlock, deleteBlock, useDndContext, useUniqueId, useIsomorphicLayoutEffect, EmptyState, Dialog, DialogContent, DialogHeader, DialogTitle, DialogDescription, Search, getClientRect, resolveBlockTitle, CardHeader, GripVertical, ChevronRight, CardTitle, ArrowUp, ArrowDown, DropdownMenu, DropdownMenuTrigger, EllipsisVertical, DropdownMenuContent, DropdownMenuSeparator, DropdownMenuItem, Copy, Trash2, DialogFooter, DialogClose, CardContent, createEntrySlotBlock, createBlock, createEditorInsertBlockCommand, reorderEntrySlotBlocks, reorderBlocks, LoaderCircle, ChevronDown, getFeatureCardIconCompletion, toFeatureCardIconSuggestionInputs, getBlockIconSemanticFallbackId, suggestSemanticIconForFeatureCard, getGeneratedBlockIconStyleState, assertNever, createManifestFormAdapter, getModalConfig, createStoreBackend, validateBlockManifestIssues, isNonEmptyValue, Settings, ScrollableDialogContent, FormRenderer, Tabs, TabsList, TabsTrigger, TabsContent, RotateCcw, ImagePlus, Sparkles, Textarea, Callout, CalloutDescription, normalEditorCuratedPromotedFieldPaths, resolveVisiblePromotedFieldPathsForEditorBlock, CalloutTitle, unfinishedBlockCopy, recoveryConflictCopy, ManifestForm, unsafeAsEditorBlockValues, Box, mergeManifestWithSdkOptions, augmentManifestWithStyleGroups, suggestFeatureCardSemanticIcons, applyFeatureCardIconSuggestions, createFeatureCardIconKey, lucide_react_exports, isThemeV2NormalEditorRawStylePath, getFieldIntent, isHeaderField, isThemeV2NormalEditorRawStyleFieldName, BackgroundGradientField, BackgroundColorField, useField, FieldFrame, Select, SelectTrigger, SelectValue, SelectContent, SelectItem, useMediaEditorOptional, useRichTextEditor, RichTextEditorSurface, ThemeScope, isObjectRecord, EMPTY_DOC, useAsyncPickerOptions, resolvePickerSelectionLabel, shouldShowPickerSearch, normalizePickerSearchThreshold, Combobox, Badge, useBlockContext, resolveMediaSlotContract, asRecord, parseAspectRatioValue, MediaEditor, PUBLIC_FILE_FIELD_KINDS, useBackendWatch, resolveIconPickerPreset, isIconPickerPreset, getIconPickerOptionsForPreset, isKnownIconName, getIconComponent, isOfferingsPreviewSourceKey, EyeOff, CommandMultiSelect, expectParsedBrandedId, parseSiteId, buildThemeRuntime, SdkConfigProvider, PaletteProvider, MediaEditorProvider, useEditorUiStoreInstance, useUISelector, getRichTextImagePositionFromTarget, insertOrReplaceRichTextImage, emitMediaCropDebug, Pencil, resolveVideoSelectionIntentForMediaField, resolveOfferingsPreviewGroupOrderEntries, normalizeOfferingsPreviewGroupOrder, inferLegacyOfferingsPreviewGroupOrder, siteOptionSources, evaluateVisibility, Root2, List, Trigger, Content, Input, Check, Label, isInternalResolvedLinkValue, resolveImageUrlWithContext, useMediaEditor, MediaPickerMini, MediaPickerDialog, toRoutableLinkPayload, classifyKnownMimeType, getDirectImageUrlForMediaAsset, isSvgMimeType } from './chunk-ZR2GQK2A.mjs';
|
|
3
3
|
import React, { createContext, memo, useMemo, useState, useRef, useEffect, forwardRef, useCallback, useImperativeHandle, useContext, useSyncExternalStore, useLayoutEffect, Fragment as Fragment$1, useReducer } from 'react';
|
|
4
4
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
5
5
|
|
|
@@ -4647,21 +4647,6 @@ function getUnresolvedRichTextImageWarnings(value) {
|
|
|
4647
4647
|
walk(value);
|
|
4648
4648
|
return { count, identifiers: Array.from(identifiers) };
|
|
4649
4649
|
}
|
|
4650
|
-
var DEBUG_RICHTEXT_FOCUS = process.env.NEXT_PUBLIC_DEBUG_RICHTEXT_FOCUS === "1";
|
|
4651
|
-
var nextInstanceId = 1;
|
|
4652
|
-
function describeActiveElement() {
|
|
4653
|
-
if (typeof document === "undefined") return null;
|
|
4654
|
-
const el = document.activeElement;
|
|
4655
|
-
if (!el) return null;
|
|
4656
|
-
return {
|
|
4657
|
-
tag: el.tagName,
|
|
4658
|
-
id: el.id || null,
|
|
4659
|
-
role: el.getAttribute("role"),
|
|
4660
|
-
className: typeof el.className === "string" ? el.className : null,
|
|
4661
|
-
isProseMirror: el.classList?.contains("ProseMirror") ?? false,
|
|
4662
|
-
withinProseMirror: Boolean(el.closest?.(".ProseMirror"))
|
|
4663
|
-
};
|
|
4664
|
-
}
|
|
4665
4650
|
function isRichTextVariant(value) {
|
|
4666
4651
|
return value === "full" || value === "inline" || value === "limited" || value === "media" || value === "notes";
|
|
4667
4652
|
}
|
|
@@ -4677,10 +4662,6 @@ function RichTextField({
|
|
|
4677
4662
|
backend,
|
|
4678
4663
|
config
|
|
4679
4664
|
}) {
|
|
4680
|
-
const instanceIdRef = useRef(null);
|
|
4681
|
-
if (instanceIdRef.current == null) {
|
|
4682
|
-
instanceIdRef.current = nextInstanceId++;
|
|
4683
|
-
}
|
|
4684
4665
|
const { theme, onPickImage } = useRichTextWidgetContext();
|
|
4685
4666
|
const { siteId, adapters, initialItems } = useLinkWidgetContext();
|
|
4686
4667
|
const mediaEditor = useMediaEditorOptional();
|
|
@@ -4709,56 +4690,6 @@ function RichTextField({
|
|
|
4709
4690
|
setLinkItems(normalized);
|
|
4710
4691
|
return normalized;
|
|
4711
4692
|
}, [adapters, siteId]);
|
|
4712
|
-
if (DEBUG_RICHTEXT_FOCUS) {
|
|
4713
|
-
console.log("[RichTextField] render", {
|
|
4714
|
-
instanceId: instanceIdRef.current,
|
|
4715
|
-
path,
|
|
4716
|
-
variant,
|
|
4717
|
-
hasEditor: Boolean(editor),
|
|
4718
|
-
active: describeActiveElement()
|
|
4719
|
-
});
|
|
4720
|
-
}
|
|
4721
|
-
useEffect(() => {
|
|
4722
|
-
if (!DEBUG_RICHTEXT_FOCUS) return;
|
|
4723
|
-
console.log("[RichTextField] mount", { instanceId: instanceIdRef.current, path });
|
|
4724
|
-
return () => {
|
|
4725
|
-
console.log("[RichTextField] unmount", { instanceId: instanceIdRef.current, path });
|
|
4726
|
-
};
|
|
4727
|
-
}, [path]);
|
|
4728
|
-
useEffect(() => {
|
|
4729
|
-
if (!DEBUG_RICHTEXT_FOCUS) return;
|
|
4730
|
-
console.log("[RichTextField] editor instance changed", {
|
|
4731
|
-
instanceId: instanceIdRef.current,
|
|
4732
|
-
path,
|
|
4733
|
-
hasEditor: Boolean(editor),
|
|
4734
|
-
active: describeActiveElement()
|
|
4735
|
-
});
|
|
4736
|
-
}, [editor, path]);
|
|
4737
|
-
useEffect(() => {
|
|
4738
|
-
if (!editor) return;
|
|
4739
|
-
const handleFocus = () => {
|
|
4740
|
-
if (!DEBUG_RICHTEXT_FOCUS) return;
|
|
4741
|
-
console.log("[RichTextField] focus", {
|
|
4742
|
-
instanceId: instanceIdRef.current,
|
|
4743
|
-
path,
|
|
4744
|
-
active: describeActiveElement()
|
|
4745
|
-
});
|
|
4746
|
-
};
|
|
4747
|
-
const handleBlur = () => {
|
|
4748
|
-
if (!DEBUG_RICHTEXT_FOCUS) return;
|
|
4749
|
-
console.log("[RichTextField] blur", {
|
|
4750
|
-
instanceId: instanceIdRef.current,
|
|
4751
|
-
path,
|
|
4752
|
-
active: describeActiveElement()
|
|
4753
|
-
});
|
|
4754
|
-
};
|
|
4755
|
-
editor.on("focus", handleFocus);
|
|
4756
|
-
editor.on("blur", handleBlur);
|
|
4757
|
-
return () => {
|
|
4758
|
-
editor.off("focus", handleFocus);
|
|
4759
|
-
editor.off("blur", handleBlur);
|
|
4760
|
-
};
|
|
4761
|
-
}, [editor, path]);
|
|
4762
4693
|
useEffect(() => {
|
|
4763
4694
|
if (!editor) return;
|
|
4764
4695
|
const handler = () => {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { useOptionalPreviewLayout, PreviewQueryProvider } from './chunk-
|
|
3
|
-
import { PreviewBlockCustomizeSelectionProvider, resolveSiteStyleAccess, resolvePreviewDashboardSetupHandoff, buildPreviewDashboardSetupUrl, resolvePreviewSetupBannerModel, usePreviewBlockCustomizeSelectionOptional, useBlockCustomizeControls, MAX_CUSTOMIZE_POPOVER_ROWS, MAX_QUICK_MANIFEST_FIELDS, OfferingsPreviewWidgetProvider, previewWidgetOverrides, sanitizeDashboardPath } from './chunk-
|
|
4
|
-
import { resolvePreviewChromeSurface, getPreviewSidebarTab, onPreviewSidebarOpenRequest, getPreviewChromeSurfaceDataProps, PREVIEW_CHROME_THEME_CLASS_NAME, setPreviewSidebarTab, PreviewPageDesignEditorStateProvider, usePreviewPageDesignEditorState } from './chunk-
|
|
5
|
-
import { clientComponentRegistry, deriveLaunchReadiness, DEFAULT_LAUNCH_READINESS_INPUT, useEditorUiStore, PreviewThemeOverlayProvider, PreviewDesignCoordinatorProvider, SiteChromeCustomizeProvider, ResizableSplitPane, BlockApiProvider, EditorProvider, PreviewDesignHistoryOrderProvider, MediaEditorProvider, useEditorUiStoreInstance, useEditor, createRoutingHelpers, createSnapshotFromPageRecord, EntryControllerProvider, useEntryEditorController, surfaceResolutionContextFromTheme, designRuntimeRulesForTheme, unsafeAsEditorBlockId, EditableBlockProvider, asDesignBlockId, PageRenderer, usePreviewThemeOverlay, planSiteDocument, ThemeScope, FixedBottomSurface, Button, unsafeAsLinkedContentEntryId, sectionTransitionVariantForBoundaryOptionId, sectionTransitionFamilyForBoundaryOptionId, sectionTransitionFamilies, X, defaultSectionTransitionVariantForFamily, RotateCcw, parseBackgroundOverrideFromContent, rankBackgroundImagePoolItems, imagePoolForOverride, resolveBackgroundCapability, enabledBackgroundModes, canCycleBackgroundOverrideValue, FormRenderer, stableSerialize, prefetchBlockData, isSupportedLoaderEndpoint, PreviewRichTextEditor, RichText, PreviewTextEditor, Text, buildThemeRuntime, renderBlock, siteHeaderManifest, siteFooterManifest, SiteDocumentLayout, SITE_CHROME_CLASS_NAMES, Dialog, DialogContent, DialogHeader, DialogTitle, DialogDescription, DialogFooter, buildEditorModelRuntimeFieldsByBlockId, applyCompiledRuntimeFieldsToContent, assertNever2, getBlockDefinition, systemCustomizeFacetDefinitionsForBlock, systemCustomizeFacetAppliesToLayoutVariant, systemCustomizeFacetCurrentValue, systemCustomizeFacetLabelForValue, backgroundColorTokens, ChevronLeft, ChevronRight, createMicrobatcher, unwrapResponse, normalizePublicApiLoaderParams, visibleHeaderClearancePx, LINKED_CONTENT_ENTRY_META_KEY, useMediaEditorOptional, Image, defaultBackgroundOverrideForMode, decodePublicProductCategorySelectorQuery, EDITABLE_SURFACE_FORWARDING_PROP, useSiteChromeCustomizeOptional, assertNever, SITE_CHROME_VISIBLE_HEADER_SELECTOR, getLinkedContentEntryMeta, GRADIENT_PRESETS, resolveImageUrlWithContext, gradientToCss, Upload, MediaEditor, SECTION_BACKGROUND_MIN_SOURCE_WIDTH, SECTION_BACKGROUND_MIN_SOURCE_HEIGHT, parseMediaAssetId, formatSiteChromeBackgroundTokenLabel, planBackgroundOverride, planBackgroundTransition, systemCustomizeFacetNextValue } from './chunk-
|
|
6
|
-
import { API_ENDPOINTS, createBearerAPIClient, isPreviewRuntimeSessionEditable, DEFAULT_SURFACE_ID, initPreviewAuth, usePreviewAuth, usePreviewAuthFetch, markPreviewAuthExpired, usePreviewToken } from './chunk-
|
|
2
|
+
import { useOptionalPreviewLayout, PreviewQueryProvider } from './chunk-PYDHOMEO.mjs';
|
|
3
|
+
import { PreviewBlockCustomizeSelectionProvider, resolveSiteStyleAccess, resolvePreviewDashboardSetupHandoff, buildPreviewDashboardSetupUrl, resolvePreviewSetupBannerModel, usePreviewBlockCustomizeSelectionOptional, useBlockCustomizeControls, MAX_CUSTOMIZE_POPOVER_ROWS, MAX_QUICK_MANIFEST_FIELDS, OfferingsPreviewWidgetProvider, previewWidgetOverrides, sanitizeDashboardPath } from './chunk-NFWGLRZZ.mjs';
|
|
4
|
+
import { resolvePreviewChromeSurface, getPreviewSidebarTab, onPreviewSidebarOpenRequest, getPreviewChromeSurfaceDataProps, PREVIEW_CHROME_THEME_CLASS_NAME, setPreviewSidebarTab, PreviewPageDesignEditorStateProvider, usePreviewPageDesignEditorState } from './chunk-WFPYN7KA.mjs';
|
|
5
|
+
import { clientComponentRegistry, deriveLaunchReadiness, DEFAULT_LAUNCH_READINESS_INPUT, useEditorUiStore, PreviewThemeOverlayProvider, PreviewDesignCoordinatorProvider, SiteChromeCustomizeProvider, ResizableSplitPane, BlockApiProvider, EditorProvider, PreviewDesignHistoryOrderProvider, MediaEditorProvider, useEditorUiStoreInstance, useEditor, createRoutingHelpers, createSnapshotFromPageRecord, EntryControllerProvider, useEntryEditorController, surfaceResolutionContextFromTheme, designRuntimeRulesForTheme, unsafeAsEditorBlockId, EditableBlockProvider, asDesignBlockId, PageRenderer, usePreviewThemeOverlay, planSiteDocument, ThemeScope, FixedBottomSurface, Button, unsafeAsLinkedContentEntryId, sectionTransitionVariantForBoundaryOptionId, sectionTransitionFamilyForBoundaryOptionId, sectionTransitionFamilies, X, defaultSectionTransitionVariantForFamily, RotateCcw, parseBackgroundOverrideFromContent, rankBackgroundImagePoolItems, imagePoolForOverride, resolveBackgroundCapability, enabledBackgroundModes, canCycleBackgroundOverrideValue, FormRenderer, stableSerialize, prefetchBlockData, isSupportedLoaderEndpoint, PreviewRichTextEditor, RichText, PreviewTextEditor, Text, buildThemeRuntime, renderBlock, siteHeaderManifest, siteFooterManifest, SiteDocumentLayout, SITE_CHROME_CLASS_NAMES, Dialog, DialogContent, DialogHeader, DialogTitle, DialogDescription, DialogFooter, buildEditorModelRuntimeFieldsByBlockId, applyCompiledRuntimeFieldsToContent, assertNever2, getBlockDefinition, systemCustomizeFacetDefinitionsForBlock, systemCustomizeFacetAppliesToLayoutVariant, systemCustomizeFacetCurrentValue, systemCustomizeFacetLabelForValue, backgroundColorTokens, ChevronLeft, ChevronRight, createMicrobatcher, unwrapResponse, normalizePublicApiLoaderParams, visibleHeaderClearancePx, LINKED_CONTENT_ENTRY_META_KEY, useMediaEditorOptional, Image, defaultBackgroundOverrideForMode, decodePublicProductCategorySelectorQuery, EDITABLE_SURFACE_FORWARDING_PROP, useSiteChromeCustomizeOptional, assertNever, SITE_CHROME_VISIBLE_HEADER_SELECTOR, getLinkedContentEntryMeta, GRADIENT_PRESETS, resolveImageUrlWithContext, gradientToCss, Upload, MediaEditor, SECTION_BACKGROUND_MIN_SOURCE_WIDTH, SECTION_BACKGROUND_MIN_SOURCE_HEIGHT, parseMediaAssetId, formatSiteChromeBackgroundTokenLabel, planBackgroundOverride, planBackgroundTransition, systemCustomizeFacetNextValue } from './chunk-ZR2GQK2A.mjs';
|
|
6
|
+
import { API_ENDPOINTS, createBearerAPIClient, isPreviewRuntimeSessionEditable, DEFAULT_SURFACE_ID, initPreviewAuth, usePreviewAuth, usePreviewAuthFetch, markPreviewAuthExpired, usePreviewToken } from './chunk-4QNLOTES.mjs';
|
|
7
7
|
import React10, { createContext, useMemo, useState, useEffect, useRef, useCallback, useId, useReducer, Children, isValidElement, Fragment as Fragment$1, cloneElement, useContext } from 'react';
|
|
8
8
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
9
9
|
import { createPortal } from 'react-dom';
|
|
@@ -4722,11 +4722,11 @@ function LinkedEntryEditEventBridge() {
|
|
|
4722
4722
|
}
|
|
4723
4723
|
var previewContainerResponsiveEnabled = process.env.NEXT_PUBLIC_ENABLE_PREVIEW_CONTAINER_RESPONSIVE !== "false";
|
|
4724
4724
|
var PreviewEditorSidebar = React10.lazy(async () => {
|
|
4725
|
-
const mod = await import('./PreviewEditorSidebar-
|
|
4725
|
+
const mod = await import('./PreviewEditorSidebar-4PH35ZIE.mjs');
|
|
4726
4726
|
return { default: mod.PreviewEditorSidebar };
|
|
4727
4727
|
});
|
|
4728
4728
|
var PreviewEditorUI = React10.lazy(async () => {
|
|
4729
|
-
const mod = await import('./PreviewEditorUI-
|
|
4729
|
+
const mod = await import('./PreviewEditorUI-WHMCRJGM.mjs');
|
|
4730
4730
|
return { default: mod.PreviewEditorUI };
|
|
4731
4731
|
});
|
|
4732
4732
|
var previewPaneContainmentStyle = {
|
|
@@ -5027,6 +5027,7 @@ function PreviewShellLayout({
|
|
|
5027
5027
|
const editorUI = /* @__PURE__ */ jsx(React10.Suspense, { fallback: null, children: /* @__PURE__ */ jsx(
|
|
5028
5028
|
PreviewEditorUI,
|
|
5029
5029
|
{
|
|
5030
|
+
dashboardBaseUrl,
|
|
5030
5031
|
inMaintenanceMode: maintenanceModeEnabled,
|
|
5031
5032
|
siteId,
|
|
5032
5033
|
surfaceId,
|