@takentrade/takentrade-libs 4.2.0 → 4.2.1
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.
|
@@ -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, SubAccountReportEmailData, BulkEmailData } 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, BulkEmailData, GiftCardSaleEmailData } from './notification.interface';
|
|
4
4
|
export declare class NotificationClient {
|
|
5
5
|
private readonly natsClient;
|
|
6
6
|
constructor(natsClient: ClientProxy);
|
|
@@ -73,5 +73,6 @@ export declare class NotificationClient {
|
|
|
73
73
|
/**
|
|
74
74
|
* Sends push notification
|
|
75
75
|
*/
|
|
76
|
+
sendGiftcardSaleMail(to: string | string[], data: GiftCardSaleEmailData, user_id?: string, bypassPreferenceCheck?: boolean): Promise<void>;
|
|
76
77
|
sendPush(input: SendPushNotificationInput): Promise<void>;
|
|
77
78
|
}
|
|
@@ -343,6 +343,16 @@ let NotificationClient = class NotificationClient {
|
|
|
343
343
|
/**
|
|
344
344
|
* Sends push notification
|
|
345
345
|
*/
|
|
346
|
+
async sendGiftcardSaleMail(to, data, user_id, bypassPreferenceCheck) {
|
|
347
|
+
const recipients = Array.isArray(to) ? to : [to];
|
|
348
|
+
recipients.forEach((r) => this.validateEmailAddress(r));
|
|
349
|
+
this.natsClient.emit(notification_enum_1.NotificationSubcribedNATSSubject.GIFTCARD_SALE_MAIL, {
|
|
350
|
+
to: recipients,
|
|
351
|
+
data,
|
|
352
|
+
user_id,
|
|
353
|
+
bypassPreferenceCheck,
|
|
354
|
+
});
|
|
355
|
+
}
|
|
346
356
|
async sendPush(input) {
|
|
347
357
|
if (!input.tokens?.length && !input.user_id) {
|
|
348
358
|
throw new common_1.BadRequestException('You must provide a device tokens array or a user_id');
|
|
@@ -171,6 +171,17 @@ export interface NewDeviceNotificationData extends BaseEmailData {
|
|
|
171
171
|
deviceInfo?: string;
|
|
172
172
|
location?: string;
|
|
173
173
|
}
|
|
174
|
+
export interface GiftCardSaleEmailData extends BaseEmailData {
|
|
175
|
+
productName: string;
|
|
176
|
+
categoryName: string;
|
|
177
|
+
cardAmount: number;
|
|
178
|
+
currency: string;
|
|
179
|
+
cashValue: number;
|
|
180
|
+
submissionType: string;
|
|
181
|
+
reference: string;
|
|
182
|
+
userEmail: string;
|
|
183
|
+
userPhone: string;
|
|
184
|
+
}
|
|
174
185
|
export interface SubAccountReportEmailData {
|
|
175
186
|
subAccounts: Array<{
|
|
176
187
|
name: string;
|