diff --git a/packages/clients/src/api/edge_services/v1alpha1/api.gen.ts b/packages/clients/src/api/edge_services/v1alpha1/api.gen.ts index 930456b06..485d77b46 100644 --- a/packages/clients/src/api/edge_services/v1alpha1/api.gen.ts +++ b/packages/clients/src/api/edge_services/v1alpha1/api.gen.ts @@ -39,6 +39,7 @@ import { unmarshalListCacheStagesResponse, unmarshalListDNSStagesResponse, unmarshalListPipelinesResponse, + unmarshalListPipelinesWithStagesResponse, unmarshalListPlansResponse, unmarshalListPurgeRequestsResponse, unmarshalListTLSStagesResponse, @@ -86,6 +87,8 @@ import type { ListDNSStagesResponse, ListPipelinesRequest, ListPipelinesResponse, + ListPipelinesWithStagesRequest, + ListPipelinesWithStagesResponse, ListPlansResponse, ListPurgeRequestsRequest, ListPurgeRequestsResponse, @@ -202,6 +205,37 @@ export class API extends ParentAPI { options, ) + protected pageOfListPipelinesWithStages = ( + request: Readonly = {}, + ) => + this.client.fetch( + { + method: 'GET', + path: `/edge-services/v1alpha1/pipelines-stages`, + urlParams: urlParams( + ['name', request.name], + ['order_by', request.orderBy], + ['organization_id', request.organizationId], + ['page', request.page], + [ + 'page_size', + request.pageSize ?? this.client.settings.defaultPageSize, + ], + ['project_id', request.projectId], + ), + }, + unmarshalListPipelinesWithStagesResponse, + ) + + listPipelinesWithStages = ( + request: Readonly = {}, + ) => + enrichForPagination( + 'pipelines', + this.pageOfListPipelinesWithStages, + request, + ) + /** * Update pipeline. Update the parameters of an existing pipeline, specified * by its `pipeline_id`. Parameters which can be updated include the `name`, diff --git a/packages/clients/src/api/edge_services/v1alpha1/index.gen.ts b/packages/clients/src/api/edge_services/v1alpha1/index.gen.ts index 3a5f14d98..13bc235ce 100644 --- a/packages/clients/src/api/edge_services/v1alpha1/index.gen.ts +++ b/packages/clients/src/api/edge_services/v1alpha1/index.gen.ts @@ -48,6 +48,9 @@ export type { ListPipelinesRequest, ListPipelinesRequestOrderBy, ListPipelinesResponse, + ListPipelinesWithStagesRequest, + ListPipelinesWithStagesRequestOrderBy, + ListPipelinesWithStagesResponse, ListPlansResponse, ListPurgeRequestsRequest, ListPurgeRequestsRequestOrderBy, @@ -61,6 +64,7 @@ export type { PipelineErrorSeverity, PipelineErrorStage, PipelineErrorType, + PipelineStages, PipelineStatus, Plan, PlanDetails, diff --git a/packages/clients/src/api/edge_services/v1alpha1/marshalling.gen.ts b/packages/clients/src/api/edge_services/v1alpha1/marshalling.gen.ts index 0474fd538..5edac9ec4 100644 --- a/packages/clients/src/api/edge_services/v1alpha1/marshalling.gen.ts +++ b/packages/clients/src/api/edge_services/v1alpha1/marshalling.gen.ts @@ -30,11 +30,13 @@ import type { ListCacheStagesResponse, ListDNSStagesResponse, ListPipelinesResponse, + ListPipelinesWithStagesResponse, ListPlansResponse, ListPurgeRequestsResponse, ListTLSStagesResponse, Pipeline, PipelineError, + PipelineStages, Plan, PlanDetails, PurgeRequest, @@ -229,6 +231,25 @@ export const unmarshalTLSStage = (data: unknown): TLSStage => { } as TLSStage } +export const unmarshalPipelineStages = (data: unknown): PipelineStages => { + if (!isJSONObject(data)) { + throw new TypeError( + `Unmarshalling the type 'PipelineStages' failed as data isn't a dictionary.`, + ) + } + + return { + backendStages: unmarshalArrayOfObject( + data.backend_stages, + unmarshalBackendStage, + ), + cacheStages: unmarshalArrayOfObject(data.cache_stages, unmarshalCacheStage), + dnsStages: unmarshalArrayOfObject(data.dns_stages, unmarshalDNSStage), + pipeline: data.pipeline ? unmarshalPipeline(data.pipeline) : undefined, + tlsStages: unmarshalArrayOfObject(data.tls_stages, unmarshalTLSStage), + } as PipelineStages +} + export const unmarshalPurgeRequest = (data: unknown): PurgeRequest => { if (!isJSONObject(data)) { throw new TypeError( @@ -391,6 +412,21 @@ export const unmarshalListPipelinesResponse = ( } as ListPipelinesResponse } +export const unmarshalListPipelinesWithStagesResponse = ( + data: unknown, +): ListPipelinesWithStagesResponse => { + if (!isJSONObject(data)) { + throw new TypeError( + `Unmarshalling the type 'ListPipelinesWithStagesResponse' failed as data isn't a dictionary.`, + ) + } + + return { + pipelines: unmarshalArrayOfObject(data.pipelines, unmarshalPipelineStages), + totalCount: data.total_count, + } as ListPipelinesWithStagesResponse +} + export const unmarshalListPlansResponse = ( data: unknown, ): ListPlansResponse => { diff --git a/packages/clients/src/api/edge_services/v1alpha1/types.gen.ts b/packages/clients/src/api/edge_services/v1alpha1/types.gen.ts index aee327326..27336fd1f 100644 --- a/packages/clients/src/api/edge_services/v1alpha1/types.gen.ts +++ b/packages/clients/src/api/edge_services/v1alpha1/types.gen.ts @@ -24,6 +24,12 @@ export type ListPipelinesRequestOrderBy = | 'name_asc' | 'name_desc' +export type ListPipelinesWithStagesRequestOrderBy = + | 'created_at_asc' + | 'created_at_desc' + | 'name_asc' + | 'name_desc' + export type ListPurgeRequestsRequestOrderBy = | 'created_at_asc' | 'created_at_desc' @@ -287,6 +293,14 @@ export interface PlanDetails { pipelineLimit: number } +export interface PipelineStages { + pipeline?: Pipeline + dnsStages: DNSStage[] + tlsStages: TLSStage[] + cacheStages: CacheStage[] + backendStages: BackendStage[] +} + export interface PurgeRequest { /** ID of the purge request. */ id: string @@ -709,6 +723,20 @@ export interface ListPipelinesResponse { totalCount: number } +export type ListPipelinesWithStagesRequest = { + orderBy?: ListPipelinesWithStagesRequestOrderBy + page?: number + pageSize?: number + name?: string + organizationId?: string + projectId?: string +} + +export interface ListPipelinesWithStagesResponse { + pipelines: PipelineStages[] + totalCount: number +} + export interface ListPlansResponse { totalCount: number plans: PlanDetails[]