@artstesh/postboy 1.0.9 → 1.0.11

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/lib/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from './postboy.service';
2
+ export * from './mocks/postboy-service-mock';
2
3
  export * from './i-postboy-depending.service';
3
4
  export * from './postboy-abstract.registrator';
4
5
  export * from './models/postboy-generic-message';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,mBAAmB,CAAC;AAClC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,cAAc,mBAAmB,CAAC;AAClC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC"}
package/lib/index.js CHANGED
@@ -18,6 +18,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
18
18
  };
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
20
  __exportStar(require("./postboy.service"), exports);
21
+ __exportStar(require("./mocks/postboy-service-mock"), exports);
21
22
  __exportStar(require("./i-postboy-depending.service"), exports);
22
23
  __exportStar(require("./postboy-abstract.registrator"), exports);
23
24
  __exportStar(require("./models/postboy-generic-message"), exports);
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;AAEH,oDAAkC;AAClC,gEAA8C;AAC9C,iEAA+C;AAC/C,mEAAiD;AACjD,oEAAkD;AAClD,0DAAwC;AACxC,4DAA0C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;AAEH,oDAAkC;AAClC,+DAA6C;AAC7C,gEAA8C;AAC9C,iEAA+C;AAC/C,mEAAiD;AACjD,oEAAkD;AAClD,0DAAwC;AACxC,4DAA0C"}
@@ -0,0 +1,19 @@
1
+ import { PostboyService } from '../postboy.service';
2
+ import { Observable } from 'rxjs';
3
+ import { PostboyExecutor } from '../models/postboy-executor';
4
+ import { PostboyGenericMessage } from '../models/postboy-generic-message';
5
+ export declare class PostboyServiceMock extends PostboyService {
6
+ private executions;
7
+ private subscriptions;
8
+ private fires;
9
+ reset(): void;
10
+ fired(id: string, times?: number): boolean;
11
+ executed(id: string, times?: number): boolean;
12
+ subscribed(id: string, times?: number): boolean;
13
+ private count;
14
+ exec<E extends PostboyExecutor<T>, T>(executor: E): T;
15
+ subscribe<T>(id: string): Observable<T>;
16
+ sub<T extends PostboyGenericMessage>(type: new (...args: any[]) => T): Observable<T>;
17
+ fire<T extends PostboyGenericMessage>(message: T): void;
18
+ }
19
+ //# sourceMappingURL=postboy-service-mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postboy-service-mock.d.ts","sourceRoot":"","sources":["../../src/mocks/postboy-service-mock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAE1E,qBAAa,kBAAmB,SAAQ,cAAc;IACpD,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,KAAK,CAAgB;IAE7B,KAAK,IAAI,IAAI;IAMb,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO;IAK7C,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO;IAKhD,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,OAAO;IAKlD,OAAO,CAAC,KAAK,CAAmF;IAEhG,IAAI,CAAC,CAAC,SAAS,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC;IAKrD,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC;IAKhC,GAAG,CAAC,CAAC,SAAS,qBAAqB,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;IAK3F,IAAI,CAAC,CAAC,SAAS,qBAAqB,EAAE,OAAO,EAAE,CAAC;CAIjD"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PostboyServiceMock = void 0;
4
+ const postboy_service_1 = require("../postboy.service");
5
+ class PostboyServiceMock extends postboy_service_1.PostboyService {
6
+ constructor() {
7
+ super(...arguments);
8
+ this.executions = [];
9
+ this.subscriptions = [];
10
+ this.fires = [];
11
+ this.count = (collection, el) => collection.filter((e) => e === el).length;
12
+ }
13
+ reset() {
14
+ this.executions = [];
15
+ this.subscriptions = [];
16
+ this.fires = [];
17
+ }
18
+ fired(id, times = 0) {
19
+ const count = this.count(this.fires, id);
20
+ return !!count && (!times || count === times);
21
+ }
22
+ executed(id, times = 0) {
23
+ const count = this.count(this.executions, id);
24
+ return !!count && (!times || count === times);
25
+ }
26
+ subscribed(id, times = 0) {
27
+ const count = this.count(this.subscriptions, id);
28
+ return !!count && (!times || count === times);
29
+ }
30
+ exec(executor) {
31
+ var _a;
32
+ this.executions.push((_a = executor.id) !== null && _a !== void 0 ? _a : executor.constructor.name);
33
+ return super.exec(executor);
34
+ }
35
+ subscribe(id) {
36
+ this.subscriptions.push(id);
37
+ return super.subscribe(id);
38
+ }
39
+ sub(type) {
40
+ this.subscriptions.push(type.name);
41
+ return super.subscribe(type.name);
42
+ }
43
+ fire(message) {
44
+ var _a;
45
+ this.fires.push((_a = message.id) !== null && _a !== void 0 ? _a : message.constructor.name);
46
+ super.fire(message);
47
+ }
48
+ }
49
+ exports.PostboyServiceMock = PostboyServiceMock;
50
+ //# sourceMappingURL=postboy-service-mock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postboy-service-mock.js","sourceRoot":"","sources":["../../src/mocks/postboy-service-mock.ts"],"names":[],"mappings":";;;AAAA,wDAAoD;AAKpD,MAAa,kBAAmB,SAAQ,gCAAc;IAAtD;;QACU,eAAU,GAAa,EAAE,CAAC;QAC1B,kBAAa,GAAa,EAAE,CAAC;QAC7B,UAAK,GAAa,EAAE,CAAC;QAuBrB,UAAK,GAAG,CAAC,UAAoB,EAAE,EAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;IAqBlG,CAAC;IA1CC,KAAK;QACH,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,EAAU,EAAE,QAAgB,CAAC;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACzC,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,IAAI,KAAK,KAAK,KAAK,CAAC,CAAC;IAChD,CAAC;IAED,QAAQ,CAAC,EAAU,EAAE,QAAgB,CAAC;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QAC9C,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,IAAI,KAAK,KAAK,KAAK,CAAC,CAAC;IAChD,CAAC;IAED,UAAU,CAAC,EAAU,EAAE,QAAgB,CAAC;QACtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;QACjD,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,IAAI,KAAK,KAAK,KAAK,CAAC,CAAC;IAChD,CAAC;IAID,IAAI,CAAkC,QAAW;;QAC/C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAA,QAAQ,CAAC,EAAE,mCAAI,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC/D,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAED,SAAS,CAAI,EAAU;QACrB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5B,OAAO,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAEM,GAAG,CAAkC,IAA+B;QACzE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,OAAO,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,CAAkC,OAAU;;QAC9C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAA,OAAO,CAAC,EAAE,mCAAI,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACxD,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtB,CAAC;CACF;AA/CD,gDA+CC"}
@@ -1,4 +1,4 @@
1
1
  export declare abstract class PostboyExecutor<T> {
2
- abstract id: string;
2
+ get id(): string | undefined;
3
3
  }
4
4
  //# sourceMappingURL=postboy-executor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"postboy-executor.d.ts","sourceRoot":"","sources":["../../src/models/postboy-executor.ts"],"names":[],"mappings":"AAAA,8BAAsB,eAAe,CAAC,CAAC;IACrC,SAAgB,EAAE,EAAE,MAAM,CAAC;CAC5B"}
1
+ {"version":3,"file":"postboy-executor.d.ts","sourceRoot":"","sources":["../../src/models/postboy-executor.ts"],"names":[],"mappings":"AAAA,8BAAsB,eAAe,CAAC,CAAC;IACrC,IAAW,EAAE,IAAI,MAAM,GAAG,SAAS,CAElC;CACF"}
@@ -2,6 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PostboyExecutor = void 0;
4
4
  class PostboyExecutor {
5
+ get id() {
6
+ return undefined;
7
+ }
5
8
  }
6
9
  exports.PostboyExecutor = PostboyExecutor;
7
10
  //# sourceMappingURL=postboy-executor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"postboy-executor.js","sourceRoot":"","sources":["../../src/models/postboy-executor.ts"],"names":[],"mappings":";;;AAAA,MAAsB,eAAe;CAEpC;AAFD,0CAEC"}
1
+ {"version":3,"file":"postboy-executor.js","sourceRoot":"","sources":["../../src/models/postboy-executor.ts"],"names":[],"mappings":";;;AAAA,MAAsB,eAAe;IACnC,IAAW,EAAE;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAJD,0CAIC"}
@@ -1,4 +1,4 @@
1
1
  export declare abstract class PostboyGenericMessage {
2
- abstract id: string;
2
+ get id(): string | undefined;
3
3
  }
4
4
  //# sourceMappingURL=postboy-generic-message.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"postboy-generic-message.d.ts","sourceRoot":"","sources":["../../src/models/postboy-generic-message.ts"],"names":[],"mappings":"AAAA,8BAAsB,qBAAqB;IACzC,SAAgB,EAAE,EAAE,MAAM,CAAC;CAC5B"}
1
+ {"version":3,"file":"postboy-generic-message.d.ts","sourceRoot":"","sources":["../../src/models/postboy-generic-message.ts"],"names":[],"mappings":"AAAA,8BAAsB,qBAAqB;IACzC,IAAW,EAAE,IAAI,MAAM,GAAG,SAAS,CAElC;CACF"}
@@ -2,6 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PostboyGenericMessage = void 0;
4
4
  class PostboyGenericMessage {
5
+ get id() {
6
+ return undefined;
7
+ }
5
8
  }
6
9
  exports.PostboyGenericMessage = PostboyGenericMessage;
7
10
  //# sourceMappingURL=postboy-generic-message.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"postboy-generic-message.js","sourceRoot":"","sources":["../../src/models/postboy-generic-message.ts"],"names":[],"mappings":";;;AAAA,MAAsB,qBAAqB;CAE1C;AAFD,sDAEC"}
1
+ {"version":3,"file":"postboy-generic-message.js","sourceRoot":"","sources":["../../src/models/postboy-generic-message.ts"],"names":[],"mappings":";;;AAAA,MAAsB,qBAAqB;IACzC,IAAW,EAAE;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAJD,sDAIC"}
@@ -7,15 +7,39 @@ export declare abstract class PostboyAbstractRegistrator {
7
7
  private ids;
8
8
  private services;
9
9
  constructor(postboy: PostboyService);
10
- protected registerServices(services: IPostboyDependingService[]): void;
10
+ registerServices(services: IPostboyDependingService[]): void;
11
11
  up(): void;
12
12
  protected abstract _up(): void;
13
- protected registerExecutor<E extends PostboyExecutor<T>, T>(id: string, exec: (e: E) => T): void;
14
- protected register<T>(id: string, sub: Subject<T>): void;
15
- protected registerWithPipe<T>(id: string, sub: Subject<T>, pipe: (s: Subject<T>) => Observable<T>): void;
16
- protected registerReplay: <T>(id: string, bufferSize?: number) => void;
17
- protected registerBehavior: <T>(id: string, initial: T) => void;
18
- protected registerSubject: <T>(id: string) => void;
13
+ /**
14
+ * @deprecated The method should be replaced with recordExecutor<T>
15
+ */
16
+ registerExecutor<E extends PostboyExecutor<T>, T>(id: string, exec: (e: E) => T): void;
17
+ recordExecutor<E extends PostboyExecutor<T>, T>(type: new (...args: any[]) => E, exec: (e: E) => T): void;
18
+ /**
19
+ * @deprecated The method should be replaced with record<T>
20
+ */
21
+ register<T>(id: string, sub: Subject<T>): void;
22
+ /**
23
+ * @deprecated The method should be replaced with recordWithPipe<T>
24
+ */
25
+ registerWithPipe<T>(id: string, sub: Subject<T>, pipe: (s: Subject<T>) => Observable<T>): void;
26
+ /**
27
+ * @deprecated The method should be replaced with recordReplay<T>
28
+ */
29
+ registerReplay: <T>(id: string, bufferSize?: number) => void;
30
+ /**
31
+ * @deprecated The method should be replaced with recordBehavior<T>
32
+ */
33
+ registerBehavior: <T>(id: string, initial: T) => void;
34
+ /**
35
+ * @deprecated The method should be replaced with recordSubject<T>
36
+ */
37
+ registerSubject: <T>(id: string) => void;
19
38
  down(): void;
39
+ record<T>(type: new (...args: any[]) => T, sub: Subject<T>): void;
40
+ recordWithPipe<T>(type: new (...args: any[]) => T, sub: Subject<T>, pipe: (s: Subject<T>) => Observable<T>): void;
41
+ recordReplay: <T>(type: new (...args: any[]) => T, bufferSize?: number) => void;
42
+ recordBehavior: <T>(type: new (...args: any[]) => T, initial: T) => void;
43
+ recordSubject: <T>(type: new (...args: any[]) => T) => void;
20
44
  }
21
45
  //# sourceMappingURL=postboy-abstract.registrator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"postboy-abstract.registrator.d.ts","sourceRoot":"","sources":["../src/postboy-abstract.registrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAmB,UAAU,EAAiB,OAAO,EAAE,MAAM,MAAM,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,8BAAsB,0BAA0B;IAIlC,SAAS,CAAC,OAAO,EAAE,cAAc;IAH7C,OAAO,CAAC,GAAG,CAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAkC;gBAE5B,OAAO,EAAE,cAAc;IAE7C,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE,wBAAwB,EAAE,GAAG,IAAI;IAI/D,EAAE,IAAI,IAAI;IAKjB,SAAS,CAAC,QAAQ,CAAC,GAAG,IAAI,IAAI;IAE9B,SAAS,CAAC,gBAAgB,CAAC,CAAC,SAAS,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI;IAIhG,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI;IAKxD,SAAS,CAAC,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI;IAKxG,SAAS,CAAC,cAAc,UAAW,MAAM,+BAAyE;IAElH,SAAS,CAAC,gBAAgB,UAAW,MAAM,sBAAoE;IAE/G,SAAS,CAAC,eAAe,UAAW,MAAM,UAAyC;IAE5E,IAAI,IAAI,IAAI;CAIpB"}
1
+ {"version":3,"file":"postboy-abstract.registrator.d.ts","sourceRoot":"","sources":["../src/postboy-abstract.registrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAmB,UAAU,EAAiB,OAAO,EAAE,MAAM,MAAM,CAAC;AAC3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,8BAAsB,0BAA0B;IAIlC,SAAS,CAAC,OAAO,EAAE,cAAc;IAH7C,OAAO,CAAC,GAAG,CAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAkC;gBAE5B,OAAO,EAAE,cAAc;IAEtC,gBAAgB,CAAC,QAAQ,EAAE,wBAAwB,EAAE,GAAG,IAAI;IAI5D,EAAE,IAAI,IAAI;IAKjB,SAAS,CAAC,QAAQ,CAAC,GAAG,IAAI,IAAI;IAE9B;;OAEG;IACI,gBAAgB,CAAC,CAAC,SAAS,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI;IAItF,cAAc,CAAC,CAAC,SAAS,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI;IAIhH;;OAEG;IACI,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI;IAKrD;;OAEG;IACI,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI;IAKrG;;OAEG;IACI,cAAc,UAAW,MAAM,+BAAyE;IAE/G;;OAEG;IACI,gBAAgB,UAAW,MAAM,sBAAoE;IAE5G;;OAEG;IACI,eAAe,UAAW,MAAM,UAAyC;IAEzE,IAAI,IAAI,IAAI;IAOZ,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI;IAKjE,cAAc,CAAC,CAAC,EACrB,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAC/B,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,EACf,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,GACrC,IAAI;IAKA,YAAY,0BAA2B,GAAG,EAAE,qCACG;IAE/C,cAAc,0BAA2B,GAAG,EAAE,4BACA;IAE9C,aAAa,0BAA2B,GAAG,EAAE,gBAA+C;CACpG"}
@@ -7,9 +7,21 @@ class PostboyAbstractRegistrator {
7
7
  this.postboy = postboy;
8
8
  this.ids = [];
9
9
  this.services = [];
10
+ /**
11
+ * @deprecated The method should be replaced with recordReplay<T>
12
+ */
10
13
  this.registerReplay = (id, bufferSize = 1) => this.register(id, new rxjs_1.ReplaySubject(bufferSize));
14
+ /**
15
+ * @deprecated The method should be replaced with recordBehavior<T>
16
+ */
11
17
  this.registerBehavior = (id, initial) => this.register(id, new rxjs_1.BehaviorSubject(initial));
18
+ /**
19
+ * @deprecated The method should be replaced with recordSubject<T>
20
+ */
12
21
  this.registerSubject = (id) => this.register(id, new rxjs_1.Subject());
22
+ this.recordReplay = (type, bufferSize = 1) => this.record(type, new rxjs_1.ReplaySubject(bufferSize));
23
+ this.recordBehavior = (type, initial) => this.record(type, new rxjs_1.BehaviorSubject(initial));
24
+ this.recordSubject = (type) => this.record(type, new rxjs_1.Subject());
13
25
  }
14
26
  registerServices(services) {
15
27
  this.services = services;
@@ -18,13 +30,25 @@ class PostboyAbstractRegistrator {
18
30
  this._up();
19
31
  this.services.forEach((s) => s.up());
20
32
  }
33
+ /**
34
+ * @deprecated The method should be replaced with recordExecutor<T>
35
+ */
21
36
  registerExecutor(id, exec) {
22
37
  this.postboy.registerExecutor(id, exec);
23
38
  }
39
+ recordExecutor(type, exec) {
40
+ this.postboy.recordExecutor(type, exec);
41
+ }
42
+ /**
43
+ * @deprecated The method should be replaced with record<T>
44
+ */
24
45
  register(id, sub) {
25
46
  this.ids.push(id);
26
47
  this.postboy.register(id, sub);
27
48
  }
49
+ /**
50
+ * @deprecated The method should be replaced with recordWithPipe<T>
51
+ */
28
52
  registerWithPipe(id, sub, pipe) {
29
53
  this.ids.push(id);
30
54
  this.postboy.registerWithPipe(id, sub, pipe);
@@ -33,6 +57,15 @@ class PostboyAbstractRegistrator {
33
57
  this.services = [];
34
58
  this.ids.forEach((id) => this.postboy.unregister(id));
35
59
  }
60
+ // future
61
+ record(type, sub) {
62
+ this.ids.push(type.name);
63
+ this.postboy.record(type, sub);
64
+ }
65
+ recordWithPipe(type, sub, pipe) {
66
+ this.ids.push(type.name);
67
+ this.postboy.recordWithPipe(type, sub, pipe);
68
+ }
36
69
  }
37
70
  exports.PostboyAbstractRegistrator = PostboyAbstractRegistrator;
38
71
  //# sourceMappingURL=postboy-abstract.registrator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"postboy-abstract.registrator.js","sourceRoot":"","sources":["../src/postboy-abstract.registrator.ts"],"names":[],"mappings":";;;AACA,+BAA2E;AAI3E,MAAsB,0BAA0B;IAI9C,YAAsB,OAAuB;QAAvB,YAAO,GAAP,OAAO,CAAgB;QAHrC,QAAG,GAAa,EAAE,CAAC;QACnB,aAAQ,GAA+B,EAAE,CAAC;QA6BxC,mBAAc,GAAG,CAAI,EAAU,EAAE,UAAU,GAAG,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,oBAAa,CAAI,UAAU,CAAC,CAAC,CAAC;QAExG,qBAAgB,GAAG,CAAI,EAAU,EAAE,OAAU,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,sBAAe,CAAI,OAAO,CAAC,CAAC,CAAC;QAErG,oBAAe,GAAG,CAAI,EAAU,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,cAAO,EAAK,CAAC,CAAC;IA/BnC,CAAC;IAEvC,gBAAgB,CAAC,QAAoC;QAC7D,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAEM,EAAE;QACP,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACvC,CAAC;IAIS,gBAAgB,CAAkC,EAAU,EAAE,IAAiB;QACvF,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;IAES,QAAQ,CAAI,EAAU,EAAE,GAAe;QAC/C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACjC,CAAC;IAES,gBAAgB,CAAI,EAAU,EAAE,GAAe,EAAE,IAAsC;QAC/F,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClB,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IAC/C,CAAC;IAQM,IAAI;QACT,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;IACxD,CAAC;CACF;AAzCD,gEAyCC"}
1
+ {"version":3,"file":"postboy-abstract.registrator.js","sourceRoot":"","sources":["../src/postboy-abstract.registrator.ts"],"names":[],"mappings":"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"}
@@ -2,17 +2,39 @@ import { Observable, Subject } from 'rxjs';
2
2
  import { PostboyGenericMessage } from './models/postboy-generic-message';
3
3
  import { PostboyLocker } from './models/postboy.locker';
4
4
  import { PostboyExecutor } from './models/postboy-executor';
5
+ import { PostboyCallbackMessage } from './models/postboy-callback.message';
5
6
  export declare class PostboyService {
6
7
  private applications;
7
8
  private locker;
8
9
  private executors;
9
10
  addLocker(locker: PostboyLocker): void;
11
+ /**
12
+ * @deprecated The method should be replaced with recordExecutor<T>
13
+ */
10
14
  registerExecutor<E extends PostboyExecutor<T>, T>(id: string, exec: (e: E) => T): void;
15
+ /**
16
+ * @deprecated The method should be replaced with exec<T>
17
+ */
11
18
  execute<E extends PostboyExecutor<T>, T>(executor: E): T;
19
+ /**
20
+ * @deprecated The method should be replaced with record<T>
21
+ */
12
22
  register<T>(id: string, sub: Subject<T>): void;
23
+ /**
24
+ * @deprecated The method should be replaced with recordWithPipe<T>
25
+ */
13
26
  registerWithPipe<T>(id: string, sub: Subject<T>, pipe: (s: Subject<T>) => Observable<T>): void;
14
- unregister<T>(id: string): void;
27
+ unregister(id: string): void;
28
+ /**
29
+ * @deprecated The method should be replaced with sub<T>
30
+ */
15
31
  subscribe<T>(id: string): Observable<T>;
16
- fire<T extends PostboyGenericMessage>(message: T): void;
32
+ fire(message: PostboyGenericMessage): void;
33
+ fireCallback<T>(message: PostboyCallbackMessage<T>, action: (e: T) => void): void;
34
+ sub<T extends PostboyGenericMessage>(type: new (...args: any[]) => T): Observable<T>;
35
+ record<T>(type: new (...args: any[]) => T, sub: Subject<T>): void;
36
+ recordWithPipe<T>(type: new (...args: any[]) => T, sub: Subject<T>, pipe: (s: Subject<T>) => Observable<T>): void;
37
+ recordExecutor<E extends PostboyExecutor<T>, T>(type: new (...args: any[]) => E, exec: (e: E) => T): void;
38
+ exec<T>(executor: PostboyExecutor<T>): T;
17
39
  }
18
40
  //# sourceMappingURL=postboy.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"postboy.service.d.ts","sourceRoot":"","sources":["../src/postboy.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEzE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAGxD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,qBAAa,cAAc;IACzB,OAAO,CAAC,YAAY,CAA8C;IAClE,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,SAAS,CAAsD;IAEhE,SAAS,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAItC,gBAAgB,CAAC,CAAC,SAAS,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI;IAItF,OAAO,CAAC,CAAC,SAAS,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC;IAKxD,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI;IAI9C,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI;IAI9F,UAAU,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI;IAK/B,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC;IAMvC,IAAI,CAAC,CAAC,SAAS,qBAAqB,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI;CAI/D"}
1
+ {"version":3,"file":"postboy.service.d.ts","sourceRoot":"","sources":["../src/postboy.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEzE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAGxD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAE3E,qBAAa,cAAc;IACzB,OAAO,CAAC,YAAY,CAA8C;IAClE,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,SAAS,CAAsD;IAEhE,SAAS,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAI7C;;OAEG;IACI,gBAAgB,CAAC,CAAC,SAAS,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI;IAI7F;;OAEG;IACI,OAAO,CAAC,CAAC,SAAS,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC;IAM/D;;OAEG;IACI,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI;IAIrD;;OAEG;IACI,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI;IAI9F,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAKnC;;OAEG;IACI,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC;IAMvC,IAAI,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI;IAM1C,YAAY,CAAC,CAAC,EAAE,OAAO,EAAE,sBAAsB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI;IAQjF,GAAG,CAAC,CAAC,SAAS,qBAAqB,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;IAMpF,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI;IAIjE,cAAc,CAAC,CAAC,EACrB,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAC/B,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,EACf,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,GACrC,IAAI;IAIA,cAAc,CAAC,CAAC,SAAS,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,IAAI;IAIzG,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC;CAKhD"}
@@ -13,17 +13,31 @@ class PostboyService {
13
13
  addLocker(locker) {
14
14
  this.locker.addLocker(locker);
15
15
  }
16
+ /**
17
+ * @deprecated The method should be replaced with recordExecutor<T>
18
+ */
16
19
  registerExecutor(id, exec) {
17
20
  this.executors.put(id, exec);
18
21
  }
22
+ /**
23
+ * @deprecated The method should be replaced with exec<T>
24
+ */
19
25
  execute(executor) {
20
- if (!this.executors.has(executor.id))
21
- throw new Error(`There is no executor with id ${executor.id}`);
22
- return this.executors.take(executor.id)(executor);
26
+ var _a;
27
+ const id = (_a = executor.id) !== null && _a !== void 0 ? _a : executor.constructor.name;
28
+ if (!this.executors.has(id))
29
+ throw new Error(`There is no executor with id ${id}`);
30
+ return this.executors.take(id)(executor);
23
31
  }
32
+ /**
33
+ * @deprecated The method should be replaced with record<T>
34
+ */
24
35
  register(id, sub) {
25
36
  this.applications.put(id, new postboy_subscription_1.PostboySubscription(sub, (s) => s.asObservable()));
26
37
  }
38
+ /**
39
+ * @deprecated The method should be replaced with recordWithPipe<T>
40
+ */
27
41
  registerWithPipe(id, sub, pipe) {
28
42
  this.applications.put(id, new postboy_subscription_1.PostboySubscription(sub, pipe));
29
43
  }
@@ -32,6 +46,9 @@ class PostboyService {
32
46
  (_b = (_a = this.applications.take(id)) === null || _a === void 0 ? void 0 : _a.sub) === null || _b === void 0 ? void 0 : _b.complete();
33
47
  this.applications.rmv(id);
34
48
  }
49
+ /**
50
+ * @deprecated The method should be replaced with sub<T>
51
+ */
35
52
  subscribe(id) {
36
53
  const application = this.applications.take(id);
37
54
  if (!application)
@@ -39,11 +56,44 @@ class PostboyService {
39
56
  return application.pipe(application.sub);
40
57
  }
41
58
  fire(message) {
42
- var _a, _b;
43
- if (!((_a = this.applications.take(message.id)) === null || _a === void 0 ? void 0 : _a.sub))
44
- throw new Error(`There is no event with id ${message.id}`);
45
- if (this.locker.check(message.id))
46
- (_b = this.applications.take(message.id)) === null || _b === void 0 ? void 0 : _b.sub.next(message);
59
+ var _a, _b, _c;
60
+ const id = (_a = message.id) !== null && _a !== void 0 ? _a : message.constructor.name;
61
+ if (!((_b = this.applications.take(id)) === null || _b === void 0 ? void 0 : _b.sub))
62
+ throw new Error(`There is no event with id ${id}`);
63
+ if (this.locker.check(id))
64
+ (_c = this.applications.take(id)) === null || _c === void 0 ? void 0 : _c.sub.next(message);
65
+ }
66
+ fireCallback(message, action) {
67
+ var _a, _b, _c;
68
+ const id = (_a = message.id) !== null && _a !== void 0 ? _a : message.constructor.name;
69
+ if (!((_b = this.applications.take(id)) === null || _b === void 0 ? void 0 : _b.sub))
70
+ throw new Error(`There is no event with id ${id}`);
71
+ message.result.subscribe(action);
72
+ if (this.locker.check(id))
73
+ (_c = this.applications.take(id)) === null || _c === void 0 ? void 0 : _c.sub.next(message);
74
+ }
75
+ // future
76
+ sub(type) {
77
+ const application = this.applications.take(type.name);
78
+ if (!application)
79
+ throw new Error(`There is no event with id ${type.name}`);
80
+ return application.pipe(application.sub);
81
+ }
82
+ record(type, sub) {
83
+ this.applications.put(type.name, new postboy_subscription_1.PostboySubscription(sub, (s) => s.asObservable()));
84
+ }
85
+ recordWithPipe(type, sub, pipe) {
86
+ this.applications.put(type.name, new postboy_subscription_1.PostboySubscription(sub, pipe));
87
+ }
88
+ recordExecutor(type, exec) {
89
+ this.executors.put(type.name, exec);
90
+ }
91
+ exec(executor) {
92
+ var _a;
93
+ const id = (_a = executor.id) !== null && _a !== void 0 ? _a : executor.constructor.name;
94
+ if (!this.executors.has(id))
95
+ throw new Error(`There is no executor with id ${id}`);
96
+ return this.executors.take(id)(executor);
47
97
  }
48
98
  }
49
99
  exports.PostboyService = PostboyService;
@@ -1 +1 @@
1
- {"version":3,"file":"postboy.service.js","sourceRoot":"","sources":["../src/postboy.service.ts"],"names":[],"mappings":";;;AAEA,iDAA6C;AAE7C,wEAAoE;AACpE,oDAAiD;AAGjD,MAAa,cAAc;IAA3B;QACU,iBAAY,GAAG,IAAI,uBAAU,EAA4B,CAAC;QAC1D,WAAM,GAAG,IAAI,0BAAW,EAAE,CAAC;QAC3B,cAAS,GAAG,IAAI,uBAAU,EAAoC,CAAC;IAsCzE,CAAC;IApCQ,SAAS,CAAC,MAAqB;QACpC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAEM,gBAAgB,CAAkC,EAAU,EAAE,IAAiB;QACpF,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,IAAW,CAAC,CAAC;IACtC,CAAC;IAEM,OAAO,CAAkC,QAAW;QACzD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;QACrG,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAE,CAAC,QAAQ,CAAC,CAAC;IACrD,CAAC;IAEM,QAAQ,CAAI,EAAU,EAAE,GAAe;QAC5C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,0CAAmB,CAAI,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;IACtF,CAAC;IAEM,gBAAgB,CAAI,EAAU,EAAE,GAAe,EAAE,IAAsC;QAC5F,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,0CAAmB,CAAI,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;IACnE,CAAC;IAEM,UAAU,CAAI,EAAU;;QAC7B,MAAA,MAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,0CAAE,GAAG,0CAAE,QAAQ,EAAE,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC;IAEM,SAAS,CAAI,EAAU;QAC5B,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC/C,IAAI,CAAC,WAAW;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,EAAE,EAAE,CAAC,CAAC;QACrE,OAAO,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC;IAEM,IAAI,CAAkC,OAAU;;QACrD,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,0CAAE,GAAG,CAAA;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QACzG,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAAE,MAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,0CAAE,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3F,CAAC;CACF;AAzCD,wCAyCC"}
1
+ {"version":3,"file":"postboy.service.js","sourceRoot":"","sources":["../src/postboy.service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@artstesh/postboy",
3
- "version": "1.0.9",
3
+ "version": "1.0.11",
4
4
  "author": "artstesh",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",