@azure/eventgrid-namespaces 1.0.1-alpha.20250618.1 → 1.0.1-alpha.20250718.2

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.
Files changed (58) hide show
  1. package/dist/browser/consumer.js +1 -1
  2. package/dist/browser/consumer.js.map +1 -1
  3. package/dist/browser/eventGridReceiverClient.js +7 -1
  4. package/dist/browser/eventGridReceiverClient.js.map +1 -1
  5. package/dist/browser/eventGridSenderClient.js +14 -3
  6. package/dist/browser/eventGridSenderClient.js.map +1 -1
  7. package/dist/browser/generated/api/eventGridContext.js +12 -9
  8. package/dist/browser/generated/api/eventGridContext.js.map +1 -1
  9. package/dist/browser/generated/api/operations.js +63 -28
  10. package/dist/browser/generated/api/operations.js.map +1 -1
  11. package/dist/browser/generated/eventGridClient.js +8 -3
  12. package/dist/browser/generated/eventGridClient.js.map +1 -1
  13. package/dist/browser/generated/static-helpers/urlTemplate.js +2 -2
  14. package/dist/browser/generated/static-helpers/urlTemplate.js.map +1 -1
  15. package/dist/commonjs/consumer.js +1 -1
  16. package/dist/commonjs/consumer.js.map +1 -1
  17. package/dist/commonjs/eventGridReceiverClient.js +7 -1
  18. package/dist/commonjs/eventGridReceiverClient.js.map +1 -1
  19. package/dist/commonjs/eventGridSenderClient.js +14 -3
  20. package/dist/commonjs/eventGridSenderClient.js.map +1 -1
  21. package/dist/commonjs/generated/api/eventGridContext.js +12 -9
  22. package/dist/commonjs/generated/api/eventGridContext.js.map +1 -1
  23. package/dist/commonjs/generated/api/operations.js +63 -28
  24. package/dist/commonjs/generated/api/operations.js.map +1 -1
  25. package/dist/commonjs/generated/eventGridClient.js +8 -3
  26. package/dist/commonjs/generated/eventGridClient.js.map +1 -1
  27. package/dist/commonjs/generated/static-helpers/urlTemplate.js +2 -2
  28. package/dist/commonjs/generated/static-helpers/urlTemplate.js.map +1 -1
  29. package/dist/commonjs/tsdoc-metadata.json +11 -11
  30. package/dist/esm/consumer.js +1 -1
  31. package/dist/esm/consumer.js.map +1 -1
  32. package/dist/esm/eventGridReceiverClient.js +7 -1
  33. package/dist/esm/eventGridReceiverClient.js.map +1 -1
  34. package/dist/esm/eventGridSenderClient.js +14 -3
  35. package/dist/esm/eventGridSenderClient.js.map +1 -1
  36. package/dist/esm/generated/api/eventGridContext.js +12 -9
  37. package/dist/esm/generated/api/eventGridContext.js.map +1 -1
  38. package/dist/esm/generated/api/operations.js +63 -28
  39. package/dist/esm/generated/api/operations.js.map +1 -1
  40. package/dist/esm/generated/eventGridClient.js +8 -3
  41. package/dist/esm/generated/eventGridClient.js.map +1 -1
  42. package/dist/esm/generated/static-helpers/urlTemplate.js +2 -2
  43. package/dist/esm/generated/static-helpers/urlTemplate.js.map +1 -1
  44. package/dist/react-native/consumer.js +1 -1
  45. package/dist/react-native/consumer.js.map +1 -1
  46. package/dist/react-native/eventGridReceiverClient.js +7 -1
  47. package/dist/react-native/eventGridReceiverClient.js.map +1 -1
  48. package/dist/react-native/eventGridSenderClient.js +14 -3
  49. package/dist/react-native/eventGridSenderClient.js.map +1 -1
  50. package/dist/react-native/generated/api/eventGridContext.js +12 -9
  51. package/dist/react-native/generated/api/eventGridContext.js.map +1 -1
  52. package/dist/react-native/generated/api/operations.js +63 -28
  53. package/dist/react-native/generated/api/operations.js.map +1 -1
  54. package/dist/react-native/generated/eventGridClient.js +8 -3
  55. package/dist/react-native/generated/eventGridClient.js.map +1 -1
  56. package/dist/react-native/generated/static-helpers/urlTemplate.js +2 -2
  57. package/dist/react-native/generated/static-helpers/urlTemplate.js.map +1 -1
  58. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"eventGridClient.js","sourceRoot":"","sources":["../../../src/generated/eventGridClient.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EACL,eAAe,GAGhB,MAAM,gBAAgB,CAAC;AAmBxB,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAM7B,MAAM,OAAO,eAAe;IAK1B,uCAAuC;IACvC,YACE,aAAqB,EACrB,UAA2C,EAC3C,UAAyC,EAAE;;QAE3C,MAAM,iBAAiB,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,gBAAgB,0CAAE,eAAe,CAAC;QACrE,MAAM,eAAe,GAAG,iBAAiB;YACvC,CAAC,CAAC,GAAG,iBAAiB,kBAAkB;YACxC,CAAC,CAAC,iBAAiB,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,eAAe,CAAC,aAAa,EAAE,UAAU,kCACnD,OAAO,KACV,gBAAgB,EAAE,EAAE,eAAe,EAAE,IACrC,CAAC;QACH,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;IACxC,CAAC;IAED,sUAAsU;IACtU,oBAAoB,CAClB,SAAiB,EACjB,qBAA6B,EAC7B,UAAoB,EACpB,UAA8C,EAAE,cAAc,EAAE,EAAE,EAAE;QAEpE,OAAO,oBAAoB,CACzB,IAAI,CAAC,OAAO,EACZ,SAAS,EACT,qBAAqB,EACrB,UAAU,EACV,OAAO,CACR,CAAC;IACJ,CAAC;IAED,8RAA8R;IAC9R,iBAAiB,CACf,SAAiB,EACjB,qBAA6B,EAC7B,UAAoB,EACpB,UAA2C,EAAE,cAAc,EAAE,EAAE,EAAE;QAEjE,OAAO,iBAAiB,CACtB,IAAI,CAAC,OAAO,EACZ,SAAS,EACT,qBAAqB,EACrB,UAAU,EACV,OAAO,CACR,CAAC;IACJ,CAAC;IAED,0PAA0P;IAC1P,kBAAkB,CAChB,SAAiB,EACjB,qBAA6B,EAC7B,UAAoB,EACpB,UAA4C,EAAE,cAAc,EAAE,EAAE,EAAE;QAElE,OAAO,kBAAkB,CACvB,IAAI,CAAC,OAAO,EACZ,SAAS,EACT,qBAAqB,EACrB,UAAU,EACV,OAAO,CACR,CAAC;IACJ,CAAC;IAED,oSAAoS;IACpS,sBAAsB,CACpB,SAAiB,EACjB,qBAA6B,EAC7B,UAAoB,EACpB,UAAgD,EAAE,cAAc,EAAE,EAAE,EAAE;QAEtE,OAAO,sBAAsB,CAC3B,IAAI,CAAC,OAAO,EACZ,SAAS,EACT,qBAAqB,EACrB,UAAU,EACV,OAAO,CACR,CAAC;IACJ,CAAC;IAED,2DAA2D;IAC3D,kBAAkB,CAChB,SAAiB,EACjB,qBAA6B,EAC7B,UAA4C,EAAE,cAAc,EAAE,EAAE,EAAE;QAElE,OAAO,kBAAkB,CACvB,IAAI,CAAC,OAAO,EACZ,SAAS,EACT,qBAAqB,EACrB,OAAO,CACR,CAAC;IACJ,CAAC;IAED,4DAA4D;IAC5D,kBAAkB,CAChB,SAAiB,EACjB,MAAoB,EACpB,UAA4C,EAAE,cAAc,EAAE,EAAE,EAAE;QAElE,OAAO,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC;IAED,yDAAyD;IACzD,iBAAiB,CACf,SAAiB,EACjB,KAAiB,EACjB,UAA2C,EAAE,cAAc,EAAE,EAAE,EAAE;QAEjE,OAAO,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;CACF","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n createEventGrid,\n EventGridContext,\n EventGridClientOptionalParams,\n} from \"./api/index.js\";\nimport {\n CloudEvent,\n PublishResult,\n ReceiveResult,\n AcknowledgeResult,\n ReleaseResult,\n RejectResult,\n RenewLocksResult,\n} from \"./models/models.js\";\nimport {\n RenewCloudEventLocksOptionalParams,\n RejectCloudEventsOptionalParams,\n ReleaseCloudEventsOptionalParams,\n AcknowledgeCloudEventsOptionalParams,\n ReceiveCloudEventsOptionalParams,\n PublishCloudEventsOptionalParams,\n PublishCloudEventOptionalParams,\n} from \"./api/options.js\";\nimport {\n renewCloudEventLocks,\n rejectCloudEvents,\n releaseCloudEvents,\n acknowledgeCloudEvents,\n receiveCloudEvents,\n publishCloudEvents,\n publishCloudEvent,\n} from \"./api/operations.js\";\nimport { Pipeline } from \"@azure/core-rest-pipeline\";\nimport { KeyCredential, TokenCredential } from \"@azure/core-auth\";\n\nexport { EventGridClientOptionalParams } from \"./api/eventGridContext.js\";\n\nexport class EventGridClient {\n private _client: EventGridContext;\n /** The pipeline used by this client to make requests */\n public readonly pipeline: Pipeline;\n\n /** Azure Messaging EventGrid Client */\n constructor(\n endpointParam: string,\n credential: KeyCredential | TokenCredential,\n options: EventGridClientOptionalParams = {},\n ) {\n const prefixFromOptions = options?.userAgentOptions?.userAgentPrefix;\n const userAgentPrefix = prefixFromOptions\n ? `${prefixFromOptions} azsdk-js-client`\n : `azsdk-js-client`;\n this._client = createEventGrid(endpointParam, credential, {\n ...options,\n userAgentOptions: { userAgentPrefix },\n });\n this.pipeline = this._client.pipeline;\n }\n\n /** Renew locks for a batch of Cloud Events. The response will include the set of successfully renewed lock tokens, along with other failed lock tokens with their corresponding error information. Successfully renewed locks will ensure that the associated event is only available to the consumer that holds the renewed lock. */\n renewCloudEventLocks(\n topicName: string,\n eventSubscriptionName: string,\n lockTokens: string[],\n options: RenewCloudEventLocksOptionalParams = { requestOptions: {} },\n ): Promise<RenewLocksResult> {\n return renewCloudEventLocks(\n this._client,\n topicName,\n eventSubscriptionName,\n lockTokens,\n options,\n );\n }\n\n /** Reject a batch of Cloud Events. The response will include the set of successfully rejected lock tokens, along with other failed lock tokens with their corresponding error information. Successfully rejected events will be dead-lettered and can no longer be received by a consumer. */\n rejectCloudEvents(\n topicName: string,\n eventSubscriptionName: string,\n lockTokens: string[],\n options: RejectCloudEventsOptionalParams = { requestOptions: {} },\n ): Promise<RejectResult> {\n return rejectCloudEvents(\n this._client,\n topicName,\n eventSubscriptionName,\n lockTokens,\n options,\n );\n }\n\n /** Release a batch of Cloud Events. The response will include the set of successfully released lock tokens, along with other failed lock tokens with their corresponding error information. Successfully released events can be received by consumers. */\n releaseCloudEvents(\n topicName: string,\n eventSubscriptionName: string,\n lockTokens: string[],\n options: ReleaseCloudEventsOptionalParams = { requestOptions: {} },\n ): Promise<ReleaseResult> {\n return releaseCloudEvents(\n this._client,\n topicName,\n eventSubscriptionName,\n lockTokens,\n options,\n );\n }\n\n /** Acknowledge a batch of Cloud Events. The response will include the set of successfully acknowledged lock tokens, along with other failed lock tokens with their corresponding error information. Successfully acknowledged events will no longer be available to be received by any consumer. */\n acknowledgeCloudEvents(\n topicName: string,\n eventSubscriptionName: string,\n lockTokens: string[],\n options: AcknowledgeCloudEventsOptionalParams = { requestOptions: {} },\n ): Promise<AcknowledgeResult> {\n return acknowledgeCloudEvents(\n this._client,\n topicName,\n eventSubscriptionName,\n lockTokens,\n options,\n );\n }\n\n /** Receive a batch of Cloud Events from a subscription. */\n receiveCloudEvents(\n topicName: string,\n eventSubscriptionName: string,\n options: ReceiveCloudEventsOptionalParams = { requestOptions: {} },\n ): Promise<ReceiveResult> {\n return receiveCloudEvents(\n this._client,\n topicName,\n eventSubscriptionName,\n options,\n );\n }\n\n /** Publish a batch of Cloud Events to a namespace topic. */\n publishCloudEvents(\n topicName: string,\n events: CloudEvent[],\n options: PublishCloudEventsOptionalParams = { requestOptions: {} },\n ): Promise<PublishResult> {\n return publishCloudEvents(this._client, topicName, events, options);\n }\n\n /** Publish a single Cloud Event to a namespace topic. */\n publishCloudEvent(\n topicName: string,\n event: CloudEvent,\n options: PublishCloudEventOptionalParams = { requestOptions: {} },\n ): Promise<PublishResult> {\n return publishCloudEvent(this._client, topicName, event, options);\n }\n}\n"]}
1
+ {"version":3,"file":"eventGridClient.js","sourceRoot":"","sources":["../../../src/generated/eventGridClient.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EACL,eAAe,GAGhB,MAAM,gBAAgB,CAAC;AAmBxB,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAM7B,MAAM,OAAO,eAAe;IAClB,OAAO,CAAmB;IAClC,wDAAwD;IACxC,QAAQ,CAAW;IAEnC,uCAAuC;IACvC,YACE,aAAqB,EACrB,UAA2C,EAC3C,UAAyC,EAAE;QAE3C,MAAM,iBAAiB,GAAG,OAAO,EAAE,gBAAgB,EAAE,eAAe,CAAC;QACrE,MAAM,eAAe,GAAG,iBAAiB;YACvC,CAAC,CAAC,GAAG,iBAAiB,kBAAkB;YACxC,CAAC,CAAC,iBAAiB,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,eAAe,CAAC,aAAa,EAAE,UAAU,EAAE;YACxD,GAAG,OAAO;YACV,gBAAgB,EAAE,EAAE,eAAe,EAAE;SACtC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;IACxC,CAAC;IAED,sUAAsU;IACtU,oBAAoB,CAClB,SAAiB,EACjB,qBAA6B,EAC7B,UAAoB,EACpB,UAA8C,EAAE,cAAc,EAAE,EAAE,EAAE;QAEpE,OAAO,oBAAoB,CACzB,IAAI,CAAC,OAAO,EACZ,SAAS,EACT,qBAAqB,EACrB,UAAU,EACV,OAAO,CACR,CAAC;IACJ,CAAC;IAED,8RAA8R;IAC9R,iBAAiB,CACf,SAAiB,EACjB,qBAA6B,EAC7B,UAAoB,EACpB,UAA2C,EAAE,cAAc,EAAE,EAAE,EAAE;QAEjE,OAAO,iBAAiB,CACtB,IAAI,CAAC,OAAO,EACZ,SAAS,EACT,qBAAqB,EACrB,UAAU,EACV,OAAO,CACR,CAAC;IACJ,CAAC;IAED,0PAA0P;IAC1P,kBAAkB,CAChB,SAAiB,EACjB,qBAA6B,EAC7B,UAAoB,EACpB,UAA4C,EAAE,cAAc,EAAE,EAAE,EAAE;QAElE,OAAO,kBAAkB,CACvB,IAAI,CAAC,OAAO,EACZ,SAAS,EACT,qBAAqB,EACrB,UAAU,EACV,OAAO,CACR,CAAC;IACJ,CAAC;IAED,oSAAoS;IACpS,sBAAsB,CACpB,SAAiB,EACjB,qBAA6B,EAC7B,UAAoB,EACpB,UAAgD,EAAE,cAAc,EAAE,EAAE,EAAE;QAEtE,OAAO,sBAAsB,CAC3B,IAAI,CAAC,OAAO,EACZ,SAAS,EACT,qBAAqB,EACrB,UAAU,EACV,OAAO,CACR,CAAC;IACJ,CAAC;IAED,2DAA2D;IAC3D,kBAAkB,CAChB,SAAiB,EACjB,qBAA6B,EAC7B,UAA4C,EAAE,cAAc,EAAE,EAAE,EAAE;QAElE,OAAO,kBAAkB,CACvB,IAAI,CAAC,OAAO,EACZ,SAAS,EACT,qBAAqB,EACrB,OAAO,CACR,CAAC;IACJ,CAAC;IAED,4DAA4D;IAC5D,kBAAkB,CAChB,SAAiB,EACjB,MAAoB,EACpB,UAA4C,EAAE,cAAc,EAAE,EAAE,EAAE;QAElE,OAAO,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC;IAED,yDAAyD;IACzD,iBAAiB,CACf,SAAiB,EACjB,KAAiB,EACjB,UAA2C,EAAE,cAAc,EAAE,EAAE,EAAE;QAEjE,OAAO,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;CACF","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport {\n createEventGrid,\n EventGridContext,\n EventGridClientOptionalParams,\n} from \"./api/index.js\";\nimport {\n CloudEvent,\n PublishResult,\n ReceiveResult,\n AcknowledgeResult,\n ReleaseResult,\n RejectResult,\n RenewLocksResult,\n} from \"./models/models.js\";\nimport {\n RenewCloudEventLocksOptionalParams,\n RejectCloudEventsOptionalParams,\n ReleaseCloudEventsOptionalParams,\n AcknowledgeCloudEventsOptionalParams,\n ReceiveCloudEventsOptionalParams,\n PublishCloudEventsOptionalParams,\n PublishCloudEventOptionalParams,\n} from \"./api/options.js\";\nimport {\n renewCloudEventLocks,\n rejectCloudEvents,\n releaseCloudEvents,\n acknowledgeCloudEvents,\n receiveCloudEvents,\n publishCloudEvents,\n publishCloudEvent,\n} from \"./api/operations.js\";\nimport { Pipeline } from \"@azure/core-rest-pipeline\";\nimport { KeyCredential, TokenCredential } from \"@azure/core-auth\";\n\nexport { EventGridClientOptionalParams } from \"./api/eventGridContext.js\";\n\nexport class EventGridClient {\n private _client: EventGridContext;\n /** The pipeline used by this client to make requests */\n public readonly pipeline: Pipeline;\n\n /** Azure Messaging EventGrid Client */\n constructor(\n endpointParam: string,\n credential: KeyCredential | TokenCredential,\n options: EventGridClientOptionalParams = {},\n ) {\n const prefixFromOptions = options?.userAgentOptions?.userAgentPrefix;\n const userAgentPrefix = prefixFromOptions\n ? `${prefixFromOptions} azsdk-js-client`\n : `azsdk-js-client`;\n this._client = createEventGrid(endpointParam, credential, {\n ...options,\n userAgentOptions: { userAgentPrefix },\n });\n this.pipeline = this._client.pipeline;\n }\n\n /** Renew locks for a batch of Cloud Events. The response will include the set of successfully renewed lock tokens, along with other failed lock tokens with their corresponding error information. Successfully renewed locks will ensure that the associated event is only available to the consumer that holds the renewed lock. */\n renewCloudEventLocks(\n topicName: string,\n eventSubscriptionName: string,\n lockTokens: string[],\n options: RenewCloudEventLocksOptionalParams = { requestOptions: {} },\n ): Promise<RenewLocksResult> {\n return renewCloudEventLocks(\n this._client,\n topicName,\n eventSubscriptionName,\n lockTokens,\n options,\n );\n }\n\n /** Reject a batch of Cloud Events. The response will include the set of successfully rejected lock tokens, along with other failed lock tokens with their corresponding error information. Successfully rejected events will be dead-lettered and can no longer be received by a consumer. */\n rejectCloudEvents(\n topicName: string,\n eventSubscriptionName: string,\n lockTokens: string[],\n options: RejectCloudEventsOptionalParams = { requestOptions: {} },\n ): Promise<RejectResult> {\n return rejectCloudEvents(\n this._client,\n topicName,\n eventSubscriptionName,\n lockTokens,\n options,\n );\n }\n\n /** Release a batch of Cloud Events. The response will include the set of successfully released lock tokens, along with other failed lock tokens with their corresponding error information. Successfully released events can be received by consumers. */\n releaseCloudEvents(\n topicName: string,\n eventSubscriptionName: string,\n lockTokens: string[],\n options: ReleaseCloudEventsOptionalParams = { requestOptions: {} },\n ): Promise<ReleaseResult> {\n return releaseCloudEvents(\n this._client,\n topicName,\n eventSubscriptionName,\n lockTokens,\n options,\n );\n }\n\n /** Acknowledge a batch of Cloud Events. The response will include the set of successfully acknowledged lock tokens, along with other failed lock tokens with their corresponding error information. Successfully acknowledged events will no longer be available to be received by any consumer. */\n acknowledgeCloudEvents(\n topicName: string,\n eventSubscriptionName: string,\n lockTokens: string[],\n options: AcknowledgeCloudEventsOptionalParams = { requestOptions: {} },\n ): Promise<AcknowledgeResult> {\n return acknowledgeCloudEvents(\n this._client,\n topicName,\n eventSubscriptionName,\n lockTokens,\n options,\n );\n }\n\n /** Receive a batch of Cloud Events from a subscription. */\n receiveCloudEvents(\n topicName: string,\n eventSubscriptionName: string,\n options: ReceiveCloudEventsOptionalParams = { requestOptions: {} },\n ): Promise<ReceiveResult> {\n return receiveCloudEvents(\n this._client,\n topicName,\n eventSubscriptionName,\n options,\n );\n }\n\n /** Publish a batch of Cloud Events to a namespace topic. */\n publishCloudEvents(\n topicName: string,\n events: CloudEvent[],\n options: PublishCloudEventsOptionalParams = { requestOptions: {} },\n ): Promise<PublishResult> {\n return publishCloudEvents(this._client, topicName, events, options);\n }\n\n /** Publish a single Cloud Event to a namespace topic. */\n publishCloudEvent(\n topicName: string,\n event: CloudEvent,\n options: PublishCloudEventOptionalParams = { requestOptions: {} },\n ): Promise<PublishResult> {\n return publishCloudEvent(this._client, topicName, event, options);\n }\n}\n"]}
@@ -4,7 +4,7 @@
4
4
  // helpers
5
5
  // ---------------------
6
6
  function encodeComponent(val, reserved, op) {
7
- return (reserved !== null && reserved !== void 0 ? reserved : op === "+") || op === "#"
7
+ return (reserved ?? op === "+") || op === "#"
8
8
  ? encodeReservedComponent(val)
9
9
  : encodeRFC3986URIComponent(val);
10
10
  }
@@ -160,7 +160,7 @@ export function expandUrlTemplate(template, context, option) {
160
160
  varValue: context[varMatch[1]],
161
161
  varName: varMatch[1],
162
162
  modifier: varMatch[2] || varMatch[3],
163
- reserved: option === null || option === void 0 ? void 0 : option.allowReserved,
163
+ reserved: option?.allowReserved,
164
164
  });
165
165
  if (varValue) {
166
166
  result.push(varValue);
@@ -1 +1 @@
1
- {"version":3,"file":"urlTemplate.js","sourceRoot":"","sources":["../../../../src/generated/static-helpers/urlTemplate.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n//---------------------\n// interfaces\n//---------------------\ninterface ValueOptions {\n isFirst: boolean; // is first value in the expression\n op?: string; // operator\n varValue?: any; // variable value\n varName?: string; // variable name\n modifier?: string; // modifier e.g *\n reserved?: boolean; // if true we'll keep reserved words with not encoding\n}\n\nexport interface UrlTemplateOptions {\n // if set to true, reserved characters will not be encoded\n allowReserved?: boolean;\n}\n\n// ---------------------\n// helpers\n// ---------------------\nfunction encodeComponent(val: string, reserved?: boolean, op?: string) {\n return (reserved ?? op === \"+\") || op === \"#\"\n ? encodeReservedComponent(val)\n : encodeRFC3986URIComponent(val);\n}\n\nfunction encodeReservedComponent(str: string) {\n return str\n .split(/(%[0-9A-Fa-f]{2})/g)\n .map((part) => (!/%[0-9A-Fa-f]/.test(part) ? encodeURI(part) : part))\n .join(\"\");\n}\n\nfunction encodeRFC3986URIComponent(str: string) {\n return encodeURIComponent(str).replace(\n /[!'()*]/g,\n (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`,\n );\n}\n\nfunction isDefined(val: any) {\n return val !== undefined && val !== null;\n}\n\nfunction getNamedAndIfEmpty(op?: string): [boolean, string] {\n return [\n !!op && [\";\", \"?\", \"&\"].includes(op),\n !!op && [\"?\", \"&\"].includes(op) ? \"=\" : \"\",\n ];\n}\n\nfunction getFirstOrSep(op?: string, isFirst = false) {\n if (isFirst) {\n return !op || op === \"+\" ? \"\" : op;\n } else if (!op || op === \"+\" || op === \"#\") {\n return \",\";\n } else if (op === \"?\") {\n return \"&\";\n } else {\n return op;\n }\n}\n\nfunction getExpandedValue(option: ValueOptions) {\n let isFirst = option.isFirst;\n const { op, varName, varValue: value, reserved } = option;\n const vals: string[] = [];\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n\n if (Array.isArray(value)) {\n for (const val of value.filter(isDefined)) {\n // prepare the following parts: separator, varName, value\n vals.push(`${getFirstOrSep(op, isFirst)}`);\n if (named && varName) {\n vals.push(`${encodeURIComponent(varName)}`);\n val === \"\" ? vals.push(ifEmpty) : vals.push(\"=\");\n }\n vals.push(encodeComponent(val, reserved, op));\n isFirst = false;\n }\n } else if (typeof value === \"object\") {\n for (const key of Object.keys(value)) {\n const val = value[key];\n if (!isDefined(val)) {\n continue;\n }\n // prepare the following parts: separator, key, value\n vals.push(`${getFirstOrSep(op, isFirst)}`);\n if (key) {\n vals.push(`${encodeURIComponent(key)}`);\n named && val === \"\" ? vals.push(ifEmpty) : vals.push(\"=\");\n }\n vals.push(encodeComponent(val, reserved, op));\n isFirst = false;\n }\n }\n return vals.join(\"\");\n}\n\nfunction getNonExpandedValue(option: ValueOptions) {\n const { op, varName, varValue: value, isFirst, reserved } = option;\n const vals: string[] = [];\n const first = getFirstOrSep(op, isFirst);\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n if (named && varName) {\n vals.push(encodeComponent(varName, reserved, op));\n if (value === \"\") {\n if (!ifEmpty) {\n vals.push(ifEmpty);\n }\n return !vals.join(\"\") ? undefined : `${first}${vals.join(\"\")}`;\n }\n vals.push(\"=\");\n }\n\n const items = [];\n if (Array.isArray(value)) {\n for (const val of value.filter(isDefined)) {\n items.push(encodeComponent(val, reserved, op));\n }\n } else if (typeof value === \"object\") {\n for (const key of Object.keys(value)) {\n if (!isDefined(value[key])) {\n continue;\n }\n items.push(encodeRFC3986URIComponent(key));\n items.push(encodeComponent(value[key], reserved, op));\n }\n }\n vals.push(items.join(\",\"));\n return !vals.join(\",\") ? undefined : `${first}${vals.join(\"\")}`;\n}\n\nfunction getVarValue(option: ValueOptions): string | undefined {\n const { op, varName, modifier, isFirst, reserved, varValue: value } = option;\n\n if (!isDefined(value)) {\n return undefined;\n } else if ([\"string\", \"number\", \"boolean\"].includes(typeof value)) {\n let val = value.toString();\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n const vals: string[] = [getFirstOrSep(op, isFirst)];\n if (named && varName) {\n // No need to encode varName considering it is already encoded\n vals.push(varName);\n val === \"\" ? vals.push(ifEmpty) : vals.push(\"=\");\n }\n if (modifier && modifier !== \"*\") {\n val = val.substring(0, parseInt(modifier, 10));\n }\n vals.push(encodeComponent(val, reserved, op));\n return vals.join(\"\");\n } else if (modifier === \"*\") {\n return getExpandedValue(option);\n } else {\n return getNonExpandedValue(option);\n }\n}\n\n// ---------------------------------------------------------------------------------------------------\n// This is an implementation of RFC 6570 URI Template: https://datatracker.ietf.org/doc/html/rfc6570.\n// ---------------------------------------------------------------------------------------------------\nexport function expandUrlTemplate(\n template: string,\n context: Record<string, any>,\n option?: UrlTemplateOptions,\n): string {\n return template.replace(/\\{([^\\{\\}]+)\\}|([^\\{\\}]+)/g, (_, expr, text) => {\n if (!expr) {\n return encodeReservedComponent(text);\n }\n let op;\n if ([\"+\", \"#\", \".\", \"/\", \";\", \"?\", \"&\"].includes(expr[0])) {\n (op = expr[0]), (expr = expr.slice(1));\n }\n const varList = expr.split(/,/g);\n const result = [];\n for (const varSpec of varList) {\n const varMatch = /([^:\\*]*)(?::(\\d+)|(\\*))?/.exec(varSpec);\n if (!varMatch || !varMatch[1]) {\n continue;\n }\n const varValue = getVarValue({\n isFirst: result.length === 0,\n op,\n varValue: context[varMatch[1]],\n varName: varMatch[1],\n modifier: varMatch[2] || varMatch[3],\n reserved: option?.allowReserved,\n });\n if (varValue) {\n result.push(varValue);\n }\n }\n return result.join(\"\");\n });\n}\n"]}
1
+ {"version":3,"file":"urlTemplate.js","sourceRoot":"","sources":["../../../../src/generated/static-helpers/urlTemplate.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n//---------------------\n// interfaces\n//---------------------\ninterface ValueOptions {\n isFirst: boolean; // is first value in the expression\n op?: string; // operator\n varValue?: any; // variable value\n varName?: string; // variable name\n modifier?: string; // modifier e.g *\n reserved?: boolean; // if true we'll keep reserved words with not encoding\n}\n\nexport interface UrlTemplateOptions {\n // if set to true, reserved characters will not be encoded\n allowReserved?: boolean;\n}\n\n// ---------------------\n// helpers\n// ---------------------\nfunction encodeComponent(val: string, reserved?: boolean, op?: string) {\n return (reserved ?? op === \"+\") || op === \"#\"\n ? encodeReservedComponent(val)\n : encodeRFC3986URIComponent(val);\n}\n\nfunction encodeReservedComponent(str: string) {\n return str\n .split(/(%[0-9A-Fa-f]{2})/g)\n .map((part) => (!/%[0-9A-Fa-f]/.test(part) ? encodeURI(part) : part))\n .join(\"\");\n}\n\nfunction encodeRFC3986URIComponent(str: string) {\n return encodeURIComponent(str).replace(\n /[!'()*]/g,\n (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`,\n );\n}\n\nfunction isDefined(val: any) {\n return val !== undefined && val !== null;\n}\n\nfunction getNamedAndIfEmpty(op?: string): [boolean, string] {\n return [\n !!op && [\";\", \"?\", \"&\"].includes(op),\n !!op && [\"?\", \"&\"].includes(op) ? \"=\" : \"\",\n ];\n}\n\nfunction getFirstOrSep(op?: string, isFirst = false) {\n if (isFirst) {\n return !op || op === \"+\" ? \"\" : op;\n } else if (!op || op === \"+\" || op === \"#\") {\n return \",\";\n } else if (op === \"?\") {\n return \"&\";\n } else {\n return op;\n }\n}\n\nfunction getExpandedValue(option: ValueOptions) {\n let isFirst = option.isFirst;\n const { op, varName, varValue: value, reserved } = option;\n const vals: string[] = [];\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n\n if (Array.isArray(value)) {\n for (const val of value.filter(isDefined)) {\n // prepare the following parts: separator, varName, value\n vals.push(`${getFirstOrSep(op, isFirst)}`);\n if (named && varName) {\n vals.push(`${encodeURIComponent(varName)}`);\n val === \"\" ? vals.push(ifEmpty) : vals.push(\"=\");\n }\n vals.push(encodeComponent(val, reserved, op));\n isFirst = false;\n }\n } else if (typeof value === \"object\") {\n for (const key of Object.keys(value)) {\n const val = value[key];\n if (!isDefined(val)) {\n continue;\n }\n // prepare the following parts: separator, key, value\n vals.push(`${getFirstOrSep(op, isFirst)}`);\n if (key) {\n vals.push(`${encodeURIComponent(key)}`);\n named && val === \"\" ? vals.push(ifEmpty) : vals.push(\"=\");\n }\n vals.push(encodeComponent(val, reserved, op));\n isFirst = false;\n }\n }\n return vals.join(\"\");\n}\n\nfunction getNonExpandedValue(option: ValueOptions) {\n const { op, varName, varValue: value, isFirst, reserved } = option;\n const vals: string[] = [];\n const first = getFirstOrSep(op, isFirst);\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n if (named && varName) {\n vals.push(encodeComponent(varName, reserved, op));\n if (value === \"\") {\n if (!ifEmpty) {\n vals.push(ifEmpty);\n }\n return !vals.join(\"\") ? undefined : `${first}${vals.join(\"\")}`;\n }\n vals.push(\"=\");\n }\n\n const items = [];\n if (Array.isArray(value)) {\n for (const val of value.filter(isDefined)) {\n items.push(encodeComponent(val, reserved, op));\n }\n } else if (typeof value === \"object\") {\n for (const key of Object.keys(value)) {\n if (!isDefined(value[key])) {\n continue;\n }\n items.push(encodeRFC3986URIComponent(key));\n items.push(encodeComponent(value[key], reserved, op));\n }\n }\n vals.push(items.join(\",\"));\n return !vals.join(\",\") ? undefined : `${first}${vals.join(\"\")}`;\n}\n\nfunction getVarValue(option: ValueOptions): string | undefined {\n const { op, varName, modifier, isFirst, reserved, varValue: value } = option;\n\n if (!isDefined(value)) {\n return undefined;\n } else if ([\"string\", \"number\", \"boolean\"].includes(typeof value)) {\n let val = value.toString();\n const [named, ifEmpty] = getNamedAndIfEmpty(op);\n const vals: string[] = [getFirstOrSep(op, isFirst)];\n if (named && varName) {\n // No need to encode varName considering it is already encoded\n vals.push(varName);\n val === \"\" ? vals.push(ifEmpty) : vals.push(\"=\");\n }\n if (modifier && modifier !== \"*\") {\n val = val.substring(0, parseInt(modifier, 10));\n }\n vals.push(encodeComponent(val, reserved, op));\n return vals.join(\"\");\n } else if (modifier === \"*\") {\n return getExpandedValue(option);\n } else {\n return getNonExpandedValue(option);\n }\n}\n\n// ---------------------------------------------------------------------------------------------------\n// This is an implementation of RFC 6570 URI Template: https://datatracker.ietf.org/doc/html/rfc6570.\n// ---------------------------------------------------------------------------------------------------\nexport function expandUrlTemplate(\n template: string,\n context: Record<string, any>,\n option?: UrlTemplateOptions,\n): string {\n return template.replace(/\\{([^\\{\\}]+)\\}|([^\\{\\}]+)/g, (_, expr, text) => {\n if (!expr) {\n return encodeReservedComponent(text);\n }\n let op;\n if ([\"+\", \"#\", \".\", \"/\", \";\", \"?\", \"&\"].includes(expr[0])) {\n (op = expr[0]), (expr = expr.slice(1));\n }\n const varList = expr.split(/,/g);\n const result = [];\n for (const varSpec of varList) {\n const varMatch = /([^:\\*]*)(?::(\\d+)|(\\*))?/.exec(varSpec);\n if (!varMatch || !varMatch[1]) {\n continue;\n }\n const varValue = getVarValue({\n isFirst: result.length === 0,\n op,\n varValue: context[varMatch[1]],\n varName: varMatch[1],\n modifier: varMatch[2] || varMatch[3],\n reserved: option?.allowReserved,\n });\n if (varValue) {\n result.push(varValue);\n }\n }\n return result.join(\"\");\n });\n}\n"]}
@@ -59,7 +59,7 @@ class EventGridDeserializer {
59
59
  modelEvent.data = deserialized.dataBase64;
60
60
  }
61
61
  // Build the "extensionsAttributes" property bag by removing all known top level properties.
62
- const extensionAttributes = Object.assign({}, deserialized);
62
+ const extensionAttributes = { ...deserialized };
63
63
  for (const propName of models_js_1.cloudEventReservedPropertyNames) {
64
64
  delete extensionAttributes[propName];
65
65
  }
@@ -1 +1 @@
1
- {"version":3,"file":"consumer.js","sourceRoot":"","sources":["../../src/consumer.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,oDAAsD;AAEtD,2CAA8D;AAC9D,uCAAkG;AAElG,MAAM,UAAU,GAAG,IAAA,8BAAgB,GAAE,CAAC;AAEtC;;;;;;;;;;GAUG;AACH,MAAa,qBAAqB;IAiBzB,KAAK,CAAC,sBAAsB,CACjC,aAA+C;QAE/C,MAAM,YAAY,GAAG,IAAA,sBAAY,EAAC,aAAa,CAAC,CAAC;QAEjD,MAAM,MAAM,GAA0B,EAAE,CAAC;QAEzC,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;YAC7B,IAAA,iCAAuB,EAAC,CAAC,CAAC,CAAC;YAE3B,yGAAyG;YACzG,0BAA0B;YAE1B,MAAM,YAAY,GAAG,UAAU,CAAC,WAAW,CAAC,oBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACrE,MAAM,UAAU,GAAwB;gBACtC,WAAW,EAAE,YAAY,CAAC,WAAW;gBACrC,EAAE,EAAE,YAAY,CAAC,EAAE;gBACnB,MAAM,EAAE,YAAY,CAAC,MAAM;gBAC3B,IAAI,EAAE,YAAY,CAAC,IAAI;aACxB,CAAC;YAEF,IAAI,YAAY,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gBAC/C,UAAU,CAAC,eAAe,GAAG,YAAY,CAAC,eAAe,CAAC;YAC5D,CAAC;YAED,IAAI,YAAY,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC1C,UAAU,CAAC,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC;YAClD,CAAC;YAED,IAAI,YAAY,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBACvC,UAAU,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC;YAC5C,CAAC;YAED,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACpC,UAAU,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC;YACtC,CAAC;YAED,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACpC,UAAU,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC;YACtC,CAAC;YAED,0IAA0I;YAC1I,IAAI,YAAY,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC1C,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;oBACpC,MAAM,IAAI,SAAS,CAAC,kDAAkD,CAAC,CAAC;gBAC1E,CAAC;gBAED,IAAI,CAAC,CAAC,YAAY,CAAC,UAAU,YAAY,UAAU,CAAC,EAAE,CAAC;oBACrD,MAAM,IAAI,SAAS,CAAC,6DAA6D,CAAC,CAAC;gBACrF,CAAC;gBAED,UAAU,CAAC,IAAI,GAAG,YAAY,CAAC,UAAU,CAAC;YAC5C,CAAC;YAED,4FAA4F;YAC5F,MAAM,mBAAmB,qBAAQ,YAAY,CAAE,CAAC;YAChD,KAAK,MAAM,QAAQ,IAAI,2CAA+B,EAAE,CAAC;gBACvD,OAAO,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YACvC,CAAC;YACD,OAAO,mBAAmB,CAAC,UAAU,CAAC;YAEtC,oDAAoD;YACpD,IAAI,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChD,UAAU,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;YACvD,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,UAAiC,CAAC,CAAC;QACjD,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAxFD,sDAwFC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createSerializer } from \"@azure/core-client\";\nimport type { CloudEvent } from \"./models.js\";\nimport { cloudEventReservedPropertyNames } from \"./models.js\";\nimport { CloudEvent as CloudEventMapper, parseAndWrap, validateCloudEventEvent } from \"./util.js\";\n\nconst serializer = createSerializer();\n\n/**\n * EventGridDeserializer is used to aid in processing events delivered by EventGrid. It can deserialize a JSON encoded payload\n * of either a single event or batch of events as well as be used to convert the result of `JSON.parse` into an\n * `EventGridEvent` or `CloudEvent` like object.\n *\n * Unlike normal JSON deseralization, EventGridDeserializer does some additional conversions:\n *\n * - The consumer parses the event time property into a `Date` object, for ease of use.\n * - When deserializing an event in the CloudEvent schema, if the event contains binary data, it is base64 decoded\n * and returned as an instance of the `Uint8Array` type.\n */\nexport class EventGridDeserializer {\n /**\n * Deserializes events encoded in the Cloud Events 1.0 schema.\n *\n * @param encodedEvents - the JSON encoded representation of either a single event or an array of\n * events, encoded in the Cloud Events 1.0 Schema.\n */\n public async deserializeCloudEvents(encodedEvents: string): Promise<CloudEvent<unknown>[]>;\n\n /**\n * Deserializes events encoded in the Cloud Events 1.0 schema.\n *\n * @param encodedEvents - an object representing a single event, encoded in the Cloud Events 1.0 schema.\n */\n public async deserializeCloudEvents(\n encodedEvents: Record<string, unknown>,\n ): Promise<CloudEvent<unknown>[]>;\n public async deserializeCloudEvents(\n encodedEvents: string | Record<string, unknown>,\n ): Promise<CloudEvent<unknown>[]> {\n const decodedArray = parseAndWrap(encodedEvents);\n\n const events: CloudEvent<unknown>[] = [];\n\n for (const o of decodedArray) {\n validateCloudEventEvent(o);\n\n // Check that the required fields are present and of the correct type and the optional fields are missing\n // or of the correct type.\n\n const deserialized = serializer.deserialize(CloudEventMapper, o, \"\");\n const modelEvent: Record<string, any> = {\n specversion: deserialized.specversion,\n id: deserialized.id,\n source: deserialized.source,\n type: deserialized.type,\n };\n\n if (deserialized.datacontenttype !== undefined) {\n modelEvent.datacontenttype = deserialized.datacontenttype;\n }\n\n if (deserialized.dataschema !== undefined) {\n modelEvent.dataschema = deserialized.dataschema;\n }\n\n if (deserialized.subject !== undefined) {\n modelEvent.subject = deserialized.subject;\n }\n\n if (deserialized.time !== undefined) {\n modelEvent.time = deserialized.time;\n }\n\n if (deserialized.data !== undefined) {\n modelEvent.data = deserialized.data;\n }\n\n // If the data the event represents binary, it is encoded as base64 text in a different property on the event and we need to transform it.\n if (deserialized.dataBase64 !== undefined) {\n if (deserialized.data !== undefined) {\n throw new TypeError(\"event contains both a data and data_base64 field\");\n }\n\n if (!(deserialized.dataBase64 instanceof Uint8Array)) {\n throw new TypeError(\"event data_base64 property is not an instance of Uint8Array\");\n }\n\n modelEvent.data = deserialized.dataBase64;\n }\n\n // Build the \"extensionsAttributes\" property bag by removing all known top level properties.\n const extensionAttributes = { ...deserialized };\n for (const propName of cloudEventReservedPropertyNames) {\n delete extensionAttributes[propName];\n }\n delete extensionAttributes.dataBase64;\n\n // If any properties remain, copy them to the model.\n if (Object.keys(extensionAttributes).length > 0) {\n modelEvent.extensionAttributes = extensionAttributes;\n }\n\n events.push(modelEvent as CloudEvent<unknown>);\n }\n\n return events;\n }\n}\n"]}
1
+ {"version":3,"file":"consumer.js","sourceRoot":"","sources":["../../src/consumer.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,oDAAsD;AAEtD,2CAA8D;AAC9D,uCAAkG;AAElG,MAAM,UAAU,GAAG,IAAA,8BAAgB,GAAE,CAAC;AAEtC;;;;;;;;;;GAUG;AACH,MAAa,qBAAqB;IAiBzB,KAAK,CAAC,sBAAsB,CACjC,aAA+C;QAE/C,MAAM,YAAY,GAAG,IAAA,sBAAY,EAAC,aAAa,CAAC,CAAC;QAEjD,MAAM,MAAM,GAA0B,EAAE,CAAC;QAEzC,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;YAC7B,IAAA,iCAAuB,EAAC,CAAC,CAAC,CAAC;YAE3B,yGAAyG;YACzG,0BAA0B;YAE1B,MAAM,YAAY,GAAG,UAAU,CAAC,WAAW,CAAC,oBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACrE,MAAM,UAAU,GAAwB;gBACtC,WAAW,EAAE,YAAY,CAAC,WAAW;gBACrC,EAAE,EAAE,YAAY,CAAC,EAAE;gBACnB,MAAM,EAAE,YAAY,CAAC,MAAM;gBAC3B,IAAI,EAAE,YAAY,CAAC,IAAI;aACxB,CAAC;YAEF,IAAI,YAAY,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gBAC/C,UAAU,CAAC,eAAe,GAAG,YAAY,CAAC,eAAe,CAAC;YAC5D,CAAC;YAED,IAAI,YAAY,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC1C,UAAU,CAAC,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC;YAClD,CAAC;YAED,IAAI,YAAY,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBACvC,UAAU,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC;YAC5C,CAAC;YAED,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACpC,UAAU,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC;YACtC,CAAC;YAED,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACpC,UAAU,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC;YACtC,CAAC;YAED,0IAA0I;YAC1I,IAAI,YAAY,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC1C,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;oBACpC,MAAM,IAAI,SAAS,CAAC,kDAAkD,CAAC,CAAC;gBAC1E,CAAC;gBAED,IAAI,CAAC,CAAC,YAAY,CAAC,UAAU,YAAY,UAAU,CAAC,EAAE,CAAC;oBACrD,MAAM,IAAI,SAAS,CAAC,6DAA6D,CAAC,CAAC;gBACrF,CAAC;gBAED,UAAU,CAAC,IAAI,GAAG,YAAY,CAAC,UAAU,CAAC;YAC5C,CAAC;YAED,4FAA4F;YAC5F,MAAM,mBAAmB,GAAG,EAAE,GAAG,YAAY,EAAE,CAAC;YAChD,KAAK,MAAM,QAAQ,IAAI,2CAA+B,EAAE,CAAC;gBACvD,OAAO,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YACvC,CAAC;YACD,OAAO,mBAAmB,CAAC,UAAU,CAAC;YAEtC,oDAAoD;YACpD,IAAI,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChD,UAAU,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;YACvD,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,UAAiC,CAAC,CAAC;QACjD,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAxFD,sDAwFC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createSerializer } from \"@azure/core-client\";\nimport type { CloudEvent } from \"./models.js\";\nimport { cloudEventReservedPropertyNames } from \"./models.js\";\nimport { CloudEvent as CloudEventMapper, parseAndWrap, validateCloudEventEvent } from \"./util.js\";\n\nconst serializer = createSerializer();\n\n/**\n * EventGridDeserializer is used to aid in processing events delivered by EventGrid. It can deserialize a JSON encoded payload\n * of either a single event or batch of events as well as be used to convert the result of `JSON.parse` into an\n * `EventGridEvent` or `CloudEvent` like object.\n *\n * Unlike normal JSON deseralization, EventGridDeserializer does some additional conversions:\n *\n * - The consumer parses the event time property into a `Date` object, for ease of use.\n * - When deserializing an event in the CloudEvent schema, if the event contains binary data, it is base64 decoded\n * and returned as an instance of the `Uint8Array` type.\n */\nexport class EventGridDeserializer {\n /**\n * Deserializes events encoded in the Cloud Events 1.0 schema.\n *\n * @param encodedEvents - the JSON encoded representation of either a single event or an array of\n * events, encoded in the Cloud Events 1.0 Schema.\n */\n public async deserializeCloudEvents(encodedEvents: string): Promise<CloudEvent<unknown>[]>;\n\n /**\n * Deserializes events encoded in the Cloud Events 1.0 schema.\n *\n * @param encodedEvents - an object representing a single event, encoded in the Cloud Events 1.0 schema.\n */\n public async deserializeCloudEvents(\n encodedEvents: Record<string, unknown>,\n ): Promise<CloudEvent<unknown>[]>;\n public async deserializeCloudEvents(\n encodedEvents: string | Record<string, unknown>,\n ): Promise<CloudEvent<unknown>[]> {\n const decodedArray = parseAndWrap(encodedEvents);\n\n const events: CloudEvent<unknown>[] = [];\n\n for (const o of decodedArray) {\n validateCloudEventEvent(o);\n\n // Check that the required fields are present and of the correct type and the optional fields are missing\n // or of the correct type.\n\n const deserialized = serializer.deserialize(CloudEventMapper, o, \"\");\n const modelEvent: Record<string, any> = {\n specversion: deserialized.specversion,\n id: deserialized.id,\n source: deserialized.source,\n type: deserialized.type,\n };\n\n if (deserialized.datacontenttype !== undefined) {\n modelEvent.datacontenttype = deserialized.datacontenttype;\n }\n\n if (deserialized.dataschema !== undefined) {\n modelEvent.dataschema = deserialized.dataschema;\n }\n\n if (deserialized.subject !== undefined) {\n modelEvent.subject = deserialized.subject;\n }\n\n if (deserialized.time !== undefined) {\n modelEvent.time = deserialized.time;\n }\n\n if (deserialized.data !== undefined) {\n modelEvent.data = deserialized.data;\n }\n\n // If the data the event represents binary, it is encoded as base64 text in a different property on the event and we need to transform it.\n if (deserialized.dataBase64 !== undefined) {\n if (deserialized.data !== undefined) {\n throw new TypeError(\"event contains both a data and data_base64 field\");\n }\n\n if (!(deserialized.dataBase64 instanceof Uint8Array)) {\n throw new TypeError(\"event data_base64 property is not an instance of Uint8Array\");\n }\n\n modelEvent.data = deserialized.dataBase64;\n }\n\n // Build the \"extensionsAttributes\" property bag by removing all known top level properties.\n const extensionAttributes = { ...deserialized };\n for (const propName of cloudEventReservedPropertyNames) {\n delete extensionAttributes[propName];\n }\n delete extensionAttributes.dataBase64;\n\n // If any properties remain, copy them to the model.\n if (Object.keys(extensionAttributes).length > 0) {\n modelEvent.extensionAttributes = extensionAttributes;\n }\n\n events.push(modelEvent as CloudEvent<unknown>);\n }\n\n return events;\n }\n}\n"]}
@@ -11,6 +11,9 @@ const core_util_1 = require("@azure/core-util");
11
11
  * Event Grid Namespaces Client
12
12
  */
13
13
  class EventGridReceiverClient {
14
+ _client;
15
+ _topicName;
16
+ _subscriptionName;
14
17
  /** Azure Messaging EventGrid Client */
15
18
  constructor(endpoint, credential, topicName, subscriptionName, options = {}) {
16
19
  this._client = new eventGridClient_js_1.EventGridClient(endpoint, credential, options);
@@ -76,7 +79,10 @@ class EventGridReceiverClient {
76
79
  *
77
80
  */
78
81
  releaseEvents(lockTokens, options = { requestOptions: {} }) {
79
- return this._client.releaseCloudEvents(this._topicName, this._subscriptionName, lockTokens, Object.assign(Object.assign({}, options), { releaseDelayInSeconds: options.releaseDelay }));
82
+ return this._client.releaseCloudEvents(this._topicName, this._subscriptionName, lockTokens, {
83
+ ...options,
84
+ releaseDelayInSeconds: options.releaseDelay,
85
+ });
80
86
  }
81
87
  /**
82
88
  * Reject batch of Cloud Events.
@@ -1 +1 @@
1
- {"version":3,"file":"eventGridReceiverClient.js","sourceRoot":"","sources":["../../src/eventGridReceiverClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { AzureKeyCredential, TokenCredential } from \"@azure/core-auth\";\nimport type {\n AcknowledgeResult,\n ReleaseResult,\n RejectResult,\n RenewLocksResult,\n} from \"./generated/models/index.js\";\nimport { EventGridClient as EventGridClientGenerated } from \"./generated/eventGridClient.js\";\nimport type {\n CloudEvent,\n ReceiveResult,\n AcknowledgeEventsOptions,\n ReleaseEventsOptions,\n RejectEventsOptions,\n RenewEventLocksOptions,\n EventGridReceiverClientOptions,\n ReceiveEventsOptions,\n} from \"./models.js\";\nimport { cloudEventDistributedTracingEnricherPolicy } from \"./cloudEventDistrubtedTracingEnricherPolicy.js\";\nimport { tracingPolicyName } from \"@azure/core-rest-pipeline\";\nimport { uint8ArrayToString } from \"@azure/core-util\";\n\n/**\n * Event Grid Namespaces Client\n */\nexport class EventGridReceiverClient {\n private _client: EventGridClientGenerated;\n private _topicName: string;\n private _subscriptionName: string;\n\n /** Azure Messaging EventGrid Client */\n constructor(\n endpoint: string,\n credential: AzureKeyCredential | TokenCredential,\n topicName: string,\n subscriptionName: string,\n options: EventGridReceiverClientOptions = {},\n ) {\n this._client = new EventGridClientGenerated(endpoint, credential, options);\n this._topicName = topicName;\n this._subscriptionName = subscriptionName;\n this._client.pipeline.addPolicy(cloudEventDistributedTracingEnricherPolicy(), {\n afterPolicies: [tracingPolicyName],\n });\n }\n\n /**\n * Receive Batch of Cloud Events from the Event Subscription.\n *\n * @param options - Options to receive\n *\n */\n async receiveEvents<T>(\n options: ReceiveEventsOptions = { requestOptions: {} },\n ): Promise<ReceiveResult<T>> {\n const result = await this._client.receiveCloudEvents(\n this._topicName,\n this._subscriptionName,\n options,\n );\n\n const modifiedResult: ReceiveResult<T> = {\n details: result.details.map((receiveDetails) => {\n const cloudEvent: CloudEvent<T> = {\n type: receiveDetails.event.type,\n source: receiveDetails.event.source,\n id: receiveDetails.event.id,\n time: receiveDetails.event.time,\n dataSchema: receiveDetails.event.dataschema,\n dataContentType: receiveDetails.event.datacontenttype,\n subject: receiveDetails.event.subject,\n specVersion: receiveDetails.event.specversion,\n data: receiveDetails.event.data\n ? (receiveDetails.event.data as T)\n : receiveDetails.event.dataBase64\n ? (uint8ArrayToString(receiveDetails.event.dataBase64, \"base64\") as T)\n : undefined,\n };\n return {\n brokerProperties: receiveDetails.brokerProperties,\n event: cloudEvent,\n };\n }),\n };\n\n return modifiedResult;\n }\n\n /**\n * Acknowledge batch of Cloud Events. The server responds with an HTTP 200 status code if at least one\n * event is successfully acknowledged. The response body will include the set of successfully acknowledged\n * lockTokens, along with other failed lockTokens with their corresponding error information. Successfully\n * acknowledged events will no longer be available to any consumer.\n *\n * @param lockTokens - Lock Tokens\n * @param options - Options to Acknowledge\n *\n */\n acknowledgeEvents(\n lockTokens: string[],\n options: AcknowledgeEventsOptions = { requestOptions: {} },\n ): Promise<AcknowledgeResult> {\n return this._client.acknowledgeCloudEvents(\n this._topicName,\n this._subscriptionName,\n lockTokens,\n options,\n );\n }\n\n /**\n * Release batch of Cloud Events. The server responds with an HTTP 200 status code if at least one event is\n * successfully released. The response body will include the set of successfully released lockTokens, along\n * with other failed lockTokens with their corresponding error information.\n *\n * @param lockTokens - Lock Tokens\n * @param options - Options to release\n *\n */\n releaseEvents(\n lockTokens: string[],\n options: ReleaseEventsOptions = { requestOptions: {} },\n ): Promise<ReleaseResult> {\n return this._client.releaseCloudEvents(this._topicName, this._subscriptionName, lockTokens, {\n ...options,\n releaseDelayInSeconds: options.releaseDelay,\n });\n }\n\n /**\n * Reject batch of Cloud Events.\n *\n * @param lockTokens - Lock Tokens\n * @param options - Options to reject\n *\n */\n rejectEvents(\n lockTokens: string[],\n options: RejectEventsOptions = { requestOptions: {} },\n ): Promise<RejectResult> {\n return this._client.rejectCloudEvents(\n this._topicName,\n this._subscriptionName,\n lockTokens,\n options,\n );\n }\n\n /**\n * Renew lock for batch of Cloud Events.\n *\n * @param lockTokens - Lock Tokens\n * @param options - Options to renew\n */\n renewEventLocks(\n lockTokens: string[],\n options: RenewEventLocksOptions = { requestOptions: {} },\n ): Promise<RenewLocksResult> {\n return this._client.renewCloudEventLocks(\n this._topicName,\n this._subscriptionName,\n lockTokens,\n options,\n );\n }\n}\n"]}
1
+ {"version":3,"file":"eventGridReceiverClient.js","sourceRoot":"","sources":["../../src/eventGridReceiverClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { AzureKeyCredential, TokenCredential } from \"@azure/core-auth\";\nimport type {\n AcknowledgeResult,\n ReleaseResult,\n RejectResult,\n RenewLocksResult,\n} from \"./generated/models/index.js\";\nimport { EventGridClient as EventGridClientGenerated } from \"./generated/eventGridClient.js\";\nimport type {\n CloudEvent,\n ReceiveResult,\n AcknowledgeEventsOptions,\n ReleaseEventsOptions,\n RejectEventsOptions,\n RenewEventLocksOptions,\n EventGridReceiverClientOptions,\n ReceiveEventsOptions,\n} from \"./models.js\";\nimport { cloudEventDistributedTracingEnricherPolicy } from \"./cloudEventDistrubtedTracingEnricherPolicy.js\";\nimport { tracingPolicyName } from \"@azure/core-rest-pipeline\";\nimport { uint8ArrayToString } from \"@azure/core-util\";\n\n/**\n * Event Grid Namespaces Client\n */\nexport class EventGridReceiverClient {\n private _client: EventGridClientGenerated;\n private _topicName: string;\n private _subscriptionName: string;\n\n /** Azure Messaging EventGrid Client */\n constructor(\n endpoint: string,\n credential: AzureKeyCredential | TokenCredential,\n topicName: string,\n subscriptionName: string,\n options: EventGridReceiverClientOptions = {},\n ) {\n this._client = new EventGridClientGenerated(endpoint, credential, options);\n this._topicName = topicName;\n this._subscriptionName = subscriptionName;\n this._client.pipeline.addPolicy(cloudEventDistributedTracingEnricherPolicy(), {\n afterPolicies: [tracingPolicyName],\n });\n }\n\n /**\n * Receive Batch of Cloud Events from the Event Subscription.\n *\n * @param options - Options to receive\n *\n */\n async receiveEvents<T>(\n options: ReceiveEventsOptions = { requestOptions: {} },\n ): Promise<ReceiveResult<T>> {\n const result = await this._client.receiveCloudEvents(\n this._topicName,\n this._subscriptionName,\n options,\n );\n\n const modifiedResult: ReceiveResult<T> = {\n details: result.details.map((receiveDetails) => {\n const cloudEvent: CloudEvent<T> = {\n type: receiveDetails.event.type,\n source: receiveDetails.event.source,\n id: receiveDetails.event.id,\n time: receiveDetails.event.time,\n dataSchema: receiveDetails.event.dataschema,\n dataContentType: receiveDetails.event.datacontenttype,\n subject: receiveDetails.event.subject,\n specVersion: receiveDetails.event.specversion,\n data: receiveDetails.event.data\n ? (receiveDetails.event.data as T)\n : receiveDetails.event.dataBase64\n ? (uint8ArrayToString(receiveDetails.event.dataBase64, \"base64\") as T)\n : undefined,\n };\n return {\n brokerProperties: receiveDetails.brokerProperties,\n event: cloudEvent,\n };\n }),\n };\n\n return modifiedResult;\n }\n\n /**\n * Acknowledge batch of Cloud Events. The server responds with an HTTP 200 status code if at least one\n * event is successfully acknowledged. The response body will include the set of successfully acknowledged\n * lockTokens, along with other failed lockTokens with their corresponding error information. Successfully\n * acknowledged events will no longer be available to any consumer.\n *\n * @param lockTokens - Lock Tokens\n * @param options - Options to Acknowledge\n *\n */\n acknowledgeEvents(\n lockTokens: string[],\n options: AcknowledgeEventsOptions = { requestOptions: {} },\n ): Promise<AcknowledgeResult> {\n return this._client.acknowledgeCloudEvents(\n this._topicName,\n this._subscriptionName,\n lockTokens,\n options,\n );\n }\n\n /**\n * Release batch of Cloud Events. The server responds with an HTTP 200 status code if at least one event is\n * successfully released. The response body will include the set of successfully released lockTokens, along\n * with other failed lockTokens with their corresponding error information.\n *\n * @param lockTokens - Lock Tokens\n * @param options - Options to release\n *\n */\n releaseEvents(\n lockTokens: string[],\n options: ReleaseEventsOptions = { requestOptions: {} },\n ): Promise<ReleaseResult> {\n return this._client.releaseCloudEvents(this._topicName, this._subscriptionName, lockTokens, {\n ...options,\n releaseDelayInSeconds: options.releaseDelay,\n });\n }\n\n /**\n * Reject batch of Cloud Events.\n *\n * @param lockTokens - Lock Tokens\n * @param options - Options to reject\n *\n */\n rejectEvents(\n lockTokens: string[],\n options: RejectEventsOptions = { requestOptions: {} },\n ): Promise<RejectResult> {\n return this._client.rejectCloudEvents(\n this._topicName,\n this._subscriptionName,\n lockTokens,\n options,\n );\n }\n\n /**\n * Renew lock for batch of Cloud Events.\n *\n * @param lockTokens - Lock Tokens\n * @param options - Options to renew\n */\n renewEventLocks(\n lockTokens: string[],\n options: RenewEventLocksOptions = { requestOptions: {} },\n ): Promise<RenewLocksResult> {\n return this._client.renewCloudEventLocks(\n this._topicName,\n this._subscriptionName,\n lockTokens,\n options,\n );\n }\n}\n"]}
@@ -13,6 +13,8 @@ const core_rest_pipeline_1 = require("@azure/core-rest-pipeline");
13
13
  * Event Grid Namespaces Client
14
14
  */
15
15
  class EventGridSenderClient {
16
+ _client;
17
+ _topicName;
16
18
  /** Azure Messaging EventGrid Client */
17
19
  constructor(endpoint, credential, topicName, options = {}) {
18
20
  this._client = new eventGridClient_js_1.EventGridClient(endpoint, credential, options);
@@ -48,7 +50,6 @@ class EventGridSenderClient {
48
50
  }
49
51
  exports.EventGridSenderClient = EventGridSenderClient;
50
52
  function convertCloudEventToModelType(event) {
51
- var _a, _b, _c, _d, _e;
52
53
  if (event.extensionAttributes) {
53
54
  for (const propName in event.extensionAttributes) {
54
55
  // Per the cloud events spec: "CloudEvents attribute names MUST consist of lower-case letters ('a' to 'z') or digits ('0' to '9') from the ASCII character set"
@@ -59,7 +60,17 @@ function convertCloudEventToModelType(event) {
59
60
  }
60
61
  }
61
62
  }
62
- const converted = Object.assign({ specversion: (_a = event.specVersion) !== null && _a !== void 0 ? _a : "1.0", type: event.type, source: event.source, id: (_b = event.id) !== null && _b !== void 0 ? _b : (0, core_util_1.randomUUID)(), time: (_c = event.time) !== null && _c !== void 0 ? _c : new Date(), subject: event.subject, dataschema: event.dataSchema, datacontenttype: event.dataContentType }, ((_d = event.extensionAttributes) !== null && _d !== void 0 ? _d : []));
63
+ const converted = {
64
+ specversion: event.specVersion ?? "1.0",
65
+ type: event.type,
66
+ source: event.source,
67
+ id: event.id ?? (0, core_util_1.randomUUID)(),
68
+ time: event.time ?? new Date(),
69
+ subject: event.subject,
70
+ dataschema: event.dataSchema,
71
+ datacontenttype: event.dataContentType,
72
+ ...(event.extensionAttributes ?? []),
73
+ };
63
74
  if (event.data instanceof Uint8Array) {
64
75
  if (!event.dataContentType) {
65
76
  throw new Error("a data content type must be provided when sending an event with binary data");
@@ -69,7 +80,7 @@ function convertCloudEventToModelType(event) {
69
80
  }
70
81
  else {
71
82
  converted.datacontenttype =
72
- (_e = event.dataContentType) !== null && _e !== void 0 ? _e : "application/cloudevents+json; charset=utf-8";
83
+ event.dataContentType ?? "application/cloudevents+json; charset=utf-8";
73
84
  converted.data = event.data;
74
85
  }
75
86
  return converted;
@@ -1 +1 @@
1
- {"version":3,"file":"eventGridSenderClient.js","sourceRoot":"","sources":["../../src/eventGridSenderClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { AzureKeyCredential, TokenCredential } from \"@azure/core-auth\";\nimport type { CloudEvent as CloudEventWireModel } from \"./generated/models/index.js\";\nimport { randomUUID } from \"@azure/core-util\";\nimport { EventGridClient as EventGridClientGenerated } from \"./generated/eventGridClient.js\";\nimport type { SendEventsOptions, CloudEvent, EventGridSenderClientOptions } from \"./models.js\";\nimport { cloudEventReservedPropertyNames } from \"./models.js\";\nimport { cloudEventDistributedTracingEnricherPolicy } from \"./cloudEventDistrubtedTracingEnricherPolicy.js\";\nimport { tracingPolicyName } from \"@azure/core-rest-pipeline\";\n\n/**\n * Event Grid Namespaces Client\n */\nexport class EventGridSenderClient {\n private _client: EventGridClientGenerated;\n private _topicName: string;\n\n /** Azure Messaging EventGrid Client */\n constructor(\n endpoint: string,\n credential: AzureKeyCredential | TokenCredential,\n topicName: string,\n options: EventGridSenderClientOptions = {},\n ) {\n this._client = new EventGridClientGenerated(endpoint, credential, options);\n this._topicName = topicName;\n this._client.pipeline.addPolicy(cloudEventDistributedTracingEnricherPolicy(), {\n afterPolicies: [tracingPolicyName],\n });\n }\n\n /**\n * Publish Cloud Events to namespace topic. In case of success, the server responds with an HTTP 200\n * status code with an empty JSON object in response. Otherwise, the server can return various error codes.\n * For example, 401: which indicates authorization failure, 403: which indicates quota exceeded or message\n * is too large, 410: which indicates that specific topic is not found, 400: for bad request, and 500: for\n * internal server error.\n *\n * @param events - Events to publish\n * @param options - Options to publish\n *\n */\n async sendEvents<T>(\n events: CloudEvent<T>[] | CloudEvent<T>,\n options: SendEventsOptions = { requestOptions: {} },\n ): Promise<void> {\n if (Array.isArray(events)) {\n const eventsWireModel: Array<CloudEventWireModel> = [];\n for (const individualevent of events) {\n eventsWireModel.push(convertCloudEventToModelType(individualevent));\n }\n await this._client.publishCloudEvents(this._topicName, eventsWireModel, options);\n } else {\n const cloudEventWireModel: CloudEventWireModel = convertCloudEventToModelType(events);\n await this._client.publishCloudEvent(this._topicName, cloudEventWireModel, options);\n }\n }\n}\n\nexport function convertCloudEventToModelType<T>(event: CloudEvent<T>): CloudEventWireModel {\n if (event.extensionAttributes) {\n for (const propName in event.extensionAttributes) {\n // Per the cloud events spec: \"CloudEvents attribute names MUST consist of lower-case letters ('a' to 'z') or digits ('0' to '9') from the ASCII character set\"\n // they also can not match an existing defined property name.\n\n if (\n !/^[a-z0-9]*$/.test(propName) ||\n cloudEventReservedPropertyNames.indexOf(propName) !== -1\n ) {\n throw new Error(`invalid extension attribute name: ${propName}`);\n }\n }\n }\n\n const converted: CloudEventWireModel = {\n specversion: event.specVersion ?? \"1.0\",\n type: event.type,\n source: event.source,\n id: event.id ?? randomUUID(),\n time: event.time ?? new Date(),\n subject: event.subject,\n dataschema: event.dataSchema,\n datacontenttype: event.dataContentType,\n ...(event.extensionAttributes ?? []),\n };\n\n if (event.data instanceof Uint8Array) {\n if (!event.dataContentType) {\n throw new Error(\n \"a data content type must be provided when sending an event with binary data\",\n );\n }\n\n converted.datacontenttype = event.dataContentType;\n converted.dataBase64 = event.data;\n } else {\n converted.datacontenttype =\n event.dataContentType ?? \"application/cloudevents+json; charset=utf-8\";\n converted.data = event.data;\n }\n\n return converted;\n}\n"]}
1
+ {"version":3,"file":"eventGridSenderClient.js","sourceRoot":"","sources":["../../src/eventGridSenderClient.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport type { AzureKeyCredential, TokenCredential } from \"@azure/core-auth\";\nimport type { CloudEvent as CloudEventWireModel } from \"./generated/models/index.js\";\nimport { randomUUID } from \"@azure/core-util\";\nimport { EventGridClient as EventGridClientGenerated } from \"./generated/eventGridClient.js\";\nimport type { SendEventsOptions, CloudEvent, EventGridSenderClientOptions } from \"./models.js\";\nimport { cloudEventReservedPropertyNames } from \"./models.js\";\nimport { cloudEventDistributedTracingEnricherPolicy } from \"./cloudEventDistrubtedTracingEnricherPolicy.js\";\nimport { tracingPolicyName } from \"@azure/core-rest-pipeline\";\n\n/**\n * Event Grid Namespaces Client\n */\nexport class EventGridSenderClient {\n private _client: EventGridClientGenerated;\n private _topicName: string;\n\n /** Azure Messaging EventGrid Client */\n constructor(\n endpoint: string,\n credential: AzureKeyCredential | TokenCredential,\n topicName: string,\n options: EventGridSenderClientOptions = {},\n ) {\n this._client = new EventGridClientGenerated(endpoint, credential, options);\n this._topicName = topicName;\n this._client.pipeline.addPolicy(cloudEventDistributedTracingEnricherPolicy(), {\n afterPolicies: [tracingPolicyName],\n });\n }\n\n /**\n * Publish Cloud Events to namespace topic. In case of success, the server responds with an HTTP 200\n * status code with an empty JSON object in response. Otherwise, the server can return various error codes.\n * For example, 401: which indicates authorization failure, 403: which indicates quota exceeded or message\n * is too large, 410: which indicates that specific topic is not found, 400: for bad request, and 500: for\n * internal server error.\n *\n * @param events - Events to publish\n * @param options - Options to publish\n *\n */\n async sendEvents<T>(\n events: CloudEvent<T>[] | CloudEvent<T>,\n options: SendEventsOptions = { requestOptions: {} },\n ): Promise<void> {\n if (Array.isArray(events)) {\n const eventsWireModel: Array<CloudEventWireModel> = [];\n for (const individualevent of events) {\n eventsWireModel.push(convertCloudEventToModelType(individualevent));\n }\n await this._client.publishCloudEvents(this._topicName, eventsWireModel, options);\n } else {\n const cloudEventWireModel: CloudEventWireModel = convertCloudEventToModelType(events);\n await this._client.publishCloudEvent(this._topicName, cloudEventWireModel, options);\n }\n }\n}\n\nexport function convertCloudEventToModelType<T>(event: CloudEvent<T>): CloudEventWireModel {\n if (event.extensionAttributes) {\n for (const propName in event.extensionAttributes) {\n // Per the cloud events spec: \"CloudEvents attribute names MUST consist of lower-case letters ('a' to 'z') or digits ('0' to '9') from the ASCII character set\"\n // they also can not match an existing defined property name.\n\n if (\n !/^[a-z0-9]*$/.test(propName) ||\n cloudEventReservedPropertyNames.indexOf(propName) !== -1\n ) {\n throw new Error(`invalid extension attribute name: ${propName}`);\n }\n }\n }\n\n const converted: CloudEventWireModel = {\n specversion: event.specVersion ?? \"1.0\",\n type: event.type,\n source: event.source,\n id: event.id ?? randomUUID(),\n time: event.time ?? new Date(),\n subject: event.subject,\n dataschema: event.dataSchema,\n datacontenttype: event.dataContentType,\n ...(event.extensionAttributes ?? []),\n };\n\n if (event.data instanceof Uint8Array) {\n if (!event.dataContentType) {\n throw new Error(\n \"a data content type must be provided when sending an event with binary data\",\n );\n }\n\n converted.datacontenttype = event.dataContentType;\n converted.dataBase64 = event.data;\n } else {\n converted.datacontenttype =\n event.dataContentType ?? \"application/cloudevents+json; charset=utf-8\";\n converted.data = event.data;\n }\n\n return converted;\n}\n"]}
@@ -3,24 +3,27 @@
3
3
  // Licensed under the MIT License.
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.createEventGrid = createEventGrid;
6
- const tslib_1 = require("tslib");
7
6
  const logger_js_1 = require("../logger.js");
8
7
  const core_client_1 = require("@azure-rest/core-client");
9
8
  const core_auth_1 = require("@azure/core-auth");
10
9
  /** Azure Messaging EventGrid Client */
11
10
  function createEventGrid(endpointParam, credential, options = {}) {
12
- var _a, _b, _c, _d, _e, _f, _g, _h;
13
- const endpointUrl = (_b = (_a = options.endpoint) !== null && _a !== void 0 ? _a : options.baseUrl) !== null && _b !== void 0 ? _b : String(endpointParam);
14
- const prefixFromOptions = (_c = options === null || options === void 0 ? void 0 : options.userAgentOptions) === null || _c === void 0 ? void 0 : _c.userAgentPrefix;
11
+ const endpointUrl = options.endpoint ?? options.baseUrl ?? String(endpointParam);
12
+ const prefixFromOptions = options?.userAgentOptions?.userAgentPrefix;
15
13
  const userAgentInfo = `azsdk-js-eventgrid-namespaces/1.0.1`;
16
14
  const userAgentPrefix = prefixFromOptions
17
15
  ? `${prefixFromOptions} azsdk-js-api ${userAgentInfo}`
18
16
  : `azsdk-js-api ${userAgentInfo}`;
19
- const _j = Object.assign(Object.assign({}, options), { userAgentOptions: { userAgentPrefix }, loggingOptions: { logger: (_e = (_d = options.loggingOptions) === null || _d === void 0 ? void 0 : _d.logger) !== null && _e !== void 0 ? _e : logger_js_1.logger.info }, credentials: {
20
- scopes: (_g = (_f = options.credentials) === null || _f === void 0 ? void 0 : _f.scopes) !== null && _g !== void 0 ? _g : [
17
+ const { apiVersion: _, ...updatedOptions } = {
18
+ ...options,
19
+ userAgentOptions: { userAgentPrefix },
20
+ loggingOptions: { logger: options.loggingOptions?.logger ?? logger_js_1.logger.info },
21
+ credentials: {
22
+ scopes: options.credentials?.scopes ?? [
21
23
  "https://eventgrid.azure.net/.default",
22
24
  ],
23
- } }), { apiVersion: _ } = _j, updatedOptions = tslib_1.__rest(_j, ["apiVersion"]);
25
+ },
26
+ };
24
27
  const clientContext = (0, core_client_1.getClient)(endpointUrl, credential, updatedOptions);
25
28
  if ((0, core_auth_1.isKeyCredential)(credential)) {
26
29
  clientContext.pipeline.addPolicy({
@@ -32,7 +35,7 @@ function createEventGrid(endpointParam, credential, options = {}) {
32
35
  });
33
36
  }
34
37
  clientContext.pipeline.removePolicy({ name: "ApiVersionPolicy" });
35
- const apiVersion = (_h = options.apiVersion) !== null && _h !== void 0 ? _h : "2024-06-01";
38
+ const apiVersion = options.apiVersion ?? "2024-06-01";
36
39
  clientContext.pipeline.addPolicy({
37
40
  name: "ClientApiVersionPolicy",
38
41
  sendRequest: (req, next) => {
@@ -45,6 +48,6 @@ function createEventGrid(endpointParam, credential, options = {}) {
45
48
  return next(req);
46
49
  },
47
50
  });
48
- return Object.assign(Object.assign({}, clientContext), { apiVersion });
51
+ return { ...clientContext, apiVersion };
49
52
  }
50
53
  //# sourceMappingURL=eventGridContext.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"eventGridContext.js","sourceRoot":"","sources":["../../../../src/generated/api/eventGridContext.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;AA0BlC,0CAsDC;;AA9ED,4CAAsC;AAEtC,yDAA2E;AAC3E,gDAI0B;AAgB1B,uCAAuC;AACvC,SAAgB,eAAe,CAC7B,aAAqB,EACrB,UAA2C,EAC3C,UAAyC,EAAE;;IAE3C,MAAM,WAAW,GACf,MAAA,MAAA,OAAO,CAAC,QAAQ,mCAAI,OAAO,CAAC,OAAO,mCAAI,MAAM,CAAC,aAAa,CAAC,CAAC;IAC/D,MAAM,iBAAiB,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,gBAAgB,0CAAE,eAAe,CAAC;IACrE,MAAM,aAAa,GAAG,qCAAqC,CAAC;IAC5D,MAAM,eAAe,GAAG,iBAAiB;QACvC,CAAC,CAAC,GAAG,iBAAiB,iBAAiB,aAAa,EAAE;QACtD,CAAC,CAAC,gBAAgB,aAAa,EAAE,CAAC;IACpC,MAAM,qCACD,OAAO,KACV,gBAAgB,EAAE,EAAE,eAAe,EAAE,EACrC,cAAc,EAAE,EAAE,MAAM,EAAE,MAAA,MAAA,OAAO,CAAC,cAAc,0CAAE,MAAM,mCAAI,kBAAM,CAAC,IAAI,EAAE,EACzE,WAAW,EAAE;YACX,MAAM,EAAE,MAAA,MAAA,OAAO,CAAC,WAAW,0CAAE,MAAM,mCAAI;gBACrC,sCAAsC;aACvC;SACF,GACF,EATK,EAAE,UAAU,EAAE,CAAC,OASpB,EATyB,cAAc,sBAAlC,cAAoC,CASzC,CAAC;IACF,MAAM,aAAa,GAAG,IAAA,uBAAS,EAAC,WAAW,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;IAEzE,IAAI,IAAA,2BAAe,EAAC,UAAU,CAAC,EAAE,CAAC;QAChC,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC;YAC/B,IAAI,EAAE,2BAA2B;YACjC,WAAW,CAAC,OAAO,EAAE,IAAI;gBACvB,OAAO,CAAC,OAAO,CAAC,GAAG,CACjB,eAAe,EACf,kBAAkB,GAAG,UAAU,CAAC,GAAG,CACpC,CAAC;gBACF,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IACD,aAAa,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAClE,MAAM,UAAU,GAAG,MAAA,OAAO,CAAC,UAAU,mCAAI,YAAY,CAAC;IACtD,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/B,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YACzB,qDAAqD;YACrD,yEAAyE;YACzE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC7B,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;gBACzC,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,GAClB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GACzD,eAAe,UAAU,EAAE,CAAC;YAC9B,CAAC;YAED,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;KACF,CAAC,CAAC;IACH,OAAO,gCAAK,aAAa,KAAE,UAAU,GAAsB,CAAC;AAC9D,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { logger } from \"../logger.js\";\nimport { KnownServiceApiVersions } from \"../models/models.js\";\nimport { Client, ClientOptions, getClient } from \"@azure-rest/core-client\";\nimport {\n KeyCredential,\n isKeyCredential,\n TokenCredential,\n} from \"@azure/core-auth\";\n\n/** Azure Messaging EventGrid Client */\nexport interface EventGridContext extends Client {\n /** The API version to use for this operation. */\n /** Known values of {@link KnownServiceApiVersions} that the service accepts. */\n apiVersion: string;\n}\n\n/** Optional parameters for the client. */\nexport interface EventGridClientOptionalParams extends ClientOptions {\n /** The API version to use for this operation. */\n /** Known values of {@link KnownServiceApiVersions} that the service accepts. */\n apiVersion?: string;\n}\n\n/** Azure Messaging EventGrid Client */\nexport function createEventGrid(\n endpointParam: string,\n credential: KeyCredential | TokenCredential,\n options: EventGridClientOptionalParams = {},\n): EventGridContext {\n const endpointUrl =\n options.endpoint ?? options.baseUrl ?? String(endpointParam);\n const prefixFromOptions = options?.userAgentOptions?.userAgentPrefix;\n const userAgentInfo = `azsdk-js-eventgrid-namespaces/1.0.1`;\n const userAgentPrefix = prefixFromOptions\n ? `${prefixFromOptions} azsdk-js-api ${userAgentInfo}`\n : `azsdk-js-api ${userAgentInfo}`;\n const { apiVersion: _, ...updatedOptions } = {\n ...options,\n userAgentOptions: { userAgentPrefix },\n loggingOptions: { logger: options.loggingOptions?.logger ?? logger.info },\n credentials: {\n scopes: options.credentials?.scopes ?? [\n \"https://eventgrid.azure.net/.default\",\n ],\n },\n };\n const clientContext = getClient(endpointUrl, credential, updatedOptions);\n\n if (isKeyCredential(credential)) {\n clientContext.pipeline.addPolicy({\n name: \"customKeyCredentialPolicy\",\n sendRequest(request, next) {\n request.headers.set(\n \"Authorization\",\n \"SharedAccessKey \" + credential.key,\n );\n return next(request);\n },\n });\n }\n clientContext.pipeline.removePolicy({ name: \"ApiVersionPolicy\" });\n const apiVersion = options.apiVersion ?? \"2024-06-01\";\n clientContext.pipeline.addPolicy({\n name: \"ClientApiVersionPolicy\",\n sendRequest: (req, next) => {\n // Use the apiVersion defined in request url directly\n // Append one if there is no apiVersion and we have one at client options\n const url = new URL(req.url);\n if (!url.searchParams.get(\"api-version\")) {\n req.url = `${req.url}${\n Array.from(url.searchParams.keys()).length > 0 ? \"&\" : \"?\"\n }api-version=${apiVersion}`;\n }\n\n return next(req);\n },\n });\n return { ...clientContext, apiVersion } as EventGridContext;\n}\n"]}
1
+ {"version":3,"file":"eventGridContext.js","sourceRoot":"","sources":["../../../../src/generated/api/eventGridContext.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;AA0BlC,0CAsDC;AA9ED,4CAAsC;AAEtC,yDAA2E;AAC3E,gDAI0B;AAgB1B,uCAAuC;AACvC,SAAgB,eAAe,CAC7B,aAAqB,EACrB,UAA2C,EAC3C,UAAyC,EAAE;IAE3C,MAAM,WAAW,GACf,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,aAAa,CAAC,CAAC;IAC/D,MAAM,iBAAiB,GAAG,OAAO,EAAE,gBAAgB,EAAE,eAAe,CAAC;IACrE,MAAM,aAAa,GAAG,qCAAqC,CAAC;IAC5D,MAAM,eAAe,GAAG,iBAAiB;QACvC,CAAC,CAAC,GAAG,iBAAiB,iBAAiB,aAAa,EAAE;QACtD,CAAC,CAAC,gBAAgB,aAAa,EAAE,CAAC;IACpC,MAAM,EAAE,UAAU,EAAE,CAAC,EAAE,GAAG,cAAc,EAAE,GAAG;QAC3C,GAAG,OAAO;QACV,gBAAgB,EAAE,EAAE,eAAe,EAAE;QACrC,cAAc,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,cAAc,EAAE,MAAM,IAAI,kBAAM,CAAC,IAAI,EAAE;QACzE,WAAW,EAAE;YACX,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,MAAM,IAAI;gBACrC,sCAAsC;aACvC;SACF;KACF,CAAC;IACF,MAAM,aAAa,GAAG,IAAA,uBAAS,EAAC,WAAW,EAAE,UAAU,EAAE,cAAc,CAAC,CAAC;IAEzE,IAAI,IAAA,2BAAe,EAAC,UAAU,CAAC,EAAE,CAAC;QAChC,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC;YAC/B,IAAI,EAAE,2BAA2B;YACjC,WAAW,CAAC,OAAO,EAAE,IAAI;gBACvB,OAAO,CAAC,OAAO,CAAC,GAAG,CACjB,eAAe,EACf,kBAAkB,GAAG,UAAU,CAAC,GAAG,CACpC,CAAC;gBACF,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IACD,aAAa,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAClE,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,YAAY,CAAC;IACtD,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC/B,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;YACzB,qDAAqD;YACrD,yEAAyE;YACzE,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC7B,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;gBACzC,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,GAClB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GACzD,eAAe,UAAU,EAAE,CAAC;YAC9B,CAAC;YAED,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;KACF,CAAC,CAAC;IACH,OAAO,EAAE,GAAG,aAAa,EAAE,UAAU,EAAsB,CAAC;AAC9D,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { logger } from \"../logger.js\";\nimport { KnownServiceApiVersions } from \"../models/models.js\";\nimport { Client, ClientOptions, getClient } from \"@azure-rest/core-client\";\nimport {\n KeyCredential,\n isKeyCredential,\n TokenCredential,\n} from \"@azure/core-auth\";\n\n/** Azure Messaging EventGrid Client */\nexport interface EventGridContext extends Client {\n /** The API version to use for this operation. */\n /** Known values of {@link KnownServiceApiVersions} that the service accepts. */\n apiVersion: string;\n}\n\n/** Optional parameters for the client. */\nexport interface EventGridClientOptionalParams extends ClientOptions {\n /** The API version to use for this operation. */\n /** Known values of {@link KnownServiceApiVersions} that the service accepts. */\n apiVersion?: string;\n}\n\n/** Azure Messaging EventGrid Client */\nexport function createEventGrid(\n endpointParam: string,\n credential: KeyCredential | TokenCredential,\n options: EventGridClientOptionalParams = {},\n): EventGridContext {\n const endpointUrl =\n options.endpoint ?? options.baseUrl ?? String(endpointParam);\n const prefixFromOptions = options?.userAgentOptions?.userAgentPrefix;\n const userAgentInfo = `azsdk-js-eventgrid-namespaces/1.0.1`;\n const userAgentPrefix = prefixFromOptions\n ? `${prefixFromOptions} azsdk-js-api ${userAgentInfo}`\n : `azsdk-js-api ${userAgentInfo}`;\n const { apiVersion: _, ...updatedOptions } = {\n ...options,\n userAgentOptions: { userAgentPrefix },\n loggingOptions: { logger: options.loggingOptions?.logger ?? logger.info },\n credentials: {\n scopes: options.credentials?.scopes ?? [\n \"https://eventgrid.azure.net/.default\",\n ],\n },\n };\n const clientContext = getClient(endpointUrl, credential, updatedOptions);\n\n if (isKeyCredential(credential)) {\n clientContext.pipeline.addPolicy({\n name: \"customKeyCredentialPolicy\",\n sendRequest(request, next) {\n request.headers.set(\n \"Authorization\",\n \"SharedAccessKey \" + credential.key,\n );\n return next(request);\n },\n });\n }\n clientContext.pipeline.removePolicy({ name: \"ApiVersionPolicy\" });\n const apiVersion = options.apiVersion ?? \"2024-06-01\";\n clientContext.pipeline.addPolicy({\n name: \"ClientApiVersionPolicy\",\n sendRequest: (req, next) => {\n // Use the apiVersion defined in request url directly\n // Append one if there is no apiVersion and we have one at client options\n const url = new URL(req.url);\n if (!url.searchParams.get(\"api-version\")) {\n req.url = `${req.url}${\n Array.from(url.searchParams.keys()).length > 0 ? \"&\" : \"?\"\n }api-version=${apiVersion}`;\n }\n\n return next(req);\n },\n });\n return { ...clientContext, apiVersion } as EventGridContext;\n}\n"]}
@@ -27,19 +27,23 @@ const models_js_1 = require("../models/models.js");
27
27
  const urlTemplate_js_1 = require("../static-helpers/urlTemplate.js");
28
28
  const core_client_1 = require("@azure-rest/core-client");
29
29
  function _renewCloudEventLocksSend(context, topicName, eventSubscriptionName, lockTokens, options = { requestOptions: {} }) {
30
- var _a, _b;
31
30
  const path = (0, urlTemplate_js_1.expandUrlTemplate)("/topics/{topicName}/eventsubscriptions/{eventSubscriptionName}:renewLock{?api%2Dversion}", {
32
31
  topicName: topicName,
33
32
  eventSubscriptionName: eventSubscriptionName,
34
33
  "api%2Dversion": context.apiVersion,
35
34
  }, {
36
- allowReserved: (_a = options === null || options === void 0 ? void 0 : options.requestOptions) === null || _a === void 0 ? void 0 : _a.skipUrlEncoding,
35
+ allowReserved: options?.requestOptions?.skipUrlEncoding,
37
36
  });
38
- return context.path(path).post(Object.assign(Object.assign({}, (0, core_client_1.operationOptionsToRequestParameters)(options)), { contentType: "application/json", headers: Object.assign({ accept: "application/json" }, (_b = options.requestOptions) === null || _b === void 0 ? void 0 : _b.headers), body: {
37
+ return context.path(path).post({
38
+ ...(0, core_client_1.operationOptionsToRequestParameters)(options),
39
+ contentType: "application/json",
40
+ headers: { accept: "application/json", ...options.requestOptions?.headers },
41
+ body: {
39
42
  lockTokens: lockTokens.map((p) => {
40
43
  return p;
41
44
  }),
42
- } }));
45
+ },
46
+ });
43
47
  }
44
48
  async function _renewCloudEventLocksDeserialize(result) {
45
49
  const expectedStatuses = ["200"];
@@ -54,19 +58,23 @@ async function renewCloudEventLocks(context, topicName, eventSubscriptionName, l
54
58
  return _renewCloudEventLocksDeserialize(result);
55
59
  }
56
60
  function _rejectCloudEventsSend(context, topicName, eventSubscriptionName, lockTokens, options = { requestOptions: {} }) {
57
- var _a, _b;
58
61
  const path = (0, urlTemplate_js_1.expandUrlTemplate)("/topics/{topicName}/eventsubscriptions/{eventSubscriptionName}:reject{?api%2Dversion}", {
59
62
  topicName: topicName,
60
63
  eventSubscriptionName: eventSubscriptionName,
61
64
  "api%2Dversion": context.apiVersion,
62
65
  }, {
63
- allowReserved: (_a = options === null || options === void 0 ? void 0 : options.requestOptions) === null || _a === void 0 ? void 0 : _a.skipUrlEncoding,
66
+ allowReserved: options?.requestOptions?.skipUrlEncoding,
64
67
  });
65
- return context.path(path).post(Object.assign(Object.assign({}, (0, core_client_1.operationOptionsToRequestParameters)(options)), { contentType: "application/json", headers: Object.assign({ accept: "application/json" }, (_b = options.requestOptions) === null || _b === void 0 ? void 0 : _b.headers), body: {
68
+ return context.path(path).post({
69
+ ...(0, core_client_1.operationOptionsToRequestParameters)(options),
70
+ contentType: "application/json",
71
+ headers: { accept: "application/json", ...options.requestOptions?.headers },
72
+ body: {
66
73
  lockTokens: lockTokens.map((p) => {
67
74
  return p;
68
75
  }),
69
- } }));
76
+ },
77
+ });
70
78
  }
71
79
  async function _rejectCloudEventsDeserialize(result) {
72
80
  const expectedStatuses = ["200"];
@@ -81,20 +89,24 @@ async function rejectCloudEvents(context, topicName, eventSubscriptionName, lock
81
89
  return _rejectCloudEventsDeserialize(result);
82
90
  }
83
91
  function _releaseCloudEventsSend(context, topicName, eventSubscriptionName, lockTokens, options = { requestOptions: {} }) {
84
- var _a, _b;
85
92
  const path = (0, urlTemplate_js_1.expandUrlTemplate)("/topics/{topicName}/eventsubscriptions/{eventSubscriptionName}:release{?api%2Dversion,releaseDelayInSeconds}", {
86
93
  topicName: topicName,
87
94
  eventSubscriptionName: eventSubscriptionName,
88
95
  "api%2Dversion": context.apiVersion,
89
- releaseDelayInSeconds: options === null || options === void 0 ? void 0 : options.releaseDelayInSeconds,
96
+ releaseDelayInSeconds: options?.releaseDelayInSeconds,
90
97
  }, {
91
- allowReserved: (_a = options === null || options === void 0 ? void 0 : options.requestOptions) === null || _a === void 0 ? void 0 : _a.skipUrlEncoding,
98
+ allowReserved: options?.requestOptions?.skipUrlEncoding,
92
99
  });
93
- return context.path(path).post(Object.assign(Object.assign({}, (0, core_client_1.operationOptionsToRequestParameters)(options)), { contentType: "application/json", headers: Object.assign({ accept: "application/json" }, (_b = options.requestOptions) === null || _b === void 0 ? void 0 : _b.headers), body: {
100
+ return context.path(path).post({
101
+ ...(0, core_client_1.operationOptionsToRequestParameters)(options),
102
+ contentType: "application/json",
103
+ headers: { accept: "application/json", ...options.requestOptions?.headers },
104
+ body: {
94
105
  lockTokens: lockTokens.map((p) => {
95
106
  return p;
96
107
  }),
97
- } }));
108
+ },
109
+ });
98
110
  }
99
111
  async function _releaseCloudEventsDeserialize(result) {
100
112
  const expectedStatuses = ["200"];
@@ -109,19 +121,23 @@ async function releaseCloudEvents(context, topicName, eventSubscriptionName, loc
109
121
  return _releaseCloudEventsDeserialize(result);
110
122
  }
111
123
  function _acknowledgeCloudEventsSend(context, topicName, eventSubscriptionName, lockTokens, options = { requestOptions: {} }) {
112
- var _a, _b;
113
124
  const path = (0, urlTemplate_js_1.expandUrlTemplate)("/topics/{topicName}/eventsubscriptions/{eventSubscriptionName}:acknowledge{?api%2Dversion}", {
114
125
  topicName: topicName,
115
126
  eventSubscriptionName: eventSubscriptionName,
116
127
  "api%2Dversion": context.apiVersion,
117
128
  }, {
118
- allowReserved: (_a = options === null || options === void 0 ? void 0 : options.requestOptions) === null || _a === void 0 ? void 0 : _a.skipUrlEncoding,
129
+ allowReserved: options?.requestOptions?.skipUrlEncoding,
119
130
  });
120
- return context.path(path).post(Object.assign(Object.assign({}, (0, core_client_1.operationOptionsToRequestParameters)(options)), { contentType: "application/json", headers: Object.assign({ accept: "application/json" }, (_b = options.requestOptions) === null || _b === void 0 ? void 0 : _b.headers), body: {
131
+ return context.path(path).post({
132
+ ...(0, core_client_1.operationOptionsToRequestParameters)(options),
133
+ contentType: "application/json",
134
+ headers: { accept: "application/json", ...options.requestOptions?.headers },
135
+ body: {
121
136
  lockTokens: lockTokens.map((p) => {
122
137
  return p;
123
138
  }),
124
- } }));
139
+ },
140
+ });
125
141
  }
126
142
  async function _acknowledgeCloudEventsDeserialize(result) {
127
143
  const expectedStatuses = ["200"];
@@ -136,19 +152,24 @@ async function acknowledgeCloudEvents(context, topicName, eventSubscriptionName,
136
152
  return _acknowledgeCloudEventsDeserialize(result);
137
153
  }
138
154
  function _receiveCloudEventsSend(context, topicName, eventSubscriptionName, options = { requestOptions: {} }) {
139
- var _a, _b;
140
155
  const path = (0, urlTemplate_js_1.expandUrlTemplate)("/topics/{topicName}/eventsubscriptions/{eventSubscriptionName}:receive{?api%2Dversion,maxEvents,maxWaitTime}", {
141
156
  topicName: topicName,
142
157
  eventSubscriptionName: eventSubscriptionName,
143
158
  "api%2Dversion": context.apiVersion,
144
- maxEvents: options === null || options === void 0 ? void 0 : options.maxEvents,
145
- maxWaitTime: options === null || options === void 0 ? void 0 : options.maxWaitTime,
159
+ maxEvents: options?.maxEvents,
160
+ maxWaitTime: options?.maxWaitTime,
146
161
  }, {
147
- allowReserved: (_a = options === null || options === void 0 ? void 0 : options.requestOptions) === null || _a === void 0 ? void 0 : _a.skipUrlEncoding,
162
+ allowReserved: options?.requestOptions?.skipUrlEncoding,
148
163
  });
149
164
  return context
150
165
  .path(path)
151
- .post(Object.assign(Object.assign({}, (0, core_client_1.operationOptionsToRequestParameters)(options)), { headers: Object.assign({ accept: "application/json" }, (_b = options.requestOptions) === null || _b === void 0 ? void 0 : _b.headers) }));
166
+ .post({
167
+ ...(0, core_client_1.operationOptionsToRequestParameters)(options),
168
+ headers: {
169
+ accept: "application/json",
170
+ ...options.requestOptions?.headers,
171
+ },
172
+ });
152
173
  }
153
174
  async function _receiveCloudEventsDeserialize(result) {
154
175
  const expectedStatuses = ["200"];
@@ -163,16 +184,23 @@ async function receiveCloudEvents(context, topicName, eventSubscriptionName, opt
163
184
  return _receiveCloudEventsDeserialize(result);
164
185
  }
165
186
  function _publishCloudEventsSend(context, topicName, events, options = { requestOptions: {} }) {
166
- var _a, _b;
167
187
  const path = (0, urlTemplate_js_1.expandUrlTemplate)("/topics/{topicName}:publish{?api%2Dversion}", {
168
188
  topicName: topicName,
169
189
  "api%2Dversion": context.apiVersion,
170
190
  }, {
171
- allowReserved: (_a = options === null || options === void 0 ? void 0 : options.requestOptions) === null || _a === void 0 ? void 0 : _a.skipUrlEncoding,
191
+ allowReserved: options?.requestOptions?.skipUrlEncoding,
172
192
  });
173
193
  return context
174
194
  .path(path)
175
- .post(Object.assign(Object.assign({}, (0, core_client_1.operationOptionsToRequestParameters)(options)), { contentType: "application/cloudevents-batch+json; charset=utf-8", headers: Object.assign({ accept: "application/json" }, (_b = options.requestOptions) === null || _b === void 0 ? void 0 : _b.headers), body: (0, models_js_1.cloudEventArraySerializer)(events) }));
195
+ .post({
196
+ ...(0, core_client_1.operationOptionsToRequestParameters)(options),
197
+ contentType: "application/cloudevents-batch+json; charset=utf-8",
198
+ headers: {
199
+ accept: "application/json",
200
+ ...options.requestOptions?.headers,
201
+ },
202
+ body: (0, models_js_1.cloudEventArraySerializer)(events),
203
+ });
176
204
  }
177
205
  async function _publishCloudEventsDeserialize(result) {
178
206
  const expectedStatuses = ["200"];
@@ -187,16 +215,23 @@ async function publishCloudEvents(context, topicName, events, options = { reques
187
215
  return _publishCloudEventsDeserialize(result);
188
216
  }
189
217
  function _publishCloudEventSend(context, topicName, event, options = { requestOptions: {} }) {
190
- var _a, _b;
191
218
  const path = (0, urlTemplate_js_1.expandUrlTemplate)("/topics/{topicName}:publish{?api%2Dversion}", {
192
219
  topicName: topicName,
193
220
  "api%2Dversion": context.apiVersion,
194
221
  }, {
195
- allowReserved: (_a = options === null || options === void 0 ? void 0 : options.requestOptions) === null || _a === void 0 ? void 0 : _a.skipUrlEncoding,
222
+ allowReserved: options?.requestOptions?.skipUrlEncoding,
196
223
  });
197
224
  return context
198
225
  .path(path)
199
- .post(Object.assign(Object.assign({}, (0, core_client_1.operationOptionsToRequestParameters)(options)), { contentType: "application/cloudevents+json; charset=utf-8", headers: Object.assign({ accept: "application/json" }, (_b = options.requestOptions) === null || _b === void 0 ? void 0 : _b.headers), body: (0, models_js_1.cloudEventSerializer)(event) }));
226
+ .post({
227
+ ...(0, core_client_1.operationOptionsToRequestParameters)(options),
228
+ contentType: "application/cloudevents+json; charset=utf-8",
229
+ headers: {
230
+ accept: "application/json",
231
+ ...options.requestOptions?.headers,
232
+ },
233
+ body: (0, models_js_1.cloudEventSerializer)(event),
234
+ });
200
235
  }
201
236
  async function _publishCloudEventDeserialize(result) {
202
237
  const expectedStatuses = ["200"];