Files
phx-frontend-plugin-webcomp…/src/app/services/apollo.service.ts
2026-06-09 17:36:46 +02:00

20 lines
745 B
TypeScript

import { Injectable, Injector, signal } from '@angular/core';
import { Apollo } from 'apollo-angular';
import { environment } from '../../environments/environment';
import { PhoenixHostBridgeService } from './phoenix-host-bridge.service';
@Injectable({ providedIn: 'root' })
export class ApolloService {
private readonly _apollo = signal<Apollo>(undefined!);
constructor(private readonly injector: Injector) {
if(environment.production) {
this._apollo.set(injector.get(PhoenixHostBridgeService)?.pluginServices()?.apollo!);
} else {
this._apollo.set(injector.get(PhoenixHostBridgeService)?.pluginServices()?.apollo ?? injector.get(Apollo));
}
}
apollo = () => this._apollo();
}