@archerjessop/utilities 4.6.8 → 4.6.9
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/config/financial.js +1 -1
- package/dist/config/financial.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/styles/components.css +20 -0
- package/package.json +1 -1
package/dist/config/financial.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const E={DSCR_INTEREST_RATE:.075,SELLER_FI_INTEREST_RATE:0,DSCR_AMORTIZATION:30,SELLER_FI_AMORTIZATION:30,DEFAULT_BALLOON_PERIOD_YEARS:7,DEFAULT_DOWN_PAYMENT:.3,SELLER_FI_DOWN_PAYMENT:.6,SELLER_FI_CARRY:.4,MIN_DOWN_PAYMENT_PERCENT:0,DEFAULT_DSCR_PERCENTAGE:.7,MAX_DSCR_PERCENTAGE:.7,DEFAULT_CAP_RATE:.05,MAX_ESTIMATED_CAP_RATE:20,APPRECIATION_RATE:.045},{
|
|
1
|
+
const E={DSCR_INTEREST_RATE:.075,SELLER_FI_INTEREST_RATE:0,DSCR_AMORTIZATION:30,SELLER_FI_AMORTIZATION:30,DEFAULT_BALLOON_PERIOD_YEARS:7,DEFAULT_DOWN_PAYMENT:.3,SELLER_FI_DOWN_PAYMENT:.6,SELLER_FI_CARRY:.4,MIN_DOWN_PAYMENT_PERCENT:0,DEFAULT_EQUITY_ESTIMATE:.4,DEFAULT_DSCR_PERCENTAGE:.7,MAX_DSCR_PERCENTAGE:.7,DEFAULT_CAP_RATE:.05,MAX_ESTIMATED_CAP_RATE:20,APPRECIATION_RATE:.045},{CALCULATION_TOLERANCE:_,DEFAULT_CAP_RATE:T,DEFAULT_DOWN_PAYMENT:A,DEFAULT_DSCR_PERCENTAGE:R,DEFAULT_EQUITY_ESTIMATE:I,DSCR_AMORTIZATION:L,DSCR_INTEREST_RATE:N,MAX_ITERATIONS:S,SELLER_FI_AMORTIZATION:D,SELLER_FI_CARRY:C,SELLER_FI_DOWN_PAYMENT:O,SELLER_FI_INTEREST_RATE:F}=E;export{_ as CALCULATION_TOLERANCE,T as DEFAULT_CAP_RATE,A as DEFAULT_DOWN_PAYMENT,R as DEFAULT_DSCR_PERCENTAGE,I as DEFAULT_EQUITY_ESTIMATE,L as DSCR_AMORTIZATION,N as DSCR_INTEREST_RATE,E as FINANCIAL_CONSTANTS,S as MAX_ITERATIONS,D as SELLER_FI_AMORTIZATION,C as SELLER_FI_CARRY,O as SELLER_FI_DOWN_PAYMENT,F as SELLER_FI_INTEREST_RATE};
|
|
2
2
|
//# sourceMappingURL=financial.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"financial.js","sources":["../../src/config/financial.js"],"sourcesContent":["/**\r\n * Financial calculation constants\r\n */\r\n\r\nexport const FINANCIAL_CONSTANTS = {\r\n // Interest rates\r\n DSCR_INTEREST_RATE: 0.075, // 7.5%\r\n SELLER_FI_INTEREST_RATE: 0.0, // 0% for seller financing\r\n \r\n // Loan terms and amortization\r\n DSCR_AMORTIZATION: 30, // 30 years\r\n SELLER_FI_AMORTIZATION: 30, // 30 years\r\n DEFAULT_BALLOON_PERIOD_YEARS: 7, // 7 years\r\n \r\n // Down payments and financing structure\r\n DEFAULT_DOWN_PAYMENT: 0.30, // 30%\r\n SELLER_FI_DOWN_PAYMENT: 0.60, // 60%\r\n SELLER_FI_CARRY: 0.40, // 40% seller financing\r\n MIN_DOWN_PAYMENT_PERCENT: 0, // 0% minimum down\r\n \r\n // DSCR loan percentages\r\n DEFAULT_DSCR_PERCENTAGE: 0.70, // 70%\r\n MAX_DSCR_PERCENTAGE: 0.70, // Maximum DSCR loan\r\n \r\n // Cap rates\r\n DEFAULT_CAP_RATE: 0.05, // 5% default cap rate\r\n MAX_ESTIMATED_CAP_RATE: 20, // 20% maximum cap rate\r\n \r\n // Market assumptions\r\n APPRECIATION_RATE: 0.045, // 4.5% annual appreciation\r\n};\r\n\r\n// Convenience exports for common calculations\r\nexport const {\r\n
|
|
1
|
+
{"version":3,"file":"financial.js","sources":["../../src/config/financial.js"],"sourcesContent":["/**\r\n * Financial calculation constants\r\n */\r\n\r\nexport const FINANCIAL_CONSTANTS = {\r\n // Interest rates\r\n DSCR_INTEREST_RATE: 0.075, // 7.5%\r\n SELLER_FI_INTEREST_RATE: 0.0, // 0% for seller financing\r\n \r\n // Loan terms and amortization\r\n DSCR_AMORTIZATION: 30, // 30 years\r\n SELLER_FI_AMORTIZATION: 30, // 30 years\r\n DEFAULT_BALLOON_PERIOD_YEARS: 7, // 7 years\r\n \r\n // Down payments and financing structure\r\n DEFAULT_DOWN_PAYMENT: 0.30, // 30%\r\n SELLER_FI_DOWN_PAYMENT: 0.60, // 60%\r\n SELLER_FI_CARRY: 0.40, // 40% seller financing\r\n MIN_DOWN_PAYMENT_PERCENT: 0, // 0% minimum down\r\n DEFAULT_EQUITY_ESTIMATE: 0.40, // 40% seller equity\r\n \r\n // DSCR loan percentages\r\n DEFAULT_DSCR_PERCENTAGE: 0.70, // 70%\r\n MAX_DSCR_PERCENTAGE: 0.70, // Maximum DSCR loan\r\n \r\n // Cap rates\r\n DEFAULT_CAP_RATE: 0.05, // 5% default cap rate\r\n MAX_ESTIMATED_CAP_RATE: 20, // 20% maximum cap rate\r\n \r\n // Market assumptions\r\n APPRECIATION_RATE: 0.045, // 4.5% annual appreciation\r\n};\r\n\r\n// Convenience exports for common calculations\r\nexport const {\r\n CALCULATION_TOLERANCE,\r\n DEFAULT_CAP_RATE,\r\n DEFAULT_DOWN_PAYMENT,\r\n DEFAULT_DSCR_PERCENTAGE,\r\n DEFAULT_EQUITY_ESTIMATE,\r\n DSCR_AMORTIZATION,\r\n DSCR_INTEREST_RATE,\r\n MAX_ITERATIONS,\r\n SELLER_FI_AMORTIZATION,\r\n SELLER_FI_CARRY,\r\n SELLER_FI_DOWN_PAYMENT,\r\n SELLER_FI_INTEREST_RATE,\r\n} = FINANCIAL_CONSTANTS;\r\n"],"names":["FINANCIAL_CONSTANTS","DSCR_INTEREST_RATE","SELLER_FI_INTEREST_RATE","DSCR_AMORTIZATION","SELLER_FI_AMORTIZATION","DEFAULT_BALLOON_PERIOD_YEARS","DEFAULT_DOWN_PAYMENT","SELLER_FI_DOWN_PAYMENT","SELLER_FI_CARRY","MIN_DOWN_PAYMENT_PERCENT","DEFAULT_EQUITY_ESTIMATE","DEFAULT_DSCR_PERCENTAGE","MAX_DSCR_PERCENTAGE","DEFAULT_CAP_RATE","MAX_ESTIMATED_CAP_RATE","APPRECIATION_RATE","CALCULATION_TOLERANCE","MAX_ITERATIONS"],"mappings":"AAIY,MAACA,EAAsB,CAEjCC,mBAAoB,KACpBC,wBAAyB,EAGzBC,kBAAmB,GACnBC,uBAAwB,GACxBC,6BAA8B,EAG9BC,qBAAsB,GACtBC,uBAAwB,GACxBC,gBAAiB,GACjBC,yBAA0B,EAC1BC,wBAAyB,GAGzBC,wBAAyB,GACzBC,oBAAqB,GAGrBC,iBAAkB,IAClBC,uBAAwB,GAGxBC,kBAAmB,OAIRC,sBACXA,EAAqBH,iBACrBA,EAAgBP,qBAChBA,EAAoBK,wBACpBA,EAAuBD,wBACvBA,EAAuBP,kBACvBA,EAAiBF,mBACjBA,EAAkBgB,eAClBA,EAAcb,uBACdA,EAAsBI,gBACtBA,EAAeD,uBACfA,EAAsBL,wBACtBA,GACEF"}
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export{calculateAppreciatedValue,calculateAssignmentFee,calculateBalloonBalance,calculateCOCR30,calculateCOCRAtPercent,calculateCashFlow,calculateCashFlowYield,calculateCashOutAfterRefi,calculateDiscountFromPrice,calculateDscrPayment,calculateNOIByType,calculateNetToBuyer,calculatePMT,calculatePriceForCOCR,calculatePriceFromDiscount,calculateSfPayment,safePercentage}from"./financial/calculations.js";export{formatCurrency,formatPercentage,formatPriceValue}from"./financial/formatters.js";export{extractBedrooms,extractPhoneNumber}from"./data/extractors.js";export{calculateDOM}from"./date/utilities.js";export{calculateCursorPosition,extractNumericValue,filterNumericInput,formatInputDisplay,formatLiveInput,formatLiveNumber,parseNumericInput}from"./formatting/financial-formatting.js";export{normalizeWhitespace}from"./formatting/text.js";export{CALCULATION_TOLERANCE,DEFAULT_CAP_RATE,DEFAULT_DOWN_PAYMENT,DEFAULT_DSCR_PERCENTAGE,DSCR_AMORTIZATION,DSCR_INTEREST_RATE,FINANCIAL_CONSTANTS,MAX_ITERATIONS,SELLER_FI_AMORTIZATION,SELLER_FI_CARRY,SELLER_FI_DOWN_PAYMENT,SELLER_FI_INTEREST_RATE}from"./config/financial.js";export{ASSISTED_LIVING,MULTIFAMILY,PROPERTY_TYPES,PROPERTY_TYPE_CONSTANTS,STR}from"./config/property-types.js";export{ASSIGNMENT_FEE_PERCENTAGE,BUSINESS_CONSTANTS,BUYER_AGENT_COMMISSION,CLOSING_COSTS_PERCENTAGE,CONSERVATIVE_COCR15_PRICE_MULTIPLIER,FINANCING_FEE_PERCENTAGE,MAX_COCR15_PRICE_MULTIPLIER,MINIMUM_COCR15_PRICE,NET_TO_BUYER_PERCENTAGE,SELLER_AGENT_COMMISSION}from"./config/business.js";const e="./dist/styles/base.css";export{e as STYLES_PATH};
|
|
1
|
+
export{calculateAppreciatedValue,calculateAssignmentFee,calculateBalloonBalance,calculateCOCR30,calculateCOCRAtPercent,calculateCashFlow,calculateCashFlowYield,calculateCashOutAfterRefi,calculateDiscountFromPrice,calculateDscrPayment,calculateNOIByType,calculateNetToBuyer,calculatePMT,calculatePriceForCOCR,calculatePriceFromDiscount,calculateSfPayment,safePercentage}from"./financial/calculations.js";export{formatCurrency,formatPercentage,formatPriceValue}from"./financial/formatters.js";export{extractBedrooms,extractPhoneNumber}from"./data/extractors.js";export{calculateDOM}from"./date/utilities.js";export{calculateCursorPosition,extractNumericValue,filterNumericInput,formatInputDisplay,formatLiveInput,formatLiveNumber,parseNumericInput}from"./formatting/financial-formatting.js";export{normalizeWhitespace}from"./formatting/text.js";export{CALCULATION_TOLERANCE,DEFAULT_CAP_RATE,DEFAULT_DOWN_PAYMENT,DEFAULT_DSCR_PERCENTAGE,DEFAULT_EQUITY_ESTIMATE,DSCR_AMORTIZATION,DSCR_INTEREST_RATE,FINANCIAL_CONSTANTS,MAX_ITERATIONS,SELLER_FI_AMORTIZATION,SELLER_FI_CARRY,SELLER_FI_DOWN_PAYMENT,SELLER_FI_INTEREST_RATE}from"./config/financial.js";export{ASSISTED_LIVING,MULTIFAMILY,PROPERTY_TYPES,PROPERTY_TYPE_CONSTANTS,STR}from"./config/property-types.js";export{ASSIGNMENT_FEE_PERCENTAGE,BUSINESS_CONSTANTS,BUYER_AGENT_COMMISSION,CLOSING_COSTS_PERCENTAGE,CONSERVATIVE_COCR15_PRICE_MULTIPLIER,FINANCING_FEE_PERCENTAGE,MAX_COCR15_PRICE_MULTIPLIER,MINIMUM_COCR15_PRICE,NET_TO_BUYER_PERCENTAGE,SELLER_AGENT_COMMISSION}from"./config/business.js";const e="./dist/styles/base.css";export{e as STYLES_PATH};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/index.js"],"sourcesContent":["/**\r\n * @archerjessop/utilities\r\n * Shared utilities for ArcherJessop property analysis tools\r\n */\r\n\r\n// Financial calculations\r\nexport { \r\n calculateAppreciatedValue,\r\n calculateAssignmentFee,\r\n calculateBalloonBalance,\r\n calculateCashFlow,\r\n calculateCashFlowYield,\r\n calculateCashOutAfterRefi,\r\n calculateCOCR30, \r\n calculateCOCRAtPercent,\r\n calculateDiscountFromPrice,\r\n calculateDscrPayment,\r\n calculateNetToBuyer,\r\n calculateNOIByType,\r\n calculatePMT, \r\n calculatePriceForCOCR,\r\n calculatePriceFromDiscount,\r\n calculateSfPayment,\r\n safePercentage,\r\n} from \"./financial/calculations.js\";\r\n\r\n// Financial formatters\r\nexport { formatCurrency, formatPriceValue, formatPercentage } from \"./financial/formatters.js\";\r\n\r\n// Data extractors\r\nexport { extractPhoneNumber, extractBedrooms } from \"./data/extractors.js\";\r\n\r\n// Date utilities\r\nexport { calculateDOM } from \"./date/utilities.js\";\r\n\r\n// Formatting utilities\r\nexport { \r\n calculateCursorPosition,\r\n extractNumericValue,\r\n filterNumericInput,\r\n formatInputDisplay,\r\n formatLiveInput,\r\n formatLiveNumber,\r\n parseNumericInput\r\n} from \"./formatting/financial-formatting.js\";\r\n\r\n// Text formatting utilities\r\nexport { normalizeWhitespace } from \"./formatting/text.js\";\r\n\r\n// Configuration constants\r\nexport * from './config/financial.js';\r\nexport * from './config/property-types.js';\r\nexport * from './config/business.js';\r\n\r\nexport const STYLES_PATH = './dist/styles/base.css';\r\n"],"names":["STYLES_PATH"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/index.js"],"sourcesContent":["/**\r\n * @archerjessop/utilities\r\n * Shared utilities for ArcherJessop property analysis tools\r\n */\r\n\r\n// Financial calculations\r\nexport { \r\n calculateAppreciatedValue,\r\n calculateAssignmentFee,\r\n calculateBalloonBalance,\r\n calculateCashFlow,\r\n calculateCashFlowYield,\r\n calculateCashOutAfterRefi,\r\n calculateCOCR30, \r\n calculateCOCRAtPercent,\r\n calculateDiscountFromPrice,\r\n calculateDscrPayment,\r\n calculateNetToBuyer,\r\n calculateNOIByType,\r\n calculatePMT, \r\n calculatePriceForCOCR,\r\n calculatePriceFromDiscount,\r\n calculateSfPayment,\r\n safePercentage,\r\n} from \"./financial/calculations.js\";\r\n\r\n// Financial formatters\r\nexport { formatCurrency, formatPriceValue, formatPercentage } from \"./financial/formatters.js\";\r\n\r\n// Data extractors\r\nexport { extractPhoneNumber, extractBedrooms } from \"./data/extractors.js\";\r\n\r\n// Date utilities\r\nexport { calculateDOM } from \"./date/utilities.js\";\r\n\r\n// Formatting utilities\r\nexport { \r\n calculateCursorPosition,\r\n extractNumericValue,\r\n filterNumericInput,\r\n formatInputDisplay,\r\n formatLiveInput,\r\n formatLiveNumber,\r\n parseNumericInput\r\n} from \"./formatting/financial-formatting.js\";\r\n\r\n// Text formatting utilities\r\nexport { normalizeWhitespace } from \"./formatting/text.js\";\r\n\r\n// Configuration constants\r\nexport * from './config/financial.js';\r\nexport * from './config/property-types.js';\r\nexport * from './config/business.js';\r\n\r\nexport const STYLES_PATH = './dist/styles/base.css';\r\n"],"names":["STYLES_PATH"],"mappings":"qgDAsDY,MAACA,EAAc"}
|
|
@@ -448,4 +448,24 @@
|
|
|
448
448
|
.triangle-right::after {
|
|
449
449
|
right: 0px;
|
|
450
450
|
}
|
|
451
|
+
}
|
|
452
|
+
/* Equity source visual indicators */
|
|
453
|
+
.equity-source-scraped {
|
|
454
|
+
border-color: var(--color-prop-blue) !important;
|
|
455
|
+
border-style: dashed !important;
|
|
456
|
+
}
|
|
457
|
+
|
|
458
|
+
.equity-source-estimated {
|
|
459
|
+
border-color: var(--color-prop-red) !important;
|
|
460
|
+
border-style: dashed !important;
|
|
461
|
+
}
|
|
462
|
+
|
|
463
|
+
.equity-label-clickable {
|
|
464
|
+
cursor: pointer;
|
|
465
|
+
transition: color 0.2s ease;
|
|
466
|
+
}
|
|
467
|
+
|
|
468
|
+
.equity-label-clickable:hover {
|
|
469
|
+
color: #3b82f6; /* blue-500 */
|
|
470
|
+
text-decoration: underline;
|
|
451
471
|
}
|