public setServices()

in src/singleton.ts [31:51]


  public setServices(services: Partial<IArcServices> | undefined) {
    if (this.services && services) {
      throw new Error(
        'Attempted to register a second <ArcRoot /> without destroying the first one. ' +
          'Only one arcade-machine root component may be used at once.',
      );
    }

    if (!services) {
      this.services = undefined;
      return;
    }

    this.services = {
      elementStore: services.elementStore!,
      root: services.root!,
      scrollRegistry: new ScrollRegistry(),
      stateContainer: new StateContainer(),
      ...services,
    };
  }