@dynamatix/gb-schemas 1.2.87 → 1.2.88

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"application-productfeatures.model.d.ts","sourceRoot":"","sources":["../../applications/application-productfeatures.model.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAoGhC,QAAA,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAsE,CAAC;AAC5G,eAAe,+BAA+B,CAAC"}
@@ -0,0 +1,96 @@
1
+ import mongoose from "mongoose";
2
+ const feeSchema = new mongoose.Schema({
3
+ feeType: { type: String, required: true },
4
+ description: { type: String, required: true },
5
+ feeAmount: { type: String, required: true },
6
+ rate: { type: String, default: 0 },
7
+ addedToLoan: { type: String, default: false },
8
+ allowOverride: { type: String, default: false },
9
+ additionalData: { type: mongoose.Schema.Types.Mixed, default: null }
10
+ });
11
+ const cashflowPeriodSchema = new mongoose.Schema({
12
+ from: { type: String, default: null },
13
+ to: { type: String, default: null },
14
+ instalmentAmount: { type: String, default: null },
15
+ instalmentInterest: { type: String, default: null },
16
+ instalmentCapitalRepaid: { type: String, default: null },
17
+ otherCosts: { type: String, default: 0 },
18
+ outstandingCapital: { type: String, default: null }
19
+ });
20
+ const calculationsSchema = new mongoose.Schema({
21
+ ltv: { type: String, default: null },
22
+ rentalCoverageRatioRate: { type: String, default: null },
23
+ bankContributionRate: { type: String, default: null },
24
+ bankInitialShareRate: { type: String, default: null },
25
+ totalAmountPayable: { type: String, default: null },
26
+ fixedMonthlyPayment: { type: String, default: null },
27
+ fixedMonthlyCapital: { type: String, default: null },
28
+ fixedMonthlyInterest: { type: String, default: null },
29
+ variableMonthlyPayment: { type: String, default: null },
30
+ summaryTotal: { type: String, default: null },
31
+ reimbursementPerPound: { type: String, default: null },
32
+ stressedPayment: { type: String, default: null },
33
+ stressedPaymentRate: { type: String, default: null },
34
+ rentalCoverage: { type: String, default: null },
35
+ rentalCoverageWithoutTopUp: { type: String, default: null }
36
+ });
37
+ const productFeaturesSchema = new mongoose.Schema({
38
+ applicationId: { type: mongoose.Schema.Types.ObjectId, ref: "Application", required: true },
39
+ name: { type: String, required: true },
40
+ clientAdvance: { type: String, required: true },
41
+ ltv: { type: String, required: true },
42
+ repayment: { type: String, required: true },
43
+ variableRepayment: { type: String, required: true },
44
+ reversionRateWithoutBaseRate: { type: String, default: null },
45
+ totalReversionRate: { type: String, default: null },
46
+ initialRate: { type: String, required: true },
47
+ fixedTerm: { type: String, required: true },
48
+ fixedTermEndDate: { type: String, default: null },
49
+ baseRate: { type: String, default: null },
50
+ productRate: { type: String, default: null },
51
+ apr: { type: String, default: null },
52
+ rentalCoverage: { type: String, default: null },
53
+ repaymentType: { type: String, default: null },
54
+ applicationCategory: { type: String, default: null },
55
+ securityType: { type: String, default: null },
56
+ erc: { type: String, default: null },
57
+ loanType: { type: String, default: null },
58
+ maxLtvLimit: { type: String, default: null },
59
+ reimbursement: { type: String, default: null },
60
+ reimbursementPerPound: { type: String, default: null },
61
+ stressedApr: { type: String, default: null },
62
+ stressedRate: { type: String, default: null },
63
+ stressedRepayment: { type: String, default: null },
64
+ liborFloorRate: { type: String, default: null },
65
+ totalTermInMonths: { type: String, default: null },
66
+ chargeType: { type: String, default: '' },
67
+ productCategory: { type: String, default: '' },
68
+ ercCode: { type: String, default: '' },
69
+ variableTerm: { type: String, default: null },
70
+ totalFeePayable: { type: String, default: null },
71
+ dipIssueDate: { type: String, default: null },
72
+ estimatedCompletionDate: { type: String, default: null },
73
+ dipExpiryDate: { type: String, default: null },
74
+ fixedRepaymentUntillDate: { type: String, default: null },
75
+ rentalReviewDate: { type: String, default: null },
76
+ totalReimbursementWithFee: { type: String, default: null },
77
+ finalRentPayment: { type: String, default: null },
78
+ clientDeposit: { type: String, default: null },
79
+ firstRentPayment: { type: String, default: null },
80
+ fees: [feeSchema],
81
+ ercFeatures: { type: mongoose.Schema.Types.Mixed, default: null },
82
+ cashflowPeriods: {
83
+ totalNoOfPayments: { type: String, default: null },
84
+ fixed: cashflowPeriodSchema,
85
+ variable: cashflowPeriodSchema,
86
+ total: cashflowPeriodSchema
87
+ },
88
+ icr: { type: String, default: null },
89
+ ufssProductCode: { type: String, default: null },
90
+ ufssInterestRateCode: { type: String, default: null },
91
+ stressedPayment: { type: String, default: null },
92
+ stressedPaymentRate: { type: String, default: null },
93
+ calculations: calculationsSchema
94
+ });
95
+ const ApplicationProductFeaturesModel = mongoose.model("ApplicationProductFeatures", productFeaturesSchema);
96
+ export default ApplicationProductFeaturesModel;