WIP: Reference only - DO NOT MERGE #2
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "tac"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
console/package.jsonversion 658568e4ec## Changes ### Removed Old Instance Initializers - Deleted `app/instance-initializers/load-extensions.js` (used bootEngines) - Deleted `app/instance-initializers/initialize-widgets.js` (now in initialize-universe) ### Created New Instance Initializer - `app/instance-initializers/initialize-universe.js` - Creates console-specific registries - Registers default dashboard widgets using WidgetService - Loads extension.js files from enabled extensions - No longer calls bootEngines (enables lazy loading) ### Migrated Application Route - `app/routes/application.js` - Replaced `@service universe` with specialized services - Uses `@service('universe/hook-service')` for hook execution - Uses `@service('universe/extension-manager')` for boot waiting - `universe.callHooks()` → `hookService.execute()` - `universe.booting()` → `extensionManager.waitForBoot()` ### Migrated Dashboard Widget Panel - `app/components/dashboard/widget-panel.js` - Replaced `@service universe` with `@service('universe/widget-service')` - `universe.getDashboardWidgets()` → `widgetService.getWidgets('dashboard')` ### Migrated Dashboard Model - `app/models/dashboard.js` - `universe.getDashboardRegistry()` → `widgetService.getRegistry()` - Looks up `service:universe/widget-service` instead of `service:universe` ### What Stayed the Same - `app/controllers/console.js` - Event system usage unchanged - `app/controllers/console/notifications.js` - Event system usage unchanged - Event system (`on`, `trigger`) remains on Universe facade ## Benefits - ✅ Enables true lazy loading (engines load on-demand) - ✅ Separation of concerns via specialized services - ✅ Clearer service responsibilities - ✅ Better performance (no bootEngines at startup) - ✅ Maintains backward compatibility for events**Router Generation Fixes:** - Fix router.js parsing (was looking for non-existent router.map.js) - Parse Router.map(function() {...}) structure correctly - Fix console route detection (check for path: '/' config) - Fix function expression location (3rd arg after path config) - Fix root extensions to use this.mount() not router.mount() **File Watching:** - Add chokidar to watch extension.js files in development - Regenerate shims and loaders when extension.js changes - Cache discovered extensions for regeneration - Only watch in development mode **Issues Fixed:** 1. Router.js now properly contains engine mounts 2. Extension.js changes trigger automatic regenerationRefactored app.js boot sequence to follow Ember conventions: 1. Created app/initializers/load-runtime-config.js - Loads fleetbase.config.json before application boots - Uses deferReadiness/advanceReadiness pattern - Runs before all other initializers - Added performance timing with debug logging 2. Created app/instance-initializers/apply-router-fix.js - Applies router refresh bug fix patch - Runs as instance-initializer (needs app instance) - Runs before extension loading - Added performance timing with debug logging 3. Refactored app/app.js - Removed custom ready() hook - Removed document.addEventListener('DOMContentLoaded') - Removed manual deferReadiness/boot calls - Now uses standard Ember boot sequence - Clean, minimal implementation Benefits: - Follows Ember conventions and best practices - Proper initialization order guaranteed - Performance monitoring for boot phases - Easier to debug and maintain - No custom boot logic needed Boot sequence: 1. load-runtime-config initializer (runs first) 2. Other initializers (socketcluster, etc.) 3. apply-router-fix instance-initializer 4. load-extensions instance-initializer 5. Other instance-initializers 6. Application readyconsole/package.json520de0f6bcconsole/package.json5eaf2039d4defaultonboard flow on registration a29ca0ecb9FLEETBASE_VERSIONin Dockerfile b4ecf5bda9Pull request closed