diff --git a/common/changes/@autorest/openapi-to-typespec/bodyrootFix_2024-10-24-11-57.json b/common/changes/@autorest/openapi-to-typespec/bodyrootFix_2024-10-24-11-57.json new file mode 100644 index 0000000000..b80a880f5a --- /dev/null +++ b/common/changes/@autorest/openapi-to-typespec/bodyrootFix_2024-10-24-11-57.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@autorest/openapi-to-typespec", + "comment": "Change @body to @bodyRoot", + "type": "patch" + } + ], + "packageName": "@autorest/openapi-to-typespec" +} \ No newline at end of file diff --git a/packages/extensions/openapi-to-typespec/src/generate/generate-operations.ts b/packages/extensions/openapi-to-typespec/src/generate/generate-operations.ts index ff2bde24bf..633693c0c3 100644 --- a/packages/extensions/openapi-to-typespec/src/generate/generate-operations.ts +++ b/packages/extensions/openapi-to-typespec/src/generate/generate-operations.ts @@ -81,7 +81,7 @@ export function generateProviderAction(operation: TspArmProviderActionOperation) const responses = [...new Set(operation.responses)]; // Workaround for array response, refactor later. const response = - responses.length === 1 && responses[0].endsWith("[]") ? `{@body _: ${responses[0]}}` : responses.join("|"); + responses.length === 1 && responses[0].endsWith("[]") ? `{@bodyRoot _: ${responses[0]}}` : responses.join("|"); if (response !== "void") { templateParameters.push(`Response = ${response}`); } diff --git a/packages/extensions/openapi-to-typespec/src/transforms/transform-arm-resources.ts b/packages/extensions/openapi-to-typespec/src/transforms/transform-arm-resources.ts index 804a83b138..712c071f3b 100644 --- a/packages/extensions/openapi-to-typespec/src/transforms/transform-arm-resources.ts +++ b/packages/extensions/openapi-to-typespec/src/transforms/transform-arm-resources.ts @@ -310,7 +310,7 @@ function convertResourceCreateOrReplaceOperation( if (acceptedResponse) { let responseParameter = `ArmResourceCreatedResponse<${resourceMetadata.SwaggerModelName}> | ArmResourceUpdatedResponse<${resourceMetadata.SwaggerModelName}>`; if (isResponseSchema(acceptedResponse) && acceptedResponse.schema) { - responseParameter += `| (ArmAcceptedLroResponse & {@body _: ${resourceMetadata.SwaggerModelName};})`; + responseParameter += `| (ArmAcceptedLroResponse & {@bodyRoot _: ${resourceMetadata.SwaggerModelName};})`; } else responseParameter += `| ArmAcceptedLroResponse`; templateParameters.push(`Response = ${responseParameter}`); suppressions = getSuppressionsForArmResourceCreateOrReplaceAsync(); diff --git a/packages/extensions/openapi-to-typespec/test/arm-analysisservices/tsp-output/AnalysisServicesServer.tsp b/packages/extensions/openapi-to-typespec/test/arm-analysisservices/tsp-output/AnalysisServicesServer.tsp index 908db7a5af..b6fc91bcc1 100644 --- a/packages/extensions/openapi-to-typespec/test/arm-analysisservices/tsp-output/AnalysisServicesServer.tsp +++ b/packages/extensions/openapi-to-typespec/test/arm-analysisservices/tsp-output/AnalysisServicesServer.tsp @@ -42,7 +42,7 @@ interface AnalysisServicesServersOperationGroup { create is ArmResourceCreateOrReplaceAsync< AnalysisServicesServer, Response = ArmResourceCreatedResponse | ArmResourceUpdatedResponse | (ArmAcceptedLroResponse & { - @body _: AnalysisServicesServer; + @bodyRoot _: AnalysisServicesServer; }) >; diff --git a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/Disk.tsp b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/Disk.tsp index 67a42713c5..3cb3c32747 100644 --- a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/Disk.tsp +++ b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/Disk.tsp @@ -64,7 +64,7 @@ interface Disks { createOrUpdate is ArmResourceCreateOrReplaceAsync< Disk, Response = ArmResourceCreatedResponse | ArmResourceUpdatedResponse | (ArmAcceptedLroResponse & { - @body _: Disk; + @bodyRoot _: Disk; }) >; diff --git a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/DiskAccess.tsp b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/DiskAccess.tsp index 8d76c5805f..e04e445308 100644 --- a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/DiskAccess.tsp +++ b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/DiskAccess.tsp @@ -43,7 +43,7 @@ interface DiskAccesses { createOrUpdate is ArmResourceCreateOrReplaceAsync< DiskAccess, Response = ArmResourceCreatedResponse | ArmResourceUpdatedResponse | (ArmAcceptedLroResponse & { - @body _: DiskAccess; + @bodyRoot _: DiskAccess; }) >; diff --git a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/DiskEncryptionSet.tsp b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/DiskEncryptionSet.tsp index d98ffeb847..9cf9505900 100644 --- a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/DiskEncryptionSet.tsp +++ b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/DiskEncryptionSet.tsp @@ -43,7 +43,7 @@ interface DiskEncryptionSets { createOrUpdate is ArmResourceCreateOrReplaceAsync< DiskEncryptionSet, Response = ArmResourceCreatedResponse | ArmResourceUpdatedResponse | (ArmAcceptedLroResponse & { - @body _: DiskEncryptionSet; + @bodyRoot _: DiskEncryptionSet; }) >; diff --git a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/Gallery.tsp b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/Gallery.tsp index ec3dcbd4b1..abdf63675c 100644 --- a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/Gallery.tsp +++ b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/Gallery.tsp @@ -52,7 +52,7 @@ interface Galleries { createOrUpdate is ArmResourceCreateOrReplaceAsync< Gallery, Response = ArmResourceCreatedResponse | ArmResourceUpdatedResponse | (ArmAcceptedLroResponse & { - @body _: Gallery; + @bodyRoot _: Gallery; }) >; diff --git a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/GalleryApplication.tsp b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/GalleryApplication.tsp index 44575ceebf..7da394a558 100644 --- a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/GalleryApplication.tsp +++ b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/GalleryApplication.tsp @@ -40,7 +40,7 @@ interface GalleryApplications { createOrUpdate is ArmResourceCreateOrReplaceAsync< GalleryApplication, Response = ArmResourceCreatedResponse | ArmResourceUpdatedResponse | (ArmAcceptedLroResponse & { - @body _: GalleryApplication; + @bodyRoot _: GalleryApplication; }) >; diff --git a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/GalleryApplicationVersion.tsp b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/GalleryApplicationVersion.tsp index 46b8f76335..6c48666a53 100644 --- a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/GalleryApplicationVersion.tsp +++ b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/GalleryApplicationVersion.tsp @@ -49,7 +49,7 @@ interface GalleryApplicationVersions { createOrUpdate is ArmResourceCreateOrReplaceAsync< GalleryApplicationVersion, Response = ArmResourceCreatedResponse | ArmResourceUpdatedResponse | (ArmAcceptedLroResponse & { - @body _: GalleryApplicationVersion; + @bodyRoot _: GalleryApplicationVersion; }) >; diff --git a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/GalleryImage.tsp b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/GalleryImage.tsp index 7fcd78e855..124740b1e2 100644 --- a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/GalleryImage.tsp +++ b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/GalleryImage.tsp @@ -40,7 +40,7 @@ interface GalleryImages { createOrUpdate is ArmResourceCreateOrReplaceAsync< GalleryImage, Response = ArmResourceCreatedResponse | ArmResourceUpdatedResponse | (ArmAcceptedLroResponse & { - @body _: GalleryImage; + @bodyRoot _: GalleryImage; }) >; diff --git a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/GalleryImageVersion.tsp b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/GalleryImageVersion.tsp index a68c8efa34..5b68407884 100644 --- a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/GalleryImageVersion.tsp +++ b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/GalleryImageVersion.tsp @@ -49,7 +49,7 @@ interface GalleryImageVersions { createOrUpdate is ArmResourceCreateOrReplaceAsync< GalleryImageVersion, Response = ArmResourceCreatedResponse | ArmResourceUpdatedResponse | (ArmAcceptedLroResponse & { - @body _: GalleryImageVersion; + @bodyRoot _: GalleryImageVersion; }) >; diff --git a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/PrivateEndpointConnection.tsp b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/PrivateEndpointConnection.tsp index e895982427..a5435ea896 100644 --- a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/PrivateEndpointConnection.tsp +++ b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/PrivateEndpointConnection.tsp @@ -56,7 +56,7 @@ interface PrivateEndpointConnections { updateAPrivateEndpointConnection is ArmResourceCreateOrReplaceAsync< PrivateEndpointConnection, Response = ArmResourceCreatedResponse | ArmResourceUpdatedResponse | (ArmAcceptedLroResponse & { - @body _: PrivateEndpointConnection; + @bodyRoot _: PrivateEndpointConnection; }) >; diff --git a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/Snapshot.tsp b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/Snapshot.tsp index a941af0266..dd95da6a50 100644 --- a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/Snapshot.tsp +++ b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/Snapshot.tsp @@ -53,7 +53,7 @@ interface Snapshots { createOrUpdate is ArmResourceCreateOrReplaceAsync< Snapshot, Response = ArmResourceCreatedResponse | ArmResourceUpdatedResponse | (ArmAcceptedLroResponse & { - @body _: Snapshot; + @bodyRoot _: Snapshot; }) >; diff --git a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/VirtualMachineScaleSetVM.tsp b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/VirtualMachineScaleSetVM.tsp index d46d06dbbd..2fa4a2081e 100644 --- a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/VirtualMachineScaleSetVM.tsp +++ b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/VirtualMachineScaleSetVM.tsp @@ -87,7 +87,7 @@ interface VirtualMachineScaleSetVMS { update is ArmResourceCreateOrReplaceAsync< VirtualMachineScaleSetVM, Response = ArmResourceCreatedResponse | ArmResourceUpdatedResponse | (ArmAcceptedLroResponse & { - @body _: VirtualMachineScaleSetVM; + @bodyRoot _: VirtualMachineScaleSetVM; }) >; diff --git a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/routes.tsp b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/routes.tsp index ed0bbf3841..2fbcf20878 100644 --- a/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/routes.tsp +++ b/packages/extensions/openapi-to-typespec/test/arm-compute/tsp-output/routes.tsp @@ -126,7 +126,7 @@ interface VirtualMachineImagesOperations { @action("versions") list is ArmProviderActionAsync< Response = { - @body _: VirtualMachineImageResource[]; + @bodyRoot _: VirtualMachineImageResource[]; }, Scope = SubscriptionActionScope, Parameters = { @@ -177,7 +177,7 @@ interface VirtualMachineImagesOperations { @action("artifacttypes/vmimage/offers") listOffers is ArmProviderActionAsync< Response = { - @body _: VirtualMachineImageResource[]; + @bodyRoot _: VirtualMachineImageResource[]; }, Scope = SubscriptionActionScope, Parameters = { @@ -200,7 +200,7 @@ interface VirtualMachineImagesOperations { @action("publishers") listPublishers is ArmProviderActionAsync< Response = { - @body _: VirtualMachineImageResource[]; + @bodyRoot _: VirtualMachineImageResource[]; }, Scope = SubscriptionActionScope, Parameters = LocationParameter @@ -214,7 +214,7 @@ interface VirtualMachineImagesOperations { @action("skus") listSkus is ArmProviderActionAsync< Response = { - @body _: VirtualMachineImageResource[]; + @bodyRoot _: VirtualMachineImageResource[]; }, Scope = SubscriptionActionScope, Parameters = { @@ -313,7 +313,7 @@ interface VirtualMachineImagesEdgeZoneOperations { @action("versions") list is ArmProviderActionAsync< Response = { - @body _: VirtualMachineImageResource[]; + @bodyRoot _: VirtualMachineImageResource[]; }, Scope = SubscriptionActionScope, Parameters = { @@ -375,7 +375,7 @@ interface VirtualMachineImagesEdgeZoneOperations { @action("artifacttypes/vmimage/offers") listOffers is ArmProviderActionAsync< Response = { - @body _: VirtualMachineImageResource[]; + @bodyRoot _: VirtualMachineImageResource[]; }, Scope = SubscriptionActionScope, Parameters = { @@ -405,7 +405,7 @@ interface VirtualMachineImagesEdgeZoneOperations { @action("publishers") listPublishers is ArmProviderActionAsync< Response = { - @body _: VirtualMachineImageResource[]; + @bodyRoot _: VirtualMachineImageResource[]; }, Scope = SubscriptionActionScope, Parameters = { @@ -428,7 +428,7 @@ interface VirtualMachineImagesEdgeZoneOperations { @action("skus") listSkus is ArmProviderActionAsync< Response = { - @body _: VirtualMachineImageResource[]; + @bodyRoot _: VirtualMachineImageResource[]; }, Scope = SubscriptionActionScope, Parameters = {