@amqp-contract/client-nestjs 0.6.0 → 0.7.0

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.
package/README.md CHANGED
@@ -19,15 +19,15 @@ pnpm add @amqp-contract/client-nestjs @amqp-contract/client @amqp-contract/contr
19
19
  ## Usage
20
20
 
21
21
  ```typescript
22
- import { Injectable, Module } from '@nestjs/common';
23
- import { AmqpClientModule, AmqpClientService } from '@amqp-contract/client-nestjs';
24
- import { contract } from './contract';
22
+ import { Injectable, Module } from "@nestjs/common";
23
+ import { AmqpClientModule, AmqpClientService } from "@amqp-contract/client-nestjs";
24
+ import { contract } from "./contract";
25
25
 
26
26
  @Module({
27
27
  imports: [
28
28
  AmqpClientModule.forRoot({
29
29
  contract,
30
- connection: 'amqp://localhost',
30
+ connection: "amqp://localhost",
31
31
  }),
32
32
  ],
33
33
  })
@@ -35,12 +35,10 @@ export class AppModule {}
35
35
 
36
36
  @Injectable()
37
37
  export class OrderService {
38
- constructor(
39
- private readonly client: AmqpClientService<typeof contract>,
40
- ) {}
38
+ constructor(private readonly client: AmqpClientService<typeof contract>) {}
41
39
 
42
40
  async createOrder(orderId: string, amount: number) {
43
- await this.client.publish('orderCreated', { orderId, amount });
41
+ await this.client.publish("orderCreated", { orderId, amount });
44
42
  }
45
43
  }
46
44
  ```
package/dist/index.cjs CHANGED
@@ -817,10 +817,10 @@ let AmqpClientService = class AmqpClientService$1 {
817
817
  *
818
818
  * @param publisherName - The name of the publisher from the contract
819
819
  * @param message - The message payload (type-checked against the contract)
820
- * @param options - Optional AMQP publish options (e.g., persistence, headers)
820
+ * @param options - Optional AMQP publish options including compression support
821
821
  * @returns A Future that resolves to a Result indicating success or failure
822
822
  *
823
- * @example
823
+ * @example Basic publishing
824
824
  * ```typescript
825
825
  * const result = await this.amqpClient.publish('orderCreated', {
826
826
  * orderId: '123',
@@ -831,6 +831,16 @@ let AmqpClientService = class AmqpClientService$1 {
831
831
  * console.error('Publish failed:', result.error);
832
832
  * }
833
833
  * ```
834
+ *
835
+ * @example Publishing with compression
836
+ * ```typescript
837
+ * const result = await this.amqpClient.publish('orderCreated', {
838
+ * orderId: '123',
839
+ * amount: 99.99
840
+ * }, {
841
+ * compression: 'gzip'
842
+ * }).resultToPromise();
843
+ * ```
834
844
  */
835
845
  publish(publisherName, message, options) {
836
846
  if (!this.client) return import_Boxed.Future.value(import_Boxed.Result.Error(new _amqp_contract_client.TechnicalError("Client not initialized. Ensure the module has been initialized before publishing.")));
package/dist/index.d.cts CHANGED
@@ -1,9 +1,8 @@
1
1
  import { AmqpConnectionManagerOptions, ConnectionUrl } from "amqp-connection-manager";
2
- import { ClientInferPublisherInput, ClientInferPublisherInput as ClientInferPublisherInput$1, MessageValidationError, MessageValidationError as MessageValidationError$1, TechnicalError, TechnicalError as TechnicalError$1 } from "@amqp-contract/client";
2
+ import { ClientInferPublisherInput, ClientInferPublisherInput as ClientInferPublisherInput$1, MessageValidationError, MessageValidationError as MessageValidationError$1, PublishOptions, TechnicalError, TechnicalError as TechnicalError$1 } from "@amqp-contract/client";
3
3
  import { ContractDefinition, InferPublisherNames } from "@amqp-contract/contract";
4
4
  import { Future, Result } from "@swan-io/boxed";
5
5
  import { DynamicModule, ModuleMetadata, OnModuleDestroy, OnModuleInit, Type } from "@nestjs/common";
6
- import { Options } from "amqplib";
7
6
 
8
7
  //#region src/client.service.d.ts
9
8
 
@@ -105,10 +104,10 @@ declare class AmqpClientService<TContract extends ContractDefinition> implements
105
104
  *
106
105
  * @param publisherName - The name of the publisher from the contract
107
106
  * @param message - The message payload (type-checked against the contract)
108
- * @param options - Optional AMQP publish options (e.g., persistence, headers)
107
+ * @param options - Optional AMQP publish options including compression support
109
108
  * @returns A Future that resolves to a Result indicating success or failure
110
109
  *
111
- * @example
110
+ * @example Basic publishing
112
111
  * ```typescript
113
112
  * const result = await this.amqpClient.publish('orderCreated', {
114
113
  * orderId: '123',
@@ -119,8 +118,18 @@ declare class AmqpClientService<TContract extends ContractDefinition> implements
119
118
  * console.error('Publish failed:', result.error);
120
119
  * }
121
120
  * ```
121
+ *
122
+ * @example Publishing with compression
123
+ * ```typescript
124
+ * const result = await this.amqpClient.publish('orderCreated', {
125
+ * orderId: '123',
126
+ * amount: 99.99
127
+ * }, {
128
+ * compression: 'gzip'
129
+ * }).resultToPromise();
130
+ * ```
122
131
  */
123
- publish<TName extends InferPublisherNames<TContract>>(publisherName: TName, message: ClientInferPublisherInput$1<TContract, TName>, options?: Options.Publish): Future<Result<void, TechnicalError$1 | MessageValidationError$1>>;
132
+ publish<TName extends InferPublisherNames<TContract>>(publisherName: TName, message: ClientInferPublisherInput$1<TContract, TName>, options?: PublishOptions): Future<Result<void, TechnicalError$1 | MessageValidationError$1>>;
124
133
  }
125
134
  //#endregion
126
135
  //#region src/client.module.d.ts
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","names":[],"sources":["../src/client.service.ts","../src/client.module.ts","../src/client.module-definition.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;AA6BA;;;;;;AAuDA;;;;;;;;AAgEmB,KAvHP,uBAuHO,CAAA,kBAvHmC,kBAuHnC,CAAA,GAAA;EACoB;EAAW,QAAA,EAtHtC,SAsHsC;EAArC;EACC,IAAA,EArHN,aAqHc,EAAA;EACG;EAAiB,iBAAA,CAAA,EApHpB,4BAoHoB,GAAA,SAAA;CAA9B;;;;;;;;AC/IsD;;;;;;;;AAalE;;;;;;;AAsEA;;;;;;;;;;;;;ACvFA;;;;;;;;;;;cFiFa,oCAAoC,+BACpC,cAAc;;;uBAMG,wBAAwB;;;;;;;;kBAU9B;;;;;;;;qBAeG;;;;;;;;;;;;;;;;;;;;;;;;wBA8BH,oBAAoB,2BACzB,gBACN,4BAA0B,WAAW,kBACpC,OAAA,CAAQ,UACjB,OAAO,aAAa,mBAAiB;;;;;;;KCzIrC,iDAAiD,sBAClD,wBAAwB,aACxB,QAAQ,wBAAwB;;ADapC;;AAEY,KCVA,4BDUA,CAAA,kBCV+C,kBDU/C,CAAA,GAAA;EAEJ;;;AAmDR;EACiD,UAAA,EAAA,CAAA,GAAA,IAAA,EAAA,GAAA,EAAA,EAAA,GC1Df,8BD0De,CC1DgB,SD0DhB,CAAA;EAOK;;;;EAuDV,MAAA,CAAA,EAAA,CAAA,MAAA,GAAA,MAAA,GCnHd,IDmHc,CAAA,OAAA,CAAA,CAAA,EAAA;EAApB;;;EAE0B,OAAA,CAAA,ECjHtC,cDiHsC,CAAA,SAAA,CAAA;CAArC;;;;;;;;;;;;AC7IqD;;;;;;;;AAalE;;;;;;;AAsEA;;;;;;;;;;;;;ACvFA;;;;;;;;;;;;;cDwFa,gBAAA;;;;;;;mCAOsB,6BACtB,wBAAwB,aAChC;;;;;;;wCAoBmC,6BAC3B,6BAA6B,aACrC;;;;;;;;cCvHQ"}
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../src/client.service.ts","../src/client.module.ts","../src/client.module-definition.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;AA6BA;;;;;;AAuDA;;;;;;;;AA0EmB,KAjIP,uBAiIO,CAAA,kBAjImC,kBAiInC,CAAA,GAAA;EACoB;EAAW,QAAA,EAhItC,SAgIsC;EAArC;EACC,IAAA,EA/HN,aA+HM,EAAA;EACW;EAAiB,iBAAA,CAAA,EA9HpB,4BA8HoB,GAAA,SAAA;CAA9B;;;;;;;;ACzJsD;;;;;;;;AAalE;;;;;;;AAsEA;;;;;;;;;;;;;ACvFA;;;;;;;;;;;cFiFa,oCAAoC,+BACpC,cAAc;;;uBAMG,wBAAwB;;;;;;;;kBAU9B;;;;;;;;qBAeG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAwCH,oBAAoB,2BACzB,gBACN,4BAA0B,WAAW,kBACpC,iBACT,OAAO,aAAa,mBAAiB;;;;;;;KCnJrC,iDAAiD,sBAClD,wBAAwB,aACxB,QAAQ,wBAAwB;ADapC;;;AAIQ,KCZI,4BDYJ,CAAA,kBCZmD,kBDYnD,CAAA,GAAA;EAEc;;AAiDtB;;EAQsD,UAAA,EAAA,CAAA,GAAA,IAAA,EAAA,GAAA,EAAA,EAAA,GCjEpB,8BDiEoB,CCjEW,SDiEX,CAAA;EAAxB;;;;EAiEN,MAAA,CAAA,EAAA,CAAA,MAAA,GAAA,MAAA,GC7HM,ID6HN,CAAA,OAAA,CAAA,CAAA,EAAA;EACL;;;EACN,OAAA,CAAA,EC3HD,cD2HC,CAAA,SAAA,CAAA;CACC;;;;;;;;;;;ACxJoD;;;;;;;;AAalE;;;;;;;AAsEA;;;;;;;;;;;;;ACvFA;;;;;;;;;;;;;;cDwFa,gBAAA;;;;;;;mCAOsB,6BACtB,wBAAwB,aAChC;;;;;;;wCAoBmC,6BAC3B,6BAA6B,aACrC;;;;;;;;cCvHQ"}
package/dist/index.d.mts CHANGED
@@ -1,9 +1,8 @@
1
- import { ClientInferPublisherInput, ClientInferPublisherInput as ClientInferPublisherInput$1, MessageValidationError, MessageValidationError as MessageValidationError$1, TechnicalError, TechnicalError as TechnicalError$1 } from "@amqp-contract/client";
1
+ import { ClientInferPublisherInput, ClientInferPublisherInput as ClientInferPublisherInput$1, MessageValidationError, MessageValidationError as MessageValidationError$1, PublishOptions, TechnicalError, TechnicalError as TechnicalError$1 } from "@amqp-contract/client";
2
2
  import { DynamicModule, ModuleMetadata, OnModuleDestroy, OnModuleInit, Type } from "@nestjs/common";
3
3
  import { AmqpConnectionManagerOptions, ConnectionUrl } from "amqp-connection-manager";
4
4
  import { ContractDefinition, InferPublisherNames } from "@amqp-contract/contract";
5
5
  import { Future, Result } from "@swan-io/boxed";
6
- import { Options } from "amqplib";
7
6
 
8
7
  //#region src/client.service.d.ts
9
8
 
@@ -105,10 +104,10 @@ declare class AmqpClientService<TContract extends ContractDefinition> implements
105
104
  *
106
105
  * @param publisherName - The name of the publisher from the contract
107
106
  * @param message - The message payload (type-checked against the contract)
108
- * @param options - Optional AMQP publish options (e.g., persistence, headers)
107
+ * @param options - Optional AMQP publish options including compression support
109
108
  * @returns A Future that resolves to a Result indicating success or failure
110
109
  *
111
- * @example
110
+ * @example Basic publishing
112
111
  * ```typescript
113
112
  * const result = await this.amqpClient.publish('orderCreated', {
114
113
  * orderId: '123',
@@ -119,8 +118,18 @@ declare class AmqpClientService<TContract extends ContractDefinition> implements
119
118
  * console.error('Publish failed:', result.error);
120
119
  * }
121
120
  * ```
121
+ *
122
+ * @example Publishing with compression
123
+ * ```typescript
124
+ * const result = await this.amqpClient.publish('orderCreated', {
125
+ * orderId: '123',
126
+ * amount: 99.99
127
+ * }, {
128
+ * compression: 'gzip'
129
+ * }).resultToPromise();
130
+ * ```
122
131
  */
123
- publish<TName extends InferPublisherNames<TContract>>(publisherName: TName, message: ClientInferPublisherInput$1<TContract, TName>, options?: Options.Publish): Future<Result<void, TechnicalError$1 | MessageValidationError$1>>;
132
+ publish<TName extends InferPublisherNames<TContract>>(publisherName: TName, message: ClientInferPublisherInput$1<TContract, TName>, options?: PublishOptions): Future<Result<void, TechnicalError$1 | MessageValidationError$1>>;
124
133
  }
125
134
  //#endregion
126
135
  //#region src/client.module.d.ts
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/client.service.ts","../src/client.module.ts","../src/client.module-definition.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;AA6BA;;;;;;AAuDA;;;;;;;;AAgEmB,KAvHP,uBAuHO,CAAA,kBAvHmC,kBAuHnC,CAAA,GAAA;EACoB;EAAW,QAAA,EAtHtC,SAsHsC;EAArC;EACC,IAAA,EArHN,aAqHc,EAAA;EACG;EAAiB,iBAAA,CAAA,EApHpB,4BAoHoB,GAAA,SAAA;CAA9B;;;;;;;;AC/IsD;;;;;;;;AAalE;;;;;;;AAsEA;;;;;;;;;;;;;ACvFA;;;;;;;;;;;cFiFa,oCAAoC,+BACpC,cAAc;;;uBAMG,wBAAwB;;;;;;;;kBAU9B;;;;;;;;qBAeG;;;;;;;;;;;;;;;;;;;;;;;;wBA8BH,oBAAoB,2BACzB,gBACN,4BAA0B,WAAW,kBACpC,OAAA,CAAQ,UACjB,OAAO,aAAa,mBAAiB;;;;;;;KCzIrC,iDAAiD,sBAClD,wBAAwB,aACxB,QAAQ,wBAAwB;;ADapC;;AAEY,KCVA,4BDUA,CAAA,kBCV+C,kBDU/C,CAAA,GAAA;EAEJ;;;AAmDR;EACiD,UAAA,EAAA,CAAA,GAAA,IAAA,EAAA,GAAA,EAAA,EAAA,GC1Df,8BD0De,CC1DgB,SD0DhB,CAAA;EAOK;;;;EAuDV,MAAA,CAAA,EAAA,CAAA,MAAA,GAAA,MAAA,GCnHd,IDmHc,CAAA,OAAA,CAAA,CAAA,EAAA;EAApB;;;EAE0B,OAAA,CAAA,ECjHtC,cDiHsC,CAAA,SAAA,CAAA;CAArC;;;;;;;;;;;;AC7IqD;;;;;;;;AAalE;;;;;;;AAsEA;;;;;;;;;;;;;ACvFA;;;;;;;;;;;;;cDwFa,gBAAA;;;;;;;mCAOsB,6BACtB,wBAAwB,aAChC;;;;;;;wCAoBmC,6BAC3B,6BAA6B,aACrC;;;;;;;;cCvHQ"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/client.service.ts","../src/client.module.ts","../src/client.module-definition.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;AA6BA;;;;;;AAuDA;;;;;;;;AA0EmB,KAjIP,uBAiIO,CAAA,kBAjImC,kBAiInC,CAAA,GAAA;EACoB;EAAW,QAAA,EAhItC,SAgIsC;EAArC;EACC,IAAA,EA/HN,aA+HM,EAAA;EACW;EAAiB,iBAAA,CAAA,EA9HpB,4BA8HoB,GAAA,SAAA;CAA9B;;;;;;;;ACzJsD;;;;;;;;AAalE;;;;;;;AAsEA;;;;;;;;;;;;;ACvFA;;;;;;;;;;;cFiFa,oCAAoC,+BACpC,cAAc;;;uBAMG,wBAAwB;;;;;;;;kBAU9B;;;;;;;;qBAeG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAwCH,oBAAoB,2BACzB,gBACN,4BAA0B,WAAW,kBACpC,iBACT,OAAO,aAAa,mBAAiB;;;;;;;KCnJrC,iDAAiD,sBAClD,wBAAwB,aACxB,QAAQ,wBAAwB;ADapC;;;AAIQ,KCZI,4BDYJ,CAAA,kBCZmD,kBDYnD,CAAA,GAAA;EAEc;;AAiDtB;;EAQsD,UAAA,EAAA,CAAA,GAAA,IAAA,EAAA,GAAA,EAAA,EAAA,GCjEpB,8BDiEoB,CCjEW,SDiEX,CAAA;EAAxB;;;;EAiEN,MAAA,CAAA,EAAA,CAAA,MAAA,GAAA,MAAA,GC7HM,ID6HN,CAAA,OAAA,CAAA,CAAA,EAAA;EACL;;;EACN,OAAA,CAAA,EC3HD,cD2HC,CAAA,SAAA,CAAA;CACC;;;;;;;;;;;ACxJoD;;;;;;;;AAalE;;;;;;;AAsEA;;;;;;;;;;;;;ACvFA;;;;;;;;;;;;;;cDwFa,gBAAA;;;;;;;mCAOsB,6BACtB,wBAAwB,aAChC;;;;;;;wCAoBmC,6BAC3B,6BAA6B,aACrC;;;;;;;;cCvHQ"}
package/dist/index.mjs CHANGED
@@ -817,10 +817,10 @@ let AmqpClientService = class AmqpClientService$1 {
817
817
  *
818
818
  * @param publisherName - The name of the publisher from the contract
819
819
  * @param message - The message payload (type-checked against the contract)
820
- * @param options - Optional AMQP publish options (e.g., persistence, headers)
820
+ * @param options - Optional AMQP publish options including compression support
821
821
  * @returns A Future that resolves to a Result indicating success or failure
822
822
  *
823
- * @example
823
+ * @example Basic publishing
824
824
  * ```typescript
825
825
  * const result = await this.amqpClient.publish('orderCreated', {
826
826
  * orderId: '123',
@@ -831,6 +831,16 @@ let AmqpClientService = class AmqpClientService$1 {
831
831
  * console.error('Publish failed:', result.error);
832
832
  * }
833
833
  * ```
834
+ *
835
+ * @example Publishing with compression
836
+ * ```typescript
837
+ * const result = await this.amqpClient.publish('orderCreated', {
838
+ * orderId: '123',
839
+ * amount: 99.99
840
+ * }, {
841
+ * compression: 'gzip'
842
+ * }).resultToPromise();
843
+ * ```
834
844
  */
835
845
  publish(publisherName, message, options) {
836
846
  if (!this.client) return import_Boxed.Future.value(import_Boxed.Result.Error(new TechnicalError("Client not initialized. Ensure the module has been initialized before publishing.")));
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":["t","n","r","i","AmqpClientService","options: AmqpClientModuleOptions<TContract>","Future","Result","AmqpClientModule","providers: Provider[]"],"sources":["../../../node_modules/.pnpm/@swan-io+boxed@3.2.1_typescript@5.9.3/node_modules/@swan-io/boxed/dist/Boxed.js","../src/client.module-definition.ts","../src/client.service.ts","../src/client.module.ts"],"sourcesContent":["var t=function(t){return Object.keys(t)},n=function(t){return Object.values(t)},r=Object.prototype.hasOwnProperty,e={__proto__:null,fromEntries:Object.fromEntries,entries:function(t){return Object.entries(t)},keys:t,values:n,fromOptional:function(t){var n={};for(var e in t)if(r.call(t,e)){var u=t[e];if(void 0===u)continue;u.isSome()&&(n[e]=u.get())}return n}},u=new WeakMap,o=\"function\"==typeof WeakRef?WeakRef:/*#__PURE__*/function(){function t(t){u.set(this,t)}return t.prototype.deref=function(){return u.get(this)},t}(),i=function(){var t=new Map,n=\"function\"==typeof FinalizationRegistry?new FinalizationRegistry(function(n){t.delete(n)}):void 0;return{set:function(r,e){t.set(r,new o(e)),void 0!==n&&n.register(e,r)},get:function(n){var r=t.get(n);if(void 0!==r)return r.deref()}}},a=Symbol.for(\"__boxed_type__\"),c=function(t,n){for(var r=Math.min(t.length,n.length),e=Array(r),u=-1;++u<r;)e[u]=[t[u],n[u]];return e},f=i(),s=/*#__PURE__*/function(){function t(){}t.fromPredicate=function(t,n){return n(t)?p.Some(t):v};var n=t.prototype;return n.map=function(t){return this===v?this:p.Some(t(this.value))},n.flatMap=function(t){return this===v?this:t(this.value)},n.filter=function(t){return this===v||t(this.value)?this:v},n.get=function(){return this.value},n.getWithDefault=function(t){return this===v?t:this.value},n.getOr=function(t){return this===v?t:this.value},n.orElse=function(t){return this===v?t:this},n.mapOr=function(t,n){return this===v?t:n(this.value)},n.match=function(t){return this===v?t.None():t.Some(this.value)},n.tap=function(t){return t(this),this},n.tapSome=function(t){return this===v||t(this.value),this},n.toUndefined=function(){if(this!==v)return this.value},n.toNull=function(){return this===v?null:this.value},n.toResult=function(t){return this.match({Some:function(t){return k.Ok(t)},None:function(){return k.Error(t)}})},n.isSome=function(){return this!==v},n.isNone=function(){return this===v},n.toJSON=function(){return this.match({None:function(){var t;return(t={})[a]=\"Option\",t.tag=\"None\",t},Some:function(t){var n;return(n={})[a]=\"Option\",n.tag=\"Some\",n.value=t,n}})},t}();s.P={Some:function(t){return{tag:\"Some\",value:t}},None:{tag:\"None\"}},s.Some=function(t){var n=f.get(t);if(null==n){var r=Object.create(h);return r.tag=\"Some\",r.value=t,Object.freeze(r),f.set(t,r),r}return n},s.None=function(){return v},s.isOption=function(t){return null!=t&&\"Option\"===t.__boxed_type__},s.fromNullable=function(t){return null==t?v:p.Some(t)},s.fromNull=function(t){return null===t?v:p.Some(t)},s.fromUndefined=function(t){return void 0===t?v:p.Some(t)},s.all=function(t){for(var n,r=t.length,e=p.Some([]),u=0,o=function(){if(u>=r)return{v:e};var n=t[u];null!=n&&(e=e.flatMap(function(t){return n.map(function(n){return t.push(n),t})})),u++};;)if(n=o())return n.v},s.allFromDict=function(r){var e=t(r);return p.all(n(r)).map(function(t){return Object.fromEntries(c(e,t))})},s.equals=function(t,n,r){return t.isSome()&&n.isSome()?r(t.get(),n.get()):t.tag===n.tag},s.fromJSON=function(t){return\"None\"===t.tag?p.None():p.Some(t.value)},s.prototype.__boxed_type__=\"Option\";var l,h=s.prototype,v=((l=Object.create(h)).tag=\"None\",Object.freeze(l),l),p=s,m=i(),g=i(),O=/*#__PURE__*/function(){function t(){}var n=t.prototype;return n.map=function(t){return\"Ok\"===this.tag?k.Ok(t(this.value)):this},n.mapError=function(t){return\"Ok\"===this.tag?this:k.Error(t(this.error))},n.flatMap=function(t){return\"Ok\"===this.tag?t(this.value):this},n.flatMapError=function(t){return\"Ok\"===this.tag?this:t(this.error)},n.get=function(){return this.value},n.getError=function(){return this.error},n.getWithDefault=function(t){return\"Ok\"===this.tag?this.value:t},n.getOr=function(t){return\"Ok\"===this.tag?this.value:t},n.mapOr=function(t,n){return\"Error\"===this.tag?t:n(this.value)},n.match=function(t){return\"Ok\"===this.tag?t.Ok(this.value):t.Error(this.error)},n.tap=function(t){return t(this),this},n.tapOk=function(t){return\"Ok\"===this.tag&&t(this.value),this},n.tapError=function(t){return\"Error\"===this.tag&&t(this.error),this},n.toOption=function(){return\"Ok\"===this.tag?p.Some(this.value):v},n.isOk=function(){return\"Ok\"===this.tag},n.isError=function(){return\"Error\"===this.tag},n.toJSON=function(){return this.match({Ok:function(t){var n;return(n={})[a]=\"Result\",n.tag=\"Ok\",n.value=t,n},Error:function(t){var n;return(n={})[a]=\"Result\",n.tag=\"Error\",n.error=t,n}})},t}();O.P={Ok:function(t){return{tag:\"Ok\",value:t}},Error:function(t){return{tag:\"Error\",error:t}}},O.Ok=function(t){var n=m.get(t);if(null==n){var r=Object.create(_);return r.tag=\"Ok\",r.value=t,Object.freeze(r),m.set(t,r),r}return n},O.Error=function(t){var n=g.get(t);if(null==n){var r=Object.create(_);return r.tag=\"Error\",r.error=t,Object.freeze(r),g.set(t,r),r}return n},O.isResult=function(t){return null!=t&&\"Result\"===t.__boxed_type__},O.fromExecution=function(t){try{return k.Ok(t())}catch(t){return k.Error(t)}},O.fromPromise=function(t){try{return Promise.resolve(function(n,r){try{var e=Promise.resolve(t).then(function(t){return k.Ok(t)})}catch(t){return r(t)}return e&&e.then?e.then(void 0,r):e}(0,function(t){return k.Error(t)}))}catch(t){return Promise.reject(t)}},O.fromOption=function(t,n){return t.toResult(n)},O.all=function(t){for(var n,r=t.length,e=k.Ok([]),u=0,o=function(){if(u>=r)return{v:e};var n=t[u];null!=n&&(e=e.flatMap(function(t){return n.map(function(n){return t.push(n),t})})),u++};;)if(n=o())return n.v},O.allFromDict=function(r){var e=t(r);return k.all(n(r)).map(function(t){return Object.fromEntries(c(e,t))})},O.equals=function(t,n,r){return t.tag===n.tag&&(!(!t.isError()||!n.isError())||!(!t.isOk()||!n.isOk())&&r(t.get(),n.get()))},O.fromJSON=function(t){return\"Ok\"===t.tag?k.Ok(t.value):k.Error(t.error)},O.prototype.__boxed_type__=\"Result\";var _=O.prototype,k=O,d=function(t,n){return t===n?0:t>n?1:-1},y={__proto__:null,from:Array.from,of:Array.of,isArray:Array.isArray,findMap:function(t,n){for(var r=-1;++r<t.length;){var e=n(t[r]);if(e.isSome())return e}return p.None()},filterMap:function(t,n){var r=[];return t.forEach(function(t){var e=n(t);e.isSome()&&r.push(e.get())}),r},find:function(t,n){for(var r=-1;++r<t.length;){var e=t[r];if(n(e))return p.Some(e)}return p.None()},findIndex:function(t,n){for(var r=-1;++r<t.length;)if(n(t[r]))return p.Some(r);return p.None()},binarySearchBy:function(t,n,r){if(void 0===r&&(r=d),0===t.length)return-1;for(var e=0,u=t.length-1;;){var o=e+(u-e)/2|0;if(o===e||o===u)return u;var i=r(n,t[o]);if(0===i)return o;i>0?e=o:i<0&&(u=o)}},unzip:function(t){for(var n=t.length,r=Array(n),e=Array(n),u=-1;++u<n;){var o=t[u];void 0!==o&&(r[u]=o[0],e[u]=o[1])}return[r,e]},zip:c},E=i(),b=/*#__PURE__*/function(){function t(){}var n=t.prototype;return n.map=function(t){return this===j||this===D?this:R.Done(t(this.value))},n.flatMap=function(t){return this===j||this===D?this:t(this.value)},n.mapOkToResult=function(t){return this.map(function(n){return n.match({Ok:function(n){return t(n)},Error:function(){return n}})})},n.mapErrorToResult=function(t){return this.map(function(n){return n.match({Error:function(n){return t(n)},Ok:function(){return n}})})},n.mapOk=function(t){return this.map(function(n){return n.match({Ok:function(n){return k.Ok(t(n))},Error:function(){return n}})})},n.mapError=function(t){return this.map(function(n){return n.match({Ok:function(){return n},Error:function(n){return k.Error(t(n))}})})},n.flatMapOk=function(t){return this.flatMap(function(n){return n.match({Ok:function(n){return t(n)},Error:function(){return R.Done(n)}})})},n.flatMapError=function(t){return this.flatMap(function(n){return n.match({Ok:function(){return R.Done(n)},Error:function(n){return t(n)}})})},n.get=function(){return this.value},n.getWithDefault=function(t){return this===j||this===D?t:this.value},n.getOr=function(t){return this===j||this===D?t:this.value},n.mapOr=function(t,n){return this===j||this===D?t:n(this.value)},n.match=function(t){return this===j?t.NotAsked():this===D?t.Loading():t.Done(this.value)},n.tap=function(t){return t(this),this},n.toOption=function(){return this===j||this===D?p.None():p.Some(this.value)},n.isDone=function(){return this!==j&&this!==D},n.isLoading=function(){return this===D},n.isNotAsked=function(){return this===j},n.toJSON=function(){return this.match({NotAsked:function(){var t;return(t={})[a]=\"AsyncData\",t.tag=\"NotAsked\",t},Loading:function(){var t;return(t={})[a]=\"AsyncData\",t.tag=\"Loading\",t},Done:function(t){var n;return(n={})[a]=\"AsyncData\",n.tag=\"Done\",n.value=t,n}})},t}();b.P={Done:function(t){return{tag:\"Done\",value:t}},NotAsked:{tag:\"NotAsked\"},Loading:{tag:\"Loading\"}},b.Done=function(t){var n=E.get(t);if(null==n){var r=Object.create(N);return r.tag=\"Done\",r.value=t,Object.freeze(r),E.set(t,r),r}return n},b.Loading=function(){return D},b.NotAsked=function(){return j},b.all=function(t){for(var n,r=t.length,e=R.Done([]),u=0,o=function(){if(u>=r)return{v:e};var n=t[u];null!=n&&(e=e.flatMap(function(t){return n.map(function(n){return t.push(n),t})})),u++};;)if(n=o())return n.v},b.allFromDict=function(r){var e=t(r);return R.all(n(r)).map(function(t){return Object.fromEntries(c(e,t))})},b.equals=function(t,n,r){return\"Done\"===t.tag&&\"Done\"===n.tag?r(t.value,n.value):t.tag===n.tag},b.isAsyncData=function(t){return null!=t&&\"AsyncData\"===t.__boxed_type__},b.fromJSON=function(t){return\"NotAsked\"===t.tag?R.NotAsked():\"Loading\"===t.tag?R.Loading():R.Done(t.value)},b.prototype.__boxed_type__=\"AsyncData\";var S,N=b.prototype,D=((S=Object.create(N)).tag=\"Loading\",Object.freeze(S),S),j=function(){var t=Object.create(N);return t.tag=\"NotAsked\",Object.freeze(t),t}(),R=b,A=/*#__PURE__*/function(){function t(){this._state=void 0,this._state={tag:\"Pending\"}}t.fromPromise=function(t){return P.make(function(n){t.then(function(t){return n(k.Ok(t))},function(t){return n(k.Error(t))})})};var n=t.prototype;return n.onResolve=function(t){var n;\"Pending\"===this._state.tag?(this._state.resolveCallbacks=null!=(n=this._state.resolveCallbacks)?n:[],this._state.resolveCallbacks.push(t)):\"Resolved\"===this._state.tag&&t(this._state.value)},n.onCancel=function(t){var n;\"Pending\"===this._state.tag?(this._state.cancelCallbacks=null!=(n=this._state.cancelCallbacks)?n:[],this._state.cancelCallbacks.push(t)):\"Cancelled\"===this._state.tag&&t()},n.cancel=function(){if(\"Pending\"===this._state.tag){var t=this._state,n=t.cancel,r=t.cancelCallbacks;this._state={tag:\"Cancelled\"},null!=n&&n(),null==r||r.forEach(function(t){return t()})}},n.map=function(t,n){var r=this;void 0===n&&(n=!1);var e=P.make(function(e){if(r.onResolve(function(n){e(t(n))}),n)return function(){r.cancel()}});return this.onCancel(function(){e.cancel()}),e},n.then=function(t){return this.onResolve(t),this},n.flatMap=function(t,n){var r=this;void 0===n&&(n=!1);var e=P.make(function(u){if(r.onResolve(function(n){var r=t(n);r.onResolve(u),r.onCancel(function(){return e.cancel()})}),n)return function(){r.cancel()}});return this.onCancel(function(){e.cancel()}),e},n.tap=function(t){return this.onResolve(t),this},n.tapOk=function(t){return this.onResolve(function(n){n.match({Ok:function(n){return t(n)},Error:function(){}})}),this},n.tapError=function(t){return this.onResolve(function(n){n.match({Ok:function(){},Error:function(n){return t(n)}})}),this},n.mapOkToResult=function(t,n){return void 0===n&&(n=!1),this.map(function(n){return n.match({Ok:function(n){return t(n)},Error:function(){return n}})},n)},n.mapErrorToResult=function(t,n){return void 0===n&&(n=!1),this.map(function(n){return n.match({Error:function(n){return t(n)},Ok:function(){return n}})},n)},n.mapOk=function(t,n){return void 0===n&&(n=!1),this.map(function(n){return n.match({Ok:function(n){return k.Ok(t(n))},Error:function(){return n}})},n)},n.mapError=function(t,n){return void 0===n&&(n=!1),this.map(function(n){return n.match({Ok:function(){return n},Error:function(n){return k.Error(t(n))}})},n)},n.flatMapOk=function(t,n){return void 0===n&&(n=!1),this.flatMap(function(n){return n.match({Ok:function(n){return t(n)},Error:function(){return P.value(n)}})},n)},n.flatMapError=function(t,n){return void 0===n&&(n=!1),this.flatMap(function(n){return n.match({Ok:function(){return P.value(n)},Error:function(n){return t(n)}})},n)},n.toPromise=function(){var t=this;return new Promise(function(n){t.onResolve(n)})},n.resultToPromise=function(){var t=this;return new Promise(function(n,r){t.onResolve(function(t){t.match({Ok:n,Error:r})})})},t}();A.make=function(t){var n=Object.create(M);return n._state={tag:\"Pending\"},n._state.cancel=t(function(t){if(\"Pending\"===n._state.tag){var r=n._state.resolveCallbacks;n._state={tag:\"Resolved\",value:t},null==r||r.forEach(function(n){return n(t)})}}),n},A.isFuture=function(t){return null!=t&&Object.prototype.isPrototypeOf.call(M,t)},A.value=function(t){var n=Object.create(M);return n._state={tag:\"Resolved\",value:t},n},A.all=function(t,n){void 0===n&&(n=!1);for(var r,e=t.length,u=P.value([]),o=0,i=function(){if(o>=e)return{v:u};var r=t[o];null!=r&&(u=u.flatMap(function(t){return r.map(function(n){return t.push(n),t},n)},n)),o++};;)if(r=i())return r.v},A.allFromDict=function(r){var e=t(r);return P.all(n(r)).map(function(t){return Object.fromEntries(c(e,t))})},A.wait=function(t){return P.make(function(n){var r=setTimeout(function(){return n()},t);return function(){return clearTimeout(r)}})},A.retry=function(t,n){var r=n.max;return function n(e){return t(e).flatMapError(function(t){return e+1<r?n(e+1):P.value(k.Error(t))})}(0)},A.concurrent=function(t,n){var r=n.concurrency;return P.make(function(n){var e=Array(t.length),u=r-1,o=0;0!==t.length?t.slice(0,r).forEach(function r(i,a){return i().tap(function(i){if(e[a]=i,++o<t.length){var c=t[++u];null!=c&&r(c,u)}else n(e)})}):n([])})};var M=Object.create(null,Object.getOwnPropertyDescriptors(A.prototype)),P=A,x={make:function(){var t;return[P.make(function(n){t=n}),t]}},C=Symbol(\"NOT_COMPUTED\");function z(){return z=Object.assign?Object.assign.bind():function(t){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var e in r)Object.prototype.hasOwnProperty.call(r,e)&&(t[e]=r[e])}return t},z.apply(this,arguments)}var J={__proto__:null,encode:function(t,n){return JSON.stringify(t,function(t,n){return null==n?n:\"string\"==typeof n[a]?z({},n,{__boxed_type__:n[a]}):n},n)},decode:function(t){return JSON.parse(t,function(t,n){return null==n?n:\"Option\"===n.__boxed_type__?p.fromJSON(n):\"Result\"===n.__boxed_type__?k.fromJSON(n):\"AsyncData\"===n.__boxed_type__?R.fromJSON(n):n})}};exports.Array=y,exports.AsyncData=R,exports.Deferred=x,exports.Dict=e,exports.Future=P,exports.Lazy=function(t){var n={contents:C};return{get:function(){return n.contents===C&&(n.contents=t()),n.contents}}},exports.Option=p,exports.Result=k,exports.Serializer=J;\n//# sourceMappingURL=Boxed.js.map\n","/**\n * Injection token for AMQP client module options\n * Used by NestJS DI system to inject configuration into AmqpClientService\n */\nexport const MODULE_OPTIONS_TOKEN = Symbol(\"AMQP_CLIENT_MODULE_OPTIONS\");\n","import type { AmqpConnectionManagerOptions, ConnectionUrl } from \"amqp-connection-manager\";\nimport {\n type ClientInferPublisherInput,\n MessageValidationError,\n TechnicalError,\n TypedAmqpClient,\n} from \"@amqp-contract/client\";\nimport type { ContractDefinition, InferPublisherNames } from \"@amqp-contract/contract\";\nimport { Future, Result } from \"@swan-io/boxed\";\nimport { Inject, Injectable, type OnModuleDestroy, type OnModuleInit } from \"@nestjs/common\";\nimport { MODULE_OPTIONS_TOKEN } from \"./client.module-definition.js\";\nimport type { Options } from \"amqplib\";\n\n/**\n * Configuration options for the AMQP client NestJS module.\n *\n * @typeParam TContract - The contract definition type\n *\n * @example\n * ```typescript\n * const options: AmqpClientModuleOptions<typeof contract> = {\n * contract: myContract,\n * urls: ['amqp://localhost'],\n * connectionOptions: {\n * heartbeatIntervalInSeconds: 30\n * }\n * };\n * ```\n */\nexport type AmqpClientModuleOptions<TContract extends ContractDefinition> = {\n /** The AMQP contract definition specifying publishers and their message schemas */\n contract: TContract;\n /** AMQP broker URL(s). Multiple URLs provide failover support */\n urls: ConnectionUrl[];\n /** Optional connection configuration (heartbeat, reconnect settings, etc.) */\n connectionOptions?: AmqpConnectionManagerOptions | undefined;\n};\n\n/**\n * Type-safe AMQP client service for NestJS applications.\n *\n * This service wraps {@link TypedAmqpClient} and integrates it with the NestJS\n * lifecycle, automatically initializing the connection on module init and\n * cleaning up resources on module destroy.\n *\n * @typeParam TContract - The contract definition type\n *\n * @example\n * ```typescript\n * // In your module\n * import { AmqpClientModule } from '@amqp-contract/client-nestjs';\n *\n * @Module({\n * imports: [\n * AmqpClientModule.forRoot({\n * contract: myContract,\n * urls: ['amqp://localhost']\n * })\n * ]\n * })\n * export class AppModule {}\n *\n * // In your service\n * import { AmqpClientService } from '@amqp-contract/client-nestjs';\n *\n * @Injectable()\n * export class OrderService {\n * constructor(\n * private readonly amqpClient: AmqpClientService<typeof myContract>\n * ) {}\n *\n * async createOrder(order: Order) {\n * const result = await this.amqpClient.publish('orderCreated', {\n * orderId: order.id,\n * amount: order.total\n * }).resultToPromise();\n *\n * if (result.isError()) {\n * throw new Error('Failed to publish order event');\n * }\n * }\n * }\n * ```\n */\n@Injectable()\nexport class AmqpClientService<TContract extends ContractDefinition>\n implements OnModuleInit, OnModuleDestroy\n{\n private client: TypedAmqpClient<TContract> | null = null;\n\n constructor(\n @Inject(MODULE_OPTIONS_TOKEN)\n private readonly options: AmqpClientModuleOptions<TContract>,\n ) {}\n\n /**\n * Initialize the AMQP client when the NestJS module starts.\n *\n * This lifecycle hook automatically creates and initializes the client\n * when the NestJS application starts up. The connection will be established\n * in the background with automatic reconnection handling.\n */\n async onModuleInit(): Promise<void> {\n const clientResult = await TypedAmqpClient.create(this.options);\n if (clientResult.isError()) {\n throw new Error(`Failed to create AMQP client: ${clientResult.error.message}`);\n }\n this.client = clientResult.get();\n }\n\n /**\n * Close the AMQP client when the NestJS module is destroyed.\n *\n * This lifecycle hook ensures proper cleanup of resources when the\n * NestJS application shuts down, gracefully closing the connection\n * and cleaning up all consumers.\n */\n async onModuleDestroy(): Promise<void> {\n if (this.client) {\n await this.client.close().resultToPromise();\n this.client = null;\n }\n }\n\n /**\n * Publish a message using a contract-defined publisher.\n *\n * This method provides type-safe message publishing with automatic validation\n * and explicit error handling through the Result type.\n *\n * @param publisherName - The name of the publisher from the contract\n * @param message - The message payload (type-checked against the contract)\n * @param options - Optional AMQP publish options (e.g., persistence, headers)\n * @returns A Future that resolves to a Result indicating success or failure\n *\n * @example\n * ```typescript\n * const result = await this.amqpClient.publish('orderCreated', {\n * orderId: '123',\n * amount: 99.99\n * }).resultToPromise();\n *\n * if (result.isError()) {\n * console.error('Publish failed:', result.error);\n * }\n * ```\n */\n publish<TName extends InferPublisherNames<TContract>>(\n publisherName: TName,\n message: ClientInferPublisherInput<TContract, TName>,\n options?: Options.Publish,\n ): Future<Result<void, TechnicalError | MessageValidationError>> {\n if (!this.client) {\n return Future.value(\n Result.Error(\n new TechnicalError(\n \"Client not initialized. Ensure the module has been initialized before publishing.\",\n ),\n ),\n );\n }\n\n return this.client.publish(publisherName, message, options);\n }\n}\n","import { type AmqpClientModuleOptions, AmqpClientService } from \"./client.service.js\";\nimport {\n type DynamicModule,\n Module,\n type ModuleMetadata,\n type Provider,\n type Type,\n} from \"@nestjs/common\";\nimport type { ContractDefinition } from \"@amqp-contract/contract\";\nimport { MODULE_OPTIONS_TOKEN } from \"./client.module-definition.js\";\n\n/**\n * Factory function return type for async module configuration\n */\ntype AmqpClientModuleOptionsFactory<TContract extends ContractDefinition> =\n | AmqpClientModuleOptions<TContract>\n | Promise<AmqpClientModuleOptions<TContract>>;\n\n/**\n * Options for async module configuration using factory pattern\n */\nexport type AmqpClientModuleAsyncOptions<TContract extends ContractDefinition> = {\n /**\n * Factory function that returns the module options.\n * Can use injected dependencies to create configuration.\n */\n // oxlint-disable-next-line no-explicit-any\n useFactory: (...args: any[]) => AmqpClientModuleOptionsFactory<TContract>;\n /**\n * Optional dependencies to inject into the factory function.\n * Can be a token (string/symbol) or a class reference to a provider.\n */\n inject?: (string | symbol | Type<unknown>)[];\n /**\n * Optional list of imported modules that export providers needed by the factory\n */\n imports?: ModuleMetadata[\"imports\"];\n};\n\n/**\n * NestJS module for AMQP client integration\n * This module provides type-safe AMQP client functionality using @amqp-contract/client\n * without relying on NestJS decorators (except for dependency injection)\n *\n * @typeParam TContract - The contract definition type for type-safe publishing\n *\n * @example\n * ```typescript\n * // Synchronous configuration\n * @Module({\n * imports: [\n * AmqpClientModule.forRoot({\n * contract: myContract,\n * urls: ['amqp://localhost']\n * })\n * ]\n * })\n * export class AppModule {}\n *\n * // Asynchronous configuration\n * @Module({\n * imports: [\n * AmqpClientModule.forRootAsync({\n * imports: [ConfigModule],\n * useFactory: (configService: ConfigService) => ({\n * contract: myContract,\n * urls: configService.get('AMQP_URLS')\n * }),\n * inject: [ConfigService]\n * })\n * ]\n * })\n * export class AppModule {}\n *\n * // Using the client in a service\n * @Injectable()\n * export class OrderService {\n * constructor(\n * private readonly amqpClient: AmqpClientService<typeof myContract>\n * ) {}\n *\n * async createOrder(order: Order) {\n * // publish is fully typed based on the contract\n * await this.amqpClient.publish('orderCreated', {\n * orderId: order.id,\n * amount: order.total\n * }).resultToPromise();\n * }\n * }\n * ```\n */\n@Module({})\nexport class AmqpClientModule {\n /**\n * Register the AMQP client module with synchronous configuration\n *\n * @param options - The client configuration options with contract\n * @returns A dynamic module for NestJS\n */\n static forRoot<TContract extends ContractDefinition>(\n options: AmqpClientModuleOptions<TContract>,\n ): DynamicModule {\n return {\n module: AmqpClientModule,\n providers: [\n {\n provide: MODULE_OPTIONS_TOKEN,\n useValue: options,\n },\n AmqpClientService,\n ],\n exports: [AmqpClientService],\n };\n }\n\n /**\n * Register the AMQP client module with asynchronous configuration\n *\n * @param options - Async configuration options with factory function\n * @returns A dynamic module for NestJS\n */\n static forRootAsync<TContract extends ContractDefinition>(\n options: AmqpClientModuleAsyncOptions<TContract>,\n ): DynamicModule {\n const providers: Provider[] = [\n {\n provide: MODULE_OPTIONS_TOKEN,\n useFactory: options.useFactory,\n inject: options.inject || [],\n },\n AmqpClientService,\n ];\n\n return {\n module: AmqpClientModule,\n imports: options.imports || [],\n providers,\n exports: [AmqpClientService],\n };\n }\n}\n"],"x_google_ignoreList":[0],"mappings":";;;;;;;;;CAAA,IAAI,IAAE,SAAS,GAAE;AAAC,SAAO,OAAO,KAAK,EAAE;IAAE,IAAE,SAAS,GAAE;AAAC,SAAO,OAAO,OAAO,EAAE;IAAE,IAAE,OAAO,UAAU,gBAAe,IAAE;EAAC,WAAU;EAAK,aAAY,OAAO;EAAY,SAAQ,SAAS,GAAE;AAAC,UAAO,OAAO,QAAQ,EAAE;;EAAE,MAAK;EAAE,QAAO;EAAE,cAAa,SAAS,GAAE;GAAC,IAAI,IAAE,EAAE;AAAC,QAAI,IAAI,KAAK,EAAE,KAAG,EAAE,KAAK,GAAE,EAAE,EAAC;IAAC,IAAI,IAAE,EAAE;AAAG,QAAG,KAAK,MAAI,EAAE;AAAS,MAAE,QAAQ,KAAG,EAAE,KAAG,EAAE,KAAK;;AAAE,UAAO;;EAAG,EAAC,oBAAE,IAAI,SAAO,EAAC,IAAE,cAAY,OAAO,UAAQ,UAAqB,2BAAU;EAAC,SAAS,EAAE,KAAE;AAAC,KAAE,IAAI,MAAKA,IAAE;;AAAC,SAAO,EAAE,UAAU,QAAM,WAAU;AAAC,UAAO,EAAE,IAAI,KAAK;KAAE;IAAI,EAAC,IAAE,WAAU;EAAC,IAAI,oBAAE,IAAI,KAAG,EAAC,IAAE,cAAY,OAAO,uBAAqB,IAAI,qBAAqB,SAAS,KAAE;AAAC,KAAE,OAAOC,IAAE;IAAE,GAAC,KAAK;AAAE,SAAM;GAAC,KAAI,SAAS,GAAE,GAAE;AAAC,MAAE,IAAI,GAAE,IAAI,EAAE,EAAE,CAAC,EAAC,KAAK,MAAI,KAAG,EAAE,SAAS,GAAE,EAAE;;GAAE,KAAI,SAAS,KAAE;IAAC,IAAI,IAAE,EAAE,IAAIA,IAAE;AAAC,QAAG,KAAK,MAAI,EAAE,QAAO,EAAE,OAAO;;GAAE;IAAE,IAAE,OAAO,IAAI,iBAAiB,EAAC,IAAE,SAAS,GAAE,GAAE;AAAC,OAAI,IAAI,IAAE,KAAK,IAAI,EAAE,QAAO,EAAE,OAAO,EAAC,IAAE,MAAM,EAAE,EAAC,IAAE,IAAG,EAAE,IAAE,GAAG,GAAE,KAAG,CAAC,EAAE,IAAG,EAAE,GAAG;AAAC,SAAO;IAAG,IAAE,GAAG,EAAC,IAAe,2BAAU;EAAC,SAAS,IAAG;AAAE,IAAE,gBAAc,SAAS,KAAE,KAAE;AAAC,UAAOA,IAAED,IAAE,GAAC,EAAE,KAAKA,IAAE,GAAC;;EAAG,IAAI,IAAE,EAAE;AAAU,SAAO,EAAE,MAAI,SAAS,KAAE;AAAC,UAAO,SAAO,IAAE,OAAK,EAAE,KAAKA,IAAE,KAAK,MAAM,CAAC;KAAE,EAAE,UAAQ,SAAS,KAAE;AAAC,UAAO,SAAO,IAAE,OAAKA,IAAE,KAAK,MAAM;KAAE,EAAE,SAAO,SAAS,KAAE;AAAC,UAAO,SAAO,KAAGA,IAAE,KAAK,MAAM,GAAC,OAAK;KAAG,EAAE,MAAI,WAAU;AAAC,UAAO,KAAK;KAAO,EAAE,iBAAe,SAAS,KAAE;AAAC,UAAO,SAAO,IAAEA,MAAE,KAAK;KAAO,EAAE,QAAM,SAAS,KAAE;AAAC,UAAO,SAAO,IAAEA,MAAE,KAAK;KAAO,EAAE,SAAO,SAAS,KAAE;AAAC,UAAO,SAAO,IAAEA,MAAE;KAAM,EAAE,QAAM,SAAS,KAAE,KAAE;AAAC,UAAO,SAAO,IAAEA,MAAEC,IAAE,KAAK,MAAM;KAAE,EAAE,QAAM,SAAS,KAAE;AAAC,UAAO,SAAO,IAAED,IAAE,MAAM,GAACA,IAAE,KAAK,KAAK,MAAM;KAAE,EAAE,MAAI,SAAS,KAAE;AAAC,UAAOA,IAAE,KAAK,EAAC;KAAM,EAAE,UAAQ,SAAS,KAAE;AAAC,UAAO,SAAO,KAAGA,IAAE,KAAK,MAAM,EAAC;KAAM,EAAE,cAAY,WAAU;AAAC,OAAG,SAAO,EAAE,QAAO,KAAK;KAAO,EAAE,SAAO,WAAU;AAAC,UAAO,SAAO,IAAE,OAAK,KAAK;KAAO,EAAE,WAAS,SAAS,KAAE;AAAC,UAAO,KAAK,MAAM;IAAC,MAAK,SAAS,KAAE;AAAC,YAAO,EAAE,GAAGA,IAAE;;IAAE,MAAK,WAAU;AAAC,YAAO,EAAE,MAAMA,IAAE;;IAAE,CAAC;KAAE,EAAE,SAAO,WAAU;AAAC,UAAO,SAAO;KAAG,EAAE,SAAO,WAAU;AAAC,UAAO,SAAO;KAAG,EAAE,SAAO,WAAU;AAAC,UAAO,KAAK,MAAM;IAAC,MAAK,WAAU;KAAC,IAAIA;AAAE,YAAM,CAAC,MAAE,EAAE,EAAE,KAAG,UAAS,IAAE,MAAI,QAAOA;;IAAG,MAAK,SAAS,KAAE;KAAC,IAAIC;AAAE,YAAM,CAAC,MAAE,EAAE,EAAE,KAAG,UAAS,IAAE,MAAI,QAAO,IAAE,QAAMD,KAAEC;;IAAG,CAAC;KAAE;IAAI;AAAC,GAAE,IAAE;EAAC,MAAK,SAAS,GAAE;AAAC,UAAM;IAAC,KAAI;IAAO,OAAM;IAAE;;EAAE,MAAK,EAAC,KAAI,QAAO;EAAC,EAAC,EAAE,OAAK,SAAS,GAAE;EAAC,IAAI,IAAE,EAAE,IAAI,EAAE;AAAC,MAAG,QAAM,GAAE;GAAC,IAAI,IAAE,OAAO,OAAO,EAAE;AAAC,UAAO,EAAE,MAAI,QAAO,EAAE,QAAM,GAAE,OAAO,OAAO,EAAE,EAAC,EAAE,IAAI,GAAE,EAAE,EAAC;;AAAE,SAAO;IAAG,EAAE,OAAK,WAAU;AAAC,SAAO;IAAG,EAAE,WAAS,SAAS,GAAE;AAAC,SAAO,QAAM,KAAG,aAAW,EAAE;IAAgB,EAAE,eAAa,SAAS,GAAE;AAAC,SAAO,QAAM,IAAE,IAAE,EAAE,KAAK,EAAE;IAAE,EAAE,WAAS,SAAS,GAAE;AAAC,SAAO,SAAO,IAAE,IAAE,EAAE,KAAK,EAAE;IAAE,EAAE,gBAAc,SAAS,GAAE;AAAC,SAAO,KAAK,MAAI,IAAE,IAAE,EAAE,KAAK,EAAE;IAAE,EAAE,MAAI,SAAS,GAAE;AAAC,OAAI,IAAI,GAAE,IAAE,EAAE,QAAO,IAAE,EAAE,KAAK,EAAE,CAAC,EAAC,IAAE,GAAE,IAAE,WAAU;AAAC,OAAG,KAAG,EAAE,QAAM,EAAC,GAAE,GAAE;GAAC,IAAIA,MAAE,EAAE;AAAG,WAAMA,QAAI,IAAE,EAAE,QAAQ,SAAS,KAAE;AAAC,WAAOA,IAAE,IAAI,SAAS,KAAE;AAAC,YAAOD,IAAE,KAAKC,IAAE,EAACD;MAAG;KAAE,GAAE;MAAO,KAAG,IAAE,GAAG,CAAC,QAAO,EAAE;IAAG,EAAE,cAAY,SAAS,GAAE;EAAC,IAAI,IAAE,EAAE,EAAE;AAAC,SAAO,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,SAAS,GAAE;AAAC,UAAO,OAAO,YAAY,EAAE,GAAE,EAAE,CAAC;IAAE;IAAE,EAAE,SAAO,SAAS,GAAE,GAAE,GAAE;AAAC,SAAO,EAAE,QAAQ,IAAE,EAAE,QAAQ,GAAC,EAAE,EAAE,KAAK,EAAC,EAAE,KAAK,CAAC,GAAC,EAAE,QAAM,EAAE;IAAK,EAAE,WAAS,SAAS,GAAE;AAAC,SAAM,WAAS,EAAE,MAAI,EAAE,MAAM,GAAC,EAAE,KAAK,EAAE,MAAM;IAAE,EAAE,UAAU,iBAAe;CAAS,IAAI,GAAE,IAAE,EAAE,WAAU,KAAG,CAAC,IAAE,OAAO,OAAO,EAAE,EAAE,MAAI,QAAO,OAAO,OAAO,EAAE,EAAC,IAAG,IAAE,GAAE,IAAE,GAAG,EAAC,IAAE,GAAG,EAAC,IAAe,2BAAU;EAAC,SAAS,IAAG;EAAE,IAAI,IAAE,EAAE;AAAU,SAAO,EAAE,MAAI,SAAS,KAAE;AAAC,UAAM,SAAO,KAAK,MAAI,EAAE,GAAGA,IAAE,KAAK,MAAM,CAAC,GAAC;KAAM,EAAE,WAAS,SAAS,KAAE;AAAC,UAAM,SAAO,KAAK,MAAI,OAAK,EAAE,MAAMA,IAAE,KAAK,MAAM,CAAC;KAAE,EAAE,UAAQ,SAAS,KAAE;AAAC,UAAM,SAAO,KAAK,MAAIA,IAAE,KAAK,MAAM,GAAC;KAAM,EAAE,eAAa,SAAS,KAAE;AAAC,UAAM,SAAO,KAAK,MAAI,OAAKA,IAAE,KAAK,MAAM;KAAE,EAAE,MAAI,WAAU;AAAC,UAAO,KAAK;KAAO,EAAE,WAAS,WAAU;AAAC,UAAO,KAAK;KAAO,EAAE,iBAAe,SAAS,KAAE;AAAC,UAAM,SAAO,KAAK,MAAI,KAAK,QAAMA;KAAG,EAAE,QAAM,SAAS,KAAE;AAAC,UAAM,SAAO,KAAK,MAAI,KAAK,QAAMA;KAAG,EAAE,QAAM,SAAS,KAAE,KAAE;AAAC,UAAM,YAAU,KAAK,MAAIA,MAAEC,IAAE,KAAK,MAAM;KAAE,EAAE,QAAM,SAAS,KAAE;AAAC,UAAM,SAAO,KAAK,MAAID,IAAE,GAAG,KAAK,MAAM,GAACA,IAAE,MAAM,KAAK,MAAM;KAAE,EAAE,MAAI,SAAS,KAAE;AAAC,UAAOA,IAAE,KAAK,EAAC;KAAM,EAAE,QAAM,SAAS,KAAE;AAAC,UAAM,SAAO,KAAK,OAAKA,IAAE,KAAK,MAAM,EAAC;KAAM,EAAE,WAAS,SAAS,KAAE;AAAC,UAAM,YAAU,KAAK,OAAKA,IAAE,KAAK,MAAM,EAAC;KAAM,EAAE,WAAS,WAAU;AAAC,UAAM,SAAO,KAAK,MAAI,EAAE,KAAK,KAAK,MAAM,GAAC;KAAG,EAAE,OAAK,WAAU;AAAC,UAAM,SAAO,KAAK;KAAK,EAAE,UAAQ,WAAU;AAAC,UAAM,YAAU,KAAK;KAAK,EAAE,SAAO,WAAU;AAAC,UAAO,KAAK,MAAM;IAAC,IAAG,SAAS,KAAE;KAAC,IAAIC;AAAE,YAAM,CAAC,MAAE,EAAE,EAAE,KAAG,UAAS,IAAE,MAAI,MAAK,IAAE,QAAMD,KAAEC;;IAAG,OAAM,SAAS,KAAE;KAAC,IAAIA;AAAE,YAAM,CAAC,MAAE,EAAE,EAAE,KAAG,UAAS,IAAE,MAAI,SAAQ,IAAE,QAAMD,KAAEC;;IAAG,CAAC;KAAE;IAAI;AAAC,GAAE,IAAE;EAAC,IAAG,SAAS,GAAE;AAAC,UAAM;IAAC,KAAI;IAAK,OAAM;IAAE;;EAAE,OAAM,SAAS,GAAE;AAAC,UAAM;IAAC,KAAI;IAAQ,OAAM;IAAE;;EAAE,EAAC,EAAE,KAAG,SAAS,GAAE;EAAC,IAAI,IAAE,EAAE,IAAI,EAAE;AAAC,MAAG,QAAM,GAAE;GAAC,IAAI,IAAE,OAAO,OAAO,EAAE;AAAC,UAAO,EAAE,MAAI,MAAK,EAAE,QAAM,GAAE,OAAO,OAAO,EAAE,EAAC,EAAE,IAAI,GAAE,EAAE,EAAC;;AAAE,SAAO;IAAG,EAAE,QAAM,SAAS,GAAE;EAAC,IAAI,IAAE,EAAE,IAAI,EAAE;AAAC,MAAG,QAAM,GAAE;GAAC,IAAI,IAAE,OAAO,OAAO,EAAE;AAAC,UAAO,EAAE,MAAI,SAAQ,EAAE,QAAM,GAAE,OAAO,OAAO,EAAE,EAAC,EAAE,IAAI,GAAE,EAAE,EAAC;;AAAE,SAAO;IAAG,EAAE,WAAS,SAAS,GAAE;AAAC,SAAO,QAAM,KAAG,aAAW,EAAE;IAAgB,EAAE,gBAAc,SAAS,GAAE;AAAC,MAAG;AAAC,UAAO,EAAE,GAAG,GAAG,CAAC;WAAOD,KAAE;AAAC,UAAO,EAAE,MAAMA,IAAE;;IAAG,EAAE,cAAY,SAAS,GAAE;AAAC,MAAG;AAAC,UAAO,QAAQ,QAAQ,SAAS,GAAE,GAAE;AAAC,QAAG;KAAC,IAAI,IAAE,QAAQ,QAAQ,EAAE,CAAC,KAAK,SAAS,KAAE;AAAC,aAAO,EAAE,GAAGA,IAAE;OAAE;aAAOA,KAAE;AAAC,YAAO,EAAEA,IAAE;;AAAC,WAAO,KAAG,EAAE,OAAK,EAAE,KAAK,KAAK,GAAE,EAAE,GAAC;KAAG,GAAE,SAAS,KAAE;AAAC,WAAO,EAAE,MAAMA,IAAE;KAAE,CAAC;WAAOA,KAAE;AAAC,UAAO,QAAQ,OAAOA,IAAE;;IAAG,EAAE,aAAW,SAAS,GAAE,GAAE;AAAC,SAAO,EAAE,SAAS,EAAE;IAAE,EAAE,MAAI,SAAS,GAAE;AAAC,OAAI,IAAI,GAAE,IAAE,EAAE,QAAO,IAAE,EAAE,GAAG,EAAE,CAAC,EAAC,IAAE,GAAE,IAAE,WAAU;AAAC,OAAG,KAAG,EAAE,QAAM,EAAC,GAAE,GAAE;GAAC,IAAIC,MAAE,EAAE;AAAG,WAAMA,QAAI,IAAE,EAAE,QAAQ,SAAS,KAAE;AAAC,WAAOA,IAAE,IAAI,SAAS,KAAE;AAAC,YAAOD,IAAE,KAAKC,IAAE,EAACD;MAAG;KAAE,GAAE;MAAO,KAAG,IAAE,GAAG,CAAC,QAAO,EAAE;IAAG,EAAE,cAAY,SAAS,GAAE;EAAC,IAAI,IAAE,EAAE,EAAE;AAAC,SAAO,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,SAAS,GAAE;AAAC,UAAO,OAAO,YAAY,EAAE,GAAE,EAAE,CAAC;IAAE;IAAE,EAAE,SAAO,SAAS,GAAE,GAAE,GAAE;AAAC,SAAO,EAAE,QAAM,EAAE,QAAM,EAAE,CAAC,EAAE,SAAS,IAAE,CAAC,EAAE,SAAS,KAAG,EAAE,CAAC,EAAE,MAAM,IAAE,CAAC,EAAE,MAAM,KAAG,EAAE,EAAE,KAAK,EAAC,EAAE,KAAK,CAAC;IAAG,EAAE,WAAS,SAAS,GAAE;AAAC,SAAM,SAAO,EAAE,MAAI,EAAE,GAAG,EAAE,MAAM,GAAC,EAAE,MAAM,EAAE,MAAM;IAAE,EAAE,UAAU,iBAAe;CAAS,IAAI,IAAE,EAAE,WAAU,IAAE,GAAE,IAAE,SAAS,GAAE,GAAE;AAAC,SAAO,MAAI,IAAE,IAAE,IAAE,IAAE,IAAE;IAAI,IAAE;EAAC,WAAU;EAAK,MAAK,MAAM;EAAK,IAAG,MAAM;EAAG,SAAQ,MAAM;EAAQ,SAAQ,SAAS,GAAE,GAAE;AAAC,QAAI,IAAI,IAAE,IAAG,EAAE,IAAE,EAAE,SAAQ;IAAC,IAAI,IAAE,EAAE,EAAE,GAAG;AAAC,QAAG,EAAE,QAAQ,CAAC,QAAO;;AAAE,UAAO,EAAE,MAAM;;EAAE,WAAU,SAAS,GAAE,GAAE;GAAC,IAAI,IAAE,EAAE;AAAC,UAAO,EAAE,QAAQ,SAAS,KAAE;IAAC,IAAI,IAAE,EAAEA,IAAE;AAAC,MAAE,QAAQ,IAAE,EAAE,KAAK,EAAE,KAAK,CAAC;KAAE,EAAC;;EAAG,MAAK,SAAS,GAAE,GAAE;AAAC,QAAI,IAAI,IAAE,IAAG,EAAE,IAAE,EAAE,SAAQ;IAAC,IAAI,IAAE,EAAE;AAAG,QAAG,EAAE,EAAE,CAAC,QAAO,EAAE,KAAK,EAAE;;AAAC,UAAO,EAAE,MAAM;;EAAE,WAAU,SAAS,GAAE,GAAE;AAAC,QAAI,IAAI,IAAE,IAAG,EAAE,IAAE,EAAE,QAAQ,KAAG,EAAE,EAAE,GAAG,CAAC,QAAO,EAAE,KAAK,EAAE;AAAC,UAAO,EAAE,MAAM;;EAAE,gBAAe,SAAS,GAAE,GAAE,GAAE;AAAC,OAAG,KAAK,MAAI,MAAI,IAAE,IAAG,MAAI,EAAE,OAAO,QAAM;AAAG,QAAI,IAAI,IAAE,GAAE,IAAE,EAAE,SAAO,KAAI;IAAC,IAAI,IAAE,KAAG,IAAE,KAAG,IAAE;AAAE,QAAG,MAAI,KAAG,MAAI,EAAE,QAAO;IAAE,IAAI,IAAE,EAAE,GAAE,EAAE,GAAG;AAAC,QAAG,MAAI,EAAE,QAAO;AAAE,QAAE,IAAE,IAAE,IAAE,IAAE,MAAI,IAAE;;;EAAK,OAAM,SAAS,GAAE;AAAC,QAAI,IAAI,IAAE,EAAE,QAAO,IAAE,MAAM,EAAE,EAAC,IAAE,MAAM,EAAE,EAAC,IAAE,IAAG,EAAE,IAAE,IAAG;IAAC,IAAI,IAAE,EAAE;AAAG,SAAK,MAAI,MAAI,EAAE,KAAG,EAAE,IAAG,EAAE,KAAG,EAAE;;AAAI,UAAM,CAAC,GAAE,EAAE;;EAAE,KAAI;EAAE,EAAC,IAAE,GAAG,EAAC,IAAe,2BAAU;EAAC,SAAS,IAAG;EAAE,IAAI,IAAE,EAAE;AAAU,SAAO,EAAE,MAAI,SAAS,KAAE;AAAC,UAAO,SAAO,KAAG,SAAO,IAAE,OAAK,EAAE,KAAKA,IAAE,KAAK,MAAM,CAAC;KAAE,EAAE,UAAQ,SAAS,KAAE;AAAC,UAAO,SAAO,KAAG,SAAO,IAAE,OAAKA,IAAE,KAAK,MAAM;KAAE,EAAE,gBAAc,SAAS,KAAE;AAAC,UAAO,KAAK,IAAI,SAAS,KAAE;AAAC,WAAOC,IAAE,MAAM;KAAC,IAAG,SAAS,KAAE;AAAC,aAAOD,IAAEC,IAAE;;KAAE,OAAM,WAAU;AAAC,aAAOA;;KAAG,CAAC;KAAE;KAAE,EAAE,mBAAiB,SAAS,KAAE;AAAC,UAAO,KAAK,IAAI,SAAS,KAAE;AAAC,WAAOA,IAAE,MAAM;KAAC,OAAM,SAAS,KAAE;AAAC,aAAOD,IAAEC,IAAE;;KAAE,IAAG,WAAU;AAAC,aAAOA;;KAAG,CAAC;KAAE;KAAE,EAAE,QAAM,SAAS,KAAE;AAAC,UAAO,KAAK,IAAI,SAAS,KAAE;AAAC,WAAOA,IAAE,MAAM;KAAC,IAAG,SAAS,KAAE;AAAC,aAAO,EAAE,GAAGD,IAAEC,IAAE,CAAC;;KAAE,OAAM,WAAU;AAAC,aAAOA;;KAAG,CAAC;KAAE;KAAE,EAAE,WAAS,SAAS,KAAE;AAAC,UAAO,KAAK,IAAI,SAAS,KAAE;AAAC,WAAOA,IAAE,MAAM;KAAC,IAAG,WAAU;AAAC,aAAOA;;KAAG,OAAM,SAAS,KAAE;AAAC,aAAO,EAAE,MAAMD,IAAEC,IAAE,CAAC;;KAAE,CAAC;KAAE;KAAE,EAAE,YAAU,SAAS,KAAE;AAAC,UAAO,KAAK,QAAQ,SAAS,KAAE;AAAC,WAAOA,IAAE,MAAM;KAAC,IAAG,SAAS,KAAE;AAAC,aAAOD,IAAEC,IAAE;;KAAE,OAAM,WAAU;AAAC,aAAO,EAAE,KAAKA,IAAE;;KAAE,CAAC;KAAE;KAAE,EAAE,eAAa,SAAS,KAAE;AAAC,UAAO,KAAK,QAAQ,SAAS,KAAE;AAAC,WAAOA,IAAE,MAAM;KAAC,IAAG,WAAU;AAAC,aAAO,EAAE,KAAKA,IAAE;;KAAE,OAAM,SAAS,KAAE;AAAC,aAAOD,IAAEC,IAAE;;KAAE,CAAC;KAAE;KAAE,EAAE,MAAI,WAAU;AAAC,UAAO,KAAK;KAAO,EAAE,iBAAe,SAAS,KAAE;AAAC,UAAO,SAAO,KAAG,SAAO,IAAED,MAAE,KAAK;KAAO,EAAE,QAAM,SAAS,KAAE;AAAC,UAAO,SAAO,KAAG,SAAO,IAAEA,MAAE,KAAK;KAAO,EAAE,QAAM,SAAS,KAAE,KAAE;AAAC,UAAO,SAAO,KAAG,SAAO,IAAEA,MAAEC,IAAE,KAAK,MAAM;KAAE,EAAE,QAAM,SAAS,KAAE;AAAC,UAAO,SAAO,IAAED,IAAE,UAAU,GAAC,SAAO,IAAEA,IAAE,SAAS,GAACA,IAAE,KAAK,KAAK,MAAM;KAAE,EAAE,MAAI,SAAS,KAAE;AAAC,UAAOA,IAAE,KAAK,EAAC;KAAM,EAAE,WAAS,WAAU;AAAC,UAAO,SAAO,KAAG,SAAO,IAAE,EAAE,MAAM,GAAC,EAAE,KAAK,KAAK,MAAM;KAAE,EAAE,SAAO,WAAU;AAAC,UAAO,SAAO,KAAG,SAAO;KAAG,EAAE,YAAU,WAAU;AAAC,UAAO,SAAO;KAAG,EAAE,aAAW,WAAU;AAAC,UAAO,SAAO;KAAG,EAAE,SAAO,WAAU;AAAC,UAAO,KAAK,MAAM;IAAC,UAAS,WAAU;KAAC,IAAIA;AAAE,YAAM,CAAC,MAAE,EAAE,EAAE,KAAG,aAAY,IAAE,MAAI,YAAWA;;IAAG,SAAQ,WAAU;KAAC,IAAIA;AAAE,YAAM,CAAC,MAAE,EAAE,EAAE,KAAG,aAAY,IAAE,MAAI,WAAUA;;IAAG,MAAK,SAAS,KAAE;KAAC,IAAIC;AAAE,YAAM,CAAC,MAAE,EAAE,EAAE,KAAG,aAAY,IAAE,MAAI,QAAO,IAAE,QAAMD,KAAEC;;IAAG,CAAC;KAAE;IAAI;AAAC,GAAE,IAAE;EAAC,MAAK,SAAS,GAAE;AAAC,UAAM;IAAC,KAAI;IAAO,OAAM;IAAE;;EAAE,UAAS,EAAC,KAAI,YAAW;EAAC,SAAQ,EAAC,KAAI,WAAU;EAAC,EAAC,EAAE,OAAK,SAAS,GAAE;EAAC,IAAI,IAAE,EAAE,IAAI,EAAE;AAAC,MAAG,QAAM,GAAE;GAAC,IAAI,IAAE,OAAO,OAAO,EAAE;AAAC,UAAO,EAAE,MAAI,QAAO,EAAE,QAAM,GAAE,OAAO,OAAO,EAAE,EAAC,EAAE,IAAI,GAAE,EAAE,EAAC;;AAAE,SAAO;IAAG,EAAE,UAAQ,WAAU;AAAC,SAAO;IAAG,EAAE,WAAS,WAAU;AAAC,SAAO;IAAG,EAAE,MAAI,SAAS,GAAE;AAAC,OAAI,IAAI,GAAE,IAAE,EAAE,QAAO,IAAE,EAAE,KAAK,EAAE,CAAC,EAAC,IAAE,GAAE,IAAE,WAAU;AAAC,OAAG,KAAG,EAAE,QAAM,EAAC,GAAE,GAAE;GAAC,IAAIA,MAAE,EAAE;AAAG,WAAMA,QAAI,IAAE,EAAE,QAAQ,SAAS,KAAE;AAAC,WAAOA,IAAE,IAAI,SAAS,KAAE;AAAC,YAAOD,IAAE,KAAKC,IAAE,EAACD;MAAG;KAAE,GAAE;MAAO,KAAG,IAAE,GAAG,CAAC,QAAO,EAAE;IAAG,EAAE,cAAY,SAAS,GAAE;EAAC,IAAI,IAAE,EAAE,EAAE;AAAC,SAAO,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,SAAS,GAAE;AAAC,UAAO,OAAO,YAAY,EAAE,GAAE,EAAE,CAAC;IAAE;IAAE,EAAE,SAAO,SAAS,GAAE,GAAE,GAAE;AAAC,SAAM,WAAS,EAAE,OAAK,WAAS,EAAE,MAAI,EAAE,EAAE,OAAM,EAAE,MAAM,GAAC,EAAE,QAAM,EAAE;IAAK,EAAE,cAAY,SAAS,GAAE;AAAC,SAAO,QAAM,KAAG,gBAAc,EAAE;IAAgB,EAAE,WAAS,SAAS,GAAE;AAAC,SAAM,eAAa,EAAE,MAAI,EAAE,UAAU,GAAC,cAAY,EAAE,MAAI,EAAE,SAAS,GAAC,EAAE,KAAK,EAAE,MAAM;IAAE,EAAE,UAAU,iBAAe;CAAY,IAAI,GAAE,IAAE,EAAE,WAAU,KAAG,CAAC,IAAE,OAAO,OAAO,EAAE,EAAE,MAAI,WAAU,OAAO,OAAO,EAAE,EAAC,IAAG,IAAE,WAAU;EAAC,IAAI,IAAE,OAAO,OAAO,EAAE;AAAC,SAAO,EAAE,MAAI,YAAW,OAAO,OAAO,EAAE,EAAC;IAAI,EAAC,IAAE,GAAE,IAAe,2BAAU;EAAC,SAAS,IAAG;AAAC,QAAK,SAAO,KAAK,GAAE,KAAK,SAAO,EAAC,KAAI,WAAU;;AAAC,IAAE,cAAY,SAAS,KAAE;AAAC,UAAO,EAAE,KAAK,SAAS,KAAE;AAAC,QAAE,KAAK,SAAS,KAAE;AAAC,YAAOC,IAAE,EAAE,GAAGD,IAAE,CAAC;OAAE,SAAS,KAAE;AAAC,YAAOC,IAAE,EAAE,MAAMD,IAAE,CAAC;MAAE;KAAE;;EAAE,IAAI,IAAE,EAAE;AAAU,SAAO,EAAE,YAAU,SAAS,KAAE;GAAC,IAAIC;AAAE,iBAAY,KAAK,OAAO,OAAK,KAAK,OAAO,mBAAiB,SAAO,MAAE,KAAK,OAAO,oBAAkBA,MAAE,EAAE,EAAC,KAAK,OAAO,iBAAiB,KAAKD,IAAE,IAAE,eAAa,KAAK,OAAO,OAAKA,IAAE,KAAK,OAAO,MAAM;KAAE,EAAE,WAAS,SAAS,KAAE;GAAC,IAAIC;AAAE,iBAAY,KAAK,OAAO,OAAK,KAAK,OAAO,kBAAgB,SAAO,MAAE,KAAK,OAAO,mBAAiBA,MAAE,EAAE,EAAC,KAAK,OAAO,gBAAgB,KAAKD,IAAE,IAAE,gBAAc,KAAK,OAAO,OAAKA,KAAG;KAAE,EAAE,SAAO,WAAU;AAAC,OAAG,cAAY,KAAK,OAAO,KAAI;IAAC,IAAIA,MAAE,KAAK,QAAOC,MAAED,IAAE,QAAO,IAAEA,IAAE;AAAgB,SAAK,SAAO,EAAC,KAAI,aAAY,EAAOC,OAAM,EAAO,GAAK,QAAQ,SAAS,KAAE;AAAC,YAAOD,KAAG;MAAE;;KAAG,EAAE,MAAI,SAAS,KAAE,KAAE;GAAC,IAAI,IAAE;AAAK,QAAK,MAAIC,QAAI,MAAE,CAAC;GAAG,IAAI,IAAE,EAAE,KAAK,SAAS,KAAE;AAAC,QAAG,EAAE,UAAU,SAAS,KAAE;AAAC,SAAED,IAAEC,IAAE,CAAC;MAAE,EAACA,IAAE,QAAO,WAAU;AAAC,OAAE,QAAQ;;KAAG;AAAC,UAAO,KAAK,SAAS,WAAU;AAAC,MAAE,QAAQ;KAAE,EAAC;KAAG,EAAE,OAAK,SAAS,KAAE;AAAC,UAAO,KAAK,UAAUD,IAAE,EAAC;KAAM,EAAE,UAAQ,SAAS,KAAE,KAAE;GAAC,IAAI,IAAE;AAAK,QAAK,MAAIC,QAAI,MAAE,CAAC;GAAG,IAAI,IAAE,EAAE,KAAK,SAAS,GAAE;AAAC,QAAG,EAAE,UAAU,SAAS,KAAE;KAAC,IAAIC,MAAEF,IAAEC,IAAE;AAAC,SAAE,UAAU,EAAE,EAACC,IAAE,SAAS,WAAU;AAAC,aAAO,EAAE,QAAQ;OAAE;MAAE,EAACD,IAAE,QAAO,WAAU;AAAC,OAAE,QAAQ;;KAAG;AAAC,UAAO,KAAK,SAAS,WAAU;AAAC,MAAE,QAAQ;KAAE,EAAC;KAAG,EAAE,MAAI,SAAS,KAAE;AAAC,UAAO,KAAK,UAAUD,IAAE,EAAC;KAAM,EAAE,QAAM,SAAS,KAAE;AAAC,UAAO,KAAK,UAAU,SAAS,KAAE;AAAC,QAAE,MAAM;KAAC,IAAG,SAAS,KAAE;AAAC,aAAOA,IAAEC,IAAE;;KAAE,OAAM,WAAU;KAAG,CAAC;KAAE,EAAC;KAAM,EAAE,WAAS,SAAS,KAAE;AAAC,UAAO,KAAK,UAAU,SAAS,KAAE;AAAC,QAAE,MAAM;KAAC,IAAG,WAAU;KAAG,OAAM,SAAS,KAAE;AAAC,aAAOD,IAAEC,IAAE;;KAAE,CAAC;KAAE,EAAC;KAAM,EAAE,gBAAc,SAAS,KAAE,KAAE;AAAC,UAAO,KAAK,MAAIA,QAAI,MAAE,CAAC,IAAG,KAAK,IAAI,SAAS,KAAE;AAAC,WAAOA,IAAE,MAAM;KAAC,IAAG,SAAS,KAAE;AAAC,aAAOD,IAAEC,IAAE;;KAAE,OAAM,WAAU;AAAC,aAAOA;;KAAG,CAAC;MAAEA,IAAE;KAAE,EAAE,mBAAiB,SAAS,KAAE,KAAE;AAAC,UAAO,KAAK,MAAIA,QAAI,MAAE,CAAC,IAAG,KAAK,IAAI,SAAS,KAAE;AAAC,WAAOA,IAAE,MAAM;KAAC,OAAM,SAAS,KAAE;AAAC,aAAOD,IAAEC,IAAE;;KAAE,IAAG,WAAU;AAAC,aAAOA;;KAAG,CAAC;MAAEA,IAAE;KAAE,EAAE,QAAM,SAAS,KAAE,KAAE;AAAC,UAAO,KAAK,MAAIA,QAAI,MAAE,CAAC,IAAG,KAAK,IAAI,SAAS,KAAE;AAAC,WAAOA,IAAE,MAAM;KAAC,IAAG,SAAS,KAAE;AAAC,aAAO,EAAE,GAAGD,IAAEC,IAAE,CAAC;;KAAE,OAAM,WAAU;AAAC,aAAOA;;KAAG,CAAC;MAAEA,IAAE;KAAE,EAAE,WAAS,SAAS,KAAE,KAAE;AAAC,UAAO,KAAK,MAAIA,QAAI,MAAE,CAAC,IAAG,KAAK,IAAI,SAAS,KAAE;AAAC,WAAOA,IAAE,MAAM;KAAC,IAAG,WAAU;AAAC,aAAOA;;KAAG,OAAM,SAAS,KAAE;AAAC,aAAO,EAAE,MAAMD,IAAEC,IAAE,CAAC;;KAAE,CAAC;MAAEA,IAAE;KAAE,EAAE,YAAU,SAAS,KAAE,KAAE;AAAC,UAAO,KAAK,MAAIA,QAAI,MAAE,CAAC,IAAG,KAAK,QAAQ,SAAS,KAAE;AAAC,WAAOA,IAAE,MAAM;KAAC,IAAG,SAAS,KAAE;AAAC,aAAOD,IAAEC,IAAE;;KAAE,OAAM,WAAU;AAAC,aAAO,EAAE,MAAMA,IAAE;;KAAE,CAAC;MAAEA,IAAE;KAAE,EAAE,eAAa,SAAS,KAAE,KAAE;AAAC,UAAO,KAAK,MAAIA,QAAI,MAAE,CAAC,IAAG,KAAK,QAAQ,SAAS,KAAE;AAAC,WAAOA,IAAE,MAAM;KAAC,IAAG,WAAU;AAAC,aAAO,EAAE,MAAMA,IAAE;;KAAE,OAAM,SAAS,KAAE;AAAC,aAAOD,IAAEC,IAAE;;KAAE,CAAC;MAAEA,IAAE;KAAE,EAAE,YAAU,WAAU;GAAC,IAAID,MAAE;AAAK,UAAO,IAAI,QAAQ,SAAS,KAAE;AAAC,QAAE,UAAUC,IAAE;KAAE;KAAE,EAAE,kBAAgB,WAAU;GAAC,IAAID,MAAE;AAAK,UAAO,IAAI,QAAQ,SAAS,KAAE,GAAE;AAAC,QAAE,UAAU,SAAS,KAAE;AAAC,SAAE,MAAM;MAAC,IAAGC;MAAE,OAAM;MAAE,CAAC;MAAE;KAAE;KAAE;IAAI;AAAC,GAAE,OAAK,SAAS,GAAE;EAAC,IAAI,IAAE,OAAO,OAAO,EAAE;AAAC,SAAO,EAAE,SAAO,EAAC,KAAI,WAAU,EAAC,EAAE,OAAO,SAAO,EAAE,SAAS,KAAE;AAAC,OAAG,cAAY,EAAE,OAAO,KAAI;IAAC,IAAI,IAAE,EAAE,OAAO;AAAiB,MAAE,SAAO;KAAC,KAAI;KAAW,OAAMD;KAAE,EAAO,GAAK,QAAQ,SAAS,KAAE;AAAC,YAAOC,IAAED,IAAE;MAAE;;IAAG,EAAC;IAAG,EAAE,WAAS,SAAS,GAAE;AAAC,SAAO,QAAM,KAAG,OAAO,UAAU,cAAc,KAAK,GAAE,EAAE;IAAE,EAAE,QAAM,SAAS,GAAE;EAAC,IAAI,IAAE,OAAO,OAAO,EAAE;AAAC,SAAO,EAAE,SAAO;GAAC,KAAI;GAAW,OAAM;GAAE,EAAC;IAAG,EAAE,MAAI,SAAS,GAAE,GAAE;AAAC,OAAK,MAAI,MAAI,IAAE,CAAC;AAAG,OAAI,IAAI,GAAE,IAAE,EAAE,QAAO,IAAE,EAAE,MAAM,EAAE,CAAC,EAAC,IAAE,GAAE,IAAE,WAAU;AAAC,OAAG,KAAG,EAAE,QAAM,EAAC,GAAE,GAAE;GAAC,IAAIE,MAAE,EAAE;AAAG,WAAMA,QAAI,IAAE,EAAE,QAAQ,SAAS,KAAE;AAAC,WAAOA,IAAE,IAAI,SAAS,KAAE;AAAC,YAAOF,IAAE,KAAKC,IAAE,EAACD;OAAG,EAAE;MAAE,EAAE,GAAE;MAAO,KAAG,IAAE,GAAG,CAAC,QAAO,EAAE;IAAG,EAAE,cAAY,SAAS,GAAE;EAAC,IAAI,IAAE,EAAE,EAAE;AAAC,SAAO,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,SAAS,GAAE;AAAC,UAAO,OAAO,YAAY,EAAE,GAAE,EAAE,CAAC;IAAE;IAAE,EAAE,OAAK,SAAS,GAAE;AAAC,SAAO,EAAE,KAAK,SAAS,GAAE;GAAC,IAAI,IAAE,WAAW,WAAU;AAAC,WAAO,GAAG;MAAE,EAAE;AAAC,UAAO,WAAU;AAAC,WAAO,aAAa,EAAE;;IAAG;IAAE,EAAE,QAAM,SAAS,GAAE,GAAE;EAAC,IAAI,IAAE,EAAE;AAAI,SAAO,SAASC,IAAE,GAAE;AAAC,UAAO,EAAE,EAAE,CAAC,aAAa,SAAS,KAAE;AAAC,WAAO,IAAE,IAAE,IAAEA,IAAE,IAAE,EAAE,GAAC,EAAE,MAAM,EAAE,MAAMD,IAAE,CAAC;KAAE;IAAE,EAAE;IAAE,EAAE,aAAW,SAAS,GAAE,GAAE;EAAC,IAAI,IAAE,EAAE;AAAY,SAAO,EAAE,KAAK,SAAS,KAAE;GAAC,IAAI,IAAE,MAAM,EAAE,OAAO,EAAC,IAAE,IAAE,GAAE,IAAE;AAAE,SAAI,EAAE,SAAO,EAAE,MAAM,GAAE,EAAE,CAAC,QAAQ,SAASE,IAAE,GAAE,GAAE;AAAC,WAAO,GAAG,CAAC,IAAI,SAAS,KAAE;AAAC,SAAG,EAAE,KAAGC,KAAE,EAAE,IAAE,EAAE,QAAO;MAAC,IAAI,IAAE,EAAE,EAAE;AAAG,cAAM,KAAGD,IAAE,GAAE,EAAE;WAAM,KAAE,EAAE;MAAE;KAAE,GAACD,IAAE,EAAE,CAAC;IAAE;;CAAE,IAAI,IAAE,OAAO,OAAO,MAAK,OAAO,0BAA0B,EAAE,UAAU,CAAC,EAAC,IAAE,GAAE,IAAE,EAAC,MAAK,WAAU;EAAC,IAAI;AAAE,SAAM,CAAC,EAAE,KAAK,SAAS,GAAE;AAAC,OAAE;IAAG,EAAC,EAAE;IAAE,EAAC,IAAE,OAAO,eAAe;CAAC,SAAS,IAAG;AAAC,SAAO,IAAE,OAAO,SAAO,OAAO,OAAO,MAAM,GAAC,SAAS,GAAE;AAAC,QAAI,IAAI,IAAE,GAAE,IAAE,UAAU,QAAO,KAAI;IAAC,IAAI,IAAE,UAAU;AAAG,SAAI,IAAI,KAAK,EAAE,QAAO,UAAU,eAAe,KAAK,GAAE,EAAE,KAAG,EAAE,KAAG,EAAE;;AAAI,UAAO;KAAG,EAAE,MAAM,MAAK,UAAU;;CAAC,IAAI,IAAE;EAAC,WAAU;EAAK,QAAO,SAAS,GAAE,GAAE;AAAC,UAAO,KAAK,UAAU,GAAE,SAAS,KAAE,KAAE;AAAC,WAAO,QAAMA,MAAEA,MAAE,YAAU,OAAOA,IAAE,KAAG,EAAE,EAAE,EAACA,KAAE,EAAC,gBAAeA,IAAE,IAAG,CAAC,GAACA;MAAG,EAAE;;EAAE,QAAO,SAAS,GAAE;AAAC,UAAO,KAAK,MAAM,GAAE,SAAS,KAAE,GAAE;AAAC,WAAO,QAAM,IAAE,IAAE,aAAW,EAAE,iBAAe,EAAE,SAAS,EAAE,GAAC,aAAW,EAAE,iBAAe,EAAE,SAAS,EAAE,GAAC,gBAAc,EAAE,iBAAe,EAAE,SAAS,EAAE,GAAC;KAAG;;EAAE;AAAC,SAAQ,QAAM,GAAE,QAAQ,YAAU,GAAE,QAAQ,WAAS,GAAE,QAAQ,OAAK,GAAE,QAAQ,SAAO,GAAE,QAAQ,OAAK,SAAS,GAAE;EAAC,IAAI,IAAE,EAAC,UAAS,GAAE;AAAC,SAAM,EAAC,KAAI,WAAU;AAAC,UAAO,EAAE,aAAW,MAAI,EAAE,WAAS,GAAG,GAAE,EAAE;KAAU;IAAE,QAAQ,SAAO,GAAE,QAAQ,SAAO,GAAE,QAAQ,aAAW;;;;;;;;;;ACI74c;;;;;;;;;;;;;;;;;;;;;;;;;;;ACiFO,8BAAMG,oBAEb;CACE,AAAQ,SAA4C;CAEpD,YACE,AACiBC,SACjB;EADiB;;;;;;;;;CAUnB,MAAM,eAA8B;EAClC,MAAM,eAAe,MAAM,gBAAgB,OAAO,KAAK,QAAQ;AAC/D,MAAI,aAAa,SAAS,CACxB,OAAM,IAAI,MAAM,iCAAiC,aAAa,MAAM,UAAU;AAEhF,OAAK,SAAS,aAAa,KAAK;;;;;;;;;CAUlC,MAAM,kBAAiC;AACrC,MAAI,KAAK,QAAQ;AACf,SAAM,KAAK,OAAO,OAAO,CAAC,iBAAiB;AAC3C,QAAK,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BlB,QACE,eACA,SACA,SAC+D;AAC/D,MAAI,CAAC,KAAK,OACR,QAAOC,oBAAO,MACZC,oBAAO,MACL,IAAI,eACF,oFACD,CACF,CACF;AAGH,SAAO,KAAK,OAAO,QAAQ,eAAe,SAAS,QAAQ;;;;CA9E9D,YAAY;oBAOR,OAAO,qBAAqB;;;;;;;ACC1B,iDAAMC,mBAAiB;;;;;;;CAO5B,OAAO,QACL,SACe;AACf,SAAO;GACL;GACA,WAAW,CACT;IACE,SAAS;IACT,UAAU;IACX,EACD,kBACD;GACD,SAAS,CAAC,kBAAkB;GAC7B;;;;;;;;CASH,OAAO,aACL,SACe;EACf,MAAMC,YAAwB,CAC5B;GACE,SAAS;GACT,YAAY,QAAQ;GACpB,QAAQ,QAAQ,UAAU,EAAE;GAC7B,EACD,kBACD;AAED,SAAO;GACL;GACA,SAAS,QAAQ,WAAW,EAAE;GAC9B;GACA,SAAS,CAAC,kBAAkB;GAC7B;;;mDA/CJ,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"index.mjs","names":["t","n","r","i","AmqpClientService","options: AmqpClientModuleOptions<TContract>","Future","Result","AmqpClientModule","providers: Provider[]"],"sources":["../../../node_modules/.pnpm/@swan-io+boxed@3.2.1_typescript@5.9.3/node_modules/@swan-io/boxed/dist/Boxed.js","../src/client.module-definition.ts","../src/client.service.ts","../src/client.module.ts"],"sourcesContent":["var t=function(t){return Object.keys(t)},n=function(t){return Object.values(t)},r=Object.prototype.hasOwnProperty,e={__proto__:null,fromEntries:Object.fromEntries,entries:function(t){return Object.entries(t)},keys:t,values:n,fromOptional:function(t){var n={};for(var e in t)if(r.call(t,e)){var u=t[e];if(void 0===u)continue;u.isSome()&&(n[e]=u.get())}return n}},u=new WeakMap,o=\"function\"==typeof WeakRef?WeakRef:/*#__PURE__*/function(){function t(t){u.set(this,t)}return t.prototype.deref=function(){return u.get(this)},t}(),i=function(){var t=new Map,n=\"function\"==typeof FinalizationRegistry?new FinalizationRegistry(function(n){t.delete(n)}):void 0;return{set:function(r,e){t.set(r,new o(e)),void 0!==n&&n.register(e,r)},get:function(n){var r=t.get(n);if(void 0!==r)return r.deref()}}},a=Symbol.for(\"__boxed_type__\"),c=function(t,n){for(var r=Math.min(t.length,n.length),e=Array(r),u=-1;++u<r;)e[u]=[t[u],n[u]];return e},f=i(),s=/*#__PURE__*/function(){function t(){}t.fromPredicate=function(t,n){return n(t)?p.Some(t):v};var n=t.prototype;return n.map=function(t){return this===v?this:p.Some(t(this.value))},n.flatMap=function(t){return this===v?this:t(this.value)},n.filter=function(t){return this===v||t(this.value)?this:v},n.get=function(){return this.value},n.getWithDefault=function(t){return this===v?t:this.value},n.getOr=function(t){return this===v?t:this.value},n.orElse=function(t){return this===v?t:this},n.mapOr=function(t,n){return this===v?t:n(this.value)},n.match=function(t){return this===v?t.None():t.Some(this.value)},n.tap=function(t){return t(this),this},n.tapSome=function(t){return this===v||t(this.value),this},n.toUndefined=function(){if(this!==v)return this.value},n.toNull=function(){return this===v?null:this.value},n.toResult=function(t){return this.match({Some:function(t){return k.Ok(t)},None:function(){return k.Error(t)}})},n.isSome=function(){return this!==v},n.isNone=function(){return this===v},n.toJSON=function(){return this.match({None:function(){var t;return(t={})[a]=\"Option\",t.tag=\"None\",t},Some:function(t){var n;return(n={})[a]=\"Option\",n.tag=\"Some\",n.value=t,n}})},t}();s.P={Some:function(t){return{tag:\"Some\",value:t}},None:{tag:\"None\"}},s.Some=function(t){var n=f.get(t);if(null==n){var r=Object.create(h);return r.tag=\"Some\",r.value=t,Object.freeze(r),f.set(t,r),r}return n},s.None=function(){return v},s.isOption=function(t){return null!=t&&\"Option\"===t.__boxed_type__},s.fromNullable=function(t){return null==t?v:p.Some(t)},s.fromNull=function(t){return null===t?v:p.Some(t)},s.fromUndefined=function(t){return void 0===t?v:p.Some(t)},s.all=function(t){for(var n,r=t.length,e=p.Some([]),u=0,o=function(){if(u>=r)return{v:e};var n=t[u];null!=n&&(e=e.flatMap(function(t){return n.map(function(n){return t.push(n),t})})),u++};;)if(n=o())return n.v},s.allFromDict=function(r){var e=t(r);return p.all(n(r)).map(function(t){return Object.fromEntries(c(e,t))})},s.equals=function(t,n,r){return t.isSome()&&n.isSome()?r(t.get(),n.get()):t.tag===n.tag},s.fromJSON=function(t){return\"None\"===t.tag?p.None():p.Some(t.value)},s.prototype.__boxed_type__=\"Option\";var l,h=s.prototype,v=((l=Object.create(h)).tag=\"None\",Object.freeze(l),l),p=s,m=i(),g=i(),O=/*#__PURE__*/function(){function t(){}var n=t.prototype;return n.map=function(t){return\"Ok\"===this.tag?k.Ok(t(this.value)):this},n.mapError=function(t){return\"Ok\"===this.tag?this:k.Error(t(this.error))},n.flatMap=function(t){return\"Ok\"===this.tag?t(this.value):this},n.flatMapError=function(t){return\"Ok\"===this.tag?this:t(this.error)},n.get=function(){return this.value},n.getError=function(){return this.error},n.getWithDefault=function(t){return\"Ok\"===this.tag?this.value:t},n.getOr=function(t){return\"Ok\"===this.tag?this.value:t},n.mapOr=function(t,n){return\"Error\"===this.tag?t:n(this.value)},n.match=function(t){return\"Ok\"===this.tag?t.Ok(this.value):t.Error(this.error)},n.tap=function(t){return t(this),this},n.tapOk=function(t){return\"Ok\"===this.tag&&t(this.value),this},n.tapError=function(t){return\"Error\"===this.tag&&t(this.error),this},n.toOption=function(){return\"Ok\"===this.tag?p.Some(this.value):v},n.isOk=function(){return\"Ok\"===this.tag},n.isError=function(){return\"Error\"===this.tag},n.toJSON=function(){return this.match({Ok:function(t){var n;return(n={})[a]=\"Result\",n.tag=\"Ok\",n.value=t,n},Error:function(t){var n;return(n={})[a]=\"Result\",n.tag=\"Error\",n.error=t,n}})},t}();O.P={Ok:function(t){return{tag:\"Ok\",value:t}},Error:function(t){return{tag:\"Error\",error:t}}},O.Ok=function(t){var n=m.get(t);if(null==n){var r=Object.create(_);return r.tag=\"Ok\",r.value=t,Object.freeze(r),m.set(t,r),r}return n},O.Error=function(t){var n=g.get(t);if(null==n){var r=Object.create(_);return r.tag=\"Error\",r.error=t,Object.freeze(r),g.set(t,r),r}return n},O.isResult=function(t){return null!=t&&\"Result\"===t.__boxed_type__},O.fromExecution=function(t){try{return k.Ok(t())}catch(t){return k.Error(t)}},O.fromPromise=function(t){try{return Promise.resolve(function(n,r){try{var e=Promise.resolve(t).then(function(t){return k.Ok(t)})}catch(t){return r(t)}return e&&e.then?e.then(void 0,r):e}(0,function(t){return k.Error(t)}))}catch(t){return Promise.reject(t)}},O.fromOption=function(t,n){return t.toResult(n)},O.all=function(t){for(var n,r=t.length,e=k.Ok([]),u=0,o=function(){if(u>=r)return{v:e};var n=t[u];null!=n&&(e=e.flatMap(function(t){return n.map(function(n){return t.push(n),t})})),u++};;)if(n=o())return n.v},O.allFromDict=function(r){var e=t(r);return k.all(n(r)).map(function(t){return Object.fromEntries(c(e,t))})},O.equals=function(t,n,r){return t.tag===n.tag&&(!(!t.isError()||!n.isError())||!(!t.isOk()||!n.isOk())&&r(t.get(),n.get()))},O.fromJSON=function(t){return\"Ok\"===t.tag?k.Ok(t.value):k.Error(t.error)},O.prototype.__boxed_type__=\"Result\";var _=O.prototype,k=O,d=function(t,n){return t===n?0:t>n?1:-1},y={__proto__:null,from:Array.from,of:Array.of,isArray:Array.isArray,findMap:function(t,n){for(var r=-1;++r<t.length;){var e=n(t[r]);if(e.isSome())return e}return p.None()},filterMap:function(t,n){var r=[];return t.forEach(function(t){var e=n(t);e.isSome()&&r.push(e.get())}),r},find:function(t,n){for(var r=-1;++r<t.length;){var e=t[r];if(n(e))return p.Some(e)}return p.None()},findIndex:function(t,n){for(var r=-1;++r<t.length;)if(n(t[r]))return p.Some(r);return p.None()},binarySearchBy:function(t,n,r){if(void 0===r&&(r=d),0===t.length)return-1;for(var e=0,u=t.length-1;;){var o=e+(u-e)/2|0;if(o===e||o===u)return u;var i=r(n,t[o]);if(0===i)return o;i>0?e=o:i<0&&(u=o)}},unzip:function(t){for(var n=t.length,r=Array(n),e=Array(n),u=-1;++u<n;){var o=t[u];void 0!==o&&(r[u]=o[0],e[u]=o[1])}return[r,e]},zip:c},E=i(),b=/*#__PURE__*/function(){function t(){}var n=t.prototype;return n.map=function(t){return this===j||this===D?this:R.Done(t(this.value))},n.flatMap=function(t){return this===j||this===D?this:t(this.value)},n.mapOkToResult=function(t){return this.map(function(n){return n.match({Ok:function(n){return t(n)},Error:function(){return n}})})},n.mapErrorToResult=function(t){return this.map(function(n){return n.match({Error:function(n){return t(n)},Ok:function(){return n}})})},n.mapOk=function(t){return this.map(function(n){return n.match({Ok:function(n){return k.Ok(t(n))},Error:function(){return n}})})},n.mapError=function(t){return this.map(function(n){return n.match({Ok:function(){return n},Error:function(n){return k.Error(t(n))}})})},n.flatMapOk=function(t){return this.flatMap(function(n){return n.match({Ok:function(n){return t(n)},Error:function(){return R.Done(n)}})})},n.flatMapError=function(t){return this.flatMap(function(n){return n.match({Ok:function(){return R.Done(n)},Error:function(n){return t(n)}})})},n.get=function(){return this.value},n.getWithDefault=function(t){return this===j||this===D?t:this.value},n.getOr=function(t){return this===j||this===D?t:this.value},n.mapOr=function(t,n){return this===j||this===D?t:n(this.value)},n.match=function(t){return this===j?t.NotAsked():this===D?t.Loading():t.Done(this.value)},n.tap=function(t){return t(this),this},n.toOption=function(){return this===j||this===D?p.None():p.Some(this.value)},n.isDone=function(){return this!==j&&this!==D},n.isLoading=function(){return this===D},n.isNotAsked=function(){return this===j},n.toJSON=function(){return this.match({NotAsked:function(){var t;return(t={})[a]=\"AsyncData\",t.tag=\"NotAsked\",t},Loading:function(){var t;return(t={})[a]=\"AsyncData\",t.tag=\"Loading\",t},Done:function(t){var n;return(n={})[a]=\"AsyncData\",n.tag=\"Done\",n.value=t,n}})},t}();b.P={Done:function(t){return{tag:\"Done\",value:t}},NotAsked:{tag:\"NotAsked\"},Loading:{tag:\"Loading\"}},b.Done=function(t){var n=E.get(t);if(null==n){var r=Object.create(N);return r.tag=\"Done\",r.value=t,Object.freeze(r),E.set(t,r),r}return n},b.Loading=function(){return D},b.NotAsked=function(){return j},b.all=function(t){for(var n,r=t.length,e=R.Done([]),u=0,o=function(){if(u>=r)return{v:e};var n=t[u];null!=n&&(e=e.flatMap(function(t){return n.map(function(n){return t.push(n),t})})),u++};;)if(n=o())return n.v},b.allFromDict=function(r){var e=t(r);return R.all(n(r)).map(function(t){return Object.fromEntries(c(e,t))})},b.equals=function(t,n,r){return\"Done\"===t.tag&&\"Done\"===n.tag?r(t.value,n.value):t.tag===n.tag},b.isAsyncData=function(t){return null!=t&&\"AsyncData\"===t.__boxed_type__},b.fromJSON=function(t){return\"NotAsked\"===t.tag?R.NotAsked():\"Loading\"===t.tag?R.Loading():R.Done(t.value)},b.prototype.__boxed_type__=\"AsyncData\";var S,N=b.prototype,D=((S=Object.create(N)).tag=\"Loading\",Object.freeze(S),S),j=function(){var t=Object.create(N);return t.tag=\"NotAsked\",Object.freeze(t),t}(),R=b,A=/*#__PURE__*/function(){function t(){this._state=void 0,this._state={tag:\"Pending\"}}t.fromPromise=function(t){return P.make(function(n){t.then(function(t){return n(k.Ok(t))},function(t){return n(k.Error(t))})})};var n=t.prototype;return n.onResolve=function(t){var n;\"Pending\"===this._state.tag?(this._state.resolveCallbacks=null!=(n=this._state.resolveCallbacks)?n:[],this._state.resolveCallbacks.push(t)):\"Resolved\"===this._state.tag&&t(this._state.value)},n.onCancel=function(t){var n;\"Pending\"===this._state.tag?(this._state.cancelCallbacks=null!=(n=this._state.cancelCallbacks)?n:[],this._state.cancelCallbacks.push(t)):\"Cancelled\"===this._state.tag&&t()},n.cancel=function(){if(\"Pending\"===this._state.tag){var t=this._state,n=t.cancel,r=t.cancelCallbacks;this._state={tag:\"Cancelled\"},null!=n&&n(),null==r||r.forEach(function(t){return t()})}},n.map=function(t,n){var r=this;void 0===n&&(n=!1);var e=P.make(function(e){if(r.onResolve(function(n){e(t(n))}),n)return function(){r.cancel()}});return this.onCancel(function(){e.cancel()}),e},n.then=function(t){return this.onResolve(t),this},n.flatMap=function(t,n){var r=this;void 0===n&&(n=!1);var e=P.make(function(u){if(r.onResolve(function(n){var r=t(n);r.onResolve(u),r.onCancel(function(){return e.cancel()})}),n)return function(){r.cancel()}});return this.onCancel(function(){e.cancel()}),e},n.tap=function(t){return this.onResolve(t),this},n.tapOk=function(t){return this.onResolve(function(n){n.match({Ok:function(n){return t(n)},Error:function(){}})}),this},n.tapError=function(t){return this.onResolve(function(n){n.match({Ok:function(){},Error:function(n){return t(n)}})}),this},n.mapOkToResult=function(t,n){return void 0===n&&(n=!1),this.map(function(n){return n.match({Ok:function(n){return t(n)},Error:function(){return n}})},n)},n.mapErrorToResult=function(t,n){return void 0===n&&(n=!1),this.map(function(n){return n.match({Error:function(n){return t(n)},Ok:function(){return n}})},n)},n.mapOk=function(t,n){return void 0===n&&(n=!1),this.map(function(n){return n.match({Ok:function(n){return k.Ok(t(n))},Error:function(){return n}})},n)},n.mapError=function(t,n){return void 0===n&&(n=!1),this.map(function(n){return n.match({Ok:function(){return n},Error:function(n){return k.Error(t(n))}})},n)},n.flatMapOk=function(t,n){return void 0===n&&(n=!1),this.flatMap(function(n){return n.match({Ok:function(n){return t(n)},Error:function(){return P.value(n)}})},n)},n.flatMapError=function(t,n){return void 0===n&&(n=!1),this.flatMap(function(n){return n.match({Ok:function(){return P.value(n)},Error:function(n){return t(n)}})},n)},n.toPromise=function(){var t=this;return new Promise(function(n){t.onResolve(n)})},n.resultToPromise=function(){var t=this;return new Promise(function(n,r){t.onResolve(function(t){t.match({Ok:n,Error:r})})})},t}();A.make=function(t){var n=Object.create(M);return n._state={tag:\"Pending\"},n._state.cancel=t(function(t){if(\"Pending\"===n._state.tag){var r=n._state.resolveCallbacks;n._state={tag:\"Resolved\",value:t},null==r||r.forEach(function(n){return n(t)})}}),n},A.isFuture=function(t){return null!=t&&Object.prototype.isPrototypeOf.call(M,t)},A.value=function(t){var n=Object.create(M);return n._state={tag:\"Resolved\",value:t},n},A.all=function(t,n){void 0===n&&(n=!1);for(var r,e=t.length,u=P.value([]),o=0,i=function(){if(o>=e)return{v:u};var r=t[o];null!=r&&(u=u.flatMap(function(t){return r.map(function(n){return t.push(n),t},n)},n)),o++};;)if(r=i())return r.v},A.allFromDict=function(r){var e=t(r);return P.all(n(r)).map(function(t){return Object.fromEntries(c(e,t))})},A.wait=function(t){return P.make(function(n){var r=setTimeout(function(){return n()},t);return function(){return clearTimeout(r)}})},A.retry=function(t,n){var r=n.max;return function n(e){return t(e).flatMapError(function(t){return e+1<r?n(e+1):P.value(k.Error(t))})}(0)},A.concurrent=function(t,n){var r=n.concurrency;return P.make(function(n){var e=Array(t.length),u=r-1,o=0;0!==t.length?t.slice(0,r).forEach(function r(i,a){return i().tap(function(i){if(e[a]=i,++o<t.length){var c=t[++u];null!=c&&r(c,u)}else n(e)})}):n([])})};var M=Object.create(null,Object.getOwnPropertyDescriptors(A.prototype)),P=A,x={make:function(){var t;return[P.make(function(n){t=n}),t]}},C=Symbol(\"NOT_COMPUTED\");function z(){return z=Object.assign?Object.assign.bind():function(t){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var e in r)Object.prototype.hasOwnProperty.call(r,e)&&(t[e]=r[e])}return t},z.apply(this,arguments)}var J={__proto__:null,encode:function(t,n){return JSON.stringify(t,function(t,n){return null==n?n:\"string\"==typeof n[a]?z({},n,{__boxed_type__:n[a]}):n},n)},decode:function(t){return JSON.parse(t,function(t,n){return null==n?n:\"Option\"===n.__boxed_type__?p.fromJSON(n):\"Result\"===n.__boxed_type__?k.fromJSON(n):\"AsyncData\"===n.__boxed_type__?R.fromJSON(n):n})}};exports.Array=y,exports.AsyncData=R,exports.Deferred=x,exports.Dict=e,exports.Future=P,exports.Lazy=function(t){var n={contents:C};return{get:function(){return n.contents===C&&(n.contents=t()),n.contents}}},exports.Option=p,exports.Result=k,exports.Serializer=J;\n//# sourceMappingURL=Boxed.js.map\n","/**\n * Injection token for AMQP client module options\n * Used by NestJS DI system to inject configuration into AmqpClientService\n */\nexport const MODULE_OPTIONS_TOKEN = Symbol(\"AMQP_CLIENT_MODULE_OPTIONS\");\n","import type { AmqpConnectionManagerOptions, ConnectionUrl } from \"amqp-connection-manager\";\nimport {\n type ClientInferPublisherInput,\n MessageValidationError,\n type PublishOptions,\n TechnicalError,\n TypedAmqpClient,\n} from \"@amqp-contract/client\";\nimport type { ContractDefinition, InferPublisherNames } from \"@amqp-contract/contract\";\nimport { Future, Result } from \"@swan-io/boxed\";\nimport { Inject, Injectable, type OnModuleDestroy, type OnModuleInit } from \"@nestjs/common\";\nimport { MODULE_OPTIONS_TOKEN } from \"./client.module-definition.js\";\n\n/**\n * Configuration options for the AMQP client NestJS module.\n *\n * @typeParam TContract - The contract definition type\n *\n * @example\n * ```typescript\n * const options: AmqpClientModuleOptions<typeof contract> = {\n * contract: myContract,\n * urls: ['amqp://localhost'],\n * connectionOptions: {\n * heartbeatIntervalInSeconds: 30\n * }\n * };\n * ```\n */\nexport type AmqpClientModuleOptions<TContract extends ContractDefinition> = {\n /** The AMQP contract definition specifying publishers and their message schemas */\n contract: TContract;\n /** AMQP broker URL(s). Multiple URLs provide failover support */\n urls: ConnectionUrl[];\n /** Optional connection configuration (heartbeat, reconnect settings, etc.) */\n connectionOptions?: AmqpConnectionManagerOptions | undefined;\n};\n\n/**\n * Type-safe AMQP client service for NestJS applications.\n *\n * This service wraps {@link TypedAmqpClient} and integrates it with the NestJS\n * lifecycle, automatically initializing the connection on module init and\n * cleaning up resources on module destroy.\n *\n * @typeParam TContract - The contract definition type\n *\n * @example\n * ```typescript\n * // In your module\n * import { AmqpClientModule } from '@amqp-contract/client-nestjs';\n *\n * @Module({\n * imports: [\n * AmqpClientModule.forRoot({\n * contract: myContract,\n * urls: ['amqp://localhost']\n * })\n * ]\n * })\n * export class AppModule {}\n *\n * // In your service\n * import { AmqpClientService } from '@amqp-contract/client-nestjs';\n *\n * @Injectable()\n * export class OrderService {\n * constructor(\n * private readonly amqpClient: AmqpClientService<typeof myContract>\n * ) {}\n *\n * async createOrder(order: Order) {\n * const result = await this.amqpClient.publish('orderCreated', {\n * orderId: order.id,\n * amount: order.total\n * }).resultToPromise();\n *\n * if (result.isError()) {\n * throw new Error('Failed to publish order event');\n * }\n * }\n * }\n * ```\n */\n@Injectable()\nexport class AmqpClientService<TContract extends ContractDefinition>\n implements OnModuleInit, OnModuleDestroy\n{\n private client: TypedAmqpClient<TContract> | null = null;\n\n constructor(\n @Inject(MODULE_OPTIONS_TOKEN)\n private readonly options: AmqpClientModuleOptions<TContract>,\n ) {}\n\n /**\n * Initialize the AMQP client when the NestJS module starts.\n *\n * This lifecycle hook automatically creates and initializes the client\n * when the NestJS application starts up. The connection will be established\n * in the background with automatic reconnection handling.\n */\n async onModuleInit(): Promise<void> {\n const clientResult = await TypedAmqpClient.create(this.options);\n if (clientResult.isError()) {\n throw new Error(`Failed to create AMQP client: ${clientResult.error.message}`);\n }\n this.client = clientResult.get();\n }\n\n /**\n * Close the AMQP client when the NestJS module is destroyed.\n *\n * This lifecycle hook ensures proper cleanup of resources when the\n * NestJS application shuts down, gracefully closing the connection\n * and cleaning up all consumers.\n */\n async onModuleDestroy(): Promise<void> {\n if (this.client) {\n await this.client.close().resultToPromise();\n this.client = null;\n }\n }\n\n /**\n * Publish a message using a contract-defined publisher.\n *\n * This method provides type-safe message publishing with automatic validation\n * and explicit error handling through the Result type.\n *\n * @param publisherName - The name of the publisher from the contract\n * @param message - The message payload (type-checked against the contract)\n * @param options - Optional AMQP publish options including compression support\n * @returns A Future that resolves to a Result indicating success or failure\n *\n * @example Basic publishing\n * ```typescript\n * const result = await this.amqpClient.publish('orderCreated', {\n * orderId: '123',\n * amount: 99.99\n * }).resultToPromise();\n *\n * if (result.isError()) {\n * console.error('Publish failed:', result.error);\n * }\n * ```\n *\n * @example Publishing with compression\n * ```typescript\n * const result = await this.amqpClient.publish('orderCreated', {\n * orderId: '123',\n * amount: 99.99\n * }, {\n * compression: 'gzip'\n * }).resultToPromise();\n * ```\n */\n publish<TName extends InferPublisherNames<TContract>>(\n publisherName: TName,\n message: ClientInferPublisherInput<TContract, TName>,\n options?: PublishOptions,\n ): Future<Result<void, TechnicalError | MessageValidationError>> {\n if (!this.client) {\n return Future.value(\n Result.Error(\n new TechnicalError(\n \"Client not initialized. Ensure the module has been initialized before publishing.\",\n ),\n ),\n );\n }\n\n return this.client.publish(publisherName, message, options);\n }\n}\n","import { type AmqpClientModuleOptions, AmqpClientService } from \"./client.service.js\";\nimport {\n type DynamicModule,\n Module,\n type ModuleMetadata,\n type Provider,\n type Type,\n} from \"@nestjs/common\";\nimport type { ContractDefinition } from \"@amqp-contract/contract\";\nimport { MODULE_OPTIONS_TOKEN } from \"./client.module-definition.js\";\n\n/**\n * Factory function return type for async module configuration\n */\ntype AmqpClientModuleOptionsFactory<TContract extends ContractDefinition> =\n | AmqpClientModuleOptions<TContract>\n | Promise<AmqpClientModuleOptions<TContract>>;\n\n/**\n * Options for async module configuration using factory pattern\n */\nexport type AmqpClientModuleAsyncOptions<TContract extends ContractDefinition> = {\n /**\n * Factory function that returns the module options.\n * Can use injected dependencies to create configuration.\n */\n // oxlint-disable-next-line no-explicit-any\n useFactory: (...args: any[]) => AmqpClientModuleOptionsFactory<TContract>;\n /**\n * Optional dependencies to inject into the factory function.\n * Can be a token (string/symbol) or a class reference to a provider.\n */\n inject?: (string | symbol | Type<unknown>)[];\n /**\n * Optional list of imported modules that export providers needed by the factory\n */\n imports?: ModuleMetadata[\"imports\"];\n};\n\n/**\n * NestJS module for AMQP client integration\n * This module provides type-safe AMQP client functionality using @amqp-contract/client\n * without relying on NestJS decorators (except for dependency injection)\n *\n * @typeParam TContract - The contract definition type for type-safe publishing\n *\n * @example\n * ```typescript\n * // Synchronous configuration\n * @Module({\n * imports: [\n * AmqpClientModule.forRoot({\n * contract: myContract,\n * urls: ['amqp://localhost']\n * })\n * ]\n * })\n * export class AppModule {}\n *\n * // Asynchronous configuration\n * @Module({\n * imports: [\n * AmqpClientModule.forRootAsync({\n * imports: [ConfigModule],\n * useFactory: (configService: ConfigService) => ({\n * contract: myContract,\n * urls: configService.get('AMQP_URLS')\n * }),\n * inject: [ConfigService]\n * })\n * ]\n * })\n * export class AppModule {}\n *\n * // Using the client in a service\n * @Injectable()\n * export class OrderService {\n * constructor(\n * private readonly amqpClient: AmqpClientService<typeof myContract>\n * ) {}\n *\n * async createOrder(order: Order) {\n * // publish is fully typed based on the contract\n * await this.amqpClient.publish('orderCreated', {\n * orderId: order.id,\n * amount: order.total\n * }).resultToPromise();\n * }\n * }\n * ```\n */\n@Module({})\nexport class AmqpClientModule {\n /**\n * Register the AMQP client module with synchronous configuration\n *\n * @param options - The client configuration options with contract\n * @returns A dynamic module for NestJS\n */\n static forRoot<TContract extends ContractDefinition>(\n options: AmqpClientModuleOptions<TContract>,\n ): DynamicModule {\n return {\n module: AmqpClientModule,\n providers: [\n {\n provide: MODULE_OPTIONS_TOKEN,\n useValue: options,\n },\n AmqpClientService,\n ],\n exports: [AmqpClientService],\n };\n }\n\n /**\n * Register the AMQP client module with asynchronous configuration\n *\n * @param options - Async configuration options with factory function\n * @returns A dynamic module for NestJS\n */\n static forRootAsync<TContract extends ContractDefinition>(\n options: AmqpClientModuleAsyncOptions<TContract>,\n ): DynamicModule {\n const providers: Provider[] = [\n {\n provide: MODULE_OPTIONS_TOKEN,\n useFactory: options.useFactory,\n inject: options.inject || [],\n },\n AmqpClientService,\n ];\n\n return {\n module: AmqpClientModule,\n imports: options.imports || [],\n providers,\n exports: [AmqpClientService],\n };\n }\n}\n"],"x_google_ignoreList":[0],"mappings":"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"}
package/docs/index.md CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  ### AmqpClientModule
10
10
 
11
- Defined in: [packages/client-nestjs/src/client.module.ts:93](https://github.com/btravers/amqp-contract/blob/8711ad20abb1d4e537ec473d43e85fac3ebd4d0b/packages/client-nestjs/src/client.module.ts#L93)
11
+ Defined in: [packages/client-nestjs/src/client.module.ts:93](https://github.com/btravers/amqp-contract/blob/382c6d2fbfc563c9f6f16cb71cb33fd4a3d41d77/packages/client-nestjs/src/client.module.ts#L93)
12
12
 
13
13
  NestJS module for AMQP client integration
14
14
  This module provides type-safe AMQP client functionality using @amqp-contract/client
@@ -84,7 +84,7 @@ new AmqpClientModule(): AmqpClientModule;
84
84
  static forRoot<TContract>(options): DynamicModule;
85
85
  ```
86
86
 
87
- Defined in: [packages/client-nestjs/src/client.module.ts:100](https://github.com/btravers/amqp-contract/blob/8711ad20abb1d4e537ec473d43e85fac3ebd4d0b/packages/client-nestjs/src/client.module.ts#L100)
87
+ Defined in: [packages/client-nestjs/src/client.module.ts:100](https://github.com/btravers/amqp-contract/blob/382c6d2fbfc563c9f6f16cb71cb33fd4a3d41d77/packages/client-nestjs/src/client.module.ts#L100)
88
88
 
89
89
  Register the AMQP client module with synchronous configuration
90
90
 
@@ -112,7 +112,7 @@ A dynamic module for NestJS
112
112
  static forRootAsync<TContract>(options): DynamicModule;
113
113
  ```
114
114
 
115
- Defined in: [packages/client-nestjs/src/client.module.ts:122](https://github.com/btravers/amqp-contract/blob/8711ad20abb1d4e537ec473d43e85fac3ebd4d0b/packages/client-nestjs/src/client.module.ts#L122)
115
+ Defined in: [packages/client-nestjs/src/client.module.ts:122](https://github.com/btravers/amqp-contract/blob/382c6d2fbfc563c9f6f16cb71cb33fd4a3d41d77/packages/client-nestjs/src/client.module.ts#L122)
116
116
 
117
117
  Register the AMQP client module with asynchronous configuration
118
118
 
@@ -138,7 +138,7 @@ A dynamic module for NestJS
138
138
 
139
139
  ### AmqpClientService
140
140
 
141
- Defined in: [packages/client-nestjs/src/client.service.ts:86](https://github.com/btravers/amqp-contract/blob/8711ad20abb1d4e537ec473d43e85fac3ebd4d0b/packages/client-nestjs/src/client.service.ts#L86)
141
+ Defined in: [packages/client-nestjs/src/client.service.ts:86](https://github.com/btravers/amqp-contract/blob/382c6d2fbfc563c9f6f16cb71cb33fd4a3d41d77/packages/client-nestjs/src/client.service.ts#L86)
142
142
 
143
143
  Type-safe AMQP client service for NestJS applications.
144
144
 
@@ -203,7 +203,7 @@ export class OrderService {
203
203
  new AmqpClientService<TContract>(options): AmqpClientService<TContract>;
204
204
  ```
205
205
 
206
- Defined in: [packages/client-nestjs/src/client.service.ts:91](https://github.com/btravers/amqp-contract/blob/8711ad20abb1d4e537ec473d43e85fac3ebd4d0b/packages/client-nestjs/src/client.service.ts#L91)
206
+ Defined in: [packages/client-nestjs/src/client.service.ts:91](https://github.com/btravers/amqp-contract/blob/382c6d2fbfc563c9f6f16cb71cb33fd4a3d41d77/packages/client-nestjs/src/client.service.ts#L91)
207
207
 
208
208
  ###### Parameters
209
209
 
@@ -223,7 +223,7 @@ Defined in: [packages/client-nestjs/src/client.service.ts:91](https://github.com
223
223
  onModuleDestroy(): Promise<void>;
224
224
  ```
225
225
 
226
- Defined in: [packages/client-nestjs/src/client.service.ts:118](https://github.com/btravers/amqp-contract/blob/8711ad20abb1d4e537ec473d43e85fac3ebd4d0b/packages/client-nestjs/src/client.service.ts#L118)
226
+ Defined in: [packages/client-nestjs/src/client.service.ts:118](https://github.com/btravers/amqp-contract/blob/382c6d2fbfc563c9f6f16cb71cb33fd4a3d41d77/packages/client-nestjs/src/client.service.ts#L118)
227
227
 
228
228
  Close the AMQP client when the NestJS module is destroyed.
229
229
 
@@ -247,7 +247,7 @@ OnModuleDestroy.onModuleDestroy
247
247
  onModuleInit(): Promise<void>;
248
248
  ```
249
249
 
250
- Defined in: [packages/client-nestjs/src/client.service.ts:103](https://github.com/btravers/amqp-contract/blob/8711ad20abb1d4e537ec473d43e85fac3ebd4d0b/packages/client-nestjs/src/client.service.ts#L103)
250
+ Defined in: [packages/client-nestjs/src/client.service.ts:103](https://github.com/btravers/amqp-contract/blob/382c6d2fbfc563c9f6f16cb71cb33fd4a3d41d77/packages/client-nestjs/src/client.service.ts#L103)
251
251
 
252
252
  Initialize the AMQP client when the NestJS module starts.
253
253
 
@@ -276,7 +276,7 @@ publish<TName>(
276
276
  | MessageValidationError>>;
277
277
  ```
278
278
 
279
- Defined in: [packages/client-nestjs/src/client.service.ts:148](https://github.com/btravers/amqp-contract/blob/8711ad20abb1d4e537ec473d43e85fac3ebd4d0b/packages/client-nestjs/src/client.service.ts#L148)
279
+ Defined in: [packages/client-nestjs/src/client.service.ts:158](https://github.com/btravers/amqp-contract/blob/382c6d2fbfc563c9f6f16cb71cb33fd4a3d41d77/packages/client-nestjs/src/client.service.ts#L158)
280
280
 
281
281
  Publish a message using a contract-defined publisher.
282
282
 
@@ -295,7 +295,7 @@ and explicit error handling through the Result type.
295
295
  | ------ | ------ | ------ |
296
296
  | `publisherName` | `TName` | The name of the publisher from the contract |
297
297
  | `message` | [`ClientInferPublisherInput`](#clientinferpublisherinput)\<`TContract`, `TName`\> | The message payload (type-checked against the contract) |
298
- | `options?` | `Publish` | Optional AMQP publish options (e.g., persistence, headers) |
298
+ | `options?` | `PublishOptions` | Optional AMQP publish options including compression support |
299
299
 
300
300
  ###### Returns
301
301
 
@@ -305,7 +305,7 @@ and explicit error handling through the Result type.
305
305
 
306
306
  A Future that resolves to a Result indicating success or failure
307
307
 
308
- ###### Example
308
+ ###### Examples
309
309
 
310
310
  ```typescript
311
311
  const result = await this.amqpClient.publish('orderCreated', {
@@ -318,6 +318,15 @@ if (result.isError()) {
318
318
  }
319
319
  ```
320
320
 
321
+ ```typescript
322
+ const result = await this.amqpClient.publish('orderCreated', {
323
+ orderId: '123',
324
+ amount: 99.99
325
+ }, {
326
+ compression: 'gzip'
327
+ }).resultToPromise();
328
+ ```
329
+
321
330
  ## Interfaces
322
331
 
323
332
  ### MessageValidationError
@@ -371,7 +380,7 @@ This includes validation failures and AMQP channel issues
371
380
  type AmqpClientModuleAsyncOptions<TContract> = object;
372
381
  ```
373
382
 
374
- Defined in: [packages/client-nestjs/src/client.module.ts:22](https://github.com/btravers/amqp-contract/blob/8711ad20abb1d4e537ec473d43e85fac3ebd4d0b/packages/client-nestjs/src/client.module.ts#L22)
383
+ Defined in: [packages/client-nestjs/src/client.module.ts:22](https://github.com/btravers/amqp-contract/blob/382c6d2fbfc563c9f6f16cb71cb33fd4a3d41d77/packages/client-nestjs/src/client.module.ts#L22)
375
384
 
376
385
  Options for async module configuration using factory pattern
377
386
 
@@ -385,9 +394,9 @@ Options for async module configuration using factory pattern
385
394
 
386
395
  | Property | Type | Description | Defined in |
387
396
  | ------ | ------ | ------ | ------ |
388
- | <a id="imports"></a> `imports?` | `ModuleMetadata`\[`"imports"`\] | Optional list of imported modules that export providers needed by the factory | [packages/client-nestjs/src/client.module.ts:37](https://github.com/btravers/amqp-contract/blob/8711ad20abb1d4e537ec473d43e85fac3ebd4d0b/packages/client-nestjs/src/client.module.ts#L37) |
389
- | <a id="inject"></a> `inject?` | (`string` \| `symbol` \| `Type`\<`unknown`\>)[] | Optional dependencies to inject into the factory function. Can be a token (string/symbol) or a class reference to a provider. | [packages/client-nestjs/src/client.module.ts:33](https://github.com/btravers/amqp-contract/blob/8711ad20abb1d4e537ec473d43e85fac3ebd4d0b/packages/client-nestjs/src/client.module.ts#L33) |
390
- | <a id="usefactory"></a> `useFactory` | (...`args`) => `AmqpClientModuleOptionsFactory`\<`TContract`\> | Factory function that returns the module options. Can use injected dependencies to create configuration. | [packages/client-nestjs/src/client.module.ts:28](https://github.com/btravers/amqp-contract/blob/8711ad20abb1d4e537ec473d43e85fac3ebd4d0b/packages/client-nestjs/src/client.module.ts#L28) |
397
+ | <a id="imports"></a> `imports?` | `ModuleMetadata`\[`"imports"`\] | Optional list of imported modules that export providers needed by the factory | [packages/client-nestjs/src/client.module.ts:37](https://github.com/btravers/amqp-contract/blob/382c6d2fbfc563c9f6f16cb71cb33fd4a3d41d77/packages/client-nestjs/src/client.module.ts#L37) |
398
+ | <a id="inject"></a> `inject?` | (`string` \| `symbol` \| `Type`\<`unknown`\>)[] | Optional dependencies to inject into the factory function. Can be a token (string/symbol) or a class reference to a provider. | [packages/client-nestjs/src/client.module.ts:33](https://github.com/btravers/amqp-contract/blob/382c6d2fbfc563c9f6f16cb71cb33fd4a3d41d77/packages/client-nestjs/src/client.module.ts#L33) |
399
+ | <a id="usefactory"></a> `useFactory` | (...`args`) => `AmqpClientModuleOptionsFactory`\<`TContract`\> | Factory function that returns the module options. Can use injected dependencies to create configuration. | [packages/client-nestjs/src/client.module.ts:28](https://github.com/btravers/amqp-contract/blob/382c6d2fbfc563c9f6f16cb71cb33fd4a3d41d77/packages/client-nestjs/src/client.module.ts#L28) |
391
400
 
392
401
  ***
393
402
 
@@ -397,7 +406,7 @@ Options for async module configuration using factory pattern
397
406
  type AmqpClientModuleOptions<TContract> = object;
398
407
  ```
399
408
 
400
- Defined in: [packages/client-nestjs/src/client.service.ts:30](https://github.com/btravers/amqp-contract/blob/8711ad20abb1d4e537ec473d43e85fac3ebd4d0b/packages/client-nestjs/src/client.service.ts#L30)
409
+ Defined in: [packages/client-nestjs/src/client.service.ts:30](https://github.com/btravers/amqp-contract/blob/382c6d2fbfc563c9f6f16cb71cb33fd4a3d41d77/packages/client-nestjs/src/client.service.ts#L30)
401
410
 
402
411
  Configuration options for the AMQP client NestJS module.
403
412
 
@@ -423,9 +432,9 @@ const options: AmqpClientModuleOptions<typeof contract> = {
423
432
 
424
433
  | Property | Type | Description | Defined in |
425
434
  | ------ | ------ | ------ | ------ |
426
- | <a id="connectionoptions"></a> `connectionOptions?` | `AmqpConnectionManagerOptions` | Optional connection configuration (heartbeat, reconnect settings, etc.) | [packages/client-nestjs/src/client.service.ts:36](https://github.com/btravers/amqp-contract/blob/8711ad20abb1d4e537ec473d43e85fac3ebd4d0b/packages/client-nestjs/src/client.service.ts#L36) |
427
- | <a id="contract"></a> `contract` | `TContract` | The AMQP contract definition specifying publishers and their message schemas | [packages/client-nestjs/src/client.service.ts:32](https://github.com/btravers/amqp-contract/blob/8711ad20abb1d4e537ec473d43e85fac3ebd4d0b/packages/client-nestjs/src/client.service.ts#L32) |
428
- | <a id="urls"></a> `urls` | `ConnectionUrl`[] | AMQP broker URL(s). Multiple URLs provide failover support | [packages/client-nestjs/src/client.service.ts:34](https://github.com/btravers/amqp-contract/blob/8711ad20abb1d4e537ec473d43e85fac3ebd4d0b/packages/client-nestjs/src/client.service.ts#L34) |
435
+ | <a id="connectionoptions"></a> `connectionOptions?` | `AmqpConnectionManagerOptions` | Optional connection configuration (heartbeat, reconnect settings, etc.) | [packages/client-nestjs/src/client.service.ts:36](https://github.com/btravers/amqp-contract/blob/382c6d2fbfc563c9f6f16cb71cb33fd4a3d41d77/packages/client-nestjs/src/client.service.ts#L36) |
436
+ | <a id="contract"></a> `contract` | `TContract` | The AMQP contract definition specifying publishers and their message schemas | [packages/client-nestjs/src/client.service.ts:32](https://github.com/btravers/amqp-contract/blob/382c6d2fbfc563c9f6f16cb71cb33fd4a3d41d77/packages/client-nestjs/src/client.service.ts#L32) |
437
+ | <a id="urls"></a> `urls` | `ConnectionUrl`[] | AMQP broker URL(s). Multiple URLs provide failover support | [packages/client-nestjs/src/client.service.ts:34](https://github.com/btravers/amqp-contract/blob/382c6d2fbfc563c9f6f16cb71cb33fd4a3d41d77/packages/client-nestjs/src/client.service.ts#L34) |
429
438
 
430
439
  ***
431
440
 
@@ -454,7 +463,7 @@ Infer publisher input type (message payload) for a specific publisher in a contr
454
463
  const MODULE_OPTIONS_TOKEN: typeof MODULE_OPTIONS_TOKEN;
455
464
  ```
456
465
 
457
- Defined in: [packages/client-nestjs/src/client.module-definition.ts:5](https://github.com/btravers/amqp-contract/blob/8711ad20abb1d4e537ec473d43e85fac3ebd4d0b/packages/client-nestjs/src/client.module-definition.ts#L5)
466
+ Defined in: [packages/client-nestjs/src/client.module-definition.ts:5](https://github.com/btravers/amqp-contract/blob/382c6d2fbfc563c9f6f16cb71cb33fd4a3d41d77/packages/client-nestjs/src/client.module-definition.ts#L5)
458
467
 
459
468
  Injection token for AMQP client module options
460
469
  Used by NestJS DI system to inject configuration into AmqpClientService
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@amqp-contract/client-nestjs",
3
- "version": "0.6.0",
3
+ "version": "0.7.0",
4
4
  "description": "NestJS integration for @amqp-contract/client",
5
5
  "keywords": [
6
6
  "amqp",
@@ -8,7 +8,16 @@
8
8
  "contract",
9
9
  "nestjs",
10
10
  "rabbitmq",
11
- "typescript"
11
+ "typescript",
12
+ "nodejs",
13
+ "messaging",
14
+ "type-safe",
15
+ "schema",
16
+ "validation",
17
+ "message-broker",
18
+ "message-queue",
19
+ "publisher",
20
+ "nest"
12
21
  ],
13
22
  "homepage": "https://github.com/btravers/amqp-contract#readme",
14
23
  "bugs": {
@@ -43,13 +52,13 @@
43
52
  "docs"
44
53
  ],
45
54
  "dependencies": {
46
- "@amqp-contract/client": "0.6.0",
47
- "@amqp-contract/contract": "0.6.0"
55
+ "@amqp-contract/client": "0.7.0",
56
+ "@amqp-contract/contract": "0.7.0"
48
57
  },
49
58
  "devDependencies": {
50
- "@nestjs/common": "11.1.10",
51
- "@nestjs/core": "11.1.10",
52
- "@nestjs/testing": "11.1.10",
59
+ "@nestjs/common": "11.1.11",
60
+ "@nestjs/core": "11.1.11",
61
+ "@nestjs/testing": "11.1.11",
53
62
  "@swan-io/boxed": "3.2.1",
54
63
  "@types/amqplib": "0.10.8",
55
64
  "@types/node": "25.0.3",
@@ -58,13 +67,13 @@
58
67
  "amqplib": "0.10.9",
59
68
  "reflect-metadata": "0.2.2",
60
69
  "rxjs": "7.8.2",
61
- "tsdown": "0.18.3",
70
+ "tsdown": "0.18.4",
62
71
  "typedoc": "0.28.15",
63
72
  "typedoc-plugin-markdown": "4.9.0",
64
73
  "typescript": "5.9.3",
65
74
  "vitest": "4.0.16",
66
- "zod": "4.2.1",
67
- "@amqp-contract/testing": "0.6.0",
75
+ "zod": "4.3.5",
76
+ "@amqp-contract/testing": "0.7.0",
68
77
  "@amqp-contract/tsconfig": "0.0.0",
69
78
  "@amqp-contract/typedoc": "0.0.1"
70
79
  },
@@ -80,7 +89,6 @@
80
89
  "dev": "tsdown src/index.ts --format cjs,esm --dts --watch",
81
90
  "test": "vitest run --project unit",
82
91
  "test:integration": "vitest run --project integration",
83
- "test:watch": "vitest --project unit",
84
92
  "typecheck": "tsc --noEmit"
85
93
  }
86
94
  }