@typespec/openapi3 0.59.0-dev.4 → 0.59.0-dev.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"transform-operation-responses.d.ts","sourceRoot":"","sources":["../../../../../../src/cli/actions/convert/transforms/transform-operation-responses.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,iBAAiB,EAIlB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAqB,aAAa,EAAyB,MAAM,kBAAkB,CAAC;AAK3F;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,MAAM,EACnB,kBAAkB,EAAE,iBAAiB,GACpC,aAAa,EAAE,CAiFjB;AA2ED,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,WAAW,CAAC,EAAE,MAAM,GACnB,MAAM,CASR"}
1
+ {"version":3,"file":"transform-operation-responses.d.ts","sourceRoot":"","sources":["../../../../../../src/cli/actions/convert/transforms/transform-operation-responses.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,iBAAiB,EAIlB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAqB,aAAa,EAAyB,MAAM,kBAAkB,CAAC;AAK3F;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,MAAM,EACnB,kBAAkB,EAAE,iBAAiB,GACpC,aAAa,EAAE,CAmFjB;AA2ED,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,WAAW,CAAC,EAAE,MAAM,GACnB,MAAM,CASR"}
@@ -19,10 +19,12 @@ export function collectOperationResponses(operationId, operationResponses) {
19
19
  }
20
20
  // These headers will be applied to all of the models for this operation/statusCode
21
21
  const commonProperties = [];
22
- for (const name of Object.keys(response.headers ?? {})) {
23
- const property = convertHeaderToProperty(name, response.headers[name]);
24
- if (property)
25
- commonProperties.push(property);
22
+ if (response.headers) {
23
+ for (const name of Object.keys(response.headers)) {
24
+ const property = convertHeaderToProperty(name, response.headers[name]);
25
+ if (property)
26
+ commonProperties.push(property);
27
+ }
26
28
  }
27
29
  decorators.push(...getExtensions(response));
28
30
  // `default` status code is treated as the fallback for any status codes returned that aren't defined.
@@ -1 +1 @@
1
- {"version":3,"file":"transform-operation-responses.js","sourceRoot":"","sources":["../../../../../../src/cli/actions/convert/transforms/transform-operation-responses.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transform-operation-responses.js","sourceRoot":"","sources":["../../../../../../src/cli/actions/convert/transforms/transform-operation-responses.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/openapi.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,WAAW,EAiCX,OAAO,EAGP,OAAO,EASR,MAAM,oBAAoB,CAAC;AAkD5B,OAAO,EAAoB,QAAQ,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAE9E,OAAO,EAeL,qBAAqB,EAItB,MAAM,YAAY,CAAC;AAYpB,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,sBAAsB,CAAC,iBAIzE;AAED,KAAK,yCAAyC,GAAG,WAAW,GAAG,aAAa,GAAG,UAAU,CAAC;AAE1F;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE,IAAI,CAAC,sBAAsB,EAAE,yCAAyC,CAAM,GACpF,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAgBlC;AAgBD,wBAAgB,cAAc,CAC5B,OAAO,EAAE,WAAW,CAAC,sBAAsB,CAAC,GAC3C,8BAA8B,CAgBhC;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,oBAAoB,EAAE,aAAa,GAAG,OAAO,CAAC;IAC9C,eAAe,EAAE,YAAY,GAAG,OAAO,CAAC;CACzC"}
1
+ {"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/openapi.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,WAAW,EAiCX,OAAO,EAGP,OAAO,EASR,MAAM,oBAAoB,CAAC;AAgD5B,OAAO,EAAoB,QAAQ,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAE9E,OAAO,EAgBL,qBAAqB,EAItB,MAAM,YAAY,CAAC;AAYpB,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,sBAAsB,CAAC,iBAIzE;AAED,KAAK,yCAAyC,GAAG,WAAW,GAAG,aAAa,GAAG,UAAU,CAAC;AAE1F;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,OAAO,EAChB,OAAO,GAAE,IAAI,CAAC,sBAAsB,EAAE,yCAAyC,CAAM,GACpF,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAgBlC;AAgBD,wBAAgB,cAAc,CAC5B,OAAO,EAAE,WAAW,CAAC,sBAAsB,CAAC,GAC3C,8BAA8B,CAgBhC;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,oBAAoB,EAAE,aAAa,GAAG,OAAO,CAAC;IAC9C,eAAe,EAAE,YAAY,GAAG,OAAO,CAAC;CACzC"}
@@ -76,10 +76,10 @@ function createOAPIEmitter(context, options) {
76
76
  let root;
77
77
  let diagnostics;
78
78
  let currentService;
79
+ let serviceAuth;
79
80
  // Get the service namespace string for use in name shortening
80
81
  let serviceNamespaceName;
81
82
  let currentPath;
82
- let currentEndpoint;
83
83
  let metadataInfo;
84
84
  let visibilityUsage;
85
85
  // Map model properties that represent shared parameters to their parameter
@@ -316,15 +316,7 @@ function createOAPIEmitter(context, options) {
316
316
  /**
317
317
  * Validates that common responses are consistent and returns the minimal set that describes the differences.
318
318
  */
319
- function validateCommonResponses(statusCode, ops) {
320
- const statusCodeResponses = [];
321
- for (const op of ops) {
322
- for (const response of op.responses) {
323
- if (getOpenAPI3StatusCodes(response.statusCodes, response.type).includes(statusCode)) {
324
- statusCodeResponses.push(response);
325
- }
326
- }
327
- }
319
+ function deduplicateCommonResponses(statusCodeResponses) {
328
320
  const ref = statusCodeResponses[0];
329
321
  const sameTypeKind = statusCodeResponses.every((r) => r.type.kind === ref.type.kind);
330
322
  const sameTypeValue = statusCodeResponses.every((r) => r.type === ref.type);
@@ -336,53 +328,53 @@ function createOAPIEmitter(context, options) {
336
328
  return statusCodeResponses;
337
329
  }
338
330
  }
339
- /**
340
- * Validates that common bodies are consistent and returns the minimal set that describes the differences.
341
- */
342
- function validateCommonBodies(ops) {
343
- const allBodies = ops.map((op) => op.parameters.body);
344
- return [...new Set(allBodies)];
345
- }
346
331
  /**
347
332
  * Validates that common parameters are consistent and returns the minimal set that describes the differences.
348
333
  */
349
- function validateCommonParameters(ops, name, totalOps) {
334
+ function resolveSharedRouteParameters(ops) {
350
335
  const finalParams = [];
351
- const commonParams = [];
336
+ const parameters = new Map();
352
337
  for (const op of ops) {
353
- const param = op.parameters.parameters.find((p) => p.name === name);
354
- if (param) {
355
- commonParams.push(param);
338
+ for (const parameter of op.parameters.parameters) {
339
+ const existing = parameters.get(parameter.name);
340
+ if (existing) {
341
+ existing.push(parameter);
342
+ }
343
+ else {
344
+ parameters.set(parameter.name, [parameter]);
345
+ }
356
346
  }
357
347
  }
358
- const reference = commonParams[0];
359
- if (!reference) {
348
+ if (parameters.size === 0) {
360
349
  return [];
361
350
  }
362
- const inAllOps = ops.length === totalOps;
363
- const sameLocations = commonParams.every((p) => p.type === reference.type);
364
- const sameOptionality = commonParams.every((p) => p.param.optional === reference.param.optional);
365
- const sameTypeKind = commonParams.every((p) => p.param.type.kind === reference.param.type.kind);
366
- const sameTypeValue = commonParams.every((p) => p.param.type === reference.param.type);
367
- if (inAllOps && sameLocations && sameOptionality && sameTypeKind && sameTypeValue) {
368
- // param is consistent and in all shared operations. Only need one copy.
369
- finalParams.push(reference);
370
- }
371
- else if (!inAllOps && sameLocations && sameOptionality && sameTypeKind && sameTypeValue) {
372
- // param is consistent when used, but does not appear in all shared operations. Only need one copy, but it must be optional.
373
- reference.param.optional = true;
374
- finalParams.push(reference);
375
- }
376
- else if (inAllOps && !(sameLocations && sameOptionality && sameTypeKind)) {
377
- // param is in all shared operations, but is not consistent. Need multiple copies, which must be optional.
378
- // exception allowed when the params only differ by their value (e.g. string enum values)
379
- commonParams.forEach((p) => {
380
- p.param.optional = true;
381
- });
382
- finalParams.push(...commonParams);
383
- }
384
- else {
385
- finalParams.push(...commonParams);
351
+ for (const sharedParams of parameters.values()) {
352
+ const reference = sharedParams[0];
353
+ const inAllOps = ops.length === sharedParams.length;
354
+ const sameLocations = sharedParams.every((p) => p.type === reference.type);
355
+ const sameOptionality = sharedParams.every((p) => p.param.optional === reference.param.optional);
356
+ const sameTypeKind = sharedParams.every((p) => p.param.type.kind === reference.param.type.kind);
357
+ const sameTypeValue = sharedParams.every((p) => p.param.type === reference.param.type);
358
+ if (inAllOps && sameLocations && sameOptionality && sameTypeKind && sameTypeValue) {
359
+ // param is consistent and in all shared operations. Only need one copy.
360
+ finalParams.push(reference);
361
+ }
362
+ else if (!inAllOps && sameLocations && sameOptionality && sameTypeKind && sameTypeValue) {
363
+ // param is consistent when used, but does not appear in all shared operations. Only need one copy, but it must be optional.
364
+ reference.param.optional = true;
365
+ finalParams.push(reference);
366
+ }
367
+ else if (inAllOps && !(sameLocations && sameOptionality && sameTypeKind)) {
368
+ // param is in all shared operations, but is not consistent. Need multiple copies, which must be optional.
369
+ // exception allowed when the params only differ by their value (e.g. string enum values)
370
+ sharedParams.forEach((p) => {
371
+ p.param.optional = true;
372
+ });
373
+ finalParams.push(...sharedParams);
374
+ }
375
+ else {
376
+ finalParams.push(...sharedParams);
377
+ }
386
378
  }
387
379
  return finalParams;
388
380
  }
@@ -433,59 +425,11 @@ function createOAPIEmitter(context, options) {
433
425
  }
434
426
  return codes;
435
427
  }
436
- function buildSharedOperations(operations) {
437
- const results = [];
438
- const paramMap = new Map();
439
- const responseMap = new Map();
440
- for (const op of operations) {
441
- // determine which parameters are shared by shared route operations
442
- for (const param of op.parameters.parameters) {
443
- if (paramMap.has(param.name)) {
444
- paramMap.get(param.name).push(op);
445
- }
446
- else {
447
- paramMap.set(param.name, [op]);
448
- }
449
- }
450
- // determine which responses are shared by shared route operations
451
- for (const response of op.responses) {
452
- const statusCodes = getOpenAPI3StatusCodes(response.statusCodes, op.operation);
453
- for (const statusCode of statusCodes) {
454
- if (responseMap.has(statusCode)) {
455
- responseMap.get(statusCode).push(op);
456
- }
457
- else {
458
- responseMap.set(statusCode, [op]);
459
- }
460
- }
461
- }
462
- }
463
- const totalOps = operations.length;
464
- const shared = {
428
+ function buildSharedOperation(operations) {
429
+ return {
465
430
  kind: "shared",
466
- operationId: operations.map((op) => resolveOperationId(program, op.operation)).join("_"),
467
- description: joinOps(operations, getDoc, " "),
468
- summary: joinOps(operations, getSummary, " "),
469
- path: operations[0].path,
470
- verb: operations[0].verb,
471
- operations: operations.map((op) => op.operation),
472
- parameters: {
473
- parameters: [],
474
- },
475
- bodies: undefined,
476
- authentication: operations[0].authentication,
477
- responses: new Map(),
431
+ operations: operations,
478
432
  };
479
- for (const [paramName, ops] of paramMap) {
480
- const commonParams = validateCommonParameters(ops, paramName, totalOps);
481
- shared.parameters.parameters.push(...commonParams);
482
- }
483
- shared.bodies = validateCommonBodies(operations);
484
- for (const [statusCode, ops] of responseMap) {
485
- shared.responses.set(statusCode, validateCommonResponses(statusCode, ops));
486
- }
487
- results.push(shared);
488
- return results;
489
433
  }
490
434
  /**
491
435
  * Groups HttpOperations together if they share the same route.
@@ -507,10 +451,7 @@ function createOAPIEmitter(context, options) {
507
451
  result.push(ops[0]);
508
452
  }
509
453
  else {
510
- const sharedOps = buildSharedOperations(ops);
511
- for (const op of sharedOps) {
512
- result.push(op);
513
- }
454
+ result.push(buildSharedOperation(ops));
514
455
  }
515
456
  }
516
457
  return result;
@@ -518,17 +459,15 @@ function createOAPIEmitter(context, options) {
518
459
  async function getOpenApiFromVersion(service, version) {
519
460
  try {
520
461
  const httpService = ignoreDiagnostics(getHttpService(program, service.type));
521
- const auth = resolveAuthentication(httpService);
462
+ const auth = (serviceAuth = resolveAuthentication(httpService));
522
463
  initializeEmitter(service, auth.schemes, auth.defaultAuth, version);
523
464
  reportIfNoRoutes(program, httpService.operations);
524
465
  for (const op of resolveOperations(httpService.operations)) {
525
- if (op.kind === "shared") {
526
- const opAuth = auth.operationsAuth.get(op.operations[0]);
527
- emitSharedOperation(op, opAuth);
528
- }
529
- else {
530
- const opAuth = auth.operationsAuth.get(op.operation);
531
- emitOperation(op, opAuth);
466
+ const result = getOperationOrSharedOperation(op);
467
+ if (result) {
468
+ const { operation, path, verb } = result;
469
+ currentPath[path] ??= {};
470
+ currentPath[path][verb] = operation;
532
471
  }
533
472
  }
534
473
  emitParameters();
@@ -566,26 +505,45 @@ function createOAPIEmitter(context, options) {
566
505
  return undefined;
567
506
  }
568
507
  }
569
- function emitSharedOperation(shared, authReference) {
570
- const { path: fullPath, verb: verb, operations: ops } = shared;
571
- if (!root.paths[fullPath]) {
572
- root.paths[fullPath] = {};
508
+ function computeSharedOperationId(shared) {
509
+ return shared.operations.map((op) => resolveOperationId(program, op.operation)).join("_");
510
+ }
511
+ function getOperationOrSharedOperation(operation) {
512
+ if (isSharedHttpOperation(operation)) {
513
+ return getSharedOperation(operation);
573
514
  }
574
- currentPath = root.paths[fullPath];
575
- if (!currentPath[verb]) {
576
- currentPath[verb] = {};
515
+ else {
516
+ return getOperation(operation);
577
517
  }
578
- currentEndpoint = currentPath[verb];
579
- for (const op of ops) {
580
- const opTags = getAllTags(program, op);
518
+ }
519
+ function getSharedOperation(shared) {
520
+ const operations = shared.operations;
521
+ const verb = operations[0].verb;
522
+ const path = operations[0].path;
523
+ const oai3Operation = {
524
+ operationId: computeSharedOperationId(shared),
525
+ parameters: [],
526
+ description: joinOps(operations, getDoc, " "),
527
+ summary: joinOps(operations, getSummary, " "),
528
+ responses: getSharedResponses(shared),
529
+ };
530
+ for (const op of operations) {
531
+ applyExternalDocs(op.operation, oai3Operation);
532
+ attachExtensions(program, op.operation, oai3Operation);
533
+ if (isDeprecated(program, op.operation)) {
534
+ oai3Operation.deprecated = true;
535
+ }
536
+ }
537
+ for (const op of operations) {
538
+ const opTags = getAllTags(program, op.operation);
581
539
  if (opTags) {
582
- const currentTags = currentEndpoint.tags;
540
+ const currentTags = oai3Operation.tags;
583
541
  if (currentTags) {
584
542
  // combine tags but eliminate duplicates
585
- currentEndpoint.tags = [...new Set([...currentTags, ...opTags])];
543
+ oai3Operation.tags = [...new Set([...currentTags, ...opTags])];
586
544
  }
587
545
  else {
588
- currentEndpoint.tags = opTags;
546
+ oai3Operation.tags = opTags;
589
547
  }
590
548
  for (const tag of opTags) {
591
549
  // Add to root tags if not already there
@@ -593,105 +551,97 @@ function createOAPIEmitter(context, options) {
593
551
  }
594
552
  }
595
553
  }
596
- // Set up basic endpoint fields
597
- currentEndpoint.operationId = shared.operationId;
598
- for (const op of ops) {
599
- applyExternalDocs(op, currentEndpoint);
600
- }
601
- currentEndpoint.summary = shared.summary;
602
- currentEndpoint.description = shared.description;
603
- currentEndpoint.parameters = [];
604
- currentEndpoint.responses = {};
605
554
  // Error out if shared routes do not have consistent `@parameterVisibility`. We can
606
555
  // lift this restriction in the future if a use case develops.
607
- const visibilities = shared.operations.map((op) => {
608
- return resolveRequestVisibility(program, op, verb);
609
- });
556
+ const visibilities = operations.map((op) => resolveRequestVisibility(program, op.operation, verb));
610
557
  if (visibilities.some((v) => v !== visibilities[0])) {
611
558
  diagnostics.add(createDiagnostic({
612
559
  code: "inconsistent-shared-route-request-visibility",
613
- target: ops[0],
560
+ target: operations[0].operation,
614
561
  }));
615
562
  }
616
- const visibility = resolveRequestVisibility(program, shared.operations[0], verb);
617
- emitEndpointParameters(shared.parameters.parameters, visibility);
618
- if (shared.bodies) {
619
- if (shared.bodies.length === 1) {
620
- emitRequestBody(shared, shared.bodies[0], visibility);
621
- }
622
- else if (shared.bodies.length > 1) {
623
- emitMergedRequestBody(shared, shared.bodies, visibility);
624
- }
625
- }
626
- emitSharedResponses(shared, shared.responses);
627
- for (const op of ops) {
628
- if (isDeprecated(program, op)) {
629
- currentEndpoint.deprecated = true;
630
- }
631
- attachExtensions(program, op, currentEndpoint);
563
+ const visibility = visibilities[0];
564
+ oai3Operation.parameters = getEndpointParameters(resolveSharedRouteParameters(operations), visibility);
565
+ const bodies = [
566
+ ...new Set(operations.map((op) => op.parameters.body).filter((x) => x !== undefined)),
567
+ ];
568
+ if (bodies) {
569
+ oai3Operation.requestBody = getRequestBody(shared, bodies, visibility);
632
570
  }
571
+ const authReference = serviceAuth.operationsAuth.get(shared.operations[0].operation);
633
572
  if (authReference) {
634
- emitEndpointSecurity(authReference);
573
+ oai3Operation.security = getEndpointSecurity(authReference);
635
574
  }
575
+ return { operation: oai3Operation, verb, path };
636
576
  }
637
- function emitOperation(operation, authReference) {
577
+ function getOperation(operation) {
638
578
  const { path: fullPath, operation: op, verb, parameters } = operation;
639
579
  // If path contains a query string, issue msg and don't emit this endpoint
640
580
  if (fullPath.indexOf("?") > 0) {
641
581
  diagnostics.add(createDiagnostic({ code: "path-query", target: op }));
642
- return;
643
- }
644
- if (!root.paths[fullPath]) {
645
- root.paths[fullPath] = {};
646
- }
647
- currentPath = root.paths[fullPath];
648
- if (!currentPath[verb]) {
649
- currentPath[verb] = {};
582
+ return undefined;
650
583
  }
651
- currentEndpoint = currentPath[verb];
584
+ const visibility = resolveRequestVisibility(program, operation.operation, verb);
585
+ const oai3Operation = {
586
+ operationId: resolveOperationId(program, operation.operation),
587
+ summary: getSummary(program, operation.operation),
588
+ description: getDoc(program, operation.operation),
589
+ parameters: getEndpointParameters(parameters.parameters, visibility),
590
+ responses: getResponses(operation, operation.responses),
591
+ };
652
592
  const currentTags = getAllTags(program, op);
653
593
  if (currentTags) {
654
- currentEndpoint.tags = currentTags;
594
+ oai3Operation.tags = currentTags;
655
595
  for (const tag of currentTags) {
656
596
  // Add to root tags if not already there
657
597
  tags.add(tag);
658
598
  }
659
599
  }
660
- currentEndpoint.operationId = resolveOperationId(program, operation.operation);
661
- applyExternalDocs(op, currentEndpoint);
600
+ applyExternalDocs(op, oai3Operation);
662
601
  // Set up basic endpoint fields
663
- currentEndpoint.summary = getSummary(program, operation.operation);
664
- currentEndpoint.description = getDoc(program, operation.operation);
665
- currentEndpoint.parameters = [];
666
- currentEndpoint.responses = {};
667
- const visibility = resolveRequestVisibility(program, operation.operation, verb);
668
- emitEndpointParameters(parameters.parameters, visibility);
669
- emitRequestBody(operation, parameters.body, visibility);
670
- emitResponses(operation, operation.responses);
602
+ if (parameters.body) {
603
+ oai3Operation.requestBody = getRequestBody(operation, parameters.body && [parameters.body], visibility);
604
+ }
605
+ const authReference = serviceAuth.operationsAuth.get(operation.operation);
671
606
  if (authReference) {
672
- emitEndpointSecurity(authReference);
607
+ oai3Operation.security = getEndpointSecurity(authReference);
673
608
  }
674
609
  if (isDeprecated(program, op)) {
675
- currentEndpoint.deprecated = true;
610
+ oai3Operation.deprecated = true;
676
611
  }
677
- attachExtensions(program, op, currentEndpoint);
612
+ attachExtensions(program, op, oai3Operation);
613
+ return { operation: oai3Operation, path: fullPath, verb };
678
614
  }
679
- function emitSharedResponses(operation, responses) {
680
- for (const [statusCode, statusCodeResponses] of responses) {
681
- if (statusCodeResponses.length === 1) {
682
- emitResponseObject(operation, statusCode, statusCodeResponses[0]);
683
- }
684
- else {
685
- emitMergedResponseObject(operation, statusCode, statusCodeResponses);
615
+ function getSharedResponses(operation) {
616
+ const responseMap = new Map();
617
+ for (const op of operation.operations) {
618
+ for (const response of op.responses) {
619
+ const statusCodes = getOpenAPI3StatusCodes(response.statusCodes, op.operation);
620
+ for (const statusCode of statusCodes) {
621
+ if (responseMap.has(statusCode)) {
622
+ responseMap.get(statusCode).push(response);
623
+ }
624
+ else {
625
+ responseMap.set(statusCode, [response]);
626
+ }
627
+ }
686
628
  }
687
629
  }
630
+ const result = {};
631
+ for (const [statusCode, statusCodeResponses] of responseMap) {
632
+ const dedupeResponses = deduplicateCommonResponses(statusCodeResponses);
633
+ result[statusCode] = getResponseForStatusCode(operation, statusCode, dedupeResponses);
634
+ }
635
+ return result;
688
636
  }
689
- function emitResponses(operation, responses) {
637
+ function getResponses(operation, responses) {
638
+ const result = {};
690
639
  for (const response of responses) {
691
640
  for (const statusCode of getOpenAPI3StatusCodes(response.statusCodes, response.type)) {
692
- emitResponseObject(operation, statusCode, response);
641
+ result[statusCode] = getResponseForStatusCode(operation, statusCode, [response]);
693
642
  }
694
643
  }
644
+ return result;
695
645
  }
696
646
  function isBinaryPayload(body, contentType) {
697
647
  return (body.kind === "Scalar" &&
@@ -699,13 +649,16 @@ function createOAPIEmitter(context, options) {
699
649
  contentType !== "application/json" &&
700
650
  contentType !== "text/plain");
701
651
  }
702
- function emitMergedResponseObject(operation, statusCode, responses) {
652
+ function getResponseForStatusCode(operation, statusCode, responses) {
703
653
  const openApiResponse = {
704
- description: undefined,
705
- content: {},
654
+ description: "",
706
655
  };
707
656
  const schemaMap = new Map();
708
657
  for (const response of responses) {
658
+ const refUrl = getRef(program, response.type);
659
+ if (refUrl) {
660
+ return { $ref: refUrl };
661
+ }
709
662
  if (response.description && response.description !== openApiResponse.description) {
710
663
  openApiResponse.description = openApiResponse.description
711
664
  ? `${openApiResponse.description} ${response.description}`
@@ -716,20 +669,8 @@ function createOAPIEmitter(context, options) {
716
669
  if (!openApiResponse.description) {
717
670
  openApiResponse.description = getResponseDescriptionForStatusCode(statusCode);
718
671
  }
719
- currentEndpoint.responses[statusCode] = openApiResponse;
720
672
  }
721
- }
722
- function emitResponseObject(operation, statusCode, response) {
723
- const openApiResponse = currentEndpoint.responses[statusCode] ?? {
724
- description: response.description ?? getResponseDescriptionForStatusCode(statusCode),
725
- };
726
- const refUrl = getRef(program, response.type);
727
- if (refUrl) {
728
- openApiResponse.$ref = refUrl;
729
- }
730
- emitResponseHeaders(openApiResponse, response.responses, response.type);
731
- emitResponseContent(operation, openApiResponse, response.responses);
732
- currentEndpoint.responses[statusCode] = openApiResponse;
673
+ return openApiResponse;
733
674
  }
734
675
  function emitResponseHeaders(obj, responses, target) {
735
676
  for (const data of responses) {
@@ -846,7 +787,7 @@ function createOAPIEmitter(context, options) {
846
787
  }
847
788
  function findOperationExamples(operation) {
848
789
  if (isSharedHttpOperation(operation)) {
849
- return operation.operations.flatMap((op) => getOpExamples(program, op).map((x) => [op, x]));
790
+ return operation.operations.flatMap((op) => getOpExamples(program, op.operation).map((x) => [op.operation, x]));
850
791
  }
851
792
  else {
852
793
  return getOpExamples(program, operation.operation).map((x) => [operation.operation, x]);
@@ -996,56 +937,57 @@ function createOAPIEmitter(context, options) {
996
937
  }
997
938
  return false;
998
939
  }
999
- function getParamPlaceholder(property) {
1000
- let spreadParam = false;
1001
- if (property.sourceProperty) {
1002
- // chase our sources all the way back to the first place this property
1003
- // was defined.
1004
- spreadParam = true;
1005
- property = property.sourceProperty;
1006
- while (property.sourceProperty) {
1007
- property = property.sourceProperty;
1008
- }
1009
- }
1010
- const refUrl = getRef(program, property);
1011
- if (refUrl) {
1012
- return {
1013
- $ref: refUrl,
940
+ function getParameter(parameter, visibility) {
941
+ const param = {
942
+ name: parameter.name,
943
+ in: parameter.type,
944
+ ...getOpenAPIParameterBase(parameter.param, visibility),
945
+ };
946
+ const format = mapParameterFormat(parameter);
947
+ if (format === undefined) {
948
+ param.schema = {
949
+ type: "string",
1014
950
  };
1015
951
  }
1016
- if (params.has(property)) {
1017
- return params.get(property);
1018
- }
1019
- const placeholder = {};
1020
- // only parameters inherited by spreading from non-inlined type are shared in #/components/parameters
1021
- if (spreadParam && property.model && !shouldInline(program, property.model)) {
1022
- params.set(property, placeholder);
1023
- paramModels.add(property.model);
952
+ else {
953
+ Object.assign(param, format);
1024
954
  }
1025
- return placeholder;
955
+ return param;
1026
956
  }
1027
- function emitEndpointParameters(parameters, visibility) {
957
+ function getEndpointParameters(parameters, visibility) {
958
+ const result = [];
1028
959
  for (const httpOpParam of parameters) {
1029
960
  if (params.has(httpOpParam.param)) {
1030
- currentEndpoint.parameters.push(params.get(httpOpParam.param));
961
+ result.push(params.get(httpOpParam.param));
1031
962
  continue;
1032
963
  }
964
+ // eslint-disable-next-line deprecation/deprecation
1033
965
  if (httpOpParam.type === "header" && isContentTypeHeader(program, httpOpParam.param)) {
1034
966
  continue;
1035
967
  }
1036
- emitParameter(httpOpParam, visibility);
968
+ const param = getParameterOrRef(httpOpParam, visibility);
969
+ if (param) {
970
+ const existing = result.find((x) => !("$ref" in param) && !("$ref" in x) && x.name === param.name && x.in === param.in);
971
+ if (existing && !("$ref" in param) && !("$ref" in existing)) {
972
+ mergeOpenApiParameters(existing, param);
973
+ }
974
+ else {
975
+ result.push(param);
976
+ }
977
+ }
1037
978
  }
979
+ return result;
1038
980
  }
1039
- function emitMergedRequestBody(operation, bodies, visibility) {
1040
- if (bodies === undefined) {
1041
- return;
981
+ function getRequestBody(operation, bodies, visibility) {
982
+ if (bodies === undefined || bodies.every((x) => isVoidType(x.type))) {
983
+ return undefined;
1042
984
  }
1043
985
  const requestBody = {
1044
- description: undefined,
986
+ required: bodies.every((body) => (body.property ? !body.property.optional : true)),
1045
987
  content: {},
1046
988
  };
1047
989
  const schemaMap = new Map();
1048
- for (const body of bodies) {
990
+ for (const body of bodies.filter((x) => !isVoidType(x.type))) {
1049
991
  const desc = body.property ? getDoc(program, body.property) : undefined;
1050
992
  if (desc) {
1051
993
  requestBody.description = requestBody.description
@@ -1054,60 +996,60 @@ function createOAPIEmitter(context, options) {
1054
996
  }
1055
997
  const contentTypes = body.contentTypes.length > 0 ? body.contentTypes : ["application/json"];
1056
998
  for (const contentType of contentTypes) {
1057
- const { schema: bodySchema } = getBodyContentEntry(operation, "request", body, visibility, contentType);
1058
- if (schemaMap.has(contentType)) {
1059
- schemaMap.get(contentType).push(bodySchema);
999
+ const entry = getBodyContentEntry(operation, "request", body, visibility, contentType);
1000
+ const existing = schemaMap.get(contentType);
1001
+ if (existing) {
1002
+ existing.push(entry);
1060
1003
  }
1061
1004
  else {
1062
- schemaMap.set(contentType, [bodySchema]);
1005
+ schemaMap.set(contentType, [entry]);
1063
1006
  }
1064
1007
  }
1065
1008
  }
1066
- const content = {};
1067
1009
  for (const [contentType, schemaArray] of schemaMap) {
1068
1010
  if (schemaArray.length === 1) {
1069
- content[contentType] = { schema: schemaArray[0] };
1011
+ requestBody.content[contentType] = schemaArray[0];
1070
1012
  }
1071
1013
  else {
1072
- content[contentType] = {
1073
- schema: { anyOf: schemaArray },
1014
+ requestBody.content[contentType] = {
1015
+ schema: { anyOf: schemaArray.map((x) => x.schema).filter((x) => x !== undefined) },
1016
+ encoding: schemaArray.find((x) => x.encoding)?.encoding,
1074
1017
  };
1075
1018
  }
1076
1019
  }
1077
- requestBody.content = content;
1078
- currentEndpoint.requestBody = requestBody;
1020
+ return requestBody;
1079
1021
  }
1080
- function emitRequestBody(operation, body, visibility) {
1081
- if (body === undefined || isVoidType(body.type)) {
1082
- return;
1022
+ function getParameterOrRef(parameter, visibility) {
1023
+ if (isNeverType(parameter.param.type)) {
1024
+ return undefined;
1083
1025
  }
1084
- const requestBody = {
1085
- description: body.property ? getDoc(program, body.property) : undefined,
1086
- required: body.property ? !body.property.optional : true,
1087
- content: {},
1088
- };
1089
- const contentTypes = body.contentTypes.length > 0 ? body.contentTypes : ["application/json"];
1090
- for (const contentType of contentTypes) {
1091
- requestBody.content[contentType] = getBodyContentEntry(operation, "request", body, visibility, contentType);
1026
+ let spreadParam = false;
1027
+ let property = parameter.param;
1028
+ if (property.sourceProperty) {
1029
+ // chase our sources all the way back to the first place this property
1030
+ // was defined.
1031
+ spreadParam = true;
1032
+ property = property.sourceProperty;
1033
+ while (property.sourceProperty) {
1034
+ property = property.sourceProperty;
1035
+ }
1092
1036
  }
1093
- currentEndpoint.requestBody = requestBody;
1094
- }
1095
- function emitParameter(parameter, visibility) {
1096
- if (isNeverType(parameter.param.type)) {
1097
- return;
1037
+ const refUrl = getRef(program, property);
1038
+ if (refUrl) {
1039
+ return {
1040
+ $ref: refUrl,
1041
+ };
1098
1042
  }
1099
- const existing = currentEndpoint.parameters.find((p) => p.name === parameter.name && p.in === parameter.type);
1100
- if (existing) {
1101
- populateParameter(existing, parameter, visibility);
1043
+ if (params.has(property)) {
1044
+ return params.get(property);
1102
1045
  }
1103
- else {
1104
- const ph = getParamPlaceholder(parameter.param);
1105
- currentEndpoint.parameters.push(ph);
1106
- // If the parameter already has a $ref, don't bother populating it
1107
- if (!("$ref" in ph)) {
1108
- populateParameter(ph, parameter, visibility);
1109
- }
1046
+ const param = getParameter(parameter, visibility);
1047
+ // only parameters inherited by spreading from non-inlined type are shared in #/components/parameters
1048
+ if (spreadParam && property.model && !shouldInline(program, property.model)) {
1049
+ params.set(property, param);
1050
+ paramModels.add(property.model);
1110
1051
  }
1052
+ return param;
1111
1053
  }
1112
1054
  function getOpenAPIParameterBase(param, visibility) {
1113
1055
  const typeSchema = getSchemaForType(param.type, visibility);
@@ -1128,35 +1070,18 @@ function createOAPIEmitter(context, options) {
1128
1070
  attachExtensions(program, param, oaiParam);
1129
1071
  return oaiParam;
1130
1072
  }
1131
- function mergeOpenApiParameters(param, base) {
1132
- if (param.schema) {
1133
- const schema = param.schema;
1134
- if (schema.enum && base.schema.enum) {
1135
- schema.enum = [...new Set([...schema.enum, ...base.schema.enum])];
1073
+ function mergeOpenApiParameters(target, apply) {
1074
+ if (target.schema) {
1075
+ const schema = target.schema;
1076
+ if (schema.enum && apply.schema.enum) {
1077
+ schema.enum = [...new Set([...schema.enum, ...apply.schema.enum])];
1136
1078
  }
1137
- param.schema = schema;
1079
+ target.schema = schema;
1138
1080
  }
1139
1081
  else {
1140
- Object.assign(param, base);
1141
- }
1142
- return param;
1143
- }
1144
- function populateParameter(ph, parameter, visibility) {
1145
- ph.name = parameter.name;
1146
- ph.in = parameter.type;
1147
- const paramBase = getOpenAPIParameterBase(parameter.param, visibility);
1148
- if (paramBase) {
1149
- ph = mergeOpenApiParameters(ph, paramBase);
1150
- }
1151
- const format = mapParameterFormat(parameter);
1152
- if (format === undefined) {
1153
- ph.schema = {
1154
- type: "string",
1155
- };
1156
- }
1157
- else {
1158
- Object.assign(ph, format);
1082
+ Object.assign(target, apply);
1159
1083
  }
1084
+ return target;
1160
1085
  }
1161
1086
  function mapParameterFormat(parameter) {
1162
1087
  switch (parameter.type) {
@@ -1410,14 +1335,15 @@ function createOAPIEmitter(context, options) {
1410
1335
  });
1411
1336
  return security;
1412
1337
  }
1413
- function emitEndpointSecurity(authReference) {
1338
+ function getEndpointSecurity(authReference) {
1414
1339
  const security = getOpenAPISecurity(authReference);
1415
1340
  if (deepEquals(security, root.security)) {
1416
- return;
1341
+ return undefined;
1417
1342
  }
1418
1343
  if (security.length > 0) {
1419
- currentEndpoint.security = security;
1344
+ return security;
1420
1345
  }
1346
+ return undefined;
1421
1347
  }
1422
1348
  function getOpenAPI3Scheme(auth) {
1423
1349
  const scheme = getOpenAPI3SchemeInternal(auth);
@@ -1 +1 @@
1
- {"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/openapi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/openapi.ts"],"names":[],"mappings":"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"}
@@ -123,7 +123,7 @@ export type OpenAPI3Response = Extensions & {
123
123
  /** A short description of the response. CommonMark syntax MAY be used for rich text representation. */
124
124
  description: string;
125
125
  /** Maps a header name to its definition. RFC7230 states header names are case insensitive. If a response header is defined with the name "Content-Type", it SHALL be ignored. */
126
- headers: Record<string, Refable<OpenAPI3Header>>;
126
+ headers?: Record<string, Refable<OpenAPI3Header>>;
127
127
  /** A map containing descriptions of potential response payloads. The key is a media type or media type range and the value describes it. For responses that match multiple keys, only the most specific key is applicable. e.g. text/plain overrides text/* */
128
128
  content?: Record<string, OpenAPI3MediaType>;
129
129
  /** A map of operations links that can be followed from the response. The key of the map is a short name for the link, following the naming constraints of the names for Component Objects. */
@@ -168,7 +168,7 @@ export type OpenAPI3Encoding = Extensions & {
168
168
  */
169
169
  export type OpenAPI3RequestBody = Extensions & {
170
170
  /** A brief description of the request body. This could contain examples of use. CommonMark syntax MAY be used for rich text representation. */
171
- description: string;
171
+ description?: string;
172
172
  /** The content of the request body. The key is a media type or media type range and the value describes it. For requests that match multiple keys, only the most specific key is applicable. e.g. text/plain overrides text/* */
173
173
  content: Record<string, OpenAPI3MediaType>;
174
174
  /** Determines if the request body is required in the request. Defaults to false. */
@@ -544,8 +544,8 @@ export type OpenAPI3Operation = Extensions & {
544
544
  responses?: any;
545
545
  tags?: string[];
546
546
  operationId?: string;
547
- requestBody?: any;
548
- parameters: OpenAPI3Parameter[];
547
+ requestBody?: OpenAPI3RequestBody;
548
+ parameters: Refable<OpenAPI3Parameter>[];
549
549
  deprecated?: boolean;
550
550
  security?: Record<string, string[]>[];
551
551
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@typespec/openapi3",
3
- "version": "0.59.0-dev.4",
3
+ "version": "0.59.0-dev.6",
4
4
  "author": "Microsoft Corporation",
5
5
  "description": "TypeSpec library for emitting OpenAPI 3.0 from the TypeSpec REST protocol binding and converting OpenAPI3 to TypeSpec",
6
6
  "homepage": "https://typespec.io",
@@ -59,13 +59,13 @@
59
59
  "@typespec/openapi": "~0.58.0 || >=0.59.0-dev <0.59.0",
60
60
  "@typespec/rest": "~0.58.0 || >=0.59.0-dev <0.59.0",
61
61
  "@typespec/versioning": "~0.58.0 || >=0.59.0-dev <0.59.0",
62
- "@vitest/coverage-v8": "^1.6.0",
63
- "@vitest/ui": "^1.6.0",
62
+ "@vitest/coverage-v8": "^2.0.4",
63
+ "@vitest/ui": "^2.0.4",
64
64
  "c8": "^10.1.2",
65
65
  "cross-env": "~7.0.3",
66
- "rimraf": "~5.0.7",
67
- "typescript": "~5.5.3",
68
- "vitest": "^1.6.0",
66
+ "rimraf": "~6.0.1",
67
+ "typescript": "~5.5.4",
68
+ "vitest": "^2.0.4",
69
69
  "@typespec/tspd": "~0.46.0"
70
70
  },
71
71
  "scripts": {