• Claude's avatar
    feat(website): add page + block tree builder (v3) · 39f468a9
    Claude authored
    The v2 builder could not express more than one page: website_sections had a
    unique(academy_id, section_key) constraint, there was no pages table, and
    SectionManager exposed only toggle + reorder. A client with a seven-page site
    had no way to represent page two.
    
    Adds an additive page/block model alongside v2:
    
    - website_pages + website_blocks (nested tree, JSONB data/style)
    - BlockRegistry of BlockType classes: 31 types, 133 layout variants, 237
      fields, 442 validation rules derived from the field schema
    - Page/Block/Menu/Blueprint services, BlockRenderer, BlockDataResolver
    - Builder UI: page manager, block tree editor, schema-driven field forms,
      repeaters, content/design/motion panels, image upload
    - Authored navigation (website_menus) with dropdowns, replacing nav links
      that were previously derived from enabled sections
    - Blueprint import/export via `php artisan website:blueprint`
    - Extended motion library: entrance effects, delay, stagger, parallax
    
    A new block type now costs one PHP class — no migration, no enum case, no
    CHECK constraint.
    
    Nothing here is destructive. website_sections is untouched and "/" falls back
    to the legacy renderer when no builder homepage exists, so already-deployed
    tenants are unaffected until they opt in.
    Co-Authored-By: 's avatarClaude Opus 5 <noreply@anthropic.com>
    39f468a9
Name
Last commit
Last update
..
Activities Loading commit data...
Admin Loading commit data...
Assignments Loading commit data...
Attendance Loading commit data...
Audit Loading commit data...
Auth Loading commit data...
Branches Loading commit data...
CashSessions Loading commit data...
Components Loading commit data...
Concerns Loading commit data...
Dashboard Loading commit data...
Documents Loading commit data...
Enrollments Loading commit data...
Evaluations Loading commit data...
Events Loading commit data...
Facilities Loading commit data...
Financial Loading commit data...
Groups Loading commit data...
Guardian Loading commit data...
HR Loading commit data...
Inventory Loading commit data...
Invoices Loading commit data...
Messaging Loading commit data...
Notifications Loading commit data...
POS Loading commit data...
Parent Loading commit data...
Participants Loading commit data...
People Loading commit data...
Pricing Loading commit data...
Profile Loading commit data...
Programs Loading commit data...
Public Loading commit data...
Receptionist Loading commit data...
Reports Loading commit data...
Roles Loading commit data...
Schedule Loading commit data...
Settings Loading commit data...
Trainer Loading commit data...
Training Loading commit data...
Users Loading commit data...
Wallets Loading commit data...
Website Loading commit data...
WhatsApp Loading commit data...
Wizards Loading commit data...
BranchSwitcher.php Loading commit data...
Dashboard.php Loading commit data...
GlobalSearch.php Loading commit data...