legend-transactional 2.1.1 → 2.2.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/dist/index.d.mts CHANGED
@@ -280,6 +280,10 @@ interface EventPayload {
280
280
  endDate: string;
281
281
  maxPlayersClaimingReward: number;
282
282
  timeToReward: number;
283
+ notificationConfig?: {
284
+ customEmails?: string[];
285
+ templateName: string;
286
+ };
283
287
  };
284
288
  /**
285
289
  * Event to set a mission in progress
@@ -321,6 +325,23 @@ interface EventPayload {
321
325
  'legend_rankings.rankings_finished': {
322
326
  completedRankings: CompletedRanking[];
323
327
  };
328
+ /**
329
+ * Event to notify when a ranking is created
330
+ */
331
+ 'legend_rankings.new_ranking_created': {
332
+ title: string;
333
+ description: string;
334
+ authorEmail: string;
335
+ rewardType: string;
336
+ endsAt: string;
337
+ nftBlockchainNetwork?: string;
338
+ nftContractAddress?: string;
339
+ walletCryptoAsset?: string;
340
+ notificationConfig?: {
341
+ customEmails?: string[];
342
+ templateName: string;
343
+ };
344
+ };
324
345
  /**
325
346
  * Event triggered when a product virtual is deleted
326
347
  */
@@ -424,10 +445,12 @@ declare const microserviceEvent: {
424
445
  readonly 'LEGEND_MISSIONS.COMPLETED_MISSION_REWARD': "legend_missions.completed_mission_reward";
425
446
  readonly 'LEGEND_MISSIONS.NEW_MISSION_CREATED': "legend_missions.new_mission_created";
426
447
  readonly 'LEGEND_MISSIONS.ONGOING_MISSION': "legend_missions.ongoing_mission";
448
+ readonly 'LEGEND_MISSIONS.MISSION_FINISHED': "legend_missions.mission_finished";
427
449
  readonly 'LEGEND_MISSIONS.SEND_EMAIL_CRYPTO_MISSION_COMPLETED': "legend_missions.send_email_crypto_mission_completed";
428
450
  readonly 'LEGEND_MISSIONS.SEND_EMAIL_CODE_EXCHANGE_MISSION_COMPLETED': "legend_missions.send_email_code_exchange_mission_completed";
429
451
  readonly 'LEGEND_MISSIONS.SEND_EMAIL_NFT_MISSION_COMPLETED': "legend_missions.send_email_nft_mission_completed";
430
452
  readonly 'LEGEND_RANKINGS.RANKINGS_FINISHED': "legend_rankings.rankings_finished";
453
+ readonly 'LEGEND_RANKINGS.NEW_RANKING_CREATED': "legend_rankings.new_ranking_created";
431
454
  readonly 'LEGEND_SHOWCASE.PRODUCT_VIRTUAL_DELETED': "legend_showcase.product_virtual_deleted";
432
455
  readonly 'LEGEND_SHOWCASE.UPDATE_ALLOWED_MISSION_SUBSCRIPTION_IDS': "legend_showcase.update_allowed_mission_subscription_ids";
433
456
  readonly 'LEGEND_SHOWCASE.UPDATE_ALLOWED_RANKING_SUBSCRIPTION_IDS': "legend_showcase.update_allowed_ranking_subscription_ids";
@@ -553,7 +576,7 @@ declare class EventsConsumeChannel extends ConsumeChannel {
553
576
  * Represents handlers for events emitted by a microservice.
554
577
  */
555
578
  interface EventsHandler<T extends MicroserviceEvent> {
556
- payload: EventPayload[T];
579
+ payload: EventPayload[T & keyof EventPayload];
557
580
  channel: EventsConsumeChannel;
558
581
  }
559
582
  /**
@@ -1350,7 +1373,7 @@ declare const commenceSaga: <U extends SagaTitle>(sagaTitle: U, payload: SagaCom
1350
1373
  *
1351
1374
  * @see MicroserviceEvent
1352
1375
  */
1353
- declare const publishEvent: <T extends MicroserviceEvent>(msg: EventPayload[T], event: T) => Promise<void>;
1376
+ declare const publishEvent: <T extends MicroserviceEvent>(msg: EventPayload[T & keyof EventPayload], event: T) => Promise<void>;
1354
1377
 
1355
1378
  /**
1356
1379
  * Get the _**consume**_ channel for consuming messages from RabbitMQ.
package/dist/index.d.ts CHANGED
@@ -280,6 +280,10 @@ interface EventPayload {
280
280
  endDate: string;
281
281
  maxPlayersClaimingReward: number;
282
282
  timeToReward: number;
283
+ notificationConfig?: {
284
+ customEmails?: string[];
285
+ templateName: string;
286
+ };
283
287
  };
284
288
  /**
285
289
  * Event to set a mission in progress
@@ -321,6 +325,23 @@ interface EventPayload {
321
325
  'legend_rankings.rankings_finished': {
322
326
  completedRankings: CompletedRanking[];
323
327
  };
328
+ /**
329
+ * Event to notify when a ranking is created
330
+ */
331
+ 'legend_rankings.new_ranking_created': {
332
+ title: string;
333
+ description: string;
334
+ authorEmail: string;
335
+ rewardType: string;
336
+ endsAt: string;
337
+ nftBlockchainNetwork?: string;
338
+ nftContractAddress?: string;
339
+ walletCryptoAsset?: string;
340
+ notificationConfig?: {
341
+ customEmails?: string[];
342
+ templateName: string;
343
+ };
344
+ };
324
345
  /**
325
346
  * Event triggered when a product virtual is deleted
326
347
  */
@@ -424,10 +445,12 @@ declare const microserviceEvent: {
424
445
  readonly 'LEGEND_MISSIONS.COMPLETED_MISSION_REWARD': "legend_missions.completed_mission_reward";
425
446
  readonly 'LEGEND_MISSIONS.NEW_MISSION_CREATED': "legend_missions.new_mission_created";
426
447
  readonly 'LEGEND_MISSIONS.ONGOING_MISSION': "legend_missions.ongoing_mission";
448
+ readonly 'LEGEND_MISSIONS.MISSION_FINISHED': "legend_missions.mission_finished";
427
449
  readonly 'LEGEND_MISSIONS.SEND_EMAIL_CRYPTO_MISSION_COMPLETED': "legend_missions.send_email_crypto_mission_completed";
428
450
  readonly 'LEGEND_MISSIONS.SEND_EMAIL_CODE_EXCHANGE_MISSION_COMPLETED': "legend_missions.send_email_code_exchange_mission_completed";
429
451
  readonly 'LEGEND_MISSIONS.SEND_EMAIL_NFT_MISSION_COMPLETED': "legend_missions.send_email_nft_mission_completed";
430
452
  readonly 'LEGEND_RANKINGS.RANKINGS_FINISHED': "legend_rankings.rankings_finished";
453
+ readonly 'LEGEND_RANKINGS.NEW_RANKING_CREATED': "legend_rankings.new_ranking_created";
431
454
  readonly 'LEGEND_SHOWCASE.PRODUCT_VIRTUAL_DELETED': "legend_showcase.product_virtual_deleted";
432
455
  readonly 'LEGEND_SHOWCASE.UPDATE_ALLOWED_MISSION_SUBSCRIPTION_IDS': "legend_showcase.update_allowed_mission_subscription_ids";
433
456
  readonly 'LEGEND_SHOWCASE.UPDATE_ALLOWED_RANKING_SUBSCRIPTION_IDS': "legend_showcase.update_allowed_ranking_subscription_ids";
@@ -553,7 +576,7 @@ declare class EventsConsumeChannel extends ConsumeChannel {
553
576
  * Represents handlers for events emitted by a microservice.
554
577
  */
555
578
  interface EventsHandler<T extends MicroserviceEvent> {
556
- payload: EventPayload[T];
579
+ payload: EventPayload[T & keyof EventPayload];
557
580
  channel: EventsConsumeChannel;
558
581
  }
559
582
  /**
@@ -1350,7 +1373,7 @@ declare const commenceSaga: <U extends SagaTitle>(sagaTitle: U, payload: SagaCom
1350
1373
  *
1351
1374
  * @see MicroserviceEvent
1352
1375
  */
1353
- declare const publishEvent: <T extends MicroserviceEvent>(msg: EventPayload[T], event: T) => Promise<void>;
1376
+ declare const publishEvent: <T extends MicroserviceEvent>(msg: EventPayload[T & keyof EventPayload], event: T) => Promise<void>;
1354
1377
 
1355
1378
  /**
1356
1379
  * Get the _**consume**_ channel for consuming messages from RabbitMQ.
package/dist/index.js CHANGED
@@ -107,10 +107,12 @@ var microserviceEvent = {
107
107
  "LEGEND_MISSIONS.COMPLETED_MISSION_REWARD": "legend_missions.completed_mission_reward",
108
108
  "LEGEND_MISSIONS.NEW_MISSION_CREATED": "legend_missions.new_mission_created",
109
109
  "LEGEND_MISSIONS.ONGOING_MISSION": "legend_missions.ongoing_mission",
110
+ "LEGEND_MISSIONS.MISSION_FINISHED": "legend_missions.mission_finished",
110
111
  "LEGEND_MISSIONS.SEND_EMAIL_CRYPTO_MISSION_COMPLETED": "legend_missions.send_email_crypto_mission_completed",
111
112
  "LEGEND_MISSIONS.SEND_EMAIL_CODE_EXCHANGE_MISSION_COMPLETED": "legend_missions.send_email_code_exchange_mission_completed",
112
113
  "LEGEND_MISSIONS.SEND_EMAIL_NFT_MISSION_COMPLETED": "legend_missions.send_email_nft_mission_completed",
113
114
  "LEGEND_RANKINGS.RANKINGS_FINISHED": "legend_rankings.rankings_finished",
115
+ "LEGEND_RANKINGS.NEW_RANKING_CREATED": "legend_rankings.new_ranking_created",
114
116
  "LEGEND_SHOWCASE.PRODUCT_VIRTUAL_DELETED": "legend_showcase.product_virtual_deleted",
115
117
  "LEGEND_SHOWCASE.UPDATE_ALLOWED_MISSION_SUBSCRIPTION_IDS": "legend_showcase.update_allowed_mission_subscription_ids",
116
118
  "LEGEND_SHOWCASE.UPDATE_ALLOWED_RANKING_SUBSCRIPTION_IDS": "legend_showcase.update_allowed_ranking_subscription_ids",
package/dist/index.mjs CHANGED
@@ -100,10 +100,12 @@ var microserviceEvent = {
100
100
  "LEGEND_MISSIONS.COMPLETED_MISSION_REWARD": "legend_missions.completed_mission_reward",
101
101
  "LEGEND_MISSIONS.NEW_MISSION_CREATED": "legend_missions.new_mission_created",
102
102
  "LEGEND_MISSIONS.ONGOING_MISSION": "legend_missions.ongoing_mission",
103
+ "LEGEND_MISSIONS.MISSION_FINISHED": "legend_missions.mission_finished",
103
104
  "LEGEND_MISSIONS.SEND_EMAIL_CRYPTO_MISSION_COMPLETED": "legend_missions.send_email_crypto_mission_completed",
104
105
  "LEGEND_MISSIONS.SEND_EMAIL_CODE_EXCHANGE_MISSION_COMPLETED": "legend_missions.send_email_code_exchange_mission_completed",
105
106
  "LEGEND_MISSIONS.SEND_EMAIL_NFT_MISSION_COMPLETED": "legend_missions.send_email_nft_mission_completed",
106
107
  "LEGEND_RANKINGS.RANKINGS_FINISHED": "legend_rankings.rankings_finished",
108
+ "LEGEND_RANKINGS.NEW_RANKING_CREATED": "legend_rankings.new_ranking_created",
107
109
  "LEGEND_SHOWCASE.PRODUCT_VIRTUAL_DELETED": "legend_showcase.product_virtual_deleted",
108
110
  "LEGEND_SHOWCASE.UPDATE_ALLOWED_MISSION_SUBSCRIPTION_IDS": "legend_showcase.update_allowed_mission_subscription_ids",
109
111
  "LEGEND_SHOWCASE.UPDATE_ALLOWED_RANKING_SUBSCRIPTION_IDS": "legend_showcase.update_allowed_ranking_subscription_ids",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "legend-transactional",
3
- "version": "2.1.1",
3
+ "version": "2.2.0",
4
4
  "description": "A simple transactional, event-driven communication framework for microservices using RabbitMQ",
5
5
  "author": "Jorge Clavijo <jym272@gmail.com> (https://github.com/jym272)",
6
6
  "license": "MIT",
@@ -31,7 +31,7 @@
31
31
  "dist"
32
32
  ],
33
33
  "dependencies": {
34
- "amqplib": "^0.10.8",
34
+ "amqplib": "^0.10.9",
35
35
  "@types/amqplib": "^0.10.7",
36
36
  "mitt": "latest"
37
37
  },