@dynamatix/gb-schemas 1.2.145 → 1.2.147
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/applicants/applicant-additional-income.model.d.ts +194 -0
- package/dist/applicants/applicant-additional-income.model.d.ts.map +1 -0
- package/dist/applicants/applicant-additional-income.model.js +14 -0
- package/dist/applicants/applicant-commitment-creditCard.model.d.ts +17 -3
- package/dist/applicants/applicant-commitment-creditCard.model.d.ts.map +1 -1
- package/dist/applicants/applicant-commitment-creditCard.model.js +23 -10
- package/dist/applicants/applicant-commitment-loan.model.d.ts +23 -3
- package/dist/applicants/applicant-commitment-loan.model.d.ts.map +1 -1
- package/dist/applicants/applicant-commitment-loan.model.js +33 -12
- package/dist/applicants/applicant-commitment-mortgage.model.d.ts +77 -303
- package/dist/applicants/applicant-commitment-mortgage.model.d.ts.map +1 -1
- package/dist/applicants/applicant-commitment-mortgage.model.js +51 -23
- package/dist/applicants/applicant-commitment-residence.model.d.ts +9 -9
- package/dist/applicants/applicant-commitment-residence.model.d.ts.map +1 -1
- package/dist/applicants/applicant-commitment-residence.model.js +8 -5
- package/dist/applicants/applicant-commitment-secureLoan.model.d.ts +30 -6
- package/dist/applicants/applicant-commitment-secureLoan.model.d.ts.map +1 -1
- package/dist/applicants/applicant-commitment-secureLoan.model.js +24 -10
- package/dist/applicants/applicant-commitment-unsecuredLoan.model.d.ts +36 -6
- package/dist/applicants/applicant-commitment-unsecuredLoan.model.d.ts.map +1 -1
- package/dist/applicants/applicant-commitment-unsecuredLoan.model.js +24 -9
- package/dist/applicants/applicant-employment-income.model.d.ts +175 -0
- package/dist/applicants/applicant-employment-income.model.d.ts.map +1 -0
- package/dist/applicants/applicant-employment-income.model.js +14 -0
- package/dist/applicants/applicant-employment.model.d.ts +1231 -24
- package/dist/applicants/applicant-employment.model.d.ts.map +1 -1
- package/dist/applicants/applicant-employment.model.js +3 -12
- package/dist/applicants/applicant-expenditure.model.d.ts +79 -50
- package/dist/applicants/applicant-expenditure.model.d.ts.map +1 -1
- package/dist/applicants/applicant-expenditure.model.js +57 -18
- package/dist/applicants/applicant-income-settings.model.d.ts +54 -0
- package/dist/applicants/applicant-income-settings.model.d.ts.map +1 -0
- package/dist/applicants/applicant-income-settings.model.js +16 -0
- package/dist/applicants/applicant-income.model.d.ts +2068 -30
- package/dist/applicants/applicant-income.model.d.ts.map +1 -1
- package/dist/applicants/applicant-income.model.js +35 -12
- package/dist/applicants/applicant-pension-income.model.d.ts +457 -0
- package/dist/applicants/applicant-pension-income.model.d.ts.map +1 -0
- package/dist/applicants/applicant-pension-income.model.js +30 -0
- package/dist/applicants/applicant-property-income.model.d.ts +871 -13
- package/dist/applicants/applicant-property-income.model.d.ts.map +1 -1
- package/dist/applicants/applicant-property-income.model.js +12 -5
- package/dist/applicants/applicant-self-employed-income.model.d.ts +182 -0
- package/dist/applicants/applicant-self-employed-income.model.d.ts.map +1 -0
- package/dist/applicants/applicant-self-employed-income.model.js +17 -0
- package/dist/applicants/applicant-sole-trader-income.model.d.ts +182 -0
- package/dist/applicants/applicant-sole-trader-income.model.d.ts.map +1 -0
- package/dist/applicants/applicant-sole-trader-income.model.js +17 -0
- package/dist/applicants/applicant-uk-tax-credits.model.d.ts +463 -0
- package/dist/applicants/applicant-uk-tax-credits.model.d.ts.map +1 -0
- package/dist/applicants/applicant-uk-tax-credits.model.js +16 -0
- package/dist/applicants/applicant.model.d.ts +101 -8762
- package/dist/applicants/applicant.model.d.ts.map +1 -1
- package/dist/applicants/applicant.model.js +19 -21
- package/dist/applicants/index.d.ts +13 -2
- package/dist/applicants/index.d.ts.map +1 -1
- package/dist/applicants/index.js +13 -2
- package/dist/applications/application-mortgage.model.d.ts +1137 -129
- package/dist/applications/application-mortgage.model.d.ts.map +1 -1
- package/dist/applications/application-mortgage.model.js +28 -5
- package/dist/applications/application-productfeatures.model.d.ts +738 -0
- package/dist/applications/application-productfeatures.model.d.ts.map +1 -0
- package/dist/applications/{productfeatures.model.js → application-productfeatures.model.js} +3 -1
- package/dist/applications/application.model.d.ts +0 -762
- package/dist/applications/application.model.d.ts.map +1 -1
- package/dist/applications/application.model.js +0 -8
- package/dist/applications/index.d.ts +1 -1
- package/dist/applications/index.d.ts.map +1 -1
- package/dist/applications/index.js +1 -1
- package/dist/value-objects/sort-code.d.ts.map +1 -1
- package/dist/value-objects/sort-code.js +4 -13
- package/package.json +2 -2
- package/dist/applicants/applicant-income-source.model.d.ts +0 -26
- package/dist/applicants/applicant-income-source.model.d.ts.map +0 -1
- package/dist/applicants/applicant-income-source.model.js +0 -9
- package/dist/applicants/applicant-other-income.model.d.ts +0 -85
- package/dist/applicants/applicant-other-income.model.d.ts.map +0 -1
- package/dist/applicants/applicant-other-income.model.js +0 -46
- package/dist/applications/productfeatures.model.d.ts +0 -368
- package/dist/applications/productfeatures.model.d.ts.map +0 -1
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import mongoose from "mongoose";
|
|
2
2
|
import { Pound } from "../value-objects/pound";
|
|
3
|
-
import { truncate } from "node:fs/promises";
|
|
4
3
|
const residenceCommitmentSchema = new mongoose.Schema({
|
|
5
4
|
applicantId: { type: mongoose.Schema.Types.ObjectId, ref: "Applicant", required: true },
|
|
6
5
|
pageValidFlag: { type: Boolean, default: false },
|
|
@@ -21,22 +20,26 @@ const residenceCommitmentSchema = new mongoose.Schema({
|
|
|
21
20
|
monthlyPayment: { type: Pound, required: true },
|
|
22
21
|
furtherAdvances: {
|
|
23
22
|
type: Boolean,
|
|
24
|
-
required:
|
|
23
|
+
required: true,
|
|
24
|
+
get: (v) => v ? "Yes" : "No"
|
|
25
25
|
},
|
|
26
26
|
furtherAdvanceDetails: { type: String, required: true },
|
|
27
27
|
accountUptoDate: {
|
|
28
28
|
type: Boolean,
|
|
29
|
-
required: true
|
|
29
|
+
required: true,
|
|
30
|
+
get: (v) => v ? "Yes" : "No"
|
|
30
31
|
},
|
|
31
32
|
accountUptoDateFailDetails: { type: String, required: true },
|
|
32
33
|
accountInArrears: {
|
|
33
34
|
type: Boolean,
|
|
34
|
-
required: true
|
|
35
|
+
required: true,
|
|
36
|
+
get: (v) => v ? "Yes" : "No"
|
|
35
37
|
},
|
|
36
38
|
accountInArrearsDetails: { type: String, required: true },
|
|
37
39
|
doHaveSharedResponsibility: {
|
|
38
40
|
type: Boolean,
|
|
39
|
-
required: true
|
|
41
|
+
required: true,
|
|
42
|
+
get: (v) => v ? "Yes" : "No"
|
|
40
43
|
},
|
|
41
44
|
sharedMortgage: { type: String, required: true }
|
|
42
45
|
}, {
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import mongoose from "mongoose";
|
|
2
2
|
import { Pound } from "../value-objects/pound";
|
|
3
3
|
declare const SecuredLoanCommitmentModel: mongoose.Model<{
|
|
4
|
+
isSelected?: unknown;
|
|
5
|
+
source?: unknown;
|
|
4
6
|
applicantId?: mongoose.Types.ObjectId | null | undefined;
|
|
5
7
|
outstandingBalance?: {
|
|
6
8
|
validators: mongoose.Types.DocumentArray<{
|
|
@@ -50,6 +52,7 @@ declare const SecuredLoanCommitmentModel: mongoose.Model<{
|
|
|
50
52
|
defaultOptions?: unknown;
|
|
51
53
|
} | null | undefined;
|
|
52
54
|
commitmentId?: unknown;
|
|
55
|
+
commitmentTypeLid?: mongoose.Types.ObjectId | null | undefined;
|
|
53
56
|
lenderName?: unknown;
|
|
54
57
|
monthlyPayment?: {
|
|
55
58
|
validators: mongoose.Types.DocumentArray<{
|
|
@@ -98,6 +101,7 @@ declare const SecuredLoanCommitmentModel: mongoose.Model<{
|
|
|
98
101
|
validateAll?: {} | null | undefined;
|
|
99
102
|
defaultOptions?: unknown;
|
|
100
103
|
} | null | undefined;
|
|
104
|
+
loanTypeLid?: mongoose.Types.ObjectId | null | undefined;
|
|
101
105
|
securityDetails?: unknown;
|
|
102
106
|
purpose?: unknown;
|
|
103
107
|
doHaveSharedResponsibility?: unknown;
|
|
@@ -105,6 +109,8 @@ declare const SecuredLoanCommitmentModel: mongoose.Model<{
|
|
|
105
109
|
remainingTerm?: unknown;
|
|
106
110
|
startDate?: unknown;
|
|
107
111
|
}, {}, {}, {}, mongoose.Document<unknown, {}, {
|
|
112
|
+
isSelected?: unknown;
|
|
113
|
+
source?: unknown;
|
|
108
114
|
applicantId?: mongoose.Types.ObjectId | null | undefined;
|
|
109
115
|
outstandingBalance?: {
|
|
110
116
|
validators: mongoose.Types.DocumentArray<{
|
|
@@ -154,6 +160,7 @@ declare const SecuredLoanCommitmentModel: mongoose.Model<{
|
|
|
154
160
|
defaultOptions?: unknown;
|
|
155
161
|
} | null | undefined;
|
|
156
162
|
commitmentId?: unknown;
|
|
163
|
+
commitmentTypeLid?: mongoose.Types.ObjectId | null | undefined;
|
|
157
164
|
lenderName?: unknown;
|
|
158
165
|
monthlyPayment?: {
|
|
159
166
|
validators: mongoose.Types.DocumentArray<{
|
|
@@ -202,6 +209,7 @@ declare const SecuredLoanCommitmentModel: mongoose.Model<{
|
|
|
202
209
|
validateAll?: {} | null | undefined;
|
|
203
210
|
defaultOptions?: unknown;
|
|
204
211
|
} | null | undefined;
|
|
212
|
+
loanTypeLid?: mongoose.Types.ObjectId | null | undefined;
|
|
205
213
|
securityDetails?: unknown;
|
|
206
214
|
purpose?: unknown;
|
|
207
215
|
doHaveSharedResponsibility?: unknown;
|
|
@@ -209,6 +217,8 @@ declare const SecuredLoanCommitmentModel: mongoose.Model<{
|
|
|
209
217
|
remainingTerm?: unknown;
|
|
210
218
|
startDate?: unknown;
|
|
211
219
|
}> & {
|
|
220
|
+
isSelected?: unknown;
|
|
221
|
+
source?: unknown;
|
|
212
222
|
applicantId?: mongoose.Types.ObjectId | null | undefined;
|
|
213
223
|
outstandingBalance?: {
|
|
214
224
|
validators: mongoose.Types.DocumentArray<{
|
|
@@ -258,6 +268,7 @@ declare const SecuredLoanCommitmentModel: mongoose.Model<{
|
|
|
258
268
|
defaultOptions?: unknown;
|
|
259
269
|
} | null | undefined;
|
|
260
270
|
commitmentId?: unknown;
|
|
271
|
+
commitmentTypeLid?: mongoose.Types.ObjectId | null | undefined;
|
|
261
272
|
lenderName?: unknown;
|
|
262
273
|
monthlyPayment?: {
|
|
263
274
|
validators: mongoose.Types.DocumentArray<{
|
|
@@ -306,6 +317,7 @@ declare const SecuredLoanCommitmentModel: mongoose.Model<{
|
|
|
306
317
|
validateAll?: {} | null | undefined;
|
|
307
318
|
defaultOptions?: unknown;
|
|
308
319
|
} | null | undefined;
|
|
320
|
+
loanTypeLid?: mongoose.Types.ObjectId | null | undefined;
|
|
309
321
|
securityDetails?: unknown;
|
|
310
322
|
purpose?: unknown;
|
|
311
323
|
doHaveSharedResponsibility?: unknown;
|
|
@@ -324,41 +336,53 @@ declare const SecuredLoanCommitmentModel: mongoose.Model<{
|
|
|
324
336
|
getters: true;
|
|
325
337
|
};
|
|
326
338
|
}, {
|
|
339
|
+
isSelected: boolean;
|
|
340
|
+
source: "Broker" | "Credit Report" | "Underwriter";
|
|
327
341
|
applicantId: mongoose.Types.ObjectId;
|
|
328
342
|
outstandingBalance: Pound;
|
|
329
343
|
commitmentId: string;
|
|
344
|
+
commitmentTypeLid: mongoose.Types.ObjectId;
|
|
330
345
|
lenderName: string;
|
|
331
346
|
monthlyPayment: Pound;
|
|
347
|
+
loanTypeLid: mongoose.Types.ObjectId;
|
|
332
348
|
securityDetails: string;
|
|
333
349
|
purpose: string;
|
|
334
|
-
doHaveSharedResponsibility: boolean;
|
|
335
350
|
sharedMortgage: string;
|
|
336
|
-
remainingTerm:
|
|
351
|
+
remainingTerm: number;
|
|
337
352
|
startDate: string;
|
|
353
|
+
doHaveSharedResponsibility?: boolean | null | undefined;
|
|
338
354
|
}, mongoose.Document<unknown, {}, mongoose.FlatRecord<{
|
|
355
|
+
isSelected: boolean;
|
|
356
|
+
source: "Broker" | "Credit Report" | "Underwriter";
|
|
339
357
|
applicantId: mongoose.Types.ObjectId;
|
|
340
358
|
outstandingBalance: Pound;
|
|
341
359
|
commitmentId: string;
|
|
360
|
+
commitmentTypeLid: mongoose.Types.ObjectId;
|
|
342
361
|
lenderName: string;
|
|
343
362
|
monthlyPayment: Pound;
|
|
363
|
+
loanTypeLid: mongoose.Types.ObjectId;
|
|
344
364
|
securityDetails: string;
|
|
345
365
|
purpose: string;
|
|
346
|
-
doHaveSharedResponsibility: boolean;
|
|
347
366
|
sharedMortgage: string;
|
|
348
|
-
remainingTerm:
|
|
367
|
+
remainingTerm: number;
|
|
349
368
|
startDate: string;
|
|
369
|
+
doHaveSharedResponsibility?: boolean | null | undefined;
|
|
350
370
|
}>> & mongoose.FlatRecord<{
|
|
371
|
+
isSelected: boolean;
|
|
372
|
+
source: "Broker" | "Credit Report" | "Underwriter";
|
|
351
373
|
applicantId: mongoose.Types.ObjectId;
|
|
352
374
|
outstandingBalance: Pound;
|
|
353
375
|
commitmentId: string;
|
|
376
|
+
commitmentTypeLid: mongoose.Types.ObjectId;
|
|
354
377
|
lenderName: string;
|
|
355
378
|
monthlyPayment: Pound;
|
|
379
|
+
loanTypeLid: mongoose.Types.ObjectId;
|
|
356
380
|
securityDetails: string;
|
|
357
381
|
purpose: string;
|
|
358
|
-
doHaveSharedResponsibility: boolean;
|
|
359
382
|
sharedMortgage: string;
|
|
360
|
-
remainingTerm:
|
|
383
|
+
remainingTerm: number;
|
|
361
384
|
startDate: string;
|
|
385
|
+
doHaveSharedResponsibility?: boolean | null | undefined;
|
|
362
386
|
}> & {
|
|
363
387
|
_id: mongoose.Types.ObjectId;
|
|
364
388
|
} & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"applicant-commitment-secureLoan.model.d.ts","sourceRoot":"","sources":["../../applicants/applicant-commitment-secureLoan.model.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"applicant-commitment-secureLoan.model.d.ts","sourceRoot":"","sources":["../../applicants/applicant-commitment-secureLoan.model.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAuC/C,QAAA,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAuE,CAAC;AACxG,eAAe,0BAA0B,CAAC"}
|
|
@@ -2,22 +2,36 @@ import mongoose from "mongoose";
|
|
|
2
2
|
import { Pound } from "../value-objects/pound";
|
|
3
3
|
const securedLoanCommitmentSchema = new mongoose.Schema({
|
|
4
4
|
applicantId: { type: mongoose.Schema.Types.ObjectId, ref: "Applicant", required: true },
|
|
5
|
-
lenderName: { type: String, required: true },
|
|
6
|
-
commitmentId: { type: String,
|
|
7
|
-
securityDetails: { type: String,
|
|
8
|
-
purpose: { type: String,
|
|
5
|
+
lenderName: { type: String, required: true }, // Provider Name / Provider category
|
|
6
|
+
commitmentId: { type: String, default: null },
|
|
7
|
+
securityDetails: { type: String, default: null },
|
|
8
|
+
purpose: { type: String, default: null },
|
|
9
9
|
doHaveSharedResponsibility: {
|
|
10
10
|
type: Boolean,
|
|
11
|
-
required: true
|
|
12
11
|
},
|
|
13
|
-
sharedMortgage: { type: String,
|
|
14
|
-
remainingTerm: { type:
|
|
15
|
-
startDate: { type: String,
|
|
16
|
-
outstandingBalance: { type: Pound, required: true },
|
|
17
|
-
monthlyPayment: { type: Pound, required: true }
|
|
12
|
+
sharedMortgage: { type: String, default: null },
|
|
13
|
+
remainingTerm: { type: Number, default: null }, // Remaining term
|
|
14
|
+
startDate: { type: String, default: null },
|
|
15
|
+
outstandingBalance: { type: Pound, required: true }, // Balance
|
|
16
|
+
monthlyPayment: { type: Pound, required: true }, // Monthly payment
|
|
17
|
+
source: {
|
|
18
|
+
type: String,
|
|
19
|
+
enum: ["Broker", "Credit Report", "Underwriter"],
|
|
20
|
+
default: "Broker"
|
|
21
|
+
},
|
|
22
|
+
isSelected: { type: Boolean, default: true }, // mark as selected for summary calculation
|
|
23
|
+
// Unique fields from loan model
|
|
24
|
+
commitmentTypeLid: { type: mongoose.Schema.Types.ObjectId, ref: "Lookup", default: null },
|
|
25
|
+
loanTypeLid: { type: mongoose.Schema.Types.ObjectId, ref: "Lookup", default: null },
|
|
18
26
|
}, {
|
|
19
27
|
toJSON: { getters: true },
|
|
20
28
|
toObject: { getters: true }
|
|
21
29
|
});
|
|
30
|
+
// virtual property 'lendingType'
|
|
31
|
+
securedLoanCommitmentSchema.virtual('lendingType').get(function () {
|
|
32
|
+
return this.applicantId?.applicationId?.lendingTypeLid instanceof mongoose.Types.ObjectId
|
|
33
|
+
? null
|
|
34
|
+
: this.applicantId?.applicationId?.lendingTypeLid?.name || null;
|
|
35
|
+
});
|
|
22
36
|
const SecuredLoanCommitmentModel = mongoose.model("SecuredLoanCommitment", securedLoanCommitmentSchema);
|
|
23
37
|
export default SecuredLoanCommitmentModel;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import mongoose from "mongoose";
|
|
2
2
|
import { Pound } from "../value-objects/pound";
|
|
3
3
|
declare const UnsecuredLoanCommitmentModel: mongoose.Model<{
|
|
4
|
+
isSelected?: unknown;
|
|
5
|
+
source?: unknown;
|
|
4
6
|
applicantId?: mongoose.Types.ObjectId | null | undefined;
|
|
5
7
|
outstandingBalance?: {
|
|
6
8
|
validators: mongoose.Types.DocumentArray<{
|
|
@@ -50,6 +52,7 @@ declare const UnsecuredLoanCommitmentModel: mongoose.Model<{
|
|
|
50
52
|
defaultOptions?: unknown;
|
|
51
53
|
} | null | undefined;
|
|
52
54
|
commitmentId?: unknown;
|
|
55
|
+
commitmentTypeLid?: mongoose.Types.ObjectId | null | undefined;
|
|
53
56
|
lenderName?: unknown;
|
|
54
57
|
monthlyPayment?: {
|
|
55
58
|
validators: mongoose.Types.DocumentArray<{
|
|
@@ -98,12 +101,16 @@ declare const UnsecuredLoanCommitmentModel: mongoose.Model<{
|
|
|
98
101
|
validateAll?: {} | null | undefined;
|
|
99
102
|
defaultOptions?: unknown;
|
|
100
103
|
} | null | undefined;
|
|
104
|
+
loanTypeLid?: mongoose.Types.ObjectId | null | undefined;
|
|
105
|
+
securityDetails?: unknown;
|
|
101
106
|
purpose?: unknown;
|
|
102
107
|
doHaveSharedResponsibility?: unknown;
|
|
103
108
|
sharedMortgage?: unknown;
|
|
104
109
|
remainingTerm?: unknown;
|
|
105
110
|
startDate?: unknown;
|
|
106
111
|
}, {}, {}, {}, mongoose.Document<unknown, {}, {
|
|
112
|
+
isSelected?: unknown;
|
|
113
|
+
source?: unknown;
|
|
107
114
|
applicantId?: mongoose.Types.ObjectId | null | undefined;
|
|
108
115
|
outstandingBalance?: {
|
|
109
116
|
validators: mongoose.Types.DocumentArray<{
|
|
@@ -153,6 +160,7 @@ declare const UnsecuredLoanCommitmentModel: mongoose.Model<{
|
|
|
153
160
|
defaultOptions?: unknown;
|
|
154
161
|
} | null | undefined;
|
|
155
162
|
commitmentId?: unknown;
|
|
163
|
+
commitmentTypeLid?: mongoose.Types.ObjectId | null | undefined;
|
|
156
164
|
lenderName?: unknown;
|
|
157
165
|
monthlyPayment?: {
|
|
158
166
|
validators: mongoose.Types.DocumentArray<{
|
|
@@ -201,12 +209,16 @@ declare const UnsecuredLoanCommitmentModel: mongoose.Model<{
|
|
|
201
209
|
validateAll?: {} | null | undefined;
|
|
202
210
|
defaultOptions?: unknown;
|
|
203
211
|
} | null | undefined;
|
|
212
|
+
loanTypeLid?: mongoose.Types.ObjectId | null | undefined;
|
|
213
|
+
securityDetails?: unknown;
|
|
204
214
|
purpose?: unknown;
|
|
205
215
|
doHaveSharedResponsibility?: unknown;
|
|
206
216
|
sharedMortgage?: unknown;
|
|
207
217
|
remainingTerm?: unknown;
|
|
208
218
|
startDate?: unknown;
|
|
209
219
|
}> & {
|
|
220
|
+
isSelected?: unknown;
|
|
221
|
+
source?: unknown;
|
|
210
222
|
applicantId?: mongoose.Types.ObjectId | null | undefined;
|
|
211
223
|
outstandingBalance?: {
|
|
212
224
|
validators: mongoose.Types.DocumentArray<{
|
|
@@ -256,6 +268,7 @@ declare const UnsecuredLoanCommitmentModel: mongoose.Model<{
|
|
|
256
268
|
defaultOptions?: unknown;
|
|
257
269
|
} | null | undefined;
|
|
258
270
|
commitmentId?: unknown;
|
|
271
|
+
commitmentTypeLid?: mongoose.Types.ObjectId | null | undefined;
|
|
259
272
|
lenderName?: unknown;
|
|
260
273
|
monthlyPayment?: {
|
|
261
274
|
validators: mongoose.Types.DocumentArray<{
|
|
@@ -304,6 +317,8 @@ declare const UnsecuredLoanCommitmentModel: mongoose.Model<{
|
|
|
304
317
|
validateAll?: {} | null | undefined;
|
|
305
318
|
defaultOptions?: unknown;
|
|
306
319
|
} | null | undefined;
|
|
320
|
+
loanTypeLid?: mongoose.Types.ObjectId | null | undefined;
|
|
321
|
+
securityDetails?: unknown;
|
|
307
322
|
purpose?: unknown;
|
|
308
323
|
doHaveSharedResponsibility?: unknown;
|
|
309
324
|
sharedMortgage?: unknown;
|
|
@@ -321,38 +336,53 @@ declare const UnsecuredLoanCommitmentModel: mongoose.Model<{
|
|
|
321
336
|
getters: true;
|
|
322
337
|
};
|
|
323
338
|
}, {
|
|
339
|
+
isSelected: boolean;
|
|
340
|
+
source: "Broker" | "Credit Report" | "Underwriter";
|
|
324
341
|
applicantId: mongoose.Types.ObjectId;
|
|
325
342
|
outstandingBalance: Pound;
|
|
326
343
|
commitmentId: string;
|
|
344
|
+
commitmentTypeLid: mongoose.Types.ObjectId;
|
|
327
345
|
lenderName: string;
|
|
328
346
|
monthlyPayment: Pound;
|
|
347
|
+
loanTypeLid: mongoose.Types.ObjectId;
|
|
348
|
+
securityDetails: string;
|
|
329
349
|
purpose: string;
|
|
330
|
-
doHaveSharedResponsibility: boolean;
|
|
331
350
|
sharedMortgage: string;
|
|
332
|
-
remainingTerm:
|
|
351
|
+
remainingTerm: number;
|
|
333
352
|
startDate: string;
|
|
353
|
+
doHaveSharedResponsibility?: boolean | null | undefined;
|
|
334
354
|
}, mongoose.Document<unknown, {}, mongoose.FlatRecord<{
|
|
355
|
+
isSelected: boolean;
|
|
356
|
+
source: "Broker" | "Credit Report" | "Underwriter";
|
|
335
357
|
applicantId: mongoose.Types.ObjectId;
|
|
336
358
|
outstandingBalance: Pound;
|
|
337
359
|
commitmentId: string;
|
|
360
|
+
commitmentTypeLid: mongoose.Types.ObjectId;
|
|
338
361
|
lenderName: string;
|
|
339
362
|
monthlyPayment: Pound;
|
|
363
|
+
loanTypeLid: mongoose.Types.ObjectId;
|
|
364
|
+
securityDetails: string;
|
|
340
365
|
purpose: string;
|
|
341
|
-
doHaveSharedResponsibility: boolean;
|
|
342
366
|
sharedMortgage: string;
|
|
343
|
-
remainingTerm:
|
|
367
|
+
remainingTerm: number;
|
|
344
368
|
startDate: string;
|
|
369
|
+
doHaveSharedResponsibility?: boolean | null | undefined;
|
|
345
370
|
}>> & mongoose.FlatRecord<{
|
|
371
|
+
isSelected: boolean;
|
|
372
|
+
source: "Broker" | "Credit Report" | "Underwriter";
|
|
346
373
|
applicantId: mongoose.Types.ObjectId;
|
|
347
374
|
outstandingBalance: Pound;
|
|
348
375
|
commitmentId: string;
|
|
376
|
+
commitmentTypeLid: mongoose.Types.ObjectId;
|
|
349
377
|
lenderName: string;
|
|
350
378
|
monthlyPayment: Pound;
|
|
379
|
+
loanTypeLid: mongoose.Types.ObjectId;
|
|
380
|
+
securityDetails: string;
|
|
351
381
|
purpose: string;
|
|
352
|
-
doHaveSharedResponsibility: boolean;
|
|
353
382
|
sharedMortgage: string;
|
|
354
|
-
remainingTerm:
|
|
383
|
+
remainingTerm: number;
|
|
355
384
|
startDate: string;
|
|
385
|
+
doHaveSharedResponsibility?: boolean | null | undefined;
|
|
356
386
|
}> & {
|
|
357
387
|
_id: mongoose.Types.ObjectId;
|
|
358
388
|
} & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"applicant-commitment-unsecuredLoan.model.d.ts","sourceRoot":"","sources":["../../applicants/applicant-commitment-unsecuredLoan.model.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"applicant-commitment-unsecuredLoan.model.d.ts","sourceRoot":"","sources":["../../applicants/applicant-commitment-unsecuredLoan.model.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAuC/C,QAAA,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAA2E,CAAC;AAC9G,eAAe,4BAA4B,CAAC"}
|
|
@@ -2,21 +2,36 @@ import mongoose from "mongoose";
|
|
|
2
2
|
import { Pound } from "../value-objects/pound";
|
|
3
3
|
const unsecuredLoanCommitmentSchema = new mongoose.Schema({
|
|
4
4
|
applicantId: { type: mongoose.Schema.Types.ObjectId, ref: "Applicant", required: true },
|
|
5
|
-
lenderName: { type: String, required: true },
|
|
6
|
-
commitmentId: { type: String,
|
|
7
|
-
purpose: { type: String,
|
|
5
|
+
lenderName: { type: String, required: true }, // Provider Name / Provider category
|
|
6
|
+
commitmentId: { type: String, default: null },
|
|
7
|
+
purpose: { type: String, default: null },
|
|
8
8
|
doHaveSharedResponsibility: {
|
|
9
9
|
type: Boolean,
|
|
10
|
-
required: true
|
|
11
10
|
},
|
|
12
|
-
sharedMortgage: { type: String,
|
|
13
|
-
remainingTerm: { type:
|
|
14
|
-
startDate: { type: String,
|
|
15
|
-
outstandingBalance: { type: Pound, required: true },
|
|
16
|
-
monthlyPayment: { type: Pound, required: true }
|
|
11
|
+
sharedMortgage: { type: String, default: null },
|
|
12
|
+
remainingTerm: { type: Number, default: null }, // Remaining term
|
|
13
|
+
startDate: { type: String, default: null },
|
|
14
|
+
outstandingBalance: { type: Pound, required: true }, // Balance
|
|
15
|
+
monthlyPayment: { type: Pound, required: true }, // Monthly payment
|
|
16
|
+
source: {
|
|
17
|
+
type: String,
|
|
18
|
+
enum: ["Broker", "Credit Report", "Underwriter"],
|
|
19
|
+
default: "Broker"
|
|
20
|
+
},
|
|
21
|
+
isSelected: { type: Boolean, default: true }, // mark as selected for summary calculation
|
|
22
|
+
// Unique fields from loan model
|
|
23
|
+
commitmentTypeLid: { type: mongoose.Schema.Types.ObjectId, ref: "Lookup", default: null },
|
|
24
|
+
loanTypeLid: { type: mongoose.Schema.Types.ObjectId, ref: "Lookup", default: null },
|
|
25
|
+
securityDetails: { type: String, default: null },
|
|
17
26
|
}, {
|
|
18
27
|
toJSON: { getters: true },
|
|
19
28
|
toObject: { getters: true }
|
|
20
29
|
});
|
|
30
|
+
// virtual property 'lendingType'
|
|
31
|
+
unsecuredLoanCommitmentSchema.virtual('lendingType').get(function () {
|
|
32
|
+
return this.applicantId?.applicationId?.lendingTypeLid instanceof mongoose.Types.ObjectId
|
|
33
|
+
? null
|
|
34
|
+
: this.applicantId?.applicationId?.lendingTypeLid?.name || null;
|
|
35
|
+
});
|
|
21
36
|
const UnsecuredLoanCommitmentModel = mongoose.model("UnsecuredLoanCommitment", unsecuredLoanCommitmentSchema);
|
|
22
37
|
export default UnsecuredLoanCommitmentModel;
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import mongoose from "mongoose";
|
|
2
|
+
import { Pound } from "../value-objects/pound";
|
|
3
|
+
declare const ApplicantEmploymentIncomeModel: mongoose.Model<{
|
|
4
|
+
applicantId?: mongoose.Types.ObjectId | null | undefined;
|
|
5
|
+
amount?: {
|
|
6
|
+
validators: mongoose.Types.DocumentArray<{
|
|
7
|
+
type?: unknown;
|
|
8
|
+
message?: unknown;
|
|
9
|
+
validator?: unknown;
|
|
10
|
+
reason?: unknown;
|
|
11
|
+
}, mongoose.Types.Subdocument<mongoose.Types.ObjectId, any, {
|
|
12
|
+
type?: unknown;
|
|
13
|
+
message?: unknown;
|
|
14
|
+
validator?: unknown;
|
|
15
|
+
reason?: unknown;
|
|
16
|
+
}> & {
|
|
17
|
+
type?: unknown;
|
|
18
|
+
message?: unknown;
|
|
19
|
+
validator?: unknown;
|
|
20
|
+
reason?: unknown;
|
|
21
|
+
}>;
|
|
22
|
+
get?: {} | null | undefined;
|
|
23
|
+
schema?: {
|
|
24
|
+
[x: string]: unknown;
|
|
25
|
+
} | null | undefined;
|
|
26
|
+
set?: {} | null | undefined;
|
|
27
|
+
validate?: {} | null | undefined;
|
|
28
|
+
default?: {} | null | undefined;
|
|
29
|
+
text?: {} | null | undefined;
|
|
30
|
+
unique?: {} | null | undefined;
|
|
31
|
+
index?: {} | null | undefined;
|
|
32
|
+
sparse?: {} | null | undefined;
|
|
33
|
+
required?: {} | null | undefined;
|
|
34
|
+
ref?: {} | null | undefined;
|
|
35
|
+
cast?: {} | null | undefined;
|
|
36
|
+
select?: {} | null | undefined;
|
|
37
|
+
immutable?: {} | null | undefined;
|
|
38
|
+
transform?: {} | null | undefined;
|
|
39
|
+
options?: {
|
|
40
|
+
[x: string]: unknown;
|
|
41
|
+
} | null | undefined;
|
|
42
|
+
OptionsConstructor?: {
|
|
43
|
+
[x: string]: unknown;
|
|
44
|
+
} | null | undefined;
|
|
45
|
+
getEmbeddedSchemaType?: {} | null | undefined;
|
|
46
|
+
instance?: unknown;
|
|
47
|
+
isRequired?: unknown;
|
|
48
|
+
path?: unknown;
|
|
49
|
+
validateAll?: {} | null | undefined;
|
|
50
|
+
defaultOptions?: unknown;
|
|
51
|
+
} | null | undefined;
|
|
52
|
+
incomeTypeLid?: mongoose.Types.ObjectId | null | undefined;
|
|
53
|
+
}, {}, {}, {}, mongoose.Document<unknown, {}, {
|
|
54
|
+
applicantId?: mongoose.Types.ObjectId | null | undefined;
|
|
55
|
+
amount?: {
|
|
56
|
+
validators: mongoose.Types.DocumentArray<{
|
|
57
|
+
type?: unknown;
|
|
58
|
+
message?: unknown;
|
|
59
|
+
validator?: unknown;
|
|
60
|
+
reason?: unknown;
|
|
61
|
+
}, mongoose.Types.Subdocument<mongoose.Types.ObjectId, any, {
|
|
62
|
+
type?: unknown;
|
|
63
|
+
message?: unknown;
|
|
64
|
+
validator?: unknown;
|
|
65
|
+
reason?: unknown;
|
|
66
|
+
}> & {
|
|
67
|
+
type?: unknown;
|
|
68
|
+
message?: unknown;
|
|
69
|
+
validator?: unknown;
|
|
70
|
+
reason?: unknown;
|
|
71
|
+
}>;
|
|
72
|
+
get?: {} | null | undefined;
|
|
73
|
+
schema?: {
|
|
74
|
+
[x: string]: unknown;
|
|
75
|
+
} | null | undefined;
|
|
76
|
+
set?: {} | null | undefined;
|
|
77
|
+
validate?: {} | null | undefined;
|
|
78
|
+
default?: {} | null | undefined;
|
|
79
|
+
text?: {} | null | undefined;
|
|
80
|
+
unique?: {} | null | undefined;
|
|
81
|
+
index?: {} | null | undefined;
|
|
82
|
+
sparse?: {} | null | undefined;
|
|
83
|
+
required?: {} | null | undefined;
|
|
84
|
+
ref?: {} | null | undefined;
|
|
85
|
+
cast?: {} | null | undefined;
|
|
86
|
+
select?: {} | null | undefined;
|
|
87
|
+
immutable?: {} | null | undefined;
|
|
88
|
+
transform?: {} | null | undefined;
|
|
89
|
+
options?: {
|
|
90
|
+
[x: string]: unknown;
|
|
91
|
+
} | null | undefined;
|
|
92
|
+
OptionsConstructor?: {
|
|
93
|
+
[x: string]: unknown;
|
|
94
|
+
} | null | undefined;
|
|
95
|
+
getEmbeddedSchemaType?: {} | null | undefined;
|
|
96
|
+
instance?: unknown;
|
|
97
|
+
isRequired?: unknown;
|
|
98
|
+
path?: unknown;
|
|
99
|
+
validateAll?: {} | null | undefined;
|
|
100
|
+
defaultOptions?: unknown;
|
|
101
|
+
} | null | undefined;
|
|
102
|
+
incomeTypeLid?: mongoose.Types.ObjectId | null | undefined;
|
|
103
|
+
}> & {
|
|
104
|
+
applicantId?: mongoose.Types.ObjectId | null | undefined;
|
|
105
|
+
amount?: {
|
|
106
|
+
validators: mongoose.Types.DocumentArray<{
|
|
107
|
+
type?: unknown;
|
|
108
|
+
message?: unknown;
|
|
109
|
+
validator?: unknown;
|
|
110
|
+
reason?: unknown;
|
|
111
|
+
}, mongoose.Types.Subdocument<mongoose.Types.ObjectId, any, {
|
|
112
|
+
type?: unknown;
|
|
113
|
+
message?: unknown;
|
|
114
|
+
validator?: unknown;
|
|
115
|
+
reason?: unknown;
|
|
116
|
+
}> & {
|
|
117
|
+
type?: unknown;
|
|
118
|
+
message?: unknown;
|
|
119
|
+
validator?: unknown;
|
|
120
|
+
reason?: unknown;
|
|
121
|
+
}>;
|
|
122
|
+
get?: {} | null | undefined;
|
|
123
|
+
schema?: {
|
|
124
|
+
[x: string]: unknown;
|
|
125
|
+
} | null | undefined;
|
|
126
|
+
set?: {} | null | undefined;
|
|
127
|
+
validate?: {} | null | undefined;
|
|
128
|
+
default?: {} | null | undefined;
|
|
129
|
+
text?: {} | null | undefined;
|
|
130
|
+
unique?: {} | null | undefined;
|
|
131
|
+
index?: {} | null | undefined;
|
|
132
|
+
sparse?: {} | null | undefined;
|
|
133
|
+
required?: {} | null | undefined;
|
|
134
|
+
ref?: {} | null | undefined;
|
|
135
|
+
cast?: {} | null | undefined;
|
|
136
|
+
select?: {} | null | undefined;
|
|
137
|
+
immutable?: {} | null | undefined;
|
|
138
|
+
transform?: {} | null | undefined;
|
|
139
|
+
options?: {
|
|
140
|
+
[x: string]: unknown;
|
|
141
|
+
} | null | undefined;
|
|
142
|
+
OptionsConstructor?: {
|
|
143
|
+
[x: string]: unknown;
|
|
144
|
+
} | null | undefined;
|
|
145
|
+
getEmbeddedSchemaType?: {} | null | undefined;
|
|
146
|
+
instance?: unknown;
|
|
147
|
+
isRequired?: unknown;
|
|
148
|
+
path?: unknown;
|
|
149
|
+
validateAll?: {} | null | undefined;
|
|
150
|
+
defaultOptions?: unknown;
|
|
151
|
+
} | null | undefined;
|
|
152
|
+
incomeTypeLid?: mongoose.Types.ObjectId | null | undefined;
|
|
153
|
+
} & {
|
|
154
|
+
_id: mongoose.Types.ObjectId;
|
|
155
|
+
} & {
|
|
156
|
+
__v: number;
|
|
157
|
+
}, mongoose.Schema<any, mongoose.Model<any, any, any, any, any, any>, {}, {}, {}, {}, mongoose.DefaultSchemaOptions, {
|
|
158
|
+
applicantId: mongoose.Types.ObjectId;
|
|
159
|
+
amount: Pound;
|
|
160
|
+
incomeTypeLid: mongoose.Types.ObjectId;
|
|
161
|
+
}, mongoose.Document<unknown, {}, mongoose.FlatRecord<{
|
|
162
|
+
applicantId: mongoose.Types.ObjectId;
|
|
163
|
+
amount: Pound;
|
|
164
|
+
incomeTypeLid: mongoose.Types.ObjectId;
|
|
165
|
+
}>> & mongoose.FlatRecord<{
|
|
166
|
+
applicantId: mongoose.Types.ObjectId;
|
|
167
|
+
amount: Pound;
|
|
168
|
+
incomeTypeLid: mongoose.Types.ObjectId;
|
|
169
|
+
}> & {
|
|
170
|
+
_id: mongoose.Types.ObjectId;
|
|
171
|
+
} & {
|
|
172
|
+
__v: number;
|
|
173
|
+
}>>;
|
|
174
|
+
export default ApplicantEmploymentIncomeModel;
|
|
175
|
+
//# sourceMappingURL=applicant-employment-income.model.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"applicant-employment-income.model.d.ts","sourceRoot":"","sources":["../../applicants/applicant-employment-income.model.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAa/C,QAAA,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAgF,CAAC;AAErH,eAAe,8BAA8B,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import mongoose from "mongoose";
|
|
2
|
+
import { Pound } from "../value-objects/pound";
|
|
3
|
+
const applicantEmploymentIncomeSchema = new mongoose.Schema({
|
|
4
|
+
applicantId: { type: mongoose.Schema.Types.ObjectId, ref: "Applicant", required: true },
|
|
5
|
+
incomeTypeLid: { type: mongoose.Schema.Types.ObjectId, ref: "Lookup", required: true },
|
|
6
|
+
amount: { type: Pound, required: true },
|
|
7
|
+
});
|
|
8
|
+
applicantEmploymentIncomeSchema.virtual('incomeSourceId').get(function () {
|
|
9
|
+
return this.applicantId?.incomeSourceId instanceof mongoose.Types.ObjectId
|
|
10
|
+
? null
|
|
11
|
+
: this.applicantId?.incomeSourceId?.incomeFromEmployment || null;
|
|
12
|
+
});
|
|
13
|
+
const ApplicantEmploymentIncomeModel = mongoose.model("Applicant_EmploymentIncome", applicantEmploymentIncomeSchema);
|
|
14
|
+
export default ApplicantEmploymentIncomeModel;
|