24 lines
688 B
TypeScript
24 lines
688 B
TypeScript
import { Injectable, Injector, signal } from '@angular/core';
|
|
import type { IPluginServices } from '@phx-erp/shared-ui';
|
|
|
|
@Injectable({ providedIn: 'root' })
|
|
export class PhoenixHostBridgeService {
|
|
private readonly _hostInjector = signal<Injector | null>(null);
|
|
private readonly _pluginServices = signal<IPluginServices | null>(null);
|
|
|
|
hostInjector(): Injector | null {
|
|
return this._hostInjector();
|
|
}
|
|
|
|
setHostInjector(injector: Injector): void {
|
|
this._hostInjector.set(injector);
|
|
}
|
|
|
|
pluginServices(): IPluginServices | null {
|
|
return this._pluginServices();
|
|
}
|
|
|
|
setPluginServices(services: IPluginServices): void {
|
|
this._pluginServices.set(services);
|
|
}
|
|
} |