feat(dashboard): split user
Stats widget into 4 modular widgets - Create userInfoWidget (avatar, name, level) - Refactor userStatsWidget (stats bars only with smart sizing) - Create userMoodWidget (mood emoji, conditions) - Create userAttributesWidget (STR/DEX/CON/INT/WIS/CHA) - Add category field to widgets for auto-layout grouping - Register all new modular widgets in dashboardIntegration.js All widgets include getOptimalSize() for smart content-aware auto-layout. Part of Phase 1 & 3.1 of dashboard modularization plan.
This commit is contained in:
@@ -13,7 +13,10 @@ import { DashboardManager } from './dashboardManager.js';
|
||||
import { WidgetRegistry } from './widgetRegistry.js';
|
||||
|
||||
// Widget imports
|
||||
import { registerUserInfoWidget } from './widgets/userInfoWidget.js';
|
||||
import { registerUserStatsWidget } from './widgets/userStatsWidget.js';
|
||||
import { registerUserMoodWidget } from './widgets/userMoodWidget.js';
|
||||
import { registerUserAttributesWidget } from './widgets/userAttributesWidget.js';
|
||||
import { registerCalendarWidget, registerWeatherWidget, registerTemperatureWidget, registerClockWidget, registerLocationWidget } from './widgets/infoBoxWidgets.js';
|
||||
import { registerPresentCharactersWidget } from './widgets/presentCharactersWidget.js';
|
||||
import { registerInventoryWidget } from './widgets/inventoryWidget.js';
|
||||
@@ -165,18 +168,25 @@ function getInlineDashboardTemplate() {
|
||||
function registerAllWidgets(registry, dependencies) {
|
||||
console.log('[RPG Companion] Registering widgets...');
|
||||
|
||||
// Core widgets
|
||||
// User modular widgets
|
||||
registerUserInfoWidget(registry, dependencies);
|
||||
registerUserStatsWidget(registry, dependencies);
|
||||
registerPresentCharactersWidget(registry, dependencies);
|
||||
registerInventoryWidget(registry, dependencies);
|
||||
registerUserMoodWidget(registry, dependencies);
|
||||
registerUserAttributesWidget(registry, dependencies);
|
||||
|
||||
// Info Box modular widgets
|
||||
// Scene info widgets
|
||||
registerCalendarWidget(registry, dependencies);
|
||||
registerWeatherWidget(registry, dependencies);
|
||||
registerTemperatureWidget(registry, dependencies);
|
||||
registerClockWidget(registry, dependencies);
|
||||
registerLocationWidget(registry, dependencies);
|
||||
|
||||
// Social widgets
|
||||
registerPresentCharactersWidget(registry, dependencies);
|
||||
|
||||
// Inventory widget
|
||||
registerInventoryWidget(registry, dependencies);
|
||||
|
||||
console.log(`[RPG Companion] Registered ${registry.getAll().length} widgets`);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user