"sourcesContent": ["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { FullOperationResponse } from \"@azure/core-client\";\nimport type { PipelineResponse } from \"@azure/core-rest-pipeline\";\nimport { createHttpHeaders } from \"@azure/core-rest-pipeline\";\nimport type { HttpHeadersLike, WebResourceLike } from \"./util.js\";\nimport { toHttpHeadersLike, toPipelineRequest, toWebResourceLike } from \"./util.js\";\n/**\n * Http Response that is compatible with the core-v1(core-http).\n */\nexport interface CompatResponse extends Omit<FullOperationResponse, \"request\" | \"headers\"> {\n /**\n * A description of a HTTP request to be made to a remote server.\n */\n request: WebResourceLike;\n /**\n * A collection of HTTP header key/value pairs.\n */\n headers: HttpHeadersLike;\n}\n\nconst originalResponse = Symbol(\"Original FullOperationResponse\");\ntype ExtendedCompatResponse = CompatResponse & { [originalResponse]?: FullOperationResponse };\n\n/**\n * A helper to convert response objects from the new pipeline back to the old one.\n * @param response - A response object from core-client.\n * @returns A response compatible with `HttpOperationResponse` from core-http.\n */\nexport function toCompatResponse(\n response: FullOperationResponse,\n options?: { createProxy?: boolean },\n): CompatResponse {\n let request = toWebResourceLike(response.request);\n let headers = toHttpHeadersLike(response.headers);\n if (options?.createProxy) {\n return new Proxy(response, {\n get(target, prop, receiver) {\n if (prop === \"headers\") {\n return headers;\n } else if (prop === \"request\") {\n return request;\n } else if (prop === originalResponse) {\n return response;\n }\n return Reflect.get(target, prop, receiver);\n },\n set(target, prop, value, receiver) {\n if (prop === \"headers\") {\n headers = value;\n } else if (prop === \"request\") {\n request = value;\n }\n return Reflect.set(target, prop, value, receiver);\n },\n }) as unknown as CompatResponse;\n } else {\n return {\n ...response,\n request,\n headers,\n };\n }\n}\n\n/**\n * A helper to convert back to a PipelineResponse\n * @param compatResponse - A response compatible with `HttpOperationResponse` from core-http.\n */\nexport function toPipelineResponse(compatResponse: CompatResponse): PipelineResponse {\n const extendedCompatResponse = compatResponse as ExtendedCompatResponse;\n const response = extendedCompatResponse[originalResponse];\n const headers = createHttpHeaders(compatResponse.headers.toJson({ preserveCase: true }));\n if (response) {\n response.headers = headers;\n return response;\n } else {\n return {\n ...compatResponse,\n headers,\n request: toPipelineRequest(compatResponse.request),\n };\n }\n}\n"],
|
"mappings": ";;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,gCAAkC;AAElC,kBAAwE;AAexE,MAAM,mBAAmB,uBAAO,gCAAgC;AAQzD,SAAS,iBACd,UACA,SACgB;AAChB,MAAI,cAAU,+BAAkB,SAAS,OAAO;AAChD,MAAI,cAAU,+BAAkB,SAAS,OAAO;AAChD,MAAI,SAAS,aAAa;AACxB,WAAO,IAAI,MAAM,UAAU;AAAA,MACzB,IAAI,QAAQ,MAAM,UAAU;AAC1B,YAAI,SAAS,WAAW;AACtB,iBAAO;AAAA,QACT,WAAW,SAAS,WAAW;AAC7B,iBAAO;AAAA,QACT,WAAW,SAAS,kBAAkB;AACpC,iBAAO;AAAA,QACT;AACA,eAAO,QAAQ,IAAI,QAAQ,MAAM,QAAQ;AAAA,MAC3C;AAAA,MACA,IAAI,QAAQ,MAAM,OAAO,UAAU;AACjC,YAAI,SAAS,WAAW;AACtB,oBAAU;AAAA,QACZ,WAAW,SAAS,WAAW;AAC7B,oBAAU;AAAA,QACZ;AACA,eAAO,QAAQ,IAAI,QAAQ,MAAM,OAAO,QAAQ;AAAA,MAClD;AAAA,IACF,CAAC;AAAA,EACH,OAAO;AACL,WAAO;AAAA,MACL,GAAG;AAAA,MACH;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACF;AAMO,SAAS,mBAAmB,gBAAkD;AACnF,QAAM,yBAAyB;AAC/B,QAAM,WAAW,uBAAuB,gBAAgB;AACxD,QAAM,cAAU,6CAAkB,eAAe,QAAQ,OAAO,EAAE,cAAc,KAAK,CAAC,CAAC;AACvF,MAAI,UAAU;AACZ,aAAS,UAAU;AACnB,WAAO;AAAA,EACT,OAAO;AACL,WAAO;AAAA,MACL,GAAG;AAAA,MACH;AAAA,MACA,aAAS,+BAAkB,eAAe,OAAO;AAAA,IACnD;AAAA,EACF;AACF;",
|