← Public packages
@cameronpak/box
Full Box Public API v1 client: lifecycle, prompts, files, commands, snapshots, environments, webhooks, desktop, hosting, and account.
src/delete-environment-repo.ts
27 lines · 979 B · TypeScriptimport { assertEnvironmentId, boxRequest, failure, type Result } from './client.ts'
import type { EnvironmentMutationOutput } from './set-environment-var.ts'
export type DeleteEnvironmentRepoInput = {
environmentId: string
/** The repository databaseId. */
repositoryId: string
}
/** Remove one repository from the environment's selection. Mints a new version. */
export default async function deleteEnvironmentRepo(
input: DeleteEnvironmentRepoInput,
): Promise<Result<EnvironmentMutationOutput>> {
const invalid = assertEnvironmentId(input?.environmentId)
if (invalid) return failure<EnvironmentMutationOutput>(invalid)
if (!input?.repositoryId) {
return failure<EnvironmentMutationOutput>({
code: 'invalid_repository_id',
message: 'repositoryId is required.',
status: 400,
})
}
return boxRequest<EnvironmentMutationOutput>({
path: '/environments/' + input.environmentId + '/repos/' + encodeURIComponent(input.repositoryId),
method: 'DELETE',
})
}