1import{J as yt,r as o,a as Je,I as ht,b as t,c as s,g as e,x as c,l as D,d as y,k as Y,f as m,h as O,T as fe,e as me,F as ae,z as oe,u as $,i as ve,A as wt,j as q,S as wl,p as we,w as ze,v as Pt,K as $s,P as Is,o as Ps,C as Ts,M as yl,D as Le,N as _l,G as ns,m as kl,t as $l,E as Il,n as Sl,s as Me}from"./vue.esm-bundler.EiZkpDb4.js";import{a as re}from"./index.B8_nURbH.js";import{h as Gt}from"./moment.C5S46NFB.js";import{s as Ye}from"./pinia.oOu6KNgA.js";import{u as zt,a as Cl}from"./vue-router.BBcpuuV0.js";import{V as ot,a as gt,F as Tt,P as Lt,f as ft,i as rs,t as os,b as Fl}from"./Map.BODTrIsw.js";import{O as Ss}from"./Overlay.Dt1uMR_l.js";import{S as Ls}from"./Select.OziQm_0t.js";import{u as Pl,a as Tl,b as Ll,_ as Ml,c as Al,d as Nl,e as zl}from"./WorkOrderPanel.llN6Obxc.js";import{_ as Cs}from"./flag.Bnl-AWZY.js";import{_ as jl}from"./EditableAttribute.BC4_dIOw.js";import{m as bt,f as Ce}from"./forestreeHelpers.BbCovSMU.js";import{u as Ue}from"./defaultsListStore.XTgjmL29.js";import{_ as Mt}from"./Photos.vue_vue_type_script_setup_true_lang.BgJKN11g.js";import{_ as xt}from"./CheckCircleIcon.C-HzkGvN.js";import{_ as El}from"./TimesCircleIcon.B0QKrRCX.js";import{_ as Ms,a as is}from"./NewFeatureBadge.vue_vue_type_script_setup_true_lang.Ba01UBXt.js";import As from"./CrmLinkedInfoCard.z_v7jK18.js";import{a as at,_ as Vl,u as Dl}from"./ProjectBoundaryControls.DK3rtTLG.js";import{a as Ol,u as Ns,L as zs}from"./uploadStore.DtftjOe4.js";import{S as Ht}from"./SpeechField.C2nNHN3k.js";import{_ as _t}from"./WorkOrderListModal.Dmk0Wa6i.js";import{f as ds}from"./filterSpecies.C6Se471-.js";import{c as pe}from"./exports.HPcrNRPW.js";import{g as jt}from"./helper.C55SGySE.js";import{_ as Rl}from"./loading.DBGJwvcn.js";import{_ as us}from"./_plugin-vue_export-helper.DlAUqK2U.js";import{_ as Bl}from"./TreeFlagForm.vue_vue_type_script_setup_true_lang.C83fWYr8.js";import{_ as Yl}from"./T1WorkOrderBlock.vue_vue_type_script_setup_true_lang.GRe02Krs.js";import Ul from"./NewTreeSpace.DvCfRhGC.js";import{u as ql,R as Wl,a as Gl,F as Hl}from"./FAB.MH99T80Z.js";import{u as Zl}from"./useTreeLayers.qDaONdWB.js";import{_ as Jl,a as Ql}from"./leaf-3.XpF7W2Jc.js";import{_ as Xl}from"./EditModeToggle.CpfatLdW.js";import{_ as Kl}from"./6.BMORNrBO.js";import{_ as ea,u as ta}from"./useWateringSelect.DBBb8THD.js";import{_ as sa}from"./leaf-2.7F9Guhy1.js";import{_ as la,F as aa}from"./leaf-1.D4tDsGkC.js";import{_ as Fs}from"./Tooltip.DG2one6I.js";import{S as nt,C as At,a as Nt,F as Ze}from"./Style.ClikRgKD.js";import{u as na}from"./useDatePicker.DIHQDWqD.js";/* empty css */import{u as oa}from"./useConfirmationSafeguard.BA8d6jKT.js";import{u as ia}from"./useGeolocation.DZPRcAuO.js";import{u as ra}from"./Snap.XY-gAZDF.js";import{u as da}from"./useMapOverlappedItemPopup.MatqZC6R.js";import{_ as ua}from"./ConfirmHost.vue_vue_type_script_setup_true_lang.DvA66NGy.js";import ca from"./ConfirmationModal.Bcc39257.js";import{F as Se}from"./ForestreeIconFactory.Cp3or6np.js";import{c as Be}from"./mapStyleHelper.BmmEa2LJ.js";import{G as va}from"./GeoJSON.BVM7cv13.js";import{M as pa}from"./Modify.CTjzOaz3.js";import"./useConfirm.Bl1HOpba.js";import"./WorkOrderDetail.DWlBfVfW.js";import"./PopupMessage.DFTTrRNC.js";import"./app.CuPa3dAj.js";import"./preload-helper.BXl3LOEh.js";import"./_commonjsHelpers.Cpj98o6Y.js";import"./vue-datepicker.CTzm-ggT.js";/* empty css */import"./vue-select.es.BjWmTirm.js";import"./avatar.esm.MRt4A5-5.js";import"./popper.esm.p9RKiIrX.js";import"./dateTimeHelpers.CmNAcBDk.js";import"./useToast.gnvUjfY3.js";import"./breadcrumbs.Cu_Sc8sH.js";import"./useStyleCache.CHpfWHC8.js";import"./Cluster.B5U-AoXY.js";import"./ChevronDownIcon.BcYh7TrS.js";import"./analyticsHelper.nfm5UeT8.js";import"./CrmAdditionalInfo.B8Gst260.js";import"./CrmEdit.DiGxUC26.js";import"./CopyIcon.vue_vue_type_script_setup_true_lang.BfGZy7Zz.js";import"./Notes.DXywsP9c.js";import"./ReportFilterSelect.DYgue3mA.js";import"./buildQueryString.CczASOuE.js";import"./full.esm.DxndxPx8.js";import"./AssignWork.C4665NRz.js";import"./TreeReviewForm.DJ8G3862.js";import"./AssignWorkNoSave.vue_vue_type_style_index_0_lang.BW8XqjBF.js";import"./SpeciesModal.vue_vue_type_style_index_0_lang.DSKt_dsz.js";import"./WKT.BKpBILyW.js";import"./Feature.CkP7GZ8C.js";import"./Draw.BoWpfYQk.js";import"./TreeIcon.B9VxMrnz.js";import"./Stump.6isGX2RJ.js";import"./menu.CXwyIgDH.js";import"./useMapToken.Brz37X0P.js";import"./WMTS.BQFgEq_M.js";const ma={"data-testid":"vacant-attribute-edit-form-container"},ga={class:"sidebar-header flex items-center"},fa={class:"flex-1 flex-wrap"},ba={class:"flex items-center justify-center text-3xl"},xa={class:"card mt-4 w-full px-2 pb-4"},ha={class:"w-full"},wa={class:"list-group list-group-horizontal text-center"},ya={class:"w-full"},_a={class:"list-group list-group-horizontal text-center"},ka={class:"w-full"},$a={class:"list-group list-group-horizontal text-center"},Ia={class:"w-full"},Sa={class:"list-group list-group-horizontal text-center"},Ca={key:0,class:"w-full"},Fa={key:1,class:"w-full"},Pa={class:"card mt-2 w-full px-4 pb-4"},Ta={class:"flex flex-row"},La={class:"w-full"},Ma=["value","onInput"],Aa={class:"w-full"},Na=["disabled"],za=yt({__name:"VacantAttributeEditForm",props:{selFeature:{},showDefault:{},saveSuccess:{},thisTree:{}},setup(a){const v=a,u=Ue(),{attributes:C,client:J}=Ye(u),T=o(v.selFeature.get("notes")),L=o([]),N=o(!1),g=o(v.selFeature.get("sizeId")),I=o(v.selFeature.get("powerlinesId")),M=o(v.selFeature.get("underground")),x=o(v.selFeature.get("pavementId")),ee=o(v.selFeature.get("potSizeId")),X=o(v.selFeature.get("plantingReasonId")),B=K=>C.value.find(k=>k.id===K)?.settings,H=K=>{L.value=K},Z=async()=>{try{N.value=!0;const K={treeId:v.selFeature.get("treeId"),selectedSize:g.value,selectedPowerline:I.value,selectedUnderground:M.value,selectedPavement:x.value,selectedPotSize:ee.value,selectedPlantingReason:X.value,
1notes:T.value},k=await re.post("/api/tree/planting/update",K);if(v.selFeature.set("sizeId",g.value),v.selFeature.set("pavementId",x.value),v.selFeature.set("powerlinesId",I.value),v.selFeature.set("underground",M.value),v.selFeature.set("potSizeId",ee.value),v.selFeature.set("plantingReasonId",X.value),v.selFeature.set("notes",T.value),k.data.saved.pot_size_name&&v.selFeature.set("potSize",k.data.saved.pot_size_name.name),k.data.saved.planting_reason_name&&v.selFeature.set("plantingReason",k.data.saved.planting_reason_name.name),L.value.length){const te={treeId:v.selFeature.get("treeId")};await Ol(L.value,te),L.value=[]}v.saveSuccess(v.selFeature.get("treeId"))}catch(K){console.log(K.message)}finally{N.value=!1}};return Je(()=>{L.value=[]}),(K,k)=>{const te=ht("v-select");return t(),s("div",ma,[e("div",ga,[e("div",fa,[k[15]||(k[15]=e("p",null,"Edit Planting Attributes",-1)),e("p",null,[e("small",null,"Tree ID: "+c(v.selFeature.get("treeId")),1)])]),e("div",ba,[e("span",{class:"","data-testid":"back-button",onClick:k[0]||(k[0]=D((...W)=>a.showDefault&&a.showDefault(...W),["prevent"]))},[y(at,{color:"white"})])])]),e("div",xa,[e("div",ha,[k[16]||(k[16]=e("div",{class:"small-header"},"Planting Space Size?",-1)),e("div",wa,[e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:g.value==1}]),"data-testid":"space-size-small-button",onClick:k[1]||(k[1]=D(W=>g.value=1,["prevent"]))},"Small",2),e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:g.value==2}]),"data-testid":"space-size-medium-button",onClick:k[2]||(k[2]=D(W=>g.value=2,["prevent"]))},"Medium",2),e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:g.value==3}]),"data-testid":"space-size-large-button",onClick:k[3]||(k[3]=D(W=>g.value=3,["prevent"]))},"Large",2)])]),e("div",ya,[k[17]||(k[17]=e("div",{class:"small-header"},"Overhead Powerlines?",-1)),e("div",_a,[e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:I.value==1}]),"data-testid":"overhead-powerlines-yes-button",onClick:k[4]||(k[4]=D(W=>I.value=1,["prevent"]))},"Yes",2),e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:I.value==2}]),"data-testid":"overhead-powerlines-no-button",onClick:k[5]||(k[5]=D(W=>I.value=2,["prevent"]))},"No",2)])]),e("div",ka,[k[18]||(k[18]=e("div",{class:"small-header"},"Underground Services?",-1)),e("div",$a,[e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:M.value==1}]),"data-testid":"underground-services-yes-button",onClick:k[6]||(k[6]=D(W=>M.value=1,["prevent"]))},"Yes",2),e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:M.value==2}]),"data-testid":"underground-services-no-button",onClick:k[7]||(k[7]=D(W=>M.value=2,["prevent"]))},"No",2)])]),e("div",Ia,[k[19]||(k[19]=e("div",{class:"small-header"},"Pavement Removal Required?",-1)),e("div",Sa,[e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:x.value==1}]),"data-testid":"pavement-removal-yes-button",onClick:k[8]||(k[8]=D(W=>x.value=1,["prevent"]))},"Yes",2),e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:x.value==2}]),"data-testid":"pavement-removal-no-button",onClick:k[9]||(k[9]=D(W=>x.value=2,["prevent"]))},"No",2)])]),B(13)&&B(13).length>0?(t(),s("div",Ca,[k[20]||(k[20]=e("div",{class:"small-header"},"Pot Size?",-1)),y(te,{modelValue:ee.value,"onUpdate:modelValue":k[10]||(k[10]=W=>ee.value=W),class:"style-chooser",options:B(13),label:"name",reduce:W=>W.order,"data-testid":"pot-size-select"},null,8,["modelValue","options","reduce"])])):m("",!0),B(28)&&B(28).length>0?(t(),s("div",Fa,[k[21]||(k[21]=e("div",{class:"small-header"},"Planting Reason?",-1)),y(te,{modelValue:X.value,"onUpdate:modelValue":k[11]||(k[11]=W=>X.value=W),class:"style-chooser",options:B(28),label:"name",reduce:W=>W.order,"data-testid":"planting-reason-select"},null,8,["modelValue","options","reduce"])])):m("",!0)]),e("div",Pa,[e("div",Ta,[e("div",La,[y(Ht,{modelValue:T.value,"onUpdate:modelValue":k[12]||(k[12]=W=>T.value=W)},{label:O(()=>[...k[22]||(k[22]=[e("label",null,[e("div",{class:"small-header"},"NOTES")],-1)])]),default:O(({value:W,updateValue:U,inputRef:S})=>[e("textarea",{id:"notes",ref:S,value:W,onInput:h=>U(h.target.value),class:"block w-full appearance-none rounded-lg bg-slate-100 px-3 py-2 text-sm placeholder-slate-400 shadow-sm focus:border-blue-500 focus:outline-none focus:ring-blue-500",rows:"3",maxlength:"1000","data-testid":"notes-textarea"},null,40,Ma)]),_:1},8,["modelValue"])])])]),y(Mt,{"tree-id":v.selFeature.get("treeId"),"inspection-id":1,"add-images":H},null,8,["tree-id"]),k[23]||(k[23]=e("hr",null,null,-1)),e("div",Aa,[e("button",{class:"btn btn-outline-primary btn-md","data-testid":"cancel-button",onClick:k[13]||(k[13]=D(W=>a.showDefault(),["prevent"]))}," Cancel "),e("button",{class:"btn btn-primary btn-md",style:{float:"right"},disabled:N.value,"data-testid":"save-button",onClick:k[14]||(k[14]=D(W=>Z(),["prevent"]))},c(N.value?"Saving...":"SAVE"),9,Na)])])}}}),ja={"data-testid":"vacant-form-container"},Ea={key:0},Va={class:"sidebar-header flex items-center"},Da={class:"flex items-center justify-center text-3xl"},Oa={class:"card form-card mt-4 w-full px-4 pb-4"},Ra={class:"w-full"},Ba={class:"list-group list-group-horizontal text-center"},Ya={key:0,class:"card mt-2 w-full px-4 pb-4"},Ua={class:"flex flex-row"},qa={class:"w-full"},Wa=["value","onInput"],Ga={class:"w-full"},Ha={key:0},Za={class:""},Ja={class:"sidebar-header flex items-center"},Qa={class:"flex-1 flex-wrap"},Xa={class:"flex items-center justify-center text-3xl"},Ka={class:"card form-card mt-4 w-full px-4 pb-4"},en={class:"w-full"},tn={key:0,class:"w-full"},sn={class:"list-group list-group-horizontal text-center"},ln=["data-testid","onClick"],an={key:1,class:"mt-4 w-full"},nn={class:"mt-2 grid grid-cols-3 gap-2"},on=["data-testid","onClick"],rn={class:"w-full"},dn={key:0},un={class:""},cn={class:"sidebar-header flex items-center"},vn={class:"flex-1 flex-wrap"},pn={class:"flex items-center justify-center text-3xl"},mn={class:"card mt-4 w-full px-2 pb-4"},gn={class:"w-full"},fn={class:"list-group list-group-horizontal text-center"},bn={class:"w-full"},xn={class:"list-group list-group-horizontal text-center"},hn={class:"w-full"},wn={class:"list-group list-group-horizontal text-center"},yn={class:"w-full"},_n={class:"list-group list-group-horizontal text-center"},kn={class:"w-full"},$n={class:"list-group list-group-horizontal text-center"},In={key:0,class:"w-full"},Sn={key:1,class:"w-full"},Cn={key:2,class:"w-full"},Fn={class:"w-full px-3"},Pn={key:3,class:"w-full"},Tn={class:"w-full px-3"},Ln={class:"card mt-2 w-full px-4 pb-4"},Mn={class:"flex flex-row"},An={class:"w-full"},Nn=["value","onInput"],zn={class:"w-full"},jn={key:0},En={class:""},Vn={class:"sidebar-header flex items-center"},Dn={class:"flex items-center justify-center text-3xl"},On={class:"relative my-3 w-full rounded-lg border bg-white shadow"},Rn={class:"w-full px-3 py-4"},Bn={class:"px-2"},Yn={class:"flex items-center text-sm"},Un={key:0,src:_t,class:"mr-2 h-5 w-5"},qn={class:"mr-1 font-semibold"},Wn={class:"mr-1 italic"},Gn={key:1,class:"ml-1"}
1,Hn={key:0,class:"text-sm"},Zn={class:"flex items-center text-sm"},Jn={key:0,src:_t,class:"mr-1 h-5 w-5"},Qn={class:"mr-1 font-semibold"},Xn={class:"mr-1 italic"},Kn={key:1,class:"mr-1"},eo={class:"relative my-3 w-full rounded-lg border bg-white shadow"},to={class:"w-full px-3 py-4"},so={key:0,class:"w-full"},lo={class:"flex items-center py-2 text-sm font-semibold text-slate-700"},ao=["src"],no=["data-testid","onClick"],oo={key:0,class:"flex rounded-full bg-slate-100 px-2 py-1 text-lg font-bold uppercase"},io={class:"flex flex-wrap px-2"},ro={class:"w-full pb-1 text-left font-semibold"},uo={class:"text-left"},co={class:"flex flex-wrap px-2"},vo={class:"w-full text-center text-xs"},po=["data-testid","onClick"],mo={key:0,class:"flex rounded-full bg-slate-100 px-2 py-1 text-lg font-bold uppercase"},go={class:"flex flex-wrap px-2"},fo={class:"w-full pb-1 text-left font-semibold"},bo={class:"text-left"},xo=["data-testid","onClick"],ho={key:0,class:"flex rounded-full bg-slate-100 px-2 py-1 text-lg font-bold uppercase"},wo={class:"flex flex-wrap px-2"},yo={class:"w-full pb-1 text-left font-semibold"},_o={class:"text-left"},ko={class:"w-full"},$o={key:0,class:"text-lg"},Io={class:"flex w-full flex-col items-center justify-center pt-10"},So={class:"justify-content-center pt-4 text-sm text-slate-600"},Co={class:"justify-content-center pt-2 text-sm text-slate-600"},Fo=yt({__name:"VacantForm",props:{selFeature:{},nearbyTrees:{},recentTrees:{},showDefault:{},saveSuccess:{},thisTree:{},workOrderId:{default:null}},setup(a){const v=Ns(),u=a,C=Ue(),{species:J,attributes:T,attachments:L,client:N}
1=Ye(C),g=zt(),I=o(1),M=o(bt().year()),x=o(u.selFeature.get("approved")),ee=o(u.selFeature.get("plantingYear")),X=o(u.selFeature.get("plantingMonth"));o({id:u.selFeature.get("sid"),cname:u.selFeature.get("commonName"),gname:u.selFeature.get("genusName"),species:u.selFeature.get("speciesName")});const B=o(u.selFeature.get("notes")),H=o([]),Z=o(null),K=o(null),k=o(!1),te=o(u.selFeature.get("speciesId")>0?u.selFeature.get("speciesId"):null),W=o(u.selFeature.get("commonName")),U=o(u.selFeature.get("genusName")),S=o(u.selFeature.get("sizeId")),h=o(u.selFeature.get("powerlinesId")),i=o(u.selFeature.get("underground")),z=o(u.selFeature.get("pavementId")),n=o(u.selFeature.get("potSizeId")),w=o(u.selFeature.get("plantingReasonId")),F=o(u.selFeature.get("parkTree")),ie=o(5),b=o(u.selFeature.get("development_id")),R=o(u.selFeature.get("development_stage")),P=o(u.thisTree.asset_id),se=ue=>T.value.find(l=>l.id===ue)?.settings,E=()=>{I.value--},ye=()=>{I.value++},de=ue=>{H.value=ue},Fe=(ue,l,_e)=>{te.value=ue,W.value=l,U.value=_e},qe=ue=>{ue&&ue.id&&(te.value=ue.id,W.value=ue.cname,U.value=ue.gname)},it=async()=>{try{I.value=5,Z.value="Saving Planting Space",k.value=!0;const ue={treeId:u.selFeature.get("treeId"),asset_id:P.value,approvePlanting:x.value,plantingYear:ee.value,plantingMonth:X.value,selectedSize:S.value,selectedPowerline:h.value,selectedUnderground:i.value,selectedPavement:z.value,selectedPotSize:n.value,selectedPlantingReason:w.value,selectedParkTree:F.value,notes:B.value,sid:te.value??0,development_id:b.value,development_stage:R.value,project:g.query.projectId||null,work_order_id:u.workOrderId??null},l=await re.post("/api/tree/planting/update",ue);if(u.selFeature.set("sizeId",S.value),u.selFeature.set("approved",x.value),u.selFeature.set("plantingYear",ee.value),u.selFeature.set("plantingMonth",X.value),u.selFeature.set("pavementId",z.value),u.selFeature.set("powerlinesId",h.value),u.selFeature.set("underground",i.value),u.selFeature.set("potSizeId",n.value),u.selFeature.set("potSize",l.data.saved.pot_size_name?l.data.saved.pot_size_name.name:null),u.selFeature.set("potSizeId",n.value),u.selFeature.set("plantingReason",l.data.saved.planting_reason_name?l.data.saved.planting_reason_name.name:null),u.selFeature.set("plantingReasonId",w.value),u.selFeature.set("development_id",l.data.saved.development_name?l.data.saved.development_name.dev_id:null),u.selFeature.set("devName",l.data.saved.development_name?l.data.saved.development_name.name:null),u.selFeature.set("development_stage",l.data.saved.development_name?l.data.saved.development_name.development_stage:null),u.selFeature.set("parkTree",F.value),u.selFeature.set("notes",B.value),u.selFeature.set("speciesId",te.value),u.selFeature.set("assetId",P.value),u.selFeature.set("genusName",l.data.saved.species?l.data.saved.species.genus:null),u.selFeature.set("species",l.data.saved.species?l.data.saved.species.species:null),u.selFeature.set("speciesName",l.data.saved.species?l.data.saved.species.species:null),u.selFeature.set("variety",l.data.saved.species?l.data.saved.species.variety:null),u.selFeature.set("commonName",l.data.saved.species?l.data.saved.species.common_name:null),u.selFeature.set("origin",l.data.saved.species?l.data.saved.species.origin:null),H.value.length){K.value="Uploading Images";const _e={treeId:u.selFeature.get("treeId")};v.uploadImages(H.value,_e),H.value=[]}}catch(ue){console.log(ue.message),I.value=3,pe(ue)}finally{u.saveSuccess(u.selFeature.get("treeId")),k.value=!1}};Je(()=>{H.value=[]});const Ve=we(()=>[...Array(6)].map((ue,l)=>M.value+l)),Qe=we(()=>J.value.filter(ue=>ue.powerline_friendly===1).slice(0,ie.value));return(ue,l)=>{const _e=ht("v-select");return t(),s("div",ja,[y(fe,{name:"slide-form"},{default:O(()=>[I.value===1?(t(),s("div",Ea,[e("div",Va,[l[35]||(l[35]=e("div",{class:"flex-1 flex-wrap"},[e("p",null,"Assess Planting Space")],-1)),e("div",Da,[e("span",{class:"","data-testid":"step-one-back-button",onClick:l[0]||(l[0]=D((...p)=>a.showDefault&&a.showDefault(...p),["prevent"]))},[y(at,{color:"white"})])])]),e("div",Oa,[e("div",Ra,[l[36]||(l[36]=e("div",{class:"small-header"},"Approve Planting?",-1)),e("div",Ba,[e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:x.value===0}]),"data-testid":"approve-planting-no-button",onClick:l[1]||(l[1]=D(p=>x.value=0,["prevent"]))},"NO",2),e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:x.value===1}]),"data-testid":"approve-planting-yes-button",onClick:l[2]||(l[2]=D(p=>x.value=1,["prevent"]))},"YES",2)])])]),x.value===0?(t(),s("div",Ya,[e("div",Ua,[e("div",qa,[y(Ht,{modelValue:B.value,"onUpdate:modelValue":l[3]||(l[3]=p=>B.value=p)},{label:O(()=>[...l[37]||(l[37]=[e("label",null,[e("div",{class:"small-header"}
1,"NOTES")],-1)])]),default:O(({value:p,updateValue:be,inputRef:xe})=>[e("textarea",{id:"notes",ref:xe,value:p,onInput:Pe=>be(Pe.target.value),class:"block w-full appearance-none rounded-lg bg-slate-100 px-3 py-2 text-sm placeholder-slate-400 shadow-sm focus:border-blue-500 focus:outline-none focus:ring-blue-500",rows:"3",maxlength:"1000","data-testid":"notes-textarea"},null,40,Wa)]),_:1},8,["modelValue"])])])])):m("",!0),x.value===0?(t(),me(Mt,{key:1,"tree-id":u,"inspection-id":1,"add-images":de},null,8,["tree-id"])):m("",!0),l[38]||(l[38]=e("hr",null,null,-1)),e("div",Ga,[e("button",{class:"btn btn-outline-primary btn-md","data-testid":"step-one-cancel-button",onClick:l[4]||(l[4]=D(p=>a.showDefault(),["prevent"]))}," Cancel "),x.value===1?(t(),s("button",{key:0,class:"btn btn-primary btn-md",style:{float:"right"},"data-testid":"step-one-next-button",onClick:l[5]||(l[5]=D(p=>ye(),["prevent"]))}," NEXT ")):m("",!0),x.value===0?(t(),s("button",{key:1,class:"btn btn-primary btn-md",style:{float:"right"},"data-testid":"step-one-save-button",onClick:l[6]||(l[6]=D(p=>it(),["prevent"]))}," SAVE ")):m("",!0)])])):m("",!0)]),_:1}),y(fe,{name:"slide-form"},{default:O(()=>[I.value===2?(t(),s("div",Ha,[e("div",Za,[e("div",Ja,[e("div",Qa,[l[39]||(l[39]=e("p",null,"Year to be Planted",-1)),e("p",null,[e("small",null,"Tree ID: "+c(u.selFeature.get("treeId")),1)])]),e("div",Xa,[e("span",{class:"","data-testid":"step-two-back-button",onClick:l[7]||(l[7]=D((...p)=>a.showDefault&&a.showDefault(...p),["prevent"]))},[y(at,{color:"white"})])])])]),l[43]||(l[43]=e("div",{class:"w-full"},null,-1)),e("div",Ka,[e("div",en,[Ve.value?(t(),s("div",tn,[l[40]||(l[40]=e("label",null,[e("div",{class:"small-header"},"Planting Year")],-1)),e("div",sn,[(t(!0),s(ae,null,oe(Ve.value,p=>(t(),s("a",{key:p,href:"#",class:Y(["list-group-item list-group-item-action",{active:ee.value===p}]),"data-testid":`planting-year-${p}-button`,onClick:D(be=>{ee.value=p,X.value=null},["prevent"])},c(p),11,ln))),128))])])):m("",!0),ee.value?(t(),s("div",an,[l[41]||(l[41]=e("label",null,[e("div",{class:"small-header"},"Planting Month")],-1)),e("div",nn,[(t(!0),s(ae,null,oe($(bt).monthsShort(),(p,be)=>(t(),s("a",{key:be,href:"#",class:Y(["list-group-item list-group-item-action text-center",{active:X.value===be+1}]),"data-testid":`planting-months-${p}-button`,onClick:D(xe=>X.value=be+1,["prevent"])},c(p),11,on))),128))]),l[42]||(l[42]=e("div",{class:"mt-2 text-slate-500"},[e("small",null,"Select the month you want to plant the tree")],-1))])):m("",!0)])]),l[44]||(l[44]=e("hr",null,null,-1)),e("div",rn,[e("button",{class:"btn btn-outline-primary btn-md","data-testid":"step-two-cancel-button",onClick:l[8]||(l[8]=D(p=>a.showDefault(),["prevent"]))}," Cancel "),ee.value?(t(),s("button",{key:0,class:"btn btn-primary btn-md",style:{float:"right"},"data-testid":"step-two-next-button",onClick:l[9]||(l[9]=D(p=>ye(),["prevent"]))}," NEXT ")):m("",!0)])])):m("",!0)]),_:1}),y(fe,{name:"slide-form"},{default:O(()=>[I.value===3?(t(),s("div",dn,[e("div",un,[e("div",cn,[e("div",vn,[e("p",null,"Tree ID: "+c(u.selFeature.get("treeId")),1)]),e("div",pn,[e("span",{class:"","data-testid":"step-three-back-button",onClick:l[10]||(l[10]=D((...p)=>a.showDefault&&a.showDefault(...p),["prevent"]))},[y(at,{color:"white"})])])])]),e("div",mn,[e("div",gn,[l[45]||(l[45]=e("div",{class:"small-header"},"Planting Space Size?",-1)),e("div",fn,[e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:S.value==1}]),"data-testid":"space-size-small-button",onClick:l[11]||(l[11]=D(p=>S.value=1,["prevent"]))},"Small",2),e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:S.value==2}]),"data-testid":"space-size-medium-button",onClick:l[12]||(l[12]=D(p=>S.value=2,["prevent"]))},"Medium",2),e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:S.value==3}]),"data-testid":"space-size-large-button",onClick:l[13]||(l[13]=D(p=>S.value=3,["prevent"]))},"Large",2)])]),e("div",bn,[l[46]||(l[46]=e("div",{class:"small-header"},"Overhead Powerlines?",-1)),e("div",xn,[e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:h.value==1}
1]),"data-testid":"overhead-powerlines-yes-button",onClick:l[14]||(l[14]=D(p=>h.value=1,["prevent"]))},"Yes",2),e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:h.value==2}]),"data-testid":"overhead-powerlines-no-button",onClick:l[15]||(l[15]=D(p=>h.value=2,["prevent"]))},"No",2)])]),e("div",hn,[l[47]||(l[47]=e("div",{class:"small-header"},"Underground Services?",-1)),e("div",wn,[e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:i.value==1}]),"data-testid":"underground-services-yes-button",onClick:l[16]||(l[16]=D(p=>i.value=1,["prevent"]))},"Yes",2),e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:i.value==2}]),"data-testid":"underground-services-no-button",onClick:l[17]||(l[17]=D(p=>i.value=2,["prevent"]))},"No",2)])]),e("div",yn,[l[48]||(l[48]=e("div",{class:"small-header"},"Pavement Removal Required?",-1)),e("div",_n,[e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:z.value==1}]),"data-testid":"pavement-removal-yes-button",onClick:l[18]||(l[18]=D(p=>z.value=1,["prevent"]))},"Yes",2),e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:z.value==2}]),"data-testid":"pavement-removal-no-button",onClick:l[19]||(l[19]=D(p=>z.value=2,["prevent"]))},"No",2)])]),e("div",kn,[l[49]||(l[49]=e("div",{class:"small-header"},"Located in a Park?",-1)),e("div",$n,[e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:F.value==!0}]),"data-testid":"located-park-yes-button",onClick:l[20]||(l[20]=D(p=>F.value=!0,["prevent"]))},"Yes",2),e("a",{href:"#",class:Y(["list-group-item list-group-item-action",{active:F.value==!1}]),"data-testid":"located-park-no-button",onClick:l[21]||(l[21]=D(p=>F.value=!1,["prevent"]))},"No",2)])]),se(13)&&se(13).length>0?(t(),s("div",In,[l[50]||(l[50]=e("div",{class:"small-header"},"Pot Size?",-1)),y(_e,{modelValue:n.value,"onUpdate:modelValue":l[22]||(l[22]=p=>n.value=p),class:"style-chooser",options:se(13),label:"name",reduce:p=>p.order,"data-testid":"pot-size-select"},null,8,["modelValue","options","reduce"])])):m("",!0),se(28)&&se(28).length>0?(t(),s("div",Sn,[l[51]||(l[51]=e("div",{class:"small-header"},"Planting Reason?",-1)),y(_e,{modelValue:w.value,"onUpdate:modelValue":l[23]||(l[23]=p=>w.value=p),class:"style-chooser",options:se(28),label:"name",reduce:p=>p.order,"data-testid":"planting-reason-select"},null,8,["modelValue","options","reduce"])])):m("",!0),$(L)&&$(L).developments.length?(t(),s("div",Cn,[e("div",Fn,[l[52]||(l[52]=e("div",{class:"small-header"},"Development",-1)),y(_e,{modelValue:b.value,"onUpdate:modelValue":l[24]||(l[24]=p=>b.value=p),options:$(L).developments,searchable:!1,clearable:!0,label:"name",reduce:p=>p.id,class:"style-chooser","data-testid":"development-select"},null,8,["modelValue","options","reduce"]),l[53]||(l[53]=e("div",{class:"small-header"},"Development Stage",-1)),ve(e("input",{id:"stage_input","onUpdate:modelValue":l[25]||(l[25]=p=>R.value=p),type:"text",class:"form-control rounded border px-2","data-testid":"development-stage-input"},null,512),[[wt,R.value]])])])):m("",!0),$(N).permissions.mf_edit_asset_id?(t(),s("div",Pn,[e("div",Tn,[l[54]||(l[54]=e("div",{class:"small-header"},"Asset ID (Optional)",-1)),ve(e("input",{id:"asset_id_input","onUpdate:modelValue":l[26]||(l[26]=p=>P.value=p),type:"text",class:"form-control rounded border px-2","data-testid":"asset-id-input"},null,512),[[wt,P.value]])])])):m("",!0)]),e("div",Ln,[e("div",Mn,[e("div",An,[y(Ht,{modelValue:B.value,"onUpdate:modelValue":l[27]||(l[27]=p=>B.value=p)},{label:O(()=>[...l[55]||(l[55]=[e("label",null,[e("div",{class:"small-header"},"NOTES")],-1)])]),default:O(({value:p,updateValue:be,inputRef:xe})=>[e("textarea",{id:"notes",ref:xe,value:p,onInput:Pe=>be(Pe.target.value),class:"block w-full appearance-none rounded-lg bg-slate-100 px-3 py-2 text-sm placeholder-slate-400 shadow-sm focus:border-blue-500 focus:outline-none focus:ring-blue-500",rows:"3",maxlength:"1000","data-testid":"notes-textarea"},null,40,Nn)]),_:1},8,["modelValue"])])])]),y(Mt,{"tree-id":u.selFeature.get("treeId"),"inspection-id":1,"add-images":de}
1,null,8,["tree-id"]),l[56]||(l[56]=e("hr",null,null,-1)),e("div",zn,[e("button",{class:"btn btn-outline-primary btn-md","data-testid":"step-three-back-button",onClick:l[28]||(l[28]=D(p=>E(),["prevent"]))}," Back "),e("button",{class:"btn btn-primary btn-md",style:{float:"right"},"data-testid":"step-three-next-button",onClick:l[29]||(l[29]=D(p=>ye(),["prevent"]))}," Next ")])])):m("",!0)]),_:1}),y(fe,{name:"slide-form"},{default:O(()=>[I.value===4?(t(),s("div",jn,[e("div",En,[e("div",Vn,[l[57]||(l[57]=e("div",{class:"flex-1 flex-wrap"},[e("p",null,"Choose Species")],-1)),e("div",Dn,[e("span",{class:"","data-testid":"step-four-back-button",onClick:l[30]||(l[30]=D((...p)=>a.showDefault&&a.showDefault(...p),["prevent"]))},[y(at,{color:"white"})])])])]),e("div",On,[e("div",Rn,[l[58]||(l[58]=e("p",{class:"py-2 text-sm font-semibold text-slate-700"},"Preferred Species (optional)",-1)),y(_e,{modelValue:te.value,"onUpdate:modelValue":l[31]||(l[31]=p=>te.value=p),class:"style-chooser",options:$(J),label:"gname",filter:$(ds),reduce:p=>p.id,searchable:!0,"data-testid":"preferred-species-select",onInput:qe},{"selected-option":O(p=>[e("div",Bn,[e("div",Yn,[p.powerline_friendly>0?(t(),s("img",Un)):m("",!0),e("span",qn,c(p.gname),1),e("span",Wn,c(p.species),1),p.variety?(t(),s("span",Gn,c(p.variety),1)):m("",!0)]),p.cname?(t(),s("div",Hn,c(p.cname),1)):m("",!0)])]),option:O(p=>[e("div",Zn,[p.powerline_friendly>0?(t(),s("img",Jn)):m("",!0),e("span",Qn,c(p.gname),1),e("span",Xn,c(p.species),1),p.variety?(t(),s("span",Kn,c(p.variety),1)):m("",!0),q(" ("+c(p.cname)+") ",1)])]),_:1},8,["modelValue","options","filter","reduce"])])]),l[64]||(l[64]=e("hr",null,null,-1)),e("div",eo,[e("div",to,[h.value===1&&Qe.value.length>0?(t(),s("div",so,[e("p",lo,[e("img",{src:"/images/icons/power_"+h.value+".png",class:"mr-2"},null,8,ao),l[59]||(l[59]=e("span",{class:""},"Powerline Friendly Species",-1))]),y(wl,{name:"push-down"},{default:O(()=>[(t(!0),s(ae,null,oe(Qe.value,p=>(t(),s("div",{key:"power_"+p.id,class:Y([te.value===p.id?"bg-green-200":"bg-slate-100","mx-2 mb-1 flex cursor-pointer items-center p-2 leading-none text-slate-700 lg:rounded-lg"]),role:"alert","data-testid":`powerline-species-item-${p.id}`,onClick:D(be=>Fe(p.id),["prevent"])},[te.value===p.id?(t(),s("span",oo,[y(xt,{color:"green"})])):m("",!0),e("div",io,[e("span",ro,[q(c(p.gname)+" ",1),e("i",null,c(p.species),1),q(" "+c(p.variety),1)]),e("span",uo,"("+c(p.cname)+")",1)])],10,no))),128))]),_:1}),e("div",{class:"mx-2 mt-1 cursor-pointer items-center bg-slate-500 p-2 leading-none text-white hover:bg-slate-600 lg:rounded-lg",role:"alert","data-testid":"show-more-powerline-species-button",onClick:l[32]||(l[32]=p=>ie.value===5?ie.value=100:ie.value=5)},[e("div",co,[e("span",vo,c(ie.value===5?"SHOW MORE":"SHOW LESS"),1)])]),l[60]||(l[60]=e("hr",null,null,-1))])):m("",!0),l[61]||(l[61]=e("p",{class:"py-2 text-sm font-semibold text-slate-700"},"Recently Used Species",-1)),(t(!0),s(ae,null,oe(a.recentTrees,p=>(t(),s("div",{key:"recent_"+p.id,class:Y([te.value===p.id?"bg-green-200":"bg-slate-100","mx-2 mb-1 flex cursor-pointer items-center p-2 leading-none text-slate-700 lg:rounded-lg"]),role:"alert","data-testid":`recent-species-item-${p.id}`,onClick:D(be=>Fe(p.id),["prevent"])},[te.value===p.id?(t(),s("span",mo,[y(xt,{color:"green"})])):m("",!0),e("div",go,[e("span",fo,[q(c(p.genus)+" ",1),e("i",null,c(p.species),1),q(" "+c(p.variety)+" ("+c(p.total)+")",1)]),e("span",bo,"("+c(p.common_name)+")",1)])],10,po))),128)),l[62]||(l[62]=e("hr",null,null,-1)),l[63]||(l[63]=e("p",{class:"py-2 text-sm font-semibold text-slate-700"},"Most Common Nearby",-1)),(t(!0),s(ae,null,oe(a.nearbyTrees,p=>(t(),s("div",{key:"nearby_"+p.id,class:Y([te.value===p.id?"bg-green-200":"bg-slate-100","mx-2 mb-1 flex cursor-pointer items-center p-2 leading-none text-slate-700 lg:rounded-lg"]),role:"alert","data-testid":`nearby-species-item-${p.id}`,onClick:D(be=>Fe(p.id),["prevent"])},[te.value===p.id?(t(),s("span",ho,[y(xt,{color:"green"})])):m("",!0),e("div",wo,[e("span",yo,[q(c(p.genus)+" ",1),e("i",null,c(p.species),1),q(" "+c(p.variety)+" ("+c(p.total)+")",1)]),e("span",_o,"("+c(p.common_name)+")",1)])],10,xo))),128))])]),l[65]||(l[65]=e("hr",null,null,-1)),e("div",ko,[e("button",{class:"btn btn-outline-primary btn-md","data-testid":"step-four-back-button",onClick:l[33]||(l[33]=D(p=>E(),["prevent"]))}," Back "),e("button",{class:"btn btn-primary btn-md",style:{float:"right"},"data-testid":"finish-save-button",onClick:l[34]||(l[34]=D(p=>it(),["prevent"]))}," FINISH & SAVE ")])])):m("",!0)]),_:1}),y(fe,{name:"slide-form"},{default:O(()=>[I.value===5?(t(),s("div",$o,[l[68]||(l[68]=e("h1",{class:"sidebar-header pt-8"},"Saving!",-1)),e("div",Io,[l[66]||(l[66]=e("div",{class:"flex h-full items-center justify-center"},[e("div",{class:"h-8 w-8 animate-spin rounded-full border-b-2 border-t-2 border-blue-500"})],-1)),l[67]||(l[67]=e("div",{class:"justify-content-center pt-2 text-lg text-slate-600"},"Saving",-1)),e("div",So,c(Z.value),1),e("div",Co,c(K.value),1)])])):m("",!0)]),_:1})])}}}),Po={xmlns:"http://www.w3.org/2000/svg",fill:"none",stroke:"currentColor","stroke-width":"1.5",class:"size-6",viewBox:"0 0 24 24"};function To(a,v){return t(),s("svg",Po,[...v[0]||(v[0]=[e("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M9 15 3 9m0 0 6-6M3 9h12a6 6 0 0 1 0 12h-3"},null,-1)])])}const Lo={render:To},Mo={__name:"ArrowRevertIcon",props:{color:{type:String,default:"gray"}},setup(a){return(v,u)=>
1(t(),me($(Lo),{class:Y($(jt)(a.color))},null,8,["class"]))}},Ao={key:0,class:"fixed inset-0 z-50 flex items-center justify-center bg-black bg-opacity-50","data-testid":"revert-confirm-modal"},No={class:"mx-4 w-full max-w-sm rounded-lg bg-white p-6 shadow-xl"},zo={class:"flex justify-end gap-3"},jo={class:"my-2 w-full rounded-md border border-slate-200 bg-white p-2 text-center font-semibold text-slate-600 shadow-md"},Eo={class:"py-2"},Vo={class:"pb-2 pt-1 text-sm font-thin"},Do={class:"flex justify-between"},Oo={class:"flex px-3 text-lg font-semibold"},Ro=["href"],Bo={class:"flex w-full justify-end px-3 text-lg font-semibold"},Yo=yt({__name:"StumpInfo",props:{closePanel:{type:Function},selFeature:{},treeSource:{},treeId:{}},setup(a){const v=o(!1),u=Ue(),{client:C}=Ye(u),J=()=>{v.value=!1,re.post(`/api/tree/stumps/${a.treeId}/revert`,{treeId:a.treeId}).then(()=>{a.treeSource.removeFeature(a.selFeature),a.closePanel()}).catch(T=>{alert("Error reverting tree."+(T?.response?.data?.[0]?` ${T.response.data[0]}`:"")),pe(T)})};return(T,L)=>(t(),s(ae,null,[v.value?(t(),s("div",Ao,[e("div",No,[L[2]||(L[2]=e("h3",{class:"mb-2 text-base font-semibold text-slate-800"},"Revert to stump?",-1)),L[3]||(L[3]=e("p",{class:"mb-5 text-sm text-slate-600"}," This will convert the planting space back to a stump. This action cannot be undone. ",-1)),e("div",zo,[e("button",{class:"rounded-md bg-slate-50 px-4 py-2 text-sm text-slate-600 hover:bg-slate-100",onClick:L[0]||(L[0]=N=>v.value=!1)}," Cancel "),e("button",{class:"rounded-md bg-orange-500 px-4 py-2 text-sm text-white hover:bg-orange-600","data-testid":"revert-confirm-button",onClick:J}," Revert to stump ")])])])):m("",!0),e("div",jo,[e("div",Eo,[L[5]||(L[5]=e("div",null,"This space was created from a Stump Removal",-1)),e("div",Vo,"Removed Tree ID #"+c(a.selFeature.get("removedTreeId")),1),e("div",Do,[e("div",Oo,[$(C)&&$(C).permissions.reporting_access?(t(),s("a",{key:0,href:"/reports/tree?treeId="+a.selFeature.get("removedTreeId"),target:"_blank",class:"whitespace-nowrap rounded-md bg-slate-100 px-3 py-2 text-sm font-semibold text-blue-600 hover:bg-slate-200 hover:text-blue-700","data-testid":"view-removed-tree-details"}," View Removed Tree ",8,Ro)):m("",!0)]),e("div",null,[e("div",Bo,[e("button",{class:"flex cursor-pointer items-center rounded-md bg-slate-100 px-3 py-2 text-sm font-semibold text-slate-600 shadow-sm hover:bg-slate-200",onClick:L[1]||(L[1]=N=>v.value=!0)},[y(Mo,{class:"mr-1 inline-block h-4 w-4"}),L[4]||(L[4]=q(" Revert to stump ",-1)),y(Ms,{"version-code":"1.0.23","tooltip-position":"left","icon-classes":"left-1",text:"Revert a planting space created by a stump removal back into a stump","feature-key":"revert-stump-1.0.23","display-until":new Date("2026-03-31")},null,8,["display-until"])])])])])])])],64))}}),Uo={class:"relative my-3 w-full rounded-lg border bg-white shadow"},qo={class:"flex w-full items-center justify-between border-b px-3 py-3"},Wo={class:""},Go={class:"flex w-full flex-row"},Ho={class:"w-1/2"},Zo={class:"text-2xl font-bold leading-none"},Jo={key:0,class:"flex text-yellow-600"},Qo={key:1,class:"flex text-slate-600"},Xo={class:"w-full"},Ko={key:0},ei={class:"w-full px-3 py-2"},ti={class:"flex w-full items-center justify-between pb-2"},si={class:"flex justify-between"},li={class:"pt-1 text-sm font-semibold text-slate-700"},ai=["onClick"],ni={class:"w-full"},oi={class:"w-full pt-1"},ii=["onClick"],ri={class:"text-sm font-semibold text-slate-700"},di={key:0,class:"text-xs text-slate-600"},ui={class:"mr-1 flex rounded-full bg-slate-100 px-2 py-1 text-lg font-bold uppercase"},ci={class:"flex w-full justify-between pb-2 pt-4"},vi={key:1,class:"bg-white"},pi={class:"w-full px-3 py-2"},mi={class:"flex w-full justify-between pb-2"},gi={class:"pt-2 text-sm italic text-slate-500"},fi={class:"w-full"},bi={class:"w-full pt-1"},xi={class:"rounded-lg bg-slate-100 px-3 py-2"},hi={class:"text-sm font-semibold text-slate-700"},wi={class:"flex items-center justify-between"},yi={key:0,class:"text-sm text-slate-600"},_i={class:"text-xs text-slate-600"},ki=["onClick"],$i={class:"flex items-center space-x-2"},Ii=["onClick"],Si={class:"px-2 text-sm font-semibold text-slate-700"}
1,Ci=["onClick"],Fi={key:0},Pi={class:"flex w-full justify-end pt-2"},Ti={key:0,class:"rounded bg-blue-300 px-3 py-2 text-white hover:bg-blue-600"},Li={class:"flex w-full justify-center"},js={__name:"InvoiceJob",props:{typeId:{type:Number,required:!0},taskId:{type:Number,required:!0},showCosts:{type:Boolean,default:!1}},setup(a){const v=a,u=o([]),C=o(!1),J=o(!1),T=o([]),L=o(0),N=o(!1);ze(()=>v.taskId,U=>{x()});const g=()=>{C.value=!C.value,J.value=!1},I=()=>{J.value=!J.value,J.value&&M()},M=()=>{u.value.length==0?X():u.value.forEach(U=>{T.value&&T.value.invoice_job_items.length&&U.invoice_items.forEach(S=>{T.value.invoice_job_items.forEach(h=>{h.item_id==S.id&&(S.selected=!0)})})})},x=()=>{L.value=0,C.value=!1,J.value=!1,u.value=[],T.value=[],re.get(`/api/invoicing/job/planting/${v.taskId}`).then(U=>{T.value=U.data,ee()})},ee=()=>{L.value=0,T.value.invoice_job_items?.forEach(U=>{L.value=parseFloat(L.value)+parseFloat(U.item_cost)*parseInt(U.item_quantity)})},X=()=>{re.get("/api/invoicing/show").then(U=>{U.data.forEach(S=>{T.value&&T.value.invoice_job_items.length&&S.invoice_items.forEach(h=>{T.value.invoice_job_items.forEach(i=>{i.item_id==h.id&&(h.selected=!0)})})}),u.value=U.data})},B=(U,S=!1)=>{T.value.invoice_job_items||(T.value={tree_id:v.taskId,notes:"",invoice_job_items:[]}),U.selected?S||(T.value.invoice_job_items=T.value.invoice_job_items.filter(h=>h.item_id!==U.id),U.selected=!1):T.value.invoice_job_items.push({item_id:U.id,item_name:U.name,item_cost:U.cost,item_quantity:U.default_quantity}),ee(),M()},H=U=>{u.value.forEach(S=>{S.id==U&&S.invoice_items.forEach(h=>{B(h,!0)})})},Z=()=>{T.value.invoice_job_items=[],u.value.forEach(U=>{U.invoice_items.forEach(S=>{S.selected=!1})}),ee()},K=()=>{N.value=!0,re.post(`/api/invoicing/job/planting/${v.taskId}`,T.value).then(U=>{T.value=U.data,N.value=!1,g()})},k=U=>{U.item_quantity=(parseInt(U.item_quantity)||0)+1,ee()},te=U=>{U.item_quantity>0&&(U.item_quantity=(parseInt(U.item_quantity)||0)-1),ee()},W=(U,S)=>{T.value.invoice_job_items.splice(U,1),ee(),console.log(S),u.value.forEach(h=>{h.invoice_items.forEach(i=>{i.id==S&&(i.selected=!1)})})};return Je(()=>{C.value=!1,J.value=!1,x()}),(U,S)=>(t(),s("div",Uo,[e("div",qo,[S[10]||(S[10]=e("div",null,[e("p",{class:"text-sm font-semibold text-slate-700"},"Invoicing"),e("p",{class:"text-sm uppercase text-slate-500"},"Tree Planting")],-1)),e("div",Wo,[e("div",Go,[e("div",Ho,[ve(e("div",Zo,[L.value&&L.value>
10?(t(),s("div",Jo,[S[8]||(S[8]=e("div",{class:"self-start text-lg"},"$",-1)),q(" "+c(parseFloat(L.value).toLocaleString(void 0,{minimumFractionDigits:2})),1)])):(t(),s("div",Qo,[...S[9]||(S[9]=[e("div",{class:"self-start text-lg"},"$",-1),q(" 0 ",-1)])]))],512),[[Pt,a.showCosts]])])])])]),y(fe,{name:"slide-down"},{default:O(()=>[ve(e("div",Xo,[J.value?(t(),s("div",Ko,[e("div",ei,[e("div",ti,[S[11]||(S[11]=e("p",{class:"text-sm font-semibold text-slate-800"},"Select Cost Items",-1)),e("button",{class:"rounded bg-slate-200 px-3 py-2 font-semibold text-slate-900 hover:bg-slate-400",onClick:S[0]||(S[0]=h=>I())}," Back ")]),(t(!0),s(ae,null,oe(u.value,h=>(t(),s("div",{key:h.id,class:"w-full py-2"},[e("div",si,[e("p",li,c(h.name),1),e("p",{class:"cursor-pointer pt-1 text-sm text-blue-500 hover:text-blue-700",onClick:i=>H(h.id)}," + ALL ",8,ai)]),e("div",ni,[e("div",oi,[(t(!0),s(ae,null,oe(h.invoice_items,i=>(t(),s("div",{key:i.id,class:"w-full flex-row pb-1"},[e("div",{class:Y([i.selected?"bg-green-200":"bg-slate-100","flex cursor-pointer items-center justify-between rounded-lg p-2"]),onClick:z=>B(i)},[e("div",null,[e("div",ri,c(i.name),1),a.showCosts?(t(),s("div",di,c(i.cost),1)):m("",!0)]),e("div",null,[e("span",ui,[e("span",{class:Y(i.selected?"visible":"invisible")},[y(xt,{color:"green"})],2)])])],10,ii)]))),128))])])]))),128)),e("div",ci,[e("button",{class:"rounded bg-slate-200 px-3 py-2 font-semibold text-slate-900 hover:bg-slate-400",onClick:S[1]||(S[1]=h=>Z())}," Clear All "),e("button",{class:"rounded bg-blue-500 px-3 py-2 font-semibold text-white hover:bg-blue-600",onClick:S[2]||(S[2]=h=>I())}," Done ")])])])):(t(),s("div",vi,[e("div",pi,[e("div",mi,[e("p",gi,c(T.value.value&&T.value.value.invoice_job_items?"":"No items found"),1),e("button",{class:"rounded bg-slate-200 px-3 py-2 font-bold text-slate-900 hover:bg-slate-400",onClick:S[3]||(S[3]=h=>I())}," + Items ")]),e("div",fi,[e("div",bi,[(t(!0),s(ae,null,oe(T.value.invoice_job_items,(h,i)=>(t(),s("div",{key:h.item_id,class:"w-full pb-1"},[e("div",xi,[e("div",hi,c(h.item_name),1),e("div",wi,[e("div",null,[a.showCosts?(t(),s("div",yi," $"+c(parseFloat(h.item_cost*h.item_quantity).toLocaleString(void 0,{minimumFractionDigits:2})),1)):m("",!0),e("div",_i,[e("p",{class:"cursor-pointer text-xs text-red-600 hover:text-red-800",onClick:z=>W(i,h.item_id)}," Remove ",8,ki)])]),e("div",$i,[e("button",{class:"rounded-full bg-slate-100 px-3 py-2 text-sm font-semibold text-slate-700 hover:bg-slate-200",onClick:z=>te(h)}," â ",8,Ii),e("div",Si,c(h.item_quantity),1),e("button",{class:"rounded-full bg-slate-100 px-3 py-2 text-sm font-semibold text-slate-700 hover:bg-slate-200",onClick:z=>k(h)}," + ",8,Ci)])])])]))),128))])]),T.value&&T.value.invoice_job_items?(t(),s("div",Fi,[S[12]||(S[12]=e("p",{class:"pt-2 text-sm font-semibold text-slate-700"},"Invoicing Notes",-1)),ve(e("textarea",{id:"job.notes","onUpdate:modelValue":S[4]||(S[4]=h=>T.value.notes=h),class:"h-20 w-full rounded-lg bg-slate-100 px-2 py-2 text-slate-700",maxlength:"1000"}," ",512),[[wt,T.value.notes]]),e("div",Pi,[N.value?(t(),s("button",Ti," Saving... ")):(t(),s("button",{key:1,class:"rounded bg-blue-500 px-3 py-2 text-white hover:bg-blue-600",onClick:S[5]||(S[5]=h=>K())}," Save "))])])):m("",!0)])]))],512),[[Pt,C.value]])]),_:1}),e("div",Li,[C.value?(t(),s("span",{key:1,class:"w-full cursor-pointer bg-slate-100 py-2 text-center text-slate-600 hover:bg-slate-200 hover:text-blue-700",onClick:S[7]||(S[7]=D(h=>g(),["prevent"]))}," HIDE ")):(t(),s("span",{key:0,class:"w-full cursor-pointer bg-slate-100 py-2 text-center text-slate-600 hover:bg-slate-200 hover:text-blue-700",onClick:S[6]||(S[6]=D(h=>g(),["prevent"]))}," ADD/EDIT COST ITEMS "))])]))}},Mi={"data-testid":"new-planting-form-container"},Ai={key:0},Ni={class:""},zi={class:"sidebar-header flex items-center"},ji={class:"flex-1 flex-wrap"},Ei={class:"flex items-center justify-center text-3xl"},Vi={class:"card mt-2 px-3 pb-4"},Di={class:"flex flex-row"},Oi={class:"w-full"},Ri={class:"map-form"},Bi={class:"py-1"},Yi={key:0,class:"font-semibold"},Ui={key:1,class:"pl-1 font-thin italic"},qi={key:2,class:"pl-1 font-thin"},Wi={key:0,class:"font-thin"},Gi={class:"px-2"},Hi={class:"flex items-center text-sm"},Zi={key:0,src:_t,class:"mr-2 h-5 w-5"},Ji={class:"mr-1 font-semibold"}
1,Qi={key:1,class:"ml-1"},Xi={key:0,class:"text-sm"},Ki={class:"flex items-center text-sm"},er={key:0,src:_t,class:"mr-1 h-5 w-5"},tr={class:"mr-1 font-semibold"},sr={class:"mr-1 italic"},lr={key:1,class:"mr-1"},ar={key:0,class:"w-full"},nr={class:"card mt-2 px-3 pb-4"},or={class:"flex flex-row"},ir={class:"w-full"},rr={class:"flex flex-row"},dr={class:"w-full pb-3"},ur=["value","onInput"],cr={class:"w-full"},vr={key:0,class:"text-lg"},pr={class:""},mr={class:"sidebar-header flex items-center"},gr={class:"flex items-center justify-center text-3xl"},fr={class:"flex w-full flex-col items-center justify-center"},br={class:"w-full"},xr={key:0,class:"text-lg","data-testid":"saving-step-container"},hr={class:"flex w-full flex-col items-center justify-center pt-5"},wr={class:"row justify-content-center"},yr={class:"row justify-content-center"},_r=yt({__name:"NewPlantingForm",props:{tid:{},showDefault:{},saveSuccess:{},selFeature:{},workOrderId:{default:null},crms:{type:Array,required:!1,default:[]}},setup(a){const v=a,u=Ns(),C=Ue(),{species:J,client:T,attributes:L}=Ye(C),N=zt(),g=o(1),I=o([]),M=o(""),x=o(null),ee=o(null),X=o(!1),B=o(Gt().format("YYYY-MM-DD")),H=o(J.value.find(w=>w.id===v.selFeature.get("speciesId"))),Z=o(0),K=o(v.selFeature.get("potSizeId")),k=o(!1),te=w=>L.value.find(F=>F.id===w)?.settings,W=w=>{I.value=w},U=w=>{Z.value=w.id},S=()=>{g.value=2},h=()=>{k.value=!0},i=()=>{g.value=1},z=async()=>{g.value=3,x.value="Planting the tree",X.value=!0;let w="/api/tree/planting/planted?";N&&N.query&&N.query.projectId&&(w="/api/tree/planting/planted?projectId="+N.query.projectId);const F={treeId:v.tid,notes:M.value,plantedDate:B.value,speciesId:H.value?H.value.id:Z.value,selectedPotSize:K.value,photos:!!I.value.length,work_order_id:v.workOrderId??null};try{const ie=await re.post(w,F);v.selFeature.set("planted",1),v.selFeature.set("notes",M.value),v.selFeature.set("plantingYear",ie.data.saved.planting_year),v.selFeature.set("plantedDate",B.value),H.value?(v.selFeature.set("species",H.value.species),v.selFeature.set("speciesName",H.value.species),v.selFeature.set("genusName",H.value.gname),v.selFeature.set("commonName",H.value.cname)):(v.selFeature.set("species",""),v.selFeature.set("speciesName",""),v.selFeature.set("genusName","Not specified"),v.selFeature.set("commonName","Not specified")),K.value&&(v.selFeature.set("potSizeId",K.value),v.selFeature.set("potSize",ie.data.saved.pot_size_name?ie.data.saved.pot_size_name.name:null)),await n()}catch(ie){console.log(ie),g.value=1,pe(ie)}},n=()=>{try{if(I.value.length){ee.value="Uploading Images";const w={treeId:v.tid};u.uploadImages(I.value,w),v.saveSuccess(v.tid)}else v.saveSuccess(v.tid),g.value=1}catch(w){console.log(w),pe(w)}finally{X.value=!1}};return Je(()=>{M.value=v.selFeature.get("notes")}),(w,F)=>{const ie=ht("v-select");return t(),s("div",Mi,[y(fe,{name:"slide-form"},{default:O(()=>[g.value===1?(t(),s("div",Ai,[e("div",Ni,[e("div",zi,[e("div",ji,[F[11]||(F[11]=e("p",null,"Plant a new Tree",-1)),e("p",null,[e("small",null,"Tree ID: "+c(a.tid),1)])]),e("div",Ei,[e("span",{class:"",onClick:F[0]||(F[0]=D((...b)=>a.showDefault&&a.showDefault(...b),["prevent"]))},[y(at,{color:"white"})])])])]),F[18]||(F[18]=e("div",{class:"w-full"},null,-1)),e("div",Vi,[e("div",Di,[e("div",Oi,[e("div",Ri,[e("label",null,[e("h6",null,[F[12]||(F[12]=e("small",{class:"pb-2"},"Preferred Species",-1)),F[13]||(F[13]=e("br",null,null,-1)),e("div",Bi,[a.selFeature.get("genusName")?(t(),s("span",Yi,c(a.selFeature.get("genusName")),1)):m("",!0),a.selFeature.get("species")?(t(),s("span",Ui,c(a.selFeature.get("species")),1)):m("",!0),a.selFeature.get("variety")?(t(),s("span",qi,"'"+c(a.selFeature.get("variety"))+"'",1)):m("",!0)]),a.selFeature.get("commonName")?(t(),s("span",Wi," ("+c(a.selFeature.get("commonName"))+")",1)):m("",!0)])])]),F[15]||(F[15]=e("h6",null,[e("small",null,"PLANTED SPECIES (*OPTIONAL)")],-1)),y(ie,{modelValue:H.value,"onUpdate:modelValue":F[1]||(F[1]=b=>H.value=b),class:"style-chooser",options:$(J),label:"gname",filter:$(ds),searchable:!0,onInput:U},{"selected-option":O(b=>[e("div",Gi,[e("div",Hi,[b.powerline_friendly>0?(t(),s("img",Zi)):m("",!0),e("span",Ji,c(b.gname),1),e("i",null,c(b.species),1),b.variety?(t(),s("span",Qi,c(b.variety),1)):m("",!0)]),b.cname?(t(),s("div",Xi,c(b.cname),1)):m("",!0)])]),option:O(b=>[e("div",Ki,[b.powerline_friendly>0?(t(),s("img",er)):m("",!0),e("span",tr,c(b.gname),1),e("span",sr,c(b.species),1),b.variety?(t(),s("span",lr,c(b.variety),1)):m("",!0),q(" ("+c(b.cname)+") ",1)])]),_:1},8,["modelValue","options","filter"]),te(13)&&te(13).length>0?(t(),s("div",ar,[F[14]||(F[14]=e("h6",null,[e("small",null,"POT SIZE")],-1)),y(ie,{modelValue:K.value,"onUpdate:modelValue":F[2]||(F[2]=b=>K.value=b),class:"style-chooser",options:te(13),label:"name",reduce:b=>b.order},null,8,["modelValue","options","reduce"])])):m("",!0)])])]),e("div",nr,[e("div",or,[e("div",ir,[F[16]||(F[16]=e("label",null,[e("div",{class:"small-header"},"PLANTED DATE")],-1)),ve(e("input",{id:"plantedDate","onUpdate:modelValue":F[3]||(F[3]=b=>
1B.value=b),"data-testid":"planted-date-input",name:"plantedDate",type:"date",class:"block w-full appearance-none rounded-lg bg-slate-100 px-3 py-2 text-sm placeholder-slate-400 shadow-sm focus:border-blue-500 focus:outline-none focus:ring-blue-500"},null,512),[[wt,B.value]])])]),e("div",rr,[e("div",dr,[y(Ht,{modelValue:M.value,"onUpdate:modelValue":F[4]||(F[4]=b=>M.value=b)},{label:O(()=>[...F[17]||(F[17]=[e("label",null,[e("div",{class:"small-header"},"NOTES")],-1)])]),default:O(({value:b,updateValue:R,inputRef:P})=>[e("textarea",{id:"notes",ref:P,value:b,"data-testid":"notes-textarea",onInput:se=>R(se.target.value),class:"block w-full appearance-none rounded-lg bg-slate-100 px-3 py-2 text-sm placeholder-slate-400 shadow-sm focus:border-blue-500 focus:outline-none focus:ring-blue-500",rows:"3",maxlength:"1000"},null,40,ur)]),_:1},8,["modelValue"])])])]),$(T)?.permissions?.invoice_planting?(t(),me(js,{key:0,"type-id":1,"task-id":a.tid,"show-costs":$(T)?.permissions?.invoice_show_cost},null,8,["task-id","show-costs"])):m("",!0),y(Mt,{"tree-id":a.tid,"inspection-id":1,"add-images":W},null,8,["tree-id"]),F[19]||(F[19]=e("hr",null,null,-1)),e("div",cr,[e("button",{class:"btn btn-outline-primary btn-md","data-testid":"step-one-cancel-button",onClick:F[5]||(F[5]=D(b=>a.showDefault(),["prevent"]))}," Cancel "),a.crms&&a.crms.length>0?(t(),s("button",{key:0,class:"btn btn-primary btn-md",style:{float:"right"},"data-testid":"step-one-next-button",onClick:F[6]||(F[6]=D(b=>S(),["prevent"]))}," Next ")):(t(),s("button",{key:1,class:"btn btn-primary btn-md",style:{float:"right"},"data-testid":"step-one-save-button",onClick:F[7]||(F[7]=D(b=>z(),["prevent"]))}," TREE PLANTED! "))])])):m("",!0)]),_:1}),y(fe,{name:"slide-form"},{default:O(()=>[g.value===2?(t(),s("div",vr,[e("div",pr,[e("div",mr,[F[20]||(F[20]=e("div",{class:"flex-1 flex-wrap"},[e("p",null,"Customer Request")],-1)),e("div",gr,[e("span",{class:"",onClick:F[8]||(F[8]=D(b=>i(),["prevent"]))},[y(at,{color:"white"})])])])]),e("div",fr,[(t(!0),s(ae,null,oe(a.crms,b=>(t(),me(As,{key:b.id,"crm-tree-info":b,"tree-id":a.tid,"show-edit-menu":!1,"only-show-edit":!0,onCrmStepCompleteFn:h},null,8,["crm-tree-info","tree-id"]))),128))]),F[21]||(F[21]=e("hr",null,null,-1)),e("div",br,[e("button",{class:"btn btn-outline-primary btn-md","data-testid":"step-two-cancel-button",onClick:F[9]||(F[9]=D(b=>a.showDefault(),["prevent"]))}," Cancel "),k.value?(t(),s("button",{key:0,class:"btn btn-primary btn-md",style:{float:"right"},"data-testid":"step-two-save-button",onClick:F[10]||(F[10]=D(b=>z(),["prevent"]))}," TREE PLANTED! ")):m("",!0)])])):m("",!0)]),_:1}),y(fe,{name:"slide-form"},{default:O(()=>[g.value===3?(t(),s("div",xr,[F[23]||(F[23]=e("h1",{class:"sidebar-header"},"Saving!",-1)),e("div",hr,[F[22]||(F[22]=e("div",{class:"row justify-content-center"},[e("img",{src:Rl,width:"64px",height:"64px"})],-1)),e("div",wr,[e("h3",null,[e("small",null,c(x.value)+"...",1)])]),e("div",yr,[e("h3",null,[e("small",null,c(ee.value)+"...",1)])])])])):m("",!0)]),_:1})])}}}),kr={},$r={class:"m-0 flex flex-col"},Ir={class:"mt-5 text-xs uppercase text-slate-400"},Sr={class:"text-lg font-semibold"};function Cr(a,v){return t(),s("div",$r,[e("div",Ir,[$s(a.$slots,"label")]),e("div",Sr,[$s(a.$slots,"content")])])}const Ae=us(kr,[["render",Cr]]),Fr={id:"info",class:"sidebar-pane","data-testid":"vacant-info-container"},Pr={key:0,class:"h-48"},Tr={class:""},Lr={class:"sidebar-header flex items-center"},Mr={class:"flex items-center justify-center text-3xl"},Ar={key:1},Nr={class:""},zr={class:"sidebar-header flex items-center"},jr={class:"flex items-center justify-center text-3xl"},Er={class:"modal-mask"},Vr=["id"],Dr=["src"],Or={class:"modal-mask"},Rr=["id"],Br=["src"],Yr={key:2,class:"my-2 mt-3 rounded-lg bg-blue-200 p-3"},Ur={class:"flex items-center justify-between font-semibold text-slate-800"},qr={class:"flex items-center"},Wr={class:"pt-1"},Gr=["data-testid","onClick"],Hr={key:1,class:"relative",style:{right:"0"}},Zr={class:"absolute z-10 w-48 origin-top-right rounded-lg bg-white shadow-lg ring-1 ring-black ring-opacity-5",style:{to
1p:"0.6rem",right:"2.2rem"},"aria-label":"options-menu"},Jr={class:"py-1 font-normal",role:"menu","aria-orientation":"vertical","aria-labelledby":"options-menu-0"},Qr=["data-testid","onClick"],Xr=["data-testid","onClick"],Kr={class:"pt-1.5 text-sm text-slate-700"},ed={key:0,class:"flex flex-wrap py-1 text-xs text-blue-600"},td=["data-testid","onClick"],sd={key:0},ld={key:1},ad={class:"flex w-full justify-end text-xs text-slate-500"},nd={key:3,class:"card mt-2 w-full bg-green-600 p-2 text-center text-white"},od={class:"text-md flex flex-col items-center justify-center py-2"},id={class:"flex flex-row items-center text-lg"},rd={class:"mt-1 flex flex-row items-center"},dd={class:"px-1 font-thin italic"},ud={key:0,class:"px-1 font-thin italic"},cd={class:"flex flex-row items-center"},vd={class:"mt-2 text-right text-sm text-slate-100"},pd={key:4,class:"card bg-forestree-red mt-2 w-full p-2 text-center text-white"},md={class:"flex flex-col items-center justify-center py-2 text-lg"},gd={class:"flex flex-row"},fd={key:5,class:"card mt-2 w-full bg-green-600 p-2 text-center text-white"},bd={class:"flex flex-col items-center justify-center py-2 text-lg"},xd={class:"flex flex-row items-center"},hd={key:6,class:"card my-2 w-full bg-slate-600 p-2 text-center text-slate-100"},wd={key:8,class:"card mt-2 pb-4"},yd={class:"order relative w-full rounded-t shadow"},_d={class:"flex w-full justify-between rounded-t bg-slate-100 px-3 py-3 text-lg font-semibold text-slate-700"},kd={class:"self-center"},$d={class:"flex items-center space-x-2"},Id={class:"absolute right-0 z-50 mt-2 w-48 rounded-md bg-white shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none"},Sd={class:"py-1",role:"menu","aria-orientation":"vertical","aria-labelledby":"options-menu"},Cd={key:0,class:"flex w-full bg-slate-600"},Fd={class:"w-1/2 py-3 pl-3"},Pd={class:"py-1 text-lg font-semibold text-slate-200"},Td={class:"w-1/2 py-3 pl-3"},Ld={class:"py-1 text-lg font-semibold text-slate-200"},Md={class:"flex w-full bg-slate-600"},Ad={class:"w-full px-3 py-3"},Nd={class:"text-md text-slate-200"},zd={class:"flex flex-row px-3"},jd={class:"w-1/2"},Ed={class:"flex items-center space-x-2 pt-1"},Vd={class:Y(["rounded px-4 py-1 text-lg font-semibold","bg-green-500 text-white"])},Dd={key:0,class:Y(["rounded px-4 py-1 text-lg font-semibold","bg-blue-400 text-white"])},Od={class:"w-1/2"},Rd={class:"map-form"},Bd={class:"flex flex-row px-3"},Yd={class:"w-full"},Ud={class:""},qd={key:0,class:"font-semibold"},Wd={key:1,class:"px-1 font-thin italic"},Gd={key:2,class:"font-thin"},Hd={class:"text-sm font-thin"},Zd={class:"flex flex-row px-3"},Jd={class:"w-1/2"},Qd={class:"w-1/2"},Xd={class:"flex flex-row px-3"},Kd={class:"w-1/2"},eu={class:"w-1/2"},tu={class:"flex flex-row px-3"},su={class:"w-1/2"},lu={class:"flex flex-row px-3"},au={class:"w-full"},nu={key:0,class:"my-1 w-full rounded px-4 py-3 text-sm font-thin",style:{background:"#f5f7f9"},role:"alert"},ou={style:{"white-space":"pre-wrap"}},iu={key:1,class:"flex flex-row px-3"},ru={class:"w-full"},du={class:"map-form w-full"},uu={class:"my-1 w-full rounded px-4 py-3 text-sm font-thin",style:{background:"#f5f7f9"},role:"alert"},cu={style:{"white-space":"pre-wrap"}},vu={key:0,class:"mt-1 inline-flex items-center rounded-lg bg-green-500 px-2 py-1 text-xs font-medium text-green-100"},pu={class:"w-full justify-center px-3 pt-2"},mu={class:"flex w-full"},gu={class:"w-full pb-1"},fu=["data-testid","onClick"],bu={key:0,class:"w-full py-2"},xu={class:"flex rounded-lg"},hu={class:"relative flex flex-grow items-stretch"},wu={key:0,class:"text-xs italic text-red-500"},yu={key:1,class:"w-full pt-3"},_u=["data-testid","onClick"],ku={key:2,class:"w-full pt-3"},$u=["data-testid","onClick"],Iu={key:11,class:"card mt-2 w-full px-4 pb-4"},Su={class:"text-med flex flex-row justify-between pt-2"},Cu={key:12,class:"card mt-2 w-full px-4 pb-4"},Fu={class:"text-med pt-2"},Pu={class:"w-full text-right text-xs text-slate-500"},Tu={key:0,class:"pt-3"},Lu={key:1,class:"pt-1"},Mu={class:"pb-5 pt-1"},Au={key:0},Nu={key:0},zu={key:0},ju={key:0},Eu={__name:"VacantInfo",props:{closePanel:{},selFeature:{},treeSource:{},selectedTreeData:{},reloadTrees:{},access:{},workOrderId:{type:String,default:null}},emits:["enableConfirmationSafeguard","work-order-actioned"],setup(a,{expose:v,emit:u}){const C=a,J=Ue(),{species:T,client:L}=Ye(J),N=zt(),g=o(!1),I=o(!0),M=o(!1),x=o(!1),ee=o(!1),X=o(!1),B=o([]),H=o(!1),Z=o(!1),K=o(0),k=o([]),te=o([]),W=o(!1),U=o(null),S=o(null),h=o(""),i=o(null),z=o(null),n=o(null),w=we(()=>!n.value||!L.value?.client_users_link.user_id?!1:n.value.some(V=>V.type==="plant_tree"&&Array.isArray(V.assignments)&&V.assignments.some(d=>
1d.user_id===L.value?.client_users_link.user_id))),F=o(null),ie=o(!1),b=o(null),R=o(null),P=o(null),se=o([]),E=o([]),ye=o(!1),de=o(null),Fe=o(null);let qe=null;const it=Is("PlantingMapControlAPI"),{getClusterAndAddToMap:Ve,refreshAllFlags:Qe}=it,ue=Is("PlantingMapGlobalState"),{clusterTreeSource:l,showAllFlagLayer:_e,allFlagSource:p,allFlagLayer:be}=ue;ze(h,()=>{ct()});const xe=u,Pe=()=>{C.closePanel()},Xe=V=>{R.value&&(R.value.some(_=>_.contains(V.target))||(b.value=null)),P.value&&!P.value.contains(V.target)&&(X.value=!1)},rt=(V,d)=>B.value.filter(_=>_.tree_id===V&&(_.inspection_id===d||_.maintenance_id===d||_.flag_id===d)),kt=V=>{F.value=V,ie.value=!0},De=(V=!1)=>{I.value=!0,M.value=!1,Z.value=!1,x.value=!1,ee.value=!1,X.value=!1,V&&Ve&&Ve(),xe("enableConfirmationSafeguard",!1),V&&je(C.selectedTreeData.treeId,C.selFeature.get("lat"),C.selFeature.get("lng"))},Oe=(V,d=null)=>{d==="m"?(C.reloadTrees(V),I.value=!1,C.closePanel()):I.value=!0,M.value=!1,Z.value=!1,C.closePanel(),xe("enableConfirmationSafeguard",!1),C.workOrderId&&xe("work-order-actioned")},Zt=()=>{I.value=!1,Z.value=!1,M.value=!0,xe("enableConfirmationSafeguard",!0)},dt=()=>{I.value=!1,M.value=!1,Z.value=!0,xe("enableConfirmationSafeguard",!0)},ut=()=>{re.post("/api/trees/remove",{treeId:C.selectedTreeData.treeId,removedReason:"Data Error",removedNotes:"Planting Space Removed",createVacant:!1,projectId:N.query.projectId||null}).then(()=>{C.treeSource.removeFeature(C.selFeature),C.treeSource.refresh(),Pe()}).catch(V=>{alert("Error Removing Space"),pe(V)})},je=(V,d,_)=>{ye.value=!0,B.value=[],se.value=[],E.value=[],W.value=!1,U.value=null,S.value=null,h.value="",i.value=null,z.value=null,re.post("/api/tree/planting/info",{lat:d,lng:_,treeId:V}).then(Q=>{g.value=!0,k.value=Q.data.nearbyTrees,te.value=Q.data.recentTrees,B.value=Q.data.photos,S.value=Q.data.tree?.tags||null,de.value=Q.data.tree,n.value=Q.data.flags,se.value=Q.data.tree?.active_crm_links||[],E.value=Q.data.tree?.planting_projects||[],ye.value=!1}).catch(Q=>{console.log(Q),ye.value=!1,pe(Q)})},ct=()=>{h.value.length<1?z.value=[]:(Fe.value&&(clearTimeout(Fe.value),Fe.value=null),Fe.value=setTimeout(()=>{re.post("/api/tags/search",{search:h.value}).then(V=>{z.value=V.data.tags}).catch(V=>{console.log(V),pe(V)})},500))},Ke=()=>{W.value?W.value=!1:(W.value=!0,i.value||re.get("/api/tags/recent").then(V=>{i.value=V.data.tags}).catch(V=>{console.log(V),pe(V)}))},Et=()=>{if(h.value.length>0){const V={treeId:C.selectedTreeData.treeId,name:h.value};re.post("/api/tags/create",V).then(d=>{d.data.tag&&(S.value.filter(Q=>Q.id===d.data.tag.id).length===0?S.value.push(d.data.tag):It("Tag already added"))}).catch(d=>{console.log(d),pe(d)})}else It("Tag cannot be blank")},Vt=(V,d)=>{const _={treeId:C.selectedTreeData.treeId,id:V,name:d};if(S.value.filter($e=>$e.id===V).length>0){It("Tag already added");return}re.post("/api/tags/save",_).then(()=>{S.value.push(_)}).catch($e=>{console.log($e),pe($e)})},$t=V=>{const d={treeId:C.selectedTreeData.treeId,id:V};re.post("/api/tags/remove",d).then(()=>{S.value=S.value.filter(_=>_.id!==V)}).catch(_=>{console.log(_),pe(_)})},It=V=>{U.value=V,qe&&(clearTimeout(qe),qe=null),qe=setTimeout(()=>{U.value=null},2e3)},ke=(V,d)=>{const _={attribute:"address",value:d},Q=de.value.id;return re.post("/api/tree/update/"+Q,_).then($e=>$e.status===200).catch($e=>(console.log($e),pe($e),!1))},le=V=>{b.value=b.value===V?null:V},Dt=(V,d)=>{let _="/api/flag/remove?flagType=planting";d=="Complete"&&(_="/api/flag/complete?flagType=planting"),re.post(_,{flagId:V}).then(()=>{n.value=n.value.filter(Q=>Q.id!==V),b.value=null,Ve&&(p.value.clear(),l.value.clear(),Ve().then(Q=>{Q&&Q.allFlags&&Array.isArray(Q.allFlags)&&Qe(Q.allFlags),N.query.showFlagged&&(_e.value=!0,be.value.setVisible(!0),be.value.changed())}))}).catch(Q=>{console.log(Q),pe(Q)})},We=()=>{I.value=!1,x.value=!0,xe("enableConfirmationSafeguard",!0)},vt=()=>{I.value=!1,ee.value=!0,X.value=!1},ne=o(null),Ot=async V=>{try{const d=await re.post("api/t1/wo/details",{work_order_number:V});ne.value=d.data.data}catch(d){console.error("Error fetching work order details:",d),pe(d)}},Ge=async V=>{const d={...N.query};d.workOrderId=V.woWorkOrderNumber,router.replace({path:N.path,query:d}),await Ot(V.woWorkOrderNumber)},Jt=()=>{ne.value=null;const V={...N.query};delete V.workOrderId,router.replace({path:N.path,query:V})};ze(()=>C.workOrderId,async V=>{V?await Ot(V):ne.value=null},{immediate:!0}),v({showVacantInfo:je,showDefault:De}),Je(()=>{document.addEventListener("click",Xe)}),Ps(()=>{document.removeEventListener("click",Xe)});const St=V=>!V||V<1||V>12?null:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][V-1];return(V,d)=>(t(),s("div",Fr,[ye.value?(t(),s("div",Pr,[e("div",Tr,[e("div",Lr,[d[15]||(d[15]=e("div",{class:"flex-1 flex-wrap"},[e("p",null,"Tree Planting Space")],-1)),e("div",Mr,[e("span",{class:"","data-testid":"close-side-panel-button",onClick:d[0]||(d[0]=D(_=>Pe(),["prevent"]))},[y(is,{class:"h-5 w-5 cursor-pointer stroke-white stroke-2"})])])])]),d[16]||(d[16]=e("div",{class:"flex h-full items-center justify-center"},[e("div",{class:"h-8 w-8 animate-spin rounded-full border-b-2 border-t-2 border-blue-500"}),e("div",{class:"ml-2 text-slate-600"},"Loading...")],-1))])):m("",!0),I.value&&!ye.value?(t(),s("div",Ar,[e("div",Nr,[e("div",zr,[d[17]||(d[17]=e("div",{class:"flex-1 flex-wrap"},[e("p",null,"Tree Planting Space")],-1)),e("div",jr,[e("span",{class:"","data-testid":"close-side-panel-button",onClick:d[1]||(d[1]=D(_=>Pe(),["prevent"]))},[y(is,{class:"h-5 w-5 cursor-pointer stroke-white stroke-2"})])])])]),H.value?(t(),me(fe,{key:0,name:"modal"},{default:O(()=>[e("div",Er,[e("div",{id:K.value,class:"lightbox-target"},[e("img",{src:"/api/photos/show/"+B.value[K.value].file},null,8,Dr),e("a",{class:"lightbox-close",href:"#","data-testid":"lightbox-close-button",onClick:d[2]||(d[2]=_=>H.value=!1)})],8,Vr)])]),_:1})):m("",!0),ie.value?(t(),me(fe,{key:1,name:"modal"},{default:O(()=>[e("div",Or,[e("div",{id:K.value,class:"lightbox-target"},[e("img",{src:"/api/photos/show/"+F.value},null,8,Br),e("a",{class:"lightbox-close",href:"#","data-testid":"flag-lightbox-close-button",onClick:d[3]||(d[3]=_=>ie.value=!1)})],8,Rr)])]),_:1})):m("",!0),n.value?.length>0?(t(),s("div",Yr,[e("div",null,[d[20]||(d[20]=Ts('<div class="flex justify-center pb-1"><div class="flex-shrink-0"><img src="'+Cs+'" class="h-6 w-6"></div><div class="ml-2 mt-1 flex items-center"><div class="font-semibold text-blue-800">This space has been flagged</div></div></div>',1)),(t(!0),s(ae,null,oe(n.value,_=>
1(t(),s("div",{key:_.id,class:Y([_.type==="plant_tree"?"bg-green-100":"bg-white","mt-2 rounded-lg px-3 pb-2 pt-3"])},[e("div",Ur,[e("div",qr,[d[18]||(d[18]=e("div",{class:"flex-shrink-0 pr-1"},[e("img",{src:Cs,class:"h-6 w-6"})],-1)),e("div",Wr,c(_.type==="plant_tree"?"Flagged for Planting":"Flagged for Inspection"),1)]),e("div",null,[e("div",{ref_for:!0,ref:"flagOptions",class:"flex justify-end"},[$(L)?.permissions&&!$(L)?.permissions?.contractor?(t(),s("button",{key:0,id:"options-menu-0",class:"group relative ml-2 inline-flex h-8 w-8 items-center justify-center rounded-full bg-white focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2","aria-haspopup":"true","aria-expanded":"false","data-testid":`flag-options-menu-${_.id}`,onClick:Q=>le(_.id)},[...d[19]||(d[19]=[e("span",{class:"flex h-full w-full items-center justify-center rounded-full"},[e("svg",{class:"h-5 w-5 text-slate-400 group-hover:text-slate-500",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true"},[e("path",{d:"M10 6a2 2 0 110-4 2 2 0 010 4zM10 12a2 2 0 110-4 2 2 0 010 4zM10 18a2 2 0 110-4 2 2 0 010 4z"})])],-1)])],8,Gr)):m("",!0),b.value===_.id?(t(),s("div",Hr,[e("div",Zr,[e("div",Jr,[e("div",{class:"block cursor-pointer px-4 py-2 text-sm text-slate-700 hover:bg-slate-100 hover:text-slate-900",role:"menuitem","data-testid":`flag-complete-${_.id}`,onClick:Q=>Dt(_.id,"Complete")}," Complete Flag ",8,Qr),e("div",{class:"block cursor-pointer px-4 py-2 text-sm text-slate-700 hover:bg-slate-100 hover:text-slate-900",role:"menuitem","data-testid":`flag-remove-${_.id}`,onClick:Q=>Dt(_.id,"Remove")}," Remove Flag ",8,Xr)])])])):m("",!0)],512)])]),e("div",Kr,c(_.n
1otes??"No notes."),1),rt(_.tree_id,_.type)?(t(),s("div",ed,[(t(!0),s(ae,null,oe(rt(_.tree_id,_.id),Q=>(t(),s("a",{key:Q.id,href:"#",class:"mr-2 py-1","data-testid":`flag-photo-${Q.id}`,onClick:D($e=>kt(Q.file),["prevent"])},[Q.type=="pdf"?(t(),s("span",sd,c(Q.original_name),1)):(t(),s("span",ld,"Photo #"+c(Q.id),1))],8,td))),128))])):m("",!0),e("div",ad,c(_.reported_by?.name)+", "+c($(Ce).dateTime(_.created_at,!0)),1)],2))),128))])])):m("",!0),g.value&&a.selFeature.get("planted")===1?(t(),s("div",nd,[e("div",od,[e("div",id,[y(xt,{color:"green",class:"mr-1"}),d[21]||(d[21]=q(" Tree Planted ",-1))]),e("div",rd,[q(c(de.value.species?.genus)+" ",1),e("span",dd,c(de.value.species?.species),1),de.value.species?.variety?(t(),s("span",ud,"'"+c(de.value.species?.variety)+"'",1)):m("",!0)]),e("div",cd,c(de.value.species?.common_name),1),e("div",vd," Planted by "+c(de.value.planted_by?.name??"Unknown")+" on "+c($(Ce).justDate(de.value.planted_date)),1)])])):m("",!0),g.value&&a.selFeature.get("approved")===0?(t(),s("div",pd,[e("div",md,[e("div",gd,[y(El,{color:"white",class:"mr-2 fill-white"}),d[22]||(d[22]=q(" This tree space has been declined. ",-1))]),d[23]||(d[23]=e("small",null,"You can re-assess below",-1))])])):m("",!0),g.value&&a.selFeature.get("approved")===1&&a.selFeature.get("planted")!==1?(t(),s("div",fd,[e("div",bd,[e("div",xd,[y(xt,{class:"mr-1 fill-white stroke-green-600"}),d[24]||(d[24]=q(" Approved Planting Space. ",-1))]),e("small",null,"Scheduled for "+c(a.selFeature.get("plantingYear")),1)])])):m("",!0),g.value&&a.selFeature.get("approved")===null&&a.selFeature.get("planted")!==1?(t(),s("div",hd,[...d[25]||(d[25]=[e("div",{class:"flex flex-col items-center justify-center py-2 text-lg"},[e("div",{class:"flex font-semibold"},"Space yet to be Assessed."),e("small",null,[q("Click the "),e("span",{class:"italic"},"Assess Space"),q(" button below")])],-1)])])):m("",!0),d[50]||(d[50]=e("hr",{class:"m-0"},null,-1)),g.value&&a.selFeature.get("removedTreeId")>0?(t(),me(Yo,{key:7,"close-panel":a.closePanel,"sel-feature":a.selFeature,"tree-source":a.treeSource,"tree-id":a.selectedTreeData.treeId},null,8,["close-panel","sel-feature","tree-source","tree-id"])):m("",!0),(t(!0),s(ae,null,oe(se.value,_=>(t(),me(As,{key:_.id,"crm-tree-info":_,"tree-id":C.selectedTreeData.treeId,onReloadCrms:d[4]||(d[4]=Q=>je(C.selectedTreeData.treeId,a.selFeature.get("lat"),a.selFeature.get("lng")))},null,8,["crm-tree-info","tree-id"]))),128)),y(Yl,{"work-order":ne.value,module:"planting","module-id":C.selectedTreeData?.treeId?.toString()||"",onSelected:Ge,onRemove:Jt},null,8,["work-order","module-id"]),g.value?(t(),s("div",wd,[e("div",yd,[e("div",_d,[e("span",kd,"Tree #"+c(C.selectedTreeData.treeId),1),e("div",$d,[e("span",{class:"cursor-pointer rounded-full bg-slate-50 px-3 py-2 text-sm font-semibold text-slate-600 shadow-sm hover:bg-orange-100","data-testid":"show-flag-tree-form",onClick:d[5]||(d[5]=_=>We())},[...d[26]||(d[26]=[e("svg",{class:"mr-1 inline-block h-3 w-3 fill-current",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20"},[e("path",{d:"M7.667 12H2v8H0V0h12l.333 2H20l-3 6 3 6H8l-.333-2z"})],-1),q(" Flag ",-1)])]),e("div",{ref_key:"menuElementRef",ref:P,class:"relative"},[e("button",{class:"cursor-pointer rounded-full bg-slate-50 p-2 text-sm font-semibold text-slate-600 shadow-sm hover:bg-slate-100","data-testid":"vacant-menu-button",type:"button",onClick:d[6]||(d[6]=D(()=>{console.log("Dots clicked"),X.value=!X.value},["stop"]))},[...d[27]||(d[27]=[e("svg",{class:"h-4 w-4",fill:"currentColor",viewBox:"0 0 20 20"},[e("path",{d:"M10 6a2 2 0 110-4 2 2 0 010 4zM10 12a2 2 0 110-4 2 2 0 010 4zM10 18a2 2 0 110-4 2 2 0 010 4z"})],-1)])]),ve(e("div",Id,[e("div",Sd,[e("button",{class:"block w-full px-4 py-2 text-left text-sm text-slate-700 hover:bg-slate-100 hover:text-slate-900",role:"menuitem","data-testid":"edit-vacant-attributes-button",type:"button",onClick:d[7]||(d[7]=_=>vt())}," Edit Planting Attributes ")])],512),[[Pt,X.value]])],512)])])]),a.selFeature.get("development_id")?(t(),s("div",Cd,[e("div",Fd,[d[28]||(d[28]=e("p",{class:"text-xs uppercase text-slate-400"},"Development",-1)),e("p",Pd,c(a.selFeature.get("devName")),1)]),e("div",Td,[d[29]||(d[29]=e("p",{class:"text-xs uppercase text-slate-400"},"Stage",-1)),e("p",Ld,c(a.selFeature.get("development_stage")),1)])])):m("",!0),e("div",Md,[e("div",Ad,[d[30]||(d[30]=e("p",{class:"text-xs uppercase text-slate-400"},"Address",-1)),e("p",Nd,[y(jl,{class:"text-sm text-slate-200","initial-value":de.value.address,placeholder:"Enter new address","handle-save":_=>ke("address",_)},null,8,["initial-value","handle-save"])])])]),e("div",zd,[e("div",jd,[y(Ae,null,{label:O(()=>[...d[31]||(d[31]=[q("Planting Schedule",-1)])]),content:O(()=>[e("div",Ed,[e("span",Vd,c($(Ce).yearNull(a.selFeature.get("plantingYear"))),1),St(a.selFeature.get("plantingMonth"))?(t(),s("span",Dd,c(St(a.selFeature.get("plantingMonth"))),1)):m("",!0)])]),_:1})]),e("div",Od,[e("div",Rd,[y(Ae,null,{label:O(()=>[...d[32]||(d[32]=[q(" Asset ID",-1)])]),content:O(()=>[q(c($(Ce).checkNull(de.value.asset_id)),1)]),_:1})])])]),e("div",Bd,[e("div",Yd,[y(Ae,null,{label:O(()=>[...d[33]||(d[33]=[q("Preferred Species",-1)])]),content:O(()=>[e("div",Ud,[a.selFeature.get("genusName")?(t(),s("span",qd,c(a.selFeature.get("genusName")),1)):m("",!0),a.selFeature.get("species")?(t(),s("span",Wd,c(a.selFeature.get("species")),1)):m("",!0),a.selFeature.get("variety")?(t(),s("span",Gd,"'"+c(a.selFeature.get("variety"))+"'",1)):m("",!0)]),e("div",Hd,"("+c(a.selFeature.get("commonName"))+")",1)]),_:1})])]),e("div",Zd,[e("div",Jd,[y(Ae,null,{label:O(()=>[...d[34]||(d[34]=[q("Pot Size",-1)])]),content:O(()=>[q(c($(Ce).checkNull(a.selFeature.get("potSize"))),1)]),_:1})]),e("div",Qd,[y(Ae,null,{label:O(()=>[...d[35]||(d[35]=[q("Space Size",-1)])]),content:O(()=>
1[q(c($(Ce).getSize(a.selFeature.get("sizeId"))),1)]),_:1})])]),e("div",Xd,[e("div",Kd,[y(Ae,null,{label:O(()=>[...d[36]||(d[36]=[q("Pavement Removal",-1)])]),content:O(()=>[q(c($(Ce).yesNo(a.selFeature.get("pavementId"))),1)]),_:1})]),e("div",eu,[y(Ae,null,{label:O(()=>[...d[37]||(d[37]=[q("Powerlines Overhead",-1)])]),content:O(()=>[q(c($(Ce).yesNo(a.selFeature.get("powerlinesId"))),1)]),_:1})])]),e("div",tu,[e("div",su,[y(Ae,null,{label:O(()=>[...d[38]||(d[38]=[q(" Underground Services",-1)])]),content:O(()=>[q(c($(Ce).yesNo(a.selFeature.get("underground"))),1)]),_:1})]),d[39]||(d[39]=e("div",{class:"w-1/2"},null,-1))]),e("div",lu,[e("div",au,[y(Ae,null,{label:O(()=>[...d[40]||(d[40]=[q(" Planting Reason",-1)])]),content:O(()=>[a.selFeature.get("plantingReason")?(t(),s("div",nu,[e("span",ou,c($(Ce).checkNull(a.selFeature.get("plantingReason"))),1)])):m("",!0)]),_:1})]),d[41]||(d[41]=e("div",{class:"w-1/2"},null,-1))]),a.selFeature.get("notes")?(t(),s("div",iu,[e("div",ru,[e("div",du,[y(Ae,null,{label:O(()=>[...d[42]||(d[42]=[q(" Notes",-1)])]),content:O(()=>[e("div",uu,[e("span",cu,c(a.selFeature.get("notes")),1)])]),_:1})]),de.value.park_tree?(t(),s("span",vu," Park Tree ")):m("",!0)])])):m("",!0),e("div",pu,[d[47]||(d[47]=e("hr",{class:"mb-1 mt-0"},null,-1)),e("div",mu,[e("div",gu,[$(L).permissions.mf_edit_tags?(t(),s("span",{key:0,class:"mr-1 mt-1 inline-flex cursor-pointer items-center rounded-lg bg-slate-400 px-2 py-1 text-sm font-normal text-slate-100 hover:bg-slate-500","data-testid":"show-tags-button",onClick:d[8]||(d[8]=_=>Ke())},c(W.value?"Close":"+Tag"),1)):m("",!0),(t(!0),s(ae,null,oe(S.value,_=>(t(),s("span",{key:_.id,class:"mr-1 mt-1 inline-flex items-center rounded-lg bg-blue-600 py-1 pl-2 pr-1 text-sm font-medium text-blue-100"},[q(c(_.name)+" ",1),$(L).permissions.mf_edit_tags?(t(),s("button",{key:0,type:"button",class:"ml-1 inline-flex h-4 w-4 flex-shrink-0 items-center justify-center rounded-full text-white hover:bg-blue-500 hover:text-blue-100 focus:bg-blue-500 focus:text-white focus:outline-none","data-testid":`remove-tag-${_.id}`,onClick:Q=>$t(_.id)},[...d[43]||(d[43]=[e("span",{class:"sr-only"},"Remove Tag",-1),e("svg",{class:"h-2 w-2",stroke:"currentColor",fill:"none",viewBox:"0 0 8 8"},[e("path",{"stroke-linecap":"round","stroke-width":"1.5",d:"M1 1l6 6m0-6L1 7"})],-1)])],8,fu)):m("",!0)]))),128))])]),y(fe,{name:"slide-down"},{default:O(()=>[W.value?(t(),s("div",bu,[e("div",xu,[e("div",hu,[ve(e("input",{id:"tags","onUpdate:modelValue":d[9]||(d[9]=_=>h.value=_),type:"text",name:"tags",class:"block w-full rounded-none rounded-l border border-slate-300 py-2 pl-2 text-sm outline-none focus:border-none",placeholder:"Search or Add Tag","data-testid":"tag-search-input"},null,512),[[wt,h.value]])]),e("button",{class:"text-sn relative -ml-px inline-flex items-center space-x-2 rounded-r bg-slate-200 px-4 py-2 font-medium text-slate-700 hover:bg-slate-100","data-testid":"add-new-tag-button",onClick:d[10]||(d[10]=_=>Et())},[...d[44]||(d[44]=[e("span",null,"Add",-1)])])]),U.value?(t(),s("div",wu,c(U.value),1)):m("",!0),z.value&&h.value.length>0?(t(),s("div",yu,[d[45]||(d[45]=e("div",{class:"mb-1 font-semibold italic text-slate-600"},"Search results:",-1)),(t(!0),s(ae,null,oe(z.value,_=>(t(),s("span",{key:_.id,class:"mb-1 mr-1 inline-flex cursor-pointer items-center rounded-lg bg-slate-400 px-2 py-1 text-sm font-medium text-slate-100 hover:bg-slate-500","data-testid":`search-tag-${_.id}`,onClick:Q=>Vt(_.id,_.name)},c(_.name),9,_u))),128))])):m("",!0),i.value&&h.value.length<1?(t(),s("div",ku,[d[46]||(d[46]=e("div",{class:"mb-1 font-semibold italic text-slate-600"},"Recently used tags:",-1)),(t(!0),s(ae,null,oe(i.value,_=>(t(),s("span",{key:_.id,class:"mb-1 mr-1 inline-flex cursor-pointer items-center rounded-lg bg-slate-400 px-2 py-1 text-sm font-medium text-slate-100 hover:bg-slate-500","data-testid":`recent-tag-${_.id}`,onClick:Q=>Vt(_.id,_.name)},c(_.name),9,$u))),128))])):m("",!0)])):m("",!0)]),_:1})])])):m("",!0),g.value&&B.value.length?(t(),me(Mt,{key:9,photos:B.value,"tree-id":C.selectedTreeData.treeId,module:"info","show-all":!0,"add-images":()=>{}},null,8,["photos","tree-id"])):m("",!0),g.value&&$(L)?.permissions?.invoice_planting?(t(),me(js,{key:10,"type-id":1,"task-id":C.selectedTreeData.treeId,"show-costs":$(L)?.permissions?.invoice_show_cost},null,8,["task-id","show-costs"])):m("",!0),g.value&&a.selFeature.get("planted")===0&&($(L).permissions.plant_assess||$(L).permissions.plant_plant_tree||w.value)?(t(),s("div",Iu,[y(Ae,null,{label:O(()=>[...d[48]||(d[48]=[q("Actions",-1)])]),content:O(()=>[e("div",Su,[$(L).permissions.plant_assess?(t(),s("button",{key:0,class:"cursor-pointer rounded bg-blue-300 px-4 py-2 font-bold text-blue-900 hover:bg-blue-400","data-testid":"assess-space-button",onClick:d[11]||(d[11]=D(_=>Zt(),["prevent"]))}," Assess Space ")):m("",!0),$(L).permissions.plant_plant_tree||w.value?(t(),s("button",{key:1,class:"ml-2 cursor-pointer rounded bg-green-300 px-4 py-2 font-bold text-green-900 hover:bg-green-400","data-testid":"plant-tree-button",onClick:d[12]||(d[12]=D(_=>dt(),["prevent"]))}," Plant this tree! ")):m("",!0)])]),_:1})])):m("",!0),g.value&&a.selFeature.get("planted")===0&&$(L).permissions.plant_remove?(t(),s("div",Cu,[y(Ae,null,{label:O(()=>[...d[49]||(d[49]=[q("Admin Actions",-1)])]),content:O(()=>[e("div",Fu,[e("button",{class:"rounded bg-red-200 px-4 py-2 font-bold text-red-800 hover:bg-red-300","data-testid":"remove-space-button",onClick:d[13]||(d[13]=D(_=>ut(),["prevent"]))}," Remove Space ")])]),_:1})])):m("",!0),e("div",Pu,[de.value?.vacant?.creator?(t(),s("p",Tu," Created by "+c(de.value.vacant.creator.name)+", "+c($(Ce).dateTime(a.selectedTreeData.createdAt)),1)):(t(),s("p",Lu,"Created on "+c($(Ce).dateTime(a.selectedTreeData.createdAt)),1)),e("p",Mu," Last Modified by "+c(a.selectedTreeData.userName)+", "+c($(Ce).dateTime(a.selectedTreeData.updatedAt)),1)])])):m("",!0),y(fe,{name:"slide-form"},{default:O(()=>[M.value?(t(),s("div",Au,[y(Fo,{"sel-feature":a.selFeature,"nearby-trees":k.value,"recent-trees":te.value,"show-default":De,"save-success":Oe,"this-tree":de.value,"work-order-id":C.workOrderId}
1,null,8,["sel-feature","nearby-trees","recent-trees","this-tree","work-order-id"])])):m("",!0)]),_:1}),y(fe,{name:"slide-form"},{default:O(()=>[Z.value?(t(),s("div",Nu,[y(_r,{tid:C.selectedTreeData.treeId,species:$(T),"sel-feature":a.selFeature,"show-default":De,"save-success":Oe,crms:se.value,"work-order-id":C.workOrderId},null,8,["tid","species","sel-feature","crms","work-order-id"])])):m("",!0)]),_:1}),y(fe,{name:"slide-form"},{default:O(()=>[x.value?(t(),s("div",zu,[y(Bl,{access:a.access,"selected-tree":{id:C.selectedTreeData.treeId},"show-default":De,"remove-map-tree":null,"remove-water-map-tree":null,permissions:$(L).permissions,"show-review":!1,"show-missing-option":!1,"show-watering-option":!1,"show-plant-tree-option":!0,"client-id":$(L)?.id,"flag-type":"planting",onEnableConfirmationSafeguard:d[14]||(d[14]=_=>xe("enableConfirmationSafeguard",_))},null,8,["access","selected-tree","permissions","client-id"])])):m("",!0)]),_:1}),y(fe,{name:"slide-form"},{default:O(()=>[ee.value?(t(),s("div",ju,[y(za,{"sel-feature":a.selFeature,"show-default":De,"save-success":Oe,"this-tree":de.value},null,8,["sel-feature","this-tree"])])):m("",!0)]),_:1})]))}},Vu={key:0,class:"fixed inset-0 z-50 flex items-center justify-center bg-black bg-opacity-40"},Du={class:"relative flex w-full max-w-lg flex-col rounded-lg bg-white shadow-xl",style:{"max-height":"90vh"}},Ou={class:"border-b p-6 pb-2 pt-3 shadow"},Ru={class:"text-sm text-slate-600"},Bu={class:"flex-1 overflow-y-auto px-6 pb-2 pt-2",style:{"min-height":"0"}},Yu={class:"mb-4 flex items-start"},Uu={class:"flex w-full flex-col"},qu={for:"bulk-status",class:"mb-1 flex items-center font-semibold"},Wu={class:"mt-1 flex gap-0"},Gu=["onClick"],Hu={class:"mb-4 flex items-start"},Zu={class:"flex w-full flex-col"},Ju={for:"bulk-notes",class:"mb-1 flex items-center font-semibold"},Qu={class:"mb-4 flex items-start"},Xu={class:"flex w-full flex-col"},Ku={for:"bulk-plantingYear",class:"mb-1 flex items-center font-semibold"},ec={class:"mt-1 flex gap-0"},tc=["onClick"],sc={key:0,class:"mb-4 flex items-start"},lc={class:"flex w-full flex-col"},ac={for:"bulk-plantingMonth",class:"mb-1 flex items-center font-semibold"},nc={class:"mt-1 grid grid-cols-4 gap-1"},oc=["onClick"],ic={class:"mb-4 flex items-start"},rc={class:"flex w-full flex-col"},dc={for:"bulk-preferredSpecies",class:"mb-1 flex items-center font-semibold"},uc={class:"px-2"},cc={class:"flex items-center text-sm"},vc={key:0,src:_t,class:"mr-2 h-5 w-5"},pc={class:"mr-1 font-semibold"},mc={class:"mr-1 italic"},gc={key:1,class:"ml-1"},fc={key:0,class:"text-sm"},bc={class:"flex items-center text-sm"},xc={key:0,src:_t,class:"mr-1 h-5 w-5"},hc={class:"mr-1 font-semibold"},wc={class:"mr-1 italic"},yc={key:1,class:"mr-1"},_c={class:"mb-4 flex items-start"},kc={class:"flex w-full flex-col"},$c={for:"bulk-plantingSpaceSize",class:"mb-1 flex items-center font-semibold"},Ic={class:"mt-1 flex gap-0"},Sc=["onClick"],Cc={class:"mb-4 flex items-start"},Fc={class:"flex w-full flex-col"},Pc={for:"bulk-overheadPowerlines",class:"mb-1 flex items-center font-semibold"},Tc={class:"mt-1 flex gap-0"},Lc=["onClick"],Mc={class:"mb-4 flex items-start"},Ac={class:"flex w-full flex-col"},Nc={for:"bulk-undergroundServices",class:"mb-1 flex items-center font-semibold"},zc={class:"mt-1 flex gap-0"},jc=["onClick"],Ec={class:"mb-4 flex items-start"},Vc={class:"flex w-full flex-col"},Dc={for:"bulk-pavementRemoval",class:"mb-1 flex items-center font-semibold"},Oc={class:"mt-1 flex gap-0"},Rc=["onClick"],Bc={class:"mb-4 flex items-start"},Yc={class:"flex w-full flex-col"},Uc={for:"bulk-locatedInPark",class:"mb-1 flex items-center font-semibold"},qc={class:"mt-1 flex gap-0"},Wc=["onClick"],Gc={class:"mb-4 flex items-start"},Hc={class:"flex w-full flex-col"},Zc={for:"bulk-potSize",class:"mb-1 flex items-center font-semibold"},Jc={class:"mb-4 flex items-start"},Qc={class:"flex w-full flex-col"},Xc={for:"bulk-tags",class:"mb-1 flex items-center font-semibold"},Kc={class:"mb-2 flex gap-0"},ev={class:"sticky bottom-0 left-0 right-0 z-10 border-t bg-white p-6 pb-2 pt-2"},tv={class:"flex items-center justify-end gap-2"},sv={key:0,class:"mr-auto text-sm font-semibold text-slate-600"},lv={key:1,class:"mr-auto text-sm font-semibold text-red-600"},av=["disabled"],nv=yt({__name:"BulkUpdate",props:_l({selectedFeatures:{},updateCallback:{type:Function}},{showModal:{type:Boolean},showModalModifiers:{}}),emits:["update:showModal"],setup(a){const v=Ue(),{species:u,attributes:C,attachments:J}=Ye(v),T=yl(a,"showModal"),L=o(!1),N=o(""),g=o({status:!1,notes:!1,plantingYear:!1,plantingMonth:!1,preferredSpecies:!1,plantingSpaceSize:!1,overheadPowerlines:!1,undergroundServices:!1,pavementRemoval:!1,locatedInPark:!1,potSize:!1,tags:!1}),I={status:"",notes:"",plantingYear:0,plantingMonth:0,preferredSpecies:"",preferredSpeciesCommonName:"",preferredGenus:"",plantingSpaceSize:0,overheadPowerlines:0,undergroundServices:0,pavementRemoval:0,locatedInPark:0,potSize:"",tags:[],tagMode:"add"},M=o({...I}),x=()=>{const h=["status","notes","plantingYear","plantingMonth","preferredSpecies","plantingSpaceSize","overheadPowerlines","undergroundServices","pavementRemoval","locatedInPark","potSize"],i={selectedFeatures:a.selectedFeatures.map(z=>z.get("treeId"))};for(const z of h)g.value[z]&&(i[z]=M.value[z]);g.value.tags&&M.value.tags.length>0&&(i.tags=M.value.tags,i.tagMode=M.value.tagMode),L.value=!0,N.value="",re.post("/api/tree/vacant/bul
1k-update",i).then(()=>{a.updateCallback(),T.value=!1,ee()}).catch(()=>{N.value="Update failed. Please try again."}).finally(()=>{L.value=!1})};function ee(){M.value={...I},Object.keys(g.value).forEach(h=>{g.value[h]=!1}),N.value=""}function X(){T.value=!1,ee()}const B=[{value:"unassessed",label:"Unassessed"},{value:"approved",label:"Approved"},{value:"denied",label:"Denied"}],H=[{value:1,label:"Small"},{value:2,label:"Medium"},{value:3,label:"Large"}],Z=[{value:1,label:"Yes"},{value:2,label:"No"}],K=new Date().getFullYear(),k=we(()=>Array.from({length:6},(h,i)=>K+i)),te=we(()=>bt.months().map((h,i)=>({id:i+1,name:h}))),W=h=>C.value.find(i=>i.id===h)?.settings,U=we(()=>{const h=J.value?.tags??[];return M.value.tagMode==="add"?h.filter(i=>i.active):h});function S(h,i){M.value[h]!==i?(M.value[h]=i,g.value[h]=!0):(M.value[h]=I[h],g.value[h]=!1)}return ze(()=>({...M.value}),h=>{Object.keys(h).forEach(i=>{i==="tags"||i==="tagMode"||(h[i]&&!g.value[i]&&(g.value[i]=!0),!g.value[i]&&h[i]&&(M.value[i]=I[i]))})},{deep:!0}),ze(()=>M.value.tagMode,()=>{M.value.tags=[]}),ze(()=>M.value.tags,h=>{h.length>0&&!g.value.tags&&(g.value.tags=!0),g.value.tags&&h.length===0&&(g.value.tags=!1)}),ze(()=>g.value.plantingYear,h=>{h||(M.value.plantingMonth=0,g.value.plantingMonth=!1)}),(h,i)=>{const z=ht("v-select");return t(),me(fe,{name:"slide-fade"},{default:O(()=>[T.value?(t(),s("div",Vu,[e("div",Du,[e("div",Ou,[i[18]||(i[18]=e("h2",{class:"text-lg font-bold text-slate-900"},"Bulk Update Trees",-1)),e("div",Ru," Bulk update the "+c(a.selectedFeatures.length)+" selected trees. ",1),e("button",{class:"absolute right-2 top-2 text-2xl text-slate-400 hover:text-slate-600",onClick:X}," Ã ")]),e("div",Bu,[e("form",{id:"bulkUpdateForm",onSubmit:D(x,["prevent"])},[e("div",Yu,[e("div",Uu,[e("label",qu,[ve(e("input",{id:"bulk-status","onUpdate:modelValue":i[0]||(i[0]=n=>g.value.status=n),type:"checkbox",class:"bulk-checkbox mr-2"},null,512),[[Le,g.value.status]]),i[19]||(i[19]=q(" Planting Status ",-1))]),e("div",Wu,[(t(),s(ae,null,oe(B,(n,w)=>e("button",{key:n.value,type:"button",class:Y(["text-md border px-3 py-2 font-medium focus:outline-none",[M.value.status===n.value?"border-blue-600 bg-blue-600 text-white":"border-slate-300 bg-white text-slate-700 hover:bg-blue-50",w===0?"rounded-l-md rounded-tl-md":"",w===B.length-1?"rounded-r-md rounded-tr-md":"",w!==0&&w!==B.length-1?"border-l-0":""]]),onClick:F=>S("status",n.value)},c(n.label),11,Gu)),64))])])]),i[31]||(i[31]=e("hr",{class:"my-2"},null,-1)),e("div",Hu,[e("div",Zu,[e("label",Ju,[ve(e("input",{id:"bulk-notes","onUpdate:modelValue":i[1]||(i[1]=n=>g.value.notes=n),type:"checkbox",class:"bulk-checkbox mr-2"},null,512),[[Le,g.value.notes]]),i[20]||(i[20]=q(" Notes ",-1))]),ve(e("textarea",{"onUpdate:modelValue":i[2]||(i[2]=n=>M.value.notes=n),class:"w-full rounded border px-2 py-1",rows:"2"},null,512),[[wt,M.value.notes]])])]),i[32]||(i[32]=e("hr",{class:"my-2"},null,-1)),e("div",Qu,[e("div",Xu,[e("label",Ku,[ve(e("input",{id:"bulk-plantingYear","onUpdate:modelValue":i[3]||(i[3]=n=>g.value.plantingYear=n),type:"checkbox",class:"bulk-checkbox mr-2"},null,512),[[Le,g.value.plantingYear]]),i[21]||(i[21]=q(" Planting Year ",-1))]),e("div",ec,[(t(!0),s(ae,null,oe(k.value,(n,w)=>(t(),s("button",{key:n,type:"button",class:Y(["text-md border px-3 py-2 font-medium focus:outline-none",[M.value.plantingYear===n?"border-blue-600 bg-blue-600 text-white":"border-slate-300 bg-white text-slate-700 hover:bg-blue-50",w===0?"rounded-l-md rounded-tl-md":"",w===k.value.length-1?"rounded-r-md rounded-tr-md":"",w!==0&&w!==k.value.length-1?"border-l-0":""]]),onClick:F=>S("plantingYear",n)},c(n),11,tc))),128))])])]),i[33]||(i[33]=e("hr",{class:"my-2"},null,-1)),g.value.plantingYear&&M.value.plantingYear?(t(),s("div",sc,[e("div",lc,[e("label",ac,[ve(e("input",{id:"bulk-plantingMonth","onUpdate:modelValue":i[4]||(i[4]=n=>g.value.plantingMonth=n),type:"checkbox",class:"bulk-checkbox mr-2"},null,512),[[Le,g.value.plantingMonth]]),i[22]||(i[22]=q(" Planting Month ",-1))]),e("div",nc,[(t(!0),s(ae,null,oe(te.value,n=>(t(),s("button",{key:n.id,type:"button",class:Y(["border px-2 py-2 text-sm font-medium focus:outline-none",[M.value.plantingMonth===n.id?"border-blue-600 bg-blue-600 text-white":"border-slate-300 bg-white text-slate-700 hover:bg-blue-50"]]),onClick:w=>S("plantingMonth",n.id)},c(n.name.substring(0,3)),11,oc))),128))])])])):m("",!0),e("div",ic,[e("div",rc,[e("label",dc,[ve(e("input",{id:"bulk-preferredSpecies","onUpdate:modelValue":i[5]||(i[5]=n=>g.value.preferredSpecies=n),type:"checkbox",class:"bulk-checkbox mr-2"},null,512),[[Le,g.value.preferredSpecies]]),i[23]||(i[23]=q(" Preferred Species ",-1))]),y(z,{modelValue:M.value.preferredSpecies,"onUpdate:modelValue":i[6]||(i[6]=n=>M.value.preferredSpecies=n),class:"style-chooser",options:$(u),label:"gname",filter:$(ds),reduce:n=>n.id,searchable:!0},{"selected-option":O(n=>[e("div",uc,[e("div",cc,[n.powerline_friendly>
10?(t(),s("img",vc)):m("",!0),e("span",pc,c(n.gname),1),e("span",mc,c(n.species),1),n.variety?(t(),s("span",gc,c(n.variety),1)):m("",!0)]),n.cname?(t(),s("div",fc,c(n.cname),1)):m("",!0)])]),option:O(n=>[e("div",bc,[n.powerline_friendly>0?(t(),s("img",xc)):m("",!0),e("span",hc,c(n.gname),1),e("span",wc,c(n.species),1),n.variety?(t(),s("span",yc,c(n.variety),1)):m("",!0),q(" ("+c(n.cname)+") ",1)])]),_:1},8,["modelValue","options","filter","reduce"])])]),i[34]||(i[34]=e("hr",{class:"my-2"},null,-1)),e("div",_c,[e("div",kc,[e("label",$c,[ve(e("input",{id:"bulk-plantingSpaceSize","onUpdate:modelValue":i[7]||(i[7]=n=>g.value.plantingSpaceSize=n),type:"checkbox",class:"bulk-checkbox mr-2"},null,512),[[Le,g.value.plantingSpaceSize]]),i[24]||(i[24]=q(" Planting Space Size ",-1))]),e("div",Ic,[(t(),s(ae,null,oe(H,(n,w)=>e("button",{key:n.value,type:"button",class:Y(["text-md border px-3 py-2 font-medium focus:outline-none",[M.value.plantingSpaceSize===n.value?"border-blue-600 bg-blue-600 text-white":"border-slate-300 bg-white text-slate-700 hover:bg-blue-50",w===0?"rounded-l-md rounded-tl-md":"",w===H.length-1?"rounded-r-md rounded-tr-md":"",w!==0&&w!==H.length-1?"border-l-0":""]]),onClick:F=>S("plantingSpaceSize",n.value)},c(n.label),11,Sc)),64))])])]),i[35]||(i[35]=e("hr",{class:"my-2"},null,-1)),e("div",Cc,[e("div",Fc,[e("label",Pc,[ve(e("input",{id:"bulk-overheadPowerlines","onUpdate:modelValue":i[8]||(i[8]=n=>g.value.overheadPowerlines=n),type:"checkbox",class:"bulk-checkbox mr-2"},null,512),[[Le,g.value.overheadPowerlines]]),i[25]||(i[25]=q(" Overhead Powerlines ",-1))]),e("div",Tc,[(t(),s(ae,null,oe(Z,(n,w)=>e("button",{key:n.value,type:"button",class:Y(["text-md border px-3 py-2 font-medium focus:outline-none",[M.value.overheadPowerlines===n.value?"border-blue-600 bg-blue-600 text-white":"border-slate-300 bg-white text-slate-700 hover:bg-blue-50",w===0?"rounded-l-md rounded-tl-md":"",w===Z.length-1?"rounded-r-md rounded-tr-md":"",w!==0&&w!==Z.length-1?"border-l-0":""]]),onClick:F=>S("overheadPowerlines",n.value)},c(n.label),11,Lc)),64))])])]),i[36]||(i[36]=e("hr",{class:"my-2"},null,-1)),e("div",Mc,[e("div",Ac,[e("label",Nc,[ve(e("input",{id:"bulk-undergroundServices","onUpdate:modelValue":i[9]||(i[9]=n=>g.value.undergroundServices=n),type:"checkbox",class:"bulk-checkbox mr-2"},null,512),[[Le,g.value.undergroundServices]]),i[26]||(i[26]=q(" Underground Services ",-1))]),e("div",zc,[(t(),s(ae,null,oe(Z,(n,w)=>e("button",{key:n.value,type:"button",class:Y(["text-md border px-3 py-2 font-medium focus:outline-none",[M.value.undergroundServices===n.value?"border-blue-600 bg-blue-600 text-white":"border-slate-300 bg-white text-slate-700 hover:bg-blue-50",w===0?"rounded-l-md rounded-tl-md":"",w===Z.length-1?"rounded-r-md rounded-tr-md":"",w!==0&&w!==Z.length-1?"border-l-0":""]]),onClick:F=>S("undergroundServices",n.value)},c(n.label),11,jc)),64))])])]),i[37]||(i[37]=e("hr",{class:"my-2"},null,-1)),e("div",Ec,[e("div",Vc,[e("label",Dc,[ve(e("input",{id:"bulk-pavementRemoval","onUpdate:modelValue":i[10]||(i[10]=n=>g.value.pavementRemoval=n),type:"checkbox",class:"bulk-checkbox mr-2"},null,512),[[Le,g.value.pavementRemoval]]),i[27]||(i[27]=q(" Pavement Removal Required ",-1))]),e("div",Oc,[(t(),s(ae,null,oe(Z,(n,w)=>e("button",{key:n.value,type:"button",class:Y(["text-md border px-3 py-2 font-medium focus:outline-none",[M.value.pavementRemoval===n.value?"border-blue-600 bg-blue-600 text-white":"border-slate-300 bg-white text-slate-700 hover:bg-blue-50",w===0?"rounded-l-md rounded-tl-md":"",w===Z.length-1?"rounded-r-md rounded-tr-md":"",w!==0&&w!==Z.length-1?"border-l-0":""]]),onClick:F=>S("pavementRemoval",n.value)},c(n.label),11,Rc)),64))])])]),i[38]||(i[38]=e("hr",{class:"my-2"},null,-1)),e("div",Bc,[e("div",Yc,[e("label",Uc,[ve(e("input",{id:"bulk-locatedInPark","onUpdate:modelValue":i[11]||(i[11]=n=>g.value.locatedInPark=n),type:"checkbox",class:"bulk-checkbox mr-2"},null,512),[[Le,g.value.locatedInPark]]),i[28]||(i[28]=q(" Located in a Park ",-1))]),e("div",qc,[(t(),s(ae,null,oe(Z,(n,w)=>e("button",{key:n.value,type:"button",class:Y(["text-md border px-3 py-2 font-medium focus:outline-none",[M.value.locatedInPark===n.value?"border-blue-600 bg-blue-600 text-white":"border-slate-300 bg-white text-slate-700 hover:bg-blue-50",w===0?"rounded-l-md rounded-tl-md":"",w===Z.length-1?"rounded-r-md rounded-tr-md":"",w!==0&&w!==Z.length-1?"border-l-0":""]]),onClick:F=>S("locatedInPark",n.value)},c(n.label),11,Wc)),64))])])]),i[39]||(i[39]=e("hr",{class:"my-2"},null,-1)),e("div",Gc,[e("div",Hc,[e("label",Zc,[ve(e("input",{id:"bulk-potSize","onUpdate:modelValue":i[12]||(i[12]=n=>g.value.potSize=n),type:"checkbox",class:"bulk-checkbox mr-2"},null,512),[[Le,g.value.potSize]]),i[29]||(i[29]=q(" Pot Size ",-1))]),y(z,{modelValue:M.value.potSize,"onUpdate:modelValue":i[13]||(i[13]=n=>M.value.potSize=n),class:"style-chooser",options:W(13),label:"name",reduce:n=>n.order},null,8,["modelValue","options","reduce"])])]),i[40]||(i[40]=e("hr",{class:"my-2"},null,-1)),e("div",Jc,[e("div",Qc,[e("label",Xc,[ve(e("input",{id:"bulk-tags","onUpdate:modelValue":i[14]||(i[14]=n=>g.value.tags=n),type:"checkbox",class:"bulk-checkbox mr-2"},null,512),[[Le,g.value.tags]]),i[30]||(i[30]=q(" Tags ",-1))]),e("div",Kc,[e("button",{type:"button",class:Y(["text-md rounded-l-md border px-3 py-2 font-medium focus:outline-none",M.value.tagMode==="add"?"border-blue-600 bg-blue-600 text-white":"border-slate-300 bg-white text-slate-700 hover:bg-blue-50"]),"data-testid":"tag-mode-add",onClick:i[15]||(i[15]=n=>M.value.tagMode="add")}," Add Tags ",2),e("button",{type:"button",class:Y(["text-md rounded-r-md border border-l-0 px-3 py-2 font-medium focus:outline-none",M.value.tagMode==="remove"?"border-red-600 bg-red-600 text-white":"border-slate-300 bg-white text-slate-700 hover:bg-red-50"]),"data-testid":"tag-mode-remove",onClick:i[16]||(i[16]=n=>M.value.tagMode="remove")}," Remove Tags ",2)]),y(z,{modelValue:M.value.tags,"onUpdate:modelValue":i[17]||(i[17]=n=>M.value.tags=n),class:"style-chooser",options:U.value,label:"name",reduce:n=>n.id,multiple:!0,"data-testid":"tags-select"},null,8,["modelValue","options","reduce"])])]),i[41]||(i[41]=e("hr",{class:"my-2"},null,-1))],32)]),e("div",ev,[e("div",tv,[Object.values(g.value).filter(
1Boolean).length>0?(t(),s("span",sv,c(Object.values(g.value).filter(Boolean).length)+" field"+c(Object.values(g.value).filter(Boolean).length===1?"":"s")+" selected for bulk update ",1)):m("",!0),N.value?(t(),s("span",lv,c(N.value),1)):m("",!0),e("button",{type:"button",class:"rounded bg-slate-200 px-4 py-2 text-slate-700 hover:bg-slate-300",onClick:X}," Cancel "),e("button",{type:"submit",form:"bulkUpdateForm",class:"rounded bg-blue-600 px-4 py-2 text-white hover:bg-blue-700 disabled:cursor-not-allowed disabled:opacity-50",disabled:Object.values(g.value).filter(Boolean).length===0||L.value},c(L.value?"Updating...":"Update"),9,av)])])])])):m("",!0)]),_:1})}}}),ov={};function iv(a,v){return v[0]||(v[0]=Ts('<div class="mx-4 items-center py-1"><img src="'+Kl+'" class="inline-block h-5"><p class="ml-3 inline-block align-middle text-slate-600">Unassessed Spaces</p></div><div class="mx-4 items-center py-1"><img src="'+Jl+'" class="inline-block h-5"><p class="ml-3 inline-block align-middle text-slate-600">Spaces Not Available</p></div><div class="mx-4 items-center py-1"><img src="'+ea+'" class="inline-block h-5"><p class="ml-3 inline-block align-middle text-slate-600">Current Year Approved Spaces</p></div><div class="mx-4 items-center py-1"><img src="'+sa+'" class="inline-block h-5"><p class="ml-3 inline-block align-middle text-slate-600">Future Approved Spaces</p></div><div class="mx-4 items-center py-1"><img src="'+la+'" class="inline-block h-5"><p class="ml-3 inline-block align-middle text-slate-600">Planted This Year</p></div>',5))}const rv=us(ov,[["render",iv]]),dv={class:"mx-4 items-center pb-1 pt-4"},uv={class:"mx-4 items-center pb-1 pt-2"},cv={key:0,class:"mx-4 items-center pb-1 pt-2"},vv={__name:"PlantingLayerToggles",props:["plantingLayers","togglePlantingLayers","t1WorkOrderMode","toggleT1Layers","showT1Layer"],setup(a){return(v,u)=>(t(),s(ae,null,[e("div",dv,[a.plantingLayers.includes(1)?(t(),s("div",{key:1,class:"relative mr-2 inline-block w-10 select-none align-middle transition duration-200 ease-in",onClick:u[1]||(u[1]=C=>a.togglePlantingLayers(1))},[...u[7]||(u[7]=[e("input",{id:"togglePlantings1",type:"checkbox",name:"togglePlantings1",class:"toggle-checkbox absolute right-0 block h-6 w-6 cursor-pointer appearance-none rounded-full border-4 border-green-400 bg-white"},null,-1),e("label",{for:"togglePlantings1",class:"toggle-label block h-6 cursor-pointer overflow-hidden rounded-full bg-green-400"},null,-1)])])):(t(),s("div",{key:0,class:"relative mr-2 inline-block w-10 select-none align-middle transition duration-200 ease-in",onClick:u[0]||(u[0]=C=>a.togglePlantingLayers(1))},[...u[6]||(u[6]=[e("input",{id:"togglePlantings1",type:"checkbox",name:"togglePlantings1",class:"toggle-checkbox absolute block h-6 w-6 cursor-pointer appearance-none rounded-full border-4 border-slate-200 bg-white"},null,-1),e("label",{for:"togglePlantings1",class:"toggle-label block h-6 cursor-pointer overflow-hidden rounded-full bg-slate-200"},null,-1)])])),u[8]||(u[8]=e("label",{for:"togglePlantings1",class:"text-slate-600 hover:text-blue-600 hover:no-underline"},"Trees to be Removed",-1))]),e("div",uv,[a.plantingLayers.includes(2)?(t(),s("div",{key:1,class:"relative mr-2 inline-block w-10 select-none align-middle transition duration-200 ease-in",onClick:u[3]||(u[3]=C=>a.togglePlantingLayers(2))},[...u[10]||(u[10]=[e("input",{id:"togglePlantings2",type:"checkbox",name:"togglePlantings2",class:"toggle-checkbox absolute right-0 block h-6 w-6 cursor-pointer appearance-none rounded-full border-4 border-green-400 bg-white"},null,-1),e("label",{for:"togglePlantings2",class:"toggle-label block h-6 cursor-pointer overflow-hidden rounded-full bg-green-400"},null,-1)])])):(t(),s("div",{key:0,class:"relative mr-2 inline-block w-10 select-none align-middle transition duration-200 ease-in",onClick:u[2]||(u[2]=C=>a.togglePlantingLayers(2))},[...u[9]||(u[9]=[e("input",{id:"togglePlantings2",type:"checkbox",name:"togglePlantings2",class:"toggle-checkbox absolute block h-6 w-6 cursor-pointer appearance-none rounded-full border-4 border-slate-200 bg-white"},null,-1),e("label",{for:"togglePlantings2",class:"toggle-label block h-6 cursor-pointer overflow-hidden rounded-full bg-slate-200"},null,-1)])])),u[11]||(u[11]=e("label",{for:"togglePlantings2",class:"text-slate-600 hover:text-blue-600 hover:no-underline"},"Stumps to be Removed",-1))]),a.showT1Layer?(t(),s("div",cv,[a.t1WorkOrderMode?(t(),s("div",{key:1,class:"relative mr-2 inline-block w-10 select-none align-middle transition duration-200 ease-in",onClick:u[5]||(u[5]=C=>a.toggleT1Layers(!1))},[...u[13]||(u[13]=[e("input",{id:"toggleT1Layer",type:"checkbox",name:"toggleT1Layer",class:"toggle-checkbox absolute right-0 block h-6 w-6 cursor-pointer appearance-none rounded-full border-4 border-green-400 bg-white"},null,-1),e("label",{for:"toggleT1Layer",class:"toggle-label block h-6 cursor-pointer overflow-hidden rounded-full bg-green-400"},null,-1)])])):(t(),s("div",{key:0,class:"relative mr-2 inline-block w-10 select-none align-middle transition duration-200 ease-in",onClick:u[4]||(u[4]=C=>a.toggleT1Layers(!0))},[...u[12]||(u[12]=[e("input",{id:"toggleT1Layer",type:"checkbox",name:"toggleT1Layer",class:"toggle-checkbox absolute block h-6 w-6 cursor-pointer appearance-none rounded-full border-4 border-slate-200 bg-white"},null,-1),e("label",{for:"toggleT1Layer",class:"toggle-label block h-6 cursor-pointer overflow-hidden rounded-full bg-slate-200"},null,-1)])])),u[14]||(u[14]=e("label",{for:"toggleT1Layer",class:"text-slate-600 hover:text-blue-600 hover:no-underline"},"T1 Work Orders",-1))])):m("",!0)],64))}},pv={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"icon icon-tabler icons-tabler-outline icon-tabler-ban"};function mv(a,v){return t(),s("svg",pv,[...v[0]||(v[0]=[e("path",{stroke:"none",d:"M0 0h24v24H0z"},null,-1),e("path",{d:"M3 12a9 9 0 1 0 18 0 9 9 0 1 0-18 0M5.7 5.7l12.6 12.6"},null,-1)])])}const gv={render:mv},fv={__name:"BanIcon",props:{color:{type:String,default:"gray"}},setup(a){return(v,u)=>(t(),me($(gv),{class:Y(["h-5 w-5 cursor-pointer stroke-2",$(jt)(a.c
1olor)])},null,8,["class"]))}},bv={class:"flex justify-end py-2"},xv={class:"flex w-full items-center overflow-x-auto px-3 py-2"},hv=["onClick"],wv={class:"w-full pt-12 text-2xl text-orange-700"},yv={class:"flex w-full items-center overflow-x-auto"},_v={class:"ftree-table striped hovered main-first-cell w-full overflow-x-auto py-2"},kv={class:"thead"},$v={class:"flex px-2 py-2 font-semibold"},Iv={class:"tbody text-left text-slate-700"},Sv=["onClick"],Cv={class:"td w-1/4 items-center py-2 font-bold text-slate-600 lg:w-1/6"},Fv={class:"td w-1/2 items-center py-2 lg:w-4/6"},Pv={class:"mr-2 py-2 font-bold"},Tv={key:0,class:"ml-1 italic"},Lv={key:1,class:"ml-1"},Mv={class:"td w-1/2 items-center py-2 lg:w-1/6"},Av={__name:"PlantingListMap",props:{map:{},plantThisTree:{},hidePlanting:{}},setup(a){const v=a,u=o(new ot),C=o(null),J=o(parseInt(bt().format("YYYY"))),T=o(parseInt(bt().format("YYYY"))),L=o([]),N=o([]),g=o(null),I=o([]),M=o(null),x=o([]),ee=o(null),X=o(null),B=o("genus"),H=o("asc"),Z=o(0),K=o(null),k=()=>{v.map.removeLayer(C.value),v.hidePlanting()},te=z=>{L.value.includes(z)?L.value.splice(L.value.indexOf(z),1):L.value.push(z),u.value.changed()},W=z=>{T.value=z,S()},U=()=>{re.get("/api/tree/planting/list").then(z=>{N.value=z.data.trees,I.value=z.data.speciesTotals,M.value=z.data.suburbPlanting,g.value=N.value.length,ee.value=z.data.species}).catch(z=>{console.log(z),pe(z)}),S()},S=()=>{u.value.clear(),re.get("/api/tree/planting/quick-map/"+T.value).then(z=>{const n=z.data.trees,w={},F=P=>{const se="circle"+P;return w[se]||(w[se]=new nt({image:new At({radius:8,fill:new Ze({color:i()}),stroke:new Nt({color:"white",width:3})})})),w[se]},ie=(P,se)=>{const E=P.get("speciesId");return L.value.includes(E)?F(E):new nt};C.value=new gt({source:u.value,style:ie,properties:{selectable:!0}});const b=[];Object.keys(n).forEach(P=>{b[P]=new Tt(new Lt(ft([parseFloat(n[P].lng),parseFloat(n[P].lat)],"EPSG:3857"))),b[P].set("treeId",n[P].id),b[P].set("lat",n[P].lat),b[P].set("lng",n[P].lng),b[P].set("speciesId",n[P].species_id),b[P].set("planting_year",n[P].planting_year),b[P].set("plantingYear",n[P].planting_year),b[P].set("common_name",n[P].common_name),b[P].set("commonName",n[P].common_name),b[P].set("genus",n[P].genus),b[P].set("genusName",n[P].genus),b[P].set("species",n[P].species),b[P].set("variety",n[P].variety),b[P].set("notes",n[P].notes),b[P].set("planted",n[P].planted),b[P].set("approved",n[P].approved),b[P].set("assetId",n[P].asset_id),b[P].set("vacantId",n[P].vacantId),b[P].set("sizeId",n[P].size_id),b[P].set("pavementId",n[P].pavement_id),b[P].set("powerlinesId",n[P].powerlines_id),b[P].set("plantedDate",n[P].planted_date)}),u.value.addFeatures(b),v.map.addLayer(C.value);const R=new nt({image:new At({radius:8,fill:new Ze({color:"rgba(255, 255, 126, 0.8)"}),stroke:new Nt({color:"rgba(255, 255, 126, 0.5)",width:4})})});K.value=new Ls({layer:C.value,style:R}),v.map.addInteraction(K.value),K.value.on("select",P=>{const se=P.target.getFeatures().getArray();se.length===1&&(X.value=se[0],v.plantThisTree(X.value))})}).catch(z=>{console.log(z),pe(z)})},h=we(()=>bt().year()===T.value?(x.value=Fs.orderBy(I.value.filter(z=>z.planting_year<=T.value),[z=>parseInt(z[B.value],10)],H.value),Z.value=x.value.reduce((z,n)=>z+parseInt(n.total),0),x.value):(x.value=Fs.orderBy(I.value.filter(z=>z.planting_year===T.value),[z=>parseInt(z[B.value],10)],H.value),Z.value=x.value.reduce((z,n)=>z+parseInt(n.total),0),x.value)),i=()=>{const z=Math.round(16777215*Math.random()),n=z>>16,w=z>>8&255,F=z&255;return"rgb("+n+", "+w+", "+F+")"};return Je(()=>{U()}),(z,n)=>(t(),s("div",null,[e("div",bv,[e("button",{class:"group mr-0 flex w-full cursor-pointer flex-row items-center rounded-lg bg-slate-100 px-4 py-2 text-center font-semibold text-slate-600 hover:bg-slate-500 hover:text-slate-100 md:mr-3 md:w-auto",onClick:n[0]||(n[0]=w=>k())},[y(fv,{class:"mr-2 h-6 w-6 group-hover:stroke-slate-100"}),n[5]||(n[5]=e("span",null,"Clear",-1))])]),n[6]||(n[6]=e("p",{class:"w-full pt-2 text-2xl text-orange-700"},"Planting Year",-1)),n[7]||(n[7]=e("p",{class:"mb-2 w-full py-2 text-sm text-slate-500"}," Click below to see the approved spaces for different years ",-1)),e("div",xv,[e
1("span",{class:Y([T.value===J.value?"rounded-lg bg-slate-100 text-blue-700":"text-slate-500","mr-0 w-full cursor-pointer p-3 text-center font-semibold hover:text-blue-600 md:mr-3 md:w-auto"]),onClick:n[1]||(n[1]=w=>W(J.value))},c(J.value),3),(t(),s(ae,null,oe(5,w=>e("span",{key:w,class:Y([T.value===J.value+w?"rounded-lg bg-slate-100 text-blue-700":"text-slate-500","mr-0 w-full cursor-pointer p-3 text-center font-semibold hover:text-blue-600 md:mr-3 md:w-auto"]),onClick:F=>W(J.value+w)},c(J.value+w),11,hv)),64))]),e("p",wv,c(T.value)+" Species",1),n[8]||(n[8]=e("p",{class:"mb-2 w-full py-2 text-sm text-slate-500"}," Sort the list below by clicking the headers. Select a species to show on the map ",-1)),e("div",yv,[e("div",_v,[e("div",kv,[e("div",$v,[e("div",{class:Y([B.value==="total"?"text-blue-600":"text-slate-700","w-1/4 cursor-pointer items-center uppercase lg:w-1/6"]),onClick:n[2]||(n[2]=D(w=>{B.value="total",H.value="desc"},["prevent"]))}," # ",2),e("div",{class:Y([B.value==="genus"?"text-blue-600":"text-slate-700","w-1/2 cursor-pointer items-center uppercase lg:w-4/6"]),onClick:n[3]||(n[3]=D(w=>{B.value="genus",H.value="asc"},["prevent"]))}," Species ",2),e("div",{class:Y([B.value==="planted_total"?"text-blue-600":"text-slate-700","w-1/2 cursor-pointer items-center uppercase lg:w-1/6"]),onClick:n[4]||(n[4]=D(w=>{B.value="planted_total",H.value="asc"},["prevent"]))}," Planted ",2)])]),e("div",Iv,[(t(!0),s(ae,null,oe(h.value,(w,F)=>(t(),s("div",{key:F,class:Y([L.value.includes(w.species_id)?"bg-green-200":"bg-white","flex cursor-pointer border-b border-slate-200 px-2 py-2"]),onClick:D(ie=>te(w.species_id),["prevent"])},[e("div",Cv,c(w.total),1),e("div",Fv,[e("span",Pv,c(w.genus),1),q(" ("+c(w.common_name)+") ",1),w.species&&w.species!=="-"?(t(),s("span",Tv,c(w.species),1)):m("",!0),w.variety&&w.variety!=="-"?(t(),s("span",Lv,c(w.variety),1)):m("",!0)]),e("div",Mv,c(w.planted_total),1)],10,Sv))),128))])])])]))}},Nv=us(Av,[["__scopeId","data-v-e514e9f6"]]),zv={__name:"FilterIcon",props:{color:{type:String,default:"gray"}},setup(a){return(v,u)=>(t(),me($(aa),{class:Y(["h5 w-5 cursor-pointer stroke-1",$(jt)(a.color)])},null,8,["class"]))}},jv={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"icon icon-tabler icons-tabler-outline icon-tabler-sort-ascending-letters"};function Ev(a,v){return t(),s("svg",jv,[...v[0]||(v[0]=[e("path",{stroke:"none",d:"M0 0h24v24H0z"},null,-1),e("path",{d:"M15 10V5c0-1.38.62-2 2-2s2 .62 2 2v5m0-3h-4M19 21h-4l4-7h-4M4 15l3 3 3-3M
17 6v12"},null,-1)])])}const Vv={render:Ev},Dv={__name:"SortNameIcon",props:{color:{type:String,default:"original"}},setup(a){return(v,u)=>(t(),me($(Vv),{class:Y(["h-6 w-6 cursor-pointer stroke-2",$(jt)(a.color)])},null,8,["class"]))}},Ov={xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",class:"icon icon-tabler icons-tabler-outline icon-tabler-sort-descending-numbers"};function Rv(a,v){return t(),s("svg",Ov,[...v[0]||(v[0]=[e("path",{stroke:"none",d:"M0 0h24v24H0z"},null,-1),e("path",{d:"m4 15 3 3 3-3M7 6v12M17 14a2 2 0 0 1 2 2v3a2 2 0 1 1-4 0v-3a2 2 0 0 1 2-2M15 5a2 2 0 1 0 4 0 2 2 0 1 0-4 0"},null,-1),e("path",{d:"M19 5v3a2 2 0 0 1-2 2h-1.5"},null,-1)])])}const Bv={render:Rv},Yv={__name:"SortNumberIcon",props:{color:{type:String,default:"original"}},setup(a){return(v,u)=>(t(),me($(Bv),{class:Y(["h-6 w-6 cursor-pointer stroke-2",$(jt)(a.color)])},null,8,["class"]))}},Uv=()=>{const a=zt(),v=o([]);return{filteredSpecies:v,getFilterSpecies:()=>{let C="/api/vacant/filterSpecies";return a.query.projectId&&(C="/api/vacant/filterSpecies?projectId="+a.query.projectId),re.get(C).then(J=>{v.value=J.data.trees}).catch(J=>{console.log(J),pe(J)})}}},qv={"data-testid":"planting-map-filter-container",class:"h-full"},Wv={key:1,class:"has-search fixed m-0 p-3",style:{top:"2.2rem",width:"100%",margin:"1rem 0rem 0rem 0rem"},"data-testid":"filter-menu-panel"},Gv={class:"flex justify-between"},Hv={key:0,class:"mb-2 w-full"},Zv={class:"list-group list-group-horizontal text-center"},Jv=["data-testid","onClick"],Qv={key:1,class:"mb-2 w-full"},Xv={class:"grid grid-cols-4 gap-1"},Kv=["data-testid","onClick"],ep={key:2,class:"mb-2 w-full"},tp={class:"list-group list-group-horizontal text-center"},sp=["onClick"],lp={class:"flex items-center"},ap={class:"flex w-full items-end justify-between"},np={class:"flex w-full flex-row justify-between"},op={class:"py-2"},ip={class:"leading-none"},rp={class:"leading-tight"},dp={class:"px-1"},up={class:"rounded-full bg-slate-500 px-2 text-sm text-white"},cp={class:"text-sm leading-tight"},vp={class:"py-2"},pp={class:"leading-none"},mp={class:"leading-tight"},gp={class:"px-1"},fp={class:"rounded-full bg-slate-500 px-2 text-sm text-white"},bp={class:"text-sm leading-tight"},xp={class:"flex flex-row"},hp={__name:"PlantingMapFilter",emits:["filterChanged"],setup(a,{emit:v}){const{filteredSpecies:u,getFilterSpecies:C}=Uv(),{textInputFormat:J}=na(),T=Ue(),{attachments:L}=Ye(T),N=we(()=>L.value?.tags||[]);Je(async()=>{await C()});const g=[{id:1,name:"Powerlines Overhead"},{id:2,name:"Previously a Stump"},{id:-2,name:"Not from a Stump"},{id:3,name:"Pavement Removal Req."}],I=["Unassessed","Approved","Planted","Denied"],M=o(null),x=o([]),ee=o([]),X=o([]),B=o([]),H=o([]),Z=o(!1),K=o([]),k=o([]),te=b=>{b&&b.length===2&&(K.value[0]=b[0],K.value[1]=b[1])},W=b=>{const R=X.value.findIndex(P=>P===b);R===-1?X.value.push(b):X.value.splice(R,1)},U=b=>{const R=B.value.findIndex(P=>P===b);R===-1?B.value.push(b):B.value.splice(R,1)},S=b=>{const R=H.value.findIndex(P=>P===b);R===-1?H.value.push(b):H.value.splice(R,1)},h=(b,R,P)=>b.filter(se=>{const E=R.toLowerCase(),ye=(se.genus||"").toLowerCase(),de=(se.species||"").toLowerCase(),Fe=(se.name||"").toLowerCase();return ye.includes(E)||de.includes(E)||Fe.includes(E)}),i=we(()=>[...Array(6)].map((b,R)=>Gt().year()+R)),z=we(()=>Gt.monthsShort().map((b,R)=>({name:b,value:R+1}))),n=we(()=>u.value?[...u.value].sort((b,R)=>{if(Z.value){const P=b.genus||"",se=R.genus||"",E=b.species||"",ye=R.species||"",de=P.localeCompare(se);return de===0?E.localeCompare(ye):de}else{const P=b.total||0;return(R.total||0)-P}}):[]),w=v;[{watchItem:X,filterName:"years"},{watchItem:B,filterName:"months"},{watchItem:x,filterName:"species"},{watchItem:H,filterName:"plantingStatus"},{watchItem:ee,filterName:"attributes"},{watchItem:K,filterName:"createdDate"},{watchItem:k,filterName:"tags"}].forEach(({watchItem:b,filterName:R})=>{ze(b,()=>{w("filterChanged",R,b.value)},{deep:!0})}),ze(X,b=>{b.length===0&&B.value.length>0&&(B.value=[])},{deep:!0});const ie=we(()=>x.value.length>0||X.value.length>0||B.value.length>0||ee.value.length>0||k.value.length>0||H.value.length>0||K.value&&K.value.length>0);return(b,R)=>{const P=ht("v-select"),se=ht("VueDatePicker");return t(),s("div",qv,[$(u)?(t(),s("div",{key:0,class:Y([ie.value?"bg-blue-400":"bg-white","flex h-full cursor-pointer items-center px-2"]),style:{"border-radius":"0px 5px 5px 0px"},"data-testid":"filter-toggle-button",onClick:R[0]||(R[0]=E=>M.value=!M.value)},[y(zv,{class:Y(["h-4 w-4",ie.value?"bg-blue-400 fill-white stroke-white":"fill-slate-500 stroke-slate-500"])},null,8,["class"])],2)):m("",!0),$(u)?ve((t(),s("div",Wv,[e("div",Gv,[R[8]||(R[8]=e("p",{class:"text-lg text-slate-800"},"Filter Planting Locations",-1)),e("span",{class:"m-0 cursor-pointer px-1 text-slate-800",style:{width:"auto","font-size":"1.4rem"}
1,"data-testid":"close-filter-menu-button",onClick:R[1]||(R[1]=E=>M.value=!1)},[y(is)])]),i.value?(t(),s("div",Hv,[R[9]||(R[9]=e("div",{class:"text-md pt-3 text-slate-600"},"Planting Year",-1)),e("div",Zv,[(t(!0),s(ae,null,oe(i.value,E=>(t(),s("a",{key:E,href:"#",class:Y(["list-group-item list-group-item-action py-2",{active:X.value.includes(E)}]),"data-testid":`planting-year-${E}-button`,onClick:D(()=>W(E),["prevent"])},c(E),11,Jv))),128))])])):m("",!0),z.value&&X.value.length>0?(t(),s("div",Qv,[R[10]||(R[10]=e("div",{class:"text-md pt-3 text-slate-600"},"Planting Month",-1)),e("div",Xv,[(t(!0),s(ae,null,oe(z.value,E=>(t(),s("a",{key:E.value,href:"#",class:Y(["list-group-item list-group-item-action py-2 text-center",{active:B.value.includes(E.value)}]),"data-testid":`planting-month-${E}-button`,onClick:D(()=>U(E.value),["prevent"])},c(E.name),11,Kv))),128))])])):m("",!0),I?(t(),s("div",ep,[R[11]||(R[11]=e("div",{class:"text-md pt-3 text-slate-600"},"Planting Status",-1)),e("div",tp,[(t(),s(ae,null,oe(I,E=>e("a",{key:E,href:"#",class:Y(["list-group-item list-group-item-action py-2 text-sm",{active:H.value.includes(E)}]),onClick:D(()=>S(E),["prevent"])},c(E),11,sp)),64))])])):m("",!0),e("div",lp,[e("div",ap,[e("div",np,[R[12]||(R[12]=e("p",{class:"text-md pt-1 text-slate-600"},"Filter Species",-1)),Z.value?(t(),s("div",{key:0,"data-testid":"sort-by-name-button",onClick:R[2]||(R[2]=E=>Z.value=!Z.value)},[y(Dv,{class:"stroke-gray-400 hover:stroke-blue-500"})])):(t(),s("div",{key:1,"data-testid":"sort-by-count-button",onClick:R[3]||(R[3]=E=>Z.value=!Z.value)},[y(Yv,{class:"stroke-gray-400 hover:stroke-blue-500"})]))])])]),y(P,{modelValue:x.value,"onUpdate:modelValue":R[4]||(R[4]=E=>x.value=E),class:"style-chooser",multiple:"",options:n.value,filter:h,label:"name",reduce:E=>E.species_id,searchable:!0,"data-testid":"species-filter-select"},{"selected-option":O(E=>[e("div",op,[e("div",ip,[e("strong",null,c(E.genus),1)]),e("div",rp,[e("i",dp,c(E.species),1),e("span",up,c(E.total),1)]),e("div",cp,c(E.name),1)])]),option:O(E=>[e("div",vp,[e("div",pp,[e("strong",null,c(E.genus),1)]),e("div",mp,[e("i",gp,c(E.species),1),e("span",fp,c(E.total),1)]),e("div",bp,c(E.name),1)])]),_:1},8,["modelValue","options","reduce"]),N.value&&N.value.length?(t(),s(ae,{key:3},[e("div",xp,[R[13]||(R[13]=e("p",{class:"text-md pt-3 text-slate-600"},"Filter Tags",-1)),y(Ms,{"version-code":"1.0.20",text:"Filter the planting map by tags","feature-key":"planting-filter-tags-1.0.20","display-until":new Date("2026-03-31"),"icon-classes":"top-2 left-1"},null,8,["display-until"])]),y(P,{modelValue:k.value,"onUpdate:modelValue":R[5]||(R[5]=E=>k.value=E),class:"style-chooser",multiple:"",options:N.value,label:"name",reduce:E=>E.id,searchable:!1,"data-testid":"tags-select"},{"selected-option":O(({name:E})=>[q(c(E),1)]),option:O(({name:E})=>[q(c(E),1)]),_:1},8,["modelValue","options","reduce"])],64)):m("",!0),R[14]||(R[14]=e("p",{class:"text-md pt-3 text-slate-600"},"Filter Attribute",-1)),y(P,{modelValue:ee.value,"onUpdate:modelValue":R[6]||(R[6]=E=>ee.value=E),class:"style-chooser",multiple:"",options:g,label:"name",reduce:E=>E.id,searchable:!1,"data-testid":"attributes-filter-select"},{"selected-option":O(({name:E})=>[e("span",null,c(E),1)]),option:O(({name:E})=>[e("span",null,c(E),1)]),_:1},8,["modelValue","reduce"]),R[15]||(R[15]=e("p",{class:"text-md pt-3 text-slate-600"},"Created Between",-1)),y(se,{modelValue:K.value,"onUpdate:modelValue":[R[7]||(R[7]=E=>K.value=E),te],range:!0,"text-input":$(J),format:"dd/MM/yyyy","enable-time-picker":!1,"data-testid":"date-range-picker"},null,8,["modelValue","text-input"])],512)),[[Pt,M.value]]):m("",!0)])}}},wp={key:0,class:"flex w-full items-center px-3 py-2"},yp={key:0},_p={key:1},kp={__name:"PlantingMapSearch",props:{map:{},plantThisTree:{},clusterLayer:{},treeLayer:{},moveExistingTreeBundle:{},handleFilterChanged:{},editingMode:{type:Boolean,required:!0},savingEdits:{type:Boolean,required:!0},enableEditing:{type:Function,required:!0},exitEditing:{type:Function,required:!0},saveEdits:{type:Function,required:!0}},emits:["toggleAllFlaggedLayer","emitPlantingLayers","toggleT1Layer"],setup(a,{emit:v}){const{client:u,project:C,features:J}=Ye(Ue()),T=a,L=v,N=o(!1),g=o([]),I=o(!1),M=B=>{g.value.includes(B)?g.value.splice(g.value.indexOf(B),1):g.value.push(B),L("emitPlantingLayers",g.value)},x=()=>{N.value=!0,T.map.removeLayer(T.clusterLayer),T.map.removeLayer(T.treeLayer)},ee=()=>{N.value=!1,T.map.addLayer(T.clusterLayer),T.map.addLayer(T.treeLayer)},X=B=>{I.value=B,L("toggleT1Layer",B)};return(B,H)=>(t(),me(Ql,{map:a.map},{filterIcon:O(()=>[y(hp,{onFilterChanged:a.handleFilterChanged},null,8,["onFilterChanged"])]),content:O(({showMenu:Z,openMenu:K,closeMenu:k})=>[$(u)?.permissions?.map_plant&&!$(C)?(t(),s("div",wp,[N.value?m("",!0):(t(),s("span",{key:0,class:"mr-0 w-full cursor-pointer rounded-lg bg-slate-100 p-3 text-center text-lg font-semibold text-blue-700 hover:bg-slate-200 hover:text-blue-600",onClick:H[0]||(H[0]=D(te=>x(),["prevent"]))}," Ready to plant? Click Here "))])):m("",!0),y(fe,{name:"slide-fade"},{default:O(()=>[Z&&N.value?(t(),s("div",yp,[y(Nv,{map:T.map,"plant-this-tree":T.plantThisTree,"hide-planting":ee},null,8,["map","plant-this-tree"])])):m("",!0)]),_:2},1024),N.value?m("",!0):(t(),s("div",_p,[y(rv),y(vv,{plantingLayers:g.value,togglePlantingLayers:M,"t1-work-order-mode":I.value,"toggle-t1-layers":X,"show-t1-layer":!!$(J)?.T1_layer_planting_map},null,8,["plantingLayers","t1-work-order-mode","show-t1-layer"])])),y(Xl,{"move-existing-tree-bundle":
1a.moveExistingTreeBundle,"show-menu":Z,"open-menu":K,"close-menu":k,"editing-mode":a.editingMode,"saving-edits":a.savingEdits,"enable-editing":a.enableEditing,"exit-editing":a.exitEditing,"save-edits":a.saveEdits},null,8,["move-existing-tree-bundle","show-menu","open-menu","close-menu","editing-mode","saving-edits","enable-editing","exit-editing","save-edits"])]),_:1},8,["map"]))}},$p={planted:{text:"Planted",color:"#16a34a"},approved:{text:"Approved",color:"#3b82f6"},denied:{text:"Denied",color:"#dc2626"},unassessed:{text:"Unassessed",color:"#6b7280"}},Ip=a=>a.get("planted")>0?"planted":a.get("approved")===1?"approved":a.get("approved")===0?"denied":"unassessed",Sp=a=>{const v=a.get("pointType");if(v==="t1WorkOrder"){const u=a.get("woNumber");return{displayName:"work order",label:u?`WO ${u}`:`WO #${a.get("workOrderId")}`,sublabel:a.get("woStatus")||"",badgeText:"T1",badgeColor:"#7c3aed"}}if(!v&&a.get("treeId")){const u=$p[Ip(a)],C=a.get("commonName");return{displayName:"planting",label:`Planting #${a.get("treeId")}`,sublabel:C?`${u.text} - ${C}`:u.text,badgeText:"P",badgeColor:u.color}}return null},Cp=({map:a})=>{const v="/api/tree/maintenance/removals",u=o(null),C=o(new ot),J=new nt({image:new At({radius:9,stroke:new Nt({color:"rgba(20, 83, 45, 0.2)",width:2,lineCap:"butt"}),fill:new Ze({color:"rgba(20, 83, 45, 0.7)"})}),text:new rs({font:"9px helvetica,sans-serif",offsetY:1,offsetX:1,text:"TR",fill:new Ze({color:"#fff"})})}),T=N=>{const g=[];Object.keys(N).forEach(I=>{g[I]=new Tt(new Lt(ft([parseFloat(N[I].lng),parseFloat(N[I].lat)],"EPSG:3857"))),g[I].setId(N[I].id),g[I].set("treeId",N[I].id),g[I].set("asset_id",N[I].asset_id),g[I].set("defects",N[I].defects),g[I].set("trees_status_id",N[I].trees_status_id),g[I].set("approx_address",N[I].approx_address),g[I].set("stump_size",N[I].stump_size?N[I].stump_size.name:""),g[I].set("lat",N[I].lat),g[I].set("lng",N[I].lng)}),C.value.addFeatures(g)};return{removalsLayer:u,removalsSource:C,initializeRemovalsLayer:async()=>{try{C.value=new ot;const N=await re.get(v);T(N.data.trees),u.value=new gt({source:C.value,style:J,visible:!1}),a.value.addLayer(u.value),u.value.setZIndex(10)}catch(N){console.error("Error initializing removals layer:",N),zs.error("fetch-removals","useRemovalsLayer","Error fetching removals data ",N),pe(N)}}}},Fp=({map:a})=>{const v=o(null),u=o(new ot),C=new nt({image:new At({radius:9,stroke:new Nt({color:"rgba(0, 0, 0, 0.2)",width:2,lineCap:"butt"}),fill:new Ze({color:"rgba(0, 0, 0, 0.7)"})}),text:new rs({font:"9px helvetica,sans-serif",offsetY:1,offsetX:1,text:"S",fill:new Ze({color:"#fff"})})}),J=L=>{const N=L.map(g=>{const I=new Tt(new Lt(ft([parseFloat(g.lng),parseFloat(g.lat)],"EPSG:3857")));return I.setId(g.id),I.set("treeId",g.id),I.set("lat",g.lat),I.set("lng",g.lng),I});u.value.addFeatures(N)};return{stumpsLayer:v,stumpsSource:u,initializeStumpsLayer:async()=>{try{u.value=new ot;const L=await re.get("/api/tree/stumps/map");J(L.data.stumps),v.value=new gt({source:u.value,style:C,visible:!1}),a.value.addLayer(v.value),v.value.setZIndex(10)}catch(L){console.error("Error initializing stumps layer:",L),zs.error("fetch-stumps","useStumpsLayer","Error fetching stumps data ",L),pe(L)}}}},Pp={id:"map",class:"map","data-testid":"planting-map-div"},Tp={id:"work-order-popup",class:"ol-popup ol-popup-work-order","data-testid":"work-order-popup-container"},Lp={id:"work-order-popup-content",class:"text-slate-600"},Mp={key:1,class:"pointer-events-none fixed bottom-24 left-1/2 z-50 -translate-x-1/2 transform select-none rounded bg-slate-800 px-4 py-2 text-xs text-white shadow-lg",style:{opacity:"0.95"}},Ap={id:"sidebar",class:"sidebar"},Np={class:"sidebar-content"},zp={key:0,class:"pointer-events-none fixed inset-x-0 bottom-0 w-full max-w-xs pb-10 lg:pb-6",style:{"z-index":"3"}},jp={class:"ml-3 rounded-lg bg-white shadow-xl"},Ep={class:"pointer-events-auto flex items-center justify-between gap-2 rounded-lg bg-white px-2 py-2"},Vp={class:"flex items-center"},Dp={class:"text-md pl-2 font-semibold lg:text-lg"},Op={class:""},Rp="#2196F3",Bp="bottom-right",$g=yt({__name:"PlantingMap",setup(a){const v=zt(),u=Cl(),C=o(16),J=Ue(),{client:T,project:L,features:N}=Ye(J),g=o(null),I=we(()=>v.query.workOrderId??null),M=()=>{const r={...v.query};delete r.workOrderId,u.replace({path:v.path,query:r})},{map:x,aerialLayer:ee,aerialGroup:X,imageService:B,labelLayer:H,osmLayer:Z,transformExtentMercatorToWGS84:K,initBaseMap:k,satelliteLayer:te}=ql(),{addStreetsBaseLayer:W,addAdditionalLayers:U,baseMapSwitch:S}=ra({map:x,osmLayer:Z,imageService:B,aerialGroup:X,labelLayer:H,satelliteLayer:te,aerialLayer:ee}),h=o(!1),i=()=>{h.value=!1},{askConfirmationBeforeClose:z,showCloseConfirmationModal:n,confirmationTrigger:w,handleCloseSideMenuConfirm:F,handleCloseSideMenuCancel:ie,enableConfirmationSafeguard:b,initConfirmationSafeguard:R}
1=oa(h,x,null,null,i);Je(async()=>{if(await k()===Wl)return;await W("works"),await U();const f=await Bt();St.value=f.allFlags,await Q(),_.value=!0,d.value.setVisible(!0),d.value.changed(),Os(),E(),ye(),cl(),dl(),Xs(),N.value?.T1_layer_planting_map&&(p(),_e.value.setVisible(!1),v.query.workOrderId&&(_e.value.setVisible(!0),Qe.value=!0,await be(),ue.value=!0,It()));const j=document.getElementById("work-order-popup"),A=document.getElementById("work-order-popup-closer");xe.value=new Ss({element:j,autoPan:!0,autoPanAnimation:{duration:250}}),A.onclick=()=>(xe.value.setPosition(void 0),A.blur(),!1),x.value.addOverlay(xe.value),R(),await x.value.once("postrender",()=>{if(v.query.treeId&&v.query.lng&&v.query.lat){const he=v.query.lng,Te=v.query.lat;$t(parseFloat(Array.isArray(he)?he[0]??"":he),parseFloat(Array.isArray(Te)?Te[0]??"":Te)),Vs()}}),Ne.value&&(Ne.value.un("addfeature",st),Ne.value.un("removefeature",st),Ne.value.un("clear",st),Ne.value.on("addfeature",st),Ne.value.on("removefeature",st),Ne.value.on("clear",st));const ce=()=>{const he=x.value.getView().getZoom();et.value=he<C.value,!et.value&&!x.value.getLayers().getArray().includes(ke.value)&&(We(),Ge())};x.value.getView().on("change:resolution",ce),ce()}),Ps(()=>{x.value?.dispose()});const{isEditingBoundary:P,savingBoundary:se,addProjectArea:E,addBoundaryDrawing:ye,enableBoundaryDraw:de,restartBoundary:Fe,startEditBoundary:qe,cancelEditBoundary:it,saveBoundary:Ve}=Gl({map:x}),Qe=o(!1),ue=o(!1),{t1Source:l,t1Layer:_e,initT1Layer:p,refreshT1Layer:be}=Pl({map:x,zoomMinMax:C,mapModule:"planting"}),xe=o(null),Pe=o(null),Xe=o(null),rt=o(null),kt=o(null),De=o(null),Oe=o(null),Zt=r=>{Qe.value=r,_e.value&&_e.value.setVisible(r),r&&(ue.value||(be(),ue.value=!0),be())},dt=()=>{Pe.value=null,Xe.value=null,rt.value=null,kt.value=null,De.value=null,Oe.value=null,xe.value.setPosition(void 0)},ut=o(null),je=o(!0),ct=o(!1),Ke=o(null),Et=()=>{Ee.value&&(He.value.clear(),x.value.removeLayer(Ee.value),Ie.value&&(x.value.removeInteraction(Ie.value),Ie.value=null),x.value.removeInteraction(ge.value),x.value.addInteraction(ge.value)),ge.value.getFeatures().clear(),h.value=!1},Vt=r=>{r&&(x.value.removeOverlay(r),Ke.value=null)},$t=(r,f)=>{x.value.getView().setCenter(ft([r,f],"EPSG:3857")),x.value.getView().setZoom(18);const j=document.createElement("div");j.setAttribute("class","pulse-point pulse-3"),Ke.value=new Ss({element:j,position:ft([r,f],"EPSG:3857"),positioning:"center-center"}),x.value.addOverlay(Ke.value),setTimeout(()=>{V.value.changed()},1200),setTimeout(()=>{Ke.value&&Vt(Ke.value)},6e3)},It=()=>{const r=v.query.workOrderId;if(!r)return;const f=Array.isArray(r)?r[0]??"":r;if(!f)return;const j=l.value?.getFeatureById(f);if(!j)return;const A=j.getGeometry()?.getCoordinates();if(!A)return;const[ce,he]=os(A);$t(ce,he)},{treeLayer:ke,treeSource:le,loadPlantingTreeSources:Dt}=Zl({map:x,zoomMinMax:C}),We=()=>{let r="/api/vacant/trees?";v.query.projectId&&(r="/api/vacant/trees?projectId="+v.query.projectId+"&"),le.value=new ot({strategy:Fl,format:new va,loader:f=>{if(f.some(isNaN)||f[1]>=f[3]){le.value.removeLoadedExtent(f);return}const j=K(f);if(j.some(isNaN)){le.value.removeLoadedExtent(f);return}let A=r+"bbox="+j.join(",");if(ne.value.tags&&ne.value.tags.length>0&&(A+="&tags="+ne.value.tags.join(",")),ne.value.species&&ne.value.species.length>0&&(A+="&species="+ne.value.species.join(",")),ne.value.createdDate&&ne.value.createdDate.length>0&&(A+="&created_date=",A+=ne.value.createdDate.map(ce=>new Date(ce).toISOString()).join(",")),ne.value.attributes&&ne.value.attributes.length>0){const ce=ne.value.attributes;ce.includes(1)&&(A+="&powerlinesOverhead=1"),ce.includes(2)&&(A+="&previouslyAStump=1"),ce.includes(-2)&&(A+="¬AStump=1"),ce.includes(3)&&(A+="&pavementRemovalReq=1")}ne.value.years&&ne.value.years.length>0&&(A+="&years="+ne.value.years.join(",")),ne.value.months&&ne.value.months.length>0&&(A+="&months="+ne.value.months.join(",")),ne.value.plantingStatus&&ne.value.plantingStatus.length>0&&(A+="&plantingStatus="+ne.value.plantingStatus.join(",")),re.get(A).then(ce=>{Dt(ce.data.trees),tt.value&&(el(),st())}).catch(ce=>{le.value.removeLoadedExtent(f),pe(ce)})}})}
1,vt=o(new Map),ne=o({years:[],months:[],species:[],tags:[],plantingStatus:[],attributes:[],createdDate:null}),Ot=r=>{const f=r.get("planted"),j=r.get("approved"),A=r.get("plantingYear"),ce=r.get("plantingMonth"),he=r.get("powerlinesId"),Te=r.get("crmExists"),Ct=r.get("removedTreeId"),Wt=`${r.get("treeId")}-${f}-${j}-${A}-${ce}-${he}-${Ct}-${Te}`;if(vt.value.has(Wt))return vt.value.get(Wt);let Re;const Ft=parseInt(Gt().format("YYYY")),xl=hl=>{switch(+hl){case Ft:return Se({scale:.35}).orangeTreeIcon;case Ft+1:return Se({scale:.35}).turquoiseTreeIcon;case Ft+2:return Se({scale:.35}).pinkTreeIcon;case Ft+3:return Se({scale:.35}).purpleTreeIcon;default:return Se({scale:.35}).brownTreeIcon}};f>0?Re=Be({image:Se({opacity:1,scale:.35}).greenTreeIcon}):j===1?Re=A<=Ft?Be({image:Se({opacity:1}).blueTreeIcon}):Be({image:xl(parseInt(A))}):j===0?Re=Be({image:Se({opacity:.5,scale:.35}).redTreeIcon}):Re=Be({image:Se({opacity:1}).greyTreeIcon});const lt=[];return Re&<.push(Re),Re&&he===1&<.push(Be({image:Se({opacity:.9,anchor:[0,1]}).powerlineIdIcon(he)})),Re&&Ct>0&<.push(Be({image:Se({opacity:.9,imgSize:[22,22],anchor:[0,0]}).stumpIcon})),Re&&Te&<.push(Be({image:new At({radius:8,displacement:[-9,9],stroke:new Nt({color:"rgba(255, 255, 255, 1)",width:2,lineCap:"butt"}),fill:new Ze({color:"rgba(220, 38, 38, 1)"})}),text:new rs({font:"bold 8px helvetica,sans-serif",offsetY:-9,offsetX:-9,text:"CR",fill:new Ze({color:"rgba(255, 255, 255, 1)"})})})),lt.length>0?(vt.value.set(Wt,lt),lt):(vt.value.set(Wt,null),new nt)},Ge=()=>{ke.value=new gt({source:le.value,maxResolution:x.value.getView().getResolutionForZoom(16),style:Ot,properties:{selectable:!0}}),x.value.addLayer(ke.value),ke.value.setZIndex(5)},Jt=r=>{const f=[];ge.value.getFeatures().clear(),r&&(Object.keys(r).forEach(j=>{const A=r[j];f[j]=new Tt(new Lt(ft([Number(A.lng),Number(A.lat)],"EPSG:3857"))),f[j].setId(A.id),f[j].set("treeId",A.id),f[j].set("speciesId",A.species_id),f[j].set("commonName",A.common_name),f[j].set("genusName",A.genus),f[j].set("speciesName",A.species),f[j].set("species",A.species),f[j].set("variety",A.variety),f[j].set("assetId",A.asset_id),f[j].set("vacantId",A.vacantId),f[j].set("sizeId",A.size_id),f[j].set("pavementId",A.pavement_id),f[j].set("powerlinesId",A.powerlines_id),f[j].set("crmExists",A.crm_exists),f[j].set("underground",A.underground_services),f[j].set("notes",A.notes),f[j].set("createdAt",A.created_at),f[j].set("updatedAt",A.updated_at),f[j].set("userName",A.name),f[j].set("plantingYear",A.planting_year),f[
1j].set("plantingMonth",A.planting_month),f[j].set("approved",A.approved),f[j].set("planted",A.planted),f[j].set("plantedDate",A.planted_date),f[j].set("potSizeId",A.pot_size_id),f[j].set("potSize",A.pot_size_name),f[j].set("parkTree",A.park_tree),f[j].set("lng",A.lng),f[j].set("lat",A.lat)}),He.value.clear(),x.value.removeLayer(Ee.value),Ie.value&&(x.value.removeInteraction(Ie.value),Ie.value=null),Rt.value.addFeatures(f),le.value.addFeatures(f),x.value.addInteraction(ge.value),je.value=!0)},{allFlags:St,allFlagSource:V,allFlagLayer:d,showAllFlagLayer:_,addAllFlags:Q,refreshAllFlags:$e}=Tl({map:x,zoomMinMax:C}),Es=r=>{_.value=r,d.value&&(d.value.setVisible(r),d.value.changed(),r&&V.value.refresh())},ge=o(null),Qt=o(null),G=Il({commonName:"",genusName:"",speciesName:"",crmExists:"",speciesId:"",treeId:"",vacantId:"",sizeId:"",assetId:"",pavementId:"",powerlinesId:"",underground:"",notes:"",approved:"",planted:"",plantingYear:"",plantingMonth:"",userName:"",createdAt:"",updatedAt:"",potSizeId:"",potSize:"",parkTree:"",removedTreeId:"",developmentId:""}),Xt=async r=>{if(!r){h.value=!1;return}if(r.get("pointType")==="t1WorkOrder"){Pe.value=r.getId(),Xe.value=r.get("woNumber"),rt.value=r.get("woComment"),kt.value=r.get("woDescription"),De.value=r.get("hasLinkedProjects")?r.get("linkedProject"):null;const j=(r.get("workOrderLinks")||[]).find(A=>A.linkable_type==="App\\Models\\trees_vacant");Oe.value=j?.tree_id??null,Pe.value&&N.value?.T1_work_order_detail_popup&&(xe.value.setPosition(r.getGeometry().getCoordinates()),h.value=!1);return}ct.value=!1,je.value=!0,h.value=!0,Qt.value=r,G.commonName=r.get("commonName"),G.genusName=r.get("genusName"),G.speciesName=r.get("speciesName"),G.speciesId=r.get("speciesId"),G.treeId=r.get("treeId"),G.vacantId=r.get("vacantId"),G.sizeId=r.get("sizeId"),G.assetId=r.get("assetId"),G.pavementId=r.get("pavementId"),G.powerlinesId=r.get("powerlinesId"),G.crmExists=r.get("crmExists"),G.underground=r.get("underground"),G.notes=r.get("notes"),G.approved=r.get("approved"),G.planted=r.get("planted"),G.plantingYear=r.get("plantingYear"),G.plantingMonth=r.get("plantingMonth"),G.userName=r.get("userName"),G.createdAt=r.get("createdAt"),G.updatedAt=r.get("updatedAt"),await Sl(),g.value.showVacantInfo(r.get("treeId"),r.get("lat"),r.get("lng")),g.value.showDefault()},Vs=()=>{const r=v.query.treeId,f=parseInt(Array.isArray(r)?r[0]??"":r??"",10);if(!f)return;le.value||(We(),Ge());const j=he=>{const Te=ge.value?.getFeatures();Te&&(Te.clear(),Te.push(he)),Xt(he)},A=le.value?.getFeatureById(f);if(A){j(A);return}const ce=()=>{const he=le.value?.getFeatureById(f);he&&(le.value.un("addfeature",ce),j(he))};le.value.on("addfeature",ce)},{showItemsAtPixel:Ds}=da(x,{describeItem:Sp,onSelect:r=>{const f=ge.value?.getFeatures();f&&(f.clear(),f.push(r)),Xt(r)}}),Os=()=>{const r=new nt({image:Se().yellowTreeIcon}),f=Se().selectTreeCircleStyle;ge.value=new Ls({style:[f,r],hitTolerance:5,filter:(j,A)=>A&&A.get("selectable")}),x.value.addInteraction(ge.value),ge.value.on("select",j=>{if(z.value&&h.value){w.value="map-click",n.value=!0,ge.value.getFeatures().clear();return}if(Ds(j.mapBrowserEvent.pixel)){ge.value.getFeatures().clear();return}Xt(j.target.getFeatures().getArray()[0])})},Kt=r=>{if(!r||!r.get("treeId")){console.error("No tree selected for planting.");return}ut.value=r,Qt.value=le.value.getFeatureById(r.get("treeId")),ct.value=!1,je.value=!0,h.value=!0,G.commonName=r.get("commonName"),G.genusName=r.get("genusName"),G.speciesName=r.get("speciesName"),G.speciesId=r.get("speciesId"),G.treeId=r.get("treeId"),G.vacantId=r.get("vacantId"),G.sizeId=r.get("sizeId"),G.assetId=r.get("assetId"),G.pavementId=r.get("pavementId"),G.powerlinesId=r.get("powerlinesId"),G.crmExists=r.get("crmExists"),G.underground=r.get("underground"),G.notes=r.get("notes"),G.approved=r.get("approved"),G.planted=r.get("planted"),G.plantingYear=r.get("plantingYear"),G.plantingMonth=r.get("plantingMonth"),G.createdAt=r.get("createdAt"),G.updatedAt=r.get("updatedAt"),G.potSizeId=r.get("potSizeId"),G.potSize=r.get("potSize"),G.parkTree=r.get("parkTree"),G.removedTreeId=r.get("removedTreeId"),G.developmentId=r.get("developmentId"),g.value.showVacantInfo(r.get("treeId"),r.get("lat"),r.get("lng")),g.value.showDefault()},es=o(""),Rs=r=>{v.query.projectId&&re.post(`/api/projects/${v.query.projectId}/update-project`,{filters:r,module:"planting"}).then(()=>{es.value=r,window.location.reload()}).catch(f=>{console.error("Error updating project filters:",f),pe(f)})},Bs={startEditBoundary:qe,cancelEditBoundary:it,saveBoundary:Ve,restartBoundary:Fe,enableBoundaryDraw:de,isEditingBoundary:P,savingBoundary:se,addBoundaryDrawing:ye}
1,{boundaryControlsProps:Ys}=Dl(Bs,ge,es),Us={"update-filters":Rs,"boundary-save-complete":()=>{le.value&&(le.value.clear(),le.value.refresh())}},{clusterTreeSource:Rt,clusterTreeLayer:ts,getClusterAndAddToMap:Bt,projectFilter:qs}=Ll({map:x,treeLayer:ke,zoomMinMax:C,module:"planting",selectedFilters:ne});async function Ws(){if(!x.value)return;ts.value&&x.value.removeLayer(ts.value),Rt.value.clear();const r=await Bt();if(!r)return;St.value=r.allFlags,$e(r.allFlags),ke.value&&(x.value.removeLayer(ke.value),ke.value=null,le.value=null),x.value.getView().getZoom()>=C.value&&(We(),Ge())}ze(()=>ne.value,async()=>{Ws()},{deep:!0}),ze(qs,r=>{es.value=r}),Me("getCluster",Bt),Me("allFlagSource",V),Me("clusterTreeSource",Rt),Me("showAllFlagLayer",_),Me("allFlagLayer",d),Me("map",x),Me("refreshAllFlags",$e);const cs=o(""),vs=o(""),ps=o(""),ms=o(""),Gs=(r,f)=>{ne.value[r]=f},He=ns(new ot),Ee=ns(new gt),Ie=ns(null),Yt=o([]),ss=o(!1),et=o(!1),pt=o([{name:"findMe",icon:"gps_fixed",tooltip:"Geolocation",color:"#2196F3"},{name:"baseMap",icon:"map",tooltip:"Change Basemap"},{name:"activateNewTree",icon:"pin_drop",tooltip:"Add a Planting Space"},{name:"bulkSelect",icon:"pentagon",tooltip:we(()=>et.value?"Disabled: Bulk Select":"Bulk Select"),customClass:we(()=>et.value?"bg-gray-300 text-gray-400 cursor-not-allowed":"bg-blue-600 text-white hover:bg-blue-700"),disabled:we(()=>et.value),customTooltip:we(()=>et.value&&tt.value?"Zoom in to tree level for bulk selection":""),checkPermission:!0,permission:we(()=>T.value?.permissions?.plant_bulk??!1)}]),{findOn:Hs,findOff:Zs}=ia({map:x,module:"planting"}),Js=()=>{T.value&&T.value.permissions&&T.value.permissions.plant_plant_tree?(ut.value&&ut.value.getFeatures().clear(),He.value&&He.value.clear(),Ee.value&&x.value.removeLayer(Ee.value),Ie.value&&(x.value.removeInteraction(Ie.value),Ie.value=null),h.value=!1,je.value=!1,x.value.removeInteraction(ge.value),x.value.on("singleclick",gs)):alert("You do not have permission to add a new planting space.")},gs=r=>{Yt.value=r.coordinate,bs();const f=Be({image:Se().yellowTreeIcon}),j=new Tt({geometry:new Lt(r.coordinate),name:"New Tree"});x.value.getLayers().getArray().includes(Ee.value)&&(He.value.clear(),x.value.removeLayer(Ee.value)),j.setStyle(f),He.value.addFeature(j),Ee.value=new gt({source:He.value,updateWhileInteracting:!0}),x.value.addLayer(Ee.value),Ie.value&&x.value.removeInteraction(Ie.value),Ie.value=new pa({source:He.value,hitDetection:Ee.value,style:()=>[]}),x.value.addInteraction(Ie.value),Ie.value.on("modifyend",A=>{Yt.value=A.mapBrowserEvent.coordinate,bs()}),je.value=!1,ct.value=!0,h.value=!0},Qs=r=>{const f=le.value.getFeatures();let j=!1;for(let A=0;A<f.length&&!j;A++)f[A].get("treeId")===r&&(j=!0,f[A].set("workComplete",!0))},{selectionSource:Ne,addDrawing:Xs,enablePolygonDraw:Ks,selectFeatures:el,disableDraw:fs}=ta({map:x,treeLayer:ke,selectedTree:ut}),mt=o([]),tt=o(!1),st=()=>{if(Ne.value&&typeof Ne.value.getFeatures=="function"){const r=Ne.value.getFeatures().slice();mt.value=tl(r)}else mt.value=[];tt.value=!0},tl=r=>r.filter(f=>f.get("treeId")!==void 0),sl=()=>{et.value||(x.value.removeInteraction(ge.value),Ks(),tt.value=!0)},bs=()=>{x.value.un("singleclick",gs);const r=os(Yt.value);re.post("/api/tree/nearby",{lat:r[1],lng:r[0]}).then(f=>{cs.value=f.data.nearbyTrees,vs.value=f.data.recentTrees,ps.value=f.data.recentVacant,ms.value=f.data.nearByAddresses}).catch(f=>{console.log(f),pe(f)})},ll=()=>{ss.value=!ss.value,ss.value?(pt.value[0].color="#4CAF50",Hs()):(Zs(),pt.value[0].color="#2196F3")},Ut=o(!1),xs=zl({map:x,treeSource:le,treeLayer:ke}),{moveExistingTrees:al,exitMoveExistingTrees:nl,saveMoveEdits:ol,savingMoveEdits:hs}=xs,il=()=>{ls&&ls(),Ut.value=!0,al()},ws=()=>{Ut.value=!1,nl(),as&&as()},ys=()=>ol(),ls=()=>{ge.value.getFeatures().clear(),x.value.removeInteraction(ge.value)},as=()=>{le.value.clear(),le.value.refresh(),le.value.changed(),x.value.addInteraction(ge.value)};Me("mapStartEditCb",ls),Me("mapEndEditCb",as);const{removalsLayer:rl,initializeRemovalsLayer:dl}=Cp({map:x}),{stumpsLayer:ul,initializeStumpsLayer:cl}=Fp({map:x}),_s=o(!1),ks=o(!1),vl=r=>
1{ks.value=r.includes(1),_s.value=r.includes(2),rl.value.setVisible(ks.value),ul.value.setVisible(_s.value)},pl={refreshAllFlags:$e,getClusterAndAddToMap:Bt,addNewTree:Jt},ml=we(()=>{const r=[{label:"View Details",type:"primary",action:"view-details"}];return Oe.value?r.push({label:"Continue to Action",type:"success",onClick:()=>{const f=le.value?.getFeatureById(Oe.value);if(f){dt(),Kt(f);return}const j=xe.value?.getPosition();if(!j)return;le.value||(We(),Ge());const A=Oe.value,ce=()=>{const Ct=le.value?.getFeatureById(A);Ct&&(le.value.un("addfeature",ce),dt(),Kt(Ct))};le.value.on("addfeature",ce);const[he,Te]=os(j);$t(he,Te)}}):r.push({label:"Create Planting Location",type:"success",onClick:async()=>{const f=Xe.value;dt(),await re.post("api/t1/wo/create-planting-location",{work_order_number:f}),le.value.clear(),x.value.removeLayer(ke.value),We(),Ge(),await be()}}),r}),gl={map:x,clusterTreeSource:Rt,showAllFlagLayer:_,allFlagSource:V,allFlagLayer:d};Me("PlantingMapControlAPI",pl),Me("PlantingMapGlobalState",gl),Me("enableConfirmationSafeguard",b);const fl=()=>{le.value.clear(),Ne.value.clear(),x.value.removeLayer(ke.value),We(),Ge(),fs(),x.value.addInteraction(ge.value),tt.value=!1},qt=o(!1),bl=()=>{fs(),qt.value=!1,tt.value=!1,x.value.addInteraction(ge.value)};return(r,f)=>(t(),s("div",Pp,[y(ua),$(N)?.T1_work_order_detail_popup?(t(),me(Ml,{key:0,ref:"workOrderPanelRef",module:"planting","module-id":$(L)?.id||""},null,8,["module-id"])):m("",!0),e("div",Tp,[f[5]||(f[5]=e("a",{id:"work-order-popup-closer",href:"#","data-testid":"work-order-popup-closer",class:"ol-popup-closer"},null,-1)),e("div",Lp,[Pe.value&&$(N)?.T1_work_order_detail_popup?(t(),me(Al,{key:0,"work-order-number":Xe.value,comment:rt.value,description:kt.value,"work-order-linked-project-id":De.value,"close-panel":dt,actions:ml.value},null,8,["work-order-number","comment","description","work-order-linked-project-id","actions"])):m("",!0)])]),y(Hl,{position:Bp,"bg-color":Rp,actions:pt.value,"fixed-tooltip":!0,onActivateNewTree:Js,onBaseMap:$(S),onFindMe:ll,onBulkSelect:sl},null,8,["actions","onBaseMap"]),pt.value[3].disabled&&pt.value[3].customTooltip&&$(T)&&$(T).permissions.plant_bulk?(t(),s("div",Mp,[e("span",null,c(pt.value[3].customTooltip),1)])):m("",!0),$(x)?(t(),me(kp,{key:2,map:$(x),"plant-this-tree":Kt,"move-existing-tree-bundle":$(xs),"handle-filter-changed":Gs,"cluster-layer":$(ts),"tree-layer":$(ke),"editing-mode":Ut.value,"saving-edits":$(hs),"enable-editing":il,"exit-editing":ws,"save-edits":ys,onToggleAllFlaggedLayer:Es,onEmitPlantingLayers:vl,onToggleT1Layer:Zt},null,8,["map","move-existing-tree-bundle","cluster-layer","tree-layer","editing-mode","saving-edits"])):m("",!0),$(L)&&$(v).query.edit&&$(v).query.edit=="true"?(t(),me(Vl,kl({key:3},$(Ys),{module:"planting",project:$(L)},$l(Us)),null,16,["project"])):m("",!0),y(fe,{name:"slide-fade"},{default:O(()=>[ve(e("div",Ap,[e("div",Np,[je.value?(t(),me(Eu,{key:0,ref_key:"vacantComponentRef",ref:g,"selected-tree-data":G,"sel-feature":Qt.value,"tree-source":$(le),"close-panel":Et,"reload-trees":Qs,"work-order-id":I.value,onEnableConfirmationSafeguard:$(b),onWorkOrderActioned:M},null,8,["selected-tree-data","sel-feature","tree-source","work-order-id","onEnableConfirmationSafeguard"])):m("",!0),ct.value?(t(),me(Ul,{key:1,ref:"newTreeComponent",lat_lon:Yt.value,"nearby-trees":cs.value,"recent-trees":vs.value,"recent-vacant":ps.value,"close-panel":Et,"nearby-addresses":ms.value},null,8,["lat_lon","nearby-trees","recent-trees","recent-vacant","nearby-addresses"])):m("",!0)])],512),[[Pt,h.value]])]),_:1}),y(fe,{name:"slide-fade"},{default:O(()=>[tt.value&&mt.value?(t(),s("div",zp,[e("div",jp,[e("div",Ep,[e("div",Vp,[e("div",Dp,c(mt.value.length),1),f[6]||(f[6]=e("div",{class:"text-md pl-1 lg:text-lg"},"Selected",-1))]),e("div",Op,[mt.value.length>0?(t(),s("button",{key:0,type:"button",class:"mr-2 inline-flex items-center rounded bg-blue-600 px-2 py-1 text-sm font-medium text-blue-100 hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2",onClick:f[0]||(f[0]=j=>qt.value=!0)}," Update Trees ")):m("",!0),e("button",{type:"button",class:"inline-flex items-center rounded bg-slate-600 px-2 py-1 text-sm font-medium text-slate-100 hover:bg-slate-700 focus:outline-none focus:ring-2 focus:ring-slate-500 focus:ring-offset-2",onClick:f[1]||(f[1]=j=>bl())}," Cancel ")])])])])):m("",!0)]),_:1}),y(nv,{"show-modal":qt.value,"onUpdate:showModal":f[2]||(f[2]=j=>qt.value=j),"selected-features":mt.value,"update-callback":fl},null,8,["show-modal","selected-features"]),y(ca,{show:$(n),"confirm-text":"Yes, Close","cancel-text":"Cancel","show-confirm":!0,"show-cancel":!0,"confirm-type":"warning",onConfirm:$(F),onCancel:$(ie)},null,8,["show","onConfirm","onCancel"]),y(Nl,{"editing-mode":Ut.value,"saving-edits":$(hs),onSave:f[3]||(f[3]=j=>ys()),onExit:f[4]||(f[4]=j=>ws())},null,8,["editing-mode","saving-edits"])]))}});
1export{$g as default};
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.