diff --git a/TODO.md b/TODO.md index 832fc62..d27b4d0 100644 --- a/TODO.md +++ b/TODO.md @@ -10,12 +10,15 @@ - **Authentication System**: Mock (development) + Authentik OIDC (production) - **Build-Time Enhancement**: Content injection from database to static HTML - **Development Workflow**: Hot reload, auto-enhanced demo sites, seamless testing +- **Container Transformation**: CLASSES.md syntactic sugar - containers auto-expand to viable children ### **šŸ—ļø Architecture Achievements** - **Zero Configuration**: Just add `class="insertr"` to any element - **Framework Agnostic**: Works with any static site generator - **Performance First**: Regular visitors get pure static HTML with zero CMS overhead - **HTML-First**: No lossy markdown conversion - perfect attribute preservation +- **Unified System**: Single HTML preservation path for all content types +- **Element-Based Behavior**: Automatic editing interface based on HTML tag semantics --- @@ -24,7 +27,7 @@ ### **šŸ”“ Phase 1: Editor Integration Polish** (High Priority) #### **Frontend-Backend Integration** -- [ ] **Editor-API Connection**: Wire up StyleAware editor saves to actual HTTP API +- [x] **Editor-API Connection**: StyleAware editor saves successfully to HTTP API - [ ] **Error Handling**: Proper error states, loading indicators, offline handling - [ ] **Content Validation**: Client-side validation before API calls - [ ] **Save Feedback**: Professional save/error feedback in editor interface @@ -49,7 +52,40 @@ - [ ] **Content Approval**: Editorial workflows and publishing controls - [ ] **Performance Monitoring**: Analytics and optimization tools -### **🟢 Phase 3: Advanced CMS Features** (Low Priority) +### **āœ… Phase 3: Container Expansion Intelligence** (Complete) + +#### **Element Classification and Boundaries** +- [x] **HTML Semantics Approach**: Use HTML tag semantics for block vs inline detection +- [x] **Framework Agnostic Processing**: No special framework container detection +- [x] **Boundary Rules**: Only `.insertr` elements are boundaries, traverse all other containers +- [x] **Block/Inline Classification**: Clear rules for when elements get `.insertr` vs formatting + +#### **Implementation Status** +- [x] **Backend Container Transformation**: Implemented syntactic sugar transformation in `internal/engine/engine.go` +- [x] **Frontend Container Logic Removal**: Cleaned up `lib/src/core/insertr.js` - frontend finds enhanced elements only +- [x] **Backend Viable Children**: Updated `internal/engine/utils.go` with comprehensive block/inline logic +- [x] **Recursive Traversal**: Deep nesting support with proper boundary respect implemented +- [x] **CLASSES.md Compliance**: Container expansion now follows specification exactly + +#### **Complex Element Handling** (Deferred) +- [ ] **Table Editing**: Complex hierarchy needs separate planning for ``, ``, `
` elements + - Tables have nested semantic structure that doesn't fit simple block/inline model + - Need to determine: Should individual cells be editable? Entire table? Row-level? + - Consider: Table headers, captions, complex layouts, accessibility concerns + +- [ ] **Form Element Editing**: Interactive form controls need specialized editors + - `` fields: Different types need different editing interfaces (text, email, etc.) + - `