@takentrade/takentrade-libs 1.2.69 → 1.2.71

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.
@@ -18,6 +18,7 @@ export declare enum NatsSubjects {
18
18
  TRANSACTION_GENERATE_RECEIPT = "transaction.receipt.generate",
19
19
  USER_CHECK = "user.check",
20
20
  USER_CREATED = "user.created",
21
+ USER_GET_PREFERENCE = "user.preference.get",
21
22
  NOTIFICATION_UPDATE_TOKEN = "notification.token.update",
22
23
  NOTIFICATION_SEND = "notification.send",
23
24
  NOTIFICATION_GET_ALL = "notification.get.all",
@@ -25,6 +25,7 @@ var NatsSubjects;
25
25
  // User operations
26
26
  NatsSubjects["USER_CHECK"] = "user.check";
27
27
  NatsSubjects["USER_CREATED"] = "user.created";
28
+ NatsSubjects["USER_GET_PREFERENCE"] = "user.preference.get";
28
29
  // Notification operations
29
30
  NatsSubjects["NOTIFICATION_UPDATE_TOKEN"] = "notification.token.update";
30
31
  NatsSubjects["NOTIFICATION_SEND"] = "notification.send";
@@ -1,6 +1,6 @@
1
1
  import { ClientProxy } from '@nestjs/microservices';
2
2
  import { OTPNotificationChannel } from './notification.enum';
3
- import { AccountFreezeEmailData, AccountStatementEmailData, AccountUnfreezeEmailData, AjoCancellationEmailData, AjoContributionEmailData, AjoInviteEmailData, AjoMembershipUpdateEmailData, ContactMessageEmailData, CreditTransactionMailData, CustomMailSendOptions, DebitTransactionMailData, ElectricityEmailData, InvestmentCancellationEmailData, LoanApprovedEmailData, LoanRepaymentConfirmationEmailData, LoanRepaymentFailedEmailData, NewLoanApplicationEmailData, OTPMailData, PasswordResetMailData, ResetTransactionPinEmailData, AjoContributionConfirmationEmailData, InvestmentConfirmationEmailData, SendPushNotificationInput, BaseEmailData, EducationEmailData, EmailVerificationMailData, DeviceVerificationMailData, NewDeviceNotificationData } from './notification.interface';
3
+ import { AccountFreezeEmailData, AccountStatementEmailData, AccountUnfreezeEmailData, AjoCancellationEmailData, AjoContributionEmailData, AjoInviteEmailData, AjoMembershipUpdateEmailData, ContactMessageEmailData, CreditTransactionMailData, CustomMailSendOptions, DebitTransactionMailData, ElectricityEmailData, InvestmentCancellationEmailData, LoanApprovedEmailData, LoanRepaymentConfirmationEmailData, LoanRepaymentFailedEmailData, NewLoanApplicationEmailData, OTPMailData, PasswordResetMailData, ResetTransactionPinEmailData, AjoContributionConfirmationEmailData, InvestmentConfirmationEmailData, SendPushNotificationInput, BaseEmailData, EducationEmailData, EmailVerificationMailData, DeviceVerificationMailData, NewDeviceNotificationData, SubAccountReportEmailData } from './notification.interface';
4
4
  export declare class NotificationClient {
5
5
  private readonly natsClient;
6
6
  constructor(natsClient: ClientProxy);
@@ -50,6 +50,13 @@ export declare class NotificationClient {
50
50
  sendEducationPurchaseEmail(to: string, data: Omit<EducationEmailData, keyof BaseEmailData>): Promise<void>;
51
51
  sendDeviceVerificationEmail(to: string, data: Omit<DeviceVerificationMailData, keyof BaseEmailData>): Promise<void>;
52
52
  sendNewDeviceNotificationEmail(to: string, data: Omit<NewDeviceNotificationData, keyof BaseEmailData>): Promise<void>;
53
+ sendNewDeviceNotification(to: string, data: NewDeviceNotificationData): Promise<void>;
54
+ /**
55
+ * Sends a sub-account report email with the provided data
56
+ * @param to Recipient email address
57
+ * @param data Sub-account report data
58
+ */
59
+ sendSubAccountReportEmail(to: string, data: SubAccountReportEmailData): Promise<void>;
53
60
  sendWelcomeMail(to: string, data: BaseEmailData): Promise<void>;
54
61
  /**
55
62
  * Sends generated OTP to a recipient
@@ -206,6 +206,22 @@ let NotificationClient = class NotificationClient {
206
206
  data,
207
207
  });
208
208
  }
209
+ async sendNewDeviceNotification(to, data) {
210
+ this.validateEmailAddress(to);
211
+ this.natsClient.emit(notification_enum_1.NotificationSubcribedNATSSubject.NEW_DEVICE_NOTIFICATION_MAIL, {
212
+ to,
213
+ data,
214
+ });
215
+ }
216
+ /**
217
+ * Sends a sub-account report email with the provided data
218
+ * @param to Recipient email address
219
+ * @param data Sub-account report data
220
+ */
221
+ async sendSubAccountReportEmail(to, data) {
222
+ this.validateEmailAddress(to);
223
+ this.natsClient.emit(notification_enum_1.NotificationSubcribedNATSSubject.SUB_ACCOUNT_REPORT_MAIL, { to, data });
224
+ }
209
225
  async sendWelcomeMail(to, data) {
210
226
  this.validateEmailAddress(to);
211
227
  this.natsClient.emit(notification_enum_1.NotificationSubcribedNATSSubject.WELCOME_MAIL, {
@@ -35,6 +35,7 @@ export declare enum NotificationSubcribedNATSSubject {
35
35
  DEVICE_VERIFICATION_MAIL = "notification.mail.device.verification",
36
36
  DEVICE_VERIFICATION_SMS = "notification.mail.device.verification.sms",
37
37
  NEW_DEVICE_NOTIFICATION_MAIL = "notification.mail.new.device",
38
+ SUB_ACCOUNT_REPORT_MAIL = "notification.mail.subaccount.report",
38
39
  NOTIFICATION_TEXT = "notification.text",
39
40
  NOTIFICATION_OTP_TEXT = "notification.text.otp",
40
41
  NOTIFICATION_OTP_VOICE = "notification.voice.otp",
@@ -42,6 +42,7 @@ var NotificationSubcribedNATSSubject;
42
42
  NotificationSubcribedNATSSubject["DEVICE_VERIFICATION_MAIL"] = "notification.mail.device.verification";
43
43
  NotificationSubcribedNATSSubject["DEVICE_VERIFICATION_SMS"] = "notification.mail.device.verification.sms";
44
44
  NotificationSubcribedNATSSubject["NEW_DEVICE_NOTIFICATION_MAIL"] = "notification.mail.new.device";
45
+ NotificationSubcribedNATSSubject["SUB_ACCOUNT_REPORT_MAIL"] = "notification.mail.subaccount.report";
45
46
  // TEXT
46
47
  NotificationSubcribedNATSSubject["NOTIFICATION_TEXT"] = "notification.text";
47
48
  NotificationSubcribedNATSSubject["NOTIFICATION_OTP_TEXT"] = "notification.text.otp";
@@ -156,3 +156,12 @@ export interface NewDeviceNotificationData extends BaseEmailData {
156
156
  deviceInfo?: string;
157
157
  location?: string;
158
158
  }
159
+ export interface SubAccountReportEmailData {
160
+ subAccounts: Array<{
161
+ name: string;
162
+ type: string;
163
+ balance: number | string;
164
+ currency: string;
165
+ isActive: boolean;
166
+ }>;
167
+ }