PageSourceSearch

https://globalvacationrentals.com/_nuxt/Csf24wwl.js

js globalvacationrentals.com collected 2026-10-10 01:15:20 UTC 2,722 bytes, 1 lines download raw bytes

1import{p as S,am as T,w as B,R as L,o as a,B as D,a as t,J as R,K as $,q as n,i as F,c as l,y as N,t as V,x as p,F as j,Z as q,r as f,g as A,_ as I}from"./DVhzBP7E.js";import{a as h}from"./DEFnNpaM.js";import{f as P}from"./Bd3WxZLs.js";const U={class:"ct-sheet"},E={class:"ct-header"},G={class:"ct-search-wrap"},J={class:"ct-list"},K={key:0,class:"ct-empty"},O={key:1,class:"ct-empty"},W=["disabled","onClick"],Z={class:"ct-row-name"},z={class:"ct-row-meta"},H=S({__name:"ConversionTestModal",emits:["close","started"],async setup(Q,{emit:v}){let r,m;const c=v,{conversionTestMode:y}=T(),i=f(""),d=f(!1),{data:k,status:b}=([r,m]=B(()=>L("/api/admin/properties",{default:()=>[]},"$0gkfWG7eus")),r=await r,m(),r),_=A(()=>{const o=i.value.trim().toLowerCase(),e=k.value||[];return o?e.filter(s=>s.name.toLowerCase().includes(o)||s.id.includes(o)).slice(0,50):e.slice(0,50)});function g(o){if(d.value)return;d.value=!0,y.value=!0;const e=h(new Date,30),s=h(e,2),u=x=>P(x,"MM/dd/yyyy"),C=Math.min(2,o.max_occupants||2),M=`/book/?${new URLSearchParams({unit_id:o.id,startdate:u(e),enddate:u(s),occupants:String(C),conversion_test:"1"}).toString()}`;window.open(M,"_blank","noopener"),c("started"),c("close")}function w(o){o.target===o.currentTarget&&c("close")}return(o,e)=>(a(),D(q,{to:"body"},[t("div",{class:"ct-scrim",role:"dialog","aria-modal":"true","aria-labelledby":"ct-title",onClick:w},[t("div",U,[t("div",E,[e[3]||(e[3]=t("div",null,[t("h2",{id:"ct-title",class:"ct-title"},"Run conversion test"),t("p",{class:"ct-sub"},"Pick a property — opens a fresh /book/ tab with dummy guest data, dates 30 days out, and a random < $2 Stripe charge. Real Streamline reservation, tagged for ops cleanup. Clearable from /admin.")],-1)),t("button",{type:"button",class:"ct-close gvr-close-control","aria-label":"Close",onClick:e[0]||(e[0]=s=>c("close"))},[...e[2]||(e[2]=[t("svg",{class:"w-4 h-4",fill:"none",stroke:"currentColor","stroke-width":"2",viewBox:"0 0 24 24"},[t("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})],-1)])])]),t("div",G,[R(t("input",{"onUpdate:modelValue":e[1]||(e[1]=s=>F(i)?i.value=s:null),type:"search",placeholder:"Search by name or ID…",class:"ct-search",autofocus:""},null,512),[[$,n(i)]])]),t("div",J,[n(b)==="pending"?(a(),l("p",K,"Loading properties…")):n(_).length===0?(a(),l("p",O,"No properties match.")):N("",!0),(a(!0),l(j,null,V(n(_),s=>(a(),l("button",{key:s.id,type:"button",class:"ct-row",disabled:n(d),onClick:u=>g(s)},[t("span",Z,p(s.name),1),t("span",z,"#"+p(s.id)+" · sleeps "+p(s.max_occupants),1)],8,W))),128))])])])]))}}),se=Object.assign(I(H,[["__scopeId","data-v-fbb34d43"]]),{__name:"AdminConversionTestModal"});export{se 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.