CONFIGURATION TAB DEBUG

Ecosistema completo para organización y gestión de contenido con interfaces espaciales

Configuration Tab Debugging Guide

Why Configuration Tab Might Not Show

The Configuration tab in the config panel only appears when BOTH conditions are met:

  1. Section has module content: section.content?.moduleId must be set
  2. Module has configuration schema: Module's manifest.configuration must exist

Debug Steps

Step 1: Check if Section Has Content

When you select the Page Renderer in the canvas, open browser DevTools Console and check:

// In browser console:
// The selected section should log its structure
// Look for console logs like:
// "Section selected: { id: '...', content: { moduleId: 'page-renderer', ... } }"

Expected Structure:

{
  id: "module-page-renderer-1234567890",
  label: "Page Renderer",
  content: {
    type: "module",
    moduleId: "page-renderer",        // ✅ This must be present!
    instanceId: "instance-1234567890",
    configuration: {}
  }
}

Step 2: Verify Module is Registered

In browser console:

// Check if module is registered
const moduleRegistry = // get from Angular injector
moduleRegistry.getAllModules().find(m => m.id === 'page-renderer')
// Should return the module manifest

Step 3: Check Manifest Configuration

The Page Renderer manifest should have:

{
  id: 'page-renderer',
  configuration: {
    pageId: { type: 'string', label: 'Page ID', ... },
    showToolbar: { type: 'boolean', ... },
    autoHeight: { type: 'boolean', ... }
  }
}

Temporary Workaround

If Configuration tab still doesn't show, you can manually trigger page selection by:

  1. Open browser DevTools Console
  2. Get the PagesService instance
  3. Call methods directly:
// Get Angular app reference
const appRef = ng.getComponent(document.querySelector('app-root'));
const pagesService = // inject PagesService

// Load pages
await pagesService.loadPages();

// Get all pages
const pages = pagesService.pages();
console.log('Available pages:', pages);

Permanent Fix (if needed)

If the Configuration tab logic needs adjustment, modify:

File: libs/libs-structural/modular-universe/src/lib/universe-canvas-v3/components/config-panel/config-panel.component.ts

Line 137: Configuration tab visibility logic

// Current logic:
configuration: (isTemplate && hasTemplateConfig) || (hasModuleContent && hasModuleConfig),

// If needed, force show for debugging:
configuration: true, // Always show (temporary)

Most Likely Issue

The section doesn't have content.moduleId set, which means:

Check the canvas-builder drop logs for messages like:

📦 Creating regular module section (not template)
✅ Module content set: { moduleId: 'page-renderer', ... }

If these logs are missing, the drop handler isn't working correctly.