{"version":3,"file":"deployment.cjs","names":[],"sources":["../../../../src/rest/commands/utils/deployment.ts"],"sourcesContent":["import type { RestCommand } from '../../types.js';\nimport { throwIfEmpty } from '../../utils/index.js';\n\nexport interface TriggerDeploymentResult {\n\tid: string;\n\texternal_id: string;\n\tproject: string;\n\ttarget: string;\n\tstatus: 'building' | 'ready' | 'error' | 'canceled';\n\turl?: string;\n\tdate_created: string;\n}\n\nexport interface TriggerDeploymentOptions {\n\tpreview?: boolean;\n\tclear_cache?: boolean;\n}\n\n/**\n * Trigger a new deployment for a project.\n *\n * @param provider The provider type (e.g. 'vercel')\n * @param projectId The project ID to deploy\n * @param options Deployment options (preview, clear_cache)\n *\n * @returns The deployment trigger result with deployment ID and status.\n * @throws Will throw if provider or projectId is empty\n */\nexport const triggerDeployment =\n\t<Schema>(\n\t\tprovider: string,\n\t\tprojectId: string,\n\t\toptions?: TriggerDeploymentOptions,\n\t): RestCommand<TriggerDeploymentResult, Schema> =>\n\t() => {\n\t\tthrowIfEmpty(provider, 'Provider cannot be empty');\n\t\tthrowIfEmpty(projectId, 'Project ID cannot be empty');\n\n\t\treturn {\n\t\t\tpath: `/deployments/${provider}/projects/${projectId}/deploy`,\n\t\t\tmethod: 'POST',\n\t\t\t...(options && { body: JSON.stringify(options) }),\n\t\t};\n\t};\n\n/**\n * Cancel a deployment run.\n *\n * @param provider The provider type (e.g. 'vercel')\n * @param runId The run ID to cancel\n *\n * @returns The updated run object.\n * @throws Will throw if provider or runId is empty\n */\nexport const cancelDeployment =\n\t<Schema>(provider: string, runId: string): RestCommand<TriggerDeploymentResult, Schema> =>\n\t() => {\n\t\tthrowIfEmpty(provider, 'Provider cannot be empty');\n\t\tthrowIfEmpty(runId, 'Run ID cannot be empty');\n\n\t\treturn {\n\t\t\tpath: `/deployments/${provider}/runs/${runId}/cancel`,\n\t\t\tmethod: 'POST',\n\t\t};\n\t};\n"],"mappings":"kDA4Ba,GAEX,EACA,EACA,SAGA,EAAA,aAAa,EAAU,2BAA2B,CAClD,EAAA,aAAa,EAAW,6BAA6B,CAE9C,CACN,KAAM,gBAAgB,EAAS,YAAY,EAAU,SACrD,OAAQ,OACR,GAAI,GAAW,CAAE,KAAM,KAAK,UAAU,EAAQ,CAAE,CAChD,EAYU,GACH,EAAkB,SAE1B,EAAA,aAAa,EAAU,2BAA2B,CAClD,EAAA,aAAa,EAAO,yBAAyB,CAEtC,CACN,KAAM,gBAAgB,EAAS,QAAQ,EAAM,SAC7C,OAAQ,OACR"}