API Reference
Complete API reference for vue-wswg-editor. This documentation covers all components, utilities, and types exported by the library.
Components
The library provides two main components for building and rendering pages:
WswgPageBuilder
The main editor component for building and editing pages visually.
Key Features:
- Drag-and-drop block management
- Sidebar editor for configuring block properties
- Real-time preview with responsive viewport controls
- Layout selection and configuration
PageRenderer
A lightweight component for rendering pages without the editor interface. Designed for production use.
Key Features:
- Renders blocks and layouts
- No editing capabilities (production-focused)
- Supports layout wrapping (optional)
- Minimal overhead
Utilities
Field Configuration
createField
Type-safe utility for creating field configurations. Provides helper methods for all field types.
Supported Field Types:
text- Single-line text inputtextarea- Multi-line text inputnumber- Number inputboolean- Checkboxemail- Email input with validationurl- URL input with validationselect- Dropdown selectcheckbox- Checkbox groupradio- Radio button groupcolor- Color pickerrange- Range slider with optional value suffiximage- Image upload with preview and drag & droprepeater- Repeating field groupsmargin- Margin configurationinfo- Read-only information displaycustom- Custom field component
Registry
Functions for accessing blocks, layouts, and fields discovered by the Vite plugin.
Available Functions:
getLayouts()- Get all registered layoutsgetBlocks()- Get all registered blocksinitialiseRegistry()- Initialize the registry (called automatically)
Validation
Utilities for validating fields and blocks programmatically.
Available Functions:
validateField()- Validate a single field valuevalidateAllFields()- Validate all fields in page data
Built-in Validations:
required- Field is requiredminLength/maxLength- String length validationmin/max- Number range validationminItems/maxItems- Repeater item count validation
Type Definitions
The library exports TypeScript types for type-safe development:
import type { EditorFieldConfig, ValidatorFunction, ValidationResult } from "vue-wswg-editor";EditorFieldConfig
Configuration object for editor fields. Used with createField helpers.
ValidatorFunction
Type for custom validation functions:
type ValidatorFunction = (value: any) => Promise<boolean | string>;ValidationResult
Result object returned by validateAllFields:
interface ValidationResult {
title: string;
isValid: boolean;
errors: Record<string, string | boolean>;
}Quick Import Reference
// Components
import { WswgPageBuilder, PageRenderer } from "vue-wswg-editor";
// Utilities
import {
createField,
getLayouts,
getBlocks,
initialiseRegistry,
validateField,
validateAllFields,
} from "vue-wswg-editor";
// Types
import type { EditorFieldConfig, ValidatorFunction, ValidationResult } from "vue-wswg-editor";
// Styles
import "vue-wswg-editor/style.css";API Sections
Components
- WswgPageBuilder - Main editor component
- PageRenderer - Page renderer component
Utilities
- createField - Field configuration utility
- Registry - Registry access functions
- Validation - Validation utilities
Related Documentation
- Getting Started Guide - Learn the basics
- Components Guide - Detailed component usage
- Fields Guide - Field configuration guide
- Validation Guide - Validation patterns