@plotinus/matrix-package-observable-coordinator
Version:
Observable coordinator pattern components using IntrospectableBaseCommunicationComponent and proper presentation architecture
35 lines (34 loc) • 1.65 kB
JavaScript
/**
* @matrix/package-observable-coordinator
*
* Observable coordinator pattern components using IntrospectableBaseCommunicationComponent.
* This package demonstrates the standard Matrix package format that enables:
* - npm install @matrix/package-observable-coordinator
* - matrix add @matrix/package-observable-coordinator
* - Browser runtime loading via CDN
* - Unified loading via mcf-component-loader
*/
// Main component exports (Node.js/CLI usage)
export { AppComponent } from './components/app/app.component.js';
export { CoordinatorComponent } from './components/coordinator/coordinator.component.js';
export { WorkerComponent } from './components/worker/worker.component.js';
// Presentation components (browser usage)
export { AppPresentationElement } from './presentation/app-presentation.js';
export { CoordinatorPresentationElement } from './presentation/coordinator-presentation.js';
export { WorkerPresentationElement } from './presentation/worker-presentation.js';
// Package metadata for Matrix tooling
export const packageInfo = {
name: '@matrix/package-observable-coordinator',
version: '1.0.0',
packageType: 'component-library',
components: ['app', 'coordinator', 'worker'],
matrixVersion: '^1.0.0'
};
// Component registration helper for mcf-component-loader
export async function registerComponents(loader) {
const { AppComponent, CoordinatorComponent, WorkerComponent } = await import('./index.js');
loader.register('app', AppComponent);
loader.register('coordinator', CoordinatorComponent);
loader.register('worker', WorkerComponent);
return ['app', 'coordinator', 'worker'];
}