@amqp-contract/worker 1.0.0 → 2.0.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 +2 -2
- package/dist/index.cjs +35 -35
- package/dist/index.d.cts +18 -18
- package/dist/index.d.mts +18 -18
- package/dist/index.mjs +36 -36
- package/dist/index.mjs.map +1 -1
- package/docs/index.md +66 -66
- package/package.json +6 -6
package/docs/index.md
CHANGED
|
@@ -72,7 +72,7 @@ MessageValidationError_base<{
|
|
|
72
72
|
|
|
73
73
|
| Property | Modifier | Type | Inherited from | Defined in |
|
|
74
74
|
| ------ | ------ | ------ | ------ | ------ |
|
|
75
|
-
| <a id="_tag"></a> `_tag` | `readonly` | `"@amqp-contract/MessageValidationError"` | `MessageValidationError_base._tag` | node\_modules/.pnpm/unthrown@0.
|
|
75
|
+
| <a id="_tag"></a> `_tag` | `readonly` | `"@amqp-contract/MessageValidationError"` | `MessageValidationError_base._tag` | node\_modules/.pnpm/unthrown@1.0.0/node\_modules/unthrown/dist/index.d.mts:778 |
|
|
76
76
|
| <a id="cause"></a> `cause?` | `public` | `unknown` | `MessageValidationError_base.cause` | node\_modules/.pnpm/typescript@6.0.3/node\_modules/typescript/lib/lib.es2022.error.d.ts:24 |
|
|
77
77
|
| <a id="issues"></a> `issues` | `readonly` | `unknown` | `MessageValidationError_base.issues` | packages/core/dist/index.d.mts:43 |
|
|
78
78
|
| <a id="message"></a> `message` | `public` | `string` | `MessageValidationError_base.message` | node\_modules/.pnpm/typescript@6.0.3/node\_modules/typescript/lib/lib.es5.d.ts:1075 |
|
|
@@ -84,7 +84,7 @@ MessageValidationError_base<{
|
|
|
84
84
|
|
|
85
85
|
### NonRetryableError
|
|
86
86
|
|
|
87
|
-
Defined in: [packages/worker/src/errors.ts:37](https://github.com/btravstack/amqp-contract/blob/
|
|
87
|
+
Defined in: [packages/worker/src/errors.ts:37](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/errors.ts#L37)
|
|
88
88
|
|
|
89
89
|
Non-retryable errors - permanent failures that should not be retried
|
|
90
90
|
Examples: invalid data, business rule violations, permanent external failures
|
|
@@ -109,7 +109,7 @@ kept bare (`"NonRetryableError"`).
|
|
|
109
109
|
new NonRetryableError(message, cause?): NonRetryableError;
|
|
110
110
|
```
|
|
111
111
|
|
|
112
|
-
Defined in: [packages/worker/src/errors.ts:43](https://github.com/btravstack/amqp-contract/blob/
|
|
112
|
+
Defined in: [packages/worker/src/errors.ts:43](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/errors.ts#L43)
|
|
113
113
|
|
|
114
114
|
###### Parameters
|
|
115
115
|
|
|
@@ -137,7 +137,7 @@ TaggedError("@amqp-contract/NonRetryableError", {
|
|
|
137
137
|
|
|
138
138
|
| Property | Modifier | Type | Inherited from | Defined in |
|
|
139
139
|
| ------ | ------ | ------ | ------ | ------ |
|
|
140
|
-
| <a id="_tag-1"></a> `_tag` | `readonly` | `"@amqp-contract/NonRetryableError"` | `TaggedError("@amqp-contract/NonRetryableError", { name: "NonRetryableError", })._tag` | node\_modules/.pnpm/unthrown@0.
|
|
140
|
+
| <a id="_tag-1"></a> `_tag` | `readonly` | `"@amqp-contract/NonRetryableError"` | `TaggedError("@amqp-contract/NonRetryableError", { name: "NonRetryableError", })._tag` | node\_modules/.pnpm/unthrown@1.0.0/node\_modules/unthrown/dist/index.d.mts:778 |
|
|
141
141
|
| <a id="cause-1"></a> `cause?` | `public` | `unknown` | [`MessageValidationError`](#messagevalidationerror).[`cause`](#cause) | node\_modules/.pnpm/typescript@6.0.3/node\_modules/typescript/lib/lib.es2022.error.d.ts:24 |
|
|
142
142
|
| <a id="message-1"></a> `message` | `public` | `string` | `TaggedError("@amqp-contract/NonRetryableError", { name: "NonRetryableError", }).message` | node\_modules/.pnpm/typescript@6.0.3/node\_modules/typescript/lib/lib.es5.d.ts:1075 |
|
|
143
143
|
| <a id="name-1"></a> `name` | `public` | `string` | `TaggedError("@amqp-contract/NonRetryableError", { name: "NonRetryableError", }).name` | node\_modules/.pnpm/typescript@6.0.3/node\_modules/typescript/lib/lib.es5.d.ts:1074 |
|
|
@@ -147,7 +147,7 @@ TaggedError("@amqp-contract/NonRetryableError", {
|
|
|
147
147
|
|
|
148
148
|
### RetryableError
|
|
149
149
|
|
|
150
|
-
Defined in: [packages/worker/src/errors.ts:17](https://github.com/btravstack/amqp-contract/blob/
|
|
150
|
+
Defined in: [packages/worker/src/errors.ts:17](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/errors.ts#L17)
|
|
151
151
|
|
|
152
152
|
Retryable errors - transient failures that may succeed on retry
|
|
153
153
|
Examples: network timeouts, rate limiting, temporary service unavailability
|
|
@@ -175,7 +175,7 @@ kept bare (`"RetryableError"`).
|
|
|
175
175
|
new RetryableError(message, cause?): RetryableError;
|
|
176
176
|
```
|
|
177
177
|
|
|
178
|
-
Defined in: [packages/worker/src/errors.ts:23](https://github.com/btravstack/amqp-contract/blob/
|
|
178
|
+
Defined in: [packages/worker/src/errors.ts:23](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/errors.ts#L23)
|
|
179
179
|
|
|
180
180
|
###### Parameters
|
|
181
181
|
|
|
@@ -203,7 +203,7 @@ TaggedError("@amqp-contract/RetryableError", {
|
|
|
203
203
|
|
|
204
204
|
| Property | Modifier | Type | Inherited from | Defined in |
|
|
205
205
|
| ------ | ------ | ------ | ------ | ------ |
|
|
206
|
-
| <a id="_tag-2"></a> `_tag` | `readonly` | `"@amqp-contract/RetryableError"` | `TaggedError("@amqp-contract/RetryableError", { name: "RetryableError", })._tag` | node\_modules/.pnpm/unthrown@0.
|
|
206
|
+
| <a id="_tag-2"></a> `_tag` | `readonly` | `"@amqp-contract/RetryableError"` | `TaggedError("@amqp-contract/RetryableError", { name: "RetryableError", })._tag` | node\_modules/.pnpm/unthrown@1.0.0/node\_modules/unthrown/dist/index.d.mts:778 |
|
|
207
207
|
| <a id="cause-2"></a> `cause?` | `public` | `unknown` | [`MessageValidationError`](#messagevalidationerror).[`cause`](#cause) | node\_modules/.pnpm/typescript@6.0.3/node\_modules/typescript/lib/lib.es2022.error.d.ts:24 |
|
|
208
208
|
| <a id="message-2"></a> `message` | `public` | `string` | `TaggedError("@amqp-contract/RetryableError", { name: "RetryableError", }).message` | node\_modules/.pnpm/typescript@6.0.3/node\_modules/typescript/lib/lib.es5.d.ts:1075 |
|
|
209
209
|
| <a id="name-2"></a> `name` | `public` | `string` | `TaggedError("@amqp-contract/RetryableError", { name: "RetryableError", }).name` | node\_modules/.pnpm/typescript@6.0.3/node\_modules/typescript/lib/lib.es5.d.ts:1074 |
|
|
@@ -213,7 +213,7 @@ TaggedError("@amqp-contract/RetryableError", {
|
|
|
213
213
|
|
|
214
214
|
### TypedAmqpWorker
|
|
215
215
|
|
|
216
|
-
Defined in: [packages/worker/src/worker.ts:189](https://github.com/btravstack/amqp-contract/blob/
|
|
216
|
+
Defined in: [packages/worker/src/worker.ts:189](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/worker.ts#L189)
|
|
217
217
|
|
|
218
218
|
Type-safe AMQP worker for consuming messages from RabbitMQ.
|
|
219
219
|
|
|
@@ -225,7 +225,7 @@ and error handling for consuming messages based on a contract definition.
|
|
|
225
225
|
```typescript
|
|
226
226
|
import { TypedAmqpWorker } from '@amqp-contract/worker';
|
|
227
227
|
import { defineQueue, defineMessage, defineContract, defineConsumer } from '@amqp-contract/contract';
|
|
228
|
-
import {
|
|
228
|
+
import { Ok } from 'unthrown';
|
|
229
229
|
import { z } from 'zod';
|
|
230
230
|
|
|
231
231
|
const orderQueue = defineQueue('order-processing');
|
|
@@ -245,7 +245,7 @@ const result = await TypedAmqpWorker.create({
|
|
|
245
245
|
handlers: {
|
|
246
246
|
processOrder: ({ payload }) => {
|
|
247
247
|
console.log('Processing order', payload.orderId);
|
|
248
|
-
return
|
|
248
|
+
return Ok(undefined).toAsync();
|
|
249
249
|
},
|
|
250
250
|
},
|
|
251
251
|
urls: ['amqp://localhost'],
|
|
@@ -271,7 +271,7 @@ await worker.close();
|
|
|
271
271
|
close(): AsyncResult<void, TechnicalError>;
|
|
272
272
|
```
|
|
273
273
|
|
|
274
|
-
Defined in: [packages/worker/src/worker.ts:350](https://github.com/btravstack/amqp-contract/blob/
|
|
274
|
+
Defined in: [packages/worker/src/worker.ts:350](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/worker.ts#L350)
|
|
275
275
|
|
|
276
276
|
Close the AMQP channel and connection.
|
|
277
277
|
|
|
@@ -297,7 +297,7 @@ if (closeResult.isOk()) {
|
|
|
297
297
|
static create<TContract>(__namedParameters): AsyncResult<TypedAmqpWorker<TContract>, TechnicalError>;
|
|
298
298
|
```
|
|
299
299
|
|
|
300
|
-
Defined in: [packages/worker/src/worker.ts:288](https://github.com/btravstack/amqp-contract/blob/
|
|
300
|
+
Defined in: [packages/worker/src/worker.ts:288](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/worker.ts#L288)
|
|
301
301
|
|
|
302
302
|
Create a type-safe AMQP worker from a contract.
|
|
303
303
|
|
|
@@ -333,7 +333,7 @@ A AsyncResult that resolves to the worker or a TechnicalError.
|
|
|
333
333
|
const result = await TypedAmqpWorker.create({
|
|
334
334
|
contract: myContract,
|
|
335
335
|
handlers: {
|
|
336
|
-
processOrder: ({ payload }) =>
|
|
336
|
+
processOrder: ({ payload }) => Ok(undefined).toAsync(),
|
|
337
337
|
},
|
|
338
338
|
urls: ['amqp://localhost'],
|
|
339
339
|
});
|
|
@@ -347,7 +347,7 @@ const result = await TypedAmqpWorker.create({
|
|
|
347
347
|
type ConsumerOptions = AmqpClientConsumerOptions;
|
|
348
348
|
```
|
|
349
349
|
|
|
350
|
-
Defined in: [packages/worker/src/worker.ts:58](https://github.com/btravstack/amqp-contract/blob/
|
|
350
|
+
Defined in: [packages/worker/src/worker.ts:58](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/worker.ts#L58)
|
|
351
351
|
|
|
352
352
|
***
|
|
353
353
|
|
|
@@ -357,7 +357,7 @@ Defined in: [packages/worker/src/worker.ts:58](https://github.com/btravstack/amq
|
|
|
357
357
|
type CreateWorkerOptions<TContract> = object;
|
|
358
358
|
```
|
|
359
359
|
|
|
360
|
-
Defined in: [packages/worker/src/worker.ts:105](https://github.com/btravstack/amqp-contract/blob/
|
|
360
|
+
Defined in: [packages/worker/src/worker.ts:105](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/worker.ts#L105)
|
|
361
361
|
|
|
362
362
|
Options for creating a type-safe AMQP worker.
|
|
363
363
|
|
|
@@ -370,13 +370,13 @@ const options: CreateWorkerOptions<typeof contract> = {
|
|
|
370
370
|
// Simple handler
|
|
371
371
|
processOrder: ({ payload }) => {
|
|
372
372
|
console.log('Processing order:', payload.orderId);
|
|
373
|
-
return
|
|
373
|
+
return Ok(undefined).toAsync();
|
|
374
374
|
},
|
|
375
375
|
// Handler with prefetch configuration
|
|
376
376
|
processPayment: [
|
|
377
377
|
({ payload }) => {
|
|
378
378
|
console.log('Processing payment:', payload.paymentId);
|
|
379
|
-
return
|
|
379
|
+
return Ok(undefined).toAsync();
|
|
380
380
|
},
|
|
381
381
|
{ prefetch: 10 }
|
|
382
382
|
]
|
|
@@ -405,14 +405,14 @@ not at the handler level. See `QueueDefinition.retry` for configuration options.
|
|
|
405
405
|
|
|
406
406
|
| Property | Type | Description | Defined in |
|
|
407
407
|
| ------ | ------ | ------ | ------ |
|
|
408
|
-
| <a id="connectionoptions"></a> `connectionOptions?` | `AmqpConnectionManagerOptions` | Optional connection configuration (heartbeat, reconnect settings, etc.) | [packages/worker/src/worker.ts:122](https://github.com/btravstack/amqp-contract/blob/
|
|
409
|
-
| <a id="connecttimeoutms"></a> `connectTimeoutMs?` | `number` \| `null` | Maximum time in ms to wait for the AMQP connection to become ready before `create()` resolves to an `
|
|
410
|
-
| <a id="contract"></a> `contract` | `TContract` | The AMQP contract definition specifying consumers and their message schemas | [packages/worker/src/worker.ts:107](https://github.com/btravstack/amqp-contract/blob/
|
|
411
|
-
| <a id="defaultconsumeroptions"></a> `defaultConsumerOptions?` | [`ConsumerOptions`](#consumeroptions) | Optional default consumer options applied to all consumer handlers. Handler-specific options provided in tuple form override these defaults. | [packages/worker/src/worker.ts:135](https://github.com/btravstack/amqp-contract/blob/
|
|
412
|
-
| <a id="handlers"></a> `handlers` | [`WorkerInferHandlers`](#workerinferhandlers)<`TContract`> | Handlers for each `consumers` and `rpcs` entry in the contract. - Regular consumers return `AsyncResult<void, HandlerError>`. - RPC handlers return `AsyncResult<TResponse, HandlerError>` where `TResponse` is inferred from the RPC's response message schema. Use `defineHandler` / `defineHandlers` to create handlers with full type inference. | [packages/worker/src/worker.ts:118](https://github.com/btravstack/amqp-contract/blob/
|
|
413
|
-
| <a id="logger"></a> `logger?` | `Logger` | Optional logger for logging message consumption and errors | [packages/worker/src/worker.ts:124](https://github.com/btravstack/amqp-contract/blob/
|
|
414
|
-
| <a id="telemetry"></a> `telemetry?` | `TelemetryProvider` | Optional telemetry provider for tracing and metrics. If not provided, uses the default provider which attempts to load OpenTelemetry. OpenTelemetry instrumentation is automatically enabled if @opentelemetry/api is installed. | [packages/worker/src/worker.ts:130](https://github.com/btravstack/amqp-contract/blob/
|
|
415
|
-
| <a id="urls"></a> `urls` | `ConnectionUrl`[] | AMQP broker URL(s). Multiple URLs provide failover support | [packages/worker/src/worker.ts:120](https://github.com/btravstack/amqp-contract/blob/
|
|
408
|
+
| <a id="connectionoptions"></a> `connectionOptions?` | `AmqpConnectionManagerOptions` | Optional connection configuration (heartbeat, reconnect settings, etc.) | [packages/worker/src/worker.ts:122](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/worker.ts#L122) |
|
|
409
|
+
| <a id="connecttimeoutms"></a> `connectTimeoutMs?` | `number` \| `null` | Maximum time in ms to wait for the AMQP connection to become ready before `create()` resolves to an `Err(TechnicalError)`. Defaults to 30s (the [AmqpClient](https://btravstack.github.io/amqp-contract/api/core#amqpclient)'s `DEFAULT_CONNECT_TIMEOUT_MS`). Pass `null` to disable the timeout and let amqp-connection-manager retry indefinitely. | [packages/worker/src/worker.ts:142](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/worker.ts#L142) |
|
|
410
|
+
| <a id="contract"></a> `contract` | `TContract` | The AMQP contract definition specifying consumers and their message schemas | [packages/worker/src/worker.ts:107](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/worker.ts#L107) |
|
|
411
|
+
| <a id="defaultconsumeroptions"></a> `defaultConsumerOptions?` | [`ConsumerOptions`](#consumeroptions) | Optional default consumer options applied to all consumer handlers. Handler-specific options provided in tuple form override these defaults. | [packages/worker/src/worker.ts:135](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/worker.ts#L135) |
|
|
412
|
+
| <a id="handlers"></a> `handlers` | [`WorkerInferHandlers`](#workerinferhandlers)<`TContract`> | Handlers for each `consumers` and `rpcs` entry in the contract. - Regular consumers return `AsyncResult<void, HandlerError>`. - RPC handlers return `AsyncResult<TResponse, HandlerError>` where `TResponse` is inferred from the RPC's response message schema. Use `defineHandler` / `defineHandlers` to create handlers with full type inference. | [packages/worker/src/worker.ts:118](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/worker.ts#L118) |
|
|
413
|
+
| <a id="logger"></a> `logger?` | `Logger` | Optional logger for logging message consumption and errors | [packages/worker/src/worker.ts:124](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/worker.ts#L124) |
|
|
414
|
+
| <a id="telemetry"></a> `telemetry?` | `TelemetryProvider` | Optional telemetry provider for tracing and metrics. If not provided, uses the default provider which attempts to load OpenTelemetry. OpenTelemetry instrumentation is automatically enabled if @opentelemetry/api is installed. | [packages/worker/src/worker.ts:130](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/worker.ts#L130) |
|
|
415
|
+
| <a id="urls"></a> `urls` | `ConnectionUrl`[] | AMQP broker URL(s). Multiple URLs provide failover support | [packages/worker/src/worker.ts:120](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/worker.ts#L120) |
|
|
416
416
|
|
|
417
417
|
***
|
|
418
418
|
|
|
@@ -424,7 +424,7 @@ type HandlerError =
|
|
|
424
424
|
| NonRetryableError;
|
|
425
425
|
```
|
|
426
426
|
|
|
427
|
-
Defined in: [packages/worker/src/errors.ts:58](https://github.com/btravstack/amqp-contract/blob/
|
|
427
|
+
Defined in: [packages/worker/src/errors.ts:58](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/errors.ts#L58)
|
|
428
428
|
|
|
429
429
|
Any handler-signalled error — the union a handler may put in the `Err`
|
|
430
430
|
channel of its `AsyncResult`. Discriminate on `_tag`
|
|
@@ -443,7 +443,7 @@ for runtime narrowing instead of `instanceof HandlerError`.
|
|
|
443
443
|
type WorkerConsumedMessage<TPayload, THeaders> = object;
|
|
444
444
|
```
|
|
445
445
|
|
|
446
|
-
Defined in: [packages/worker/src/types.ts:156](https://github.com/btravstack/amqp-contract/blob/
|
|
446
|
+
Defined in: [packages/worker/src/types.ts:156](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/types.ts#L156)
|
|
447
447
|
|
|
448
448
|
A consumed message containing parsed payload and headers.
|
|
449
449
|
|
|
@@ -457,7 +457,7 @@ const handler = defineHandler(contract, 'processOrder', (message, rawMessage) =>
|
|
|
457
457
|
console.log(message.payload.orderId); // Typed payload
|
|
458
458
|
console.log(message.headers?.priority); // Typed headers (if defined)
|
|
459
459
|
console.log(rawMessage.fields.deliveryTag); // Raw AMQP message
|
|
460
|
-
return
|
|
460
|
+
return Ok(undefined).toAsync();
|
|
461
461
|
});
|
|
462
462
|
```
|
|
463
463
|
|
|
@@ -472,8 +472,8 @@ const handler = defineHandler(contract, 'processOrder', (message, rawMessage) =>
|
|
|
472
472
|
|
|
473
473
|
| Property | Type | Description | Defined in |
|
|
474
474
|
| ------ | ------ | ------ | ------ |
|
|
475
|
-
| <a id="headers"></a> `headers` | `THeaders` *extends* `undefined` ? `undefined` : `THeaders` | The validated message headers (present only when headers schema is defined) | [packages/worker/src/types.ts:160](https://github.com/btravstack/amqp-contract/blob/
|
|
476
|
-
| <a id="payload"></a> `payload` | `TPayload` | The validated message payload | [packages/worker/src/types.ts:158](https://github.com/btravstack/amqp-contract/blob/
|
|
475
|
+
| <a id="headers"></a> `headers` | `THeaders` *extends* `undefined` ? `undefined` : `THeaders` | The validated message headers (present only when headers schema is defined) | [packages/worker/src/types.ts:160](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/types.ts#L160) |
|
|
476
|
+
| <a id="payload"></a> `payload` | `TPayload` | The validated message payload | [packages/worker/src/types.ts:158](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/types.ts#L158) |
|
|
477
477
|
|
|
478
478
|
***
|
|
479
479
|
|
|
@@ -483,7 +483,7 @@ const handler = defineHandler(contract, 'processOrder', (message, rawMessage) =>
|
|
|
483
483
|
type WorkerInferConsumedMessage<TContract, TName> = WorkerConsumedMessage<WorkerInferConsumerPayload<TContract, TName>, WorkerInferConsumerHeaders<TContract, TName>>;
|
|
484
484
|
```
|
|
485
485
|
|
|
486
|
-
Defined in: [packages/worker/src/types.ts:166](https://github.com/btravstack/amqp-contract/blob/
|
|
486
|
+
Defined in: [packages/worker/src/types.ts:166](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/types.ts#L166)
|
|
487
487
|
|
|
488
488
|
Infer the full consumed message type for a regular consumer.
|
|
489
489
|
|
|
@@ -502,7 +502,7 @@ Infer the full consumed message type for a regular consumer.
|
|
|
502
502
|
type WorkerInferConsumerHandler<TContract, TName> = (message, rawMessage) => AsyncResult<void, HandlerError>;
|
|
503
503
|
```
|
|
504
504
|
|
|
505
|
-
Defined in: [packages/worker/src/types.ts:197](https://github.com/btravstack/amqp-contract/blob/
|
|
505
|
+
Defined in: [packages/worker/src/types.ts:197](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/types.ts#L197)
|
|
506
506
|
|
|
507
507
|
Handler signature for a regular consumer (event/command). Returns
|
|
508
508
|
`AsyncResult<void, HandlerError>` — there is no response message.
|
|
@@ -535,7 +535,7 @@ type WorkerInferConsumerHandlerEntry<TContract, TName> =
|
|
|
535
535
|
| readonly [WorkerInferConsumerHandler<TContract, TName>, ConsumerOptions];
|
|
536
536
|
```
|
|
537
537
|
|
|
538
|
-
Defined in: [packages/worker/src/types.ts:223](https://github.com/btravstack/amqp-contract/blob/
|
|
538
|
+
Defined in: [packages/worker/src/types.ts:223](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/types.ts#L223)
|
|
539
539
|
|
|
540
540
|
Handler entry for a regular consumer — function or `[handler, options]`.
|
|
541
541
|
|
|
@@ -554,7 +554,7 @@ Handler entry for a regular consumer — function or `[handler, options]`.
|
|
|
554
554
|
type WorkerInferConsumerHeaders<TContract, TName> = ConsumerInferHeadersOutput<InferConsumer<TContract, TName>>;
|
|
555
555
|
```
|
|
556
556
|
|
|
557
|
-
Defined in: [packages/worker/src/types.ts:85](https://github.com/btravstack/amqp-contract/blob/
|
|
557
|
+
Defined in: [packages/worker/src/types.ts:85](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/types.ts#L85)
|
|
558
558
|
|
|
559
559
|
Infer the headers type for a regular consumer.
|
|
560
560
|
Returns undefined if no headers schema is defined.
|
|
@@ -574,7 +574,7 @@ Returns undefined if no headers schema is defined.
|
|
|
574
574
|
type WorkerInferHandlers<TContract> = [InferConsumerNames<TContract>] extends [never] ? object : { [K in InferConsumerNames<TContract>]: WorkerInferConsumerHandlerEntry<TContract, K> } & [InferRpcNames<TContract>] extends [never] ? object : { [K in InferRpcNames<TContract>]: WorkerInferRpcHandlerEntry<TContract, K> };
|
|
575
575
|
```
|
|
576
576
|
|
|
577
|
-
Defined in: [packages/worker/src/types.ts:257](https://github.com/btravstack/amqp-contract/blob/
|
|
577
|
+
Defined in: [packages/worker/src/types.ts:257](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/types.ts#L257)
|
|
578
578
|
|
|
579
579
|
All handlers for a contract: one entry per `consumers` key plus one entry
|
|
580
580
|
per `rpcs` key. The two name spaces are disjoint so the resulting object
|
|
@@ -595,7 +595,7 @@ const handlers: WorkerInferHandlers<typeof contract> = {
|
|
|
595
595
|
processPayment(payload),
|
|
596
596
|
(error) => new RetryableError('Payment failed', error),
|
|
597
597
|
).map(() => undefined),
|
|
598
|
-
calculate: ({ payload }) =>
|
|
598
|
+
calculate: ({ payload }) => Ok({ sum: payload.a + payload.b }).toAsync(),
|
|
599
599
|
};
|
|
600
600
|
```
|
|
601
601
|
|
|
@@ -607,7 +607,7 @@ const handlers: WorkerInferHandlers<typeof contract> = {
|
|
|
607
607
|
type WorkerInferRpcConsumedMessage<TContract, TName> = WorkerConsumedMessage<WorkerInferRpcRequest<TContract, TName>, WorkerInferRpcHeaders<TContract, TName>>;
|
|
608
608
|
```
|
|
609
609
|
|
|
610
|
-
Defined in: [packages/worker/src/types.ts:178](https://github.com/btravstack/amqp-contract/blob/
|
|
610
|
+
Defined in: [packages/worker/src/types.ts:178](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/types.ts#L178)
|
|
611
611
|
|
|
612
612
|
Infer the consumed message type for an RPC handler — payload + headers from
|
|
613
613
|
the request side of the RPC.
|
|
@@ -627,7 +627,7 @@ the request side of the RPC.
|
|
|
627
627
|
type WorkerInferRpcHandler<TContract, TName> = (message, rawMessage) => AsyncResult<WorkerInferRpcResponse<TContract, TName>, HandlerError>;
|
|
628
628
|
```
|
|
629
629
|
|
|
630
|
-
Defined in: [packages/worker/src/types.ts:212](https://github.com/btravstack/amqp-contract/blob/
|
|
630
|
+
Defined in: [packages/worker/src/types.ts:212](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/types.ts#L212)
|
|
631
631
|
|
|
632
632
|
Handler signature for an RPC. Returns
|
|
633
633
|
`AsyncResult<TResponse, HandlerError>` where `TResponse` is the inferred
|
|
@@ -663,7 +663,7 @@ type WorkerInferRpcHandlerEntry<TContract, TName> =
|
|
|
663
663
|
| readonly [WorkerInferRpcHandler<TContract, TName>, ConsumerOptions];
|
|
664
664
|
```
|
|
665
665
|
|
|
666
|
-
Defined in: [packages/worker/src/types.ts:233](https://github.com/btravstack/amqp-contract/blob/
|
|
666
|
+
Defined in: [packages/worker/src/types.ts:233](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/types.ts#L233)
|
|
667
667
|
|
|
668
668
|
Handler entry for an RPC — function or `[handler, options]`.
|
|
669
669
|
|
|
@@ -682,7 +682,7 @@ Handler entry for an RPC — function or `[handler, options]`.
|
|
|
682
682
|
type WorkerInferRpcHeaders<TContract, TName> = InferRpc<TContract, TName> extends RpcDefinition<infer TRequest, MessageDefinition> ? TRequest extends MessageDefinition<infer _TPayload, infer THeaders> ? THeaders extends StandardSchemaV1<Record<string, unknown>> ? InferSchemaOutput<THeaders> : undefined : undefined : undefined;
|
|
683
683
|
```
|
|
684
684
|
|
|
685
|
-
Defined in: [packages/worker/src/types.ts:107](https://github.com/btravstack/amqp-contract/blob/
|
|
685
|
+
Defined in: [packages/worker/src/types.ts:107](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/types.ts#L107)
|
|
686
686
|
|
|
687
687
|
Infer the request headers type for an RPC. Returns undefined unless the RPC's
|
|
688
688
|
request `MessageDefinition` declares a headers schema.
|
|
@@ -702,7 +702,7 @@ request `MessageDefinition` declares a headers schema.
|
|
|
702
702
|
type WorkerInferRpcRequest<TContract, TName> = InferRpc<TContract, TName> extends RpcDefinition<infer TRequest, MessageDefinition> ? TRequest extends MessageDefinition ? InferSchemaOutput<TRequest["payload"]> : never : never;
|
|
703
703
|
```
|
|
704
704
|
|
|
705
|
-
Defined in: [packages/worker/src/types.ts:93](https://github.com/btravstack/amqp-contract/blob/
|
|
705
|
+
Defined in: [packages/worker/src/types.ts:93](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/types.ts#L93)
|
|
706
706
|
|
|
707
707
|
Infer the request payload type for an RPC.
|
|
708
708
|
|
|
@@ -721,7 +721,7 @@ Infer the request payload type for an RPC.
|
|
|
721
721
|
type WorkerInferRpcResponse<TContract, TName> = InferRpc<TContract, TName> extends RpcDefinition<MessageDefinition, infer TResponse> ? TResponse extends MessageDefinition ? InferSchemaOutput<TResponse["payload"]> : never : never;
|
|
722
722
|
```
|
|
723
723
|
|
|
724
|
-
Defined in: [packages/worker/src/types.ts:123](https://github.com/btravstack/amqp-contract/blob/
|
|
724
|
+
Defined in: [packages/worker/src/types.ts:123](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/types.ts#L123)
|
|
725
725
|
|
|
726
726
|
Infer the response payload type for an RPC. The handler must return a
|
|
727
727
|
`AsyncResult<TResponse, HandlerError>` matching this shape.
|
|
@@ -746,7 +746,7 @@ function defineHandler<TContract, TName>(
|
|
|
746
746
|
handler): WorkerInferConsumerHandlerEntry<TContract, TName>;
|
|
747
747
|
```
|
|
748
748
|
|
|
749
|
-
Defined in: [packages/worker/src/handlers.ts:121](https://github.com/btravstack/amqp-contract/blob/
|
|
749
|
+
Defined in: [packages/worker/src/handlers.ts:121](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/handlers.ts#L121)
|
|
750
750
|
|
|
751
751
|
Define a type-safe handler for a specific consumer or RPC in a contract.
|
|
752
752
|
|
|
@@ -786,7 +786,7 @@ A type-safe handler that can be used with TypedAmqpWorker
|
|
|
786
786
|
|
|
787
787
|
```typescript
|
|
788
788
|
import { defineHandler, RetryableError, NonRetryableError } from '@amqp-contract/worker';
|
|
789
|
-
import { fromPromise,
|
|
789
|
+
import { fromPromise, Ok } from 'unthrown';
|
|
790
790
|
|
|
791
791
|
const processOrderHandler = defineHandler(
|
|
792
792
|
orderContract,
|
|
@@ -805,7 +805,7 @@ const processOrderHandler = defineHandler(
|
|
|
805
805
|
const calculateHandler = defineHandler(
|
|
806
806
|
rpcContract,
|
|
807
807
|
'calculate',
|
|
808
|
-
({ payload }) =>
|
|
808
|
+
({ payload }) => Ok({ sum: payload.a + payload.b }).toAsync(),
|
|
809
809
|
);
|
|
810
810
|
```
|
|
811
811
|
|
|
@@ -819,7 +819,7 @@ function defineHandler<TContract, TName>(
|
|
|
819
819
|
options): WorkerInferConsumerHandlerEntry<TContract, TName>;
|
|
820
820
|
```
|
|
821
821
|
|
|
822
|
-
Defined in: [packages/worker/src/handlers.ts:129](https://github.com/btravstack/amqp-contract/blob/
|
|
822
|
+
Defined in: [packages/worker/src/handlers.ts:129](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/handlers.ts#L129)
|
|
823
823
|
|
|
824
824
|
Define a type-safe handler for a specific consumer or RPC in a contract.
|
|
825
825
|
|
|
@@ -860,7 +860,7 @@ A type-safe handler that can be used with TypedAmqpWorker
|
|
|
860
860
|
|
|
861
861
|
```typescript
|
|
862
862
|
import { defineHandler, RetryableError, NonRetryableError } from '@amqp-contract/worker';
|
|
863
|
-
import { fromPromise,
|
|
863
|
+
import { fromPromise, Ok } from 'unthrown';
|
|
864
864
|
|
|
865
865
|
const processOrderHandler = defineHandler(
|
|
866
866
|
orderContract,
|
|
@@ -879,7 +879,7 @@ const processOrderHandler = defineHandler(
|
|
|
879
879
|
const calculateHandler = defineHandler(
|
|
880
880
|
rpcContract,
|
|
881
881
|
'calculate',
|
|
882
|
-
({ payload }) =>
|
|
882
|
+
({ payload }) => Ok({ sum: payload.a + payload.b }).toAsync(),
|
|
883
883
|
);
|
|
884
884
|
```
|
|
885
885
|
|
|
@@ -892,7 +892,7 @@ function defineHandler<TContract, TName>(
|
|
|
892
892
|
handler): WorkerInferRpcHandlerEntry<TContract, TName>;
|
|
893
893
|
```
|
|
894
894
|
|
|
895
|
-
Defined in: [packages/worker/src/handlers.ts:138](https://github.com/btravstack/amqp-contract/blob/
|
|
895
|
+
Defined in: [packages/worker/src/handlers.ts:138](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/handlers.ts#L138)
|
|
896
896
|
|
|
897
897
|
Define a type-safe handler for a specific consumer or RPC in a contract.
|
|
898
898
|
|
|
@@ -932,7 +932,7 @@ A type-safe handler that can be used with TypedAmqpWorker
|
|
|
932
932
|
|
|
933
933
|
```typescript
|
|
934
934
|
import { defineHandler, RetryableError, NonRetryableError } from '@amqp-contract/worker';
|
|
935
|
-
import { fromPromise,
|
|
935
|
+
import { fromPromise, Ok } from 'unthrown';
|
|
936
936
|
|
|
937
937
|
const processOrderHandler = defineHandler(
|
|
938
938
|
orderContract,
|
|
@@ -951,7 +951,7 @@ const processOrderHandler = defineHandler(
|
|
|
951
951
|
const calculateHandler = defineHandler(
|
|
952
952
|
rpcContract,
|
|
953
953
|
'calculate',
|
|
954
|
-
({ payload }) =>
|
|
954
|
+
({ payload }) => Ok({ sum: payload.a + payload.b }).toAsync(),
|
|
955
955
|
);
|
|
956
956
|
```
|
|
957
957
|
|
|
@@ -965,7 +965,7 @@ function defineHandler<TContract, TName>(
|
|
|
965
965
|
options): WorkerInferRpcHandlerEntry<TContract, TName>;
|
|
966
966
|
```
|
|
967
967
|
|
|
968
|
-
Defined in: [packages/worker/src/handlers.ts:146](https://github.com/btravstack/amqp-contract/blob/
|
|
968
|
+
Defined in: [packages/worker/src/handlers.ts:146](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/handlers.ts#L146)
|
|
969
969
|
|
|
970
970
|
Define a type-safe handler for a specific consumer or RPC in a contract.
|
|
971
971
|
|
|
@@ -1006,7 +1006,7 @@ A type-safe handler that can be used with TypedAmqpWorker
|
|
|
1006
1006
|
|
|
1007
1007
|
```typescript
|
|
1008
1008
|
import { defineHandler, RetryableError, NonRetryableError } from '@amqp-contract/worker';
|
|
1009
|
-
import { fromPromise,
|
|
1009
|
+
import { fromPromise, Ok } from 'unthrown';
|
|
1010
1010
|
|
|
1011
1011
|
const processOrderHandler = defineHandler(
|
|
1012
1012
|
orderContract,
|
|
@@ -1025,7 +1025,7 @@ const processOrderHandler = defineHandler(
|
|
|
1025
1025
|
const calculateHandler = defineHandler(
|
|
1026
1026
|
rpcContract,
|
|
1027
1027
|
'calculate',
|
|
1028
|
-
({ payload }) =>
|
|
1028
|
+
({ payload }) => Ok({ sum: payload.a + payload.b }).toAsync(),
|
|
1029
1029
|
);
|
|
1030
1030
|
```
|
|
1031
1031
|
|
|
@@ -1037,7 +1037,7 @@ const calculateHandler = defineHandler(
|
|
|
1037
1037
|
function defineHandlers<TContract>(contract, handlers): WorkerInferHandlers<TContract>;
|
|
1038
1038
|
```
|
|
1039
1039
|
|
|
1040
|
-
Defined in: [packages/worker/src/handlers.ts:198](https://github.com/btravstack/amqp-contract/blob/
|
|
1040
|
+
Defined in: [packages/worker/src/handlers.ts:198](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/handlers.ts#L198)
|
|
1041
1041
|
|
|
1042
1042
|
Define multiple type-safe handlers for consumers and RPCs in a contract.
|
|
1043
1043
|
|
|
@@ -1072,7 +1072,7 @@ A type-safe handlers object that can be used with TypedAmqpWorker
|
|
|
1072
1072
|
|
|
1073
1073
|
```typescript
|
|
1074
1074
|
import { defineHandlers, RetryableError } from '@amqp-contract/worker';
|
|
1075
|
-
import { fromPromise,
|
|
1075
|
+
import { fromPromise, Ok } from 'unthrown';
|
|
1076
1076
|
|
|
1077
1077
|
const handlers = defineHandlers(orderContract, {
|
|
1078
1078
|
processOrder: ({ payload }) =>
|
|
@@ -1080,7 +1080,7 @@ const handlers = defineHandlers(orderContract, {
|
|
|
1080
1080
|
processPayment(payload),
|
|
1081
1081
|
(error) => new RetryableError('Payment failed', error),
|
|
1082
1082
|
).map(() => undefined),
|
|
1083
|
-
calculate: ({ payload }) =>
|
|
1083
|
+
calculate: ({ payload }) => Ok({ sum: payload.a + payload.b }).toAsync(),
|
|
1084
1084
|
});
|
|
1085
1085
|
```
|
|
1086
1086
|
|
|
@@ -1092,7 +1092,7 @@ const handlers = defineHandlers(orderContract, {
|
|
|
1092
1092
|
function isHandlerError(error): error is HandlerError;
|
|
1093
1093
|
```
|
|
1094
1094
|
|
|
1095
|
-
Defined in: [packages/worker/src/errors.ts:134](https://github.com/btravstack/amqp-contract/blob/
|
|
1095
|
+
Defined in: [packages/worker/src/errors.ts:134](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/errors.ts#L134)
|
|
1096
1096
|
|
|
1097
1097
|
Type guard to check if an error is any HandlerError (RetryableError or NonRetryableError).
|
|
1098
1098
|
|
|
@@ -1129,7 +1129,7 @@ function handleError(error: unknown) {
|
|
|
1129
1129
|
function isNonRetryableError(error): error is NonRetryableError;
|
|
1130
1130
|
```
|
|
1131
1131
|
|
|
1132
|
-
Defined in: [packages/worker/src/errors.ts:112](https://github.com/btravstack/amqp-contract/blob/
|
|
1132
|
+
Defined in: [packages/worker/src/errors.ts:112](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/errors.ts#L112)
|
|
1133
1133
|
|
|
1134
1134
|
Type guard to check if an error is a NonRetryableError.
|
|
1135
1135
|
|
|
@@ -1169,7 +1169,7 @@ try {
|
|
|
1169
1169
|
function isRetryableError(error): error is RetryableError;
|
|
1170
1170
|
```
|
|
1171
1171
|
|
|
1172
|
-
Defined in: [packages/worker/src/errors.ts:87](https://github.com/btravstack/amqp-contract/blob/
|
|
1172
|
+
Defined in: [packages/worker/src/errors.ts:87](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/errors.ts#L87)
|
|
1173
1173
|
|
|
1174
1174
|
Type guard to check if an error is a RetryableError.
|
|
1175
1175
|
|
|
@@ -1211,7 +1211,7 @@ try {
|
|
|
1211
1211
|
function nonRetryable(message, cause?): NonRetryableError;
|
|
1212
1212
|
```
|
|
1213
1213
|
|
|
1214
|
-
Defined in: [packages/worker/src/errors.ts:197](https://github.com/btravstack/amqp-contract/blob/
|
|
1214
|
+
Defined in: [packages/worker/src/errors.ts:197](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/errors.ts#L197)
|
|
1215
1215
|
|
|
1216
1216
|
Create a NonRetryableError with less verbosity.
|
|
1217
1217
|
|
|
@@ -1235,17 +1235,17 @@ A new NonRetryableError instance
|
|
|
1235
1235
|
|
|
1236
1236
|
```typescript
|
|
1237
1237
|
import { nonRetryable } from '@amqp-contract/worker';
|
|
1238
|
-
import {
|
|
1238
|
+
import { Err, Ok } from 'unthrown';
|
|
1239
1239
|
|
|
1240
1240
|
const handler = ({ payload }) => {
|
|
1241
1241
|
if (!isValidPayload(payload)) {
|
|
1242
|
-
return
|
|
1242
|
+
return Err(nonRetryable('Invalid payload format')).toAsync();
|
|
1243
1243
|
}
|
|
1244
|
-
return
|
|
1244
|
+
return Ok(undefined).toAsync();
|
|
1245
1245
|
};
|
|
1246
1246
|
|
|
1247
1247
|
// Equivalent to:
|
|
1248
|
-
// return
|
|
1248
|
+
// return Err(new NonRetryableError('Invalid payload format')).toAsync();
|
|
1249
1249
|
```
|
|
1250
1250
|
|
|
1251
1251
|
***
|
|
@@ -1256,7 +1256,7 @@ const handler = ({ payload }) => {
|
|
|
1256
1256
|
function retryable(message, cause?): RetryableError;
|
|
1257
1257
|
```
|
|
1258
1258
|
|
|
1259
|
-
Defined in: [packages/worker/src/errors.ts:167](https://github.com/btravstack/amqp-contract/blob/
|
|
1259
|
+
Defined in: [packages/worker/src/errors.ts:167](https://github.com/btravstack/amqp-contract/blob/cbafe3c4c44a5efd57ab3b8ebb53564b509d9d31/packages/worker/src/errors.ts#L167)
|
|
1260
1260
|
|
|
1261
1261
|
Create a RetryableError with less verbosity.
|
|
1262
1262
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@amqp-contract/worker",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"description": "Worker utilities for consuming messages using amqp-contract",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"amqp",
|
|
@@ -51,13 +51,13 @@
|
|
|
51
51
|
},
|
|
52
52
|
"dependencies": {
|
|
53
53
|
"@standard-schema/spec": "1.1.0",
|
|
54
|
-
"unthrown": "0.
|
|
55
|
-
"@amqp-contract/contract": "
|
|
56
|
-
"@amqp-contract/core": "
|
|
54
|
+
"unthrown": "1.0.0",
|
|
55
|
+
"@amqp-contract/contract": "2.0.0",
|
|
56
|
+
"@amqp-contract/core": "2.0.0"
|
|
57
57
|
},
|
|
58
58
|
"devDependencies": {
|
|
59
59
|
"@types/node": "24.13.2",
|
|
60
|
-
"@unthrown/vitest": "0.
|
|
60
|
+
"@unthrown/vitest": "1.0.0",
|
|
61
61
|
"@vitest/coverage-v8": "4.1.9",
|
|
62
62
|
"amqp-connection-manager": "5.0.0",
|
|
63
63
|
"amqplib": "2.0.1",
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
"typescript": "6.0.3",
|
|
68
68
|
"vitest": "4.1.9",
|
|
69
69
|
"zod": "4.4.3",
|
|
70
|
-
"@amqp-contract/testing": "
|
|
70
|
+
"@amqp-contract/testing": "2.0.0",
|
|
71
71
|
"@amqp-contract/tsconfig": "0.1.0",
|
|
72
72
|
"@amqp-contract/typedoc": "0.1.0"
|
|
73
73
|
},
|