orbitx-core-models 11.87.0 → 11.89.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.
package/dist/index.d.ts CHANGED
@@ -22,6 +22,9 @@ import { Subscription } from "./models/subscription.model";
22
22
  import { Visitor } from "./models/visitor.model";
23
23
  import { Group } from "./models/group.model";
24
24
  import { Agent } from "./models/agent.model";
25
+ import { LeadLedger } from "./models/leadLedger.model";
26
+ import { Invoice } from "./models/invoice.model";
27
+ import { LeadDispute } from "./models/leadDispute.model";
25
28
  import { IChat } from "./interfaces/chat.interface";
26
29
  import { IMacro } from "./interfaces/macro.interface";
27
30
  import { IVertical } from "./interfaces/vertical.interface";
@@ -46,6 +49,9 @@ import { ISubscription } from "./interfaces/subscription.interface";
46
49
  import { IVisitor } from "./interfaces/visitor.interface";
47
50
  import { IGroup } from "./interfaces/group.interface";
48
51
  import { IAgent } from "./interfaces/agent.interface";
49
- export { Chat, Message, User, Vertical, Macro, Partner, Company, CompanySettings, Review, Wallet, StripeLog, Transaction, Lead, TierConfig, TierProgress, MonthlyTierSnapshot, Product, Plan, PlanOption, Addon, Subscription, Visitor, Group, Agent };
50
- export type { IChat, IMessage, IUser, IVertical, IMacro, IPartner, ICompany, IOnboardingStep, ICompanySettings, ICallConnectSettings, ILeadConfig, IReview, IWallet, IStripeLog, ITransaction, ILead, ITierConfig, ITierProgress, IMonthlyTierSnapshot, IProduct, IPlan, IPlanOption, IAddon, ISubscription, IVisitor, IGroup, IAgent, };
52
+ import { ILeadLedger } from "./interfaces/leadLedger.interface";
53
+ import { IInvoice } from "./interfaces/invoice.interface";
54
+ import { ILeadDispute } from "./interfaces/leadDispute.interface";
55
+ export { Chat, Message, User, Vertical, Macro, Partner, Company, CompanySettings, Review, Wallet, StripeLog, Transaction, Lead, TierConfig, TierProgress, MonthlyTierSnapshot, Product, Plan, PlanOption, Addon, Subscription, Visitor, Group, Agent, LeadLedger, Invoice, LeadDispute };
56
+ export type { IChat, IMessage, IUser, IVertical, IMacro, IPartner, ICompany, IOnboardingStep, ICompanySettings, ICallConnectSettings, ILeadConfig, IReview, IWallet, IStripeLog, ITransaction, ILead, ITierConfig, ITierProgress, IMonthlyTierSnapshot, IProduct, IPlan, IPlanOption, IAddon, ISubscription, IVisitor, IGroup, IAgent, ILeadLedger, IInvoice, ILeadDispute, };
51
57
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Agent = exports.Group = exports.Visitor = exports.Subscription = exports.Addon = exports.PlanOption = exports.Plan = exports.Product = exports.MonthlyTierSnapshot = exports.TierProgress = exports.TierConfig = exports.Lead = exports.Transaction = exports.StripeLog = exports.Wallet = exports.Review = exports.CompanySettings = exports.Company = exports.Partner = exports.Macro = exports.Vertical = exports.User = exports.Message = exports.Chat = void 0;
3
+ exports.LeadDispute = exports.Invoice = exports.LeadLedger = exports.Agent = exports.Group = exports.Visitor = exports.Subscription = exports.Addon = exports.PlanOption = exports.Plan = exports.Product = exports.MonthlyTierSnapshot = exports.TierProgress = exports.TierConfig = exports.Lead = exports.Transaction = exports.StripeLog = exports.Wallet = exports.Review = exports.CompanySettings = exports.Company = exports.Partner = exports.Macro = exports.Vertical = exports.User = exports.Message = exports.Chat = void 0;
4
4
  // MODELS
5
5
  const chat_model_1 = require("./models/chat.model");
6
6
  Object.defineProperty(exports, "Chat", { enumerable: true, get: function () { return chat_model_1.Chat; } });
@@ -50,3 +50,9 @@ const group_model_1 = require("./models/group.model");
50
50
  Object.defineProperty(exports, "Group", { enumerable: true, get: function () { return group_model_1.Group; } });
51
51
  const agent_model_1 = require("./models/agent.model");
52
52
  Object.defineProperty(exports, "Agent", { enumerable: true, get: function () { return agent_model_1.Agent; } });
53
+ const leadLedger_model_1 = require("./models/leadLedger.model");
54
+ Object.defineProperty(exports, "LeadLedger", { enumerable: true, get: function () { return leadLedger_model_1.LeadLedger; } });
55
+ const invoice_model_1 = require("./models/invoice.model");
56
+ Object.defineProperty(exports, "Invoice", { enumerable: true, get: function () { return invoice_model_1.Invoice; } });
57
+ const leadDispute_model_1 = require("./models/leadDispute.model");
58
+ Object.defineProperty(exports, "LeadDispute", { enumerable: true, get: function () { return leadDispute_model_1.LeadDispute; } });
@@ -66,6 +66,7 @@ export interface IOnboardingStep {
66
66
  }
67
67
  export interface ICompany extends mongoose.Document {
68
68
  instructions?: string;
69
+ status?: "active" | "inactive";
69
70
  basicInfo: IBasicInfo;
70
71
  contactInfo: IContactInfo;
71
72
  /** Reference to the CompanySettings document (1-to-1). */
@@ -1 +1 @@
1
- {"version":3,"file":"company.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/company.interface.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,iBAAiB,EACjB,sBAAsB,EACvB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,MAAM,SAAS,GACjB,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,WAAW,GACX,UAAU,GACV,QAAQ,GACR,UAAU,CAAC;AAEf,MAAM,WAAW,KAAK;IACpB,GAAG,EAAE,SAAS,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,aAAa,GAAG,cAAc,CAAC;IAC1C,KAAK,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,SAAS,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,UAAU,CAAC;IAC9C,QAAQ,CAAC,EAAE,CAAC,aAAa,GAAG,eAAe,GAAG,OAAO,GAAG,kBAAkB,CAAC,EAAE,CAAC;CAC/E;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,QAAS,SAAQ,QAAQ,CAAC,QAAQ;IACjD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,UAAU,CAAC;IACtB,WAAW,EAAE,YAAY,CAAC;IAE1B,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC;IAE1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,YAAY,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC;IAC9B,kBAAkB,CAAC,EAAE,mBAAmB,CAAC;IACzC,aAAa,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC;IAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qBAAqB,CAAC,EAAE,sBAAsB,CAAC;IAC/C,eAAe,CAAC,EAAE,gBAAgB,CAAC;IACnC,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IACrC,qBAAqB,CAAC,EAAE,sBAAsB,CAAC;IAE/C,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC;IAEpB,+DAA+D;IAC/D,eAAe,CAAC,EAAE,eAAe,EAAE,CAAC;IACpC,wDAAwD;IACxD,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,SAAS,CAAC,EAAE,IAAI,CAAC;CAClB;AAED,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
+ {"version":3,"file":"company.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/company.interface.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { Document, Types } from "mongoose";
2
+ export interface IInvoice extends Document {
3
+ companyId: Types.ObjectId;
4
+ subscriptionId: Types.ObjectId;
5
+ billingPeriodStart: Date;
6
+ billingPeriodEnd: Date;
7
+ status: "draft" | "pending_approval" | "approved" | "pending_payment" | "paid" | "void" | "disputed";
8
+ ledgerEntries: Types.ObjectId[];
9
+ subtotal: number;
10
+ adjustments: number;
11
+ totalDue: number;
12
+ stripeInvoiceId?: string;
13
+ stripeInvoiceUrl?: string;
14
+ approvedBy?: Types.ObjectId;
15
+ approvedAt?: Date;
16
+ paidAt?: Date;
17
+ notes?: string;
18
+ createdAt?: Date;
19
+ updatedAt?: Date;
20
+ }
21
+ //# sourceMappingURL=invoice.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invoice.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/invoice.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAE3C,MAAM,WAAW,QAAS,SAAQ,QAAQ;IACxC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC;IAC1B,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC;IAE/B,kBAAkB,EAAE,IAAI,CAAC;IACzB,gBAAgB,EAAE,IAAI,CAAC;IAEvB,MAAM,EACF,OAAO,GACP,kBAAkB,GAClB,UAAU,GACV,iBAAiB,GACjB,MAAM,GACN,MAAM,GACN,UAAU,CAAC;IASf,aAAa,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;IAGhC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IAGjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAG1B,UAAU,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC;IAC5B,UAAU,CAAC,EAAE,IAAI,CAAC;IAGlB,MAAM,CAAC,EAAE,IAAI,CAAC;IAEd,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,SAAS,CAAC,EAAE,IAAI,CAAC;CAClB"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,18 @@
1
+ import { Document, Types } from "mongoose";
2
+ export interface ILeadDispute extends Document {
3
+ companyId: Types.ObjectId;
4
+ invoiceId: Types.ObjectId;
5
+ leadLedgerId: Types.ObjectId;
6
+ leadId: Types.ObjectId;
7
+ reason: string;
8
+ status: "open" | "under_review" | "approved" | "rejected";
9
+ resolution?: "refund_to_card" | "credit_next_invoice";
10
+ resolutionAmount?: number;
11
+ stripeCreditNoteId?: string;
12
+ raisedBy: Types.ObjectId;
13
+ resolvedBy?: Types.ObjectId;
14
+ resolvedAt?: Date;
15
+ createdAt?: Date;
16
+ updatedAt?: Date;
17
+ }
18
+ //# sourceMappingURL=leadDispute.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"leadDispute.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/leadDispute.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAE3C,MAAM,WAAW,YAAa,SAAQ,QAAQ;IAC5C,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC;IAC1B,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC;IAC1B,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC;IAC7B,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC;IAEvB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,cAAc,GAAG,UAAU,GAAG,UAAU,CAAC;IAE1D,UAAU,CAAC,EAAE,gBAAgB,GAAG,qBAAqB,CAAC;IACtD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAG1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC;IACzB,UAAU,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC;IAC5B,UAAU,CAAC,EAAE,IAAI,CAAC;IAElB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,SAAS,CAAC,EAAE,IAAI,CAAC;CAClB"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,21 @@
1
+ import { Document, Types } from "mongoose";
2
+ export interface ILeadLedger extends Document {
3
+ companyId: Types.ObjectId;
4
+ subscriptionId: Types.ObjectId;
5
+ leadId?: Types.ObjectId;
6
+ invoiceId?: Types.ObjectId;
7
+ type: "lead" | "add" | "deduct";
8
+ status: "active" | "discarded" | "disputed" | "invoiced" | "credited";
9
+ unitPrice: number;
10
+ quantity: number;
11
+ billingPeriodStart: Date;
12
+ billingPeriodEnd: Date;
13
+ discardedAt?: Date;
14
+ discardReason?: string;
15
+ discardedBy?: Types.ObjectId;
16
+ note?: string;
17
+ createdBy?: Types.ObjectId;
18
+ createdAt?: Date;
19
+ updatedAt?: Date;
20
+ }
21
+ //# sourceMappingURL=leadLedger.interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"leadLedger.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/leadLedger.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAE3C,MAAM,WAAW,WAAY,SAAQ,QAAQ;IAC3C,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC;IAC1B,cAAc,EAAE,KAAK,CAAC,QAAQ,CAAC;IAC/B,MAAM,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC;IACxB,SAAS,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC;IAE3B,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;IAKhC,MAAM,EAAE,QAAQ,GAAG,WAAW,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,CAAC;IAOtE,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IAEjB,kBAAkB,EAAE,IAAI,CAAC;IACzB,gBAAgB,EAAE,IAAI,CAAC;IAGvB,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC;IAG7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC;IAE3B,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,SAAS,CAAC,EAAE,IAAI,CAAC;CAClB"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1 +1 @@
1
- {"version":3,"file":"company.model.d.ts","sourceRoot":"","sources":["../../src/models/company.model.ts"],"names":[],"mappings":"AAAA,OAAO,QAA2B,MAAM,UAAU,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AA6J3D,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,QAA2B,MAAM,UAAU,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAkK3D,eAAO,MAAM,OAAO;;;;OAAqD,CAAC;AAC1E,eAAe,OAAO,CAAC"}
@@ -38,6 +38,11 @@ const mongoose_1 = __importStar(require("mongoose"));
38
38
  // Company Schema
39
39
  const companySchema = new mongoose_1.Schema({
40
40
  instructions: { type: String, trim: true },
41
+ status: {
42
+ type: String,
43
+ enum: ["active", "inactive"],
44
+ default: "active",
45
+ },
41
46
  basicInfo: {
42
47
  companyId: {
43
48
  type: String,
@@ -0,0 +1,9 @@
1
+ import mongoose from "mongoose";
2
+ import { IInvoice } from "../interfaces/invoice.interface";
3
+ export declare const Invoice: mongoose.Model<IInvoice, {}, {}, {}, mongoose.Document<unknown, {}, IInvoice, {}, {}> & IInvoice & Required<{
4
+ _id: unknown;
5
+ }> & {
6
+ __v: number;
7
+ }, any>;
8
+ export default Invoice;
9
+ //# sourceMappingURL=invoice.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"invoice.model.d.ts","sourceRoot":"","sources":["../../src/models/invoice.model.ts"],"names":[],"mappings":"AAAA,OAAO,QAAoB,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AA+H3D,eAAO,MAAM,OAAO;;;;OAAqD,CAAC;AAC1E,eAAe,OAAO,CAAC"}
@@ -0,0 +1,145 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.Invoice = void 0;
37
+ const mongoose_1 = __importStar(require("mongoose"));
38
+ // ─────────────────────────────────────────────
39
+ // INVOICE SCHEMA
40
+ // ─────────────────────────────────────────────
41
+ const invoiceSchema = new mongoose_1.Schema({
42
+ // ─────────────────────────────────────────────
43
+ // RELATIONS
44
+ // ─────────────────────────────────────────────
45
+ companyId: {
46
+ type: mongoose_1.Schema.Types.ObjectId,
47
+ ref: "Company",
48
+ required: [true, "Company ID is required"],
49
+ index: true,
50
+ },
51
+ subscriptionId: {
52
+ type: mongoose_1.Schema.Types.ObjectId,
53
+ ref: "Subscription",
54
+ required: [true, "Subscription ID is required"],
55
+ },
56
+ // ─────────────────────────────────────────────
57
+ // BILLING PERIOD
58
+ // ─────────────────────────────────────────────
59
+ billingPeriodStart: {
60
+ type: Date,
61
+ required: [true, "Billing period start is required"],
62
+ },
63
+ billingPeriodEnd: {
64
+ type: Date,
65
+ required: [true, "Billing period end is required"],
66
+ },
67
+ // ─────────────────────────────────────────────
68
+ // STATUS
69
+ // ─────────────────────────────────────────────
70
+ status: {
71
+ type: String,
72
+ enum: [
73
+ "draft",
74
+ "pending_approval",
75
+ "approved",
76
+ "pending_payment",
77
+ "paid",
78
+ "void",
79
+ "disputed",
80
+ ],
81
+ default: "draft",
82
+ },
83
+ // ─────────────────────────────────────────────
84
+ // LEDGER ENTRIES
85
+ // ─────────────────────────────────────────────
86
+ ledgerEntries: [
87
+ {
88
+ type: mongoose_1.Schema.Types.ObjectId,
89
+ ref: "LeadLedger",
90
+ },
91
+ ],
92
+ // ─────────────────────────────────────────────
93
+ // FINANCIALS (all in cents)
94
+ // ─────────────────────────────────────────────
95
+ subtotal: {
96
+ type: Number,
97
+ required: [true, "Subtotal is required"],
98
+ min: 0,
99
+ },
100
+ // adjustments can be negative (net deducts > adds)
101
+ adjustments: {
102
+ type: Number,
103
+ required: [true, "Adjustments are required"],
104
+ },
105
+ totalDue: {
106
+ type: Number,
107
+ required: [true, "Total due is required"],
108
+ min: 0,
109
+ },
110
+ // ─────────────────────────────────────────────
111
+ // STRIPE (populated after admin approval)
112
+ // ─────────────────────────────────────────────
113
+ stripeInvoiceId: {
114
+ type: String,
115
+ index: true,
116
+ },
117
+ stripeInvoiceUrl: String,
118
+ // ─────────────────────────────────────────────
119
+ // ADMIN APPROVAL
120
+ // ─────────────────────────────────────────────
121
+ approvedBy: {
122
+ type: mongoose_1.Schema.Types.ObjectId,
123
+ ref: "User",
124
+ },
125
+ approvedAt: Date,
126
+ // ─────────────────────────────────────────────
127
+ // PAYMENT
128
+ // ─────────────────────────────────────────────
129
+ paidAt: Date,
130
+ notes: {
131
+ type: String,
132
+ trim: true,
133
+ },
134
+ }, {
135
+ timestamps: true,
136
+ toJSON: { virtuals: true },
137
+ toObject: { virtuals: true },
138
+ });
139
+ // ─────────────────────────────────────────────
140
+ // INDEXES
141
+ // ─────────────────────────────────────────────
142
+ invoiceSchema.index({ companyId: 1, status: 1 });
143
+ invoiceSchema.index({ companyId: 1, billingPeriodStart: 1 });
144
+ exports.Invoice = mongoose_1.default.model("Invoice", invoiceSchema);
145
+ exports.default = exports.Invoice;
@@ -0,0 +1,9 @@
1
+ import mongoose from "mongoose";
2
+ import { ILeadDispute } from "../interfaces/leadDispute.interface";
3
+ export declare const LeadDispute: mongoose.Model<ILeadDispute, {}, {}, {}, mongoose.Document<unknown, {}, ILeadDispute, {}, {}> & ILeadDispute & Required<{
4
+ _id: unknown;
5
+ }> & {
6
+ __v: number;
7
+ }, any>;
8
+ export default LeadDispute;
9
+ //# sourceMappingURL=leadDispute.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"leadDispute.model.d.ts","sourceRoot":"","sources":["../../src/models/leadDispute.model.ts"],"names":[],"mappings":"AAAA,OAAO,QAAoB,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AA+FnE,eAAO,MAAM,WAAW;;;;OAGvB,CAAC;AACF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.LeadDispute = void 0;
37
+ const mongoose_1 = __importStar(require("mongoose"));
38
+ // ─────────────────────────────────────────────
39
+ // LEAD DISPUTE SCHEMA
40
+ // ─────────────────────────────────────────────
41
+ const leadDisputeSchema = new mongoose_1.Schema({
42
+ // ─────────────────────────────────────────────
43
+ // RELATIONS
44
+ // ─────────────────────────────────────────────
45
+ companyId: {
46
+ type: mongoose_1.Schema.Types.ObjectId,
47
+ ref: "Company",
48
+ required: [true, "Company ID is required"],
49
+ },
50
+ invoiceId: {
51
+ type: mongoose_1.Schema.Types.ObjectId,
52
+ ref: "Invoice",
53
+ required: [true, "Invoice ID is required"],
54
+ },
55
+ leadLedgerId: {
56
+ type: mongoose_1.Schema.Types.ObjectId,
57
+ ref: "LeadLedger",
58
+ required: [true, "Lead ledger entry ID is required"],
59
+ },
60
+ leadId: {
61
+ type: mongoose_1.Schema.Types.ObjectId,
62
+ ref: "Lead",
63
+ required: [true, "Lead ID is required"],
64
+ },
65
+ // ─────────────────────────────────────────────
66
+ // DISPUTE DETAILS
67
+ // ─────────────────────────────────────────────
68
+ reason: {
69
+ type: String,
70
+ required: [true, "Dispute reason is required"],
71
+ trim: true,
72
+ },
73
+ status: {
74
+ type: String,
75
+ enum: ["open", "under_review", "approved", "rejected"],
76
+ default: "open",
77
+ },
78
+ // ─────────────────────────────────────────────
79
+ // RESOLUTION
80
+ // ─────────────────────────────────────────────
81
+ resolution: {
82
+ type: String,
83
+ enum: ["refund_to_card", "credit_next_invoice"],
84
+ },
85
+ resolutionAmount: {
86
+ type: Number,
87
+ min: 0,
88
+ },
89
+ // Stripe Credit Note (populated when resolution = 'refund_to_card')
90
+ stripeCreditNoteId: String,
91
+ // ─────────────────────────────────────────────
92
+ // USERS
93
+ // ─────────────────────────────────────────────
94
+ raisedBy: {
95
+ type: mongoose_1.Schema.Types.ObjectId,
96
+ ref: "User",
97
+ required: [true, "Raised by user ID is required"],
98
+ },
99
+ resolvedBy: {
100
+ type: mongoose_1.Schema.Types.ObjectId,
101
+ ref: "User",
102
+ },
103
+ resolvedAt: Date,
104
+ }, {
105
+ timestamps: true,
106
+ toJSON: { virtuals: true },
107
+ toObject: { virtuals: true },
108
+ });
109
+ // ─────────────────────────────────────────────
110
+ // INDEXES
111
+ // ─────────────────────────────────────────────
112
+ leadDisputeSchema.index({ companyId: 1, status: 1 });
113
+ leadDisputeSchema.index({ invoiceId: 1 });
114
+ leadDisputeSchema.index({ leadLedgerId: 1 });
115
+ exports.LeadDispute = mongoose_1.default.model("LeadDispute", leadDisputeSchema);
116
+ exports.default = exports.LeadDispute;
@@ -0,0 +1,9 @@
1
+ import mongoose from "mongoose";
2
+ import { ILeadLedger } from "../interfaces/leadLedger.interface";
3
+ export declare const LeadLedger: mongoose.Model<ILeadLedger, {}, {}, {}, mongoose.Document<unknown, {}, ILeadLedger, {}, {}> & ILeadLedger & Required<{
4
+ _id: unknown;
5
+ }> & {
6
+ __v: number;
7
+ }, any>;
8
+ export default LeadLedger;
9
+ //# sourceMappingURL=leadLedger.model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"leadLedger.model.d.ts","sourceRoot":"","sources":["../../src/models/leadLedger.model.ts"],"names":[],"mappings":"AAAA,OAAO,QAAoB,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AA4HjE,eAAO,MAAM,UAAU;;;;OAGtB,CAAC;AACF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,142 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.LeadLedger = void 0;
37
+ const mongoose_1 = __importStar(require("mongoose"));
38
+ // ─────────────────────────────────────────────
39
+ // LEAD LEDGER SCHEMA
40
+ // ─────────────────────────────────────────────
41
+ const leadLedgerSchema = new mongoose_1.Schema({
42
+ // ─────────────────────────────────────────────
43
+ // RELATIONS
44
+ // ─────────────────────────────────────────────
45
+ companyId: {
46
+ type: mongoose_1.Schema.Types.ObjectId,
47
+ ref: "Company",
48
+ required: [true, "Company ID is required"],
49
+ index: true,
50
+ },
51
+ subscriptionId: {
52
+ type: mongoose_1.Schema.Types.ObjectId,
53
+ ref: "Subscription",
54
+ required: [true, "Subscription ID is required"],
55
+ },
56
+ leadId: {
57
+ type: mongoose_1.Schema.Types.ObjectId,
58
+ ref: "Lead",
59
+ },
60
+ invoiceId: {
61
+ type: mongoose_1.Schema.Types.ObjectId,
62
+ ref: "Invoice",
63
+ index: true,
64
+ default: null,
65
+ },
66
+ // ─────────────────────────────────────────────
67
+ // TYPE & STATUS
68
+ // ─────────────────────────────────────────────
69
+ type: {
70
+ type: String,
71
+ enum: ["lead", "add", "deduct"],
72
+ required: [true, "Ledger entry type is required"],
73
+ },
74
+ status: {
75
+ type: String,
76
+ enum: ["active", "discarded", "disputed", "invoiced", "credited"],
77
+ default: "active",
78
+ },
79
+ // ─────────────────────────────────────────────
80
+ // FINANCIALS
81
+ // ─────────────────────────────────────────────
82
+ unitPrice: {
83
+ type: Number,
84
+ required: [true, "Unit price is required"],
85
+ min: 0,
86
+ },
87
+ quantity: {
88
+ type: Number,
89
+ default: 1,
90
+ min: 1,
91
+ },
92
+ // ─────────────────────────────────────────────
93
+ // BILLING PERIOD
94
+ // ─────────────────────────────────────────────
95
+ billingPeriodStart: {
96
+ type: Date,
97
+ required: [true, "Billing period start is required"],
98
+ },
99
+ billingPeriodEnd: {
100
+ type: Date,
101
+ required: [true, "Billing period end is required"],
102
+ },
103
+ // ─────────────────────────────────────────────
104
+ // DISCARD FIELDS (status = 'discarded')
105
+ // ─────────────────────────────────────────────
106
+ discardedAt: Date,
107
+ discardReason: {
108
+ type: String,
109
+ trim: true,
110
+ },
111
+ discardedBy: {
112
+ type: mongoose_1.Schema.Types.ObjectId,
113
+ ref: "User",
114
+ },
115
+ // ─────────────────────────────────────────────
116
+ // MANUAL ENTRY FIELDS (type = 'add' | 'deduct')
117
+ // ─────────────────────────────────────────────
118
+ note: {
119
+ type: String,
120
+ trim: true,
121
+ },
122
+ createdBy: {
123
+ type: mongoose_1.Schema.Types.ObjectId,
124
+ ref: "User",
125
+ },
126
+ }, {
127
+ timestamps: true,
128
+ toJSON: { virtuals: true },
129
+ toObject: { virtuals: true },
130
+ });
131
+ // ─────────────────────────────────────────────
132
+ // INDEXES
133
+ // ─────────────────────────────────────────────
134
+ leadLedgerSchema.index({ companyId: 1, status: 1 });
135
+ leadLedgerSchema.index({
136
+ companyId: 1,
137
+ billingPeriodStart: 1,
138
+ billingPeriodEnd: 1,
139
+ });
140
+ leadLedgerSchema.index({ invoiceId: 1 });
141
+ exports.LeadLedger = mongoose_1.default.model("LeadLedger", leadLedgerSchema);
142
+ exports.default = exports.LeadLedger;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "orbitx-core-models",
3
- "version": "11.87.0",
3
+ "version": "11.89.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",