@chopkola/common 1.0.67 → 1.0.70

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.
@@ -3,28 +3,34 @@ export declare enum UserAccountTypeEnum {
3
3
  VENDOR = "vendor",
4
4
  ADMINISTRATOR = "administrator"
5
5
  }
6
- export declare enum AdministratorRoleEnum {
7
- SUPER_ADMINISTRATOR = "super_administrator",
8
- SUPPORT = "support",
9
- FINANCE = "finance",
10
- OPERATIONS = "operations"
6
+ export declare enum UserAccountStatusEnum {
7
+ PENDING_VERIFICATION = "pending_verification",
8
+ ACTIVE = "active",
9
+ SUSPENDED = "suspended",
10
+ DEACTIVATED = "deactivated"
11
11
  }
12
12
  export declare enum UserGenderEnum {
13
13
  MALE = "male",
14
14
  FEMALE = "female",
15
- OTHERS = "others",
16
- PREFER_NOT_TO_SAY = "prefer_not_to_say"
15
+ OTHERS = "other",
16
+ ANONYMOUS = "anonymous"
17
+ }
18
+ export declare enum VendorBusinessTypeEnum {
19
+ GROCERY = "grocery",
20
+ RESTAURANT = "restaurant"
21
+ }
22
+ export declare enum VendorStatusEnum {
23
+ PENDING_APPROVAL = "pending_approval",
24
+ NEEDS_REVISION = "needs_revision",
25
+ ACTIVE = "active",
26
+ PAUSED_BY_VENDOR = "paused_by_vendor",
27
+ SUSPENDED_BY_ADMINISTRATOR = "suspended_by_administrator"
17
28
  }
18
29
  export declare enum DietryPreferencesEnum {
19
30
  VEGAN = "vegan",
20
31
  HALAL = "halal",
21
32
  ALLERGIES = "allergies"
22
33
  }
23
- export declare enum BusinessTypeEnum {
24
- RESTAURANT = "restaurant",
25
- GROCERY = "grocery",
26
- BOTH = "both"
27
- }
28
34
  export declare enum PermissionEnum {
29
35
  CREATE = "create",
30
36
  READ = "read",
@@ -35,3 +41,7 @@ export declare enum RoleRiskLevelEnum {
35
41
  HIGH = "high",
36
42
  REGULAR = "regular"
37
43
  }
44
+ export declare enum VerificationPurposeEnum {
45
+ 'email_verify' = 0,
46
+ 'password_reset' = 1
47
+ }
@@ -1,38 +1,45 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RoleRiskLevelEnum = exports.PermissionEnum = exports.BusinessTypeEnum = exports.DietryPreferencesEnum = exports.UserGenderEnum = exports.AdministratorRoleEnum = exports.UserAccountTypeEnum = void 0;
3
+ exports.VerificationPurposeEnum = exports.RoleRiskLevelEnum = exports.PermissionEnum = exports.DietryPreferencesEnum = exports.VendorStatusEnum = exports.VendorBusinessTypeEnum = exports.UserGenderEnum = exports.UserAccountStatusEnum = exports.UserAccountTypeEnum = void 0;
4
4
  var UserAccountTypeEnum;
5
5
  (function (UserAccountTypeEnum) {
6
6
  UserAccountTypeEnum["CUSTOMER"] = "customer";
7
7
  UserAccountTypeEnum["VENDOR"] = "vendor";
8
8
  UserAccountTypeEnum["ADMINISTRATOR"] = "administrator";
9
9
  })(UserAccountTypeEnum = exports.UserAccountTypeEnum || (exports.UserAccountTypeEnum = {}));
10
- var AdministratorRoleEnum;
11
- (function (AdministratorRoleEnum) {
12
- AdministratorRoleEnum["SUPER_ADMINISTRATOR"] = "super_administrator";
13
- AdministratorRoleEnum["SUPPORT"] = "support";
14
- AdministratorRoleEnum["FINANCE"] = "finance";
15
- AdministratorRoleEnum["OPERATIONS"] = "operations";
16
- })(AdministratorRoleEnum = exports.AdministratorRoleEnum || (exports.AdministratorRoleEnum = {}));
10
+ var UserAccountStatusEnum;
11
+ (function (UserAccountStatusEnum) {
12
+ UserAccountStatusEnum["PENDING_VERIFICATION"] = "pending_verification";
13
+ UserAccountStatusEnum["ACTIVE"] = "active";
14
+ UserAccountStatusEnum["SUSPENDED"] = "suspended";
15
+ UserAccountStatusEnum["DEACTIVATED"] = "deactivated";
16
+ })(UserAccountStatusEnum = exports.UserAccountStatusEnum || (exports.UserAccountStatusEnum = {}));
17
17
  var UserGenderEnum;
18
18
  (function (UserGenderEnum) {
19
19
  UserGenderEnum["MALE"] = "male";
20
20
  UserGenderEnum["FEMALE"] = "female";
21
- UserGenderEnum["OTHERS"] = "others";
22
- UserGenderEnum["PREFER_NOT_TO_SAY"] = "prefer_not_to_say";
21
+ UserGenderEnum["OTHERS"] = "other";
22
+ UserGenderEnum["ANONYMOUS"] = "anonymous";
23
23
  })(UserGenderEnum = exports.UserGenderEnum || (exports.UserGenderEnum = {}));
24
+ var VendorBusinessTypeEnum;
25
+ (function (VendorBusinessTypeEnum) {
26
+ VendorBusinessTypeEnum["GROCERY"] = "grocery";
27
+ VendorBusinessTypeEnum["RESTAURANT"] = "restaurant";
28
+ })(VendorBusinessTypeEnum = exports.VendorBusinessTypeEnum || (exports.VendorBusinessTypeEnum = {}));
29
+ var VendorStatusEnum;
30
+ (function (VendorStatusEnum) {
31
+ VendorStatusEnum["PENDING_APPROVAL"] = "pending_approval";
32
+ VendorStatusEnum["NEEDS_REVISION"] = "needs_revision";
33
+ VendorStatusEnum["ACTIVE"] = "active";
34
+ VendorStatusEnum["PAUSED_BY_VENDOR"] = "paused_by_vendor";
35
+ VendorStatusEnum["SUSPENDED_BY_ADMINISTRATOR"] = "suspended_by_administrator";
36
+ })(VendorStatusEnum = exports.VendorStatusEnum || (exports.VendorStatusEnum = {}));
24
37
  var DietryPreferencesEnum;
25
38
  (function (DietryPreferencesEnum) {
26
39
  DietryPreferencesEnum["VEGAN"] = "vegan";
27
40
  DietryPreferencesEnum["HALAL"] = "halal";
28
41
  DietryPreferencesEnum["ALLERGIES"] = "allergies";
29
42
  })(DietryPreferencesEnum = exports.DietryPreferencesEnum || (exports.DietryPreferencesEnum = {}));
30
- var BusinessTypeEnum;
31
- (function (BusinessTypeEnum) {
32
- BusinessTypeEnum["RESTAURANT"] = "restaurant";
33
- BusinessTypeEnum["GROCERY"] = "grocery";
34
- BusinessTypeEnum["BOTH"] = "both";
35
- })(BusinessTypeEnum = exports.BusinessTypeEnum || (exports.BusinessTypeEnum = {}));
36
43
  var PermissionEnum;
37
44
  (function (PermissionEnum) {
38
45
  PermissionEnum["CREATE"] = "create";
@@ -45,3 +52,8 @@ var RoleRiskLevelEnum;
45
52
  RoleRiskLevelEnum["HIGH"] = "high";
46
53
  RoleRiskLevelEnum["REGULAR"] = "regular";
47
54
  })(RoleRiskLevelEnum = exports.RoleRiskLevelEnum || (exports.RoleRiskLevelEnum = {}));
55
+ var VerificationPurposeEnum;
56
+ (function (VerificationPurposeEnum) {
57
+ VerificationPurposeEnum[VerificationPurposeEnum["email_verify"] = 0] = "email_verify";
58
+ VerificationPurposeEnum[VerificationPurposeEnum["password_reset"] = 1] = "password_reset";
59
+ })(VerificationPurposeEnum = exports.VerificationPurposeEnum || (exports.VerificationPurposeEnum = {}));
@@ -1,5 +1,4 @@
1
- import { StatusEnum } from "./enum/global";
2
- import { BusinessTypeEnum, UserGenderEnum, UserAccountTypeEnum, RoleRiskLevelEnum } from "./enum/user";
1
+ import { UserGenderEnum, UserAccountTypeEnum, RoleRiskLevelEnum, VerificationPurposeEnum, UserAccountStatusEnum, VendorBusinessTypeEnum, VendorStatusEnum } from "./enum/user";
3
2
  export declare enum RoleIconEnum {
4
3
  SHIELD = "shield",
5
4
  USERS = "users",
@@ -11,6 +10,8 @@ export interface PermissionI {
11
10
  resource: string;
12
11
  action: string;
13
12
  rule: string;
13
+ created_at?: Date;
14
+ updated_at?: Date;
14
15
  }
15
16
  export interface RoleI {
16
17
  id?: string;
@@ -20,6 +21,8 @@ export interface RoleI {
20
21
  permissions?: PermissionI[];
21
22
  icon?: RoleIconEnum;
22
23
  risk?: RoleRiskLevelEnum;
24
+ created_at?: Date;
25
+ updated_at?: Date;
23
26
  }
24
27
  export interface RolePermissionI {
25
28
  role_id: string;
@@ -29,60 +32,61 @@ export interface UserI {
29
32
  id?: string;
30
33
  first_name: string;
31
34
  last_name: string;
32
- image?: string;
33
35
  email: string;
34
- password?: string;
36
+ password_hash: string;
35
37
  phone_number: string;
36
- account_type: UserAccountTypeEnum;
37
- account_status: StatusEnum;
38
+ photo_url?: string;
38
39
  gender: UserGenderEnum;
39
- otp: string;
40
- otp_for: string;
41
- otp_expired_at: Date;
40
+ account_type: UserAccountTypeEnum;
41
+ account_status: UserAccountStatusEnum;
42
42
  is_email_verified: boolean;
43
43
  email_verified_at: Date;
44
- is_active: boolean;
45
- is_logged_in: boolean;
44
+ locale: string;
45
+ timezone: string;
46
+ token_version: string;
47
+ refresh_token_hash: string;
46
48
  last_login_at: Date;
47
- password_changed_at: Date;
48
- deleted_at: string;
49
- token_version: number;
50
- refresh_token_hash?: string;
51
49
  last_login_ip: string;
52
- last_login_user_agent: string;
50
+ password_changed_at: Date;
51
+ mfa_enabled: string;
52
+ mfa_secret: string;
53
+ mfa_backup_codes: string;
54
+ verification_token_hash: string;
55
+ verification_token_for: VerificationPurposeEnum;
56
+ verification_token_expires_at: string;
57
+ role_id: string;
58
+ metadata: string;
59
+ last_consented_at: Date;
60
+ deleted_at: Date;
53
61
  created_at: Date;
54
62
  updated_at: Date;
55
63
  }
56
- export interface CustomerI extends UserI {
57
- user_id: string;
58
- dietary_preferences: string;
59
- last_order_at: Date;
60
- marketing_opt_in: boolean;
61
- preferred_language: string;
62
- preferred_currency: string;
63
- }
64
- export interface AdministratorI extends UserI {
65
- user_id: string;
66
- role_id?: string;
67
- role?: RoleI;
68
- permissions?: string[];
69
- can_impersonate: boolean;
70
- last_action_at: Date;
71
- }
72
- export interface VendorI extends UserI {
73
- user_id: string;
64
+ export interface VendorI {
65
+ id?: string;
66
+ owner_id: string;
74
67
  business_name: string;
68
+ slug: string;
75
69
  description: string;
76
- business_status: StatusEnum;
77
- business_type: BusinessTypeEnum;
70
+ business_type: VendorBusinessTypeEnum;
71
+ business_status: VendorStatusEnum;
72
+ contact_email: string;
73
+ phone_number: string;
74
+ address: string;
75
+ location: string;
76
+ logo_url: string;
77
+ banner_url: string;
78
+ operating_hours: string;
79
+ is_accepting_orders: boolean;
80
+ avg_preparation_time_minutes: number;
78
81
  rating: number;
79
- payout_info: string;
80
- is_verified: boolean;
81
- verified_at: Date;
82
+ review_count: number;
83
+ payout_provider_account_id: string;
84
+ verification_documents: string;
85
+ created_at: Date;
86
+ updated_at: Date;
82
87
  }
83
- export declare type UserType = CustomerI | VendorI | AdministratorI;
84
88
  export declare type SuccessfulUserRegistrationResponseType = {
85
- user: UserType;
89
+ user: UserI;
86
90
  payload?: any;
87
91
  subject: string;
88
92
  context?: string;
@@ -1,7 +1,3 @@
1
- import { AdministratorI, CustomerI, VendorI } from "../types/user";
2
1
  export declare const checkIsEmailValid: (email: string) => boolean;
3
2
  export declare const checkIsPhoneNumberValid: (phoneNumber: string) => boolean;
4
3
  export declare const checkIsEmailOrPhoneValid: (account_ref: string) => 'phone_number' | 'email' | false;
5
- export declare const handleAdministratorValidation: (user: AdministratorI) => boolean;
6
- export declare const handleVendorValidation: (user: VendorI) => boolean;
7
- export declare const handleCustomerValidation: (user: CustomerI) => boolean;
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.handleCustomerValidation = exports.handleVendorValidation = exports.handleAdministratorValidation = exports.checkIsEmailOrPhoneValid = exports.checkIsPhoneNumberValid = exports.checkIsEmailValid = void 0;
4
- const user_1 = require("../types/enum/user");
3
+ exports.checkIsEmailOrPhoneValid = exports.checkIsPhoneNumberValid = exports.checkIsEmailValid = void 0;
5
4
  const regex_1 = require("./regex");
6
5
  const checkIsEmailValid = (email) => {
7
6
  return regex_1.emailRegex.test(email);
@@ -23,15 +22,3 @@ const checkIsEmailOrPhoneValid = (account_ref) => {
23
22
  return false;
24
23
  };
25
24
  exports.checkIsEmailOrPhoneValid = checkIsEmailOrPhoneValid;
26
- const handleAdministratorValidation = (user) => {
27
- return user.account_type === user_1.UserAccountTypeEnum.ADMINISTRATOR;
28
- };
29
- exports.handleAdministratorValidation = handleAdministratorValidation;
30
- const handleVendorValidation = (user) => {
31
- return user.account_type === user_1.UserAccountTypeEnum.ADMINISTRATOR;
32
- };
33
- exports.handleVendorValidation = handleVendorValidation;
34
- const handleCustomerValidation = (user) => {
35
- return user.account_type === user_1.UserAccountTypeEnum.ADMINISTRATOR;
36
- };
37
- exports.handleCustomerValidation = handleCustomerValidation;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chopkola/common",
3
- "version": "1.0.67",
3
+ "version": "1.0.70",
4
4
  "description": "",
5
5
  "license": "ISC",
6
6
  "author": "akrosoft technology ltd",