@nimee/shared-types 1.0.259 → 1.0.263

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.
@@ -64,6 +64,13 @@ export declare enum InvoiceDocTypeEnum {
64
64
  INVOICE_RECEIPT = "invrec",
65
65
  RECEIPT = "receipt"
66
66
  }
67
+ export interface IBankDetails {
68
+ bankNumber: string;
69
+ branchNumber: string;
70
+ accountNumber: string;
71
+ accountName: string;
72
+ iban: string;
73
+ }
67
74
  export interface IAccountModel {
68
75
  idInsidePaymentProvider: string;
69
76
  name: string;
@@ -105,6 +112,7 @@ export interface IAccountModel {
105
112
  bankAccountOwnershipFilePath: string;
106
113
  corporateCertificateFilePath: string;
107
114
  requirePayerSocialId?: boolean;
115
+ bank?: IBankDetails;
108
116
  design?: {
109
117
  profileImage: string;
110
118
  profileImageIsHero?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"account.js","sourceRoot":"","sources":["../../src/account/account.ts"],"names":[],"mappings":";;;AAMA,IAAY,kBASX;AATD,WAAY,kBAAkB;IAC5B,iEAAW,CAAA;IACX,iEAAW,CAAA;IACX,iEAAW,CAAA;IACX,mEAAY,CAAA;IACZ,+DAAU,CAAA;IACV,+DAAU,CAAA;IACV,6DAAS,CAAA;IACT,6DAAS,CAAA;AACX,CAAC,EATW,kBAAkB,kCAAlB,kBAAkB,QAS7B;AACD,IAAY,aASX;AATD,WAAY,aAAa;IACvB,oCAAmB,CAAA;IACnB,oCAAmB,CAAA;IACnB,oCAAmB,CAAA;IACnB,kCAAiB,CAAA;IACjB,kCAAiB,CAAA;IACjB,gCAAe,CAAA;IACf,gCAAe,CAAA;IACf,sCAAqB,CAAA;AACvB,CAAC,EATW,aAAa,6BAAb,aAAa,QASxB;AACD,IAAY,iBAQX;AARD,WAAY,iBAAiB;IAC3B,kDAA6B,CAAA;IAC7B,kDAA6B,CAAA;IAC7B,sCAAiB,CAAA;IACjB,oCAAe,CAAA;IACf,sCAAiB,CAAA;IACjB,wCAAmB,CAAA;IACnB,0CAAqB,CAAA;AACvB,CAAC,EARW,iBAAiB,iCAAjB,iBAAiB,QAQ5B;AAgBD,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC/B,sCAAa,CAAA;IACb,4CAAmB,CAAA;IACnB,8CAAqB,CAAA;AACvB,CAAC,EAJW,qBAAqB,qCAArB,qBAAqB,QAIhC;AAMD,IAAY,mBAEX;AAFD,WAAY,mBAAmB;IAC7B,wCAAiB,CAAA;AACnB,CAAC,EAFW,mBAAmB,mCAAnB,mBAAmB,QAE9B;AAED,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,gDAA0B,CAAA;IAC1B,yCAAmB,CAAA;AACrB,CAAC,EAHW,kBAAkB,kCAAlB,kBAAkB,QAG7B;AAwJD,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,yCAAmB,CAAA;IACnB,yCAAmB,CAAA;IACnB,uCAAiB,CAAA;IACjB,6CAAuB,CAAA;IACvB,yCAAmB,CAAA;AACrB,CAAC,EANW,kBAAkB,kCAAlB,kBAAkB,QAM7B"}
1
+ {"version":3,"file":"account.js","sourceRoot":"","sources":["../../src/account/account.ts"],"names":[],"mappings":";;;AAMA,IAAY,kBASX;AATD,WAAY,kBAAkB;IAC5B,iEAAW,CAAA;IACX,iEAAW,CAAA;IACX,iEAAW,CAAA;IACX,mEAAY,CAAA;IACZ,+DAAU,CAAA;IACV,+DAAU,CAAA;IACV,6DAAS,CAAA;IACT,6DAAS,CAAA;AACX,CAAC,EATW,kBAAkB,kCAAlB,kBAAkB,QAS7B;AACD,IAAY,aASX;AATD,WAAY,aAAa;IACvB,oCAAmB,CAAA;IACnB,oCAAmB,CAAA;IACnB,oCAAmB,CAAA;IACnB,kCAAiB,CAAA;IACjB,kCAAiB,CAAA;IACjB,gCAAe,CAAA;IACf,gCAAe,CAAA;IACf,sCAAqB,CAAA;AACvB,CAAC,EATW,aAAa,6BAAb,aAAa,QASxB;AACD,IAAY,iBAQX;AARD,WAAY,iBAAiB;IAC3B,kDAA6B,CAAA;IAC7B,kDAA6B,CAAA;IAC7B,sCAAiB,CAAA;IACjB,oCAAe,CAAA;IACf,sCAAiB,CAAA;IACjB,wCAAmB,CAAA;IACnB,0CAAqB,CAAA;AACvB,CAAC,EARW,iBAAiB,iCAAjB,iBAAiB,QAQ5B;AAgBD,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC/B,sCAAa,CAAA;IACb,4CAAmB,CAAA;IACnB,8CAAqB,CAAA;AACvB,CAAC,EAJW,qBAAqB,qCAArB,qBAAqB,QAIhC;AAMD,IAAY,mBAEX;AAFD,WAAY,mBAAmB;IAC7B,wCAAiB,CAAA;AACnB,CAAC,EAFW,mBAAmB,mCAAnB,mBAAmB,QAE9B;AAED,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,gDAA0B,CAAA;IAC1B,yCAAmB,CAAA;AACrB,CAAC,EAHW,kBAAkB,kCAAlB,kBAAkB,QAG7B;AAiKD,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,yCAAmB,CAAA;IACnB,yCAAmB,CAAA;IACnB,uCAAiB,CAAA;IACjB,6CAAuB,CAAA;IACvB,yCAAmB,CAAA;AACrB,CAAC,EANW,kBAAkB,kCAAlB,kBAAkB,QAM7B"}
@@ -12,13 +12,27 @@ export declare enum IMailProvider {
12
12
  export declare enum ISMSProvider {
13
13
  ACTIVE_TRAIL = "ACTIVE_TRAIL",
14
14
  INFORU = "INFORU",
15
+ TWILIO = "TWILIO",
15
16
  NONE = "none"
16
17
  }
17
- export interface ISMSProviderConfig {
18
- provider: ISMSProvider;
19
- apiKey: string;
18
+ export interface IProviderCredentials {
19
+ apiKey?: string;
20
20
  campaignApiKey?: string;
21
21
  smsSendingProfileId?: number;
22
+ twilioAccountSid?: string;
23
+ twilioAuthToken?: string;
24
+ twilioPhoneNumber?: string;
25
+ twilioSenderId?: string;
26
+ }
27
+ export interface ICountryProviderRule {
28
+ prefix: string;
29
+ provider: ISMSProvider;
30
+ credentials: IProviderCredentials;
31
+ description?: string;
32
+ isEnabled?: boolean;
33
+ }
34
+ export interface ISMSProviderConfig {
35
+ countryRules: ICountryProviderRule[];
22
36
  }
23
37
  export declare enum MainPageEnum {
24
38
  PRIVATE_CLUB = "private_club",
@@ -118,4 +132,6 @@ export interface IMarketPlace {
118
132
  disableMarketplaceFee?: boolean;
119
133
  /** Optional array of supported calendar event types. Defaults to [ICalendarEventType.REGULAR, ICalendarEventType.WELLNESS, ICalendarEventType.TASK] */
120
134
  supportedCalendarEventTypes?: ICalendarEventType[];
135
+ /** Custom "Powered By" text for email footers. Defaults to "Powered By nimi.co.il" if not set */
136
+ poweredByText?: string;
121
137
  }
@@ -11,6 +11,7 @@ var ISMSProvider;
11
11
  (function (ISMSProvider) {
12
12
  ISMSProvider["ACTIVE_TRAIL"] = "ACTIVE_TRAIL";
13
13
  ISMSProvider["INFORU"] = "INFORU";
14
+ ISMSProvider["TWILIO"] = "TWILIO";
14
15
  ISMSProvider["NONE"] = "none";
15
16
  })(ISMSProvider || (exports.ISMSProvider = ISMSProvider = {}));
16
17
  // MainPage enum holds the possible values for the main page of the app
@@ -1 +1 @@
1
- {"version":3,"file":"marketPlace.js","sourceRoot":"","sources":["../../src/account/marketPlace.ts"],"names":[],"mappings":";;;AAOA,IAAY,aAIX;AAJD,WAAY,aAAa;IACvB,sCAAqB,CAAA;IACrB,kCAAiB,CAAA;IACjB,8BAAa,CAAA;AACf,CAAC,EAJW,aAAa,6BAAb,aAAa,QAIxB;AAED,IAAY,YAIX;AAJD,WAAY,YAAY;IACtB,6CAA6B,CAAA;IAC7B,iCAAiB,CAAA;IACjB,6BAAa,CAAA;AACf,CAAC,EAJW,YAAY,4BAAZ,YAAY,QAIvB;AAQD,uEAAuE;AACvE,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,6CAA6B,CAAA;IAC7B,mCAAmB,CAAA;AACrB,CAAC,EAHW,YAAY,4BAAZ,YAAY,QAGvB"}
1
+ {"version":3,"file":"marketPlace.js","sourceRoot":"","sources":["../../src/account/marketPlace.ts"],"names":[],"mappings":";;;AAOA,IAAY,aAIX;AAJD,WAAY,aAAa;IACvB,sCAAqB,CAAA;IACrB,kCAAiB,CAAA;IACjB,8BAAa,CAAA;AACf,CAAC,EAJW,aAAa,6BAAb,aAAa,QAIxB;AAED,IAAY,YAKX;AALD,WAAY,YAAY;IACtB,6CAA6B,CAAA;IAC7B,iCAAiB,CAAA;IACjB,iCAAiB,CAAA;IACjB,6BAAa,CAAA;AACf,CAAC,EALW,YAAY,4BAAZ,YAAY,QAKvB;AA4BD,uEAAuE;AACvE,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,6CAA6B,CAAA;IAC7B,mCAAmB,CAAA;AACrB,CAAC,EAHW,YAAY,4BAAZ,YAAY,QAGvB"}
@@ -93,6 +93,7 @@ export interface IEndUserSeasonTicketModel {
93
93
  paymentProvider?: PaymentProviders;
94
94
  externalCustomerId?: string;
95
95
  externalPaymentMethodId?: string;
96
+ externalPriceId?: string;
96
97
  stripeSubscriptionId?: string;
97
98
  }
98
99
  export declare enum ISeasonTicketStatusType {
@@ -1 +1 @@
1
- {"version":3,"file":"endUserSeasonTicket.js","sourceRoot":"","sources":["../../src/payment/endUserSeasonTicket.ts"],"names":[],"mappings":";;;AA4EA,IAAY,uBAWX;AAXD,WAAY,uBAAuB;IACjC,4CAAiB,CAAA;IACjB,8CAAmB,CAAA;IACnB,kDAAuB,CAAA;IACvB,wEAA6C,CAAA;IAC7C,4CAAiB,CAAA;IACjB,kDAAuB,CAAA;IACvB,8CAAmB,CAAA;IACnB,4CAAiB,CAAA;IACjB,0EAA+C,CAAA;IAC/C,0EAA+C,CAAA;AACjD,CAAC,EAXW,uBAAuB,uCAAvB,uBAAuB,QAWlC"}
1
+ {"version":3,"file":"endUserSeasonTicket.js","sourceRoot":"","sources":["../../src/payment/endUserSeasonTicket.ts"],"names":[],"mappings":";;;AA6EA,IAAY,uBAWX;AAXD,WAAY,uBAAuB;IACjC,4CAAiB,CAAA;IACjB,8CAAmB,CAAA;IACnB,kDAAuB,CAAA;IACvB,wEAA6C,CAAA;IAC7C,4CAAiB,CAAA;IACjB,kDAAuB,CAAA;IACvB,8CAAmB,CAAA;IACnB,4CAAiB,CAAA;IACjB,0EAA+C,CAAA;IAC/C,0EAA+C,CAAA;AACjD,CAAC,EAXW,uBAAuB,uCAAvB,uBAAuB,QAWlC"}
@@ -24,6 +24,7 @@
24
24
  /// <reference types="mongoose/types/inferschematype" />
25
25
  /// <reference types="mongoose/types/inferrawdoctype" />
26
26
  import mongoose from "mongoose";
27
+ import { ISMSProvider } from "../account/marketPlace";
27
28
  export declare enum IPostSMSType {
28
29
  FORGOT_PASSWORD_EMAIL = "FORGOT_PASSWORD_EMAIL",
29
30
  FORGOT_PASSWORD_SMS = "FORGOT_PASSWORD_SMS",
@@ -63,7 +64,10 @@ export interface ISMSCampaignModel {
63
64
  account?: string | mongoose.Types.ObjectId;
64
65
  content: string;
65
66
  externalId?: string;
66
- smsProvider?: string;
67
+ smsProvider: ISMSProvider;
67
68
  sentCounter: number;
68
69
  internalName: string;
70
+ campaignGroupId?: string;
71
+ createdAt?: Date;
72
+ updatedAt?: Date;
69
73
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sms.js","sourceRoot":"","sources":["../../src/send-notification/sms.ts"],"names":[],"mappings":";;;AACA,IAAY,YAkBX;AAlBD,WAAY,YAAY;IACtB,+DAA+C,CAAA;IAC/C,2DAA2C,CAAA;IAC3C,qEAAqD,CAAA;IACrD,6CAA6B,CAAA;IAC7B,qDAAqC,CAAA;IACrC,qDAAqC,CAAA;IACrC,+CAA+B,CAAA;IAC/B,yEAAyD,CAAA;IACzD,iDAAiC,CAAA;IACjC,yDAAyC,CAAA;IACzC,iEAAiD,CAAA;IACjD,iCAAiB,CAAA;IACjB,2DAA2C,CAAA;IAC3C,+DAA+C,CAAA;IAC/C,iEAAiD,CAAA;IACjD,qEAAqD,CAAA;IACrD,qCAAqB,CAAA;AACvB,CAAC,EAlBW,YAAY,4BAAZ,YAAY,QAkBvB"}
1
+ {"version":3,"file":"sms.js","sourceRoot":"","sources":["../../src/send-notification/sms.ts"],"names":[],"mappings":";;;AAGA,IAAY,YAkBX;AAlBD,WAAY,YAAY;IACtB,+DAA+C,CAAA;IAC/C,2DAA2C,CAAA;IAC3C,qEAAqD,CAAA;IACrD,6CAA6B,CAAA;IAC7B,qDAAqC,CAAA;IACrC,qDAAqC,CAAA;IACrC,+CAA+B,CAAA;IAC/B,yEAAyD,CAAA;IACzD,iDAAiC,CAAA;IACjC,yDAAyC,CAAA;IACzC,iEAAiD,CAAA;IACjD,iCAAiB,CAAA;IACjB,2DAA2C,CAAA;IAC3C,+DAA+C,CAAA;IAC/C,iEAAiD,CAAA;IACjD,qEAAqD,CAAA;IACrD,qCAAqB,CAAA;AACvB,CAAC,EAlBW,YAAY,4BAAZ,YAAY,QAkBvB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nimee/shared-types",
3
- "version": "1.0.259",
3
+ "version": "1.0.263",
4
4
  "description": "Types and interfaces that any service can access if needed",
5
5
  "main": "dist/index.js",
6
6
  "author": "dan goldberg",
@@ -67,6 +67,14 @@ export enum InvoiceDocTypeEnum {
67
67
  RECEIPT = "receipt",
68
68
  }
69
69
 
70
+ export interface IBankDetails {
71
+ bankNumber: string;
72
+ branchNumber: string;
73
+ accountNumber: string;
74
+ accountName: string;
75
+ iban: string;
76
+ }
77
+
70
78
  export interface IAccountModel {
71
79
  idInsidePaymentProvider: string;
72
80
  name: string;
@@ -102,6 +110,7 @@ export interface IAccountModel {
102
110
  bankAccountOwnershipFilePath: string;
103
111
  corporateCertificateFilePath: string;
104
112
  requirePayerSocialId?: boolean;
113
+ bank?: IBankDetails;
105
114
  design?: {
106
115
  profileImage: string;
107
116
  profileImageIsHero?: boolean;
@@ -14,13 +14,34 @@ export enum IMailProvider {
14
14
  export enum ISMSProvider {
15
15
  ACTIVE_TRAIL = "ACTIVE_TRAIL",
16
16
  INFORU = "INFORU",
17
+ TWILIO = "TWILIO",
17
18
  NONE = "none",
18
19
  }
19
- export interface ISMSProviderConfig {
20
- provider: ISMSProvider;
21
- apiKey: string;
20
+
21
+ export interface IProviderCredentials {
22
+ // ActiveTrail / InfoRu
23
+ apiKey?: string;
22
24
  campaignApiKey?: string;
23
25
  smsSendingProfileId?: number;
26
+
27
+ // Twilio
28
+ twilioAccountSid?: string;
29
+ twilioAuthToken?: string;
30
+ twilioPhoneNumber?: string;
31
+ twilioSenderId?: string;
32
+ }
33
+
34
+ export interface ICountryProviderRule {
35
+ prefix: string; // e.g., "+972", "+1", "+44"
36
+ provider: ISMSProvider;
37
+ credentials: IProviderCredentials;
38
+ description?: string;
39
+ isEnabled?: boolean; // Default true. Set to false to disable this rule without removing it
40
+ }
41
+
42
+ export interface ISMSProviderConfig {
43
+ // Country-specific routing rules (required)
44
+ countryRules: ICountryProviderRule[];
24
45
  }
25
46
 
26
47
  // MainPage enum holds the possible values for the main page of the app
@@ -123,4 +144,6 @@ export interface IMarketPlace {
123
144
  disableMarketplaceFee?: boolean;
124
145
  /** Optional array of supported calendar event types. Defaults to [ICalendarEventType.REGULAR, ICalendarEventType.WELLNESS, ICalendarEventType.TASK] */
125
146
  supportedCalendarEventTypes?: ICalendarEventType[];
147
+ /** Custom "Powered By" text for email footers. Defaults to "Powered By nimi.co.il" if not set */
148
+ poweredByText?: string;
126
149
  }
@@ -71,6 +71,7 @@ export interface IEndUserSeasonTicketModel {
71
71
  paymentProvider?: PaymentProviders;
72
72
  externalCustomerId?: string; // Stripe: cus_xxx, Payme: BUYER-xxx
73
73
  externalPaymentMethodId?: string; // Stripe: pm_xxx, Payme: token
74
+ externalPriceId?: string; // Stripe: price_xxx - the price ID used for this subscription
74
75
  // Stripe-specific fields
75
76
  stripeSubscriptionId?: string;
76
77
  }
@@ -1,4 +1,6 @@
1
1
  import mongoose from "mongoose";
2
+ import { ISMSProvider } from "../account/marketPlace";
3
+
2
4
  export enum IPostSMSType {
3
5
  FORGOT_PASSWORD_EMAIL = "FORGOT_PASSWORD_EMAIL",
4
6
  FORGOT_PASSWORD_SMS = "FORGOT_PASSWORD_SMS",
@@ -39,7 +41,10 @@ export interface ISMSCampaignModel {
39
41
  account?: string | mongoose.Types.ObjectId;
40
42
  content: string;
41
43
  externalId?: string;
42
- smsProvider?: string;
44
+ smsProvider: ISMSProvider;
43
45
  sentCounter: number;
44
46
  internalName: string;
47
+ campaignGroupId?: string;
48
+ createdAt?: Date;
49
+ updatedAt?: Date;
45
50
  }