diff --git a/codegen/layouts/endpoints.hbs b/codegen/layouts/endpoints.hbs index 023ed78c..48f23f44 100644 --- a/codegen/layouts/endpoints.hbs +++ b/codegen/layouts/endpoints.hbs @@ -38,4 +38,6 @@ export class SeamHttpEndpoints { export type SeamHttpEndpointQueryPaths = {{#each endpointReadPaths}}'{{.}}' {{#unless @last}} | {{/unless}}{{/each}} +export type SeamHttpEndpointPaginatedQueryPaths = {{#each endpointPaginatedPaths}}'{{.}}' {{#unless @last}} | {{/unless}}{{/each}} + export type SeamHttpEndpointMutationPaths = {{#each endpointWritePaths}}'{{.}}' {{#unless @last}} | {{/unless}}{{/each}} diff --git a/codegen/lib/layouts/endpoints.ts b/codegen/lib/layouts/endpoints.ts index f052d221..70b17167 100644 --- a/codegen/lib/layouts/endpoints.ts +++ b/codegen/lib/layouts/endpoints.ts @@ -11,6 +11,7 @@ export interface EndpointsLayoutContext { className: string endpoints: EndpointLayoutContext[] endpointReadPaths: string[] + endpointPaginatedPaths: string[] endpointWritePaths: string[] routeImports: RouteImportLayoutContext[] skipClientSessionImport: boolean @@ -38,6 +39,14 @@ export const setEndpointsLayoutContext = ( .filter(({ request }) => request.semanticMethod === 'GET') .map(({ path }) => path), ) + file.endpointPaginatedPaths = routes.flatMap((route) => + route.endpoints + .filter( + ({ request, hasPagination }) => + request.semanticMethod === 'GET' && hasPagination, + ) + .map(({ path }) => path), + ) file.endpointWritePaths = routes.flatMap((route) => route.endpoints .filter(({ request }) => request.semanticMethod !== 'GET') diff --git a/src/lib/seam/connect/routes/seam-http-endpoints.ts b/src/lib/seam/connect/routes/seam-http-endpoints.ts index 6eeadc72..a31ed1df 100644 --- a/src/lib/seam/connect/routes/seam-http-endpoints.ts +++ b/src/lib/seam/connect/routes/seam-http-endpoints.ts @@ -4283,6 +4283,13 @@ export type SeamHttpEndpointQueryPaths = | '/workspaces/get' | '/workspaces/list' +export type SeamHttpEndpointPaginatedQueryPaths = + | '/access_codes/list' + | '/acs/users/list' + | '/connect_webviews/list' + | '/connected_accounts/list' + | '/devices/list' + export type SeamHttpEndpointMutationPaths = | '/access_codes/create' | '/access_codes/create_multiple'