orbitx-core-models 11.53.0 → 11.54.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.
@@ -53,10 +53,6 @@ export interface IWidgetConfig {
53
53
  animation?: "bounce-in" | "fade" | "slide-up";
54
54
  features?: ("file-upload" | "emoji-support" | "sound" | "email-transcript")[];
55
55
  }
56
- export interface IAvatar {
57
- name?: string;
58
- url?: string;
59
- }
60
56
  export interface ICompany {
61
57
  _id?: Types.ObjectId;
62
58
  basicInfo: IBasicInfo;
@@ -68,8 +64,18 @@ export interface ICompany {
68
64
  stripeCustomerId?: string;
69
65
  isSubscriptionActive?: boolean;
70
66
  subscription?: Types.ObjectId;
71
- avatars?: IAvatar[];
72
67
  createdAt?: Date;
73
68
  updatedAt?: Date;
69
+ hubspotIntegration?: IHubspotIntegration;
70
+ }
71
+ export interface IHubspotIntegration {
72
+ isConnected: boolean;
73
+ isSyncActive: boolean;
74
+ accessToken?: string;
75
+ refreshToken?: string;
76
+ tokenExpiresAt?: Date;
77
+ hubId?: string;
78
+ accountName?: string;
79
+ lastSyncedAt?: Date;
74
80
  }
75
81
  //# sourceMappingURL=company.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"company.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/company.interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"company.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/company.interface.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,4 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ // Then add it to the main interfaces:
4
+ // In IUser, ICompany, and IPartner, add:
@@ -40,5 +40,16 @@ export interface IPartner {
40
40
  status: "Active" | "Inactive";
41
41
  createdAt?: Date;
42
42
  updatedAt?: Date;
43
+ hubspotIntegration?: IHubspotIntegration;
44
+ }
45
+ export interface IHubspotIntegration {
46
+ isConnected: boolean;
47
+ isSyncActive: boolean;
48
+ accessToken?: string;
49
+ refreshToken?: string;
50
+ tokenExpiresAt?: Date;
51
+ hubId?: string;
52
+ accountName?: string;
53
+ lastSyncedAt?: Date;
43
54
  }
44
55
  //# sourceMappingURL=partner.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"partner.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/partner.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,OAAO,CAAC;IACxB,mBAAmB,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,WAAW,CAAC;IACxB,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC;IACzB,yBAAyB,EAAE,OAAO,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,QAAQ;IACvB,GAAG,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC;IACrB,WAAW,EAAE,YAAY,CAAC;IAC1B,UAAU,EAAE,WAAW,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC9B,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,SAAS,CAAC,EAAE,IAAI,CAAC;CAClB"}
1
+ {"version":3,"file":"partner.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/partner.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,OAAO,CAAC;IACxB,mBAAmB,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,WAAW,CAAC;IACxB,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC;IACzB,yBAAyB,EAAE,OAAO,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,QAAQ;IACvB,GAAG,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC;IACrB,WAAW,EAAE,YAAY,CAAC;IAC1B,UAAU,EAAE,WAAW,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC9B,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,kBAAkB,CAAC,EAAE,mBAAmB,CAAC;CAC1C;AAGD,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,IAAI,CAAC;CACrB"}
@@ -1,2 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ // Then add it to the main interfaces:
@@ -1,23 +1,29 @@
1
- import mongoose from "mongoose";
2
- export interface IUser extends mongoose.Document {
1
+ import { Document, Types } from "mongoose";
2
+ export interface IUser extends Document {
3
3
  name?: string;
4
4
  email?: string;
5
5
  username?: string;
6
6
  password?: string;
7
- profile?: string;
8
- role: "user" | "account-manager" | "manager-ops" | "admin" | "agent-chat" | "client-operator" | "partner";
9
- ownerType: "Company" | "Partner" | "ORBITXPRO";
10
- owner: mongoose.Types.ObjectId;
11
- maxConcurrentChats?: number;
12
- groupId?: mongoose.Types.ObjectId;
13
- currentStatus?: "online" | "offline" | "away";
14
- activeChats?: number;
7
+ profile: string;
8
+ role: "user" | "account-manager" | "manager-ops" | "admin" | "agent-chat";
9
+ ownerType?: "Company" | "Partner" | "ORBITXPRO";
10
+ owner?: Types.ObjectId;
15
11
  ipAddress?: string;
12
+ currentStatus: string;
16
13
  lastLogin?: Date;
17
14
  lockedOut?: boolean;
18
- userId: string;
19
- createdAt?: Date;
20
- updatedAt?: Date;
21
- comparePassword(inputPassword: string): Promise<boolean>;
15
+ userId?: string;
16
+ hubspotIntegration?: IHubspotIntegration;
17
+ compare: (inputPassword: string) => Promise<boolean>;
18
+ }
19
+ export interface IHubspotIntegration {
20
+ isConnected: boolean;
21
+ isSyncActive: boolean;
22
+ accessToken?: string;
23
+ refreshToken?: string;
24
+ tokenExpiresAt?: Date;
25
+ hubId?: string;
26
+ accountName?: string;
27
+ lastSyncedAt?: Date;
22
28
  }
23
29
  //# sourceMappingURL=user.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"user.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/user.interface.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,MAAM,WAAW,KAAM,SAAQ,QAAQ,CAAC,QAAQ;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EACA,MAAM,GACN,iBAAiB,GACjB,aAAa,GACb,OAAO,GACP,YAAY,GACZ,iBAAiB,GACjB,SAAS,CAAC;IACd,SAAS,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;IAC/C,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,OAAO,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC;IAClC,aAAa,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;IAC9C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC1D"}
1
+ {"version":3,"file":"user.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/user.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAE3C,MAAM,WAAW,KAAM,SAAQ,QAAQ;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,aAAa,GAAG,OAAO,GAAG,YAAY,CAAC;IAC1E,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;IAChD,KAAK,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,mBAAmB,CAAC;IACzC,OAAO,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACtD;AAGD,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,IAAI,CAAC;CACrB"}
@@ -1 +1 @@
1
- {"version":3,"file":"company.model.d.ts","sourceRoot":"","sources":["../../src/models/company.model.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,EAAE,EAAU,KAAK,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAoB,MAAM,iCAAiC,CAAC;AAsN7E,eAAO,MAAM,OAAO;;;;OAAqD,CAAC;AAC1E,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"company.model.d.ts","sourceRoot":"","sources":["../../src/models/company.model.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,EAAE,EAAU,KAAK,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAoB,MAAM,iCAAiC,CAAC;AA4N7E,eAAO,MAAM,OAAO;;;;OAAqD,CAAC;AAC1E,eAAe,OAAO,CAAC"}
@@ -61,6 +61,16 @@ const hourSchema = new mongoose_1.Schema({
61
61
  }, { _id: false });
62
62
  // Company Schema
63
63
  const companySchema = new mongoose_1.Schema({
64
+ hubspotIntegration: {
65
+ isConnected: { type: Boolean, default: false },
66
+ isSyncActive: { type: Boolean, default: false },
67
+ accessToken: { type: String, default: null },
68
+ refreshToken: { type: String, default: null },
69
+ tokenExpiresAt: { type: Date, default: null },
70
+ hubId: { type: String, default: null },
71
+ accountName: { type: String, default: null },
72
+ lastSyncedAt: { type: Date, default: null }
73
+ },
64
74
  basicInfo: {
65
75
  companyId: {
66
76
  type: String,
@@ -203,12 +213,6 @@ const companySchema = new mongoose_1.Schema({
203
213
  type: mongoose_1.Schema.Types.ObjectId,
204
214
  ref: "Subscription",
205
215
  },
206
- avatars: [
207
- {
208
- name: { type: String, trim: true },
209
- url: { type: String, trim: true },
210
- },
211
- ],
212
216
  }, {
213
217
  timestamps: true,
214
218
  toJSON: { virtuals: true },
@@ -1 +1 @@
1
- {"version":3,"file":"partner.model.d.ts","sourceRoot":"","sources":["../../src/models/partner.model.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,EAAE,EAAU,KAAK,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,EACL,QAAQ,EAGT,MAAM,iCAAiC,CAAC;AAiHzC,eAAO,MAAM,OAAO;;;;OAAqD,CAAC;AAC1E,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"partner.model.d.ts","sourceRoot":"","sources":["../../src/models/partner.model.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,EAAE,EAAU,KAAK,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,EACL,QAAQ,EAGT,MAAM,iCAAiC,CAAC;AA4HzC,eAAO,MAAM,OAAO;;;;OAAqD,CAAC;AAC1E,eAAe,OAAO,CAAC"}
@@ -103,6 +103,16 @@ const payoutTierSchema = new mongoose_1.Schema({
103
103
  _id: false,
104
104
  });
105
105
  const partnerSchema = new mongoose_1.Schema({
106
+ hubspotIntegration: {
107
+ isConnected: { type: Boolean, default: false },
108
+ isSyncActive: { type: Boolean, default: false },
109
+ accessToken: { type: String, default: null },
110
+ refreshToken: { type: String, default: null },
111
+ tokenExpiresAt: { type: Date, default: null },
112
+ hubId: { type: String, default: null },
113
+ accountName: { type: String, default: null },
114
+ lastSyncedAt: { type: Date, default: null }
115
+ },
106
116
  accountInfo: accountInfoSchema,
107
117
  payoutTier: payoutTierSchema,
108
118
  referralLink: { type: String, trim: true },
@@ -1 +1 @@
1
- {"version":3,"file":"user.model.d.ts","sourceRoot":"","sources":["../../src/models/user.model.ts"],"names":[],"mappings":"AAAA,OAAO,QAAoB,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AA0IrD,eAAO,MAAM,IAAI;;;;OAA4C,CAAC"}
1
+ {"version":3,"file":"user.model.d.ts","sourceRoot":"","sources":["../../src/models/user.model.ts"],"names":[],"mappings":"AAAA,OAAO,QAAoB,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAuDrD,eAAO,MAAM,IAAI;;;;OAA4C,CAAC"}
@@ -40,115 +40,51 @@ exports.User = void 0;
40
40
  const mongoose_1 = __importStar(require("mongoose"));
41
41
  const argon2_1 = __importDefault(require("argon2"));
42
42
  const userSchema = new mongoose_1.Schema({
43
- name: { type: String, trim: true },
44
- email: {
45
- type: String,
46
- trim: true,
47
- lowercase: true,
48
- index: true,
49
- sparse: true,
50
- },
51
- username: {
52
- type: String,
53
- trim: true,
54
- index: true,
43
+ hubspotIntegration: {
44
+ isConnected: { type: Boolean, default: false },
45
+ isSyncActive: { type: Boolean, default: false },
46
+ accessToken: { type: String, default: null },
47
+ refreshToken: { type: String, default: null },
48
+ tokenExpiresAt: { type: Date, default: null },
49
+ hubId: { type: String, default: null },
50
+ accountName: { type: String, default: null },
51
+ lastSyncedAt: { type: Date, default: null }
55
52
  },
53
+ name: String,
54
+ email: String,
55
+ username: String,
56
56
  password: { type: String, select: false },
57
57
  profile: { type: String, default: "default.jpg" },
58
- // ─────────────────────────────────────────────
59
- // ROLE SYSTEM (EXTENDED, NOT BREAKING)
60
- // ─────────────────────────────────────────────
61
58
  role: {
62
59
  type: String,
63
- enum: [
64
- "user",
65
- "account-manager",
66
- "manager-ops",
67
- "admin",
68
- "agent-chat",
69
- "client-operator", // NEW
70
- "partner", // NEW
71
- ],
60
+ enum: ["user", "account-manager", "manager-ops", "admin", "agent-chat"],
72
61
  default: "user",
73
- index: true,
74
62
  },
75
- // ─────────────────────────────────────────────
76
- // MULTI-TENANT OWNERSHIP
77
- // ─────────────────────────────────────────────
78
63
  ownerType: {
79
64
  type: String,
80
65
  enum: ["Company", "Partner", "ORBITXPRO"],
81
- required: true,
82
- index: true,
83
- },
84
- owner: {
85
- type: mongoose_1.Schema.Types.ObjectId,
86
- refPath: "ownerType",
87
- required: true,
88
- index: true,
89
66
  },
90
- // ─────────────────────────────────────────────
91
- // CHAT FIELDS (FLAT — NO NESTING)
92
- // ─────────────────────────────────────────────
93
- maxConcurrentChats: {
94
- type: Number,
95
- default: 5,
96
- },
97
- groupId: {
98
- type: mongoose_1.Schema.Types.ObjectId,
99
- ref: "Group",
100
- index: true,
101
- },
102
- // persistent fallback only
103
- currentStatus: {
104
- type: String,
105
- enum: ["online", "offline", "away"],
106
- default: "offline",
107
- index: true,
108
- },
109
- // optional (derived from Redis ideally)
110
- activeChats: {
111
- type: Number,
112
- default: 0,
113
- },
114
- // ─────────────────────────────────────────────
115
- // SECURITY
116
- // ─────────────────────────────────────────────
67
+ owner: { type: mongoose_1.Schema.Types.ObjectId, refPath: "ownerType" },
117
68
  ipAddress: String,
69
+ currentStatus: { type: String, default: "Offline" },
118
70
  lastLogin: Date,
119
- lockedOut: {
120
- type: Boolean,
121
- default: false,
122
- },
123
- userId: {
124
- type: String,
125
- unique: true,
126
- index: true,
127
- },
128
- }, { timestamps: true });
129
- // ─────────────────────────────────────────────
130
- // PASSWORD HASH
131
- // ─────────────────────────────────────────────
132
- userSchema.pre("save", async function () {
71
+ lockedOut: { type: Boolean },
72
+ userId: { type: String, unique: true },
73
+ });
74
+ // Hash password before saving if modified
75
+ userSchema.pre("save", async function (next) {
133
76
  if (!this.isModified("password") || !this.password)
134
- return;
77
+ return next();
135
78
  this.password = await argon2_1.default.hash(this.password, {
136
- type: argon2_1.default.argon2id,
137
- timeCost: 3,
138
- memoryCost: 2 ** 16,
79
+ type: argon2_1.default.argon2i,
80
+ timeCost: 2,
139
81
  });
82
+ next();
140
83
  });
141
- // ─────────────────────────────────────────────
142
- // PASSWORD COMPARE (FIXED)
143
- // ─────────────────────────────────────────────
144
- userSchema.methods.comparePassword = async function (inputPassword) {
84
+ // Compare password
85
+ userSchema.methods.compare = async function (userPassword, inputPassword) {
145
86
  if (!this.password)
146
87
  return false;
147
- return await argon2_1.default.verify(this.password, inputPassword);
88
+ return await argon2_1.default.verify(userPassword, inputPassword);
148
89
  };
149
- // ─────────────────────────────────────────────
150
- // INDEXES (IMPORTANT)
151
- // ─────────────────────────────────────────────
152
- userSchema.index({ owner: 1, ownerType: 1 });
153
- userSchema.index({ role: 1, ownerType: 1 });
154
90
  exports.User = mongoose_1.default.model("User", userSchema);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "orbitx-core-models",
3
- "version": "11.53.0",
3
+ "version": "11.54.0",
4
4
  "description": "Shared Mongoose models and interfaces for OrbitX services",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",