UNPKG

@keyshade/cli

Version:
170 lines (138 loc) 5.2 kB
import { AppController, AuthController, CliSessionController, EnvironmentController, EventController, IntegrationController, PersonalAccessTokenController, ProjectController, SecretController, VariableController, WorkspaceController, WorkspaceMembershipController, WorkspaceRoleController } from '@keyshade/api-client' export default class ControllerInstance { private static instance: ControllerInstance | null private _personalAccessTokenController: PersonalAccessTokenController | null = null get personalAccessTokenController(): PersonalAccessTokenController { if (!this._personalAccessTokenController) { throw new Error('ControllerInstance not initialized') } return this._personalAccessTokenController } private _cliSessionController: CliSessionController | null = null get cliSessionController(): CliSessionController { if (!this._cliSessionController) { throw new Error('ControllerInstance not initialized') } return this._cliSessionController } private _appController: AppController | null = null get appController(): AppController { if (!this._appController) { throw new Error('ControllerInstance not initialized') } return this._appController } private _authController: AuthController | null = null get authController(): AuthController { if (!this._authController) { throw new Error('ControllerInstance not initialized') } return this._authController } private _environmentController: EnvironmentController | null = null get environmentController(): EnvironmentController { if (!this._environmentController) { throw new Error('ControllerInstance not initialized') } return this._environmentController } private _eventController: EventController | null = null get eventController(): EventController { if (!this._eventController) { throw new Error('ControllerInstance not initialized') } return this._eventController } private _integrationController: IntegrationController | null = null get integrationController(): IntegrationController { if (!this._integrationController) { throw new Error('ControllerInstance not initialized') } return this._integrationController } private _projectController: ProjectController | null = null get projectController(): ProjectController { if (!this._projectController) { throw new Error('ControllerInstance not initialized') } return this._projectController } private _secretController: SecretController | null = null get secretController(): SecretController { if (!this._secretController) { throw new Error('ControllerInstance not initialized') } return this._secretController } private _variableController: VariableController | null = null get variableController(): VariableController { if (!this._variableController) { throw new Error('ControllerInstance not initialized') } return this._variableController } private _workspaceController: WorkspaceController | null = null get workspaceController(): WorkspaceController { if (!this._workspaceController) { throw new Error('ControllerInstance not initialized') } return this._workspaceController } private _workspaceRoleController: WorkspaceRoleController | null = null get workspaceRoleController(): WorkspaceRoleController { if (!this._workspaceRoleController) { throw new Error('ControllerInstance not initialized') } return this._workspaceRoleController } private _workspaceMembershipController: WorkspaceMembershipController | null = null get workspaceMembershipController(): WorkspaceMembershipController { if (!this._workspaceMembershipController) { throw new Error('ControllerInstance not initialized') } return this._workspaceMembershipController } static initialize(baseUrl: string) { const instance = new ControllerInstance() instance._appController = new AppController(baseUrl) instance._authController = new AuthController(baseUrl) instance._environmentController = new EnvironmentController(baseUrl) instance._eventController = new EventController(baseUrl) instance._integrationController = new IntegrationController(baseUrl) instance._projectController = new ProjectController(baseUrl) instance._secretController = new SecretController(baseUrl) instance._variableController = new VariableController(baseUrl) instance._workspaceController = new WorkspaceController(baseUrl) instance._workspaceRoleController = new WorkspaceRoleController(baseUrl) instance._workspaceMembershipController = new WorkspaceMembershipController( baseUrl ) instance._cliSessionController = new CliSessionController(baseUrl) instance._personalAccessTokenController = new PersonalAccessTokenController( baseUrl ) ControllerInstance.instance = instance } static getInstance(): ControllerInstance { if (!ControllerInstance.instance) { throw new Error('ControllerInstance not initialized') } return ControllerInstance.instance } }