1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[42163],{9083:(e,t,a)=>{"use strict";a.d(t,{Sw:()=>w,VZ:()=>A,WN:()=>c,Z2:()=>S,Zg:()=>I,eA:()=>k,vT:()=>i});var s=a(21559);let n=/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?Z/g,r=/\b1[6-9]\d{11}\b/g;function l(e){if(null==e)return null;let t="string"==typeof e?e:String(e);return(0,s.BE)(t.replace(n,"<ts>").replace(r,"<ms>"))}function i(e,t){let a=window,s=a.fetch.bind(a),n=0;a.fetch=async(r,i)=>{var o,d;let c="string"==typeof r?r:r instanceof URL?r.toString():r.url,u=new URL(c,a.location.href),p=(null!=(o=null==i?void 0:i.method)?o:r instanceof Request?r.method:"GET").toUpperCase(),h={n:++n,method:p,url:u.pathname+u.search,body:l(null!=(d=null==i?void 0:i.body)?d:null),status:null,routed:"passthrough"};if(u.origin===a.location.origin&&u.pathname.startsWith("/api/")){h.routed="fake",t.push(h);try{let t=await e(u.pathname+u.search,i);return h.status=t.status,t}catch(e){throw h.status=0,e}}if(/supabase\.(co|in)|sanity\.io\/v\d+\/data\/live/.test(u.host+u.pathname))throw h.routed="blocked",h.url=u.origin+u.pathname,t.push(h),TypeError("Blocked by the builder harness");return s(r,i)}}class o extends EventTarget{deliver(e){var t;if(1!==this.readyState)return;let a=new MessageEvent("message",{data:JSON.stringify(e)});null==(t=this.onmessage)||t.call(this,a),this.dispatchEvent(a)}send(e){let t;var a,s,n,r,l,i,o,c,f,k=this;if(e instanceof ArrayBuffer){let t=function(e){try{let t=new DataView(e);if(3!==t.getUint8(0))return null;let a=t.getUint8(1),s=t.getUint8(2),n=t.getUint8(3),r=t.getUint8(4),l=t.getUint8(5),i=t.getUint8(6),o=new TextDecoder,d=7+a+s,c=o.decode(e.slice(d,d+n));d+=n;let u=o.decode(e.slice(d,d+r));d+=r+l;let p=e.slice(d);if(1!==i)return{topic:c,event:u,payload:p};return{topic:c,event:u,payload:JSON.parse(o.decode(p))}}catch(e){return null}}(e);t&&(d.frames.push("".concat(t.topic," broadcast:").concat(t.event)),y(t.topic,{event:t.event,payload:t.payload},this));return}if("string"!=typeof e)return;try{t=JSON.parse(e)}catch(e){return}let[w,I,S,A,N]=t;d.frames.push("".concat(S," ").concat(A));let M=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return setTimeout(()=>k.deliver([w,I,S,"phx_reply",{status:"ok",response:e}]),5)};if("phx_join"===A){this.joined.add(S),d.joins.push(S),M();let e=null==N||null==(l=N.config)||null==(r=l.presence)?void 0:r.key;e&&this.presenceKey.set(S,e)}else if("phx_leave"===A)this.joined.delete(S),g(S,this.presenceKey.get(S)),M();else if("phoenix"===S&&"heartbeat"===A)M();else if("broadcast"===A)y(S,N,this),M();else if("presence"===A){let e=null!=(c=this.presenceKey.get(S))?c:String(null!=(o=null==N||null==(i=N.payload)?void 0:i.userId)?o:"me");(null==N?void 0:N.event)==="track"&&(v(p,a=S,s=e,n=null!=(f=N.payload)?f:{}),v(h,a,s,n),null==m||m.postMessage({kind:"presence",topic:a,key:s,meta:n,from:u}),null==m||m.postMessage({kind:"whoIsThere",topic:a,from:u}),b(a)),(null==N?void 0:N.event)==="untrack"&&g(S,e),M()}}close(){var e;let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1e3,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(3===this.readyState)return;this.readyState=3,d.sockets.delete(this);let s=new CloseEvent("close",{code:t,reason:a,wasClean:!0});null==(e=this.onclose)||e.call(this,s),this.dispatchEvent(s)}broadcast(e,t,a){return!!this.joined.has(e)&&(this.deliver([null,null,e,"broadcast",{type:"broadcast",event:t,payload:a}]),!0)}push(e,t,a){this.deliver([null,null,e,t,a])}constructor(e){super(),this.url=e,this.CONNECTING=0,this.OPEN=1,this.CLOSING=2,this.CLOSED=3,this.readyState=0,this.binaryType="arraybuffer",this.bufferedAmount=0,this.extensions="",this.protocol="",this.onopen=null,this.onclose=null,this.onerror=null,this.onmessage=null,this.joined=new Set,this.presenceKey=new Map,d.sockets.add(this),setTimeout(()=>{var e;if(0!==this.readyState)return;this.readyState=1;let t=new Event("open");null==(e=this.onopen)||e.call(this,t),this.dispatchEvent(t)},30)}}o.CONNECTING=0,o.OPEN=1,o.CLOSING=2,o.CLOSED=3;let d={sockets:new Set,joins:[],frames:[]};function c(){return[...d.frames]}let u=Math.random().toString(36).slice(2),p=new Map,h=new Map,m=null;try{(m=new BroadcastChannel("be_harness_realtime")).onmessage=e=>{var t,a;let s=e.data;if(s.from!==u){if("broadcast"===s.kind&&f(s.topic,s.payload),"presence"===s.kind){let e=null!=(t=p.get(s.topic))?t:new Map;null==s.meta?e.delete(s.key):e.set(s.key,s.meta),p.set(s.topic,e),b(s.topic)}if("whoIsThere"===s.kind)for(let[e,t]of null!=(a=h.get(s.topic))?a:new Map)null==m||m.postMessage({kind:"presence",topic:s.topic,key:e,meta:t,from:u})}}}catch(e){m=null}function f(e,t,a){for(let s of d.sockets)s!==a&&s.joined.has(e)&&s.push(e,"broadcast",{type:"broadcast",event:null==t?void 0:t.event,payload:null==t?void 0:t.payload})}function y(e,t,a){f(e,t,a),null==m||m.postMessage({kind:"broadcast",topic:e,payload:t,from:u})}function g(e,t){var a,s;t&&(null==(a=p.get(e))||a.delete(t),null==(s=h.get(e))||s.delete(t),null==m||m.postMessage({kind:"presence",topic:e,key:t,meta:null,from:u}),b(e))}function v(e,t,a,s){var n;let r=null!=(n=e.get(t))?n:new Map;r.set(a,s),e.set(t,r)}function b(e){var t;let a=null!=(t=p.get(e))?t:new Map,s={};for(let[e,t]of a)s[e]={metas:[{...t,phx_ref:e}]};for(let t of d.sockets)t.joined.has(e)&&t.push(e,"presence_state",s)}function k(){let e=window,t=e.WebSocket,a=function(e,a){let s=String(e);return/supabase\.(co|in)|\/realtime\/v1/.test(s)?new o(s):new t(e,a)};Object.assign(a,{CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3}),a.prototype=t.prototype,e.WebSocket=a}function w(e,t){let a="realtime:site-estimates:".concat(e),s=0;for(let e of d.sockets)e.broadcast(a,"dv",{v:1,dv:t})&&s++;return s}function I(){return[...d.joins]}function S(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,a=0,s=Storage.prototype,n=s.setItem,r=s.removeItem;s.setItem=function(s,r){return this===window.localStorage&&e.push({n:++a,op:"set",key:s,value:l(r),...(null==t?void 0:t.test(s))?{raw:r}:{}}),n.call(this,s,r)},s.removeItem=function(t){return this===window.localStorage&&e.push({n:++a,op:"remove",key:t,value:null}),r.call(this,t)}}function A(e){let t=window;
1return!t.__builderE2EShims&&(t.__builderE2EShims=!0,e(),!0)}},11002:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(71847).A)("table-2",[["path",{d:"M9 3H5a2 2 0 0 0-2 2v4m6-6h10a2 2 0 0 1 2 2v4M9 3v18m0 0h10a2 2 0 0 0 2-2V9M9 21H5a2 2 0 0 1-2-2V9m0 0h18",key:"gugj83"}]])},17181:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(71847).A)("share-2",[["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}],["circle",{cx:"6",cy:"12",r:"3",key:"w7nqdw"}],["circle",{cx:"18",cy:"19",r:"3",key:"1xt0gg"}],["line",{x1:"8.59",x2:"15.42",y1:"13.51",y2:"17.49",key:"47mynk"}],["line",{x1:"15.41",x2:"8.59",y1:"6.51",y2:"10.49",key:"1n3mei"}]])},18085:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(71847).A)("send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]])},18514:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(71847).A)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]])},18666:()=>{},19653:()=>{},20618:(e,t,a)=>{"use strict";a.d(t,{DealSiteStore:()=>i});var s=a(95155),n=a(12115),r=a(22960);let l={sameBrowser:"apply",otherDevice:"review"};function i(e){let{engagementId:t,initialVm:a,catalog:i,user:o,access:d,familyKey:c,ports:u,realtime:p,children:h}=e,m=(0,n.useMemo)(()=>({id:o.id,name:o.name}),[o.id,o.name]);return(0,s.jsx)(r.qy,{engagementId:t,userId:o.id,surface:"deal",initialVm:a,catalog:i,actor:m,remotePolicy:l,projectFor:c,access:"full"!==d&&c?"presentation":null,siteWorkCategories:null==i?void 0:i.siteWorkCategories,ports:u,realtime:p,children:h},t)}},25959:(e,t,a)=>{"use strict";a.d(t,{v:()=>l});var s=a(12115);let n=e=>{let t,a=new Set,s=(e,s)=>{let n="function"==typeof e?e(t):e;if(!Object.is(n,t)){let e=t;t=(null!=s?s:"object"!=typeof n||null===n)?n:Object.assign({},t,n),a.forEach(a=>a(t,e))}},n=()=>t,r={setState:s,getState:n,getInitialState:()=>l,subscribe:e=>(a.add(e),()=>a.delete(e))},l=t=e(s,n,r);return r},r=e=>{let t=(e=>e?n(e):n)(e),a=e=>(function(e,t=e=>e){let a=s.useSyncExternalStore(e.subscribe,s.useCallback(()=>t(e.getState()),[e,t]),s.useCallback(()=>t(e.getInitialState()),[e,t]));return s.useDebugValue(a),a})(t,e);return Object.assign(a,t),a},l=e=>e?r(e):r},38392:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(71847).A)("ban",[["path",{d:"M4.929 4.929 19.07 19.071",key:"196cmz"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]])},42818:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>P});var s=a(95155);a(34080),a(19653),a(18666);var n=a(12115),r=a(20063),l=a(91456),i=a(1226),o=a(26550),d=a(9540),c=a(12096),u=a(96268),p=a(65925),h=a.n(p),m=a(50883),f=a(20618),y=a(92387),g=a(39344),v=a(72322),b=a(25503),k=a(32759),w=a(3247),I=a(9083),S=a(35681),A=a(96317),N=a(24863),M=a.n(N);let x={id:"harness-user",name:"Edgar Cure"},j="Jordan Rivera",C="1400 Maple Ave, Anytown, CA 90000",E=Array.from({length:v.SJ},(e,t)=>t+1),O={initialFloorplans:(0,w.vH)(),initialPlanCustoms:[],initialCompletedProperties:[],initialStories:[],initialFinancialDefaults:g.z,initialCitiesCatalog:[],initialServiceAreaTimelines:[],initialSlideOrder:E,initialSiteWorkOrderDefault:[],initialMilestoneDefs:[],initialDeckCategories:b.pr.map(e=>{var t;return{slug:e.slug,label:e.label,blurb:null!=(t=e.blurb)?t:null}}),navPermissions:[],currentUser:{userId:x.id,name:x.name,avatarUrl:null}},_=function(){var e,t,a,s;let n=new URLSearchParams(window.location.search),r=null!=(t=n.get("scenario"))?t:"fresh",l=new w.OZ({scenario:r,seed:null,latencyMs:Number(null!=(a=n.get("latency"))?a:120),seeds:{slideOrder:E,defaults:g.z,floorplanId:null!=(s=null==(e=O.initialFloorplans[0])?void 0:e._id)?s:null}});if("1"===n.get("firstProposal")){let e=l.current;e.vm.families=[{...e.vm.families[0],units:[]}]}let i=[],o=[];(0,I.VZ)(()=>{(0,I.Z2)(o,null),(0,I.eA)(),(0,I.vT)((e,t)=>e.startsWith("/api/rentcast/")?Promise.resolve(new Response(JSON.stringify(e.startsWith("/api/rentcast/properties")?{record:{formattedAddress:"1400 Maple Ave, Anytown, CA 90000",city:"Anytown",state:"CA",zipCode:"90000",propertyType:"Single Family",bedrooms:3,bathrooms:2,squareFootage:1480,lotSize:7200,yearBuilt:1962,lastSalePrice:615e3,lastSaleDate:"2019-06-14"}}:e.startsWith("/api/rentcast/avm")?{price:712e3,priceRangeLow:668e3,priceRangeHigh:754e3}:e.startsWith("/api/rentcast/rentals")?{listings:[{formattedAddress:"812 Cedar St, Anytown, CA",price:2650,bedrooms:2,bathrooms:1,squareFootage:780,propertyType:"Apartment",listedDate:"2026-08-02",daysOnMarket:21},{formattedAddress:"37 Willow Ct, Anytown, CA",price:2495,bedrooms:2,bathrooms:2,squareFootage:840,propertyType:"Single Family",listedDate:"2026-07-19",daysOnMarket:34},{formattedAddress:"1190 Oak Ave, Anytown, CA",price:2900,bedrooms:2,bathrooms:2,squareFootage:920,propertyType:"Single Family",listedDate:"2026-08-28",daysOnMarket:9},{formattedAddress:"64 Birch Ln, Anytown, CA",price:2250,bedrooms:1,bathrooms:1,squareFootage:610,propertyType:"Apartment",listedDate:"2026-06-30",daysOnMarket:52},{formattedAddress:"455 Spruce Dr, Anytown, CA",price:3100,bedrooms:3,bathrooms:2,squareFootage:1100,propertyType:"Single Family",listedDate:"2026-09-04",daysOnMarket:6}]}:{averageRent:2680,minRent:2100,maxRent:3250}),{status:200,headers:{"content-type":"application/json"}})):e.startsWith("/api/hasdata/zillow-rent")?Promise.resolve(new Response(JSON.stringify({rentZestimate:3150,zestimate:806e3,rentField:"rentZestimate"}),{status:200,headers:{"content-type":"application/json"}})):l.fetch(e,t),i)});let d={scenario:r,server:l,fetchLog:i,storageLog:o,loadedAt:Date.now()};return window.__dealTabE2E={env:d,server:l,scenario:r,summary(){let e=d.fetchLog.filter(e=>"GET"!==e.method);return{scenario:r,proposalPosts:l.saves.length,writes:e.length,writeList:e.map(e=>"".concat(e.method," ").concat(e.url.split("?")[0]," â ").concat(e.status)),liveHash:l.liveHash(),dealVersion:l.vm.dealVersion,saves:l.saves.map(e=>({n:e.n,status:e.status,accepted:e.accepted,refused:e.refused,httpStatus:e.httpStatus,bound:e.bound})),storageKeys:Array.from(new Set(d.storageLog.map(e=>e.key))).filter(e=>
1!e.startsWith("be_slideOrderPreviews")),calls:d.fetchLog.length}}},d}();function P(){return _?(0,s.jsx)(n.Suspense,{fallback:null,children:(0,s.jsx)(z,{env:_})}):null}function z(e){var t;let{env:a}=e,p=(0,r.useSearchParams)(),f=(0,r.useRouter)(),y=(0,r.usePathname)(),g="0"!==p.get("chrome"),[v,b]=(0,n.useState)("collapsed"===p.get("sidebar")),[w,I]=(0,n.useState)(!1),[N]=(0,n.useState)(()=>new Date().toISOString()),{server:E}=a;(0,n.useEffect)(()=>{if(!p.get("tab")){let e=new URLSearchParams(Array.from(p.entries()));e.set("tab","proposals"),f.replace("".concat(y,"?").concat(e))}},[p,f,y]);let O=(0,n.useMemo)(()=>{let e=new Date(Date.parse(N)-12e4).toISOString();return{...E.state.vm,lastChange:{at:e,actorName:"Edgar Cure",surface:"deal"}}},[E,N]),_=(0,n.useMemo)(()=>({fetch:(0,S.St)(E,{redacted:!1,notify:"ok"}),storage:null}),[E]),P=(0,n.useMemo)(()=>{var e;let t=null!=(e=(0,A.fo)().find(e=>e.id===("out"===a.scenario?"sent":"not-sent")))?e:(0,A.fo)()[0];return t?{kind:"ready",data:t.data}:{kind:"none"}},[a.scenario]);if(!p.get("tab"))return null;let z=[{key:"overview",label:"Overview",group:"digest"},{key:"consultations",label:"Consultations",group:"chain",badge:"3"},{key:"analyses",label:"Formal analysis",group:"chain",badge:"1",tone:"good"},{key:"estimates",label:"Estimate",group:"chain",badge:(t=O.estimates.length)>0?String(t):null},{key:"proposals",label:"Proposal",group:"chain",badge:"1"},{key:"communications",label:"Communications",group:"record",badge:"14"},{key:"activity",label:"Activity",group:"record",badge:"38"}];return(0,s.jsxs)("div",{className:M().shell,"data-collapsed":v?"true":"false","data-mobile-open":w?"true":void 0,children:[(0,s.jsxs)("aside",{className:M().sidebar,"data-tools-sidebar":"","aria-label":"Tools sidebar (mock)",children:[(0,s.jsxs)("div",{className:M().brand,children:[(0,s.jsx)(l.A,{"aria-hidden":"true"}),(0,s.jsx)("span",{className:M().navText,children:"Backyard Estates"})]}),(0,s.jsx)("nav",{className:M().nav,children:["Dashboard","Deals","Proposals","Open house","Settings"].map(e=>(0,s.jsxs)("span",{className:M().navItem,"data-active":"Deals"===e||void 0,children:[(0,s.jsx)("span",{className:M().navDot,"aria-hidden":"true"}),(0,s.jsx)("span",{className:M().navText,children:e})]},e))}),(0,s.jsxs)("button",{type:"button",className:M().collapse,onClick:()=>b(e=>!e),"data-harness-collapse":"",children:[v?(0,s.jsx)(i.A,{"aria-hidden":"true"}):(0,s.jsx)(o.A,{"aria-hidden":"true"}),(0,s.jsx)("span",{className:M().navText,children:v?"Expand":"Collapse"})]})]}),w&&(0,s.jsx)("button",{type:"button",className:M().backdrop,"aria-label":"Close the menu",onClick:()=>I(!1)}),(0,s.jsxs)("div",{className:M().mobileBar,children:[(0,s.jsx)("span",{className:M().mobileBrand,children:"Backyard Estates"}),(0,s.jsx)("button",{type:"button",className:M().hamburger,"aria-label":"Menu",onClick:()=>I(e=>!e),children:(0,s.jsx)(d.A,{"aria-hidden":"true"})})]}),(0,s.jsxs)("main",{className:M().main,children:[g&&(0,s.jsx)(R,{env:a}),(0,s.jsxs)("div",{className:h().page,children:[(0,s.jsx)("a",{href:"#",className:h().backLink,children:"All deals"}),(0,s.jsx)("header",{className:h().hero,children:(0,s.jsx)("div",{className:h().heroTop,children:(0,s.jsxs)("div",{className:h().heroIdent,children:[(0,s.jsx)("h1",{className:h().title,children:j}),(0,s.jsx)("p",{className:h().heroMeta,children:(0,s.jsx)("span",{className:h().heroAddress,children:C})})]})})}),(0,s.jsxs)(c.DealTabs,{tabs:z,children:[z.filter(e=>"estimates"!==e.key&&"proposals"!==e.key).map(e=>(0,s.jsx)(c.TabPanel,{tabKey:e.key,children:(0,s.jsxs)("section",{className:h().section,children:[(0,s.jsx)(u.CD,{id:e.key,eyebrow:"Mock",title:e.label,meta:"not part of this harness"}),(0,s.jsx)(u.Xi,{icon:(0,s.jsx)(l.A,{}),title:"".concat(e.label," lives elsewhere"),text:"Open the Proposal or Estimate tab."})]})},e.key)),(0,s.jsxs)(T,{split:"split"===p.get("store"),initialVm:O,catalog:E.catalog,ports:_,children:[(0,s.jsx)(c.TabPanel,{tabKey:"estimates",children:(0,s.jsx)("section",{className:h().section,id:"estimates","aria-labelledby":"estimates-title",children:(0,s.jsx)(m.SiteEstimatesWorkspace,{engagementId:k.Ms.engagementId,initialVm:O,catalog:E.catalog,user:x,address:"1400 Maple Ave",questionWords:{"siteVisit.sewer_depth":{label:"How deep is the sewer lateral where it leaves the house?",sectionTitle:"Utilities"},"siteVisit.trench_length":{label:"How long is the trench from the meter to the ADU?",sectionTitle:"Utilities"},"cityInfo.impact_fees":{label:"Does the city charge impact fees for this size?",sectionTitle:"City requirements"}},legacyEstimateCount:0,loadLegacy:(0,S.ae)("ok"),ports:_,realtime:!1})})}),(0,s.jsx)(c.TabPanel,{tabKey:"proposals",mount:"on-activate",children:(0,s.jsx)(D,{agreement:P})})]}),"proposals"!==p.get("tab")&&(0,s.jsxs)("div",{className:h().actionBar,"data-harness-actionbar":"","data-site-deal":"",children:[(0,s.jsxs)("div",{className:h().actionNext,children:[(0,s.jsx)("p",{className:h().actionNextLabel,children:"Suggested next"}),(0,s.jsx)("p",{className:h().actionNextText,children:"Price the site work"})]}),(0,s.jsx)("span",{className:h().actionSpacer}),(0,s.jsx)("span",{className:h().chip,children:"Estimate"})]})]})]})]})]})}function T(e){let{split:t,initialVm:a,catalog:n,ports:r,children:l}=e;return t?(0,s.jsx)(s.Fragment,{children:l}):(0,s.jsx)(f.DealSiteStore,{engagementId:k.Ms.engagementId,initialVm:a,catalog:n,user:x,access:"full",familyKey:k.Ms.addressKey,ports:r,realtime:!1,children:l})}function D(e){let{agreement:t}=e,a=(0,c.useDealTab)(),r=null==a?void 0:a.go,l=(0,n.useMemo)(()=>({kind:"deal",engagementId:k.Ms.engagementId,target:{addressKey:k.Ms.addressKey},deal:{customerName:j,address:C},openEstimates:e=>{let t={};for(let[a,s]of Object.entries(e))s&&(t[a]=s);null==r||r("estimates",t)},onLeave:e=>window.open(e,"_blank","noopener"),agreement:t}),[r,t]);return(0,s.jsx)("section",{className:h().section,id:"proposals","aria-label":"Proposal",children:(0,s.jsx)(y.default,{...O,host:l})})}function R(e){let{env:t}=e,a=(0,r.useSearchParams)(),l=(0,r.usePathname)(),i=e=>{let t=new URLSearchParams(Array.from(a.entries()));for(let[a,s]of Object.entries(e))null==s?t.delete(a):t.set(a,s);return"".concat(l,"?").concat(t)}
1,[,o]=(0,n.useState)(0);(0,n.useEffect)(()=>t.server.subscribe(()=>o(e=>e+1)),[t.server]);let d=(e,t,a,n)=>(0,s.jsx)("a",{href:e,className:M().devPill,"data-on":t||void 0,title:n,children:a},a),c=t.server.saves.length;return(0,s.jsxs)("div",{className:M().devBar,role:"region","aria-label":"Harness controls",children:[(0,s.jsxs)("div",{className:M().devGroup,children:[(0,s.jsx)("span",{className:M().devLabel,children:"Builder"}),w.Ok.filter(e=>["fresh","newDraft","stale","out","readOnly","rekeyed","fail"].includes(e.id)).map(e=>d(i({scenario:"fresh"===e.id?null:e.id}),t.scenario===e.id,e.id,e.detail))]}),(0,s.jsxs)("div",{className:M().devGroup,children:[(0,s.jsx)("span",{className:M().devLabel,children:"Server"}),(0,s.jsxs)("span",{className:M().devPill,title:"Proposal rows written since the page loaded",children:[c," save",1===c?"":"s"," \xb7 v",t.server.vm.dealVersion]}),(0,s.jsx)("button",{type:"button",className:M().devPill,onClick:()=>{let e=t.server.priceChangeOps();e.length&&t.server.applyElsewhere(e,"Dana Ortiz")},title:"Another computer raises the plan check fee on Estate 600",children:"another computer"}),d(i({sidebar:"collapsed"===a.get("sidebar")?null:"collapsed"}),"collapsed"===a.get("sidebar"),"sidebar collapsed"),(0,s.jsx)("a",{href:i({}),className:M().devPill,children:"reset"})]})]})}},46046:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(71847).A)("save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]])},72528:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(71847).A)("cloud-off",[["path",{d:"m2 2 20 20",key:"1ooewy"}],["path",{d:"M5.782 5.782A7 7 0 0 0 9 19h8.5a4.5 4.5 0 0 0 1.307-.193",key:"yfwify"}],["path",{d:"M21.532 16.5A4.5 4.5 0 0 0 17.5 10h-1.79A7.008 7.008 0 0 0 10 5.07",key:"jlfiyv"}]])},73364:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(71847).A)("file-pen-line",[["path",{d:"m18 5-2.414-2.414A2 2 0 0 0 14.172 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2",key:"142zxg"}],["path",{d:"M21.378 12.626a1 1 0 0 0-3.004-3.004l-4.01 4.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z",key:"2t3380"}],["path",{d:"M8 18h1",key:"13wk12"}]])},77676:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(71847).A)("file-down",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M12 18v-6",key:"17g6i2"}],["path",{d:"m9 15 3 3 3-3",key:"1npd3o"}]])},82371:(e,t,a)=>{"use strict";a.d(t,{H:()=>i,u:()=>l});var s=a(12115),n=a(68911);let r=["#2a7a52","#b3791f","#3b6ea5","#9c4f96","#c0563b","#1f8a8a","#7a5cc4","#b04266"];function l(e){let t=0;for(let a=0;a<e.length;a++)t=31*t+e.charCodeAt(a)>>>0;return r[t%r.length]}function i(e){var t;let{channelName:a,enabled:r=!0}=e,i={...e.me,color:null!=(t=e.me.color)?t:l(e.me.userId)},[d,c]=(0,s.useState)([]),[u,p]=(0,s.useState)(!1),h=(0,s.useRef)(new Map),[,m]=(0,s.useState)(0),f=(0,s.useCallback)(()=>m(e=>e+1),[]),y=(0,s.useRef)(null),g=(0,s.useRef)({onFieldEdit:e.onFieldEdit,onFlags:e.onFlags,onSignal:e.onSignal});g.current={onFieldEdit:e.onFieldEdit,onFlags:e.onFlags,onSignal:e.onSignal};let v=(0,s.useRef)(i);v.current=i,(0,s.useEffect)(()=>{if(!r)return;let e=(0,n.n)();if(!e)return;let t=e.channel(a,{config:{presence:{key:v.current.userId},broadcast:{self:!1}}});y.current=t;let s=()=>{let e=t.presenceState(),a=new Map;for(let t of Object.values(e))for(let e of t)e.userId&&e.userId!==v.current.userId&&!a.has(e.userId)&&a.set(e.userId,{userId:e.userId,name:e.name,avatarUrl:e.avatarUrl,color:e.color});c([...a.values()])};function i(e,a,s){if(s===v.current.userId)return;let n=function(e){for(let a of Object.values(t.presenceState()))for(let t of a)if(t.userId===e)return{...t}}(s);h.current.set(o(e,a),{user:null!=n?n:{userId:s,name:"Teammate",color:l(s)},at:Date.now()}),f()}t.on("presence",{event:"sync"},s).on("presence",{event:"leave"},e=>{let{leftPresences:t}=e,a=new Set(t.map(e=>
1e.userId)),n=!1;for(let[e,t]of h.current)a.has(t.user.userId)&&(h.current.delete(e),n=!0);n&&f(),s()}).on("broadcast",{event:"edit"},e=>{var t,a;let{payload:s}=e;null==(t=(a=g.current).onFieldEdit)||t.call(a,{tab:s.tab,key:s.key,value:s.value},s.byId),i(s.tab,s.key,s.byId)}).on("broadcast",{event:"flags"},e=>{var t,a;let{payload:s}=e;null==(t=(a=g.current).onFlags)||t.call(a,s.flags,s.byId)}).on("broadcast",{event:"focus"},e=>{let{payload:t}=e;i(t.tab,t.key,t.byId)}).on("broadcast",{event:"blur"},e=>{var t;let{payload:a}=e,s=o(a.tab,a.key);(null==(t=h.current.get(s))?void 0:t.user.userId)===a.byId&&(h.current.delete(s),f())}).on("broadcast",{event:"signal"},e=>{var t,a;let{payload:s}=e;null==(t=(a=g.current).onSignal)||t.call(a,s.name,s.payload,s.byId)}).subscribe(e=>{"SUBSCRIBED"===e?(p(!0),t.track({...v.current})):("CLOSED"===e||"CHANNEL_ERROR"===e)&&p(!1)});let d=setInterval(()=>{let e=Date.now(),t=!1;for(let[a,s]of h.current)e-s.at>1e4&&(h.current.delete(a),t=!0);t&&f()},3e3);return()=>{clearInterval(d),y.current=null,h.current.clear(),e.removeChannel(t)}},[a,r]);let b=(0,s.useRef)(new Map),k=(0,s.useRef)(null),w=(0,s.useCallback)(()=>{k.current=null;let e=y.current;if(e){for(let t of b.current.values())e.send({type:"broadcast",event:"edit",payload:{...t,byId:v.current.userId}});b.current.clear()}},[]),I=(0,s.useCallback)(e=>{b.current.set("".concat(e.tab,".").concat(e.key),e),k.current||(k.current=setTimeout(w,150))},[w]),S=(0,s.useCallback)(e=>{var t;null==(t=y.current)||t.send({type:"broadcast",event:"flags",payload:{flags:e,byId:v.current.userId}})},[]),A=(0,s.useCallback)((e,t)=>{var a;null==(a=y.current)||a.send({type:"broadcast",event:"focus",payload:{tab:e,key:t,byId:v.current.userId}})},[]),N=(0,s.useCallback)((e,t)=>{var a;null==(a=y.current)||a.send({type:"broadcast",event:"blur",payload:{tab:e,key:t,byId:v.current.userId}})},[]),M=(0,s.useCallback)((e,t)=>{var a;null==(a=y.current)||a.send({type:"broadcast",event:"signal",payload:{name:e,payload:t,byId:v.current.userId}})},[]);return{others:d,connected:u,lockOwner:(0,s.useCallback)((e,t)=>{let a=h.current.get(o(e,t));return!a||Date.now()-a.at>1e4?null:a.user},[]),sendFieldEdit:I,sendFlags:S,sendFocus:A,sendBlur:N,sendSignal:M}}let o=(e,t)=>"".concat(e,".").concat(t)},85921:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(71847).A)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]])},86254:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(71847).A)("folder-tree",[["path",{d:"M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z",key:"hod4my"}],["path",{d:"M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z",key:"w4yl2u"}],["path",{d:"M3 5a2 2 0 0 0 2 2h3",key:"f2jnh7"}],["path",{d:"M3 3v13a2 2 0 0 0 2 2h3",key:"k8epm1"}]])},95740:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(71847).A)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}
1],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]])},96317:(e,t,a)=>{"use strict";a.d(t,{rE:()=>g,HF:()=>M,fo:()=>N,iJ:()=>x});var s=a(94688),n=a(89760),r=a(21559),l=a(2181),i=a(7254),o=a(98557),d=a(88117);let c=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),u=e=>"number"==typeof e&&Number.isFinite(e)?e:null,p=e=>"string"==typeof e?e:"";function h(e,t){if(!(0,n.o8)(e)||!c(e,t))return;let a=e[t];if(!(0,n.o8)(a))return;let s=[];(Array.isArray(a.entries)?a.entries:[]).forEach((e,t)=>{if(!(0,n.o8)(e))return;let a=u(e.amount);s.push({id:p(e.id)||"entry-".concat(t),label:p(e.label).trim()||"Payment ".concat(t+1),trigger:p(e.trigger).trim(),cents:null==a?0:(0,d.$q)(a)})});let r=u(a.totalPrice);return{totalCents:null==r?null:(0,d.$q)(r),entries:s}}function m(e){var t,a,s,l,i;let{vm:o,proposal:d}=e,u=(0,n.r2)({proposal:{id:d.id,addressKey:e.addressKey,snapshot:d.snapshot,agreementInput:d.agreementInput},vm:o,engagementId:e.engagementId,reason:"sent",frozenAt:(null!=(a=e.now)?a:new Date).toISOString(),dealVersion:o.dealVersion,contractCardId:null,liveProjectedKeysHash:e.liveProjectedKeysHash,hasher:r.BE,plans:e.plans,siteWorkCategories:null!=(s=e.siteWorkCategories)?s:null}),p=(0,n.eK)(d.snapshot),m=(0,n.a_)(p),f=o.units,y=new Map(f.map(e=>[e.id,e])),g=new Map(o.estimates.map(e=>[e.id,e.name])),v=(0,n.RH)(m,f),b={},k={},w=u.units.map((e,t)=>{var a,s,r;let l=null!=(a=m[t])?a:e.cardId;b[l]=e.cardId;let i=function(e,t,a){var s;let r=(0,n.eK)(e);if((0,n.o8)(t)){let e=h(t.proposalPaymentSchedulesByAduId,a);if(void 0!==e)return e}let l=h(r.proposalPaymentSchedulesByAduId,a);if(void 0!==l)return l;let i=r.proposalPaymentSchedule;return(0,n.o8)(i)&&i.aduId===a&&null!=(s=h({[a]:i},a))?s:null}(d.snapshot,d.agreementInput,l);i&&(k[e.cardId]=i);let o=e.unitId?y.get(e.unitId):void 0;return{cardId:e.cardId,savedCardId:l,unitId:e.unitId,name:e.displayName,planName:e.planName,kind:e.kind,sqft:e.sqft,beds:e.beds,baths:e.baths,planBaths:null!=(s=null==o?void 0:o.planBaths)?s:null,pair:null!=e.pair,hidden:e.hidden,unitBaseCents:e.unitBaseCents,overridden:e.overridden,bathChargeCents:e.bathChargeCents,lines:e.lines.map((e,t)=>({id:"".concat(e.lineId,"#").concat(t),name:e.customerName,sectionKey:e.sectionKey,sectionLabel:e.sectionLabel,cents:e.amountCents,side:e.side})),discounts:e.discounts.map((e,t)=>{var a;return{id:"".concat(null!=(a=e.discountId)?a:"d","#").concat(t),label:e.label,detail:e.detail,cents:e.amountCents}}),customerPriceCents:e.customerPriceCents,estimateName:null!=e.estimateId&&null!=(r=g.get(e.estimateId))?r:null}}),I=function(e){if(!(0,n.o8)(e))return null;let t=e.selectedAduId;if("string"==typeof t&&""!==t)return t;let a=(0,n.o8)(e.proposalPaymentSchedulesByAduId)?e.proposalPaymentSchedulesByAduId:{};for(let t of Array.isArray(e.comparedUnitIds)?e.comparedUnitIds:[])if("string"==typeof t&&c(a,t))return t;return null}(d.agreementInput),S=null==I?null:null!=(i=null!=(l=b[I])?l:null==(t=v.get(I))?void 0:t.cardId)?i:I;return{units:w,schedules:k,currentBySaved:b,contractCardId:S}}var f=a(43519),y=a(32759);let g=new Date("2026-09-16T18:00:00.000Z"),v="2026-09-12T18:04:00.000Z",b=e=>JSON.parse(JSON.stringify(e));function k(e){var t,a,n,r,l;let o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},d=(0,i.QM)({vm:e,addressKey:y.Ms.addressKey,plans:y.fN}),c=m({vm:e,engagementId:y.Ms.engagementId,addressKey:y.Ms.addressKey,proposal:{id:"demo_prop_1",snapshot:d,agreementInput:null},liveProjectedKeysHash:d.projectedKeysHash,plans:y.fN,now:g}),u={};for(let e of c.units){if(null==e.customerPriceCents)continue;let t=e.customerPriceCents/100+1250*(o.breakScheduleFor===e.cardId);u[e.savedCardId]={aduId:e.savedCardId,totalPrice:t,entries:(0,s.em)(t,(0,s.kO)(+!!e.name.includes("600")))}}let p=c.units.filter(e=>!e.hidden);return{projection:d,agreementInput:{selectedAduId:null!=(l=null!=(r=null!=(n=o.contract)?n:null==(t=p[1])?void 0:t.savedCardId)?r:null==(a=p[0])?void 0:a.savedCardId)?l:null,comparedUnitIds:c.units.map(e=>e.savedCardId),proposalPaymentSchedulesByAduId:u}}}function w(e){let t=b(e),a=t.estimates.find(e=>e.id===y.Ms.detached);a.lines.find(e=>e.internalName.includes("Impact")).amounts[y.Ms.unit800].amountCents=9e5;let s=a.lines.find(e=>e.internalName.startsWith("Tree"));return delete s.amounts[y.Ms.unit800],a.discounts.find(e=>"Solar"===e.label).amounts[y.Ms.unit800].amountCents=1e6,t.units.find(e=>e.id===y.Ms.unit800).baths=3,t}function I(e,t,a,s){var l,o,d;let c=(0,n.r2)({proposal:{id:"demo_prop_1",addressKey:y.Ms.addressKey,snapshot:t.projection,agreementInput:t.agreementInput},vm:e,engagementId:y.Ms.engagementId,reason:null!=(l=a.reason)?l:"sent",frozenAt:null!=(o=a.frozenAt)?o:v,dealVersion:e.dealVersion,contractCardId:t.agreementInput.selectedAduId,liveProjectedKeysHash:t.projection.projectedKeysHash,hasher:r.BE,plans:y.fN}),u=[];return s&&("active"===a.status||"pending"===a.status)&&(u=(0,n.f1)(c,{vm:s,projection:(0,i.QM)({vm:s,addressKey:y.Ms.addressKey,plans:y.fN}),plans:y.fN})),{id:a.id,reason:c.reason,status:a.status,frozenAt:c.frozenAt,frozenByName:void 0===a.by?"Dana Ortiz":a.by,estimateIds:[y.Ms.detached],drift:u,contractCardId:c.contractCardId,hasRequest:null==(d=a.hasRequest)||d}}function S(e,t){let a=!(arguments.length>2)||void 0===arguments[2]||arguments[2],s=function(e,t){let a=!(arguments.length>2)||void 0===arguments[2]||arguments[2];return m({vm:e,engagementId:y.Ms.engagementId,addressKey:y.Ms.addressKey,proposal:{id:"demo_prop_1",snapshot:t.projection,agreementInput:t.agreementInput},liveProjectedKeysHash:a?t.projection.projectedKeysHash:null,plans:y.fN,now:g})}(e,t,a),n=e.families.find(e=>e.addressKey===y.Ms.addressKey);return{engagementId:y.Ms.engagementId,addressKey:y.Ms.addressKey,familyLabel:n.label,customerName:n.customerName,proposalId:"demo_prop_1",proposalStatus:"REVIEWED",savedAt:"2026-09-15T21:12:00.000Z",hasAgreement:!0,agreementOut:!1,sentAt:null,reissueAt:null,guard:null,units:s.units,defaultCardId:s.contractCardId,schedules:s.schedules,sectionOrder:(0,l.RP)(e.sections,n.sectionOrder),freezes:[],estimates:[],relockNames:["Detached"],access:{canSend:!0,canUnlock:!0,canReissue:!0,reissueNote:null}}}let A=e=>[{id:y.Ms.detached,name:"Detached",locked:e,lockedAt:v,lockedByName:"Dana Ortiz",unlockedAt:e?null:"2026-09-13T17:30:00.000Z",unlockedByName:e?null:"Dana Ortiz"}];function N(){let e=(0,y.p7)("default").vm,t=k(e),a=w(e),s=a=>({...S(e,t),agreementOut:!0,sentAt:v,proposalStatus:"SENT",estimates:A(!0),...a}),n=k(e),r=b(e),l=r.units.find(e=>e.id===y.Ms.unit800);l.basePriceCents=null,l.baseSource="none";let i=I(e,t,{id:"fz_sent",status:"active"},e),o=I(e,t,{id:"fz_drift",status:"active"},a),d=I(e,t,{id:"fz_signed",reason:"signed",status:"active",frozenAt:"2026-09-14T16:20:00.000Z",by:null},a),c=I(e,t,{id:"fz_pending",status:"pending",hasRequest:!1},e);return[{id:"not-sent",title:"Not sent",note:"The saved output row, based on Estate 800 (the agreement inputâs unit). Estate 600 is priced by hand; Estate 800 has +\xbd bath; Estate 950 is hidden, so it isnât offered.",data:S(e,t)},{id:"stale",title:"Stale â prices changed since it was saved",note:"R7.5: Send is disabled and Refresh opens the builder in review mode.",data:{...S(e,n,!1),guard:{code:"bound_stale",message:"Price
1s changed since this proposal was saved â Refresh",cards:[]}}},{id:"blocked",title:"Blocked â schedule doesnât match",note:"The output guardâs refusal with the units at fault and the fix.",data:{...S(e,k(e,{breakScheduleFor:e.units.find(e=>e.id===y.Ms.unit800).cardId})),guard:{code:"schedule_mismatch",message:"The payment schedule for Estate 800 doesn't match its price â open Step 8",cards:[{cardId:"fp_estate800",name:"Estate 800"}]}}},{id:"unpriced",title:"Unpriced unit",note:"A visible card with no base: âNo price yetâ in the ledger and the picker; Send says why.",data:{...S(r,k(r),!0),guard:{code:"unpriced_card",message:"Estate 800 has no price yet",cards:[{cardId:"fp_estate800",name:"Estate 800"}]}}},{id:"pending",title:"Pending â waiting for Dropbox Sign",note:"R10.2 ambiguous send: the freeze and locks stay; check Dropbox Sign before sending again.",data:s({freezes:[c,I(e,t,{id:"fz_old",status:"superseded",frozenAt:"2026-09-10T15:00:00.000Z"})]})},{id:"sent",title:"Sent",note:"Active freeze, nothing changed since.",data:s({freezes:[i]})},{id:"changed",title:"Changed since it went out",note:"computeDrift against an edited deal (impact fees, a removed item, a bigger discount, a bath). One estimate was unlocked since; Send a new one is primary.",data:s({freezes:[o],estimates:[...A(!1),{...A(!0)[0],id:y.Ms.attached,name:"Two ADUs"}]})},{id:"signed",title:"Signed",note:"The webhookâs signed copy beside the sent freeze.",data:s({proposalStatus:"SIGNED",freezes:[d,o]})},{id:"withdrawn",title:"Withdrawn",note:"A hand-marked send taken back: the agreement is no longer out.",data:{...S(e,t),freezes:[I(e,t,{id:"fz_w",reason:"manual",status:"withdrawn"})]}},{id:"failed",title:"Failed",note:"Dropbox refused the request; the locks were released.",data:{...S(e,t),freezes:[I(e,t,{id:"fz_f",status:"failed",hasRequest:!1})]}},{id:"reissued",title:"Reissued â ready to send",note:"R10.7: a new freeze with no Dropbox request yet. Send is back.",data:s({reissueAt:"2026-09-16T17:10:00.000Z",freezes:[I(e,t,{id:"fz_re",status:"active",frozenAt:"2026-09-16T17:10:00.000Z",hasRequest:!1},e),I(e,t,{id:"fz_prev",status:"superseded"})]})},{id:"not-author",title:"Out â estimator who canât reissue this one",note:"The agreement route only lets an admin or the proposalâs author rewrite it; the button says why instead of failing.",data:s({freezes:[o],access:{canSend:!0,canUnlock:!0,canReissue:!1,reissueNote:"Only an admin or the person who built this proposal can send a new agreement."}})},{id:"rep",title:"Out â a rep without estimating rights",note:"No Unlock, no Send a new one.",data:s({freezes:[o],access:{canSend:!0,canUnlock:!1,canReissue:!1,reissueNote:null}})}]}function M(){let e=(0,y.p7)("many").vm,t=k(e),a=S(e,t);a.familyLabel="12345 North Cordova Hills Ranch Road, Rancho Palos Verdes Estates";let n=a.units.map((e,t)=>{var a;return 1===t?{...e,name:"Estate 800 \xb7 Craftsman with a very long display name the rep typed in",unitBaseCents:11845e4,customerPriceCents:(null!=(a=e.customerPriceCents)?a:0)+8395e4}:e}),r=(0,y.p7)("default").vm;r.families.find(e=>e.addressKey===y.Ms.addressKey).units=[{dealUnitId:y.Ms.unitPair,siteEstimateId:y.Ms.attached,sortOrder:1e3,hidden:!1,displayName:"Two ADUs on one lot",version:3}],r.estimates.find(e=>e.id===y.Ms.attached).discounts=[{id:"sd_pair",estimateId:y.Ms.attached,label:"Open house",detail:"Sep 6 event",sortOrder:1e3,version:3,amounts:{[y.Ms.unitPair]:{amountCents:15e4,sides:null,detail:null,version:3}}}];let l=S(r,k(r)),i=(0,y.p7)("single").vm,o=S(i,k(i)),d=(0,y.p7)("default").vm;d.families.find(e=>e.addressKey===y.Ms.addressKey).units.forEach(e=>e.hidden=!0);let c=S(d,k(d)),u=S(r,k(r));return u.schedules={},u.hasAgreement=!1,[{id:"big",title:"60 items, long names, $1,000,000+",note:"Every section in the familyâs order; the total and a cents-bearing schedule still line up.",data:{...a,units:n,schedules:Object.fromEntries(n.map(e=>{var t;let a=(null!=(t=e.customerPriceCents)?t:0)/100;return[e.cardId,{totalCents:e.customerPriceCents,entries:(0,s.em)(a).map(e=>({id:e.id,label:e.label,trigger:e.trigger,cents:Math.round(100*e.amount)}))}]}))}},{id:"pair",title:"Two ADUs (pair)",note:"Side tags on split lines, a single unit (no picker).",data:l},{id:"single",title:"One unit",note:"No picker.",data:o},{id:"no-agreement",title:"No agreement built yet",note:"No schedule; Send says to build the agreement first.",data:u},{id:"empty",title:"No visible units",note:"Every card hidden.",data:c}]}function x(){let e=(0,y.p7)("default").vm,t=k(e),a=w(e),s=I(e,t,{id:"fz_drift",status:"active"},a),n=I(e,t,{id:"fz_p",status:"pending",hasRequest:!1},e),r=I(e,t,{id:"fz_s",reason:"signed",status:"active",frozenAt:"2026-09-14T16:20:00.000Z",by:null},a),l=e=>({proposalId:"demo_prop_1",addressKey:y.Ms.addressKey,engagementId:y.Ms.engagementId,familyLabel:"1400 Maple Ave",customerName:"Jordan Rivera",out:!0,status:{key:"sent",label:"Sent",tone:"accent"},outAt:v,contractSavedCardId:"fp_estate800",contractName:"Estate 800",drift:[],guard:null,canReissue:!0,reissueNote:null,estimateNames:{[y.Ms.detached]:"Detached",[y.Ms.attached]:"Two ADUs"},cardNames:{fp_estate600:"Estate 600",fp_estate800:"Estate 800",fp_estate950:"Estate 950"},lockNames:["Detached"],hrefs:{refresh:(0,f.jl)(y.Ms.addressKey),estimate:"/tools/deals/".concat(y.Ms.engagementId,"?tab=estimates")},...e}),i={addressKey:y.Ms.addressKey,familyLabel:"1400 Maple Ave",proposalId:"demo_prop_1",agreementOut:!0,sentAt:v,reissueAt:null};return[{id:"out-drift",title:"Out \xb7 changed since",context:l({drift:(0,o.Ux)({...i,freezes:[s]},g)})}
1,{id:"out-same",title:"Out \xb7 nothing changed",context:l({})},{id:"out-pending",title:"Out \xb7 pending",context:l({status:(0,o.rJ)({agreementOut:!0,freezes:[n]}),drift:(0,o.Ux)({...i,freezes:[n]},g)})},{id:"out-signed",title:"Signed \xb7 not the author",context:l({status:{key:"signed",label:"Signed",tone:"positive"},outAt:"2026-09-14T16:20:00.000Z",drift:(0,o.Ux)({...i,freezes:[r]},g),canReissue:!1,reissueNote:"Only an admin or the person who built this proposal can send a new agreement."})},{id:"stale",title:"Not out \xb7 stale",context:l({out:!1,status:{key:"not_sent",label:"Not sent",tone:"neutral"},guard:{code:"bound_stale",message:"Prices changed since this proposal was saved â Refresh",cards:[]}})},{id:"blocked",title:"Not out \xb7 blocked",context:l({out:!1,status:{key:"not_sent",label:"Not sent",tone:"neutral"},guard:{code:"filing_conflict",message:"âTrenchingâ is filed in two sections",cards:[]}})},{id:"unpriced",title:"Not out \xb7 unpriced cards",context:l({out:!1,status:{key:"not_sent",label:"Not sent",tone:"neutral"},guard:{code:"unpriced_card",message:"Estate 800 and Estate 950 have no price yet",cards:[{cardId:"fp_estate800",name:"Estate 800"},{cardId:"fp_estate950",name:"Estate 950"}]}})}]}},97239:(e,t,a)=>{"use strict";a.d(t,{A:()=>s});let s=(0,a(71847).A)("list-ordered",[["path",{d:"M11 5h10",key:"1cz7ny"}],["path",{d:"M11 12h10",key:"1438ji"}],["path",{d:"M11 19h10",key:"11t30w"}],["path",{d:"M4 4h1v5",key:"10yrso"}],["path",{d:"M4 9h2",key:"r1h2o0"}],["path",{d:"M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02",key:"xtkcd5"}]])}}]);
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.