@ddticketing/common 1.0.3 → 1.0.4

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.
@@ -0,0 +1,17 @@
1
+ import { Subjects } from './subjects';
2
+ export interface TicketEventData {
3
+ id: string;
4
+ title: string;
5
+ price: number;
6
+ }
7
+ export declare abstract class AbstractListener {
8
+ abstract subject: Subjects;
9
+ abstract queueGroupName: string;
10
+ protected client: any;
11
+ constructor(client: any);
12
+ abstract onMessage(data: TicketEventData): void;
13
+ protected subscriptionOptions(): any;
14
+ listen(): void;
15
+ protected parseMessage(message: any): TicketEventData;
16
+ }
17
+ //# sourceMappingURL=abstract-listener.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstract-listener.d.ts","sourceRoot":"","sources":["../../src/events/abstract-listener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd;AAED,8BAAsB,gBAAgB;IACpC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAA;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAA;IAE/B,SAAS,CAAC,MAAM,EAAE,GAAG,CAAA;gBAET,MAAM,EAAE,GAAG;IAIvB,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI;IAE/C,SAAS,CAAC,mBAAmB,IAAI,GAAG;IAUpC,MAAM,IAAI,IAAI;IAgBd,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,GAAG,eAAe;CAiBtD"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AbstractListener = void 0;
4
+ class AbstractListener {
5
+ client;
6
+ constructor(client) {
7
+ this.client = client;
8
+ }
9
+ subscriptionOptions() {
10
+ const options = this.client.subscriptionOptions();
11
+ options.setDeliverAllAvailable();
12
+ options.setManualAckMode(true);
13
+ options.setAckWait(5 * 1000);
14
+ return options;
15
+ }
16
+ listen() {
17
+ const subscription = this.client.subscribe(this.subject, this.queueGroupName, this.subscriptionOptions());
18
+ subscription.on('message', (msg) => {
19
+ const data = this.parseMessage(msg);
20
+ this.onMessage(data);
21
+ if (typeof msg.ack === 'function') {
22
+ msg.ack();
23
+ }
24
+ });
25
+ }
26
+ parseMessage(message) {
27
+ const rawData = typeof message === 'string'
28
+ ? message
29
+ : message && typeof message.getData === 'function'
30
+ ? message.getData()
31
+ : message;
32
+ const parsedDataString = typeof rawData === 'string'
33
+ ? rawData
34
+ : rawData && typeof rawData.toString === 'function'
35
+ ? rawData.toString()
36
+ : JSON.stringify(rawData);
37
+ return JSON.parse(parsedDataString);
38
+ }
39
+ }
40
+ exports.AbstractListener = AbstractListener;
41
+ //# sourceMappingURL=abstract-listener.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstract-listener.js","sourceRoot":"","sources":["../../src/events/abstract-listener.ts"],"names":[],"mappings":";;;AAQA,MAAsB,gBAAgB;IAI1B,MAAM,CAAK;IAErB,YAAY,MAAW;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAIS,mBAAmB;QAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAA;QAEjD,OAAO,CAAC,sBAAsB,EAAE,CAAA;QAChC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAC9B,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;QAE5B,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,MAAM;QACJ,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CACxC,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,mBAAmB,EAAE,CAC3B,CAAA;QAED,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAQ,EAAE,EAAE;YACtC,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;YACnC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;YACpB,IAAI,OAAO,GAAG,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;gBAClC,GAAG,CAAC,GAAG,EAAE,CAAA;YACX,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAES,YAAY,CAAC,OAAY;QACjC,MAAM,OAAO,GACX,OAAO,OAAO,KAAK,QAAQ;YACzB,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,OAAO,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,UAAU;gBAClD,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE;gBACnB,CAAC,CAAC,OAAO,CAAA;QAEb,MAAM,gBAAgB,GACpB,OAAO,OAAO,KAAK,QAAQ;YACzB,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,OAAO,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;gBACnD,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE;gBACpB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;QAE7B,OAAO,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAoB,CAAA;IACxD,CAAC;CACF;AAvDD,4CAuDC"}
@@ -0,0 +1,9 @@
1
+ import { Subjects } from './subjects';
2
+ export declare abstract class AbstractPublisher<T> {
3
+ abstract subject: Subjects;
4
+ protected client: any;
5
+ constructor(client: any);
6
+ publish(data: T): Promise<void>;
7
+ protected serialize(data: T): string;
8
+ }
9
+ //# sourceMappingURL=abstract-publisher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstract-publisher.d.ts","sourceRoot":"","sources":["../../src/events/abstract-publisher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,8BAAsB,iBAAiB,CAAC,CAAC;IACvC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAA;IAE1B,SAAS,CAAC,MAAM,EAAE,GAAG,CAAA;gBAET,MAAM,EAAE,GAAG;IAIvB,OAAO,CAAC,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAe/B,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM;CAGrC"}
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AbstractPublisher = void 0;
4
+ class AbstractPublisher {
5
+ client;
6
+ constructor(client) {
7
+ this.client = client;
8
+ }
9
+ publish(data) {
10
+ return new Promise((resolve, reject) => {
11
+ const serializedData = this.serialize(data);
12
+ this.client.publish(this.subject, serializedData, (err) => {
13
+ if (err) {
14
+ return reject(err);
15
+ }
16
+ resolve();
17
+ });
18
+ });
19
+ }
20
+ serialize(data) {
21
+ return JSON.stringify(data);
22
+ }
23
+ }
24
+ exports.AbstractPublisher = AbstractPublisher;
25
+ //# sourceMappingURL=abstract-publisher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstract-publisher.js","sourceRoot":"","sources":["../../src/events/abstract-publisher.ts"],"names":[],"mappings":";;;AAEA,MAAsB,iBAAiB;IAG3B,MAAM,CAAK;IAErB,YAAY,MAAW;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAED,OAAO,CAAC,IAAO;QACb,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAErC,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;YAE3C,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,CAAC,GAAiB,EAAE,EAAE;gBACtE,IAAI,GAAG,EAAE,CAAC;oBACR,OAAO,MAAM,CAAC,GAAG,CAAC,CAAA;gBACpB,CAAC;gBAED,OAAO,EAAE,CAAA;YACX,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAES,SAAS,CAAC,IAAO;QACzB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IAC7B,CAAC;CACF;AA3BD,8CA2BC"}
@@ -0,0 +1,5 @@
1
+ export declare enum Subjects {
2
+ TicketCreated = "ticketCreated",
3
+ TicketUpdated = "ticketUpdated"
4
+ }
5
+ //# sourceMappingURL=subjects.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subjects.d.ts","sourceRoot":"","sources":["../../src/events/subjects.ts"],"names":[],"mappings":"AACA,oBAAY,QAAQ;IAClB,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;CAChC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Subjects = void 0;
4
+ var Subjects;
5
+ (function (Subjects) {
6
+ Subjects["TicketCreated"] = "ticketCreated";
7
+ Subjects["TicketUpdated"] = "ticketUpdated";
8
+ })(Subjects || (exports.Subjects = Subjects = {}));
9
+ //# sourceMappingURL=subjects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subjects.js","sourceRoot":"","sources":["../../src/events/subjects.ts"],"names":[],"mappings":";;;AACA,IAAY,QAGX;AAHD,WAAY,QAAQ;IAClB,2CAA+B,CAAA;IAC/B,2CAA+B,CAAA;AACjC,CAAC,EAHW,QAAQ,wBAAR,QAAQ,QAGnB"}
@@ -0,0 +1,11 @@
1
+ import { Subjects } from './subjects';
2
+ export interface TicketCreatedEvent {
3
+ subject: Subjects.TicketCreated;
4
+ data: {
5
+ id: string;
6
+ title: string;
7
+ price: number;
8
+ userId: string;
9
+ };
10
+ }
11
+ //# sourceMappingURL=ticket-created-event.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ticket-created-event.d.ts","sourceRoot":"","sources":["../../src/events/ticket-created-event.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,QAAQ,CAAC,aAAa,CAAA;IAC/B,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,CAAA;QACV,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;QACb,MAAM,EAAE,MAAM,CAAA;KACf,CAAA;CACF"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=ticket-created-event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ticket-created-event.js","sourceRoot":"","sources":["../../src/events/ticket-created-event.ts"],"names":[],"mappings":""}
@@ -0,0 +1,12 @@
1
+ import { Subjects } from './subjects';
2
+ export interface TicketUpdatedEvent {
3
+ subject: Subjects.TicketUpdated;
4
+ data: {
5
+ id: string;
6
+ title: string;
7
+ price: number;
8
+ userId: string;
9
+ version: number;
10
+ };
11
+ }
12
+ //# sourceMappingURL=ticket-updated-event.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ticket-updated-event.d.ts","sourceRoot":"","sources":["../../src/events/ticket-updated-event.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,QAAQ,CAAC,aAAa,CAAA;IAC/B,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,CAAA;QACV,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;QACb,MAAM,EAAE,MAAM,CAAA;QACd,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;CACF"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=ticket-updated-event.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ticket-updated-event.js","sourceRoot":"","sources":["../../src/events/ticket-updated-event.ts"],"names":[],"mappings":""}
package/dist/index.d.ts CHANGED
@@ -8,4 +8,9 @@ export * from './middleware/current-user';
8
8
  export * from './middleware/errorHandller';
9
9
  export * from './middleware/require-auth';
10
10
  export * from './middleware/validate-request';
11
+ export * from './events/abstract-listener';
12
+ export * from './events/abstract-publisher';
13
+ export * from './events/subjects';
14
+ export * from './events/ticket-created-event';
15
+ export * from './events/ticket-updated-event';
11
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAA;AAC1C,cAAc,uBAAuB,CAAA;AACrC,cAAc,qCAAqC,CAAA;AACnD,cAAc,2BAA2B,CAAA;AACzC,cAAc,oCAAoC,CAAA;AAClD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,2BAA2B,CAAA;AACzC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,2BAA2B,CAAA;AACzC,cAAc,+BAA+B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAA;AAC1C,cAAc,uBAAuB,CAAA;AACrC,cAAc,qCAAqC,CAAA;AACnD,cAAc,2BAA2B,CAAA;AACzC,cAAc,oCAAoC,CAAA;AAClD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,2BAA2B,CAAA;AACzC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,2BAA2B,CAAA;AACzC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,mBAAmB,CAAA;AACjC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,+BAA+B,CAAA"}
package/dist/index.js CHANGED
@@ -24,4 +24,9 @@ __exportStar(require("./middleware/current-user"), exports);
24
24
  __exportStar(require("./middleware/errorHandller"), exports);
25
25
  __exportStar(require("./middleware/require-auth"), exports);
26
26
  __exportStar(require("./middleware/validate-request"), exports);
27
+ __exportStar(require("./events/abstract-listener"), exports);
28
+ __exportStar(require("./events/abstract-publisher"), exports);
29
+ __exportStar(require("./events/subjects"), exports);
30
+ __exportStar(require("./events/ticket-created-event"), exports);
31
+ __exportStar(require("./events/ticket-updated-event"), exports);
27
32
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA0C;AAC1C,wDAAqC;AACrC,sEAAmD;AACnD,4DAAyC;AACzC,qEAAkD;AAClD,gEAA6C;AAC7C,4DAAyC;AACzC,6DAA0C;AAC1C,4DAAyC;AACzC,gEAA6C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6DAA0C;AAC1C,wDAAqC;AACrC,sEAAmD;AACnD,4DAAyC;AACzC,qEAAkD;AAClD,gEAA6C;AAC7C,4DAAyC;AACzC,6DAA0C;AAC1C,4DAAyC;AACzC,gEAA6C;AAC7C,6DAA0C;AAC1C,8DAA2C;AAC3C,oDAAiC;AACjC,gEAA6C;AAC7C,gEAA6C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ddticketing/common",
3
- "version": "1.0.3",
3
+ "version": "1.0.4",
4
4
  "main": "./dist/index.js",
5
5
  "type": "commonjs",
6
6
  "types": "./dist/index.d.ts",