HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/SBogers10/shop.komma.nl/node_modules/apollo-language-server/src/project/service.ts
import { GraphQLProject } from "./base";
import { LoadingHandler } from "../loadingHandler";
import { FileSet } from "../fileSet";
import { ServiceConfig } from "../config";
import { ClientIdentity } from "../engine";
import URI from "vscode-uri";

export function isServiceProject(
  project: GraphQLProject
): project is GraphQLServiceProject {
  return project instanceof GraphQLServiceProject;
}

export interface GraphQLServiceProjectConfig {
  clientIdentity?: ClientIdentity;
  config: ServiceConfig;
  rootURI: URI;
  loadingHandler: LoadingHandler;
}
export class GraphQLServiceProject extends GraphQLProject {
  constructor({
    clientIdentity,
    config,
    rootURI,
    loadingHandler
  }: GraphQLServiceProjectConfig) {
    const fileSet = new FileSet({
      rootURI: config.configDirURI || rootURI,
      includes: [...config.service.includes, ".env", "apollo.config.js"],
      excludes: config.service.excludes,
      configURI: config.configURI
    });

    super({ config, fileSet, loadingHandler, clientIdentity });
    this.config = config;
  }

  get displayName() {
    return this.config.graph || "Unnamed Project";
  }

  initialize() {
    return [];
  }

  validate() {}

  getProjectStats() {
    return { loaded: true, type: "service" };
  }

  resolveFederationInfo() {
    return this.schemaProvider.resolveFederatedServiceSDL();
  }
}