On this page
Return to top

Blocks & components

Sample documentation (demo only)
This is an incomplete, outdated docs snapshot shipped with the playground — screenshots were removed on purpose.
For the full, current manuals go to voodflow.com/docs.

Voodflow\Voodbuilder\Support\Editor\AbstractSiteFooterVariantBlock

  • File: Support/Editor/AbstractSiteFooterVariantBlock.php
  • Kind: class
  • Implements: EditorConfigurableBlock
  • Responsibility: Rich content / landing block: Abstract Site Footer Variant Block.

Methods

  • public static function variant(): string
    • Variant.
  • public static function defaultColumns(): int
    • Default Columns.
  • public static function getId(): string
    • Block id used in the editor catalog.
  • public static function getLabel(): string
    • Block label shown in the editor catalog.
  • public static function defaultConfig(): array
    • Default configuration array for a configurable block.
  • public static function normalizeConfig(array $config): array
    • Normalize/validate block config before persist or render.
  • public static function toHtml(array $config, array $context): string
    • Render block HTML for published/output contexts.
  • public static function toPreviewHtml(array $config, array $context): string
    • Render block HTML for the editor canvas preview.
  • protected static function renderShell(array $config, bool $preview): string
    • Render Shell.

Voodflow\Voodbuilder\Support\Editor\AbstractSiteNavVariantBlock

  • File: Support/Editor/AbstractSiteNavVariantBlock.php
  • Kind: class
  • Implements: EditorConfigurableBlock
  • Responsibility: Rich content / landing block: Abstract Site Nav Variant Block.

Methods

  • public static function variant(): string
    • Variant.
  • public static function getId(): string
    • Block id used in the editor catalog.
  • public static function getLabel(): string
    • Block label shown in the editor catalog.
  • public static function defaultConfig(): array
    • Default configuration array for a configurable block.
  • public static function normalizeConfig(array $config): array
    • Normalize/validate block config before persist or render.
  • public static function toHtml(array $config, array $context): string
    • Render block HTML for published/output contexts.
  • public static function toPreviewHtml(array $config, array $context): string
    • Render block HTML for the editor canvas preview.
  • protected static function renderShell(array $config, bool $preview): string
    • Render Shell.

Voodflow\Voodbuilder\Support\Editor\ComponentAuthoringBridge

  • File: Support/Editor/ComponentAuthoringBridge.php
  • Kind: class
  • Responsibility: Components authoring unlock via voodflow/voodbuilder-components.

Methods

  • public static function isEnabled(): bool
    • Boolean predicate isEnabled.
  • public static function canUseLibrary(): bool
    • Boolean predicate canUseLibrary.
  • public static function canImport(): bool
    • Boolean predicate canImport.
  • public static function canExport(): bool
    • Boolean predicate canExport.
  • public static function canCodeImport(): bool
    • Boolean predicate canCodeImport.
  • public static function authorizeLibrary(): void
    • Performs authorizeLibrary side effects.
  • public static function authorizeImport(): void
    • Performs authorizeImport side effects.
  • public static function authorizeExport(): void
    • Performs authorizeExport side effects.
  • public static function authorizeCodeImport(): void
    • Performs authorizeCodeImport side effects.
  • public static function editionAllows(string $capability): bool
    • Soft edition hints for hosts without the companion (upsell UI only).

Voodflow\Voodbuilder\Support\Editor\ComponentRuntimeBridge

  • File: Support/Editor/ComponentRuntimeBridge.php
  • Kind: class
  • Responsibility: Optional hooks into voodflow/voodbuilder-components when the companion plugin is installed.

Methods

  • public static function moduleEnabled(): bool
    • Module Enabled.
  • public static function globalClassCss(): ?string
    • Global Class Css.
  • public static function componentCssForHtml(string $html): ?string
    • Component Css For Html.
  • public static function renderComponentHtml(string $html, ?SitePage $page): string
    • Render Component Html.
  • public static function syncComponentCssLibraryFromPageHtml(string $html): void
    • Performs syncComponentCssLibraryFromPageHtml side effects.

Voodflow\Voodbuilder\Support\Editor\DefaultEditorBlocks

  • File: Support/Editor/DefaultEditorBlocks.php
  • Kind: class
  • Responsibility: DefaultEditorBlocks — class in Support/Editor/DefaultEditorBlocks.php.

Methods

  • public static function register(EditorBlockRegistry $registry): void
    • Performs register side effects.

Voodflow\Voodbuilder\Support\Editor\EditorBlockPreview

  • File: Support/Editor/EditorBlockPreview.php
  • Kind: class
  • Responsibility: Editor Block Preview.

Methods

  • public static function render(string $blockId, array $config = []): ?string
    • Render stored markup for the current context.
  • protected static function renderWrappedBlock(string $blockId, array $config): ?string
    • Render Wrapped Block.
  • public static function wrapHtml(string $html): ?string
    • Wrap Html.
  • public static function wrapSiteChromeHtml(string $html, string $blockId = ''): ?string
    • Wrap Site Chrome Html.

Voodflow\Voodbuilder\Support\Editor\EditorBlockThumbnail

  • File: Support/Editor/EditorBlockThumbnail.php
  • Kind: class
  • Responsibility: Editor Block Thumbnail.

Methods

  • public static function wrap(string $innerSvg): string
    • Wrap.
  • public static function forBlockId(string $blockId): string
    • For Block Id.
  • protected static function heroSvg(): string
    • Hero Svg.
  • protected static function sectionSvg(): string
    • Section Svg.
  • protected static function ctaSvg(): string
    • Cta Svg.
  • protected static function headerSvg(): string
    • Header Svg.
  • protected static function footerASvg(): string
    • Footer A Svg.
  • protected static function footerBSvg(): string
    • Footer B Svg.
  • protected static function footerColumnsSvg(): string
    • Footer Columns Svg.
  • protected static function footerDSvg(): string
    • Footer D Svg.
  • protected static function footerCenteredSvg(): string
    • Footer Centered Svg.
  • protected static function footerNewsletterSvg(): string
    • Footer Newsletter Svg.
  • protected static function tutorialsSvg(): string
    • Tutorials Svg.
  • protected static function genericSvg(): string
    • Generic Svg.

Voodflow\Voodbuilder\Support\Editor\EditorComponentPageHtml

  • File: Support/Editor/EditorComponentPageHtml.php
  • Kind: class
  • Responsibility: Editor Component Page Html.

Methods

  • public static function componentIds(string $pageHtml): array
    • Component Ids.
  • public static function htmlForPageTailwindCompile(string $pageHtml): string
    • Page HTML for page-level Tailwind compile/checks (no component instances).
  • public static function htmlExcludingSiteChrome(string $pageHtml): string
    • Page HTML without embedded site header/footer chrome (styled by theme.css).
  • public static function htmlExcludingComponentInstances(string $pageHtml): string
    • Page HTML without component instance subtrees (for page-level Tailwind CSS checks/compile).
  • protected static function serializeBodyChildren(DOMDocument $document): string
    • Serialize Body Children.
  • public static function instanceInnerHtml(string $pageHtml, string $componentId): ?string
    • Instance Inner Html.
  • protected static function serializeElementChildren(DOMDocument $document, DOMElement $element): string
    • Serialize Element Children.
  • protected static function loadDocument(string $html): DOMDocument
    • Load Document.
  • protected static function escapeXPathLiteral(string $value): string
    • Escape X Path Literal.

Voodflow\Voodbuilder\Support\Editor\EditorDefaultBlockConfig

  • File: Support/Editor/EditorDefaultBlockConfig.php
  • Kind: class
  • Responsibility: Editor Default Block Config.

Methods

  • public static function needsEventId(string $blockId): bool
    • Needs Event Id.
  • public static function mergeEventId(array $config, string $blockId, ?int $eventId): array
    • Merge Event Id.
  • public static function defaults(): array
    • Defaults.
  • public static function firstPublishedEventId(): ?int
    • First Published Event Id.

Voodflow\Voodbuilder\Support\Editor\EditorDynamicBlockRenderer

  • File: Support/Editor/EditorDynamicBlockRenderer.php
  • Kind: class
  • Responsibility: Editor Dynamic Block Renderer.

Methods

  • public function __construct( protected EditorDynamicBlockRegistry $registry, protected EditorServerBlockRegistry $serverRegistry, )
    • Constructor.
  • public function render(string $html, ?SitePage $page = null, bool $canvasPreview = false): string
    • Render stored markup for the current context.
  • protected function loadDocument(string $html): DOMDocument
    • Load Document.
  • protected function dynamicNodes(DOMDocument $document): array
    • Dynamic Nodes.
  • protected function replaceNode( DOMDocument $document, DOMElement $node, ?int $eventId, array $renderData, bool $canvasPreview = false, ): void
    • Performs replaceNode side effects.
  • protected function hoistMisplacedChromeBlocksFromNav(DOMDocument $document, DOMElement $nav): void
    • Lift footer / reading-progress nodes nested under a nav block so a Blade remount cannot wipe them (layout editor save/load regression).
  • protected function isHoistableChromeElement(DOMElement $element): bool
    • Boolean predicate isHoistableChromeElement.
  • protected function replaceNodeInnerHtmlForEditor(DOMDocument $document, DOMElement $node, string $rendered): void
    • Keep data-voodbuilder-block / config on the original node for the visual editor. Published HTML still strips those attributes (see stripPublishedBlockWrapperAttributes).
  • protected function unwrapMatchingRootTag(DOMElement $node, string $html): string
    • When the dynamic root is already a section/footer (smart wrap), the Blade preview returns the same outer tag — use its children to avoid section > section.
  • protected function unwrapEditorPreviewRoot(string $html): string
    • If preview HTML already includes a block wrapper, use its children to avoid nesting.
  • protected function stripPublishedBlockWrapperAttributes(string $html): string
    • Strip Published Block Wrapper Attributes.
  • protected function stripPublishedAttributesFromNode(DOMElement $node): void
    • Performs stripPublishedAttributesFromNode side effects.
  • protected function isColumnFooterBlock(string $blockId): bool
    • Boolean predicate isColumnFooterBlock.
  • protected function captureAuthorContentWidthShells(DOMElement $node): array
    • Capture Author Content Width Shells.
  • protected function restoreAuthorContentWidthShells(DOMElement $node, array $shells): void
    • Performs restoreAuthorContentWidthShells side effects.
  • protected function applyAuthorContentWidthShellsToHtml(string $html, array $shells): string
    • Apply Author Content Width Shells To Html.
  • protected function applyContentWidthShellToElement(DOMElement $element, array $shell): void
    • Performs applyContentWidthShellToElement side effects.
  • protected function contentWidthShellElements(DOMNode $root): array
    • Content Width Shell Elements.
  • protected function mergeAuthorContentWidthClasses(string $author, string $fresh): string
    • Merge Author Content Width Classes.
  • protected function mergeAuthorContentWidthStyles(string $author, string $fresh): string
    • Merge Author Content Width Styles.
  • protected function captureAuthorChromeMenuSlotClasses(DOMElement $node): array
    • Stable keys matching JS captureChromeMenuSlotAuthorClasses so typography utilities (e.g. uppercase) survive Blade remount of site_nav_* blocks.
  • protected function restoreAuthorChromeMenuSlotClasses(DOMElement $node, array $authorByKey): void
    • Performs restoreAuthorChromeMenuSlotClasses side effects.
  • protected function applyAuthorChromeMenuSlotClassesToHtml(string $html, array $authorByKey): string
    • Apply Author Chrome Menu Slot Classes To Html.
  • protected function applyChromeMenuSlotAuthorToElement(DOMElement $element, array $author): void
    • Performs applyChromeMenuSlotAuthorToElement side effects.
  • protected function mergeAuthorChromeMenuSlotClasses(string $author, string $fresh): string
    • Merge Author Chrome Menu Slot Classes.
  • protected function chromeMenuSlotAuthorKey(DOMElement $element, int $desktopNavIndex): string
    • Chrome Menu Slot Author Key.
  • protected function chromeMenuSlotElements(DOMNode $root): array
    • Chrome Menu Slot Elements.
  • protected function captureHiddenLayerNames(DOMElement $node): array
    • Layer names eye-hidden by the author (data-vb-layer-hidden or display:none).
  • protected function layerNamesIncludeCustomNodes(array $names, array $config): bool
    • Layer Names Include Custom Nodes.
  • protected function applyHiddenLayerNamesToHtml(string $html, array $names): string
    • Re-apply Layers eye-hide after Blade remount (match by data-voodbuilder-layer-name).
  • protected function captureAuthorRootChrome(DOMElement $node): array
    • Grapes Style rules (e.g. #ifmoo4{background-image:…}) and anchors need the author root id to survive Blade remount. Also keep inline style / fade attrs.
  • protected function restoreAuthorRootChrome(DOMElement $node, array $chrome): void
    • Performs restoreAuthorRootChrome side effects.
  • protected function mergeAuthorRootStyles(string $author, string $fresh): string
    • Author background paint / positioning wins; other fresh declarations fill gaps.
  • protected function applyAuthorRootChromeToHtml(string $html, array $chrome): string
    • Apply Author Root Chrome To Html.
  • protected function captureAuthorStructuralClasses(DOMElement $node): array
    • Capture Author Structural Classes.
  • protected function restoreAuthorStructuralClasses(DOMElement $node, array $author): void
    • Performs restoreAuthorStructuralClasses side effects.
  • protected function applyAuthorStructuralClassesToHtml(string $html, array $author): string
    • Apply Author Structural Classes To Html.
  • protected function replaceNodeWithRenderedHtml(DOMDocument $document, DOMElement $node, string $rendered): void
    • Performs replaceNodeWithRenderedHtml side effects.
  • protected function renderBlockId(string $blockId, array $config, array $data, bool $canvasPreview = false): ?string
    • Render Block Id.
  • protected function decodeConfig(string $raw): array
    • Decode Config.
  • protected function hasDynamicSlots(DOMElement $node): bool
    • Boolean predicate hasDynamicSlots.
  • protected function footerNeedsFullRender(DOMElement $node, string $blockId): bool
    • Footer Needs Full Render.
  • protected function footerHasLegacyInlineMenu(DOMElement $node): bool
    • Footer Has Legacy Inline Menu.
  • protected function extractBodyHtml(DOMDocument $document): ?string
    • Extract Body Html.

Voodflow\Voodbuilder\Support\Editor\EditorFooterBlockShell

  • File: Support/Editor/EditorFooterBlockShell.php
  • Kind: class
  • Responsibility: Editor Footer Block Shell.

Methods

  • public static function compose(string $blockId, array $config, string $innerHtml): string
    • Compose.

Voodflow\Voodbuilder\Support\Editor\EditorLegacySiteBlockMap

  • File: Support/Editor/EditorLegacySiteBlockMap.php
  • Kind: class
  • Responsibility: Maps deprecated Editor site chrome block IDs to their replacements.

Methods

  • public static function resolve(string $blockId): ?string
    • Resolve a runtime value for the given field / context.

Voodflow\Voodbuilder\Support\Editor\EditorRichContentBlockAdapter

  • File: Support/Editor/EditorRichContentBlockAdapter.php
  • Kind: class
  • Responsibility: Editor Rich Content Block Adapter.

Methods

  • public static function toDefinition( string $blockClass, string $category, ?int $eventId = null, ): EditorBlockDefinition
    • Convert / serialize via toDefinition.
  • public static function editorPreviewHtml(string $blockClass, array $config): string
    • Editor Preview Html.
  • public static function prepareBlockHtml(string $html): string
    • Prepare Block Html.
  • public static function fallbackEditorHtml(string $label): string
    • Fallback Editor Html.
  • public static function wrap(string $blockId, array $config, string $innerHtml): string
    • Wrap.
  • protected static function stampDynamicAttrsOnSingleRoot( string $blockId, string $encodedConfig, string $hydrateSlots, string $innerHtml, ): ?string
    • Prefer a single outer section/footer/header as the dynamic root so Layers stays flat (no div > section nesting). Falls back to a wrapper div.
  • public static function previewMedia(string $html, string $label): string
    • Preview Media.
  • public static function renderData(?int $eventId = null, ?SitePage $page = null): array
    • Render Data.

Voodflow\Voodbuilder\Support\Editor\EditorServerBlockAdapter

  • File: Support/Editor/EditorServerBlockAdapter.php
  • Kind: class
  • Responsibility: Editor Server Block Adapter.

Methods

  • public static function toDefinition( string $blockClass, string $category, ?int $eventId = null, ): EditorBlockDefinition
    • Convert / serialize via toDefinition.
  • public static function configFor(string $blockClass, ?int $eventId = null): array
    • Config For.
  • public static function editorPreviewHtml(string $blockClass, array $config, ?int $eventId = null): string
    • Editor Preview Html.

Voodflow\Voodbuilder\Support\Editor\SectionItemCountAnnotator

  • File: Support/Editor/SectionItemCountAnnotator.php
  • Kind: class
  • Responsibility: Marks repeating item roots on section blocks so the editor can expose an item-count setting.

Methods

  • public static function isRedundant(string $blockId): bool
    • Boolean predicate isRedundant.
  • public static function rules(): array
    • Rules.
  • public static function annotate(string $html, string $blockId): string
    • Annotate.

Voodflow\Voodbuilder\Support\Editor\SiteFooterBlocks

  • File: Support/Editor/SiteFooterBlocks.php
  • Kind: class
  • Responsibility: Site Footer Blocks.

Methods

  • public static function isFooterBlockId(string $blockId): bool
    • Boolean predicate isFooterBlockId.
  • public static function blockClasses(): array
    • Block Classes.

Voodflow\Voodbuilder\Support\Editor\SiteFooterCenteredBlock

  • File: Support/Editor/SiteFooterCenteredBlock.php
  • Kind: class
  • Extends: AbstractSiteFooterVariantBlock
  • Responsibility: Rich content / landing block: Site Footer Centered Block.

Methods

  • public static function variant(): string
    • Variant.
  • public static function defaultColumns(): int
    • Default Columns.

Voodflow\Voodbuilder\Support\Editor\SiteFooterColumnsNewsletterBlock

  • File: Support/Editor/SiteFooterColumnsNewsletterBlock.php
  • Kind: class
  • Extends: AbstractSiteFooterVariantBlock
  • Responsibility: Rich content / landing block: Site Footer Columns Newsletter Block.

Methods

  • public static function variant(): string
    • Variant.
  • public static function defaultColumns(): int
    • Default Columns.

Voodflow\Voodbuilder\Support\Editor\SiteFooterColumnsSimpleBlock

  • File: Support/Editor/SiteFooterColumnsSimpleBlock.php
  • Kind: class
  • Extends: AbstractSiteFooterVariantBlock
  • Responsibility: Rich content / landing block: Site Footer Columns Simple Block.

Methods

  • public static function variant(): string
    • Variant.
  • public static function defaultColumns(): int
    • Default Columns.

Voodflow\Voodbuilder\Support\Editor\SiteFooterSocialBlock

  • File: Support/Editor/SiteFooterSocialBlock.php
  • Kind: class
  • Extends: AbstractSiteFooterVariantBlock
  • Responsibility: Rich content / landing block: Site Footer Social Block.

Methods

  • public static function variant(): string
    • Variant.
  • public static function defaultColumns(): int
    • Default Columns.

Voodflow\Voodbuilder\Support\Editor\SiteNavBlocks

  • File: Support/Editor/SiteNavBlocks.php
  • Kind: class
  • Responsibility: Site Nav Blocks.

Methods

  • public static function isNavBlockId(string $blockId): bool
    • Boolean predicate isNavBlockId.
  • public static function blockClasses(): array
    • Block Classes.

Voodflow\Voodbuilder\Support\Editor\SiteNavCenteredLinksBlock

  • File: Support/Editor/SiteNavCenteredLinksBlock.php
  • Kind: class
  • Extends: AbstractSiteNavVariantBlock
  • Responsibility: Rich content / landing block: Site Nav Centered Links Block.

Methods

  • public static function variant(): string
    • Variant.

Voodflow\Voodbuilder\Support\Editor\SiteNavMenuLeftBlock

  • File: Support/Editor/SiteNavMenuLeftBlock.php
  • Kind: class
  • Extends: AbstractSiteNavVariantBlock
  • Responsibility: Rich content / landing block: Site Nav Menu Left Block.

Methods

  • public static function variant(): string
    • Variant.

Voodflow\Voodbuilder\Support\Editor\SiteNavSimpleBlock

  • File: Support/Editor/SiteNavSimpleBlock.php
  • Kind: class
  • Extends: AbstractSiteNavVariantBlock
  • Responsibility: Rich content / landing block: Site Nav Simple Block.

Methods

  • public static function variant(): string
    • Variant.

Voodflow\Voodbuilder\Support\Editor\SiteNavWithActionBlock

  • File: Support/Editor/SiteNavWithActionBlock.php
  • Kind: class
  • Extends: AbstractSiteNavVariantBlock
  • Responsibility: Rich content / landing block: Site Nav With Action Block.

Methods

  • public static function variant(): string
    • Variant.

Voodflow\Voodbuilder\Support\Editor\SiteNavWithSearchBlock

  • File: Support/Editor/SiteNavWithSearchBlock.php
  • Kind: class
  • Extends: AbstractSiteNavVariantBlock
  • Responsibility: Rich content / landing block: Site Nav With Search Block.

Methods

  • public static function variant(): string
    • Variant.

Voodflow\Voodbuilder\Support\Editor\VoodbuilderEditorBlockConfigs

  • File: Support/Editor/VoodbuilderEditorBlockConfigs.php
  • Kind: class
  • Responsibility: Default editor block config for blocks shipped by voodbuilder core.

Methods

  • public static function register(): void
    • Performs register side effects.

Voodflow\Voodbuilder\Support\Editor\VoodbuilderLanding01Sections

  • File: Support/Editor/VoodbuilderLanding01Sections.php
  • Kind: class
  • Responsibility: Community landing sections retained in Core (articles + CTA). Companion sections (hero, features, solution, testimonials) live in Elements.

Methods

  • public static function registerBlocks(): void
    • Performs registerBlocks side effects.
  • public static function blockDefinitions(): array
    • Block Definitions.
  • public static function pageHtml(): string
    • Page Html.
  • public static function articles(): string
    • Articles.
  • public static function cta(): string
    • Cta.

Voodflow\Voodbuilder\Support\Editor\VoodbuilderLanding02Sections

  • File: Support/Editor/VoodbuilderLanding02Sections.php
  • Kind: class
  • Responsibility: Community landing section retained in Core (FAQ accordion). Companion sections live in Elements.

Methods

  • public static function registerBlocks(): void
    • Performs registerBlocks side effects.
  • public static function blockDefinitions(): array
    • Block Definitions.
  • public static function pageHtml(): string
    • Page Html.
  • public static function faq(): string
    • Faq.

Voodflow\Voodbuilder\Support\Editor\VoodbuilderLandingEditorBlocks

  • File: Support/Editor/VoodbuilderLandingEditorBlocks.php
  • Kind: class
  • Responsibility: Voodbuilder Landing Editor Blocks.

Methods

  • public static function register(): void
    • Performs register side effects.
  • protected static function registerFooterLayoutVariants(): void
    • Performs registerFooterLayoutVariants side effects.
  • protected static function registerNavbarLayoutVariants(): void
    • Performs registerNavbarLayoutVariants side effects.

Voodflow\Voodbuilder\Support\Editor\VoodbuilderMediaSections

  • File: Support/Editor/VoodbuilderMediaSections.php
  • Kind: class
  • Responsibility: Community media section retained in Core (background image hero). Companion media (bg-video, sliders) live in Elements.

Methods

  • public static function registerBlocks(): void
    • Performs registerBlocks side effects.
  • public static function blockDefinitions(): array
    • Block Definitions.
  • public static function backgroundImage(): string
    • Background Image.

Voodflow\Voodbuilder\Support\Editor\VoodbuilderSectionEditorBlocks

  • File: Support/Editor/VoodbuilderSectionEditorBlocks.php
  • Kind: class
  • Responsibility: Voodbuilder Section Editor Blocks.

Methods

  • public static function register(EditorBlockRegistry $registry, ?string $theme = null): void
    • Performs register side effects.
  • public static function catalogPath(): string
    • Catalog Path.
  • public static function utilitiesCssEntry(): string
    • Utilities Css Entry.
  • public static function isAvailable(): bool
    • Boolean predicate isAvailable.
  • protected static function shouldRegisterBlock(array $definition): bool
    • Should Register Block.
  • protected static function blockLabel(array $definition): string
    • Block Label.
  • protected static function prepareBlockHtml(string $html, string $blockId = ''): string
    • Prepare Block Html.
Demo resets in 00:29:41