Skip to content

Commit b2ff2f0

Browse files
committed
refactor(typescript): move readWrite settings to parser options
1 parent 14d7ec9 commit b2ff2f0

File tree

36 files changed

+667
-280
lines changed

36 files changed

+667
-280
lines changed

.changeset/gentle-adults-speak.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@hey-api/openapi-ts': minor
3+
---
4+
5+
feat(typescript): move `readOnlyWriteOnlyBehavior` option to `parser.transforms.readWrite.enabled`

.changeset/khaki-ducks-double.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@hey-api/openapi-ts': minor
3+
---
4+
5+
feat(typescript): move `readableNameBuilder` option to `parser.transforms.readWrite.responses.name`

.changeset/wise-trains-pretend.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@hey-api/openapi-ts': minor
3+
---
4+
5+
feat(typescript): move `writableNameBuilder` option to `parser.transforms.readWrite.requests.name`

packages/openapi-ts-tests/test/2.0.x.test.ts

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ describe(`OpenAPI ${version}`, () => {
7979
{
8080
enums: {
8181
case: 'SCREAMING_SNAKE_CASE',
82-
type: 'javascript',
82+
mode: 'javascript',
8383
},
8484
name: '@hey-api/typescript',
8585
},
@@ -96,7 +96,7 @@ describe(`OpenAPI ${version}`, () => {
9696
{
9797
enums: {
9898
case: 'PascalCase',
99-
type: 'javascript',
99+
mode: 'javascript',
100100
},
101101
name: '@hey-api/typescript',
102102
},
@@ -113,7 +113,7 @@ describe(`OpenAPI ${version}`, () => {
113113
{
114114
enums: {
115115
case: 'camelCase',
116-
type: 'javascript',
116+
mode: 'javascript',
117117
},
118118
name: '@hey-api/typescript',
119119
},
@@ -130,7 +130,7 @@ describe(`OpenAPI ${version}`, () => {
130130
{
131131
enums: {
132132
case: 'snake_case',
133-
type: 'javascript',
133+
mode: 'javascript',
134134
},
135135
name: '@hey-api/typescript',
136136
},
@@ -147,7 +147,7 @@ describe(`OpenAPI ${version}`, () => {
147147
{
148148
enums: {
149149
case: 'preserve',
150-
type: 'javascript',
150+
mode: 'javascript',
151151
},
152152
name: '@hey-api/typescript',
153153
},
@@ -164,7 +164,7 @@ describe(`OpenAPI ${version}`, () => {
164164
{
165165
enums: {
166166
case: 'SCREAMING_SNAKE_CASE',
167-
type: 'typescript',
167+
mode: 'typescript',
168168
},
169169
name: '@hey-api/typescript',
170170
},
@@ -181,7 +181,7 @@ describe(`OpenAPI ${version}`, () => {
181181
{
182182
enums: {
183183
case: 'PascalCase',
184-
type: 'typescript',
184+
mode: 'typescript',
185185
},
186186
name: '@hey-api/typescript',
187187
},
@@ -198,7 +198,7 @@ describe(`OpenAPI ${version}`, () => {
198198
{
199199
enums: {
200200
case: 'camelCase',
201-
type: 'typescript',
201+
mode: 'typescript',
202202
},
203203
name: '@hey-api/typescript',
204204
},
@@ -215,7 +215,7 @@ describe(`OpenAPI ${version}`, () => {
215215
{
216216
enums: {
217217
case: 'snake_case',
218-
type: 'typescript',
218+
mode: 'typescript',
219219
},
220220
name: '@hey-api/typescript',
221221
},
@@ -232,7 +232,7 @@ describe(`OpenAPI ${version}`, () => {
232232
{
233233
enums: {
234234
case: 'preserve',
235-
type: 'typescript',
235+
mode: 'typescript',
236236
},
237237
name: '@hey-api/typescript',
238238
},

packages/openapi-ts-tests/test/3.0.x.test.ts

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -288,7 +288,7 @@ describe(`OpenAPI ${version}`, () => {
288288
{
289289
enums: {
290290
case: 'SCREAMING_SNAKE_CASE',
291-
type: 'javascript',
291+
mode: 'javascript',
292292
},
293293
name: '@hey-api/typescript',
294294
},
@@ -305,7 +305,7 @@ describe(`OpenAPI ${version}`, () => {
305305
{
306306
enums: {
307307
case: 'PascalCase',
308-
type: 'javascript',
308+
mode: 'javascript',
309309
},
310310
name: '@hey-api/typescript',
311311
},
@@ -322,7 +322,7 @@ describe(`OpenAPI ${version}`, () => {
322322
{
323323
enums: {
324324
case: 'camelCase',
325-
type: 'javascript',
325+
mode: 'javascript',
326326
},
327327
name: '@hey-api/typescript',
328328
},
@@ -339,7 +339,7 @@ describe(`OpenAPI ${version}`, () => {
339339
{
340340
enums: {
341341
case: 'snake_case',
342-
type: 'javascript',
342+
mode: 'javascript',
343343
},
344344
name: '@hey-api/typescript',
345345
},
@@ -356,7 +356,7 @@ describe(`OpenAPI ${version}`, () => {
356356
{
357357
enums: {
358358
case: 'preserve',
359-
type: 'javascript',
359+
mode: 'javascript',
360360
},
361361
name: '@hey-api/typescript',
362362
},
@@ -374,7 +374,7 @@ describe(`OpenAPI ${version}`, () => {
374374
enums: {
375375
case: 'preserve',
376376
constantsIgnoreNull: true,
377-
type: 'javascript',
377+
mode: 'javascript',
378378
},
379379
name: '@hey-api/typescript',
380380
},
@@ -391,7 +391,7 @@ describe(`OpenAPI ${version}`, () => {
391391
{
392392
enums: {
393393
case: 'SCREAMING_SNAKE_CASE',
394-
type: 'typescript',
394+
mode: 'typescript',
395395
},
396396
name: '@hey-api/typescript',
397397
},
@@ -408,7 +408,7 @@ describe(`OpenAPI ${version}`, () => {
408408
{
409409
enums: {
410410
case: 'PascalCase',
411-
type: 'typescript',
411+
mode: 'typescript',
412412
},
413413
name: '@hey-api/typescript',
414414
},
@@ -425,7 +425,7 @@ describe(`OpenAPI ${version}`, () => {
425425
{
426426
enums: {
427427
case: 'camelCase',
428-
type: 'typescript',
428+
mode: 'typescript',
429429
},
430430
name: '@hey-api/typescript',
431431
},
@@ -442,7 +442,7 @@ describe(`OpenAPI ${version}`, () => {
442442
{
443443
enums: {
444444
case: 'snake_case',
445-
type: 'typescript',
445+
mode: 'typescript',
446446
},
447447
name: '@hey-api/typescript',
448448
},
@@ -459,7 +459,7 @@ describe(`OpenAPI ${version}`, () => {
459459
{
460460
enums: {
461461
case: 'preserve',
462-
type: 'typescript',
462+
mode: 'typescript',
463463
},
464464
name: '@hey-api/typescript',
465465
},

packages/openapi-ts-tests/test/3.1.x.test.ts

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -302,7 +302,7 @@ describe(`OpenAPI ${version}`, () => {
302302
{
303303
enums: {
304304
case: 'SCREAMING_SNAKE_CASE',
305-
type: 'javascript',
305+
mode: 'javascript',
306306
},
307307
name: '@hey-api/typescript',
308308
},
@@ -319,7 +319,7 @@ describe(`OpenAPI ${version}`, () => {
319319
{
320320
enums: {
321321
case: 'PascalCase',
322-
type: 'javascript',
322+
mode: 'javascript',
323323
},
324324
name: '@hey-api/typescript',
325325
},
@@ -336,7 +336,7 @@ describe(`OpenAPI ${version}`, () => {
336336
{
337337
enums: {
338338
case: 'camelCase',
339-
type: 'javascript',
339+
mode: 'javascript',
340340
},
341341
name: '@hey-api/typescript',
342342
},
@@ -353,7 +353,7 @@ describe(`OpenAPI ${version}`, () => {
353353
{
354354
enums: {
355355
case: 'snake_case',
356-
type: 'javascript',
356+
mode: 'javascript',
357357
},
358358
name: '@hey-api/typescript',
359359
},
@@ -370,7 +370,7 @@ describe(`OpenAPI ${version}`, () => {
370370
{
371371
enums: {
372372
case: 'preserve',
373-
type: 'javascript',
373+
mode: 'javascript',
374374
},
375375
name: '@hey-api/typescript',
376376
},
@@ -388,7 +388,7 @@ describe(`OpenAPI ${version}`, () => {
388388
enums: {
389389
case: 'preserve',
390390
constantsIgnoreNull: true,
391-
type: 'javascript',
391+
mode: 'javascript',
392392
},
393393
name: '@hey-api/typescript',
394394
},
@@ -405,7 +405,7 @@ describe(`OpenAPI ${version}`, () => {
405405
{
406406
enums: {
407407
case: 'SCREAMING_SNAKE_CASE',
408-
type: 'typescript',
408+
mode: 'typescript',
409409
},
410410
name: '@hey-api/typescript',
411411
},
@@ -422,7 +422,7 @@ describe(`OpenAPI ${version}`, () => {
422422
{
423423
enums: {
424424
case: 'PascalCase',
425-
type: 'typescript',
425+
mode: 'typescript',
426426
},
427427
name: '@hey-api/typescript',
428428
},
@@ -439,7 +439,7 @@ describe(`OpenAPI ${version}`, () => {
439439
{
440440
enums: {
441441
case: 'camelCase',
442-
type: 'typescript',
442+
mode: 'typescript',
443443
},
444444
name: '@hey-api/typescript',
445445
},
@@ -456,7 +456,7 @@ describe(`OpenAPI ${version}`, () => {
456456
{
457457
enums: {
458458
case: 'snake_case',
459-
type: 'typescript',
459+
mode: 'typescript',
460460
},
461461
name: '@hey-api/typescript',
462462
},
@@ -473,7 +473,7 @@ describe(`OpenAPI ${version}`, () => {
473473
{
474474
enums: {
475475
case: 'preserve',
476-
type: 'typescript',
476+
mode: 'typescript',
477477
},
478478
name: '@hey-api/typescript',
479479
},

packages/openapi-ts-tests/test/index.test.ts

Lines changed: 25 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -241,13 +241,12 @@ describe('OpenAPI v3', () => {
241241
indexFile: false,
242242
path: '',
243243
},
244-
plugins: [
245-
'@hey-api/client-fetch',
246-
{
247-
name: '@hey-api/typescript',
248-
readOnlyWriteOnlyBehavior: 'off',
244+
parser: {
245+
transforms: {
246+
readWrite: false,
249247
},
250-
],
248+
},
249+
plugins: ['@hey-api/client-fetch', '@hey-api/typescript'],
251250
}),
252251
description: 'generate output without index file',
253252
name: 'v3_no_index',
@@ -311,10 +310,14 @@ describe('OpenAPI v3', () => {
311310
{
312311
config: createConfig({
313312
exportCore: false,
313+
parser: {
314+
transforms: {
315+
readWrite: false,
316+
},
317+
},
314318
plugins: [
315319
{
316320
name: '@hey-api/typescript',
317-
readOnlyWriteOnlyBehavior: 'off',
318321
style: 'PascalCase',
319322
},
320323
],
@@ -403,12 +406,16 @@ describe('OpenAPI v3', () => {
403406
{
404407
config: createConfig({
405408
exportCore: false,
409+
parser: {
410+
transforms: {
411+
readWrite: false,
412+
},
413+
},
406414
plugins: [
407415
'legacy/fetch',
408416
{
409417
enums: 'javascript',
410418
name: '@hey-api/typescript',
411-
readOnlyWriteOnlyBehavior: 'off',
412419
},
413420
'@hey-api/sdk',
414421
],
@@ -419,23 +426,27 @@ describe('OpenAPI v3', () => {
419426
{
420427
config: createConfig({
421428
exportCore: false,
422-
plugins: [
423-
{
424-
name: '@hey-api/typescript',
425-
readOnlyWriteOnlyBehavior: 'off',
429+
parser: {
430+
transforms: {
431+
readWrite: false,
426432
},
427-
],
433+
},
434+
plugins: ['@hey-api/typescript'],
428435
}),
429436
description: 'generate only types with default settings',
430437
name: 'v3_types',
431438
},
432439
{
433440
config: createConfig({
434441
exportCore: false,
442+
parser: {
443+
transforms: {
444+
readWrite: false,
445+
},
446+
},
435447
plugins: [
436448
{
437449
name: '@hey-api/typescript',
438-
readOnlyWriteOnlyBehavior: 'off',
439450
tree: false,
440451
},
441452
],

0 commit comments

Comments
 (0)