@nestjstools/messaging 3.2.0 → 4.0.0-beta.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 +8 -3
- package/lib/bus/consumer.message-bus.d.ts +15 -0
- package/lib/bus/consumer.message-bus.js +45 -0
- package/lib/bus/consumer.message-bus.js.map +1 -0
- package/lib/consumer/distributed.consumer.js +3 -31
- package/lib/consumer/distributed.consumer.js.map +1 -1
- package/lib/consumer/i-messaging-consumer.d.ts +2 -2
- package/lib/index.d.ts +1 -2
- package/lib/index.js +1 -2
- package/lib/index.js.map +1 -1
- package/lib/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +38 -37
- package/lib/consumer/consumer-message-dispatcher.d.ts +0 -5
- package/lib/consumer/consumer-message-dispatcher.js +0 -3
- package/lib/consumer/consumer-message-dispatcher.js.map +0 -1
- package/lib/consumer/consumer-message-mediator.d.ts +0 -10
- package/lib/consumer/consumer-message-mediator.js +0 -20
- package/lib/consumer/consumer-message-mediator.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<p align="center">
|
|
2
|
-
<image src="nestjstools-logo.png" width="400">
|
|
2
|
+
<image src="nestjstools-logo.png" width="400" alt="NestJS Messaging Library">
|
|
3
3
|
</p>
|
|
4
4
|
|
|
5
|
-
#
|
|
5
|
+
# NestJS Messaging Library - Message Bus & Service Bus for Distributed Systems
|
|
6
6
|
|
|
7
7
|
A NestJS library for managing asynchronous and synchronous messages (service bus) with support for buses, handlers, channels, and consumers. This library simplifies building scalable and decoupled applications by facilitating robust message handling pipelines while ensuring flexibility and reliability.
|
|
8
8
|
|
|
@@ -30,7 +30,8 @@ A NestJS library for managing asynchronous and synchronous messages (service bus
|
|
|
30
30
|
|
|
31
31
|
## Documentation
|
|
32
32
|
|
|
33
|
-
https://nestjstools.
|
|
33
|
+
- Official NestJSTools Messaging documentation: https://docs.nestjstools.com/messaging
|
|
34
|
+
- NestJSTools website: https://nestjstools.com
|
|
34
35
|
|
|
35
36
|
---
|
|
36
37
|
|
|
@@ -493,3 +494,7 @@ export class YourMessageOptions implements MessageOptions {
|
|
|
493
494
|
Classes with `Injectable()` decorator must be defined as providers in somewhere in application.
|
|
494
495
|
|
|
495
496
|
---
|
|
497
|
+
## Keywords
|
|
498
|
+
|
|
499
|
+
nestjs messaging library, nestjs message bus, nestjs service bus, <br>nestjs distributed systems,
|
|
500
|
+
nestjs microservices messaging, broker independent messaging for nestjs
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { IMessageBus } from './i-message-bus';
|
|
2
|
+
import { ConsumerMessage } from '../consumer/consumer-message';
|
|
3
|
+
import { Channel } from '../channel/channel';
|
|
4
|
+
import { MessagingLogger } from '../logger/messaging-logger';
|
|
5
|
+
import { IMessagingConsumer } from '../consumer/i-messaging-consumer';
|
|
6
|
+
import { ExceptionListenerHandler } from '../exception-listener/exception-listener-handler';
|
|
7
|
+
export declare class ConsumerMessageBus {
|
|
8
|
+
private readonly messageBus;
|
|
9
|
+
private readonly channel;
|
|
10
|
+
private readonly logger;
|
|
11
|
+
private readonly consumer;
|
|
12
|
+
private readonly exceptionListenerHandler;
|
|
13
|
+
constructor(messageBus: IMessageBus, channel: Channel<any>, logger: MessagingLogger, consumer: IMessagingConsumer<any>, exceptionListenerHandler: ExceptionListenerHandler);
|
|
14
|
+
dispatch(consumerMessage: ConsumerMessage): Promise<object | void>;
|
|
15
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ConsumerMessageBus = void 0;
|
|
4
|
+
const sealed_routing_message_1 = require("../message/sealed-routing-message");
|
|
5
|
+
const default_message_options_1 = require("../message/default-message-options");
|
|
6
|
+
const log_1 = require("../logger/log");
|
|
7
|
+
const consumer_dispatched_message_error_1 = require("../consumer/consumer-dispatched-message-error");
|
|
8
|
+
const handlers_exception_1 = require("../exception/handlers.exception");
|
|
9
|
+
const exception_context_1 = require("../exception-listener/exception-context");
|
|
10
|
+
class ConsumerMessageBus {
|
|
11
|
+
constructor(messageBus, channel, logger, consumer, exceptionListenerHandler) {
|
|
12
|
+
this.messageBus = messageBus;
|
|
13
|
+
this.channel = channel;
|
|
14
|
+
this.logger = logger;
|
|
15
|
+
this.consumer = consumer;
|
|
16
|
+
this.exceptionListenerHandler = exceptionListenerHandler;
|
|
17
|
+
}
|
|
18
|
+
async dispatch(consumerMessage) {
|
|
19
|
+
const middlewares = this.channel.config
|
|
20
|
+
.middlewares;
|
|
21
|
+
const routingMessage = new sealed_routing_message_1.SealedRoutingMessage(consumerMessage.message, consumerMessage.routingKey).createWithOptions(new default_message_options_1.DefaultMessageOptions(middlewares, this.channel.config?.avoidErrorsForNotExistedHandlers ?? true, this.channel.config.normalizer));
|
|
22
|
+
try {
|
|
23
|
+
this.logger.debug(log_1.Log.create(`[${this.channel.config.name}] Message handled with routing key: [${consumerMessage.routingKey}]`, {
|
|
24
|
+
message: JSON.stringify(consumerMessage.message),
|
|
25
|
+
}));
|
|
26
|
+
const middlewares = this.channel.config
|
|
27
|
+
.middlewares;
|
|
28
|
+
const routingMessage = new sealed_routing_message_1.SealedRoutingMessage(consumerMessage.message, consumerMessage.routingKey).createWithOptions(new default_message_options_1.DefaultMessageOptions(middlewares, this.channel.config?.avoidErrorsForNotExistedHandlers ?? true, this.channel.config.normalizer));
|
|
29
|
+
await this.messageBus.dispatch(routingMessage);
|
|
30
|
+
}
|
|
31
|
+
catch (e) {
|
|
32
|
+
await this.consumer.onError(new consumer_dispatched_message_error_1.ConsumerDispatchedMessageError(consumerMessage, e), this.channel);
|
|
33
|
+
if (!(e instanceof handlers_exception_1.HandlersException)) {
|
|
34
|
+
this.logger.error(log_1.Log.create(`Some error occurred in channel [${this.channel.config.name}]`, {
|
|
35
|
+
error: e instanceof Error ? e.message : String(e),
|
|
36
|
+
message: JSON.stringify(consumerMessage.message),
|
|
37
|
+
routingKey: consumerMessage.routingKey,
|
|
38
|
+
}));
|
|
39
|
+
}
|
|
40
|
+
await this.exceptionListenerHandler.handleError(new exception_context_1.ExceptionContext(e, this.channel.config.name, consumerMessage.message, consumerMessage.routingKey));
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.ConsumerMessageBus = ConsumerMessageBus;
|
|
45
|
+
//# sourceMappingURL=consumer.message-bus.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consumer.message-bus.js","sourceRoot":"","sources":["../../src/bus/consumer.message-bus.ts"],"names":[],"mappings":";;;AAEA,8EAAyE;AACzE,gFAA2E;AAI3E,uCAAoC;AAEpC,qGAA+F;AAC/F,wEAAoE;AAEpE,+EAA2E;AAE3E,MAAa,kBAAkB;IAC7B,YACmB,UAAuB,EACvB,OAAqB,EACrB,MAAuB,EACvB,QAAiC,EACjC,wBAAkD;QAJlD,eAAU,GAAV,UAAU,CAAa;QACvB,YAAO,GAAP,OAAO,CAAc;QACrB,WAAM,GAAN,MAAM,CAAiB;QACvB,aAAQ,GAAR,QAAQ,CAAyB;QACjC,6BAAwB,GAAxB,wBAAwB,CAA0B;IAErE,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,eAAgC;QAC7C,MAAM,WAAW,GAAiB,IAAI,CAAC,OAAO,CAAC,MAAM;aAClD,WAA2B,CAAC;QAE/B,MAAM,cAAc,GAAG,IAAI,6CAAoB,CAC7C,eAAe,CAAC,OAAO,EACvB,eAAe,CAAC,UAAU,CAC3B,CAAC,iBAAiB,CACjB,IAAI,+CAAqB,CACvB,WAAW,EACX,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,gCAAgC,IAAI,IAAI,EAC7D,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAC/B,CACF,CAAC;QAEF,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,SAAG,CAAC,MAAM,CACR,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,wCAAwC,eAAe,CAAC,UAAU,GAAG,EACjG;gBACE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,OAAO,CAAC;aACjD,CACF,CACF,CAAC;YAEF,MAAM,WAAW,GAAiB,IAAI,CAAC,OAAO,CAAC,MAAM;iBAClD,WAA2B,CAAC;YAE/B,MAAM,cAAc,GAAG,IAAI,6CAAoB,CAC7C,eAAe,CAAC,OAAO,EACvB,eAAe,CAAC,UAAU,CAC3B,CAAC,iBAAiB,CACjB,IAAI,+CAAqB,CACvB,WAAW,EACX,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,gCAAgC,IAAI,IAAI,EAC7D,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAC/B,CACF,CAAC;YAEF,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CACzB,IAAI,kEAA8B,CAAC,eAAe,EAAE,CAAC,CAAC,EACtD,IAAI,CAAC,OAAO,CACb,CAAC;YAEF,IAAI,CAAC,CAAC,CAAC,YAAY,sCAAiB,CAAC,EAAE,CAAC;gBACtC,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,SAAG,CAAC,MAAM,CACR,mCAAmC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,GAAG,EAC9D;oBACE,KAAK,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;oBACjD,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,OAAO,CAAC;oBAChD,UAAU,EAAE,eAAe,CAAC,UAAU;iBACvC,CACF,CACF,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,CAAC,wBAAwB,CAAC,WAAW,CAC7C,IAAI,oCAAgB,CAClB,CAAC,EACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EACxB,eAAe,CAAC,OAAO,EACvB,eAAe,CAAC,UAAU,CAC3B,CACF,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AA/ED,gDA+EC"}
|
|
@@ -19,14 +19,8 @@ const service_1 = require("../dependency-injection/service");
|
|
|
19
19
|
const channel_registry_1 = require("../channel/channel.registry");
|
|
20
20
|
const in_memory_channel_1 = require("../channel/in-memory.channel");
|
|
21
21
|
const decorator_1 = require("../dependency-injection/decorator");
|
|
22
|
-
const consumer_message_mediator_1 = require("./consumer-message-mediator");
|
|
23
|
-
const default_message_options_1 = require("../message/default-message-options");
|
|
24
|
-
const consumer_dispatched_message_error_1 = require("./consumer-dispatched-message-error");
|
|
25
|
-
const sealed_routing_message_1 = require("../message/sealed-routing-message");
|
|
26
|
-
const log_1 = require("../logger/log");
|
|
27
|
-
const handlers_exception_1 = require("../exception/handlers.exception");
|
|
28
22
|
const exception_listener_handler_1 = require("../exception-listener/exception-listener-handler");
|
|
29
|
-
const
|
|
23
|
+
const consumer_message_bus_1 = require("../bus/consumer.message-bus");
|
|
30
24
|
let DistributedConsumer = class DistributedConsumer {
|
|
31
25
|
constructor(messageBus, channelRegistry, exceptionListenerHandler, logger, discoveryService) {
|
|
32
26
|
this.messageBus = messageBus;
|
|
@@ -54,31 +48,9 @@ let DistributedConsumer = class DistributedConsumer {
|
|
|
54
48
|
if (channelConsumer.length !== 1) {
|
|
55
49
|
throw new Error(`Consumer for channel ${channel.constructor.name} does not found`);
|
|
56
50
|
}
|
|
57
|
-
const mediator = new consumer_message_mediator_1.ConsumerMessageMediator();
|
|
58
51
|
const consumer = channelConsumer[0].instance;
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
try {
|
|
62
|
-
this.logger.debug(log_1.Log.create(`[${channel.config.name}] Message handled with routing key: [${consumerMessage.routingKey}]`, {
|
|
63
|
-
message: JSON.stringify(consumerMessage.message),
|
|
64
|
-
}));
|
|
65
|
-
const middlewares = channel.config
|
|
66
|
-
.middlewares;
|
|
67
|
-
const routingMessage = new sealed_routing_message_1.SealedRoutingMessage(consumerMessage.message, consumerMessage.routingKey).createWithOptions(new default_message_options_1.DefaultMessageOptions(middlewares, channel.config?.avoidErrorsForNotExistedHandlers ?? true, channel.config.normalizer));
|
|
68
|
-
await this.messageBus.dispatch(routingMessage);
|
|
69
|
-
}
|
|
70
|
-
catch (e) {
|
|
71
|
-
await consumer.onError(new consumer_dispatched_message_error_1.ConsumerDispatchedMessageError(consumerMessage, e), channel);
|
|
72
|
-
if (!(e instanceof handlers_exception_1.HandlersException)) {
|
|
73
|
-
this.logger.error(log_1.Log.create(`Some error occurred in channel [${channel.config.name}]`, {
|
|
74
|
-
error: e instanceof Error ? e.message : String(e),
|
|
75
|
-
message: JSON.stringify(consumerMessage.message),
|
|
76
|
-
routingKey: consumerMessage.routingKey,
|
|
77
|
-
}));
|
|
78
|
-
}
|
|
79
|
-
await this.exceptionListenerHandler.handleError(new exception_context_1.ExceptionContext(e, channel.config.name, consumerMessage.message, consumerMessage.routingKey));
|
|
80
|
-
}
|
|
81
|
-
});
|
|
52
|
+
const dispatcher = new consumer_message_bus_1.ConsumerMessageBus(this.messageBus, channel, this.logger, consumer, this.exceptionListenerHandler);
|
|
53
|
+
await consumer.consume(dispatcher, channel);
|
|
82
54
|
this.logger.log(`Consumer for channel [${channel.config.name}] is ready to handle messages`);
|
|
83
55
|
}
|
|
84
56
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"distributed.consumer.js","sourceRoot":"","sources":["../../src/consumer/distributed.consumer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAwC;AACxC,uCAAgD;AAChD,6DAA0D;AAE1D,kEAA8D;AAE9D,oEAA+D;AAC/D,iEAA8E;
|
|
1
|
+
{"version":3,"file":"distributed.consumer.js","sourceRoot":"","sources":["../../src/consumer/distributed.consumer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAAwC;AACxC,uCAAgD;AAChD,6DAA0D;AAE1D,kEAA8D;AAE9D,oEAA+D;AAC/D,iEAA8E;AAE9E,iGAA4F;AAC5F,sEAAiE;AAEjE,IAAa,mBAAmB,GAAhC,MAAa,mBAAmB;IAC9B,YAEmB,UAAuB,EAEvB,eAAgC,EAEhC,wBAAkD,EAC1B,MAAuB,EAC/C,gBAAkC;QANlC,eAAU,GAAV,UAAU,CAAa;QAEvB,oBAAe,GAAf,eAAe,CAAiB;QAEhC,6BAAwB,GAAxB,wBAAwB,CAA0B;QAC1B,WAAM,GAAN,MAAM,CAAiB;QAC/C,qBAAgB,GAAhB,gBAAgB,CAAkB;IAErD,CAAC;IAED,KAAK,CAAC,GAAG;QACP,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,EAAE,CAAC;YACpD,IACE,OAAO,YAAY,mCAAe;gBAClC,KAAK,KAAK,OAAO,CAAC,MAAM,CAAC,cAAc,EACvC,CAAC;gBACD,SAAS;YACX,CAAC;YAED,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB;iBAC1C,YAAY,EAAE;iBACd,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACnB,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;oBACvB,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,OAAO,OAAO,CAAC,WAAW,CACxB,qCAAyB,EACzB,QAAQ,CAAC,QAAQ,CAClB,CAAC;YACJ,CAAC,CAAC;iBACD,MAAM,CACL,CAAC,QAAQ,EAAE,EAAE,CACX,OAAO,CAAC,WAAW,CAAC,qCAAyB,EAAE,QAAQ,CAAC,QAAQ,CAAC;iBAC9D,IAAI,KAAK,OAAO,CAAC,WAAW,CAAC,IAAI,CACvC,CAAC;YAEJ,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CACb,wBAAwB,OAAO,CAAC,WAAW,CAAC,IAAI,iBAAiB,CAClE,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAA4B,eAAe,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;YAEtE,MAAM,UAAU,GAAG,IAAI,yCAAkB,CACvC,IAAI,CAAC,UAAU,EACf,OAAO,EACP,IAAI,CAAC,MAAM,EACX,QAAQ,EACR,IAAI,CAAC,wBAAwB,CAC9B,CAAC;YAEF,MAAM,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAE5C,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,yBAAyB,OAAO,CAAC,MAAM,CAAC,IAAI,+BAA+B,CAC5E,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAA;AA/DY,kDAAmB;8BAAnB,mBAAmB;IAE3B,WAAA,IAAA,eAAM,EAAC,iBAAO,CAAC,mBAAmB,CAAC,CAAA;IAEnC,WAAA,IAAA,eAAM,EAAC,iBAAO,CAAC,gBAAgB,CAAC,CAAA;IAEhC,WAAA,IAAA,eAAM,EAAC,iBAAO,CAAC,0BAA0B,CAAC,CAAA;IAE1C,WAAA,IAAA,eAAM,EAAC,iBAAO,CAAC,MAAM,CAAC,CAAA;6CAHW,kCAAe;QAEN,qDAAwB,UAEhC,uBAAgB;GAT1C,mBAAmB,CA+D/B"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ConsumerMessageDispatcher } from './consumer-message-dispatcher';
|
|
2
1
|
import { ConsumerDispatchedMessageError } from './consumer-dispatched-message-error';
|
|
2
|
+
import { ConsumerMessageBus } from '../bus/consumer.message-bus';
|
|
3
3
|
export interface IMessagingConsumer<T> {
|
|
4
|
-
consume(dispatcher:
|
|
4
|
+
consume(dispatcher: ConsumerMessageBus, channel: T): Promise<void>;
|
|
5
5
|
onError(errored: ConsumerDispatchedMessageError, channel: T): Promise<void>;
|
|
6
6
|
}
|
package/lib/index.d.ts
CHANGED
|
@@ -2,13 +2,12 @@ export * from './messaging.module';
|
|
|
2
2
|
export * from './config';
|
|
3
3
|
export * from './consumer/i-messaging-consumer';
|
|
4
4
|
export * from './consumer/consumer-message';
|
|
5
|
-
export * from './consumer/consumer-message-dispatcher';
|
|
6
5
|
export * from './consumer/consumer-dispatched-message-error';
|
|
7
|
-
export * from './consumer/consumer-message-mediator';
|
|
8
6
|
export * from './dependency-injection/decorator';
|
|
9
7
|
export * from './dependency-injection/injectable';
|
|
10
8
|
export * from './handler/i-message.handler';
|
|
11
9
|
export * from './bus/i-message-bus.factory';
|
|
10
|
+
export * from './bus/consumer.message-bus';
|
|
12
11
|
export * from './bus/i-message-bus';
|
|
13
12
|
export * from './bus/in-memory-message.bus';
|
|
14
13
|
export * from './message/default-message-options';
|
package/lib/index.js
CHANGED
|
@@ -18,13 +18,12 @@ __exportStar(require("./messaging.module"), exports);
|
|
|
18
18
|
__exportStar(require("./config"), exports);
|
|
19
19
|
__exportStar(require("./consumer/i-messaging-consumer"), exports);
|
|
20
20
|
__exportStar(require("./consumer/consumer-message"), exports);
|
|
21
|
-
__exportStar(require("./consumer/consumer-message-dispatcher"), exports);
|
|
22
21
|
__exportStar(require("./consumer/consumer-dispatched-message-error"), exports);
|
|
23
|
-
__exportStar(require("./consumer/consumer-message-mediator"), exports);
|
|
24
22
|
__exportStar(require("./dependency-injection/decorator"), exports);
|
|
25
23
|
__exportStar(require("./dependency-injection/injectable"), exports);
|
|
26
24
|
__exportStar(require("./handler/i-message.handler"), exports);
|
|
27
25
|
__exportStar(require("./bus/i-message-bus.factory"), exports);
|
|
26
|
+
__exportStar(require("./bus/consumer.message-bus"), exports);
|
|
28
27
|
__exportStar(require("./bus/i-message-bus"), exports);
|
|
29
28
|
__exportStar(require("./bus/in-memory-message.bus"), exports);
|
|
30
29
|
__exportStar(require("./message/default-message-options"), exports);
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,2CAAyB;AACzB,kEAAgD;AAChD,8DAA4C;AAC5C
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,2CAAyB;AACzB,kEAAgD;AAChD,8DAA4C;AAC5C,+EAA6D;AAC7D,mEAAiD;AACjD,oEAAkD;AAClD,8DAA4C;AAC5C,8DAA4C;AAC5C,6DAA2C;AAC3C,sDAAoC;AACpC,8DAA4C;AAC5C,oEAAkD;AAClD,4DAA0C;AAC1C,4DAA0C;AAC1C,oDAAkC;AAClC,6DAA2C;AAC3C,8EAA4D;AAC5D,8EAA4D;AAC5D,8DAA4C;AAC5C,oDAAkC;AAClC,0DAAwC;AACxC,wEAAsD;AACtD,+EAA6D;AAC7D,kEAAgD;AAChD,kEAAgD;AAChD,kEAAgD;AAChD,0EAAwD;AACxD,yEAAuD;AACvD,iEAA+C;AAC/C,+CAA6B;AAC7B,4DAA0C;AAC1C,uDAAqC"}
|