efficient-web-builder 0.10.0 → 2.0.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/CHANGELOG.md +50 -367
- package/README.md +108 -261
- package/dist/components/AddBlockRow.d.ts +1 -0
- package/dist/components/AddBlockRow.js +1 -0
- package/dist/components/AddChildRow.d.ts +1 -0
- package/dist/components/AddChildRow.js +1 -0
- package/dist/components/AddSidePanel.d.ts +2 -0
- package/dist/components/AddSidePanel.js +1 -0
- package/dist/components/AnimatedStat.d.ts +6 -0
- package/dist/components/AnimatedStat.js +1 -0
- package/dist/components/ApplyCornersToSiblings.d.ts +9 -0
- package/dist/components/ApplyCornersToSiblings.js +1 -0
- package/dist/components/Banner.d.ts +12 -0
- package/dist/components/Banner.js +1 -0
- package/dist/components/BlockFrame.d.ts +15 -0
- package/dist/components/BlockFrame.js +1 -0
- package/dist/components/BlockGapField.d.ts +5 -0
- package/dist/components/BlockGapField.js +1 -0
- package/dist/components/BlogPostSource.d.ts +14 -0
- package/dist/components/BlogPostSource.js +1 -0
- package/dist/components/BoxSurfaceContext.d.ts +7 -0
- package/dist/components/BoxSurfaceContext.js +1 -0
- package/dist/components/BoxTabs.d.ts +6 -0
- package/dist/components/BoxTabs.js +1 -0
- package/dist/components/Breadcrumb.d.ts +10 -0
- package/dist/components/Breadcrumb.js +1 -0
- package/dist/components/Btn.d.ts +22 -0
- package/dist/components/Btn.js +1 -0
- package/dist/components/ButtonBlock.d.ts +13 -0
- package/dist/components/ButtonBlock.js +1 -0
- package/dist/components/CardShadowField.d.ts +6 -0
- package/dist/components/CardShadowField.js +1 -0
- package/dist/components/Cards.d.ts +15 -0
- package/dist/components/Cards.js +1 -0
- package/dist/components/CategoryBar.d.ts +16 -0
- package/dist/components/CategoryBar.js +1 -0
- package/dist/components/ChartSection.d.ts +16 -0
- package/dist/components/ChartSection.js +1 -0
- package/dist/components/ChatSettingsPanel.d.ts +1 -0
- package/dist/components/ChatSettingsPanel.js +1 -0
- package/dist/components/ClearColoursDialog.d.ts +5 -0
- package/dist/components/ClearColoursDialog.js +1 -0
- package/dist/components/ContactLocations.d.ts +17 -0
- package/dist/components/ContactLocations.js +73 -0
- package/dist/components/CornersField.d.ts +6 -0
- package/dist/components/CornersField.js +1 -0
- package/dist/components/CountUpText.d.ts +3 -0
- package/dist/components/CountUpText.js +1 -0
- package/dist/components/Divider.d.ts +9 -0
- package/dist/components/Divider.js +1 -0
- package/dist/components/DocBody.d.ts +13 -0
- package/dist/components/DocBody.js +7 -0
- package/dist/components/DocMasthead.d.ts +13 -0
- package/dist/components/DocMasthead.js +1 -0
- package/dist/components/DocMetaCards.d.ts +10 -0
- package/dist/components/DocMetaCards.js +1 -0
- package/dist/components/DocTabs.d.ts +12 -0
- package/dist/components/DocTabs.js +1 -0
- package/dist/components/DuplicateToPageMenu.d.ts +12 -0
- package/dist/components/DuplicateToPageMenu.js +1 -0
- package/dist/components/EditorScreenMount.d.ts +1 -0
- package/dist/components/EditorScreenMount.js +1 -0
- package/dist/components/EditorStoreProvider.d.ts +1 -0
- package/dist/components/EditorStoreProvider.js +1 -0
- package/dist/components/EditorialSectionHead.d.ts +11 -0
- package/dist/components/EditorialSectionHead.js +1 -0
- package/dist/components/Eyebrow.d.ts +9 -0
- package/dist/components/Eyebrow.js +1 -0
- package/dist/components/FAQ.d.ts +20 -0
- package/dist/components/FAQ.js +1 -0
- package/dist/components/FeaturedCover.d.ts +13 -0
- package/dist/components/FeaturedCover.js +1 -0
- package/dist/components/FieldGlyph.d.ts +12 -0
- package/dist/components/FieldGlyph.js +1 -0
- package/dist/components/Flex.d.ts +32 -0
- package/dist/components/Flex.js +1 -0
- package/dist/components/Footprint.d.ts +16 -0
- package/dist/components/Footprint.js +27 -0
- package/dist/components/Grid.d.ts +11 -0
- package/dist/components/Grid.js +1 -0
- package/dist/components/Heading.d.ts +11 -0
- package/dist/components/Heading.js +1 -0
- package/dist/components/HeadingAudit.d.ts +1 -0
- package/dist/components/HeadingAudit.js +1 -0
- package/dist/components/HeroArrows.d.ts +8 -0
- package/dist/components/HeroArrows.js +1 -0
- package/dist/components/HeroGroup.d.ts +20 -0
- package/dist/components/HeroGroup.js +1 -0
- package/dist/components/HeroHeldFrame.d.ts +8 -0
- package/dist/components/HeroHeldFrame.js +1 -0
- package/dist/components/HeroImageField.d.ts +6 -0
- package/dist/components/HeroImageField.js +1 -0
- package/dist/components/HeroPoster.d.ts +10 -0
- package/dist/components/HeroPoster.js +1 -0
- package/dist/components/HeroSection.d.ts +35 -0
- package/dist/components/HeroSection.js +11 -0
- package/dist/components/HeroSingle.d.ts +17 -0
- package/dist/components/HeroSingle.js +1 -0
- package/dist/components/HeroSlide.d.ts +30 -0
- package/dist/components/HeroSlide.js +1 -0
- package/dist/components/HoverEffectField.d.ts +6 -0
- package/dist/components/HoverEffectField.js +1 -0
- package/dist/components/ImageBlock.d.ts +18 -0
- package/dist/components/ImageBlock.js +1 -0
- package/dist/components/ImageFocusRow.d.ts +7 -0
- package/dist/components/ImageFocusRow.js +1 -0
- package/dist/components/IntegrationsSection.d.ts +14 -0
- package/dist/components/IntegrationsSection.js +1 -0
- package/dist/components/IntroBleed.d.ts +32 -0
- package/dist/components/IntroBleed.js +1 -0
- package/dist/components/KeepHint.d.ts +5 -0
- package/dist/components/KeepHint.js +1 -0
- package/dist/components/KeyFeatures.d.ts +14 -0
- package/dist/components/KeyFeatures.js +1 -0
- package/dist/components/LocationGroupHeader.d.ts +5 -0
- package/dist/components/LocationGroupHeader.js +1 -0
- package/dist/components/LocationsGroupedField.d.ts +5 -0
- package/dist/components/LocationsGroupedField.js +1 -0
- package/dist/components/LocationsTreeContext.d.ts +2 -0
- package/dist/components/LocationsTreeContext.js +1 -0
- package/dist/components/Logo.d.ts +27 -0
- package/dist/components/Logo.js +1 -0
- package/dist/components/LogoBlock.d.ts +8 -0
- package/dist/components/LogoBlock.js +1 -0
- package/dist/components/Logos.d.ts +15 -0
- package/dist/components/Logos.js +1 -0
- package/dist/components/LongRead.d.ts +20 -0
- package/dist/components/LongRead.js +1 -0
- package/dist/components/Manifesto.d.ts +14 -0
- package/dist/components/Manifesto.js +1 -0
- package/dist/components/Masthead.d.ts +16 -0
- package/dist/components/Masthead.js +1 -0
- package/dist/components/MediaSidePanel.d.ts +1 -0
- package/dist/components/MediaSidePanel.js +1 -0
- package/dist/components/MediaUploadField.d.ts +9 -0
- package/dist/components/MediaUploadField.js +1 -0
- package/dist/components/MockupSection.d.ts +59 -0
- package/dist/components/MockupSection.js +1 -0
- package/dist/components/MultiSelectField.d.ts +19 -0
- package/dist/components/MultiSelectField.js +1 -0
- package/dist/components/NodeContextMenu.d.ts +2 -0
- package/dist/components/NodeContextMenu.js +1 -0
- package/dist/components/OrderSummary.d.ts +17 -0
- package/dist/components/OrderSummary.js +1 -0
- package/dist/components/PageEditGuardNotices.d.ts +1 -0
- package/dist/components/PageEditGuardNotices.js +1 -0
- package/dist/components/PagesPanel.d.ts +8 -0
- package/dist/components/PagesPanel.js +1 -0
- package/dist/components/PanelToggleIcon.d.ts +1 -0
- package/dist/components/PanelToggleIcon.js +1 -0
- package/dist/components/ParagraphsA.d.ts +15 -0
- package/dist/components/ParagraphsA.js +1 -0
- package/dist/components/PartGlyphs.d.ts +7 -0
- package/dist/components/PartGlyphs.js +1 -0
- package/dist/components/PartInkControl.d.ts +7 -0
- package/dist/components/PartInkControl.js +1 -0
- package/dist/components/PartResetDot.d.ts +5 -0
- package/dist/components/PartResetDot.js +1 -0
- package/dist/components/PartSettingsPanel.d.ts +68 -0
- package/dist/components/PartSettingsPanel.js +1 -0
- package/dist/components/PartStyledText.d.ts +5 -0
- package/dist/components/PartStyledText.js +1 -0
- package/dist/components/PartTextBox.d.ts +20 -0
- package/dist/components/PartTextBox.js +1 -0
- package/dist/components/PaymentBadges.d.ts +14 -0
- package/dist/components/PaymentBadges.js +1 -0
- package/dist/components/PhoneMenuTools.d.ts +12 -0
- package/dist/components/PhoneMenuTools.js +1 -0
- package/dist/components/PhotographyField.d.ts +6 -0
- package/dist/components/PhotographyField.js +1 -0
- package/dist/components/Placeholder.d.ts +18 -0
- package/dist/components/Placeholder.js +1 -0
- package/dist/components/PostCard.d.ts +37 -0
- package/dist/components/PostCard.js +1 -0
- package/dist/components/PreviewChatContext.d.ts +23 -0
- package/dist/components/PreviewChatContext.js +1 -0
- package/dist/components/PreviewDeviceContext.d.ts +2 -0
- package/dist/components/PreviewDeviceContext.js +1 -0
- package/dist/components/PreviewFocusContext.d.ts +15 -0
- package/dist/components/PreviewFocusContext.js +1 -0
- package/dist/components/PreviewFooterContext.d.ts +17 -0
- package/dist/components/PreviewFooterContext.js +1 -0
- package/dist/components/PreviewHeaderContext.d.ts +97 -0
- package/dist/components/PreviewHeaderContext.js +1 -0
- package/dist/components/PreviewLocationPartContext.d.ts +10 -0
- package/dist/components/PreviewLocationPartContext.js +1 -0
- package/dist/components/PreviewPartAnchors.d.ts +16 -0
- package/dist/components/PreviewPartAnchors.js +1 -0
- package/dist/components/PreviewPartStyleContext.d.ts +21 -0
- package/dist/components/PreviewPartStyleContext.js +1 -0
- package/dist/components/PreviewPartsContext.d.ts +1 -0
- package/dist/components/PreviewPartsContext.js +1 -0
- package/dist/components/PreviewSocialContext.d.ts +30 -0
- package/dist/components/PreviewSocialContext.js +1 -0
- package/dist/components/PreviewSurfaceContext.d.ts +10 -0
- package/dist/components/PreviewSurfaceContext.js +1 -0
- package/dist/components/PreviewThemeFrame.d.ts +6 -0
- package/dist/components/PreviewThemeFrame.js +11 -0
- package/dist/components/PreviewTickerContext.d.ts +4 -0
- package/dist/components/PreviewTickerContext.js +1 -0
- package/dist/components/ProcessSteps.d.ts +32 -0
- package/dist/components/ProcessSteps.js +1 -0
- package/dist/components/Prose.d.ts +9 -0
- package/dist/components/Prose.js +1 -0
- package/dist/components/PublishedFooterContext.d.ts +11 -0
- package/dist/components/PublishedFooterContext.js +1 -0
- package/dist/components/PublishedPartStylesContext.d.ts +15 -0
- package/dist/components/PublishedPartStylesContext.js +1 -0
- package/dist/components/RMark.d.ts +6 -0
- package/dist/components/RMark.js +1 -0
- package/dist/components/Reel.d.ts +15 -0
- package/dist/components/Reel.js +1 -0
- package/dist/components/RuleLine.d.ts +1 -0
- package/dist/components/RuleLine.js +1 -0
- package/dist/components/SearchSelectField.d.ts +22 -0
- package/dist/components/SearchSelectField.js +1 -0
- package/dist/components/SectionAnimation.d.ts +7 -0
- package/dist/components/SectionAnimation.js +1 -0
- package/dist/components/SectionEditor.d.ts +63 -0
- package/dist/components/SectionEditor.js +1 -0
- package/dist/components/SectionEditorShell.d.ts +1 -0
- package/dist/components/SectionEditorShell.js +1 -0
- package/dist/components/SectionEyebrow.d.ts +10 -0
- package/dist/components/SectionEyebrow.js +1 -0
- package/dist/components/SectionHeader.d.ts +29 -0
- package/dist/components/SectionHeader.js +1 -0
- package/dist/components/SectionIcon.d.ts +5 -0
- package/dist/components/SectionIcon.js +1 -0
- package/dist/components/SectionTextEntries.d.ts +5 -0
- package/dist/components/SectionTextEntries.js +1 -0
- package/dist/components/SectionTextPartBridge.d.ts +6 -0
- package/dist/components/SectionTextPartBridge.js +1 -0
- package/dist/components/SectionThemePicker.d.ts +25 -0
- package/dist/components/SectionThemePicker.js +1 -0
- package/dist/components/SectionThumbnail.d.ts +3 -0
- package/dist/components/SectionThumbnail.js +1 -0
- package/dist/components/Series.d.ts +19 -0
- package/dist/components/Series.js +1 -0
- package/dist/components/ShadowColourField.d.ts +5 -0
- package/dist/components/ShadowColourField.js +1 -0
- package/dist/components/SidePanelHead.d.ts +1 -0
- package/dist/components/SidePanelHead.js +1 -0
- package/dist/components/SideSpaceField.d.ts +7 -0
- package/dist/components/SideSpaceField.js +1 -0
- package/dist/components/SiteEditorProvider.d.ts +3 -0
- package/dist/components/SiteEditorProvider.js +1 -0
- package/dist/components/SiteFields.d.ts +6 -0
- package/dist/components/SiteFields.js +1 -0
- package/dist/components/SiteGutterFrame.d.ts +9 -0
- package/dist/components/SiteGutterFrame.js +1 -0
- package/dist/components/SiteLogoContext.d.ts +25 -0
- package/dist/components/SiteLogoContext.js +1 -0
- package/dist/components/SitePhotographyContext.d.ts +8 -0
- package/dist/components/SitePhotographyContext.js +1 -0
- package/dist/components/SiteStyleUnset.d.ts +1 -0
- package/dist/components/SiteStyleUnset.js +1 -0
- package/dist/components/SiteWidthField.d.ts +7 -0
- package/dist/components/SiteWidthField.js +1 -0
- package/dist/components/SlotChildActionsContext.d.ts +2 -0
- package/dist/components/SlotChildActionsContext.js +1 -0
- package/dist/components/SlotChildRows.d.ts +16 -0
- package/dist/components/SlotChildRows.js +1 -0
- package/dist/components/SocialLinksPanel.d.ts +3 -0
- package/dist/components/SocialLinksPanel.js +1 -0
- package/dist/components/SourceStatus.d.ts +14 -0
- package/dist/components/SourceStatus.js +1 -0
- package/dist/components/Spacer.d.ts +6 -0
- package/dist/components/Spacer.js +1 -0
- package/dist/components/SpecStrip.d.ts +10 -0
- package/dist/components/SpecStrip.js +1 -0
- package/dist/components/Split.d.ts +33 -0
- package/dist/components/Split.js +1 -0
- package/dist/components/StandaloneSectionEditor.d.ts +19 -0
- package/dist/components/StandaloneSectionEditor.js +1 -0
- package/dist/components/Stats.d.ts +14 -0
- package/dist/components/Stats.js +1 -0
- package/dist/components/StatsParagraph.d.ts +21 -0
- package/dist/components/StatsParagraph.js +1 -0
- package/dist/components/StorefrontDocumentContext.d.ts +2 -0
- package/dist/components/StorefrontDocumentContext.js +1 -0
- package/dist/components/StorefrontEditor.d.ts +19 -0
- package/dist/components/StorefrontEditor.js +1 -0
- package/dist/components/StorefrontEditorChrome.d.ts +1 -0
- package/dist/components/StorefrontEditorChrome.js +1 -0
- package/dist/components/StorefrontLinkField.d.ts +19 -0
- package/dist/components/StorefrontLinkField.js +1 -0
- package/dist/components/StylesPanel.d.ts +11 -0
- package/dist/components/StylesPanel.js +1 -0
- package/dist/components/SwitchToBoxFooter.d.ts +1 -0
- package/dist/components/SwitchToBoxFooter.js +1 -0
- package/dist/components/TemplateGlyph.d.ts +6 -0
- package/dist/components/TemplateGlyph.js +1 -0
- package/dist/components/Testimonials.d.ts +16 -0
- package/dist/components/Testimonials.js +1 -0
- package/dist/components/Text.d.ts +11 -0
- package/dist/components/Text.js +1 -0
- package/dist/components/TextStyleRow.d.ts +13 -0
- package/dist/components/TextStyleRow.js +1 -0
- package/dist/components/TextStylesField.d.ts +17 -0
- package/dist/components/TextStylesField.js +1 -0
- package/dist/components/ThemeCard.d.ts +40 -0
- package/dist/components/ThemeCard.js +1 -0
- package/dist/components/ThemeColourField.d.ts +5 -0
- package/dist/components/ThemeColourField.js +1 -0
- package/dist/components/ThemeField.d.ts +8 -0
- package/dist/components/ThemeField.js +1 -0
- package/dist/components/Ticker.d.ts +18 -0
- package/dist/components/Ticker.js +1 -0
- package/dist/components/TickerSection.d.ts +18 -0
- package/dist/components/TickerSection.js +1 -0
- package/dist/components/TickerSettingsPanel.d.ts +3 -0
- package/dist/components/TickerSettingsPanel.js +1 -0
- package/dist/components/Timeline.d.ts +24 -0
- package/dist/components/Timeline.js +1 -0
- package/dist/components/TimelineTrack.d.ts +22 -0
- package/dist/components/TimelineTrack.js +1 -0
- package/dist/components/TitleWithButtons.d.ts +14 -0
- package/dist/components/TitleWithButtons.js +1 -0
- package/dist/components/UiIcon.d.ts +2 -0
- package/dist/components/UiIcon.js +1 -0
- package/dist/components/WebsiteScreenParts.d.ts +2 -0
- package/dist/components/WebsiteScreenParts.js +1 -0
- package/dist/components/WebsiteSettingsPanel.d.ts +46 -0
- package/dist/components/WebsiteSettingsPanel.js +1 -0
- package/dist/components/WidthFollowField.d.ts +10 -0
- package/dist/components/WidthFollowField.js +1 -0
- package/dist/components/cartGlyph.d.ts +1 -0
- package/dist/components/cartGlyph.js +1 -0
- package/dist/components/floating-editor/tokens.d.ts +27 -0
- package/dist/components/floating-editor/tokens.js +1 -0
- package/dist/components/goldPhrases.d.ts +7 -0
- package/dist/components/goldPhrases.js +2 -0
- package/dist/components/integrationIcons.d.ts +2 -0
- package/dist/components/integrationIcons.js +1 -0
- package/dist/components/panel-widths.d.ts +2 -0
- package/dist/components/panel-widths.js +1 -0
- package/dist/components/preview-devices.d.ts +3 -0
- package/dist/components/preview-devices.js +1 -0
- package/dist/components/socialIcons.d.ts +8 -0
- package/dist/components/socialIcons.js +1 -0
- package/dist/components/storefront-editor.css +4870 -0
- package/dist/components/useCountUp.d.ts +10 -0
- package/dist/components/useCountUp.js +1 -0
- package/dist/components/useFooterFocus.d.ts +2 -0
- package/dist/components/useFooterFocus.js +1 -0
- package/dist/components/useLocationsTree.d.ts +6 -0
- package/dist/components/useLocationsTree.js +1 -0
- package/dist/components/usePartBridge.d.ts +1 -0
- package/dist/components/usePartBridge.js +1 -0
- package/dist/components/usePinnedChromeSeed.d.ts +2 -0
- package/dist/components/usePinnedChromeSeed.js +1 -0
- package/dist/components/usePreviewHref.d.ts +5 -0
- package/dist/components/usePreviewHref.js +1 -0
- package/dist/components/useReducedMotion.d.ts +4 -0
- package/dist/components/useReducedMotion.js +1 -0
- package/dist/components/useSnapshotSource.d.ts +17 -0
- package/dist/components/useSnapshotSource.js +1 -0
- package/dist/components/useSocialSettings.d.ts +14 -0
- package/dist/components/useSocialSettings.js +1 -0
- package/dist/components/useStorefrontBlogPosts.d.ts +2 -0
- package/dist/components/useStorefrontBlogPosts.js +1 -0
- package/dist/lib/client-only.d.ts +1 -0
- package/dist/lib/client-only.js +1 -0
- package/dist/lib/content/authored-props.d.ts +4 -0
- package/dist/lib/content/authored-props.js +1 -0
- package/dist/lib/content/box-background.d.ts +31 -0
- package/dist/lib/content/box-background.js +1 -0
- package/dist/lib/content/box-layout.d.ts +78 -0
- package/dist/lib/content/box-layout.js +1 -0
- package/dist/lib/content/button-arrow.d.ts +2 -0
- package/dist/lib/content/button-arrow.js +1 -0
- package/dist/lib/content/card-corners.d.ts +12 -0
- package/dist/lib/content/card-corners.js +1 -0
- package/dist/lib/content/card-image-background.d.ts +11 -0
- package/dist/lib/content/card-image-background.js +1 -0
- package/dist/lib/content/card-image-shape.d.ts +5 -0
- package/dist/lib/content/card-image-shape.js +1 -0
- package/dist/lib/content/cart-drawer.d.ts +20 -0
- package/dist/lib/content/cart-drawer.js +1 -0
- package/dist/lib/content/contact.d.ts +79 -0
- package/dist/lib/content/contact.js +3 -0
- package/dist/lib/content/container-direction.d.ts +14 -0
- package/dist/lib/content/container-direction.js +1 -0
- package/dist/lib/content/container-gap.d.ts +31 -0
- package/dist/lib/content/container-gap.js +1 -0
- package/dist/lib/content/footer.d.ts +30 -0
- package/dist/lib/content/footer.js +1 -0
- package/dist/lib/content/footprint.d.ts +22 -0
- package/dist/lib/content/footprint.js +1 -0
- package/dist/lib/content/gallery-card-layout.d.ts +7 -0
- package/dist/lib/content/gallery-card-layout.js +1 -0
- package/dist/lib/content/gallery-layout.d.ts +154 -0
- package/dist/lib/content/gallery-layout.js +1 -0
- package/dist/lib/content/grid-span.d.ts +15 -0
- package/dist/lib/content/grid-span.js +1 -0
- package/dist/lib/content/image-corners.d.ts +7 -0
- package/dist/lib/content/image-corners.js +1 -0
- package/dist/lib/content/image-fit.d.ts +11 -0
- package/dist/lib/content/image-fit.js +1 -0
- package/dist/lib/content/image-treatment.d.ts +20 -0
- package/dist/lib/content/image-treatment.js +1 -0
- package/dist/lib/content/image-width.d.ts +9 -0
- package/dist/lib/content/image-width.js +1 -0
- package/dist/lib/content/page-background.d.ts +4 -0
- package/dist/lib/content/page-background.js +1 -0
- package/dist/lib/content/page-width.d.ts +63 -0
- package/dist/lib/content/page-width.js +1 -0
- package/dist/lib/content/product-page.d.ts +11 -0
- package/dist/lib/content/product-page.js +1 -0
- package/dist/lib/content/section-animation.d.ts +13 -0
- package/dist/lib/content/section-animation.js +1 -0
- package/dist/lib/content/section-background.d.ts +7 -0
- package/dist/lib/content/section-background.js +1 -0
- package/dist/lib/content/section-corners.d.ts +16 -0
- package/dist/lib/content/section-corners.js +1 -0
- package/dist/lib/content/section-height.d.ts +9 -0
- package/dist/lib/content/section-height.js +1 -0
- package/dist/lib/content/section-min-height.d.ts +60 -0
- package/dist/lib/content/section-min-height.js +1 -0
- package/dist/lib/content/section-padding.d.ts +33 -0
- package/dist/lib/content/section-padding.js +1 -0
- package/dist/lib/content/section-surface.d.ts +13 -0
- package/dist/lib/content/section-surface.js +1 -0
- package/dist/lib/content/section-type-size.d.ts +7 -0
- package/dist/lib/content/section-type-size.js +1 -0
- package/dist/lib/content/section-width.d.ts +19 -0
- package/dist/lib/content/section-width.js +1 -0
- package/dist/lib/content/site-gutter.d.ts +2 -0
- package/dist/lib/content/site-gutter.js +1 -0
- package/dist/lib/content/site-name.d.ts +2 -0
- package/dist/lib/content/site-name.js +1 -0
- package/dist/lib/content/social-links.d.ts +12 -0
- package/dist/lib/content/social-links.js +1 -0
- package/dist/lib/content/subscribe.d.ts +76 -0
- package/dist/lib/content/subscribe.js +2 -0
- package/dist/lib/content/view-tiers.d.ts +2 -0
- package/dist/lib/content/view-tiers.js +1 -0
- package/dist/lib/editor/preview-href.d.ts +6 -0
- package/dist/lib/editor/preview-href.js +1 -0
- package/dist/lib/editor-admin-bridge.d.ts +2 -0
- package/dist/lib/editor-admin-bridge.js +1 -0
- package/dist/lib/editor-auth.d.ts +3 -0
- package/dist/lib/editor-auth.js +1 -0
- package/dist/lib/editor-backend-error.d.ts +2 -0
- package/dist/lib/editor-backend-error.js +1 -0
- package/dist/lib/editor-block-metadata.d.ts +6 -0
- package/dist/lib/editor-block-metadata.js +1 -0
- package/dist/lib/editor-blocks.d.ts +20 -0
- package/dist/lib/editor-blocks.js +1 -0
- package/dist/lib/editor-canvas-styles.d.ts +12 -0
- package/dist/lib/editor-canvas-styles.js +1 -0
- package/dist/lib/editor-chrome.d.ts +2 -0
- package/dist/lib/editor-chrome.js +1 -0
- package/dist/lib/editor-document-adapter.d.ts +7 -0
- package/dist/lib/editor-document-adapter.js +1 -0
- package/dist/lib/editor-document-addressing.d.ts +2 -0
- package/dist/lib/editor-document-addressing.js +1 -0
- package/dist/lib/editor-document-contract.d.ts +1 -0
- package/dist/lib/editor-document-contract.js +0 -0
- package/dist/lib/editor-document-hooks.d.ts +1 -0
- package/dist/lib/editor-document-hooks.js +0 -0
- package/dist/lib/editor-document-switch.d.ts +2 -0
- package/dist/lib/editor-document-switch.js +1 -0
- package/dist/lib/editor-events.d.ts +8 -0
- package/dist/lib/editor-events.js +1 -0
- package/dist/lib/editor-failure.d.ts +1 -0
- package/dist/lib/editor-failure.js +1 -0
- package/dist/lib/editor-form-window.d.ts +21 -0
- package/dist/lib/editor-form-window.js +1 -0
- package/dist/lib/editor-host-inbound.d.ts +1 -0
- package/dist/lib/editor-host-inbound.js +1 -0
- package/dist/lib/editor-host.d.ts +2 -0
- package/dist/lib/editor-host.js +1 -0
- package/dist/lib/editor-key-scope.d.ts +1 -0
- package/dist/lib/editor-key-scope.js +1 -0
- package/dist/lib/editor-load-error.d.ts +1 -0
- package/dist/lib/editor-load-error.js +1 -0
- package/dist/lib/editor-media-panel.d.ts +2 -0
- package/dist/lib/editor-media-panel.js +1 -0
- package/dist/lib/editor-media-picker.d.ts +2 -0
- package/dist/lib/editor-media-picker.js +1 -0
- package/dist/lib/editor-page-lock.d.ts +1 -0
- package/dist/lib/editor-page-lock.js +1 -0
- package/dist/lib/editor-page-rows.d.ts +16 -0
- package/dist/lib/editor-page-rows.js +1 -0
- package/dist/lib/editor-screen.d.ts +2 -0
- package/dist/lib/editor-screen.js +1 -0
- package/dist/lib/editor-section-templates.d.ts +1 -0
- package/dist/lib/editor-section-templates.js +1 -0
- package/dist/lib/editor-session-context.d.ts +1 -0
- package/dist/lib/editor-session-context.js +1 -0
- package/dist/lib/editor-session-loader.d.ts +4 -0
- package/dist/lib/editor-session-loader.js +1 -0
- package/dist/lib/editor-session.d.ts +2 -0
- package/dist/lib/editor-session.js +1 -0
- package/dist/lib/editor-site-slug.d.ts +2 -0
- package/dist/lib/editor-site-slug.js +1 -0
- package/dist/lib/editor-site.d.ts +3 -0
- package/dist/lib/editor-site.js +1 -0
- package/dist/lib/editor-theme.d.ts +1 -0
- package/dist/lib/editor-theme.js +1 -0
- package/dist/lib/fit-words.d.ts +3 -0
- package/dist/lib/fit-words.js +220 -0
- package/dist/lib/fonts.d.ts +32 -0
- package/dist/lib/fonts.js +1 -0
- package/dist/lib/geocode.d.ts +6 -0
- package/dist/lib/geocode.js +1 -0
- package/dist/lib/hero-arrows.d.ts +23 -0
- package/dist/lib/hero-arrows.js +1 -0
- package/dist/lib/hero-group-placement.d.ts +46 -0
- package/dist/lib/hero-group-placement.js +1 -0
- package/dist/lib/hero-overlay-anchor.d.ts +6 -0
- package/dist/lib/hero-overlay-anchor.js +1 -0
- package/dist/lib/hero-phone-stack.d.ts +27 -0
- package/dist/lib/hero-phone-stack.js +1 -0
- package/dist/lib/hero-swipe.d.ts +16 -0
- package/dist/lib/hero-swipe.js +1 -0
- package/dist/lib/hero-texture.d.ts +4 -0
- package/dist/lib/hero-texture.js +1 -0
- package/dist/lib/hero-video-control.d.ts +13 -0
- package/dist/lib/hero-video-control.js +1 -0
- package/dist/lib/image-focus.d.ts +16 -0
- package/dist/lib/image-focus.js +1 -0
- package/dist/lib/links/link-filters.d.ts +1 -0
- package/dist/lib/links/link-filters.js +0 -0
- package/dist/lib/links/link-picker-setup.d.ts +29 -0
- package/dist/lib/links/link-picker-setup.js +1 -0
- package/dist/lib/links/page-link-rules.d.ts +22 -0
- package/dist/lib/links/page-link-rules.js +1 -0
- package/dist/lib/locations-grid.d.ts +10 -0
- package/dist/lib/locations-grid.js +1 -0
- package/dist/lib/logo/analyze-logo-client.d.ts +3 -0
- package/dist/lib/logo/analyze-logo-client.js +1 -0
- package/dist/lib/logo/reverse-svg.d.ts +9 -0
- package/dist/lib/logo/reverse-svg.js +1 -0
- package/dist/lib/map-styles.d.ts +30 -0
- package/dist/lib/map-styles.js +1 -0
- package/dist/lib/maps-config.d.ts +16 -0
- package/dist/lib/maps-config.js +1 -0
- package/dist/lib/maps-loader.d.ts +3 -0
- package/dist/lib/maps-loader.js +1 -0
- package/dist/lib/markup.d.ts +38 -0
- package/dist/lib/markup.js +2 -0
- package/dist/lib/media.d.ts +10 -0
- package/dist/lib/media.js +1 -0
- package/dist/lib/parse-option.d.ts +3 -0
- package/dist/lib/parse-option.js +1 -0
- package/dist/lib/popup/text-kinds.d.ts +11 -0
- package/dist/lib/popup/text-kinds.js +1 -0
- package/dist/lib/preview-header-settings.d.ts +39 -0
- package/dist/lib/preview-header-settings.js +0 -0
- package/dist/lib/puck/ColourControl.d.ts +11 -0
- package/dist/lib/puck/ColourControl.js +1 -0
- package/dist/lib/puck/MarkupToolbar.d.ts +13 -0
- package/dist/lib/puck/MarkupToolbar.js +1 -0
- package/dist/lib/puck/add-palette.d.ts +14 -0
- package/dist/lib/puck/add-palette.js +1 -0
- package/dist/lib/puck/add-target-types.d.ts +1 -0
- package/dist/lib/puck/add-target-types.js +0 -0
- package/dist/lib/puck/add-target.d.ts +3 -0
- package/dist/lib/puck/add-target.js +1 -0
- package/dist/lib/puck/apply-card-corners.d.ts +21 -0
- package/dist/lib/puck/apply-card-corners.js +1 -0
- package/dist/lib/puck/block-choice.d.ts +2 -0
- package/dist/lib/puck/block-choice.js +1 -0
- package/dist/lib/puck/block-offer.d.ts +10 -0
- package/dist/lib/puck/block-offer.js +1 -0
- package/dist/lib/puck/block-types-in.d.ts +1 -0
- package/dist/lib/puck/block-types-in.js +1 -0
- package/dist/lib/puck/blocks/block-types.d.ts +12 -0
- package/dist/lib/puck/blocks/block-types.js +1 -0
- package/dist/lib/puck/blocks/general/Banner/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Banner/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Banner/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Banner/render.js +1 -0
- package/dist/lib/puck/blocks/general/Breadcrumb/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Breadcrumb/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Breadcrumb/render.d.ts +5 -0
- package/dist/lib/puck/blocks/general/Breadcrumb/render.js +1 -0
- package/dist/lib/puck/blocks/general/ButtonBlock/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/ButtonBlock/fields.js +1 -0
- package/dist/lib/puck/blocks/general/ButtonBlock/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/ButtonBlock/render.js +1 -0
- package/dist/lib/puck/blocks/general/Cards/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Cards/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Cards/render.d.ts +6 -0
- package/dist/lib/puck/blocks/general/Cards/render.js +1 -0
- package/dist/lib/puck/blocks/general/CategoryBar/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/CategoryBar/fields.js +1 -0
- package/dist/lib/puck/blocks/general/CategoryBar/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/CategoryBar/render.js +1 -0
- package/dist/lib/puck/blocks/general/Chart/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Chart/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Chart/render.d.ts +6 -0
- package/dist/lib/puck/blocks/general/Chart/render.js +2 -0
- package/dist/lib/puck/blocks/general/ContactLocations/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/ContactLocations/fields.js +1 -0
- package/dist/lib/puck/blocks/general/ContactLocations/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/ContactLocations/render.js +1 -0
- package/dist/lib/puck/blocks/general/CustomHTML/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/CustomHTML/fields.js +1 -0
- package/dist/lib/puck/blocks/general/CustomHTML/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/CustomHTML/render.js +3 -0
- package/dist/lib/puck/blocks/general/Divider/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Divider/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Divider/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Divider/render.js +1 -0
- package/dist/lib/puck/blocks/general/DocBody/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/DocBody/fields.js +1 -0
- package/dist/lib/puck/blocks/general/DocBody/render.d.ts +5 -0
- package/dist/lib/puck/blocks/general/DocBody/render.js +1 -0
- package/dist/lib/puck/blocks/general/DocMasthead/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/DocMasthead/fields.js +1 -0
- package/dist/lib/puck/blocks/general/DocMasthead/render.d.ts +7 -0
- package/dist/lib/puck/blocks/general/DocMasthead/render.js +1 -0
- package/dist/lib/puck/blocks/general/DocMetaCards/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/DocMetaCards/fields.js +1 -0
- package/dist/lib/puck/blocks/general/DocMetaCards/render.d.ts +4 -0
- package/dist/lib/puck/blocks/general/DocMetaCards/render.js +1 -0
- package/dist/lib/puck/blocks/general/DocTabs/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/DocTabs/fields.js +1 -0
- package/dist/lib/puck/blocks/general/DocTabs/render.d.ts +6 -0
- package/dist/lib/puck/blocks/general/DocTabs/render.js +1 -0
- package/dist/lib/puck/blocks/general/Eyebrow/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Eyebrow/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Eyebrow/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Eyebrow/render.js +1 -0
- package/dist/lib/puck/blocks/general/FAQ/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/FAQ/fields.js +1 -0
- package/dist/lib/puck/blocks/general/FAQ/render.d.ts +7 -0
- package/dist/lib/puck/blocks/general/FAQ/render.js +1 -0
- package/dist/lib/puck/blocks/general/FeaturedCover/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/FeaturedCover/fields.js +1 -0
- package/dist/lib/puck/blocks/general/FeaturedCover/render.d.ts +13 -0
- package/dist/lib/puck/blocks/general/FeaturedCover/render.js +1 -0
- package/dist/lib/puck/blocks/general/Flex/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Flex/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Flex/render.d.ts +7 -0
- package/dist/lib/puck/blocks/general/Flex/render.js +1 -0
- package/dist/lib/puck/blocks/general/Footprint/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Footprint/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Footprint/render.d.ts +7 -0
- package/dist/lib/puck/blocks/general/Footprint/render.js +2 -0
- package/dist/lib/puck/blocks/general/Grid/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Grid/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Grid/render.d.ts +7 -0
- package/dist/lib/puck/blocks/general/Grid/render.js +1 -0
- package/dist/lib/puck/blocks/general/Heading/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Heading/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Heading/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Heading/render.js +1 -0
- package/dist/lib/puck/blocks/general/Hero/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Hero/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Hero/render.d.ts +7 -0
- package/dist/lib/puck/blocks/general/Hero/render.js +1 -0
- package/dist/lib/puck/blocks/general/HeroGroup/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/HeroGroup/fields.js +1 -0
- package/dist/lib/puck/blocks/general/HeroGroup/render.d.ts +8 -0
- package/dist/lib/puck/blocks/general/HeroGroup/render.js +1 -0
- package/dist/lib/puck/blocks/general/HeroSingle/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/HeroSingle/fields.js +1 -0
- package/dist/lib/puck/blocks/general/HeroSingle/render.d.ts +8 -0
- package/dist/lib/puck/blocks/general/HeroSingle/render.js +1 -0
- package/dist/lib/puck/blocks/general/HeroSlide/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/HeroSlide/fields.js +1 -0
- package/dist/lib/puck/blocks/general/HeroSlide/render.d.ts +8 -0
- package/dist/lib/puck/blocks/general/HeroSlide/render.js +1 -0
- package/dist/lib/puck/blocks/general/ImageBlock/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/ImageBlock/fields.js +1 -0
- package/dist/lib/puck/blocks/general/ImageBlock/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/ImageBlock/render.js +1 -0
- package/dist/lib/puck/blocks/general/Integrations/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Integrations/fields.js +2 -0
- package/dist/lib/puck/blocks/general/Integrations/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Integrations/render.js +2 -0
- package/dist/lib/puck/blocks/general/IntroBleed/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/IntroBleed/fields.js +1 -0
- package/dist/lib/puck/blocks/general/IntroBleed/render.d.ts +7 -0
- package/dist/lib/puck/blocks/general/IntroBleed/render.js +2 -0
- package/dist/lib/puck/blocks/general/KeyFeatures/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/KeyFeatures/fields.js +1 -0
- package/dist/lib/puck/blocks/general/KeyFeatures/render.d.ts +6 -0
- package/dist/lib/puck/blocks/general/KeyFeatures/render.js +1 -0
- package/dist/lib/puck/blocks/general/LogoBlock/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/LogoBlock/fields.js +1 -0
- package/dist/lib/puck/blocks/general/LogoBlock/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/LogoBlock/render.js +1 -0
- package/dist/lib/puck/blocks/general/Logos/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Logos/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Logos/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Logos/render.js +1 -0
- package/dist/lib/puck/blocks/general/LongRead/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/LongRead/fields.js +1 -0
- package/dist/lib/puck/blocks/general/LongRead/render.d.ts +19 -0
- package/dist/lib/puck/blocks/general/LongRead/render.js +1 -0
- package/dist/lib/puck/blocks/general/Manifesto/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Manifesto/fields.js +2 -0
- package/dist/lib/puck/blocks/general/Manifesto/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Manifesto/render.js +1 -0
- package/dist/lib/puck/blocks/general/Masthead/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Masthead/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Masthead/render.d.ts +8 -0
- package/dist/lib/puck/blocks/general/Masthead/render.js +1 -0
- package/dist/lib/puck/blocks/general/Mockup/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Mockup/fields.js +2 -0
- package/dist/lib/puck/blocks/general/Mockup/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Mockup/render.js +2 -0
- package/dist/lib/puck/blocks/general/OrderSummary/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/OrderSummary/fields.js +1 -0
- package/dist/lib/puck/blocks/general/OrderSummary/render.d.ts +6 -0
- package/dist/lib/puck/blocks/general/OrderSummary/render.js +1 -0
- package/dist/lib/puck/blocks/general/ParagraphsA/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/ParagraphsA/fields.js +1 -0
- package/dist/lib/puck/blocks/general/ParagraphsA/render.d.ts +9 -0
- package/dist/lib/puck/blocks/general/ParagraphsA/render.js +1 -0
- package/dist/lib/puck/blocks/general/PaymentBadges/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/PaymentBadges/fields.js +1 -0
- package/dist/lib/puck/blocks/general/PaymentBadges/render.d.ts +5 -0
- package/dist/lib/puck/blocks/general/PaymentBadges/render.js +1 -0
- package/dist/lib/puck/blocks/general/PostCard/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/PostCard/fields.js +1 -0
- package/dist/lib/puck/blocks/general/PostCard/render.d.ts +9 -0
- package/dist/lib/puck/blocks/general/PostCard/render.js +1 -0
- package/dist/lib/puck/blocks/general/ProcessSteps/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/ProcessSteps/fields.js +1 -0
- package/dist/lib/puck/blocks/general/ProcessSteps/render.d.ts +13 -0
- package/dist/lib/puck/blocks/general/ProcessSteps/render.js +1 -0
- package/dist/lib/puck/blocks/general/Prose/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Prose/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Prose/render.d.ts +7 -0
- package/dist/lib/puck/blocks/general/Prose/render.js +1 -0
- package/dist/lib/puck/blocks/general/SectionHeader/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/SectionHeader/fields.js +1 -0
- package/dist/lib/puck/blocks/general/SectionHeader/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/SectionHeader/render.js +1 -0
- package/dist/lib/puck/blocks/general/Series/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Series/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Series/render.d.ts +8 -0
- package/dist/lib/puck/blocks/general/Series/render.js +1 -0
- package/dist/lib/puck/blocks/general/Spacer/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Spacer/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Spacer/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Spacer/render.js +1 -0
- package/dist/lib/puck/blocks/general/SpecStrip/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/SpecStrip/fields.js +1 -0
- package/dist/lib/puck/blocks/general/SpecStrip/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/SpecStrip/render.js +1 -0
- package/dist/lib/puck/blocks/general/Split/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Split/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Split/render.d.ts +10 -0
- package/dist/lib/puck/blocks/general/Split/render.js +2 -0
- package/dist/lib/puck/blocks/general/Stats/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Stats/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Stats/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Stats/render.js +1 -0
- package/dist/lib/puck/blocks/general/StatsParagraph/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/StatsParagraph/fields.js +1 -0
- package/dist/lib/puck/blocks/general/StatsParagraph/render.d.ts +7 -0
- package/dist/lib/puck/blocks/general/StatsParagraph/render.js +1 -0
- package/dist/lib/puck/blocks/general/Testimonials/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Testimonials/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Testimonials/render.d.ts +6 -0
- package/dist/lib/puck/blocks/general/Testimonials/render.js +1 -0
- package/dist/lib/puck/blocks/general/Text/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Text/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Text/render.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Text/render.js +1 -0
- package/dist/lib/puck/blocks/general/Ticker/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Ticker/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Ticker/render.d.ts +5 -0
- package/dist/lib/puck/blocks/general/Ticker/render.js +1 -0
- package/dist/lib/puck/blocks/general/Timeline/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/Timeline/fields.js +1 -0
- package/dist/lib/puck/blocks/general/Timeline/render.d.ts +10 -0
- package/dist/lib/puck/blocks/general/Timeline/render.js +2 -0
- package/dist/lib/puck/blocks/general/TimelineTrack/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/TimelineTrack/fields.js +1 -0
- package/dist/lib/puck/blocks/general/TimelineTrack/render.d.ts +8 -0
- package/dist/lib/puck/blocks/general/TimelineTrack/render.js +1 -0
- package/dist/lib/puck/blocks/general/TitleWithButtons/fields.d.ts +2 -0
- package/dist/lib/puck/blocks/general/TitleWithButtons/fields.js +1 -0
- package/dist/lib/puck/blocks/general/TitleWithButtons/render.d.ts +5 -0
- package/dist/lib/puck/blocks/general/TitleWithButtons/render.js +2 -0
- package/dist/lib/puck/blocks/general/index.d.ts +2 -0
- package/dist/lib/puck/blocks/general/index.js +1 -0
- package/dist/lib/puck/blocks/general/renders.d.ts +57 -0
- package/dist/lib/puck/blocks/general/renders.js +1 -0
- package/dist/lib/puck/blocks/general/section-bg-built-in.d.ts +6 -0
- package/dist/lib/puck/blocks/general/section-bg-built-in.js +1 -0
- package/dist/lib/puck/blocks/placeholders.d.ts +25 -0
- package/dist/lib/puck/blocks/placeholders.js +1 -0
- package/dist/lib/puck/blocks/scaffold.d.ts +22 -0
- package/dist/lib/puck/blocks/scaffold.js +1 -0
- package/dist/lib/puck/blocks/shared-fields.d.ts +14 -0
- package/dist/lib/puck/blocks/shared-fields.js +1 -0
- package/dist/lib/puck/booking-preview.d.ts +3 -0
- package/dist/lib/puck/booking-preview.js +1 -0
- package/dist/lib/puck/box-footer.d.ts +9 -0
- package/dist/lib/puck/box-footer.js +1 -0
- package/dist/lib/puck/build-config.d.ts +3 -0
- package/dist/lib/puck/build-config.js +1 -0
- package/dist/lib/puck/cap-hero-groups.d.ts +1 -0
- package/dist/lib/puck/cap-hero-groups.js +1 -0
- package/dist/lib/puck/container-blocks.d.ts +10 -0
- package/dist/lib/puck/container-blocks.js +1 -0
- package/dist/lib/puck/content-tree.d.ts +2 -0
- package/dist/lib/puck/content-tree.js +1 -0
- package/dist/lib/puck/controls.d.ts +335 -0
- package/dist/lib/puck/controls.js +1 -0
- package/dist/lib/puck/device-fields.d.ts +2 -0
- package/dist/lib/puck/device-fields.js +1 -0
- package/dist/lib/puck/editor-page-context.d.ts +6 -0
- package/dist/lib/puck/editor-page-context.js +1 -0
- package/dist/lib/puck/enclosing-section.d.ts +1 -0
- package/dist/lib/puck/enclosing-section.js +1 -0
- package/dist/lib/puck/field-buckets.d.ts +2 -0
- package/dist/lib/puck/field-buckets.js +1 -0
- package/dist/lib/puck/field-groups.d.ts +23 -0
- package/dist/lib/puck/field-groups.js +1 -0
- package/dist/lib/puck/field-markers.d.ts +2 -0
- package/dist/lib/puck/field-markers.js +1 -0
- package/dist/lib/puck/field-noun.d.ts +3 -0
- package/dist/lib/puck/field-noun.js +1 -0
- package/dist/lib/puck/footer-block-row-name.d.ts +4 -0
- package/dist/lib/puck/footer-block-row-name.js +1 -0
- package/dist/lib/puck/footer-blocks.d.ts +11 -0
- package/dist/lib/puck/footer-blocks.js +1 -0
- package/dist/lib/puck/footer-return.d.ts +3 -0
- package/dist/lib/puck/footer-return.js +1 -0
- package/dist/lib/puck/general-registry.d.ts +4 -0
- package/dist/lib/puck/general-registry.js +1 -0
- package/dist/lib/puck/geocode-resolve.d.ts +14 -0
- package/dist/lib/puck/geocode-resolve.js +1 -0
- package/dist/lib/puck/header-clearance.d.ts +49 -0
- package/dist/lib/puck/header-clearance.js +1 -0
- package/dist/lib/puck/header-ink.d.ts +16 -0
- package/dist/lib/puck/header-ink.js +1 -0
- package/dist/lib/puck/heading-outline.d.ts +7 -0
- package/dist/lib/puck/heading-outline.js +1 -0
- package/dist/lib/puck/hidable.d.ts +2 -0
- package/dist/lib/puck/hidable.js +1 -0
- package/dist/lib/puck/home-page.d.ts +1 -0
- package/dist/lib/puck/home-page.js +1 -0
- package/dist/lib/puck/left-view.d.ts +5 -0
- package/dist/lib/puck/left-view.js +1 -0
- package/dist/lib/puck/locations-focus.d.ts +22 -0
- package/dist/lib/puck/locations-focus.js +1 -0
- package/dist/lib/puck/locations-tree.d.ts +23 -0
- package/dist/lib/puck/locations-tree.js +2 -0
- package/dist/lib/puck/locked-blocks.d.ts +2 -0
- package/dist/lib/puck/locked-blocks.js +1 -0
- package/dist/lib/puck/media-manifest.json +138 -0
- package/dist/lib/puck/migrate-legacy.d.ts +2 -0
- package/dist/lib/puck/migrate-legacy.js +1 -0
- package/dist/lib/puck/mockup-variant-fields.d.ts +10 -0
- package/dist/lib/puck/mockup-variant-fields.js +1 -0
- package/dist/lib/puck/neutralization-contracts.d.ts +43 -0
- package/dist/lib/puck/neutralization-contracts.js +1 -0
- package/dist/lib/puck/one-h1.d.ts +3 -0
- package/dist/lib/puck/one-h1.js +1 -0
- package/dist/lib/puck/overlay-portal.d.ts +2 -0
- package/dist/lib/puck/overlay-portal.js +1 -0
- package/dist/lib/puck/overrides.d.ts +2 -0
- package/dist/lib/puck/overrides.js +1 -0
- package/dist/lib/puck/page-render.d.ts +5 -0
- package/dist/lib/puck/page-render.js +1 -0
- package/dist/lib/puck/page-root-fields.d.ts +29 -0
- package/dist/lib/puck/page-root-fields.js +1 -0
- package/dist/lib/puck/page-root.d.ts +55 -0
- package/dist/lib/puck/page-root.js +1 -0
- package/dist/lib/puck/palette-sections.d.ts +2 -0
- package/dist/lib/puck/palette-sections.js +1 -0
- package/dist/lib/puck/panel-drop-empty-headings.d.ts +3 -0
- package/dist/lib/puck/panel-drop-empty-headings.js +1 -0
- package/dist/lib/puck/panel-fields.d.ts +2 -0
- package/dist/lib/puck/panel-fields.js +1 -0
- package/dist/lib/puck/panel-heading-scope.d.ts +8 -0
- package/dist/lib/puck/panel-heading-scope.js +1 -0
- package/dist/lib/puck/panel-no-control-mark.d.ts +2 -0
- package/dist/lib/puck/panel-no-control-mark.js +1 -0
- package/dist/lib/puck/part-anchors.d.ts +23 -0
- package/dist/lib/puck/part-anchors.js +1 -0
- package/dist/lib/puck/part-id.d.ts +1 -0
- package/dist/lib/puck/part-id.js +1 -0
- package/dist/lib/puck/part-inks.d.ts +9 -0
- package/dist/lib/puck/part-inks.js +1 -0
- package/dist/lib/puck/part-key.d.ts +9 -0
- package/dist/lib/puck/part-key.js +1 -0
- package/dist/lib/puck/part-row-field.d.ts +2 -0
- package/dist/lib/puck/part-row-field.js +1 -0
- package/dist/lib/puck/part-rows.d.ts +15 -0
- package/dist/lib/puck/part-rows.js +1 -0
- package/dist/lib/puck/part-styles.d.ts +133 -0
- package/dist/lib/puck/part-styles.js +2 -0
- package/dist/lib/puck/part-text.d.ts +12 -0
- package/dist/lib/puck/part-text.js +1 -0
- package/dist/lib/puck/part-typing.d.ts +11 -0
- package/dist/lib/puck/part-typing.js +1 -0
- package/dist/lib/puck/passes/catalogue-labels.d.ts +2 -0
- package/dist/lib/puck/passes/catalogue-labels.js +1 -0
- package/dist/lib/puck/passes/cell-width.d.ts +2 -0
- package/dist/lib/puck/passes/cell-width.js +1 -0
- package/dist/lib/puck/passes/clickable-parts.d.ts +2 -0
- package/dist/lib/puck/passes/clickable-parts.js +1 -0
- package/dist/lib/puck/passes/corners.d.ts +3 -0
- package/dist/lib/puck/passes/corners.js +1 -0
- package/dist/lib/puck/passes/document-position.d.ts +16 -0
- package/dist/lib/puck/passes/document-position.js +1 -0
- package/dist/lib/puck/passes/empty-headings.d.ts +2 -0
- package/dist/lib/puck/passes/empty-headings.js +1 -0
- package/dist/lib/puck/passes/hidden-nodes.d.ts +2 -0
- package/dist/lib/puck/passes/hidden-nodes.js +1 -0
- package/dist/lib/puck/passes/index.d.ts +5 -0
- package/dist/lib/puck/passes/index.js +1 -0
- package/dist/lib/puck/passes/inspector.d.ts +2 -0
- package/dist/lib/puck/passes/inspector.js +1 -0
- package/dist/lib/puck/passes/registry-context.d.ts +2 -0
- package/dist/lib/puck/passes/registry-context.js +1 -0
- package/dist/lib/puck/passes/section-anchor.d.ts +2 -0
- package/dist/lib/puck/passes/section-anchor.js +1 -0
- package/dist/lib/puck/passes/section-animation.d.ts +2 -0
- package/dist/lib/puck/passes/section-animation.js +1 -0
- package/dist/lib/puck/passes/section-height.d.ts +2 -0
- package/dist/lib/puck/passes/section-height.js +1 -0
- package/dist/lib/puck/passes/section-padding.d.ts +8 -0
- package/dist/lib/puck/passes/section-padding.js +1 -0
- package/dist/lib/puck/passes/section-theme.d.ts +3 -0
- package/dist/lib/puck/passes/section-theme.js +1 -0
- package/dist/lib/puck/passes/section-width.d.ts +10 -0
- package/dist/lib/puck/passes/section-width.js +1 -0
- package/dist/lib/puck/passes/settings-groups.d.ts +3 -0
- package/dist/lib/puck/passes/settings-groups.js +1 -0
- package/dist/lib/puck/passes/slot-rules.d.ts +4 -0
- package/dist/lib/puck/passes/slot-rules.js +1 -0
- package/dist/lib/puck/passes/types.d.ts +51 -0
- package/dist/lib/puck/passes/types.js +0 -0
- package/dist/lib/puck/phone-override.d.ts +4 -0
- package/dist/lib/puck/phone-override.js +1 -0
- package/dist/lib/puck/pinned-seed-gate.d.ts +7 -0
- package/dist/lib/puck/pinned-seed-gate.js +1 -0
- package/dist/lib/puck/preview-click.d.ts +1 -0
- package/dist/lib/puck/preview-click.js +1 -0
- package/dist/lib/puck/preview-dom.d.ts +1 -0
- package/dist/lib/puck/preview-dom.js +1 -0
- package/dist/lib/puck/preview-events.d.ts +2 -0
- package/dist/lib/puck/preview-events.js +1 -0
- package/dist/lib/puck/preview-selection-context.d.ts +2 -0
- package/dist/lib/puck/preview-selection-context.js +1 -0
- package/dist/lib/puck/registry.d.ts +3 -0
- package/dist/lib/puck/registry.js +1 -0
- package/dist/lib/puck/renamed-props.d.ts +2 -0
- package/dist/lib/puck/renamed-props.js +1 -0
- package/dist/lib/puck/sanitize.d.ts +1 -0
- package/dist/lib/puck/sanitize.js +1 -0
- package/dist/lib/puck/section-catalog.d.ts +36 -0
- package/dist/lib/puck/section-catalog.js +1 -0
- package/dist/lib/puck/section-descriptions.d.ts +1 -0
- package/dist/lib/puck/section-descriptions.js +1 -0
- package/dist/lib/puck/section-doc.d.ts +1 -0
- package/dist/lib/puck/section-doc.js +1 -0
- package/dist/lib/puck/section-groups.d.ts +21 -0
- package/dist/lib/puck/section-groups.js +1 -0
- package/dist/lib/puck/section-text-suppress.d.ts +9 -0
- package/dist/lib/puck/section-text-suppress.js +1 -0
- package/dist/lib/puck/site-gap-fields.d.ts +2 -0
- package/dist/lib/puck/site-gap-fields.js +1 -0
- package/dist/lib/puck/slider-typing.d.ts +9 -0
- package/dist/lib/puck/slider-typing.js +1 -0
- package/dist/lib/puck/slot-child-name.d.ts +2 -0
- package/dist/lib/puck/slot-child-name.js +1 -0
- package/dist/lib/puck/slot-heal.d.ts +1 -0
- package/dist/lib/puck/slot-heal.js +1 -0
- package/dist/lib/puck/slot-section-spec.d.ts +1 -0
- package/dist/lib/puck/slot-section-spec.js +0 -0
- package/dist/lib/puck/slot-specs.d.ts +9 -0
- package/dist/lib/puck/slot-specs.js +1 -0
- package/dist/lib/puck/snapshot-contracts.d.ts +4 -0
- package/dist/lib/puck/snapshot-contracts.js +1 -0
- package/dist/lib/puck/source-bound-parts.d.ts +12 -0
- package/dist/lib/puck/source-bound-parts.js +1 -0
- package/dist/lib/puck/style-clipboard.d.ts +1 -0
- package/dist/lib/puck/style-clipboard.js +1 -0
- package/dist/lib/puck/templateFields.d.ts +2 -0
- package/dist/lib/puck/templateFields.js +1 -0
- package/dist/lib/puck/text-control-kinds.d.ts +2 -0
- package/dist/lib/puck/text-control-kinds.js +1 -0
- package/dist/lib/puck/text-parts.d.ts +30 -0
- package/dist/lib/puck/text-parts.js +1 -0
- package/dist/lib/puck/theme-swatches.d.ts +3 -0
- package/dist/lib/puck/theme-swatches.js +1 -0
- package/dist/lib/puck/tree-reveal.d.ts +1 -0
- package/dist/lib/puck/tree-reveal.js +1 -0
- package/dist/lib/puck/use-section-ops.d.ts +2 -0
- package/dist/lib/puck/use-section-ops.js +1 -0
- package/dist/lib/reel.d.ts +33 -0
- package/dist/lib/reel.js +1 -0
- package/dist/lib/safe-storage.d.ts +10 -0
- package/dist/lib/safe-storage.js +1 -0
- package/dist/lib/save-as-template-action.d.ts +29 -0
- package/dist/lib/save-as-template-action.js +1 -0
- package/dist/lib/section-template-types.d.ts +1 -0
- package/dist/lib/section-template-types.js +0 -0
- package/dist/lib/sections/card-cover-index.d.ts +7 -0
- package/dist/lib/sections/card-cover-index.js +1 -0
- package/dist/lib/sections/collection-card-text-regions.d.ts +4 -0
- package/dist/lib/sections/collection-card-text-regions.js +1 -0
- package/dist/lib/sections/divider-style.d.ts +12 -0
- package/dist/lib/sections/divider-style.js +1 -0
- package/dist/lib/sections/faq-text-regions.d.ts +4 -0
- package/dist/lib/sections/faq-text-regions.js +1 -0
- package/dist/lib/sections/hero-overlay.d.ts +10 -0
- package/dist/lib/sections/hero-overlay.js +1 -0
- package/dist/lib/sections/intro-bleed-layout.d.ts +15 -0
- package/dist/lib/sections/intro-bleed-layout.js +1 -0
- package/dist/lib/sections/new-section-node.d.ts +2 -0
- package/dist/lib/sections/new-section-node.js +1 -0
- package/dist/lib/sections/product-card-style.d.ts +18 -0
- package/dist/lib/sections/product-card-style.js +1 -0
- package/dist/lib/sections/section-eyebrow-look.d.ts +11 -0
- package/dist/lib/sections/section-eyebrow-look.js +1 -0
- package/dist/lib/sections/section-head-placement.d.ts +31 -0
- package/dist/lib/sections/section-head-placement.js +1 -0
- package/dist/lib/sections/section-head-style.d.ts +16 -0
- package/dist/lib/sections/section-head-style.js +1 -0
- package/dist/lib/sections/section-number-style.d.ts +10 -0
- package/dist/lib/sections/section-number-style.js +1 -0
- package/dist/lib/sections/section-presets.d.ts +9 -0
- package/dist/lib/sections/section-presets.js +1 -0
- package/dist/lib/sections/section-text-kinds.d.ts +8 -0
- package/dist/lib/sections/section-text-kinds.js +1 -0
- package/dist/lib/sections/section-text-regions.d.ts +3 -0
- package/dist/lib/sections/section-text-regions.js +1 -0
- package/dist/lib/sections/spec-table-regions.d.ts +11 -0
- package/dist/lib/sections/spec-table-regions.js +1 -0
- package/dist/lib/sections/text-regions.d.ts +21 -0
- package/dist/lib/sections/text-regions.js +1 -0
- package/dist/lib/sections/ticker-join.d.ts +9 -0
- package/dist/lib/sections/ticker-join.js +1 -0
- package/dist/lib/sections/ticker-scroll.d.ts +11 -0
- package/dist/lib/sections/ticker-scroll.js +1 -0
- package/dist/lib/sections/ticker-style.d.ts +17 -0
- package/dist/lib/sections/ticker-style.js +1 -0
- package/dist/lib/site-runtime.d.ts +28 -0
- package/dist/lib/site-runtime.js +1 -0
- package/dist/lib/site-theme-row.d.ts +52 -0
- package/dist/lib/site-theme-row.js +0 -0
- package/dist/lib/slugify.d.ts +1 -0
- package/dist/lib/slugify.js +1 -0
- package/dist/lib/source-rules/accent-token-name.d.ts +20 -0
- package/dist/lib/source-rules/accent-token-name.js +4 -0
- package/dist/lib/source-rules/button-corners.d.ts +13 -0
- package/dist/lib/source-rules/button-corners.js +2 -0
- package/dist/lib/source-rules/editor-chrome-note.d.ts +16 -0
- package/dist/lib/source-rules/editor-chrome-note.js +13 -0
- package/dist/lib/source-rules/editor-context-menu.d.ts +5 -0
- package/dist/lib/source-rules/editor-context-menu.js +4 -0
- package/dist/lib/source-rules/editor-puck-drag-off.d.ts +8 -0
- package/dist/lib/source-rules/editor-puck-drag-off.js +4 -0
- package/dist/lib/source-rules/efficient-easel-version.d.ts +9 -0
- package/dist/lib/source-rules/efficient-easel-version.js +2 -0
- package/dist/lib/source-rules/every-button-follows-the-button-colour.d.ts +12 -0
- package/dist/lib/source-rules/every-button-follows-the-button-colour.js +7 -0
- package/dist/lib/source-rules/flat-theme-palette.d.ts +10 -0
- package/dist/lib/source-rules/flat-theme-palette.js +8 -0
- package/dist/lib/source-rules/full-width-means-full.d.ts +8 -0
- package/dist/lib/source-rules/full-width-means-full.js +2 -0
- package/dist/lib/source-rules/heading-ceiling-sweep.d.ts +11 -0
- package/dist/lib/source-rules/heading-ceiling-sweep.js +8 -0
- package/dist/lib/source-rules/label-hints.d.ts +7 -0
- package/dist/lib/source-rules/label-hints.js +5 -0
- package/dist/lib/source-rules/label-vocabulary.d.ts +14 -0
- package/dist/lib/source-rules/label-vocabulary.js +5 -0
- package/dist/lib/source-rules/mirrored-rows-agree.d.ts +19 -0
- package/dist/lib/source-rules/mirrored-rows-agree.js +10 -0
- package/dist/lib/source-rules/no-comment-in-jsx.d.ts +9 -0
- package/dist/lib/source-rules/no-comment-in-jsx.js +7 -0
- package/dist/lib/source-rules/no-glyph-rows.d.ts +15 -0
- package/dist/lib/source-rules/no-glyph-rows.js +4 -0
- package/dist/lib/source-rules/one-colour-control.d.ts +7 -0
- package/dist/lib/source-rules/one-colour-control.js +2 -0
- package/dist/lib/source-rules/one-dropdown.d.ts +10 -0
- package/dist/lib/source-rules/one-dropdown.js +4 -0
- package/dist/lib/source-rules/one-editable-list.d.ts +16 -0
- package/dist/lib/source-rules/one-editable-list.js +6 -0
- package/dist/lib/source-rules/one-editor-list.d.ts +7 -0
- package/dist/lib/source-rules/one-editor-list.js +3 -0
- package/dist/lib/source-rules/one-right-click.d.ts +10 -0
- package/dist/lib/source-rules/one-right-click.js +2 -0
- package/dist/lib/source-rules/one-switch.d.ts +9 -0
- package/dist/lib/source-rules/one-switch.js +7 -0
- package/dist/lib/source-rules/one-up-level-link.d.ts +16 -0
- package/dist/lib/source-rules/one-up-level-link.js +18 -0
- package/dist/lib/source-rules/panel-colour-tokens.d.ts +48 -0
- package/dist/lib/source-rules/panel-colour-tokens.js +20 -0
- package/dist/lib/source-rules/panel-no-divider-lines.d.ts +14 -0
- package/dist/lib/source-rules/panel-no-divider-lines.js +10 -0
- package/dist/lib/source-rules/panel-one-arrow.d.ts +21 -0
- package/dist/lib/source-rules/panel-one-arrow.js +1 -0
- package/dist/lib/source-rules/panel-one-hover.d.ts +8 -0
- package/dist/lib/source-rules/panel-one-hover.js +2 -0
- package/dist/lib/source-rules/panel-rows-use-the-shared-row.d.ts +23 -0
- package/dist/lib/source-rules/panel-rows-use-the-shared-row.js +22 -0
- package/dist/lib/source-rules/part-slider-fills-row.d.ts +11 -0
- package/dist/lib/source-rules/part-slider-fills-row.js +29 -0
- package/dist/lib/source-rules/part-style-naming.d.ts +10 -0
- package/dist/lib/source-rules/part-style-naming.js +2 -0
- package/dist/lib/source-rules/puck-document-surfaces.d.ts +16 -0
- package/dist/lib/source-rules/puck-document-surfaces.js +8 -0
- package/dist/lib/source-rules/reduced-motion.d.ts +26 -0
- package/dist/lib/source-rules/reduced-motion.js +9 -0
- package/dist/lib/source-rules/route-content-width.d.ts +22 -0
- package/dist/lib/source-rules/route-content-width.js +5 -0
- package/dist/lib/source-rules/rule.d.ts +21 -0
- package/dist/lib/source-rules/rule.js +1 -0
- package/dist/lib/source-rules/section-theme-preview.d.ts +9 -0
- package/dist/lib/source-rules/section-theme-preview.js +8 -0
- package/dist/lib/source-rules/site-gutter.d.ts +6 -0
- package/dist/lib/source-rules/site-gutter.js +4 -0
- package/dist/lib/source-rules/site-square-by-default.d.ts +17 -0
- package/dist/lib/source-rules/site-square-by-default.js +3 -0
- package/dist/lib/source-rules/site-width.d.ts +11 -0
- package/dist/lib/source-rules/site-width.js +7 -0
- package/dist/lib/source-rules/size-token-paints.d.ts +8 -0
- package/dist/lib/source-rules/size-token-paints.js +11 -0
- package/dist/lib/source-rules/social-icons-import.d.ts +6 -0
- package/dist/lib/source-rules/social-icons-import.js +6 -0
- package/dist/lib/source-rules/source-status-is-shared.d.ts +7 -0
- package/dist/lib/source-rules/source-status-is-shared.js +1 -0
- package/dist/lib/source-rules/style-face-matches-size.d.ts +10 -0
- package/dist/lib/source-rules/style-face-matches-size.js +4 -0
- package/dist/lib/source-rules/support/accent-rename-bytes.d.ts +5 -0
- package/dist/lib/source-rules/support/accent-rename-bytes.js +1 -0
- package/dist/lib/source-rules/support/css-box-model.d.ts +5 -0
- package/dist/lib/source-rules/support/css-box-model.js +1 -0
- package/dist/lib/source-rules/support/css-length.d.ts +2 -0
- package/dist/lib/source-rules/support/css-length.js +1 -0
- package/dist/lib/source-rules/support/css-rules.d.ts +12 -0
- package/dist/lib/source-rules/support/css-rules.js +1 -0
- package/dist/lib/source-rules/support/css-source.d.ts +2 -0
- package/dist/lib/source-rules/support/css-source.js +3 -0
- package/dist/lib/source-rules/support/label-extraction.d.ts +14 -0
- package/dist/lib/source-rules/support/label-extraction.js +5 -0
- package/dist/lib/source-rules/support/panel-select-cascade.d.ts +72 -0
- package/dist/lib/source-rules/support/panel-select-cascade.js +2 -0
- package/dist/lib/source-rules/support/part-slider-call-sites.d.ts +9 -0
- package/dist/lib/source-rules/support/part-slider-call-sites.js +17 -0
- package/dist/lib/source-rules/support/registry-source.d.ts +14 -0
- package/dist/lib/source-rules/support/registry-source.js +3 -0
- package/dist/lib/source-rules/support/ts-source.d.ts +2 -0
- package/dist/lib/source-rules/support/ts-source.js +3 -0
- package/dist/lib/source-rules/theme-mode-controls-gone.d.ts +10 -0
- package/dist/lib/source-rules/theme-mode-controls-gone.js +5 -0
- package/dist/lib/source-rules/upload-intake-guard.d.ts +11 -0
- package/dist/lib/source-rules/upload-intake-guard.js +6 -0
- package/dist/lib/source-rules/word-styles.d.ts +8 -0
- package/dist/lib/source-rules/word-styles.js +4 -0
- package/dist/lib/theme-dom.d.ts +14 -0
- package/dist/lib/theme-dom.js +1 -0
- package/dist/lib/theme-row-persist.d.ts +34 -0
- package/dist/lib/theme-row-persist.js +1 -0
- package/dist/lib/theme-save-message.d.ts +6 -0
- package/dist/lib/theme-save-message.js +1 -0
- package/dist/lib/theme.d.ts +177 -0
- package/dist/lib/theme.js +18 -0
- package/dist/lib/use-host-products.d.ts +2 -0
- package/dist/lib/use-host-products.js +1 -0
- package/dist/lib/web-backend.d.ts +138 -0
- package/dist/lib/web-backend.js +1 -0
- package/dist/lib/web-runtime.d.ts +7 -0
- package/dist/lib/web-runtime.js +1 -0
- package/dist/lib/website-document-addressing.d.ts +2 -0
- package/dist/lib/website-document-addressing.js +1 -0
- package/dist/lib/website-host-inbound.d.ts +1 -0
- package/dist/lib/website-host-inbound.js +1 -0
- package/dist/lib/website-session.d.ts +5 -0
- package/dist/lib/website-session.js +1 -0
- package/dist/lib/word-styles.d.ts +54 -0
- package/dist/lib/word-styles.js +1 -0
- package/package.json +50 -36
- package/dist/chunks/EditorPreviewCheckout-5KOAA2SK.js +0 -4
- package/dist/chunks/PreviewFooter-H6XJUR5S.js +0 -1
- package/dist/chunks/SectionEditorShell-EEZR7KFE.js +0 -1
- package/dist/chunks/SiteEditorProvider-ECGZVKLG.js +0 -1
- package/dist/chunks/StorefrontEditorChrome-4TFS62GY.js +0 -1
- package/dist/chunks/chunk-6CP4D6VJ.js +0 -1
- package/dist/chunks/chunk-7QXLVNFD.js +0 -1
- package/dist/chunks/chunk-BJOS4Y35.js +0 -15
- package/dist/chunks/chunk-BJOS4Y35.js.LEGAL.txt +0 -27
- package/dist/chunks/chunk-EIXUXJQ5.js +0 -153
- package/dist/chunks/chunk-EIXUXJQ5.js.LEGAL.txt +0 -4
- package/dist/chunks/chunk-H7O6ZYX6.js +0 -1
- package/dist/chunks/chunk-HVOO2GNE.js +0 -1
- package/dist/chunks/chunk-IFRGL3GL.js +0 -1
- package/dist/chunks/chunk-ML2AR222.js +0 -1
- package/dist/chunks/chunk-RRHBLOH4.js +0 -1
- package/dist/chunks/chunk-S6SXIMIG.js +0 -2
- package/dist/chunks/chunk-SNH7IFTZ.js +0 -1
- package/dist/chunks/chunk-Y4CZD2YY.js +0 -230
- package/dist/chunks/chunk-Y6SLVHK3.js +0 -1
- package/dist/chunks/chunk-YVQUISDX.js +0 -1
- package/dist/chunks/fitment-data-6NXSKODX.js +0 -1
- package/dist/chunks/gallery-builds-data-SWA6XKFF.js +0 -1
- package/dist/chunks/headers-3CAQXQEY.js +0 -1
- package/dist/chunks/render-client-YGYDU3K2.js +0 -1
- package/dist/contract.d.ts +0 -48
- package/dist/contract.js +0 -1
- package/dist/editor.css +0 -1
- package/dist/index.d.ts +0 -721
- package/dist/index.js +0 -11058
- package/dist/links.d.ts +0 -86
- package/dist/links.js +0 -1
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type RuleReport, type SourceFile } from "./rule.js";
|
|
2
|
+
export type StyleFaceMatchesSizeOptions = {
|
|
3
|
+
readonly drawRoots: readonly string[];
|
|
4
|
+
readonly themeSheet?: string;
|
|
5
|
+
readonly accentMarkup?: readonly string[];
|
|
6
|
+
readonly fontStore?: string;
|
|
7
|
+
readonly minFiles: number;
|
|
8
|
+
readonly pairFloor: number;
|
|
9
|
+
};
|
|
10
|
+
export declare function styleFaceMatchesSize(files: readonly SourceFile[], options: StyleFaceMatchesSizeOptions): RuleReport;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import{ruleChecks as m}from"./rule.js";const u={"font-display":"headingLarge","font-heading2":"headingMedium","font-heading3":"headingSmall","font-serif":"accent","font-body":"body","font-mono":"label"};function p(i){const n=/(?<![-\w:])((?:[a-z0-9-]+(?:-\[[^\]]*\])?:)*)text-\[length:[^"'`]*?--size-(headingLarge|headingMedium|headingSmall|accent|body|label)\b/g,t=new Set;for(const o of i.matchAll(n))o[1]===""&&t.add(o[2]);return t.size===1?[...t][0]:null}function $(i){const n=/(?<![-\w])((?:[a-z0-9-]+(?:-\[[^\]]*\])?:)*)(font-display|font-heading2|font-heading3|font-serif|font-body|font-mono)(?![-\w])/g,t=new Set;for(const o of i.matchAll(n))o[1].includes("&")||t.add(o[2]);return[...t]}function f(i){const n=p(i);if(!n)return null;const t=$(i);return t.length===1?{step:n,face:t[0]}:null}const w=i=>i.replace(/\/\*[\s\S]*?\*\//g,"").replace(/^\s*\/\/.*$/gm,"");function S(i,n){const{check:t,report:o}=m("style face matches size"),d=e=>i.find(s=>s.path===e)?.text;{const e=r=>`text-[length:var(--size-${r},44px)]`,s=r=>JSON.stringify(f(r));t("a face and a base size are read as a pair",s(`"font-display ${e("headingMedium")}"`)==='{"step":"headingMedium","face":"font-display"}'),t("\u2026a size inside a variant is not the base",f(`"font-heading2 max-[800px]:${e("headingSmall")}"`)===null),t("\u2026the base wins over a variant on the same line",s(`"font-heading3 ${e("headingSmall")} md:${e("headingMedium")}"`)==='{"step":"headingSmall","face":"font-heading3"}'),t("\u2026a face behind a variant naming `&` is a descendant's, not this element's",f(`"group-[&_em]:font-serif ${e("headingLarge")}"`)===null),t("\u2026while a bare `[&_em]:` face is still read as this element's (the reader as it shipped)",s(`"[&_em]:font-serif ${e("accent")}"`)==='{"step":"accent","face":"font-serif"}'),t("\u2026and two faces on one line are left to a reader",f(`"font-display font-mono ${e("label")}"`)===null)}const l=i.filter(e=>/\.tsx?$/.test(e.path)&&n.drawRoots.some(s=>e.path.startsWith(s)));t(`read the drawing roots ${n.drawRoots.join(", ")} (${l.length} TS/TSX files, at least ${n.minFiles})`,l.length>=n.minFiles,"fewer means the walk broke, and the sweep below is vacuous");let h=0;const g=[];for(const e of l)e.text.split(`
|
|
2
|
+
`).forEach((s,r)=>{const a=f(s);if(!a||(h+=1,a.step==="body"))return;const c=u[a.face];c!==a.step&&g.push(`${e.path}:${r+1} \u2014 size says ${a.step}, face says ${a.face} (${c})`)});if(t(`found >= ${n.pairFloor} lines naming one face and one size (found ${h})`,h>=n.pairFloor,"fewer means the reader broke"),t("\xA73 no text takes its face from one style row and its size from another",g.length===0,`these lines name one style for their size and another for their face, so the merchant cannot fix the text from one row:
|
|
3
|
+
`+g.join(`
|
|
4
|
+
`)),n.themeSheet){const e=d(n.themeSheet)??"";if(t(`read the site stylesheet ${n.themeSheet}`,e.length>0)){for(const a of["2","3"])t(`\xA71 --font-heading${a} exists and resolves --font-role-heading${a}`,new RegExp(`--font-heading${a}:\\s*var\\(--font-role-heading${a}\\)`).test(e),`without it a section cannot DRAW the face Site styles \u25B8 Heading ${a} sets, and that Font control moves zero pixels again`);const s=e.slice(e.indexOf("@theme inline"));for(const a of["2","3"]){const c=s.match(new RegExp(`--font-heading${a}:[^;]*;`))?.[0]??"";t(`\xA72 \u2026and in @theme inline --font-heading${a} points at its OWN role, never back at Heading 1`,c.includes(`--font-role-heading${a}`),`\`--font-heading${a}\` resolves ${c.trim()||"nothing"}`)}t("\xA74 the Accent size is read, in CSS (`em.text-accent` sets var(--size-accent, inherit))",/em\.text-accent\s*\{[^}]*font-size:\s*var\(--size-accent,\s*inherit\)/.test(e.replace(/\/\*[\s\S]*?\*\//g,"")),"the `em.text-accent` rule is gone, so Site styles \u25B8 Accent \u25B8 Size is a dead control again"),t("\xA74 \u2026and it falls back to `inherit`, never a number",!/--size-accent,\s*\d/.test(e));const r=e.slice(e.indexOf(":root"),e.indexOf("@theme inline"));for(const a of["2","3"])t(`\xA75 :root defaults --font-role-heading${a} to Heading 1's face, so the swap is invisible until a face is chosen`,new RegExp(`--font-role-heading${a}:\\s*var\\(--font-role-heading\\)`).test(r),"every site that has never opened that row would change typeface")}}for(const e of n.accentMarkup??[]){const s=d(e);t(`\xA74 ${e} does not set the accent size in the MARKUP`,s!==void 0&&!w(s).includes("--size-accent"),s===void 0?"it is not among the files handed in":"that moves 900 published strings for a size `em.text-accent` already delivers")}if(n.fontStore){const e=d(n.fontStore)??"",s=e.slice(e.indexOf("const pick ="),e.indexOf("// DERIVED from FONT_ROLES"));t(`\xA75 ${n.fontStore}'s normalizeFonts falls Heading 2 and Heading 3 back to Heading 1`,/role === "heading2" \|\| role === "heading3"/.test(s),"a site that chose Oswald for its headings would get two Space Grotesk ones")}return o()}export{S as styleFaceMatchesSize};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const UTILITY_ROOTS: readonly string[];
|
|
2
|
+
export declare const rootsLongestFirst: () => string[];
|
|
3
|
+
export declare function asPreAccentRename(html: string): string;
|
|
4
|
+
export declare function asPreButtonToken(html: string): string;
|
|
5
|
+
export declare function asPreTokenRenames(html: string): string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const o=["bg","text","border","border-t","border-r","border-b","border-l","border-x","border-y","outline","ring","ring-offset","fill","stroke","from","via","to","accent","caret","decoration","divide","shadow","placeholder"],n=()=>[...o].sort((t,r)=>r.length-t.length),e=new RegExp(String.raw`(?<![a-z0-9-])`+String.raw`((?:[a-z0-9@_.\-\[\]\/]+:)*(?:${n().join("|")}))`+String.raw`-accent(-2)?`+String.raw`((?:\/(?:\d{1,3}|\[[^\]\s]*\]))?)`+String.raw`(?![a-z0-9-])`,"g");function c(t){return t.split("--color-accent").join("--color-gold").split("--accent").join("--gold").replace(e,"$1-gold$2$3")}const i=new RegExp(String.raw`(?<![a-z0-9-])`+String.raw`((?:[a-z0-9@_.\-\[\]\/]+:)*(?:${n().join("|")}))`+String.raw`-btn(-2)?`+String.raw`((?:\/(?:\d{1,3}|\[[^\]\s]*\]))?)`+String.raw`(?![a-z0-9-])`,"g"),a=new RegExp(String.raw`(?<![a-z0-9-])((?:[a-z0-9@_.\-\[\]\/]+:)*)text-btn-ink(?![a-z0-9-])`,"g");function l(t){return t.split("--color-btn-ink").join("--color-accent-ink").split("--color-btn-2").join("--color-accent-2").split("--color-btn").join("--color-accent").split("--btn-ink").join("--accent-ink").split("--btn-2").join("--accent-2").split("--btn").join("--accent").replace(a,"$1text-bg").replace(i,"$1-accent$2$3")}function g(t){return c(l(t))}export{o as UTILITY_ROOTS,c as asPreAccentRename,l as asPreButtonToken,g as asPreTokenRenames,n as rootsLongestFirst};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{stripCommentsAndStrings as f}from"./css-source.js";const l=new Map;function u(t){const o=l.get(t);if(o)return o;const p=f(t),e=[],a=/([^{}]+)\{([^{}]*)\}/g;let n;for(;n=a.exec(p);){const s=n[1].trim().replace(/\s+/g," ");if(!s||s.startsWith("@"))continue;const c=new Map;for(const r of n[2].split(";")){const i=r.indexOf(":");i<0||c.set(r.slice(0,i).trim(),r.slice(i+1).trim())}e.push({selector:s,declarations:c})}return l.set(t,e),e}export{u as parseRules};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function d(r,u){let e=r;for(let o=0;o<32;o++){const i=e.lastIndexOf("var(");if(i===-1)return e;let l=0,a=-1;for(let c=i+3;c<e.length;c++)if(e[c]==="(")l++;else if(e[c]===")"&&(l--,l===0)){a=c;break}if(a===-1)throw new Error(`unbalanced var() in: ${r}`);const n=e.slice(i+4,a),t=n.indexOf(","),s=(t===-1?n:n.slice(0,t)).trim(),m=t===-1?"":n.slice(t+1).trim(),f=u[s]??m;if(!f)throw new Error(`var ${s} unset with no fallback in: ${r}`);e=e.slice(0,i)+f+e.slice(a+1)}throw new Error(`var() resolution did not converge: ${r}`)}function h(r,u,e={}){const o=d(r,e).replace(/([\d.]+)rem/g,(n,t)=>`(${Number(t)*16})`).replace(/([\d.]+)px/g,"($1)").replace(/([\d.]+)vw/g,`($1*${u}/100)`);if(!/^[\d\s+*/().,a-z-]+$/i.test(o))throw new Error(`unexpected chars: ${o}`);const a=new Function("calc","min","max","clamp",`return (${o});`)(n=>n,Math.min,Math.max,(n,t,s)=>Math.max(n,Math.min(t,s)));if(!Number.isFinite(a))throw new Error(`did not evaluate to a number: ${r}`);return Math.round(a*100)/100}export{h as evalLength,d as resolveVars};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export type Rule = {
|
|
2
|
+
media: string | null;
|
|
3
|
+
selector: string;
|
|
4
|
+
decls: string;
|
|
5
|
+
};
|
|
6
|
+
export declare function blockEnd(src: string, open: number): number;
|
|
7
|
+
export declare function readRules(src: string, media?: string | null, out?: Rule[], selector?: string | null): Rule[];
|
|
8
|
+
export declare function andMedia(outer: string | null, inner: string): string;
|
|
9
|
+
export declare function ownDeclarations(body: string): string;
|
|
10
|
+
export declare function mediaApplies(media: string | null, width: number): boolean;
|
|
11
|
+
export declare function declFor(rules: Rule[], selector: string, prop: string, width: number): string | null;
|
|
12
|
+
export declare function declForClasses(rules: Rule[], classes: readonly string[], prop: string, width: number): string | null;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function m(e,n){let t=0;for(let i=n;i<e.length;i+=1)if(e[i]==="{")t+=1;else if(e[i]==="}"&&(t-=1,t===0))return i;return e.length}function p(e,n=null,t=[],i=null){if(i!==null){const s=g(e);s.trim()&&t.push({media:n,selector:i,decls:s})}let r=0;for(;r<e.length;){const s=e.indexOf("{",r);if(s===-1)break;const o=m(e,s);let c=r;for(let u=s;u>r;u-=1)if(";}".includes(e[u-1])){c=u;break}const l=e.slice(c,s).trim(),f=e.slice(s+1,o);l.startsWith("@media")?p(f,h(n,l),t,i):l.startsWith("@")?p(f,n,t,i):l&&p(f,n,t,l),r=o+1}return t}function h(e,n){const t=n.replace(/^@media\s*/,"").trim();return e===null?`@media ${t}`:`${e} and ${t}`}function g(e){let n="",t=0;for(;t<e.length;){const i=e.indexOf("{",t);if(i===-1){n+=e.slice(t);break}let r=i;for(;r>t&&!";}".includes(e[r-1]);)r-=1;n+=e.slice(t,r),t=m(e,i)+1}return n}function d(e,n){if(!e)return!0;const i=e.replace(/^@media\s*/,"").trim().split(/\s+and\s+/).map(r=>r.trim());for(const r of i){const s=/^\(\s*max-width:\s*([\d.]+)(px|rem)\s*\)$/.exec(r),o=/^\(\s*min-width:\s*([\d.]+)(px|rem)\s*\)$/.exec(r),c=/^\(\s*width\s*(<=|>=|<|>)\s*([\d.]+)(px|rem)\s*\)$/.exec(r),l=/^\(\s*([\d.]+)(px|rem)\s*(<=|>=|<|>)\s*width\s*\)$/.exec(r);if(s){if(n>a(s[1],s[2]))return!1}else if(o){if(n<a(o[1],o[2]))return!1}else if(c){if(!x(n,c[1],a(c[2],c[3])))return!1}else if(l){const f={"<":">",">":"<","<=":">=",">=":"<="}[l[3]];if(!x(n,f,a(l[1],l[2])))return!1}else return!1}return!0}const $=16;function a(e,n){return n==="rem"?Number(e)*$:Number(e)}function x(e,n,t){return n==="<"?e<t:n==="<="?e<=t:n===">"?e>t:e>=t}function w(e,n,t,i){let r=null;for(const s of e){if(!d(s.media,i)||!s.selector.split(",").map(f=>f.trim()).includes(n))continue;const c=new RegExp(`(?:^|;)\\s*${t}\\s*:\\s*([^;]+)`,"g");let l;for(;(l=c.exec(s.decls))!==null;)r=l[1].trim()}return r}function O(e,n,t,i){const r=new Set(n.map(o=>`.${o}`));let s=null;for(const o of e){if(!d(o.media,i)||!o.selector.split(/(?<!\\),/).map(u=>u.trim().replace(/\\/g,"")).some(u=>r.has(u)))continue;const l=new RegExp(`(?:^|;)\\s*${t}\\s*:\\s*([^;]+)`,"g");let f;for(;(f=l.exec(o.decls))!==null;)s=f[1].trim()}return s}export{h as andMedia,m as blockEnd,w as declFor,O as declForClasses,d as mediaApplies,g as ownDeclarations,p as readRules};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
function l(t,u){let e="",n=0;for(;n<t.length;){const i=t[n];if(i==="/"&&t[n+1]==="*"){const o=t.indexOf("*/",n+2),r=o<0?t.length:o+2;e+=t.slice(n,r).replace(/[^\n]/g," "),n=r;continue}if((i==='"'||i==="'")&&!u){const o=i;for(e+=" ",n++;n<t.length&&t[n]!==o;)e+=t[n]===`
|
|
2
|
+
`?`
|
|
3
|
+
`:" ",t[n]==="\\"&&(n++,n<t.length&&(e+=" ")),n++;e+=" ",n++;continue}e+=i,n++}return e}function f(t){return l(t,!1)}function h(t){return l(t,!0)}export{h as stripComments,f as stripCommentsAndStrings};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { SourceFile } from "../rule.js";
|
|
2
|
+
export declare const BUILDERS: string[];
|
|
3
|
+
export type FieldLabel = {
|
|
4
|
+
line: number;
|
|
5
|
+
label: string;
|
|
6
|
+
item: boolean;
|
|
7
|
+
builder?: string;
|
|
8
|
+
};
|
|
9
|
+
export declare function readLabels(src: string): FieldLabel[];
|
|
10
|
+
export declare function readRowLabels(src: string): FieldLabel[];
|
|
11
|
+
export declare const JSX_LABEL: RegExp;
|
|
12
|
+
export declare function readJsxLabels(src: string): FieldLabel[];
|
|
13
|
+
export declare function isPanelFile(file: SourceFile): boolean;
|
|
14
|
+
export declare function readPanelLabels(src: string): FieldLabel[];
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
const m=["text","textarea","plainText","copyText","plainTextarea","linkField","textList","upload","toggle","checkbox","select","searchSelect","segmented","slider","colorInput","focalPicker","sizeField","backgroundField","multiSelect"];function A(e){const t=e.split(`
|
|
2
|
+
`),n=new RegExp(`(?<![A-Za-z0-9_.$])(${m.join("|")})\\("((?:[^"\\\\]|\\\\.)*)"`,"g"),l=/label:\s*"((?:[^"\\]|\\.)*)"/g,i=new RegExp(`(?<![A-Za-z0-9_.$])(${m.join("|")})\\(\\s*$`),o=/^\s*"((?:[^"\\]|\\.)*)"\s*,/,r=[];let c=0,h=0;const f=[];return t.forEach((a,u)=>{const d=u+1,b=h>0;for(const s of a.matchAll(n))r.push({line:d,label:s[2],item:b,builder:s[1]});const g=i.exec(a);if(g){let s=u+1;for(;s<t.length&&t[s].trim()==="";)s+=1;const p=s<t.length?o.exec(t[s]):null;p&&r.push({line:s+1,label:p[1],item:b,builder:g[1]})}for(const s of a.matchAll(l)){const p=a.slice(0,s.index??0),x=u>0?t[u-1].trim():"";(/type:\s*"/.test(p)||/type:\s*"[a-z]+"\s*,?$/.test(x))&&r.push({line:d,label:s[1],item:b})}for(let s=0;s<a.length;s+=1)a[s]==="{"?(/arrayFields:\s*$/.test(a.slice(0,s))&&(f.push(c),h+=1),c+=1):a[s]==="}"&&(c-=1,f.length&&c===f[f.length-1]&&(f.pop(),h-=1))}),r}function L(e,t){let n=0,l=-1;for(let o=t-1;o>=0;o-=1){const r=e[o];if(r==="}")n+=1;else if(r==="{"){if(n===0){l=o;break}n-=1}}if(l<0)return"";let i=0;for(let o=l;o<e.length;o+=1)if(e[o]==="{")i+=1;else if(e[o]==="}"&&(i-=1,i===0))return e.slice(l,o+1);return e.slice(l)}function $(e){let t=0,n="";for(const l of e){if(l==="{"||l==="["){t+=1;continue}if(l==="}"||l==="]"){t-=1;continue}t===1&&(n+=l)}return n}function w(e,t){const n=$(L(e,t));return/(^|[,;])\s*(value|fields|render|resolveFields|panelId|href|amount|meta)\s*:/.test(n)}function y(e){const t=e.split(`
|
|
3
|
+
`),n=[];for(let o=0,r=0;o<t.length;o+=1)n.push(r),r+=t[o].length+1;const l=/label:\s*"((?:[^"\\]|\\.)*)"/g,i=[];return t.forEach((o,r)=>{for(const c of o.matchAll(l))w(e,n[r]+(c.index??0))||i.push({line:r+1,label:c[1],item:!1})}),i}const F=/(?<![-A-Za-z])label="((?:[^"\\]|\\.)*)"/g;function E(e){const t=[];return e.split(`
|
|
4
|
+
`).forEach((n,l)=>{for(const i of n.matchAll(F))t.push({line:l+1,label:i[1],item:!1})}),t}const j=/className="sf-field"|from\s*["']efficient-easel/;function S(e){return e.path.startsWith("components/")&&e.path.endsWith(".tsx")&&j.test(e.text)}const k=6;function O(e,t){for(let n=t;n<Math.min(e.length,t+k);n+=1){if(/^\s*\}[,)]?\s*$/.test(e[n])&&n>t)return!1;if(/\bonClick:/.test(e[n]))return!0}return!1}function N(e){const t=new Set,n=e.split(`
|
|
5
|
+
`);return[...A(e),...y(e),...E(e)].filter(l=>{const i=`${l.line}:${l.label}`;return t.has(i)?!1:(t.add(i),!O(n,l.line-1))})}export{m as BUILDERS,F as JSX_LABEL,S as isPanelFile,E as readJsxLabels,A as readLabels,N as readPanelLabels,y as readRowLabels};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import type * as TS from "typescript";
|
|
2
|
+
import type { SourceFile } from "../rule.js";
|
|
3
|
+
import type { Rule } from "./css-rules.js";
|
|
4
|
+
export declare function importsOf(ts: typeof TS, file: SourceFile): string[];
|
|
5
|
+
export type PanelSelect = {
|
|
6
|
+
file: string;
|
|
7
|
+
line: number;
|
|
8
|
+
kind: string;
|
|
9
|
+
engineDrawn: boolean;
|
|
10
|
+
classes: string[];
|
|
11
|
+
};
|
|
12
|
+
export type SelectHelper = {
|
|
13
|
+
readonly file: string;
|
|
14
|
+
readonly modules?: readonly string[];
|
|
15
|
+
};
|
|
16
|
+
export declare function census(ts: typeof TS, files: readonly SourceFile[], helper: SelectHelper): {
|
|
17
|
+
population: PanelSelect[];
|
|
18
|
+
helperDeclared: boolean;
|
|
19
|
+
};
|
|
20
|
+
export type Shape = {
|
|
21
|
+
name: string;
|
|
22
|
+
own: string[];
|
|
23
|
+
ancestors: string[];
|
|
24
|
+
rows: number;
|
|
25
|
+
};
|
|
26
|
+
export type Spec = [number, number, number];
|
|
27
|
+
export declare const specCmp: (a: Spec, b: Spec) => number;
|
|
28
|
+
export declare const specStr: (s: Spec) => string;
|
|
29
|
+
export type State = "rest" | "hover";
|
|
30
|
+
export declare function splitDecls(body: string): {
|
|
31
|
+
prop: string;
|
|
32
|
+
value: string;
|
|
33
|
+
}[];
|
|
34
|
+
export declare function splitCombinators(sel: string): string[];
|
|
35
|
+
export type Compound = {
|
|
36
|
+
type: string | null;
|
|
37
|
+
classes: string[];
|
|
38
|
+
needsState: string[];
|
|
39
|
+
};
|
|
40
|
+
export declare function compound(src: string): Compound | null;
|
|
41
|
+
export declare const specOf: (parts: Compound[]) => Spec;
|
|
42
|
+
export declare function mediaHolds(cond: string | null): boolean | null;
|
|
43
|
+
export declare const mediaLabel: (cond: string | null) => string;
|
|
44
|
+
export type Applied = {
|
|
45
|
+
spec: Spec;
|
|
46
|
+
order: number;
|
|
47
|
+
decls: string;
|
|
48
|
+
selector: string;
|
|
49
|
+
sheet: string;
|
|
50
|
+
};
|
|
51
|
+
export type Undecided = {
|
|
52
|
+
sheet: string;
|
|
53
|
+
selector: string;
|
|
54
|
+
media: string;
|
|
55
|
+
decls: string;
|
|
56
|
+
};
|
|
57
|
+
export declare function applicable(rules: Rule[], shape: Shape, sheet: string, base: number, state?: State): {
|
|
58
|
+
applied: Applied[];
|
|
59
|
+
unreadable: string[];
|
|
60
|
+
undecided: Undecided[];
|
|
61
|
+
};
|
|
62
|
+
export declare const INITIAL: Record<string, string>;
|
|
63
|
+
export declare function colorIn(value: string): string | null;
|
|
64
|
+
export declare function readVars(css: string): Map<string, string>;
|
|
65
|
+
export declare function derefVars(value: string, vars: Map<string, string>, depth?: number): string;
|
|
66
|
+
export declare function resolve(applied: Applied[], prop: string, vars?: Map<string, string>): {
|
|
67
|
+
value: string;
|
|
68
|
+
from: string;
|
|
69
|
+
};
|
|
70
|
+
export declare const ANCESTORS: string[];
|
|
71
|
+
export declare function deriveShapes(population: PanelSelect[], panelCss: string): Shape[];
|
|
72
|
+
export declare function chainInMarkup(ts: typeof TS, files: readonly SourceFile[], chain: string[]): Map<string, string[]>;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
function N(t,i){const r=t.createSourceFile(i.path,i.text,t.ScriptTarget.Latest,!0),s=[],n=o=>{(t.isImportDeclaration(o)||t.isExportDeclaration(o))&&o.moduleSpecifier&&t.isStringLiteral(o.moduleSpecifier)&&s.push(o.moduleSpecifier.text),t.isCallExpression(o)&&(o.expression.kind===t.SyntaxKind.ImportKeyword||t.isIdentifier(o.expression)&&o.expression.text==="require")&&o.arguments.length>0&&t.isStringLiteral(o.arguments[0])&&s.push(o.arguments[0].text),o.forEachChild(n)};return n(r),s}const k=t=>/\.(tsx?|mts)$/.test(t)&&!t.endsWith(".d.ts");function L(t,i){const r=new Map,s=new Set(["/"]);for(const e of i){if(!k(e.path))continue;r.set(`/${e.path}`,e.text);const c=e.path.split("/");for(let u=1;u<c.length;u++)s.add(`/${c.slice(0,u).join("/")}`)}const n={noLib:!0,types:[],noEmit:!0,jsx:t.JsxEmit.Preserve,target:t.ScriptTarget.ESNext,module:t.ModuleKind.ESNext,moduleResolution:t.ModuleResolutionKind.Bundler,baseUrl:"/",paths:{"@/*":["./*"]}},o={fileExists:e=>r.has(e),readFile:e=>r.get(e),directoryExists:e=>s.has(e.replace(/\/+$/,"")||"/"),getDirectories:()=>[],realpath:e=>e,getSourceFile:(e,c)=>{const u=r.get(e);return u===void 0?void 0:t.createSourceFile(e,u,c,!0)},getDefaultLibFileName:()=>"/lib.d.ts",writeFile:()=>{},getCurrentDirectory:()=>"/",getCanonicalFileName:e=>e,useCaseSensitiveFileNames:()=>!0,getNewLine:()=>`
|
|
2
|
+
`};return t.createProgram({rootNames:[...r.keys()],options:n,host:o})}function M(t,i,r){const s=L(t,i),n=s.getTypeChecker();let o;s.getSourceFile(`/${r.file}`)?.forEachChild(a=>{t.isFunctionDeclaration(a)&&a.name?.text==="select"&&(o=a)});const e=new Set(r.modules??[]),c=a=>{if(!t.isImportSpecifier(a))return!1;const m=a.parent.parent.parent;return(a.propertyName??a.name).text==="select"&&t.isStringLiteral(m.moduleSpecifier)&&e.has(m.moduleSpecifier.text)},u=[];for(const a of s.getSourceFiles()){if(a.isDeclarationFile)continue;const m=a.fileName.slice(1),g=l=>a.getLineAndCharacterOfPosition(l.getStart()).line+1;let S=!1;const d=l=>{t.isStringLiteral(l)&&/(^|\s)sf-[a-z0-9-]/.test(l.text)&&(S=!0),t.isImportDeclaration(l)&&t.isStringLiteral(l.moduleSpecifier)&&/^(editor-shell|efficient-easel)(\/|$)/.test(l.moduleSpecifier.text)&&(S=!0),l.forEachChild(d)};d(a);const h=l=>{if(t.isPropertyAssignment(l)&&t.isIdentifier(l.name)&&l.name.text==="type"&&t.isStringLiteral(l.initializer)&&l.initializer.text==="select"&&u.push({file:m,line:g(l),kind:'field: type "select"',engineDrawn:!0,classes:[]}),t.isCallExpression(l)&&t.isIdentifier(l.expression)){const p=n.getSymbolAtLocation(l.expression),x=p&&p.flags&t.SymbolFlags.Alias?n.getAliasedSymbol(p):p;[...p?.declarations??[],...x?.declarations??[]].some(f=>o!==void 0&&f===o||c(f))&&u.push({file:m,line:g(l),kind:"field: select() helper",engineDrawn:!0,classes:[]})}if(t.isJsxOpeningLikeElement(l)&&l.tagName.getText()==="select"&&S&&m!==r.file){const p=l.attributes.properties.find(b=>t.isJsxAttribute(b)&&t.isIdentifier(b.name)&&b.name.text==="className"),x=p&&p.initializer&&t.isStringLiteral(p.initializer)?p.initializer.text:"";u.push({file:m,line:g(l),kind:"element: <select> in panel markup",engineDrawn:!1,classes:x.split(/\s+/).filter(Boolean)})}l.forEachChild(h)};h(a)}return{population:u,helperDeclared:o!==void 0}}const v=(t,i)=>t[0]-i[0]||t[1]-i[1]||t[2]-i[2],O=t=>`(${t[0]},${t[1]},${t[2]})`;function $(t){const i=[];let r=0,s=null,n="";const o=()=>{const e=n.indexOf(":");e>0&&i.push({prop:n.slice(0,e).trim(),value:n.slice(e+1).trim()}),n=""};for(const e of t){if(s){n+=e,e===s&&(s=null);continue}if(e==='"'||e==="'")s=e;else if(e==="(")r+=1;else if(e===")")r=Math.max(0,r-1);else if(e===";"&&r===0){o();continue}n+=e}return o(),i}function A(t){const i=[];let r=0,s="";for(const n of t){if(n==="("&&(r+=1),n===")"&&(r-=1),r===0&&/[\s>+~]/.test(n)){s.trim()&&i.push(s.trim()),s="";continue}s+=n}return s.trim()&&i.push(s.trim()),i}function C(t){let i=t.trim();const r=[],s=[];let n=null;const o=/^[a-zA-Z][a-zA-Z0-9-]*/.exec(i);for(o&&(n=o[0],i=i.slice(o[0].length));i.length;){let e;if(e=/^\.([A-Za-z0-9_-]+)/.exec(i))r.push(e[1]);else if(e=/^:(focus-visible|focus-within|hover|focus|active|checked|disabled)\b/.exec(i))s.push(e[1]);else if(e=/^:dir\([^)]*\)/.exec(i))s.push("dir");else if(e=/^:not\(\[([A-Za-z-]+)\]\)/.exec(i))r.push(`@not-${e[1]}`);else if(e=/^\[([A-Za-z-]+)(?:[~^$*|]?=[^\]]*)?\]/.exec(i))s.push(`[${e[1]}]`);else if(e=/^:has\(([^)]*)\)/.exec(i)){if(!/^\s*>?\s*[a-z]+\s*$/.test(e[1]))return null;r.push("@has-type")}else return null;i=i.slice(e[0].length)}return{type:n,classes:r,needsState:s}}const D=t=>t.reduce((i,r)=>[i[0],i[1]+r.classes.filter(s=>s!=="@has-type").length+r.needsState.length,i[2]+(r.type?1:0)+(r.classes.includes("@has-type")?1:0)],[0,0,0]);function F(t){if(t===null)return!0;let i=!0;for(const r of t.replace(/^@media\s*/i,"").split(/\s+and\s+/i)){const s=r.trim().replace(/^\(|\)$/g,"").trim(),n=/^([a-z-]+)\s*:\s*(.+)$/.exec(s);if(!n)return null;const o=n[1],e=n[2].trim();if(o==="hover"||o==="any-hover"){if(e==="hover")continue;return e==="none"?!1:null}if(o==="pointer"||o==="any-pointer"){if(e==="fine")continue;return e==="coarse"||e==="none"?!1:null}i=null}return i}const T=t=>t??"(no media query)";function Z(t,i,r,s,n="rest"){const o=[],e=[],c=[],u=n==="hover"?new Set(["hover"]):new Set;return t.forEach((a,m)=>{const g=n==="rest"?a.media===null:F(a.media);for(const S of a.selector.split(",")){const d=S.trim();if(!d||!/(^|[\s,>+~])select\b/.test(d)&&!i.own.some(f=>d.includes(`.${f}`)))continue;const h=A(d).map(C),l=h[h.length-1];if(h.some(f=>f===null)||!l){e.push(`${r}: ${d}`);continue}const p=h;if(l.type&&l.type!=="select")continue;const x=l.classes.filter(f=>!f.startsWith("@"));if(!(!x.every(f=>i.own.includes(f))||!l.type&&x.length===0||!l.needsState.every(f=>u.has(f))||!p.slice(0,-1).every(f=>(!f.type||f.type==="div")&&f.classes.filter(y=>!y.startsWith("@")).every(y=>i.ancestors.includes(y))&&f.needsState.every(y=>u.has(y))))&&g!==!1){if(g===null){c.push({sheet:r,selector:d,media:a.media??"",decls:a.decls});continue}o.push({spec:D(p),order:s+m,decls:a.decls,selector:d,sheet:r})}}}),{applied:o,unreadable:e,undecided:c}}const w={appearance:"auto","background-image":"none","background-size":"auto","background-repeat":"repeat","background-position":"0% 0%","background-color":"transparent","border-color":"currentcolor"};function z(t){const i=t.replace(/url\([\s\S]*?\)/g," "),r=/var\(--[A-Za-z0-9-]+(?:\s*,[^()]*)?\)|#[0-9a-fA-F]{3,8}\b|(?:rgba?|hsla?|color-mix|color)\([^()]*(?:\([^()]*\)[^()]*)*\)|\b(?:transparent|currentcolor|white|black)\b/i.exec(i);return r?r[0]:null}function W(t){const i=new Map;for(const r of $(t.replace(/[^{}]*\{|\}/g,";")))r.prop.startsWith("--")&&i.set(r.prop,r.value);return i}function E(t,i,r=0){if(r>8)return t;let s=!1;const n=t.replace(/var\(\s*(--[A-Za-z0-9-]+)\s*(?:,([^()]*(?:\([^()]*\)[^()]*)*))?\)/g,(o,e)=>{const c=i.get(e);return c===void 0?o:(s=!0,c)});return s?E(n,i,r+1):n}function j(t,i,r=new Map){let s=null;const n=(e,c)=>{(!s||v(e.spec,s.spec)>0||v(e.spec,s.spec)===0&&e.order>=s.order)&&(s={value:c.trim(),from:`${e.sheet} { ${e.selector} }`,spec:e.spec,order:e.order})};for(const e of t)for(const c of $(e.decls)){if(c.prop===i||i==="appearance"&&c.prop==="-webkit-appearance"){n(e,c.value);continue}if(c.prop==="border"&&i==="border-color"){n(e,z(c.value)??w[i]);continue}if(c.prop!=="background"||!i.startsWith("background-"))continue;const u=c.value;n(e,i==="background-image"?/url\([\s\S]*?\)|linear-gradient\([\s\S]*?\)|image-set\([\s\S]*?\)/.exec(u)?.[0]??"none":i==="background-repeat"?/\b(no-repeat|repeat-x|repeat-y|round|space|repeat)\b/.exec(u)?.[0]??"repeat":i==="background-color"?z(u)??w[i]:w[i])}const o=s??{value:w[i],from:"(nothing declares one)"};return{value:E(o.value,r),from:o.from}}const I=["sf-editor","sf-body","sf-panel","sf-insp-body","sf-styles","sf-field","es-field","sf-copybox"];function K(t,i){const r=t.filter(e=>!e.engineDrawn),s=e=>new RegExp(`\\.${e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}\\b`).test(i),n=e=>[...e.classes].filter(s).sort().join(" "),o=new Set([""]);for(const e of r)o.add(n(e));return[...o].sort().map(e=>({name:e?`house .${e.split(" ").join(".")}`:"house (bare)",own:e?e.split(" "):[],ancestors:[...I],rows:r.filter(c=>n(c)===e).length}))}function P(t,i,r){const s=new Map;for(const n of r)s.set(n,[]);for(const n of i){if(!k(n.path))continue;const o=t.createSourceFile(n.path,n.text,t.ScriptTarget.Latest,!0),e=c=>{if(t.isJsxAttribute(c)&&t.isIdentifier(c.name)&&c.name.text==="className"&&c.initializer&&t.isStringLiteral(c.initializer)){const u=c.initializer.text.split(/\s+/).filter(Boolean);for(const a of r)u.includes(a)&&s.get(a)?.push(n.path)}c.forEachChild(e)};e(o)}return s}export{I as ANCESTORS,w as INITIAL,Z as applicable,M as census,P as chainInMarkup,z as colorIn,C as compound,E as derefVars,K as deriveShapes,N as importsOf,F as mediaHolds,T as mediaLabel,W as readVars,j as resolve,v as specCmp,D as specOf,O as specStr,A as splitCombinators,$ as splitDecls};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const PART_PANEL = "components/PartSettingsPanel.tsx";
|
|
2
|
+
export interface SliderCallSite {
|
|
3
|
+
fields: string[];
|
|
4
|
+
line: number;
|
|
5
|
+
readoutOff: boolean;
|
|
6
|
+
labelFor(field: string): string;
|
|
7
|
+
}
|
|
8
|
+
export declare function readSliderCallSites(source: string): SliderCallSite[];
|
|
9
|
+
export declare const sliderFields: (sites: readonly SliderCallSite[]) => string[];
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
const a="components/PartSettingsPanel.tsx";function w(t){let n="",e=0,o=null;for(;e<t.length;){const s=t[e],i=t[e+1];if(o){if(n+=s,s==="\\"){n+=i??"",e+=2;continue}s===o&&(o=null),e+=1;continue}if(s==='"'||s==="'"||s==="`"){o=s,n+=s,e+=1;continue}if(s==="/"&&i==="/"){for(;e<t.length&&t[e]!==`
|
|
2
|
+
`;)e+=1;continue}if(s==="/"&&i==="*"){for(e+=2;e<t.length&&!(t[e]==="*"&&t[e+1]==="/");)t[e]===`
|
|
3
|
+
`&&(n+=`
|
|
4
|
+
`),e+=1;e+=2;continue}n+=s,e+=1}return n}function l(t){throw new Error(t)}function S(t){const n=/const PART_FIELDS\s*=\s*\[([\s\S]*?)\]\s*as const/.exec(t);n||l(`${a}: no \`const PART_FIELDS = [ \u2026 ] as const\` \u2014 this reader takes the panel's row labels from that one table, and cannot find it. Has it been renamed?`);const e=new Map;for(const o of n[1].matchAll(/\{\s*key:\s*"([^"]+)"\s*,\s*label:\s*"([^"]+)"/g))e.set(o[1],o[2]);return e.size===0&&l(`${a}: PART_FIELDS holds no \`key\`/\`label\` pairs.`),e}function m(t){const n=w(t),e=S(n),o=[];for(const s of n.matchAll(/<Slider[\s/>]/g)){const i=s.index??0,d=n.indexOf("/>",i);d===-1&&l(`${a}: a <Slider at offset ${i} is not self-closing. This reader reads a call site's props up to \`/>\`; a Slider with children needs a different reader.`);const u=n.slice(i,d),c=n.slice(0,i),h=/((?:\s*case\s+"[^"]+"\s*:)+)\s*return\s*\(\s*$/.exec(c),f=h?[...h[1].matchAll(/case\s+"([^"]+)"\s*:/g)].map(r=>r[1]):[];f.length===0&&l(`${a}: the <Slider at line ${c.split(`
|
|
5
|
+
`).length} is not returned DIRECTLY by a
|
|
6
|
+
\`case "\u2026": return (\` branch, so this reader cannot say which field it draws.
|
|
7
|
+
|
|
8
|
+
IF SOMETHING NOW WRAPS THE SLIDER, THAT ROW IS BACK TO 129px AND NOTHING ELSE WOULD SAY SO.
|
|
9
|
+
The rule that gives it the row is \`.es-field-ctl > .sf-slider\` \u2014 a DIRECT child, because the
|
|
10
|
+
slot is the flex container and only its own children are flex items. A wrapper becomes the
|
|
11
|
+
item, sizes to the track it holds, and the track fills the wrapper instead of the row. A
|
|
12
|
+
descendant selector would NOT save it: it would paint \`flex: 1\` on an element whose parent
|
|
13
|
+
is the wrapper, not the slot, and the row would look fixed while measuring the same 129px.
|
|
14
|
+
|
|
15
|
+
So a wrap needs a decision, not a wider selector \u2014 either unwrap it, or give the wrapper the
|
|
16
|
+
row and say why in \`components/storefront-editor.css\`. Card 66247.`),o.push({fields:f,line:c.split(`
|
|
17
|
+
`).length,readoutOff:/readout=\{false\}/.test(u),labelFor(r){const p=e.get(r);return p||l(`${a}: field \`${r}\` draws a slider but is not in PART_FIELDS, so it has no row label. The two declarations have drifted apart.`),p}})}return o}const b=t=>t.flatMap(n=>n.fields);export{a as PART_PANEL,m as readSliderCallSites,b as sliderFields};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type * as TS from "typescript";
|
|
2
|
+
import type { SourceFile } from "../rule.js";
|
|
3
|
+
export declare const CONFIG_FILE = "lib/puck/config.tsx";
|
|
4
|
+
export declare const REGISTRY_DIRS: readonly ["lib/puck/blocks", "lib/puck/passes"];
|
|
5
|
+
export declare const REGISTRY_MODULES: readonly ["lib/puck/page-root.tsx", "lib/puck/page-root-fields.tsx", "lib/puck/registry.ts"];
|
|
6
|
+
export declare function isRegistryPath(p: string): boolean;
|
|
7
|
+
export declare function registryFiles(files: readonly SourceFile[]): SourceFile[];
|
|
8
|
+
export declare function registryText(files: readonly SourceFile[]): string;
|
|
9
|
+
export declare function splitBlockTypes(files: readonly SourceFile[]): string[];
|
|
10
|
+
export declare function blockFiles(files: readonly SourceFile[], type: string): string[];
|
|
11
|
+
export declare function registeredBlockKeys(ts: typeof TS, files: readonly SourceFile[]): string[];
|
|
12
|
+
export declare function blocksWrittenInConfig(ts: typeof TS, files: readonly SourceFile[]): string[];
|
|
13
|
+
export declare function registeredAs(ts: typeof TS, files: readonly SourceFile[], key: string): string | undefined;
|
|
14
|
+
export declare function blockSource(ts: typeof TS, files: readonly SourceFile[], type: string): string;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const o="lib/puck/config.tsx",x=["lib/puck/blocks","lib/puck/passes"],g=["lib/puck/page-root.tsx","lib/puck/page-root-fields.tsx","lib/puck/registry.ts"],d=t=>/\.tsx?$/.test(t)&&!t.endsWith(".d.ts");function m(t){return t===o||g.includes(t)?!0:d(t)&&x.some(e=>t.startsWith(`${e}/`))}function k(t){const e=new Map(t.map(n=>[n.path,n])),r=[o,...g].map(n=>e.get(n)).filter(n=>!!n),i=x.flatMap(n=>t.filter(s=>d(s.path)&&s.path.startsWith(`${n}/`)).sort((s,c)=>s.path<c.path?-1:1));return[...r,...i]}function y(t){return k(t).map(e=>e.text).join(`
|
|
2
|
+
`)}function h(t,e){const r=t.find(i=>new RegExp(`^lib/puck/blocks/[^/]+/${e}/render\\.tsx$`).test(i.path));return r?r.path.slice(0,-11):null}function E(t){return t.map(e=>/^lib\/puck\/blocks\/[^/]+\/([^/]+)\/render\.tsx$/.exec(e.path)?.[1]).filter(e=>!!e).sort()}function b(t,e){const r=h(t,e);return r?[`${r}/render.tsx`,`${r}/fields.tsx`].filter(i=>t.some(n=>n.path===i)):t.some(i=>i.path===o)?[o]:[]}function p(t,e){const r=e.find(l=>l.path===o);if(!r)return null;const i=r.text,n=t.createSourceFile(o,i,t.ScriptTarget.Latest,!0,t.ScriptKind.TSX),s={keys:[],literals:new Map,registeredAs:new Map};let c=!1;const f=l=>{if(!c){if(t.isPropertyAssignment(l)&&l.name.getText(n)==="components"&&t.isObjectLiteralExpression(l.initializer)){c=!0;for(const a of l.initializer.properties){if(!t.isPropertyAssignment(a))continue;const u=a.name.getText(n);s.keys.push(u),t.isObjectLiteralExpression(a.initializer)?s.literals.set(u,i.slice(a.getFullStart(),a.end)):s.registeredAs.set(u,a.initializer.getText(n))}return}t.forEachChild(l,f)}};if(f(n),!c)throw new Error(`registry-source: no \`components\` object in ${o}`);return s}function S(t,e){return[...p(t,e)?.keys??[]]}function $(t,e){return[...p(t,e)?.literals.keys()??[]]}function T(t,e,r){return p(t,e)?.registeredAs.get(r)}function w(t,e,r){if(h(e,r))return b(e,r).map(s=>e.find(c=>c.path===s).text).join(`
|
|
3
|
+
`);const n=p(t,e)?.literals.get(r);if(n===void 0)throw new Error(`registry-source: no block "${r}" among the files handed in \u2014 no folder under lib/puck/blocks/ and no literal in ${o}'s \`components\``);return n}export{o as CONFIG_FILE,x as REGISTRY_DIRS,g as REGISTRY_MODULES,b as blockFiles,w as blockSource,$ as blocksWrittenInConfig,m as isRegistryPath,T as registeredAs,S as registeredBlockKeys,k as registryFiles,y as registryText,E as splitBlockTypes};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const f={single:"'",double:'"',template:"`"};function s(c){let t="",n="code",o=0;for(;o<c.length;){const e=c[o],i=c[o+1];if(n==="code"){if(e==="/"&&i==="/"){n="line",t+=" ",o+=2;continue}if(e==="/"&&i==="*"){n="block",t+=" ",o+=2;continue}e==="'"?n="single":e==='"'?n="double":e==="`"&&(n="template"),t+=e,o+=1;continue}if(n==="line"){e===`
|
|
2
|
+
`?(n="code",t+=e):t+=" ",o+=1;continue}if(n==="block"){if(e==="*"&&i==="/"){n="code",t+=" ",o+=2;continue}t+=e===`
|
|
3
|
+
`?e:" ",o+=1;continue}if(e==="\\"){t+=e+(i??""),o+=2;continue}e===f[n]&&(n="code"),t+=e,o+=1}return t}function r(c,t){const n=s(c),o=n.indexOf(t);if(o<0)throw new Error(`ts-source: marker not found: ${t}`);const e=n.indexOf("{",o+t.length-1);if(e<0)throw new Error(`ts-source: no block opens after: ${t}`);let i=0;for(let l=e;l<n.length;l+=1)if(n[l]==="{")i+=1;else if(n[l]==="}"&&(i-=1,i===0))return c.slice(e,l+1);throw new Error(`ts-source: unbalanced block after: ${t}`)}export{r as balancedBlockAfter,s as stripComments};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type RuleReport, type SourceFile } from "./rule.js";
|
|
2
|
+
export type ThemeModeControlsGoneOptions = {
|
|
3
|
+
readonly mustRead?: readonly string[];
|
|
4
|
+
readonly liveWiring?: {
|
|
5
|
+
readonly layout: string;
|
|
6
|
+
readonly chrome: string;
|
|
7
|
+
};
|
|
8
|
+
readonly minFiles: number;
|
|
9
|
+
};
|
|
10
|
+
export declare function themeModeControlsGone(files: readonly SourceFile[], options: ThemeModeControlsGoneOptions): RuleReport;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{ruleChecks as $}from"./rule.js";const n=["Default","mode"].join(" "),r=["Show Light","Dark switch"].join(" / "),p=[["Theme","Switch","Field"].join(""),["Theme","Mode","Root","Field"].join("")],w=`components/${p[0]}.tsx`,m=c=>c.replace(/\/\*[\s\S]*?\*\//g,"").replace(/^\s*\/\/.*$/gm,"");function S(c,h){const{check:t,report:u}=$("theme mode controls gone"),i=c.filter(e=>/\.tsx?$/.test(e.path)),l=e=>i.find(o=>o.path===e)?.text;{const e=m(`export const Row = () => <label>${n}</label>; // ${r}`);t(`the matcher sees "${n}" in code that plainly says it`,e.includes(n));const o=m(`// card 66312 removed the ${n} row
|
|
2
|
+
/* and the ${r} one */
|
|
3
|
+
export const x = 1;`);t("\u2026and a note that names a row, on its own line or in a block, is prose, not code",!o.includes(n)&&!o.includes(r))}t(`\xA71a the component that drew both rows is gone (${w})`,!i.some(e=>e.path===w),`${w} still exists \u2014 it drew both rows and has no other job`),t(`\xA71b the sweep is real (${i.length} TS/TSX files, at least ${h.minFiles})`,i.length>=h.minFiles,"too few to be this repository, so the absence checks below are passing over nothing");for(const e of h.mustRead??[])t(`\xA71b the sweep reaches ${e}, a file the rows lived in`,l(e)!==void 0);const a=[],d=[];for(const e of i){const o=m(e.text);for(const s of[n,r])o.includes(s)&&a.push(`${e.path} still names the "${s}" row`);for(const s of p)o.includes(s)&&d.push(`${e.path} still references ${s}`)}if(t("\xA71b no file names either row",a.length===0,a.join(`
|
|
4
|
+
`)),t("\xA71c no file wires the retired field or its root",d.length===0,d.join(`
|
|
5
|
+
`)),h.liveWiring){const{layout:e,chrome:o}=h.liveWiring,s=l(e)??"";t(`\xA73d ${e} builds the boot script from the site's STORED defaultMode / showThemeSwitch`,/buildThemeBootScript\(\{\s*mode:\s*theme\.defaultMode,\s*switchShown:\s*theme\.showThemeSwitch,?\s*\}\)/.test(s),"every site would paint whatever replaced them");for(const f of["loaded.defaultMode","loaded.showThemeSwitch"])t(`\xA73d \u2026and still reads ${f} from the backend theme row`,s.includes(f));t("\xA73d \u2026and threads showThemeSwitch to the chrome",/showThemeSwitch=\{theme\.showThemeSwitch\}/.test(s)),t(`\xA73d ${o} threads the site's switch setting to the Header`,/showThemeToggle=\{showThemeSwitch\}/.test(l(o)??""))}return u()}export{S as themeModeControlsGone};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type RuleReport, type SourceFile } from "./rule.js";
|
|
2
|
+
export type UploadIntakeGuardOptions = {
|
|
3
|
+
readonly allowlist?: Readonly<Record<string, {
|
|
4
|
+
readonly max: number;
|
|
5
|
+
readonly why: string;
|
|
6
|
+
}>>;
|
|
7
|
+
readonly migrated?: readonly string[];
|
|
8
|
+
readonly minFiles: number;
|
|
9
|
+
};
|
|
10
|
+
export declare function intakeMarkerCount(text: string): number;
|
|
11
|
+
export declare function uploadIntakeGuard(files: readonly SourceFile[], options: UploadIntakeGuardOptions): RuleReport;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import{ruleChecks as w}from"./rule.js";const j=/\.(ts|tsx|mts|cts|js|jsx|mjs|cjs)$/,b=[/type=["']file["']/g,/dataTransfer\??\.files/g,/clipboardData\??\.(files|items)/g],c=/from\s+["']efficient-shell["']/;function p(r){return b.reduce((s,n)=>s+(r.match(n)?.length??0),0)}function I(r,s){const{check:n,report:$}=w("upload intake guard"),f=s.allowlist??{};{const e=o=>["type=",o,"file",o].join(""),t=["dataTransfer","files"],h=["clipboardData","items"],k=["clipboardData","files"],y=[["a double-quoted file input",`<input ${e('"')} accept="image/*" />`],["a single-quoted file input",`<input ${e("'")} />`],["a drop zone reading files",`openPicker(e.${t.join(".")}?.[0] ?? null)`],["\u2026through optional chaining",`const f = e.${t.join("?.")};`],["a paste handler reading items",`Array.from(e.${h.join(".")})`],["a paste handler reading files",`e.${k.join("?.")}`]];for(const[o,l]of y)n(`the scan flags ${o}`,p(l)===1,l);const x=[["a text input",'<input type="text" />'],["a drop zone that only reads the types","e.dataTransfer.types.includes('Files')"],["a paste handler that only reads text","e.clipboardData.getData('text/plain')"],["the shell's own input spread","<input {...intake.inputProps} hidden />"]];for(const[o,l]of x)n(`the scan stays quiet on ${o}`,p(l)===0,l);const g=["efficient","shell"].join("-");n("the root-entry reader finds an import of the shell's root",c.test(`import { x } from "${g}";`)),n("\u2026and not one of a subpath",!c.test(`import { useFileIntake } from "${g}/file-intake";`))}const a=r.filter(e=>j.test(e.path));n(`read the source (${a.length} JS/TS files, at least ${s.minFiles})`,a.length>=s.minFiles,"the walk found too few source files \u2014 it is looking in the wrong place, and every check below is vacuous");const i=new Map;for(const e of a){const t=p(e.text);t>0&&i.set(e.path,t)}const d=[...i].filter(([e])=>!(e in f)).map(([e,t])=>`${e} (${t})`);n("no file outside the allowlist hand-rolls a file input, drop zone or paste handler",d.length===0,`take files through useFileIntake from efficient-shell/file-intake (harness UI-15 / PAT-10):
|
|
2
|
+
${d.join(`
|
|
3
|
+
`)}`);const u=Object.entries(f).filter(([e,t])=>(i.get(e)??0)>t.max).map(([e,t])=>`${e}: ${i.get(e)} > ${t.max}`);n("no allowlisted file grows its hand-rolled intake",u.length===0,u.join(`
|
|
4
|
+
`));for(const[e,t]of Object.entries(f))n(`the allowlist entry is still real: ${e} (${t.why})`,i.has(e),"remove the entry \u2014 the ratchet only tightens");for(const e of s.migrated??[]){const t=a.find(h=>h.path===e);!n(`read the migrated surface ${e}`,!!t,"it is not among the files handed in")||!t||(n(`${e} imports the shell's intake`,/from "efficient-shell\/file-intake"/.test(t.text)),n(`${e} drives its zone with useFileIntake`,/useFileIntake\(/.test(t.text)),n(`${e} spreads the intake's drop handlers on its zone`,/\.\.\.intake\.zoneProps/.test(t.text)))}const m=a.filter(e=>c.test(e.text)).map(e=>e.path);return n("nothing imports the shell's root entry",m.length===0,`the root pulls the shell's toasts, stylesheet and window manager; take a React-only subpath:
|
|
5
|
+
${m.join(`
|
|
6
|
+
`)}`),$()}export{p as intakeMarkerCount,I as uploadIntakeGuard};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type RuleReport, type SourceFile } from "./rule.js";
|
|
2
|
+
export type WordStylesOptions = {
|
|
3
|
+
readonly exempt?: Readonly<Record<string, string>>;
|
|
4
|
+
readonly minFiles: number;
|
|
5
|
+
readonly labelFloor: number;
|
|
6
|
+
};
|
|
7
|
+
export declare function labelsIn(text: string): string[];
|
|
8
|
+
export declare function wordStyles(files: readonly SourceFile[], options: WordStylesOptions): RuleReport;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import{ruleChecks as p}from"./rule.js";const m=/(?:\baria-label|\blabel|\btitle|\bplaceholder)\s*[:=]\s*\{?\s*(["'])([^"']*)\1/g,u=/^(Emphasis|Strong)\b/;function i(s){return[...s.matchAll(m)].map(e=>e[2])}function h(s){return i(s.text).filter(e=>u.test(e)).map(e=>`${s.path}: "${e}"`)}function y(s,e){const{check:l,report:f}=p("word styles"),g=e.exempt??{};{const t={path:"fixture.tsx",text:['const a = { style: "wordHighlight", title: "Emphasis word style" };','const b = <button aria-label="Strong word style" />;','const c = <input placeholder={"Emphasis"} />;',"const d = { label: 'Strong' };","// the Emphasis button and the Strong one are upstream's",'toggle("Strong", false);','const e = { title: "Highlight word style", label: "Bold" };','const f = { title: "A strong claim", label: "Strongest" };'].join(`
|
|
2
|
+
`)},r=i(t.text),a=["Emphasis word style","Strong word style","Emphasis","Strong","Highlight word style","Bold","A strong claim","Strongest"];l("the reader reads a label, title, aria-label and placeholder, and neither prose nor a positional argument",JSON.stringify(r)===JSON.stringify(a),JSON.stringify(r));const o=h(t);l("the rule flags a label that begins Emphasis or Strong, and passes Highlight, Bold, `A strong \u2026` and `Strongest`",JSON.stringify(o)===JSON.stringify(a.slice(0,4).map(b=>`fixture.tsx: "${b}"`)),JSON.stringify(o))}const n=s.filter(t=>/\.tsx?$/.test(t.path)),d=n.reduce((t,r)=>t+i(r.text).length,0);l(`read the source (${n.length} .ts/.tsx files, at least ${e.minFiles})`,n.length>=e.minFiles),l(`read the labels (${d}, at least ${e.labelFloor})`,d>=e.labelFloor,"fewer means the label reader broke, and an absence over a reader that matches nothing is free");const c=n.filter(t=>!(t.path in g)).flatMap(h);l("no merchant-visible label calls our word styles Emphasis or Strong",c.length===0,`our word styles are called Highlight and Bold (2026-10-04) \u2014 Emphasis and Strong belong to the upstream \u25C6 and bold buttons, whose descriptors live in efficient-easel and are not written here:
|
|
3
|
+
${c.join(`
|
|
4
|
+
`)}`);for(const[t,r]of Object.entries(g)){const a=n.find(o=>o.path===t);l(`the exemption is still real: ${t} (${r})`,!!a&&h(a).length>0,"the file is gone or no longer writes the retired words \u2014 remove the stale entry")}return f()}export{i as labelsIn,y as wordStyles};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type Theme, type ThemeMode, type ThemeValue } from "./theme.js";
|
|
2
|
+
export declare const THEME_ATTR = "data-theme";
|
|
3
|
+
export declare function currentTheme(root: Element): Theme;
|
|
4
|
+
export declare function applyTheme(root: Element, theme: Theme): boolean;
|
|
5
|
+
export declare function readVisitorTheme(doc: Document): string | null;
|
|
6
|
+
export declare function writeVisitorTheme(doc: Document, theme: Theme): void;
|
|
7
|
+
export type PreviewThemeSource = {
|
|
8
|
+
mode: ThemeMode;
|
|
9
|
+
switchShown: boolean;
|
|
10
|
+
};
|
|
11
|
+
export declare function effectivePreviewTheme(doc: Document, source: PreviewThemeSource, hour?: number): Theme;
|
|
12
|
+
export declare function syncPreviewTheme(doc: Document, source: PreviewThemeSource): () => void;
|
|
13
|
+
export declare function applyThemeSurfaces(body: ElementCSSInlineStyle, theme?: ThemeValue | null): boolean;
|
|
14
|
+
export declare function syncPreviewSurfaces(doc: Document, theme?: ThemeValue | null): () => void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{safeLocalStorageFor as u}from"./safe-storage.js";import{resolveTheme as a,THEME_STORAGE_KEY as c,THEME_SURFACE_KEYS as l,themeSurfaceStyle as m}from"./theme.js";const s="data-theme",f="light";function p(e){return e.getAttribute(s)===f?"light":"dark"}function T(e,t){return p(e)===t?!1:(t==="light"?e.setAttribute(s,f):e.removeAttribute(s),!0)}function h(e){return u(e).getItem(c)}function S(e,t){u(e).setItem(c,t)}function v(e,t,r=new Date().getHours()){return a({mode:t.mode,override:h(e),switchShown:t.switchShown,hour:r})}function x(e,t){const r=e.documentElement;if(!r)return()=>{};const i=()=>T(r,v(e,t));i();const n=e.defaultView?.MutationObserver;if(!n)return()=>{};const o=new n(i);return o.observe(r,{attributes:!0,attributeFilter:[s]}),()=>o.disconnect()}const b="style";function w(e,t){const r=m(t);let i=!1;for(const n of l){const o=r[n]??"";e.style.getPropertyValue(n)!==o&&(o?e.style.setProperty(n,o):e.style.removeProperty(n),i=!0)}return i}function d(e,t){const r=e.body;if(!r)return()=>{};const i=()=>w(r,t);i();const n=e.defaultView?.MutationObserver;if(!n)return()=>{};const o=new n(i);return o.observe(r,{attributes:!0,attributeFilter:[b]}),()=>o.disconnect()}export{s as THEME_ATTR,T as applyTheme,w as applyThemeSurfaces,p as currentTheme,v as effectivePreviewTheme,h as readVisitorTheme,d as syncPreviewSurfaces,x as syncPreviewTheme,S as writeVisitorTheme};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { RefObject } from "react";
|
|
2
|
+
import { type EditorSession } from "./editor-session.js";
|
|
3
|
+
import type { SiteThemeRowPatch } from "./site-theme-row.js";
|
|
4
|
+
export type ThemeRowSaveResult = {
|
|
5
|
+
status: "saved";
|
|
6
|
+
} | {
|
|
7
|
+
status: "skipped";
|
|
8
|
+
reason: "template" | "no-token" | "empty";
|
|
9
|
+
} | {
|
|
10
|
+
status: "failed";
|
|
11
|
+
error: unknown;
|
|
12
|
+
};
|
|
13
|
+
export type ThemeRowSender = (patch: SiteThemeRowPatch, token: string, siteId?: string) => Promise<unknown>;
|
|
14
|
+
export declare function themeRowSender(session?: EditorSession): ThemeRowSender;
|
|
15
|
+
export declare function refusalToQueue(input: {
|
|
16
|
+
themeFromDocument: boolean;
|
|
17
|
+
token: string | null | undefined;
|
|
18
|
+
}): ThemeRowSaveResult | null;
|
|
19
|
+
export declare function writeThemeRow(input: {
|
|
20
|
+
themeFromDocument: boolean;
|
|
21
|
+
token: string | null | undefined;
|
|
22
|
+
siteId: string | null | undefined;
|
|
23
|
+
patch: SiteThemeRowPatch;
|
|
24
|
+
}, send?: ThemeRowSender): Promise<ThemeRowSaveResult>;
|
|
25
|
+
export interface ThemeRowPersist {
|
|
26
|
+
persist: (patch: SiteThemeRowPatch, immediate?: boolean) => void;
|
|
27
|
+
flush: () => Promise<ThemeRowSaveResult>;
|
|
28
|
+
}
|
|
29
|
+
export declare function useThemeRowPersist({ themeFromDocument, tokenRef, siteId, onResult, }: {
|
|
30
|
+
themeFromDocument: boolean;
|
|
31
|
+
tokenRef: RefObject<string | null> | undefined;
|
|
32
|
+
siteId: string | null | undefined;
|
|
33
|
+
onResult?: (result: ThemeRowSaveResult) => void;
|
|
34
|
+
}): ThemeRowPersist;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useCallback as m,useEffect as y,useRef as l}from"react";import{currentEditorSession as b}from"./editor-session.js";import{backendOf as v}from"./website-session.js";import{useEditorSession as x}from"./editor-session-context.js";import{WebsiteBackendError as E}from"./web-backend.js";function h(e=b()){return(t,i,n)=>{const r=v(e).theme;return r?r.update(t,n?{siteId:n}:void 0):Promise.reject(new E("invalid","This backend stores no site theme."))}}function w(e){return e.themeFromDocument?{status:"skipped",reason:"template"}:e.token?null:{status:"skipped",reason:"no-token"}}async function S(e,t=h()){const{themeFromDocument:i,token:n,siteId:r,patch:s}=e,a=w({themeFromDocument:i,token:n});if(a)return a;if(Object.keys(s).length===0)return{status:"skipped",reason:"empty"};try{return await t(s,n,r??void 0),{status:"saved"}}catch(f){return{status:"failed",error:f}}}function B({themeFromDocument:e,tokenRef:t,siteId:i,onResult:n}){const r=l(null),s=l({}),a=x(),f=l(n);f.current=n;const d=l(null),p=m(u=>{if(u.status==="skipped"){const o=`skipped:${u.reason}`;if(d.current===o)return;d.current=o}else d.current=null;f.current?.(u)},[]),c=m(async()=>{r.current&&(clearTimeout(r.current),r.current=null);const u=s.current;s.current={};const o=await S({themeFromDocument:e,token:t?.current,siteId:i,patch:u},h(a));return p(o),o},[e,t,i,p,a]),T=m((u,o=!1)=>{const k=w({themeFromDocument:e,token:t?.current});if(k){p(k);return}s.current={...s.current,...u},r.current&&clearTimeout(r.current),o?c():r.current=setTimeout(()=>{c()},500)},[e,t,c,p]);return y(()=>()=>{c()},[c]),{persist:T,flush:c}}export{w as refusalToQueue,h as themeRowSender,B as useThemeRowPersist,S as writeThemeRow};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function t(e){switch(e.status){case"saved":return null;case"failed":return{msg:"Not saved. Try again.",tone:"error"};case"skipped":switch(e.reason){case"empty":return null;case"no-token":return{msg:"Not saved. Reload the page.",tone:"error"};case"template":return{msg:"Templates keep their look. Press Done.",tone:"success"}}}}export{t as themeSaveNotice};
|