Skip to content

Commit d61f528

Browse files
committed
Use SeamApiRequest for api responses
1 parent 8446bfe commit d61f528

30 files changed

+1782
-1087
lines changed

generate-routes.ts

Lines changed: 12 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -295,6 +295,7 @@ import {
295295
import {
296296
resolveActionAttempt,
297297
} from 'lib/seam/connect/resolve-action-attempt.js'
298+
import { SeamApiRequest } from 'lib/seam/connect/seam-api-request.js'
298299
299300
${
300301
namespace === 'client_sessions'
@@ -354,41 +355,28 @@ const renderClassMethod = ({
354355
path,
355356
isRequestParamOptional,
356357
}: Endpoint): string => `
357-
async ${camelCase(name)}(
358+
${camelCase(name)}(
358359
${requestFormat}${isRequestParamOptional ? '?' : ''}: ${renderRequestType({
359360
name,
360361
namespace,
361362
})},
362363
${renderClassMethodOptions({ resource })}
363-
): Promise<${
364-
resource === null
365-
? 'void'
366-
: `${renderResponseType({ name, namespace })}['${resource}']`
367-
}> {
368-
${
369-
resource === null ? '' : 'const { data } = '
370-
}await this.client.request<${renderResponseType({
364+
): SeamApiRequest<${isRequestParamOptional ? 'undefined | ' : ''}${renderRequestType(
365+
{
371366
name,
372367
namespace,
373-
})}>({
368+
},
369+
)}, ${
370+
resource === null
371+
? 'void, undefined'
372+
: `${renderResponseType({ name, namespace })}, '${resource}'`
373+
}> {
374+
return new SeamApiRequest(this, {
374375
url: '${path}',
375376
method: '${snakeCase(method)}', ${
376377
requestFormat === 'params' ? 'params,' : ''
377378
} ${requestFormat === 'body' ? 'data: body,' : ''}
378-
})
379-
${
380-
resource === 'action_attempt'
381-
? `const waitForActionAttempt = options.waitForActionAttempt ?? this.defaults.waitForActionAttempt
382-
if (waitForActionAttempt !== false) {
383-
return resolveActionAttempt(
384-
data.${resource},
385-
SeamHttpActionAttempts.fromClient(this.client, { ...this.defaults, waitForActionAttempt: false }),
386-
typeof waitForActionAttempt === 'boolean' ? {} : waitForActionAttempt,
387-
)
388-
}`
389-
: ''
390-
}
391-
${resource === null ? '' : `return data.${resource}`}
379+
}, ${resource === null ? 'undefined' : `'${resource}'`}${resource === 'action_attempt' ? ', options' : ''})
392380
}
393381
`
394382

src/lib/seam/connect/routes/access-codes-unmanaged.ts

Lines changed: 69 additions & 31 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)