defde2bca9
- Add AcceptInvitationParams and AcceptInvitationRequest schemas - Add AddDeployKeyParams, AddDomainParams, AddGpgKeyParams, AddMemberParams, AddReplyParams, AddRepoMemberParams, and AddSshKeyParams schemas - Add ApiEmptyResponse and ApiErrorResponse schemas - Add ApiResponse schemas for BranchMergeCheck, BranchProtectionRule, CaptchaResponse, ContextMe, CreateInvitationResponse, EmailResponse, Enable2FAResponse, Get2FAStatusResponse - Add ApiResponse schemas for Issue, IssueAssignee, IssueComment, IssueEvent, IssueLabel, IssueLabelRelation, IssueMilestone, IssuePrRelation, IssueReaction, IssueRepoRelation, IssueSubscriber, and IssueTemplate - Add ApiResponse schemas for Option_BranchProtectionRule, PrAssignee, PrCheckRun, PrCommit, PrEvent, PrFile, and PrLabel
35 lines
1.0 KiB
JavaScript
35 lines
1.0 KiB
JavaScript
import { createRequire } from 'node:module';
|
|
import { dirname, resolve } from 'node:path';
|
|
import { fileURLToPath } from 'node:url';
|
|
import { readFile, writeFile } from 'node:fs/promises';
|
|
|
|
const require = createRequire(import.meta.url);
|
|
const { generate } = require('openapi-typescript-codegen');
|
|
|
|
const rootDir = dirname(fileURLToPath(import.meta.url));
|
|
const input = resolve(rootDir, 'openapi.json');
|
|
const output = resolve(rootDir, 'src/client');
|
|
|
|
await generate({
|
|
input,
|
|
output,
|
|
httpClient: 'axios',
|
|
useOptions: true,
|
|
useUnionTypes: true,
|
|
exportCore: true,
|
|
exportServices: true,
|
|
exportModels: true,
|
|
exportSchemas: true,
|
|
indent: 'tab',
|
|
});
|
|
|
|
console.log(`Generated OpenAPI client: ${output}`);
|
|
|
|
const openApiPath = resolve(output, 'core/OpenAPI.ts');
|
|
const openApiContent = await readFile(openApiPath, 'utf8');
|
|
const updatedOpenApiContent = openApiContent.replace(
|
|
'WITH_CREDENTIALS: false,',
|
|
'WITH_CREDENTIALS: true,',
|
|
);
|
|
await writeFile(openApiPath, updatedOpenApiContent);
|
|
console.log(`Updated OpenAPI.ts`); |