20 lines
745 B
TypeScript
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();
|
|
} |