PageSourceSearch

https://app.clearcover.com/assets/PaymentPlanSummary-CbaLiOTQ.js

js clearcover.com collected 2026-09-24 10:22:32 UTC 6,670 bytes, 2 lines download raw bytes

1import{o as e,r as t}from"./rolldown-runtime-BM3Ffeng.js";import{C as n,i as r,l as i,w as a}from"./vendor-core-0QFwG9Cq.js";import{i as o,n as s}from"./Formatters-DyGHLrnD.js";import{i as c}from"./StringHelpers-_ngbpaq8.js";import{a as l,d as u,i as d,l as f,o as p,p as m}from"./utils-BObugblQ.js";import{pt as h,r as g,ut as _}from"./index-MXLD1YJU.js";var v=e(a()),y=e(n()),b=r(),x={paymentPlanSummary:`styles_paymentPlanSummary__bsZxs`,paymentPlanSummaryRowValue:`styles_paymentPlanSummaryRowValue__XetMY`,paymentPlanSummaryTitle:`styles_paymentPlanSummaryTitle__JdL3V`,paymentPlanSummaryHeader:`styles_paymentPlanSummaryHeader__XuJcI`,purchaseSummaryRow:`styles_purchaseSummaryRow__UrNZB`,totalCostRow:`styles_totalCostRow__prLTV`,paymentScheduleDueDate:`styles_paymentScheduleDueDate__G1IyW`,feeBreakdownModalContent:`styles_feeBreakdownModalContent__iKlGf`,feeBreakdownSection:`styles_feeBreakdownSection__dCKVe`,breakdownTitle:`styles_breakdownTitle__kSTl9`,breakdownList:`styles_breakdownList__hlDKM`,breakdownListItem:`styles_breakdownListItem__Uwqt8`,breakdownItem:`styles_breakdownItem__cd4VM`,itemActionButton:`styles_itemActionButton__dT_dw`,breakdownAmount:`styles_breakdownAmount__hRQTC`,breakdownModalButtonContainer:`styles_breakdownModalButtonContainer__Q1JSE`},S=i(),C=({show:e,sections:t,closeModal:n})=>{let r=e=>(0,S.jsx)(`span`,{children:e}),i=(e,t)=>(0,S.jsx)(`button`,{type:`button`,onClick:t,className:x.itemActionButton,children:e});return(0,S.jsx)(h,{title:`Fee breakdown`,showModal:e,children:(0,S.jsxs)(`div`,{className:x.feeBreakdownModalContent,children:[t.map((e,t)=>(0,S.jsxs)(`section`,{className:x.feeBreakdownSection,"data-testid":`fee-breakdown-section-${e.sectionName}`,children:[(0,S.jsx)(`h3`,{"data-testid":`fee-breakdown-section-title`,className:x.breakdownTitle,children:e.title}),(0,S.jsx)(`ul`,{className:x.breakdownList,children:e.items.map((e,t)=>(0,S.jsxs)(`li`,{"data-testid":`fee-breakdown-line${e.id?`-`+c(e.id):``}`,className:x.breakdownListItem,children:[(0,S.jsx)(`div`,{className:x.breakdownItem,children:e.action?i(e.label,e.action):r(e.label)}),(0,S.jsx)(`div`,{"data-testid":`fee-breakdown-line-amount`,className:x.breakdownAmount,children:e.amount})]},t))})]},t)),(0,S.jsx)(`div`,{className:x.breakdownModalButtonContainer,children:(0,S.jsx)(_,{variant:`contained`,size:`md`,onClick:n,"data-testid":`fee-breakdown-close-button`,children:`Ok`})})]})})},w=()=>{let[e,t]=(0,v.useState)(!1),[n,r]=(0,v.useState)({sections:[]}),i=(0,v.useCallback)(e=>{r(e),t(!0)},[]),a=(0,v.useCallback)(()=>{r({sections:[]}),t(!1)},[]);return{showFeeBreakdownModal:i,closeFeeBreakdownModal:a,FeeBreakdownModalComponent:e?(0,y.createPortal)((0,S.jsx)(C,{show:e,closeModal:a,...n}),document.body):null}},T=(e,t)=>{let n=new Map(t.map(e=>[e.name.toLowerCase(),e])),r=[],i=[];for(let t of e){let e=n.get(t.name.toLowerCase()),a=o(t.amount);e?i.push({id:t.name,label:e.displayName,amount:a}):r.push({id:t.name,label:u(t.name),amount:a})}return[...r,...i]},E=e=>{let t=d(e.paymentSchedule,`DOWNPAYMENT`);return T(l((t==null?void 0:t.items)||[],`FEE`),e.feeStrategy.fees)},D=e=>{let t=d(e.paymentSchedule,`INSTALLMENT`),n=l((t==null?void 0:t.items)||[],`FEE`),r=n.filter(e=>!p(e.name)),i=O(n,e.feeStrategy.fees);return[...T(r,e.feeStrategy.fees),...i]},O=(e,t)=>{if(!e.some(e=>p(e.name)))return[];let n=t.find(e=>p(e.name));if(!n)return[];let r=n.charge;if(r.type===`PERCENT`){let e=Number.isFinite(r.percent)?r.percent:0;return[{id:n.name,label:`Installment Fee`,amount:`${f(e)} simple interest`}]}if(r.type===`FLAT`){let e=Number.isFinite(r.amount)?r.amount:0;return[{id:n.name,label:`Installment Fee`,amount:s(e)}]}return[]},k=({dueToday:e,futurePaymentAmount:t,paymentFrequency:n,totalCost:r,paymentsMadeOn:i,paymentPlan:a,showFeeBreakdown:o,goToQuoteSummary:s})=>{let{PaymentScheduleModal:c,showPaymentScheduleModal:l,closePaymentScheduleModal:u}=g(),{FeeBreakdownModalComponent:d,showFeeBreakdownModal:f}=w(),p=m(a),h=()=>{let{paymentSchedule:e}=a,[,t]=e;if(t)return t.date},y=(0,v.useCallback)(e=>{let t=E(e),n=D(e);return[{sectionName:`downpayment`,title:`Included in down payment:`,items:t},{sectionName:`installments`,title:`Included in installments:`,items:n}]},[]),C=(0,v.useCallback)(e=>[{sectionName:`downpayment`,title:`Included in down payment:`,items:E(e)}],[]);return(0,S.jsxs)(`div`,{className:x.paymentPlanSummary,children:[(0,S.jsxs)(`div`,{className:x.paymentPlanSummaryHeader,children:[(0,S.jsx)(`div`,{className:x.paymentPlanSummaryTitle,children:`Payment plan summary`}),(0,S.jsx)(`div`,{children:(0,S.jsx)(_,{variant:`link`,onClick:s,"data-testid":`purchase-edit-btn`,children:`Edit`})})]}),e&&(0,S.jsxs)(`div`,{className:x.purchaseSummaryRow,children:[(0,S.jsx)(`div`,{children:`Due today`}),(0,S.jsx)(`div`,{className:x.paymentPlanSummaryRowValue,"data-testid":`due-today`,children:e})]}),(0,S.jsxs)(`div`,{className:x.purchaseSummaryRow,children:[(0,S.jsx)(`div`,{children:`Payment frequency`}),(0,S.jsx)(`div`,{className:x.paymentPlanSummaryRowValue,"data-testid":`payment-frequency`,children:n})]}),i&&(0,S.jsxs)(`div`,{className:x.purchaseSummaryRow,children:[(0,S.jsx)(`div`,{children:`Payments made on`}),(0,S.jsx)(`div`,{className:x.paymentPlanSummaryRowValue,"data-testid":`payment-day-of-week`,children:i})]}),t&&(0,S.jsxs)(`div`,{className:x.purchaseSummaryRow,children:[(0,S.jsx)(`div`,{children:`Future payments`}),(0,S.jsx)(`div`,{className:x.paymentPlanSummaryRowValue,"data-testid":`future-payments`,children:t})]}),!p&&(0,S.jsxs)(`div`,{className:x.purchaseSummaryRow,children:[(0,S.jsx)(`div`,{children:`Next payment due`}),(0,S.jsxs)(`div`,{className:[x.paymentPlanSummaryRowValue,x.paymentScheduleDueDate].join(` `),"data-testid":`next-payment-due`,children:[(0,S.jsx)(_,{"data-testid":`payment-plan-summary-button`,variant:`link`,size:`sm`,type:`button`,onClick:()=>{l({paymentPlan:a,onClose:u})},children:(0,S.jsx)(b.Asset,{icon:b.CalendarMinimalIcon,description:`Payment schedule info`,"data-testid":`payment-schedule-info-icon`,height:16,width:16})}),h()]})]}),(0,S.jsxs)(`div`,{className:x.purchaseSummaryRow,children:[(0,S.jsxs)(`div`,{className:x.totalCostRow,children:[`Total cost`,o&&(0,S.jsx)(_,{"data-testid":`fee-breakdown-button`,variant:`link`,size:`sm`,type:`button`,onClick:()=>{f({sections:p?C(a):y(a)})},children:(0,S.jsx)(b.Asset,{icon:b.InfoFilledIcon,description:`Fee breakdown info`,"data-testid":`fee-breakdown-info-icon`,height:16,width:16})})]}),(0,S.jsx)(`div`,{className:x.paymentPlanSummaryRowValue,"data-testid":`total-cost`,children:r})]}),c,d]})},A=t({PaymentPlanSummary:()=>k}
1);export{k as n,A as t};
2//# sourceMappingURL=PaymentPlanSummary-CbaLiOTQ.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.