@cloudparse/up-miniapps-sdk 0.5.6 → 0.5.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.browser.min.js +1 -1
- package/dist/index.browser.min.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/style.css +0 -12
- package/package.json +4 -4
|
@@ -857,7 +857,7 @@ ${new this._window.XMLSerializer().serializeToString(Z)}`;return typeof Blob>"u"
|
|
|
857
857
|
.no-scrollbar::-webkit-scrollbar {
|
|
858
858
|
display: none;
|
|
859
859
|
}
|
|
860
|
-
`}),(0,aa.jsx)("div",{className:`absolute inset-0 bg-black/45 backdrop-blur-[1px] transition-opacity duration-300 z-30 ${Me}`,onClick:()=>u("closed")}),d==="left"?(0,aa.jsxs)(aa.Fragment,{children:[r==="closed"&&(0,aa.jsx)(Ya,{className:"absolute top-4 left-4 z-40 w-12 h-12 rounded-full bg-zinc-950/80 backdrop-blur-md border border-white/10 shadow-lg flex items-center justify-center text-white active:scale-95 transition-all cursor-pointer hover:bg-zinc-900 hover:text-white p-0!",onClick:()=>u("full"),variant:"ghost",children:(0,aa.jsxs)("svg",{fill:"none",height:"24",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg",children:[(0,aa.jsx)("line",{x1:"4",x2:"20",y1:"12",y2:"12"}),(0,aa.jsx)("line",{x1:"4",x2:"20",y1:"6",y2:"6"}),(0,aa.jsx)("line",{x1:"4",x2:"20",y1:"18",y2:"18"})]})}),(0,aa.jsx)(YE,{onOpenChange:gt=>u(gt?"full":"closed"),open:r!=="closed",children:(0,aa.jsxs)(xv,{className:"w-80 bg-zinc-950/85 backdrop-blur-md border-r border-y border-white/10 rounded-r-2xl shadow-2xl p-4 text-white flex flex-col h-full overflow-hidden",portal:!1,side:"left",children:[(0,aa.jsx)(pv,{className:"pb-3 border-b border-white/10 mb-2 text-left",children:(0,aa.jsx)(mv,{className:"text-sm font-bold tracking-wider text-zinc-400 uppercase",children:"Menu"})}),(0,aa.jsx)("div",{className:"flex-1 overflow-y-auto no-scrollbar pr-2",onScroll:ne,ref:X,children:ue||(0,aa.jsx)("div",{className:"flex flex-col gap-1.5",children:t.map(gt=>(0,aa.jsxs)(Ya,{className:`flex items-center gap-3 w-full py-3 px-3.5 rounded-xl text-left cursor-pointer transition-all duration-150 justify-start hover:bg-white/5 hover:text-white active:bg-white/10 text-white ${gt.disabled?"opacity-45 cursor-not-allowed pointer-events-none":""}`,disabled:gt.disabled,onClick:()=>{gt.disabled||(gt.onPress(),u("closed"))},variant:"ghost",children:[(0,aa.jsxs)("div",{className:"relative flex items-center justify-center w-8 h-8 rounded-lg bg-white/5 text-zinc-300",children:[gt.icon,gt.badge!==void 0&&(0,aa.jsx)("span",{className:"absolute -top-1 -right-1 bg-cyan-500 text-black text-[9px] font-extrabold min-w-[15px] h-3.5 rounded-full flex items-center justify-center px-1 border border-zinc-950 shadow",children:gt.badge})]}),(0,aa.jsx)("span",{className:"text-sm font-medium tracking-wide flex-1",children:gt.label})]},gt.id))})}),le&&Z&&(0,aa.jsx)(Ya,{className:"absolute bottom-6 right-6 z-50 flex items-center justify-center w-10 h-10 rounded-full bg-cyan-500 hover:bg-cyan-400 active:scale-95 text-black hover:text-black shadow-lg shadow-cyan-500/25 transition-all duration-200 cursor-pointer p-0!",onClick:()=>{X.current?.scrollTo({behavior:"smooth",top:0})},variant:"ghost",children:(0,aa.jsx)("svg",{fill:"none",height:"20",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2.5",viewBox:"0 0 24 24",width:"20",xmlns:"http://www.w3.org/2000/svg",children:(0,aa.jsx)("polyline",{points:"18 15 12 9 6 15"})})})]})})]}):(0,aa.jsxs)("div",{className:`absolute w-full bg-zinc-950/85 backdrop-blur-md border border-white/10 rounded-t-2xl shadow-2xl flex flex-col z-40 select-none ${K?"transition-none":"transition-transform duration-300 ease-out"}`,ref:ie,style:{bottom:"0px",height:`${r==="auto"?Math.max(Ze,Xt):Ze}px`,marginBottom:r==="closed"?`${Fe.bottom}px`:"0px",transform:Vt(),transition:K?"none":"transform 300ms ease-out, height 300ms ease-out, margin-bottom 250ms ease-in-out"},children:[j&&(0,aa.jsx)("div",{className:"w-full h-8 flex flex-col items-center justify-center cursor-pointer hover:bg-white/5 rounded-t-2xl transition-colors border-b border-white/5",onClick:()=>{We.current||Ae()},ref:Ce,children:(0,aa.jsx)("div",{className:"w-12 h-1 bg-white/25 rounded-full"})}),(0,aa.jsxs)("div",{className:"flex-1 flex flex-col overflow-hidden px-4 pb-4 pt-2 transition-[margin-top] duration-250 ease-in-out relative",ref:Pe,style:{marginTop:r==="closed"?`${Fe.bottom}px`:"0px"},children:[(0,aa.jsx)("div",{className:"flex-1 overflow-y-auto no-scrollbar",onScroll:ne,ref:X,style:{paddingBottom:r==="peek"?`${bt}px`:"0px"},children:ue||(0,aa.jsx)("div",{className:"flex flex-col gap-1",children:t.map(gt=>(0,aa.jsxs)(Ya,{className:`flex items-center gap-3 w-full py-3 px-3.5 rounded-xl text-left cursor-pointer transition-all duration-150 justify-start hover:bg-white/5 hover:text-white active:bg-white/10 text-white ${gt.disabled?"opacity-45 cursor-not-allowed pointer-events-none":""}`,disabled:gt.disabled,onClick:()=>{gt.disabled||(gt.onPress(),u("closed"))},variant:"ghost",children:[(0,aa.jsxs)("div",{className:"relative flex items-center justify-center w-8 h-8 rounded-lg bg-white/5 text-zinc-300",children:[gt.icon,gt.badge!==void 0&&(0,aa.jsx)("span",{className:"absolute -top-1 -right-1 bg-cyan-500 text-black text-[9px] font-extrabold min-w-[15px] h-3.5 rounded-full flex items-center justify-center px-1 border border-zinc-950 shadow",children:gt.badge})]}),(0,aa.jsx)("span",{className:"text-sm font-medium tracking-wide",children:gt.label})]},gt.id))})}),le&&Z&&(0,aa.jsx)(Ya,{className:"absolute right-6 z-50 flex items-center justify-center w-10 h-10 rounded-full bg-cyan-500 hover:bg-cyan-400 active:scale-95 text-black hover:text-black shadow-lg shadow-cyan-500/25 transition-all duration-200 cursor-pointer p-0!",onClick:()=>{X.current?.scrollTo({behavior:"smooth",top:0})},style:{bottom:r==="peek"?`calc(${24+bt}px + var(--drag-offset, 0px))`:"calc(24px + var(--drag-offset, 0px))"},variant:"ghost",children:(0,aa.jsx)("svg",{fill:"none",height:"20",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2.5",viewBox:"0 0 24 24",width:"20",xmlns:"http://www.w3.org/2000/svg",children:(0,aa.jsx)("polyline",{points:"18 15 12 9 6 15"})})})]})]})]})});var hc=et(Et(),1),xc=et(Zt(),1),eg=hc.forwardRef(({className:t,...r},u)=>(0,xc.jsx)("div",{className:zo("rounded-lg border bg-card text-card-foreground shadow-sm",t),ref:u,...r}));eg.displayName="Card";var ZL=hc.forwardRef(({className:t,...r},u)=>(0,xc.jsx)("div",{className:zo("flex flex-col space-y-1.5 p-6",t),ref:u,...r}));ZL.displayName="CardHeader";var XL=hc.forwardRef(({className:t,...r},u)=>(0,xc.jsx)("div",{className:zo("text-2xl font-semibold leading-none tracking-tight",t),ref:u,...r}));XL.displayName="CardTitle";var WL=hc.forwardRef(({className:t,...r},u)=>(0,xc.jsx)("div",{className:zo("text-sm text-muted-foreground",t),ref:u,...r}));WL.displayName="CardDescription";var tg=hc.forwardRef(({className:t,...r},u)=>(0,xc.jsx)("div",{className:zo("p-6 pt-0",t),ref:u,...r}));tg.displayName="CardContent";var KL=hc.forwardRef(({className:t,...r},u)=>(0,xc.jsx)("div",{className:zo("flex items-center p-6 pt-0",t),ref:u,...r}));KL.displayName="CardFooter";var Lt=et(Zt(),1),$E=({etaData:t,layoutMode:r,onHeaderClick:u,style:d,isDragging:x=!1})=>r==="closed-banner"?(0,Lt.jsxs)("div",{className:"w-full h-10 flex items-center justify-between px-4 pb-2 pt-1 border-b border-white/5 bg-zinc-950/15 relative overflow-hidden",children:[(0,Lt.jsxs)("div",{className:"flex items-center gap-2 cursor-pointer flex-1",onClick:u,children:[(0,Lt.jsx)("span",{className:"w-2 h-2 rounded-full bg-emerald-500 animate-pulse"}),(0,Lt.jsxs)("span",{className:"text-xs font-bold text-emerald-400",children:[t.etaMins," min (",t.distanceRemainingKm.toFixed(1)," km)"]})]}),t.onAbort&&(0,Lt.jsx)(Ya,{className:"px-1 py-1 text-[10px] font-black bg-red-500/20 text-red-400 hover:bg-red-500/30 border border-red-500/25 active:scale-95 rounded-md transition-all cursor-pointer pointer-events-auto h-auto p-0!",onClick:s=>{s.stopPropagation(),t.onAbort?.()},variant:"ghost",children:(0,Lt.jsxs)("svg",{className:"lucide lucide-x",fill:"none",height:"18",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2.5",viewBox:"0 0 24 24",width:"18",xmlns:"http://www.w3.org/2000/svg",children:[(0,Lt.jsx)("path",{d:"M18 6 6 18"}),(0,Lt.jsx)("path",{d:"m6 6 12 12"})]})}),t.progress!==void 0&&(0,Lt.jsx)("div",{className:"absolute bottom-0 left-0 right-0 h-[2px] bg-white/5",children:(0,Lt.jsx)("div",{className:"h-full bg-cyan-400",style:{width:`${t.progress}%`}})})]}):r==="open-card"?(0,Lt.jsxs)(eg,{className:"mx-4 mt-2 p-4 bg-white/5 border border-white/10 rounded-xl flex flex-col text-card-foreground",children:[(0,Lt.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,Lt.jsxs)("div",{className:"flex items-center gap-2",children:[(0,Lt.jsx)("span",{className:"w-2 h-2 rounded-full bg-emerald-500 animate-pulse"}),(0,Lt.jsx)("span",{className:"text-[10px] font-bold text-emerald-400 uppercase tracking-wider",children:t.label||"Journey Active"})]}),t.onAbort&&(0,Lt.jsx)(Ya,{className:"px-1 py-1 text-xs font-bold bg-red-500/20 text-red-400 hover:bg-red-500/30 border border-red-500/30 active:scale-95 rounded-lg transition-all cursor-pointer pointer-events-auto h-auto p-0!",onClick:t.onAbort,variant:"ghost",children:(0,Lt.jsxs)("svg",{className:"lucide lucide-x",fill:"none",height:"18",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2.5",viewBox:"0 0 24 24",width:"18",xmlns:"http://www.w3.org/2000/svg",children:[(0,Lt.jsx)("path",{d:"M18 6 6 18"}),(0,Lt.jsx)("path",{d:"m6 6 12 12"})]})})]}),(0,Lt.jsxs)(tg,{className:"p-0 flex flex-col",children:[(0,Lt.jsxs)("div",{className:"grid grid-cols-2 divide-x divide-white/10 py-1.5 mb-2.5",children:[(0,Lt.jsxs)("div",{className:"text-center",children:[(0,Lt.jsxs)("div",{className:"text-xl font-black text-white leading-none",children:[t.etaMins,(0,Lt.jsx)("span",{className:"text-xs text-zinc-400 font-normal",children:" min"})]}),(0,Lt.jsx)("div",{className:"text-[8px] text-zinc-500 font-bold uppercase tracking-wider mt-1",children:"Time Remaining"})]}),(0,Lt.jsxs)("div",{className:"text-center",children:[(0,Lt.jsxs)("div",{className:"text-xl font-black text-white leading-none",children:[t.distanceRemainingKm.toFixed(1),(0,Lt.jsx)("span",{className:"text-xs text-zinc-400 font-normal",children:" km"})]}),(0,Lt.jsx)("div",{className:"text-[8px] text-zinc-500 font-bold uppercase tracking-wider mt-1",children:"Distance Remaining"})]})]}),t.progress!==void 0&&(0,Lt.jsxs)("div",{className:"mb-3",children:[(0,Lt.jsxs)("div",{className:"flex justify-between text-[9px] font-bold text-zinc-400 mb-1",children:[(0,Lt.jsx)("span",{children:"Progress"}),(0,Lt.jsxs)("span",{children:[Math.round(t.progress),"%"]})]}),(0,Lt.jsx)("div",{className:"h-1 bg-white/10 rounded-full overflow-hidden",children:(0,Lt.jsx)("div",{className:"h-full bg-cyan-400 rounded-full",style:{width:`${t.progress}%`}})})]}),t.mode==="preview"&&t.onStart&&(0,Lt.jsx)(Ya,{className:"w-full py-2.5 text-xs font-bold bg-cyan-500 text-black hover:bg-cyan-400 hover:text-black active:scale-95 rounded-lg transition-all cursor-pointer h-auto",onClick:t.onStart,variant:"ghost",children:"Start Guidance"})]})]}):(0,Lt.jsxs)(eg,{className:`absolute left-1/2 -translate-x-1/2 z-40 w-[calc(100%-2rem)] max-w-[320px] sm:max-w-[380px] bg-zinc-950/85 backdrop-blur-md border border-white/10 rounded-2xl shadow-2xl p-3 sm:p-4 flex flex-col pointer-events-auto select-none text-card-foreground ${x?"transition-none":"transition-all duration-300 ease-out"}`,style:d,children:[(0,Lt.jsxs)("div",{className:"flex items-center justify-between mb-2 sm:mb-3",children:[(0,Lt.jsxs)("div",{className:"flex items-center gap-2",children:[(0,Lt.jsx)("span",{className:"w-1.5 h-1.5 sm:w-2 sm:h-2 rounded-full bg-emerald-500 animate-pulse"}),(0,Lt.jsx)("span",{className:"text-[9px] sm:text-[10px] font-bold text-emerald-400 uppercase tracking-wider",children:t.label||"Guidance Active"})]}),t.onAbort&&(0,Lt.jsx)(Ya,{className:"px-1 py-1 text-[10px] sm:text-xs font-bold bg-red-500/20 text-red-400 hover:bg-red-500/30 border border-red-500/30 active:scale-95 rounded-lg transition-all cursor-pointer h-auto p-0!",onClick:t.onAbort,variant:"ghost",children:(0,Lt.jsxs)("svg",{className:"lucide lucide-x",fill:"none",height:"18",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2.5",viewBox:"0 0 24 24",width:"18",xmlns:"http://www.w3.org/2000/svg",children:[(0,Lt.jsx)("path",{d:"M18 6 6 18"}),(0,Lt.jsx)("path",{d:"m6 6 12 12"})]})})]}),(0,Lt.jsxs)(tg,{className:"p-0 flex flex-col",children:[(0,Lt.jsxs)("div",{className:"grid grid-cols-2 divide-x divide-white/10 py-0.5 sm:py-1 mb-2 sm:mb-3",children:[(0,Lt.jsx)("div",{className:"text-center",children:(0,Lt.jsxs)("div",{className:"text-base sm:text-lg font-black text-white leading-none",children:[t.etaMins,(0,Lt.jsxs)("span",{className:"text-[10px] sm:text-xs text-zinc-400 font-normal",children:[" ","min"]})]})}),(0,Lt.jsx)("div",{className:"text-center",children:(0,Lt.jsxs)("div",{className:"text-base sm:text-lg font-black text-white leading-none",children:[t.distanceRemainingKm.toFixed(1),(0,Lt.jsxs)("span",{className:"text-[10px] sm:text-xs text-zinc-400 font-normal",children:[" ","km"]})]})})]}),t.progress!==void 0&&(0,Lt.jsxs)("div",{children:[(0,Lt.jsxs)("div",{className:"flex justify-between text-[8px] sm:text-[9px] font-bold text-zinc-400 mb-1",children:[(0,Lt.jsx)("span",{children:"Progress"}),(0,Lt.jsxs)("span",{children:[Math.round(t.progress),"%"]})]}),(0,Lt.jsx)("div",{className:"h-1 sm:h-1.5 bg-white/10 rounded-full overflow-hidden",children:(0,Lt.jsx)("div",{className:"h-full bg-cyan-400 rounded-full",style:{width:`${t.progress}%`}})})]}),t.mode==="preview"&&t.onStart&&(0,Lt.jsx)(Ya,{className:"mt-2.5 sm:mt-3 py-1.5 sm:py-2 text-[11px] sm:text-xs font-bold bg-cyan-500 text-black hover:bg-cyan-400 hover:text-black active:scale-95 rounded-lg transition-all cursor-pointer h-auto",onClick:t.onStart,variant:"ghost",children:"Start Guidance"})]})]});var pa=et(Zt(),1),e3=({customControls:t=[],etaBarHeight:r,onRecenter:u,isMapCentered:d,mapBearing:x,mapPitch:s,onResetBearing:A,initialViewState:I,drawerState:P,side:R,etaData:K,isDragging:Y,clampedDragOffset:W,customRecenterButton:Q,customCompassButton:be,drawerPeekHeight:he,insets:ue={bottom:0,left:0,right:0,top:0},bottomOffset:J=0})=>{let j=t.filter(Ce=>Ce.position==="above-recenter"),ae=t.filter(Ce=>Ce.position==="below-recenter"),le=Math.abs(x)>=.5||Math.abs(s)>=.5,ve="32px",Fe=K?r:P==="closed"?ue.bottom:0,H=typeof he=="number"?`${he}px`:he||"15%",X=R==="bottom"?P==="closed"?`calc(${ve} + 1rem + ${Fe}px + ${J}px - var(--drag-offset, 0px))`:`calc(${H} + 1rem + ${K?r:0}px + ${J}px - var(--drag-offset, 0px))`:`calc(1rem + ${ue.bottom}px + ${J}px)`;return(0,pa.jsxs)("div",{className:`absolute right-4 z-30 flex flex-col items-center gap-3 select-none pointer-events-none ${Y?"transition-none":"transition-all duration-300 ease-out"} ${R!=="bottom"||P!=="full"?"opacity-100 scale-100 pointer-events-auto":"opacity-0 scale-75 pointer-events-none"}`,style:{bottom:X},children:[j.length>0&&(0,pa.jsx)("div",{className:"flex flex-col gap-2 pointer-events-auto",children:j.map(Ce=>(0,pa.jsxs)("div",{className:"relative group flex items-center",children:[Ce.tooltip&&(0,pa.jsx)("div",{className:"absolute right-14 pointer-events-none opacity-0 scale-95 origin-right group-hover:opacity-100 group-hover:scale-100 transition-all duration-150 bg-zinc-900/95 border border-white/10 text-white text-xs px-2.5 py-1.5 rounded-lg shadow-xl whitespace-nowrap",children:Ce.tooltip}),(0,pa.jsx)(Ya,{className:`w-12 h-12 rounded-full bg-zinc-950/80 backdrop-blur-md border border-white/10 shadow-lg flex items-center justify-center text-white active:scale-95 transition-all cursor-pointer p-0! hover:bg-zinc-900 hover:text-white ${Ce.activeState?"ring-2 ring-cyan-400 ring-offset-2 ring-offset-zinc-950":""}`,onClick:Ce.onPress,variant:"ghost",children:Ce.icon})]},Ce.id))}),le&&(be?(0,pa.jsx)("div",{className:"pointer-events-auto",children:be}):(0,pa.jsx)("div",{className:"pointer-events-auto",children:(0,pa.jsx)(Ya,{className:`w-12 h-12 rounded-full bg-zinc-950/80 backdrop-blur-md border border-white/10 shadow-lg flex items-center justify-center text-white active:scale-95 transition-all duration-300 p-0! hover:bg-zinc-900 hover:text-white ${le?"opacity-100 pointer-events-auto":"opacity-0 pointer-events-none h-0 w-0 border-none m-0 p-0 overflow-hidden"}`,onClick:()=>A({pitch:I?.pitch??0}),style:{transform:le?"scale(1) rotate(0deg)":"scale(0.7) rotate(0deg)"},title:"Reset bearing to North",variant:"ghost",children:(0,pa.jsxs)("svg",{className:"w-7 h-7 transition-transform duration-75 ease-out",fill:"none",style:{transform:`rotate(${-x}deg)`},viewBox:"0 0 24 24",children:[(0,pa.jsx)("circle",{cx:"12",cy:"12",r:"9.5",stroke:"white",strokeOpacity:"0.2",strokeWidth:"1"}),(0,pa.jsx)("path",{d:"M12 4.5L15 12H9L12 4.5Z",fill:"#ef4444"}),(0,pa.jsx)("path",{d:"M12 19.5L9 12H15L12 19.5Z",fill:"#f4f4f5"}),(0,pa.jsx)("circle",{cx:"12",cy:"12",fill:"#18181b",r:"1.5"})]})})})),Q?(0,pa.jsx)("div",{className:"pointer-events-auto",children:Q}):(0,pa.jsx)("div",{className:"pointer-events-auto",children:(0,pa.jsx)(Ya,{className:`w-12 h-12 rounded-full bg-zinc-950/80 backdrop-blur-md border border-white/10 shadow-lg flex items-center justify-center text-white active:scale-95 transition-all cursor-pointer p-0! hover:bg-zinc-900 hover:text-white ${d?"ring-2 ring-cyan-400 ring-offset-2 ring-offset-zinc-950":""}`,onClick:()=>u(),title:"Recenter Map",variant:"ghost",children:d?(0,pa.jsxs)("svg",{className:"w-6 h-6 text-cyan-400",fill:"none",stroke:"currentColor",strokeWidth:"2.2",viewBox:"0 0 24 24",children:[(0,pa.jsx)("circle",{cx:"12",cy:"12",r:"8"}),(0,pa.jsx)("circle",{cx:"12",cy:"12",fill:"currentColor",r:"3"}),(0,pa.jsx)("line",{x1:"12",x2:"12",y1:"2",y2:"4"}),(0,pa.jsx)("line",{x1:"12",x2:"12",y1:"20",y2:"22"}),(0,pa.jsx)("line",{x1:"2",x2:"4",y1:"12",y2:"12"}),(0,pa.jsx)("line",{x1:"20",x2:"22",y1:"12",y2:"12"})]}):(0,pa.jsxs)("svg",{className:"w-6 h-6 text-zinc-300",fill:"none",stroke:"currentColor",strokeWidth:"2",viewBox:"0 0 24 24",children:[(0,pa.jsx)("circle",{cx:"12",cy:"12",r:"8"}),(0,pa.jsx)("line",{x1:"12",x2:"12",y1:"2",y2:"4"}),(0,pa.jsx)("line",{x1:"12",x2:"12",y1:"20",y2:"22"}),(0,pa.jsx)("line",{x1:"2",x2:"4",y1:"12",y2:"12"}),(0,pa.jsx)("line",{x1:"20",x2:"22",y1:"12",y2:"12"})]})})}),ae.length>0&&(0,pa.jsx)("div",{className:"flex flex-col gap-2 pointer-events-auto",children:ae.map(Ce=>(0,pa.jsxs)("div",{className:"relative group flex items-center",children:[Ce.tooltip&&(0,pa.jsx)("div",{className:"absolute right-14 pointer-events-none opacity-0 scale-95 origin-right group-hover:opacity-100 group-hover:scale-100 transition-all duration-150 bg-zinc-900/95 border border-white/10 text-white text-xs px-2.5 py-1.5 rounded-lg shadow-xl whitespace-nowrap",children:Ce.tooltip}),(0,pa.jsx)(Ya,{className:`w-12 h-12 rounded-full bg-zinc-950/80 backdrop-blur-md border border-white/10 shadow-lg flex items-center justify-center text-white active:scale-95 transition-all cursor-pointer p-0! hover:bg-zinc-900 hover:text-white ${Ce.activeState?"ring-2 ring-cyan-400 ring-offset-2 ring-offset-zinc-950":""}`,onClick:Ce.onPress,variant:"ghost",children:Ce.icon})]},Ce.id))})]})};var va=et(Et(),1),t3=et(Zt(),1),Kn=(0,va.createContext)(null),yv=({children:t})=>{let[r,u]=(0,va.useState)(!0),[d,x]=(0,va.useState)(0),[s,A]=(0,va.useState)(0),[I,P]=(0,va.useState)("closed"),R=(0,va.useRef)(null),K=(0,va.useCallback)(ee=>{P(ee)},[]),[Y,W]=(0,va.useState)(!0),Q=(0,va.useCallback)(ee=>{W(pe=>pe===ee?pe:ee)},[]),[be,he]=(0,va.useState)(!1),ue=(0,va.useCallback)(ee=>{he(pe=>pe===ee?pe:ee)},[]),[J,j]=(0,va.useState)(void 0),ae=(0,va.useCallback)(ee=>{j(pe=>!pe&&!ee?pe:!pe||!ee?ee:pe.etaMins===ee.etaMins&&pe.distanceRemainingKm===ee.distanceRemainingKm&&pe.label===ee.label&&pe.progress===ee.progress&&pe.mode===ee.mode&&pe.isCalculating===ee.isCalculating&&pe.error===ee.error?pe:ee)},[]),[le,ve]=(0,va.useState)({bottom:0,left:0,right:0,top:0}),Fe=(0,va.useCallback)(ee=>{ve(pe=>({...pe,...ee}))},[]),H=(0,va.useRef)(null),X=(0,va.useRef)(null),ie=(0,va.useRef)(null),Ce=(0,va.useCallback)(ee=>{H.current&&H.current(ee)},[]),Pe=(0,va.useCallback)(ee=>{X.current&&X.current(ee)},[]),Ae=(0,va.useCallback)((ee,pe)=>{ie.current&&ie.current(ee,pe)},[]),Ee=(0,va.useCallback)(ee=>{H.current=ee},[]),we=(0,va.useCallback)(ee=>{X.current=ee},[]),V=(0,va.useCallback)(ee=>{ie.current=ee},[]),Z=(0,va.useCallback)(ee=>{x(ee)},[]),re=(0,va.useCallback)(ee=>{A(ee)},[]),ne=(0,va.useMemo)(()=>({_registerCenterCallback:Ee,_registerFlyToCallback:V,_registerResetBearingCallback:we,bearing:d,centerOnUser:Ce,drawerContentRef:R,drawerHandleVisible:Y,drawerState:I,etaData:J,flyTo:Ae,hasControls:be,insets:le,isFollowing:r,pitch:s,resetBearing:Pe,setBearing:Z,setDrawerHandleVisible:Q,setDrawerState:K,setEtaData:ae,setHasControls:ue,setInsets:Fe,setIsFollowing:u,setPitch:re}),[Ee,V,we,d,Ce,Y,I,J,Ae,be,r,s,Pe,Z,Q,K,ae,ue,re,le,Fe]);return(0,t3.jsx)(Kn.Provider,{value:ne,children:t})},YL=()=>{let t=(0,va.useContext)(Kn);if(!t)throw new Error("useMapControls must be used within a MapControlsProvider");return t};var Jr=et(Et(),1),Os=et(Zt(),1),vv=(t,r)=>typeof t=="number"?t:t.endsWith("%")?parseFloat(t)/100*r:parseFloat(t),_v=({menuItems:t=[],drawerSide:r,customControls:u=[],etaBarHeight:d=100,onRecenter:x,isMapCentered:s,mapBearing:A,onResetBearing:I,etaData:P,customRecenterButton:R,defaultState:K,initialViewState:Y,customCompassButton:W,drawerPeekHeight:Q,drawerFullHeight:be,drawerAutoMaxHeight:he,drawerContentRef:ue,menuContent:J,children:j,enableTouchDrag:ae=!1,showScrollToTopButton:le=!0,scrollToTopThreshold:ve=300,controlsBottomOffset:Fe=0,isInternal:H=!1})=>{let X=(0,Jr.useContext)(Kn),ie=X?.drawerContentRef,Ce=(0,Jr.useCallback)(wt=>{ue&&(typeof ue=="function"?ue(wt):ue.current=wt),ie&&(ie.current=wt)},[ue,ie]),[Pe,Ae]=(0,Jr.useState)(K??"closed"),Ee=X?X.drawerState:Pe,we=(0,Jr.useCallback)(wt=>{X?X.setDrawerState(wt):Ae(wt)},[X]);(0,Jr.useEffect)(()=>{K&&X&&X.setDrawerState(K)},[]);let[V,Z]=(0,Jr.useState)("left"),re=(0,Jr.useRef)(null),[ne,ee]=(0,Jr.useState)(600);(0,Jr.useEffect)(()=>{let wt=re.current?.parentElement;if(!wt)return;let Kt=()=>{ee(wt.getBoundingClientRect().height)};Kt();let na=new ResizeObserver(Kt);return na.observe(wt),()=>{na.disconnect()}},[]);let pe=X?.setHasControls;(0,Jr.useEffect)(()=>{if(pe&&!H)return pe(!0),()=>pe(!1)},[pe,H]);let Ke=s!==void 0?s:X?X.isFollowing:!0,Ue=A!==void 0?A:X?X.bearing:0,We=wt=>{x?x(wt):X&&X.centerOnUser(wt)},Ve=wt=>{I?I(wt):X&&X.resetBearing(wt)},qe=X?X.pitch:0,Ge=P!==void 0?P:X?.etaData,[tt,yt]=(0,Jr.useState)(null),[it,Le]=(0,Jr.useState)(null),[Te,Me]=(0,Jr.useState)(0);(0,Jr.useEffect)(()=>{if(typeof window>"u")return;let wt=()=>{r?Z(r):window.innerWidth<768?Z("bottom"):Z("left")};return wt(),window.addEventListener("resize",wt),()=>window.removeEventListener("resize",wt)},[r]);let ze=tt!==null&&it!==null,Ze=ze?it-tt:0,nt=vv(be||"85%",ne),mt=vv(Q||"15%",ne),bt=vv(he||"100%",ne),Xt=Math.min(bt,Te),It=X?.insets.bottom||0,Vt=X?X.drawerHandleVisible:!0,gt=(Vt?32:0)+(Ee==="closed"?It:0),Pt=Ze;Ee==="full"?Pt=Math.max(0,Math.min(nt-gt,Ze)):Ee==="peek"?Pt=Math.max(-(nt-mt),Math.min(mt-gt,Ze)):Ee==="closed"?Pt=Math.min(0,Math.max(-(nt-gt),Ze)):Ee==="auto"&&(Pt=Math.max(0,Ze));let Rt=Vt?32:0;Ee==="peek"?Rt=mt:Ee==="full"?Rt=nt:Ee==="auto"&&(Rt=Xt);let kt=Rt-Pt,St=mt+20,Ot=mt+(nt-mt)*.35,jt=1,vt="1rem";return V==="bottom"?(kt<=St?jt=1:kt>=Ot?jt=0:jt=1-(kt-St)/(Ot-St),vt=`calc(${Rt+(Ee==="closed"?It:0)+16}px - var(--drag-offset, 0px))`):(jt=Ee==="full"?0:1,vt=`calc(1rem + ${It}px)`),(0,Os.jsxs)(Os.Fragment,{children:[(0,Os.jsx)("div",{ref:re,style:{display:"none"}}),(0,Os.jsx)(JE,{clampedDragOffset:Pt,containerHeight:ne,currentTouchY:it,drawerAutoMaxHeight:he,drawerFullHeight:be,drawerPeekHeight:Q,enableTouchDrag:ae,etaBarHeight:d,etaData:Ge,handleVisible:Vt,isDragging:ze,menuContent:j||J,menuItems:t,onAutoContentHeightChange:Me,onChangeState:we,ref:Ce,safeAreaInsets:X?.insets,scrollToTopThreshold:ve,setCurrentTouchY:Le,setTouchStartY:yt,showScrollToTopButton:le,side:V,state:Ee,touchStartY:tt}),(0,Os.jsx)(e3,{bottomOffset:Fe,clampedDragOffset:Pt,customCompassButton:W,customControls:u,customRecenterButton:R,drawerPeekHeight:Q,drawerState:Ee,etaBarHeight:d+(Ee==="closed"?It:0),etaData:Ge,initialViewState:Y,insets:X?.insets,isDragging:ze,isMapCentered:Ke,mapBearing:Ue,mapPitch:qe,onRecenter:()=>We(),onResetBearing:Ve,side:V}),Ge&&(0,Os.jsx)($E,{etaData:Ge,isDragging:ze,layoutMode:"floating-card",style:{bottom:vt,opacity:jt,pointerEvents:jt>.1?"auto":"none",transition:ze?"none":"bottom 250ms ease-in-out, opacity 300ms ease-out"}})]})};var a3=et(Et(),1),Dn=et(Zt(),1),zh=({children:t})=>(0,Dn.jsx)("div",{className:"flex flex-col gap-1.5",children:t}),ag=({id:t,label:r,icon:u,onPress:d,badge:x,disabled:s=!1,children:A})=>{let I=(0,a3.useContext)(Kn);return(0,Dn.jsxs)("button",{className:`flex items-center gap-3 w-full py-3 px-3.5 rounded-xl text-left cursor-pointer transition-all duration-150 ${s?"opacity-45 cursor-not-allowed pointer-events-none":"hover:bg-white/5 active:bg-white/10 text-white"}`,disabled:s,onClick:R=>{s||(d&&d(),I&&I.setDrawerState&&I.setDrawerState("closed"))},type:"button",children:[u&&(0,Dn.jsxs)("div",{className:"relative flex items-center justify-center w-8 h-8 rounded-lg bg-white/5 text-zinc-300",children:[u,x!==void 0&&(0,Dn.jsx)("span",{className:"absolute -top-1 -right-1 bg-cyan-500 text-black text-[9px] font-extrabold min-w-[15px] h-3.5 rounded-full flex items-center justify-center px-1 border border-zinc-950 shadow",children:x})]}),(0,Dn.jsxs)("div",{className:"flex-1 flex flex-col justify-center",children:[(0,Dn.jsx)("span",{className:"text-sm font-medium tracking-wide flex-1",children:r}),A]})]})};zh.displayName="MapMenu";ag.displayName="MapMenuItem";var rg=({children:t,showDivider:r=!0,className:u=""})=>(0,Dn.jsx)("div",{className:`flex items-center justify-between pb-3 first:mt-0 px-3.5 ${u} ${r?"border-b border-white/10 mb-2 mt-4":""}`,children:t});rg.displayName="MapMenuTitle";var og=({className:t=""})=>(0,Dn.jsx)("div",{className:`h-[1px] bg-white/10 my-3 mx-3.5 ${t}`});og.displayName="MapMenuDivider";var ig=({children:t,className:r=""})=>(0,Dn.jsx)("div",{className:`mt-auto pt-4 border-t border-white/10 px-3.5 text-xs text-zinc-500 font-medium ${r}`,children:t});ig.displayName="MapMenuFooter";var r3=(d=>(d.TOP_SCROLL_MORE="TOP_SCROLL_MORE",d.BOTTOM_SCROLL_MORE="BOTTOM_SCROLL_MORE",d.BACK_GESTURE="BACK_GESTURE",d))(r3||{}),Oh=(u=>(u.LOCATION_UPDATE="LOCATION_UPDATE",u.LOCATION_STREAM_UPDATE="LOCATION_STREAM_UPDATE",u))(Oh||{}),o3=(r=>(r.UPDATE_CONTEXT="UPDATE_CONTEXT",r))(o3||{});var Ns=et(Et(),1),bv=.12,Nh=()=>{let[t,r]=(0,Ns.useState)({accuracy:null,coords:null,heading:null}),u=(0,Ns.useRef)({accuracy:null,coords:null,heading:null}),d=(0,Ns.useRef)({accuracy:null,coords:null,heading:null}),x=(0,Ns.useCallback)(s=>{let A=s.location?.coords||s.coords,I=s.heading||s.coords,P=A?[A.longitude,A.latitude]:null,R=null;return I?.trueHeading!==void 0&&I.trueHeading>=0?R=I.trueHeading:I?.magneticHeading!==void 0&&I.magneticHeading>=0?R=I.magneticHeading:I?.heading!==null&&I.heading>=0&&(R=I.heading),{accuracy:A?.accuracy||null,coords:P,heading:R}},[]);return(0,Ns.useEffect)(()=>{let s,A=()=>{let R=!1;if(u.current.coords)if(!d.current.coords)d.current.coords=[...u.current.coords],R=!0;else{let[K,Y]=u.current.coords,[W,Q]=d.current.coords,be=W+(K-W)*bv,he=Q+(Y-Q)*bv;(Math.abs(be-W)>1e-7||Math.abs(he-Q)>1e-7)&&(d.current.coords=[be,he],R=!0)}if(u.current.heading!==null)if(d.current.heading===null)d.current.heading=u.current.heading,R=!0;else{let K=u.current.heading,Y=d.current.heading,W=K-Y;W>180&&(W-=360),W<-180&&(W+=360);let be=((Y+W*bv)%360+360)%360;Math.abs(W)>.1&&(d.current.heading=be,R=!0)}R&&r({accuracy:u.current.accuracy,coords:d.current.coords?[...d.current.coords]:null,heading:d.current.heading}),s=requestAnimationFrame(A)};s=requestAnimationFrame(A),Qa.location.getCurrentPosition().then(R=>{let K=x(R);u.current=K}).catch(R=>console.warn("Initial location fetch failed",R));let I=Qa.on("LOCATION_STREAM_UPDATE",R=>{u.current=x(R)}),P=Qa.on("LOCATION_UPDATE",R=>{u.current=x(R)});return Qa.location.startStream({distanceFilter:1,headingThreshold:2}).catch(R=>console.warn("Failed to start location stream",R)),()=>{cancelAnimationFrame(s),I(),P(),Qa.location.stopStream().catch(()=>{})}},[x]),t};var vr=et(Et(),1),Cv=({origin:t,destination:r,profile:u="driving",recalculateThreshold:d=50,enabled:x=!0,initialMode:s="preview"})=>{let[A,I]=(0,vr.useState)(null),[P,R]=(0,vr.useState)(null),[K,Y]=(0,vr.useState)(!1),[W,Q]=(0,vr.useState)(null),[be,he]=(0,vr.useState)(s),ue=Nh(),J=t||ue.coords,j=ue.coords||t,ae=(0,vr.useRef)(null),le=(0,vr.useRef)(null),ve=(0,vr.useRef)(!1),Fe=(0,vr.useRef)(null),H=(0,vr.useCallback)((Ce,Pe)=>{let Ee=Ce[1]*Math.PI/180,we=Pe[1]*Math.PI/180,V=(Pe[1]-Ce[1])*Math.PI/180,Z=(Pe[0]-Ce[0])*Math.PI/180,re=Math.sin(V/2)*Math.sin(V/2)+Math.cos(Ee)*Math.cos(we)*Math.sin(Z/2)*Math.sin(Z/2);return 6371e3*(2*Math.atan2(Math.sqrt(re),Math.sqrt(1-re)))},[]),X=(0,vr.useMemo)(()=>{if(!j||!A||A.geometry.coordinates.length<2)return j&&r?H(j,r):null;let Ce=A.geometry.coordinates,Pe=1/0,Ae=0,Ee=(re,ne)=>(re[0]-ne[0])**2+(re[1]-ne[1])**2;for(let re=0;re<Ce.length;re++){let ne=Ee(j,Ce[re]);ne<Pe&&(Pe=ne,Ae=re)}let we=Ce.slice(Ae+1),V=0,Z=j;for(let re of we)V+=H(Z,re),Z=re;return V},[j,A,r,H]),ie=(0,vr.useCallback)(async(Ce,Pe,Ae)=>{if(!ve.current){ve.current=!0,Y(!0);try{let Ee=await Qa.routing.getRoute({destination:Pe,origin:Ce,profile:u});if(I(Ee),Q(null),Ae){let we=Ee.geometry.coordinates,V=0;for(let Z=0;Z<we.length-1;Z++)V+=H(we[Z],we[Z+1]);R(V)}ae.current=Ce,le.current=Pe}catch(Ee){Q(Ee.message||"Failed to fetch route")}finally{Y(!1),ve.current=!1}}},[u,H]);return(0,vr.useEffect)(()=>{s==="navigation"&&he("navigation")},[s]),(0,vr.useEffect)(()=>{if(!x||!r||!J){(!x||!r)&&(I(null),R(null),ae.current=null,le.current=null,Fe.current=null,he(s));return}let Ce=!le.current||le.current[0]!==r[0]||le.current[1]!==r[1],Pe=`${r[0]},${r[1]}`;if(Fe.current!==Pe&&(Fe.current=Pe,he(s)),Ce)ie(J,r,!0);else if(ae.current){let Ae=j||J;H(Ae,ae.current)>d&&ie(Ae,r,!1)}else ie(J,r,!0)},[J,j,r,x,s,d,ie,H]),{currentDistanceMeters:X,error:W,isCalculating:K,mode:be,recalculate:()=>J&&r&&ie(J,r,!1),route:A,start:()=>he("navigation"),totalDistance:P}},QL=(t,r,u="driving")=>{let[d,x]=(0,vr.useState)(null),[s,A]=(0,vr.useState)(!1),[I,P]=(0,vr.useState)(null);return(0,vr.useEffect)(()=>{if(!t||!r){x(null);return}(async()=>{A(!0);try{let K=await Qa.routing.getRoute({destination:r,origin:t,profile:u});x(K),P(null)}catch(K){P(K.message||"Failed to fetch route")}finally{A(!1)}})()},[t,r,u]),{error:I,isCalculating:s,route:d}};var Fi=et(Et(),1),Ev=(t={})=>{let{navigation:r,onAbort:u,onModeChange:d}=t,[x,s]=(0,Fi.useState)(null),[A,I]=(0,Fi.useState)(!1);(0,Fi.useEffect)(()=>{let H=Qa.on("SDK_NAVIGATION_CREATE",Ce=>{I(!1),s(Ce)}),X=Qa.on("SDK_NAVIGATION_START",()=>{I(!1),s(Ce=>Ce?{...Ce,mode:"navigation"}:null)}),ie=Qa.on("SDK_NAVIGATION_ABORT",()=>{I(!0),s(null)});return()=>{H(),X(),ie()}},[]);let P=x||r,R=Cv({destination:P?.destination||null,enabled:!A&&!!P?.destination,initialMode:P?.mode||"preview",origin:P?.origin,profile:P?.profile||"driving",recalculateThreshold:P?.recalculateThreshold||50}),K=(0,Fi.useRef)(null),Y=P?.destination;(0,Fi.useEffect)(()=>{Y&&(!K.current||K.current[0]!==Y[0]||K.current[1]!==Y[1])&&I(!1),K.current=Y},[Y]);let W=(0,Fi.useRef)(d);W.current=d,(0,Fi.useEffect)(()=>{W.current?.(R.mode)},[R.mode]);let Q=!A&&!!P?.destination,be=Q?R.currentDistanceMeters:null,he=Q?R.totalDistance:null,ue=R.route?.durationSeconds??null,J=be??0,j=J/1e3,ae=(()=>{if(!ue||!he||!be)return 0;let H=be/he;return Math.ceil(ue*H/60)})(),le=he&&he>0?Math.min(100,Math.max(0,(he-J)/he*100)):0,ve=(0,Fi.useCallback)(()=>{I(!0),s(null),Qa.navigation.abort(),u&&u()},[u]),Fe=(0,Fi.useCallback)(()=>{Qa.navigation.start(),R.start()},[R.start]);return{cancel:ve,distanceRemainingKm:j,distanceRemainingMeters:be,error:Q?R.error:null,etaMinutes:ae,isActive:Q,isCalculating:Q?R.isCalculating:!1,mode:Q?R.mode:"preview",progress:le,recalculate:R.recalculate,route:Q?R.route:null,start:Fe,totalDistanceMeters:he}};var i3=et(Et(),1),wv=(t,r)=>(0,i3.useMemo)(()=>{if(!t||!r||t.coordinates.length<2)return t;let u=t.coordinates,d=1/0,x=0,s=(I,P)=>(I[0]-P[0])**2+(I[1]-P[1])**2;for(let I=0;I<u.length;I++){let P=s(r,u[I]);P<d&&(d=P,x=I)}let A=u.slice(x+1);return{coordinates:[r,...A],type:"LineString"}},[t,r]);var Hl=et(Et(),1),Ii=et(Et(),1);var ng=et(Et(),1),Yn=et(Et(),1);var sg=ng.createContext(null),Av=t=>{let[r,u]=(0,Yn.useState)({}),d=(0,Yn.useCallback)((s,A="default")=>{u(I=>{if(A==="current")throw new Error("'current' cannot be used as map id");if(I[A])throw new Error(`Multiple maps with the same id: ${A}`);return{...I,[A]:s}})},[]),x=(0,Yn.useCallback)((s="default")=>{u(A=>{if(A[s]){let I={...A};return delete I[s],I}return A})},[]);return ng.createElement(sg.Provider,{value:{maps:r,onMapMount:d,onMapUnmount:x}},t.children)};function Bv(){let t=(0,Yn.useContext)(sg)?.maps,r=(0,Yn.useContext)(Li);return(0,Yn.useMemo)(()=>({...t,current:r?.map}),[t,r])}function n3(t,r){let u=Array.isArray(t)?t[0]:t?t.x:0,d=Array.isArray(t)?t[1]:t?t.y:0,x=Array.isArray(r)?r[0]:r?r.x:0,s=Array.isArray(r)?r[1]:r?r.y:0;return u===x&&d===s}function $r(t,r){if(t===r)return!0;if(!t||!r)return!1;if(Array.isArray(t)){if(!Array.isArray(r)||t.length!==r.length)return!1;for(let u=0;u<t.length;u++)if(!$r(t[u],r[u]))return!1;return!0}else if(Array.isArray(r))return!1;if(typeof t=="object"&&typeof r=="object"){let u=Object.keys(t),d=Object.keys(r);if(u.length!==d.length)return!1;for(let x of u)if(!r.hasOwnProperty(x)||!$r(t[x],r[x]))return!1;return!0}return!1}function Dv(t){return{longitude:t.center.lng,latitude:t.center.lat,zoom:t.zoom,pitch:t.pitch,bearing:t.bearing,padding:t.padding}}function Sv(t,r){let u=r.viewState||r,d={};if("longitude"in u&&"latitude"in u&&(u.longitude!==t.center.lng||u.latitude!==t.center.lat)){let x=t.center.constructor;d.center=new x(u.longitude,u.latitude)}return"zoom"in u&&u.zoom!==t.zoom&&(d.zoom=u.zoom),"bearing"in u&&u.bearing!==t.bearing&&(d.bearing=u.bearing),"pitch"in u&&u.pitch!==t.pitch&&(d.pitch=u.pitch),u.padding&&t.padding&&!$r(u.padding,t.padding)&&(d.padding=u.padding),d}var JL=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function Fv(t){if(!t)return null;if(typeof t=="string"||("toJS"in t&&(t=t.toJS()),!t.layers))return t;let r={};for(let d of t.layers)r[d.id]=d;let u=t.layers.map(d=>{let x=null;"interactive"in d&&(x=Object.assign({},d),delete x.interactive);let s=r[d.ref];if(s){x=x||Object.assign({},d),delete x.ref;for(let A of JL)A in s&&(x[A]=s[A])}return x||d});return{...t,layers:u}}var s3={version:8,sources:{},layers:[]},$L={minZoom:0,maxZoom:22,minPitch:0,maxPitch:85,maxBounds:[-180,-85.051129,180,85.051129],projection:"mercator",renderWorldCopies:!0},l3={mousedown:"onMouseDown",mouseup:"onMouseUp",mouseover:"onMouseOver",mousemove:"onMouseMove",click:"onClick",dblclick:"onDblClick",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave",mouseout:"onMouseOut",contextmenu:"onContextMenu",touchstart:"onTouchStart",touchend:"onTouchEnd",touchmove:"onTouchMove",touchcancel:"onTouchCancel"},u3={movestart:"onMoveStart",move:"onMove",moveend:"onMoveEnd",dragstart:"onDragStart",drag:"onDrag",dragend:"onDragEnd",zoomstart:"onZoomStart",zoom:"onZoom",zoomend:"onZoomEnd",rotatestart:"onRotateStart",rotate:"onRotate",rotateend:"onRotateEnd",pitchstart:"onPitchStart",pitch:"onPitch",pitchend:"onPitchEnd"},c3={wheel:"onWheel",boxzoomstart:"onBoxZoomStart",boxzoomend:"onBoxZoomEnd",boxzoomcancel:"onBoxZoomCancel",resize:"onResize",load:"onLoad",render:"onRender",idle:"onIdle",remove:"onRemove",data:"onData",styledata:"onStyleData",sourcedata:"onSourceData",error:"onError"},eI=["minZoom","maxZoom","minPitch","maxPitch","maxBounds","projection","renderWorldCopies"],tI=["scrollZoom","boxZoom","dragRotate","dragPan","keyboard","doubleClickZoom","touchZoomRotate","touchPitch"],lg=class t{constructor(r,u,d){this._map=null,this._internalUpdate=!1,this._hoveredFeatures=null,this._propsedCameraUpdate=null,this._styleComponents={},this._onEvent=x=>{let s=this.props[c3[x.type]];s?s(x):x.type==="error"&&console.error(x.error)},this._onCameraEvent=x=>{if(this._internalUpdate)return;x.viewState=this._propsedCameraUpdate||Dv(this._map.transform);let s=this.props[u3[x.type]];s&&s(x)},this._onCameraUpdate=x=>this._internalUpdate?x:(this._propsedCameraUpdate=Dv(x),Sv(x,this.props)),this._onPointerEvent=x=>{(x.type==="mousemove"||x.type==="mouseout")&&this._updateHover(x);let s=this.props[l3[x.type]];s&&(this.props.interactiveLayerIds&&x.type!=="mouseover"&&x.type!=="mouseout"&&(x.features=this._hoveredFeatures||this._queryRenderedFeatures(x.point)),s(x),delete x.features)},this._MapClass=r,this.props=u,this._initialize(d)}get map(){return this._map}setProps(r){let u=this.props;this.props=r;let d=this._updateSettings(r,u),x=this._updateSize(r),s=this._updateViewState(r);this._updateStyle(r,u),this._updateStyleComponents(r),this._updateHandlers(r,u),(d||x||s&&!this._map.isMoving())&&this.redraw()}static reuse(r,u){let d=t.savedMaps.pop();if(!d)return null;let x=d.map,s=x.getContainer();for(u.className=s.className;s.childNodes.length>0;)u.appendChild(s.childNodes[0]);x._container=u;let A=x._resizeObserver;A&&(A.disconnect(),A.observe(u)),d.setProps({...r,styleDiffing:!1}),x.resize();let{initialViewState:I}=r;return I&&(I.bounds?x.fitBounds(I.bounds,{...I.fitBoundsOptions,duration:0}):d._updateViewState(I)),x.isStyleLoaded()?x.fire("load"):x.once("style.load",()=>x.fire("load")),x._update(),d}_initialize(r){let{props:u}=this,{mapStyle:d=s3}=u,x={...u,...u.initialViewState,container:r,style:Fv(d)},s=x.initialViewState||x.viewState||x;if(Object.assign(x,{center:[s.longitude||0,s.latitude||0],zoom:s.zoom||0,pitch:s.pitch||0,bearing:s.bearing||0}),u.gl){let I=HTMLCanvasElement.prototype.getContext;HTMLCanvasElement.prototype.getContext=()=>(HTMLCanvasElement.prototype.getContext=I,u.gl)}let A=new this._MapClass(x);s.padding&&A.setPadding(s.padding),u.cursor&&(A.getCanvas().style.cursor=u.cursor),A.transformCameraUpdate=this._onCameraUpdate,A.on("style.load",()=>{this._styleComponents={light:A.getLight(),sky:A.getSky(),projection:A.getProjection?.(),terrain:A.getTerrain()},this._updateStyleComponents(this.props)}),A.on("sourcedata",()=>{this._updateStyleComponents(this.props)});for(let I in l3)A.on(I,this._onPointerEvent);for(let I in u3)A.on(I,this._onCameraEvent);for(let I in c3)A.on(I,this._onEvent);this._map=A}recycle(){this.map.getContainer().querySelector("[mapboxgl-children]")?.remove(),t.savedMaps.push(this)}destroy(){this._map.remove()}redraw(){let r=this._map;r.style&&(r._frame&&(r._frame.cancel(),r._frame=null),r._render())}_updateSize(r){let{viewState:u}=r;if(u){let d=this._map;if(u.width!==d.transform.width||u.height!==d.transform.height)return d.resize(),!0}return!1}_updateViewState(r){let u=this._map,d=u.transform;if(!u.isMoving()){let s=Sv(d,r);if(Object.keys(s).length>0)return this._internalUpdate=!0,u.jumpTo(s),this._internalUpdate=!1,!0}return!1}_updateSettings(r,u){let d=this._map,x=!1;for(let s of eI)if((s in r||s in u)&&!$r(r[s],u[s])){x=!0;let I=s in r?r[s]:$L[s];d[`set${s[0].toUpperCase()}${s.slice(1)}`]?.call(d,I)}return x}_updateStyle(r,u){if(r.cursor!==u.cursor&&(this._map.getCanvas().style.cursor=r.cursor||""),r.mapStyle!==u.mapStyle){let{mapStyle:d=s3,styleDiffing:x=!0}=r,s={diff:x};"localIdeographFontFamily"in r&&(s.localIdeographFontFamily=r.localIdeographFontFamily),this._map.setStyle(Fv(d),s)}}_updateStyleComponents({light:r,projection:u,sky:d,terrain:x}){let s=this._map,A=this._styleComponents;s.style?._loaded&&(r&&!$r(r,A.light)&&(A.light=r,s.setLight(r)),u&&!$r(u,A.projection)&&u!==A.projection?.type&&(A.projection=typeof u=="string"?{type:u}:u,s.setProjection?.(A.projection)),d&&!$r(d,A.sky)&&(A.sky=d,s.setSky(d)),x!==void 0&&!$r(x,A.terrain)&&(!x||s.getSource(x.source))&&(A.terrain=x,s.setTerrain(x)))}_updateHandlers(r,u){let d=this._map;for(let x of tI){let s=r[x]??!0,A=u[x]??!0;$r(s,A)||(s?d[x].enable(s):d[x].disable())}}_queryRenderedFeatures(r){let u=this._map,{interactiveLayerIds:d=[]}=this.props;try{return u.queryRenderedFeatures(r,{layers:d.filter(u.getLayer.bind(u))})}catch{return[]}}_updateHover(r){let{props:u}=this;if(u.interactiveLayerIds&&(u.onMouseMove||u.onMouseEnter||u.onMouseLeave)){let x=r.type,s=this._hoveredFeatures?.length>0,A=this._queryRenderedFeatures(r.point),I=A.length>0;!I&&s&&(r.type="mouseleave",this._onPointerEvent(r)),this._hoveredFeatures=A,I&&!s&&(r.type="mouseenter",this._onPointerEvent(r)),r.type=x}else this._hoveredFeatures=null}};lg.savedMaps=[];var Lv=lg;var aI=["setMaxBounds","setMinZoom","setMaxZoom","setMinPitch","setMaxPitch","setRenderWorldCopies","setProjection","setStyle","addSource","removeSource","addLayer","removeLayer","setLayerZoomRange","setFilter","setPaintProperty","setLayoutProperty","setLight","setTerrain","setFog","remove"];function Iv(t){if(!t)return null;let r=t.map,u={getMap:()=>r};for(let d of rI(r))!(d in u)&&!aI.includes(d)&&(u[d]=r[d].bind(r));return u}function rI(t){let r=new Set,u=t;for(;u;){for(let d of Object.getOwnPropertyNames(u))d[0]!=="_"&&typeof t[d]=="function"&&d!=="fire"&&d!=="setEventedParent"&&r.add(d);u=Object.getPrototypeOf(u)}return Array.from(r)}var ug=et(Et(),1),oI=typeof document<"u"?ug.useLayoutEffect:ug.useEffect,d3=oI;function Tv(t,r){let{RTLTextPlugin:u,maxParallelImageRequests:d,workerCount:x,workerUrl:s}=r;if(u&&t.getRTLTextPluginStatus&&t.getRTLTextPluginStatus()==="unavailable"){let{pluginUrl:A,lazy:I=!0}=typeof u=="string"?{pluginUrl:u}:u;t.setRTLTextPlugin(A,P=>{P&&console.error(P)},I)}d!==void 0&&t.setMaxParallelImageRequests(d),x!==void 0&&t.setWorkerCount(x),s!==void 0&&t.setWorkerUrl(s)}var Li=Hl.createContext(null);function iI(t,r){let u=(0,Ii.useContext)(sg),[d,x]=(0,Ii.useState)(null),s=(0,Ii.useRef)(),{current:A}=(0,Ii.useRef)({mapLib:null,map:null});(0,Ii.useEffect)(()=>{let R=t.mapLib,K=!0,Y;return Promise.resolve(R||Promise.resolve().then(()=>et(h3(),1))).then(W=>{if(!K)return;if(!W)throw new Error("Invalid mapLib");let Q="Map"in W?W:W.default;if(!Q.Map)throw new Error("Invalid mapLib");Tv(Q,t),t.reuseMaps&&(Y=Lv.reuse(t,s.current)),Y||(Y=new Lv(Q.Map,t,s.current)),A.map=Iv(Y),A.mapLib=Q,x(Y),u?.onMapMount(A.map,t.id)}).catch(W=>{let{onError:Q}=t;Q?Q({type:"error",target:null,originalEvent:null,error:W}):console.error(W)}),()=>{K=!1,Y&&(u?.onMapUnmount(t.id),t.reuseMaps?Y.recycle():Y.destroy())}},[]),d3(()=>{d&&d.setProps(t)}),(0,Ii.useImperativeHandle)(r,()=>A.map,[d]);let I=(0,Ii.useMemo)(()=>({position:"relative",width:"100%",height:"100%",...t.style}),[t.style]),P={height:"100%"};return Hl.createElement("div",{id:t.id,ref:s,style:I},d&&Hl.createElement(Li.Provider,{value:A},Hl.createElement("div",{"mapboxgl-children":"",style:P},t.children)))}var Pv=Hl.forwardRef(iI);var p3=et(Et(),1),m3=et(r0(),1),$o=et(Et(),1);var nI=/box|flex|grid|column|lineHeight|fontWeight|opacity|order|tabSize|zIndex/;function co(t,r){if(!t||!r)return;let u=t.style;for(let d in r){let x=r[d];Number.isFinite(x)&&!nI.test(d)?u[d]=`${x}px`:u[d]=x}}function cg(t,r){if(t===r)return null;let u=x3(t),d=x3(r),x=[];for(let s of d)u.has(s)||x.push(s);for(let s of u)d.has(s)||x.push(s);return x.length===0?null:x}function x3(t){return new Set(t?t.trim().split(/\s+/):[])}var Uh=(0,$o.memo)((0,$o.forwardRef)((t,r)=>{let{map:u,mapLib:d}=(0,$o.useContext)(Li),x=(0,$o.useRef)({props:t}),s=(0,$o.useMemo)(()=>{let J=!1;p3.Children.forEach(t.children,le=>{le&&(J=!0)});let j={...t,element:J?document.createElement("div"):void 0},ae=new d.Marker(j);return ae.setLngLat([t.longitude,t.latitude]),ae.getElement().addEventListener("click",le=>{x.current.props.onClick?.({type:"click",target:ae,originalEvent:le})}),ae.on("dragstart",le=>{let ve=le;ve.lngLat=s.getLngLat(),x.current.props.onDragStart?.(ve)}),ae.on("drag",le=>{let ve=le;ve.lngLat=s.getLngLat(),x.current.props.onDrag?.(ve)}),ae.on("dragend",le=>{let ve=le;ve.lngLat=s.getLngLat(),x.current.props.onDragEnd?.(ve)}),ae},[]);(0,$o.useEffect)(()=>(s.addTo(u.getMap()),()=>{s.remove()}),[]);let{longitude:A,latitude:I,offset:P,style:R,draggable:K=!1,popup:Y=null,rotation:W=0,rotationAlignment:Q="auto",pitchAlignment:be="auto"}=t;(0,$o.useEffect)(()=>{co(s.getElement(),R)},[R]),(0,$o.useImperativeHandle)(r,()=>s,[]);let he=x.current.props;(s.getLngLat().lng!==A||s.getLngLat().lat!==I)&&s.setLngLat([A,I]),P&&!n3(s.getOffset(),P)&&s.setOffset(P),s.isDraggable()!==K&&s.setDraggable(K),s.getRotation()!==W&&s.setRotation(W),s.getRotationAlignment()!==Q&&s.setRotationAlignment(Q),s.getPitchAlignment()!==be&&s.setPitchAlignment(be),s.getPopup()!==Y&&s.setPopup(Y);let ue=cg(he.className,t.className);if(ue)for(let J of ue)s.toggleClassName(J);return x.current.props=t,(0,m3.createPortal)(t.children,s.getElement())}));var g3=et(r0(),1),Uo=et(Et(),1);var sI=(0,Uo.memo)((0,Uo.forwardRef)((t,r)=>{let{map:u,mapLib:d}=(0,Uo.useContext)(Li),x=(0,Uo.useMemo)(()=>document.createElement("div"),[]),s=(0,Uo.useRef)({props:t}),A=(0,Uo.useMemo)(()=>{let I={...t},P=new d.Popup(I);return P.setLngLat([t.longitude,t.latitude]),P.once("open",R=>{s.current.props.onOpen?.(R)}),P},[]);if((0,Uo.useEffect)(()=>{let I=P=>{s.current.props.onClose?.(P)};return A.on("close",I),A.setDOMContent(x).addTo(u.getMap()),()=>{A.off("close",I),A.isOpen()&&A.remove()}},[]),(0,Uo.useEffect)(()=>{co(A.getElement(),t.style)},[t.style]),(0,Uo.useImperativeHandle)(r,()=>A,[]),A.isOpen()){let I=s.current.props;(A.getLngLat().lng!==t.longitude||A.getLngLat().lat!==t.latitude)&&A.setLngLat([t.longitude,t.latitude]),t.offset&&!$r(I.offset,t.offset)&&A.setOffset(t.offset),(I.anchor!==t.anchor||I.maxWidth!==t.maxWidth)&&(A.options.anchor=t.anchor,A.setMaxWidth(t.maxWidth));let P=cg(I.className,t.className);if(P)for(let R of P)A.toggleClassName(R);s.current.props=t}return(0,g3.createPortal)(t.children,x)}));var dg=et(Et(),1);var h0=et(Et(),1);function ei(t,r,u,d){let x=(0,h0.useContext)(Li),s=(0,h0.useMemo)(()=>t(x),[]);return(0,h0.useEffect)(()=>{let A=d||u||r,I=typeof r=="function"&&typeof u=="function"?r:null,P=typeof u=="function"?u:typeof r=="function"?r:null,{map:R}=x;return R.hasControl(s)||(R.addControl(s,A?.position),I&&I(x)),()=>{P&&P(x),R.hasControl(s)&&R.removeControl(s)}},[]),s}function lI(t){let r=ei(({mapLib:u})=>new u.AttributionControl(t),{position:t.position});return(0,dg.useEffect)(()=>{co(r._container,t.style)},[t.style]),null}var uI=(0,dg.memo)(lI);var fg=et(Et(),1);function cI(t){let r=ei(({mapLib:u})=>new u.FullscreenControl({container:t.containerId&&document.getElementById(t.containerId)}),{position:t.position});return(0,fg.useEffect)(()=>{co(r._controlContainer,t.style)},[t.style]),null}var dI=(0,fg.memo)(cI);var Qn=et(Et(),1);function fI(t,r){let u=(0,Qn.useRef)({props:t}),d=ei(({mapLib:x})=>{let s=new x.GeolocateControl(t),A=s._setupUI;return s._setupUI=()=>{s._container.hasChildNodes()||A()},s.on("geolocate",I=>{u.current.props.onGeolocate?.(I)}),s.on("error",I=>{u.current.props.onError?.(I)}),s.on("outofmaxbounds",I=>{u.current.props.onOutOfMaxBounds?.(I)}),s.on("trackuserlocationstart",I=>{u.current.props.onTrackUserLocationStart?.(I)}),s.on("trackuserlocationend",I=>{u.current.props.onTrackUserLocationEnd?.(I)}),s},{position:t.position});return u.current.props=t,(0,Qn.useImperativeHandle)(r,()=>d,[]),(0,Qn.useEffect)(()=>{co(d._container,t.style)},[t.style]),null}var hI=(0,Qn.memo)((0,Qn.forwardRef)(fI));var hg=et(Et(),1);function xI(t){let r=ei(({mapLib:u})=>new u.NavigationControl(t),{position:t.position});return(0,hg.useEffect)(()=>{co(r._container,t.style)},[t.style]),null}var pI=(0,hg.memo)(xI);var x0=et(Et(),1);function mI(t){let r=ei(({mapLib:s})=>new s.ScaleControl(t),{position:t.position}),u=(0,x0.useRef)(t),d=u.current;u.current=t;let{style:x}=t;return t.maxWidth!==void 0&&t.maxWidth!==d.maxWidth&&(r.options.maxWidth=t.maxWidth),t.unit!==void 0&&t.unit!==d.unit&&r.setUnit(t.unit),(0,x0.useEffect)(()=>{co(r._container,x)},[x]),null}var gI=(0,x0.memo)(mI);var xg=et(Et(),1);function yI(t){let r=ei(({mapLib:u})=>new u.TerrainControl(t),{position:t.position});return(0,xg.useEffect)(()=>{co(r._container,t.style)},[t.style]),null}var vI=(0,xg.memo)(yI);var pg=et(Et(),1);function _I(t){let r=ei(({mapLib:u})=>new u.LogoControl(t),{position:t.position});return(0,pg.useEffect)(()=>{co(r._container,t.style)},[t.style]),null}var bI=(0,pg.memo)(_I);var y3=et(Et(),1),Ji=et(Et(),1);function pc(t,r){if(!t)throw new Error(r)}var CI=0;function EI(t,r,u){if(t.style&&t.style._loaded){let d={...u};return delete d.id,delete d.children,t.addSource(r,d),t.getSource(r)}return null}function wI(t,r,u){pc(r.id===u.id,"source id changed"),pc(r.type===u.type,"source type changed");let d="",x=0;for(let A in r)A!=="children"&&A!=="id"&&!$r(u[A],r[A])&&(d=A,x++);if(!x)return;let s=r.type;if(s==="geojson")t.setData(r.data);else if(s==="image")t.updateImage({url:r.url,coordinates:r.coordinates});else switch(d){case"coordinates":t.setCoordinates?.(r.coordinates);break;case"url":t.setUrl?.(r.url);break;case"tiles":t.setTiles?.(r.tiles);break;default:console.warn(`Unable to update <Source> prop: ${d}`)}}function mc(t){let r=(0,Ji.useContext)(Li).map.getMap(),u=(0,Ji.useRef)(t),[,d]=(0,Ji.useState)(0),x=(0,Ji.useMemo)(()=>t.id||`jsx-source-${CI++}`,[]);(0,Ji.useEffect)(()=>{if(r){let A=()=>setTimeout(()=>d(I=>I+1),0);return r.on("styledata",A),A(),()=>{if(r.off("styledata",A),r.style&&r.style._loaded&&r.getSource(x)){let I=r.getStyle()?.layers;if(I)for(let P of I)P.source===x&&r.removeLayer(P.id);r.removeSource(x)}}}},[r]);let s=r&&r.style&&r.getSource(x);return s?wI(s,t,u.current):s=EI(r,x,t),u.current=t,s&&y3.Children.map(t.children,A=>A&&(0,Ji.cloneElement)(A,{source:x}))||null}var Jn=et(Et(),1);function AI(t,r,u,d){if(pc(u.id===d.id,"layer id changed"),pc(u.type===d.type,"layer type changed"),u.type==="custom"||d.type==="custom")return;let{layout:x={},paint:s={},filter:A,minzoom:I,maxzoom:P,beforeId:R}=u;if(R!==d.beforeId&&t.moveLayer(r,R),x!==d.layout){let K=d.layout||{};for(let Y in x)$r(x[Y],K[Y])||t.setLayoutProperty(r,Y,x[Y]);for(let Y in K)x.hasOwnProperty(Y)||t.setLayoutProperty(r,Y,void 0)}if(s!==d.paint){let K=d.paint||{};for(let Y in s)$r(s[Y],K[Y])||t.setPaintProperty(r,Y,s[Y]);for(let Y in K)s.hasOwnProperty(Y)||t.setPaintProperty(r,Y,void 0)}$r(A,d.filter)||t.setFilter(r,A),(I!==d.minzoom||P!==d.maxzoom)&&t.setLayerZoomRange(r,I,P)}function BI(t,r,u){if(t.style&&t.style._loaded&&(!("source"in u)||t.getSource(u.source))){let d={...u,id:r};delete d.beforeId,t.addLayer(d,u.beforeId)}}var DI=0;function Us(t){let r=(0,Jn.useContext)(Li).map.getMap(),u=(0,Jn.useRef)(t),[,d]=(0,Jn.useState)(0),x=(0,Jn.useMemo)(()=>t.id||`jsx-layer-${DI++}`,[]);if((0,Jn.useEffect)(()=>{if(r){let A=()=>d(I=>I+1);return r.on("styledata",A),A(),()=>{r.off("styledata",A),r.style&&r.style._loaded&&r.getLayer(x)&&r.removeLayer(x)}}},[r]),r&&r.style&&r.getLayer(x))try{AI(r,x,t,u.current)}catch(A){console.warn(A)}else BI(r,x,t);return u.current=t,null}var qh=et(Zt(),1),Rv=({geometry:t,color:r="#3b82f6",width:u=5,opacity:d=.8})=>t?(0,qh.jsxs)(mc,{data:{geometry:t,properties:{},type:"Feature"},id:"sdk-route-source",type:"geojson",children:[(0,qh.jsx)(Us,{id:"sdk-route-layer-casing",paint:{"line-blur":1,"line-color":"#ffffff","line-opacity":d,"line-width":u+2},type:"line"}),(0,qh.jsx)(Us,{id:"sdk-route-layer",layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":r,"line-opacity":d,"line-width":u},type:"line"})]}):null;var da=et(Et(),1);var v3=(t,r,u=64)=>{let[d,x]=t,s=x*Math.PI/180,A=[];for(let I=0;I<=u;I++){let P=I/u*2*Math.PI,R=r*Math.cos(P)/6371e3*(180/Math.PI),K=r*Math.sin(P)/(6371e3*Math.cos(s))*(180/Math.PI);A.push([d+K,x+R])}return{geometry:{coordinates:[A],type:"Polygon"},properties:{},type:"Feature"}};var _3=et(Et(),1),Vh=et(Zt(),1),b3=({center:t,radiusMeters:r,color:u="#39ff88"})=>{let d=(0,_3.useMemo)(()=>v3(t,r),[t,r]);return(0,Vh.jsxs)(mc,{data:d,id:"sdk-mock-radius-source",type:"geojson",children:[(0,Vh.jsx)(Us,{id:"sdk-mock-radius-fill",paint:{"fill-color":u,"fill-opacity":.12},type:"fill"}),(0,Vh.jsx)(Us,{id:"sdk-mock-radius-outline",paint:{"line-color":u,"line-dasharray":[2,2],"line-width":2},type:"line"})]})};var gc=et(Et(),1),zv=et(Zt(),1);function C3(t,r=64){let u=document.createElement("canvas");u.width=r,u.height=r;let d=u.getContext("2d");return d.font=`${r*.75}px serif`,d.textAlign="center",d.textBaseline="middle",d.fillText(t,r/2,r/2),d.getImageData(0,0,r,r)}var E3=({pois:t})=>{let[r,u]=(0,gc.useState)(0),{current:d}=Bv(),x=(0,gc.useMemo)(()=>t.filter(A=>!A.displayMode||A.displayMode==="gl"),[t]);(0,gc.useEffect)(()=>{if(!d)return;let A=d.getMap();[{emoji:"\u{1F37A}",name:"sdk-default-bar"},{emoji:"\u{1F37D}\uFE0F",name:"sdk-default-restaurant"},{emoji:"\u{1F4CD}",name:"sdk-default-poi"}].forEach(R=>{A.hasImage(R.name)||A.addImage(R.name,C3(R.emoji),{pixelRatio:2})});let P=0;x.forEach(R=>{if(R.imageUrl){let K=`custom-url-${R.id}`;A.hasImage(K)||A.loadImage(R.imageUrl,(Y,W)=>{!Y&&W&&(A.hasImage(K)||(A.addImage(K,W),u(Q=>Q+1)))})}if(R.emoji){let K=`custom-emoji-${R.emoji}`;A.hasImage(K)||(A.addImage(K,C3(R.emoji),{pixelRatio:2}),P++)}}),P>0&&u(R=>R+P)},[d,x]);let s=(0,gc.useMemo)(()=>({features:x.map(A=>({geometry:{coordinates:[A.longitude,A.latitude],type:"Point"},properties:{...A,"sdk-icon":A.imageUrl?`custom-url-${A.id}`:A.spriteName?A.spriteName:A.emoji?`custom-emoji-${A.emoji}`:A.type==="bar"?"sdk-default-bar":A.type==="restaurant"?"sdk-default-restaurant":"sdk-default-poi"},type:"Feature"})),type:"FeatureCollection"}),[x]);return(0,zv.jsx)(mc,{data:s,id:"sdk-pois",type:"geojson",children:(0,zv.jsx)(Us,{id:"sdk-poi-layer",layout:{"icon-allow-overlap":!0,"icon-image":["get","sdk-icon"],"icon-size":1,"text-anchor":"top","text-field":["step",["zoom"],"",14,["get","name"]],"text-font":["Open Sans Bold"],"text-offset":[0,1.5],"text-optional":!0,"text-size":11},paint:{"icon-opacity":["interpolate",["linear"],["zoom"],11,0,12,1],"text-color":"#ffffff","text-halo-color":"#000000","text-halo-width":1,"text-opacity":["interpolate",["linear"],["zoom"],13.5,0,14,1]},type:"symbol"})})};var Sn=et(Zt(),1),w3=({pois:t,onClick:r})=>{let u=t.filter(d=>d.displayMode==="marker");return u.length===0?null:(0,Sn.jsx)(Sn.Fragment,{children:u.map(d=>(0,Sn.jsx)(Uh,{anchor:"bottom",latitude:d.latitude,longitude:d.longitude,onClick:x=>{x.originalEvent.stopPropagation(),r&&r(d)},children:d.markerComponent?d.markerComponent:(0,Sn.jsxs)("div",{style:{cursor:"pointer",filter:"drop-shadow(0 4px 6px rgba(0,0,0,0.1))",transform:"transition-transform duration-200 hover:scale-110"},children:[(0,Sn.jsx)("div",{style:{alignItems:"center",backgroundColor:d.type==="bar"?"#f97316":"#10b981",border:"2px solid white",borderRadius:"50%",display:"flex",height:"32px",justifyContent:"center",width:"32px"},children:d.emoji?(0,Sn.jsx)("span",{style:{fontSize:"16px"},children:d.emoji}):(0,Sn.jsx)("div",{style:{backgroundColor:"white",borderRadius:"50%",height:"8px",width:"8px"}})}),(0,Sn.jsx)("div",{style:{borderLeft:"6px solid transparent",borderRight:"6px solid transparent",borderTop:`8px solid ${d.type==="bar"?"#f97316":"#10b981"}`,height:0,margin:"-2px auto 0",width:0}})]})},d.id))})};var ti=et(Zt(),1),A3=({forcedLocation:t,heading:r})=>t?(0,ti.jsx)(Uh,{anchor:"center",latitude:t[1],longitude:t[0],children:(0,ti.jsxs)("div",{style:{alignItems:"center",display:"flex",justifyContent:"center",position:"relative"},children:[(0,ti.jsx)("div",{style:{animation:"pulse 2s infinite",backgroundColor:"rgba(59, 130, 246, 0.4)",borderRadius:"50%",height:"40px",position:"absolute",width:"40px"}}),r!=null&&(0,ti.jsx)("div",{style:{height:"60px",position:"absolute",transform:`rotate(${r}deg)`,width:"60px",zIndex:0},children:(0,ti.jsxs)("svg",{style:{height:"100%",width:"100%"},viewBox:"0 0 100 100",children:[(0,ti.jsx)("defs",{children:(0,ti.jsxs)("radialGradient",{cx:"50%",cy:"50%",fx:"50%",fy:"50%",id:"grad1",r:"50%",children:[(0,ti.jsx)("stop",{offset:"0%",style:{stopColor:"rgba(37, 99, 235, 0.6)",stopOpacity:1}}),(0,ti.jsx)("stop",{offset:"100%",style:{stopColor:"rgba(37, 99, 235, 0)",stopOpacity:0}})]})}),(0,ti.jsx)("path",{d:"M 50 50 L 35 0 A 50 50 0 0 1 65 0 Z",fill:"url(#grad1)"})]})}),(0,ti.jsx)("div",{style:{alignItems:"center",backgroundColor:"white",borderRadius:"50%",boxShadow:"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 0 0 2px rgba(37, 99, 235, 0.2)",display:"flex",height:"20px",justifyContent:"center",width:"20px",zIndex:1},children:(0,ti.jsx)("div",{style:{backgroundColor:"#2563eb",border:"2px solid white",borderRadius:"50%",height:"12px",width:"12px"}})}),(0,ti.jsx)("style",{children:"@keyframes pulse { 0% { transform: scale(0.95); opacity: 0.7; } 70% { transform: scale(1.5); opacity: 0; } 100% { transform: scale(0.95); opacity: 0; } }"})]})}):null;var qr=et(Zt(),1),SI=({initialViewState:t={latitude:45.90583599233422,longitude:6.12589018919138,zoom:12},style:r={},mapStyle:u="https://tiles.cloudparse.fr/style/up_dark_matter",className:d="",maxBounds:x,children:s,onClick:A,onMapClickMiss:I,onContextMenu:P,interactiveLayerIds:R=[],onLoad:K,showUserLocation:Y=!0,followUser:W=!1,lockToUser:Q=!1,showUserLocationButton:be=!0,renderUserLocation:he,pois:ue=[],onPoiClick:J,route:j,showNavigationUI:ae,navigationData:le,onNavigationAbort:ve,onNavigationModeChange:Fe,navigation:H,showControls:X=!0,menuItems:ie,menuContent:Ce,drawerState:Pe,drawerContentRef:Ae,controlProps:Ee={},enableTouchDrag:we=!1})=>{let V=(0,da.useContext)(Kn),Z=(0,da.useContext)(a0),re=(0,da.useRef)(null),ne=Nh(),ee=Ev({navigation:H,onModeChange:H?Fe:void 0}),pe=ee.isActive,Ke=pe?{currentDistanceMeters:ee.distanceRemainingMeters,mode:ee.mode,route:ee.route,start:ee.start,totalDistance:ee.totalDistanceMeters}:le,Ue=pe?ee.route?.geometry:j,We=pe?ae!==!1&&H?.showUI!==!1:ae,Ve=Ke?.mode||"preview",qe=V?V.isFollowing:W,Ge=(0,da.useRef)(qe),tt=(0,da.useRef)(!1),yt=(0,da.useRef)(0),it=(0,da.useCallback)(()=>(tt.current=!0,++yt.current),[]),Le=(0,da.useCallback)(Ut=>{yt.current===Ut&&(tt.current=!1)},[]),[Te,Me]=(0,da.useState)(qe),ze=V?V.isFollowing:Te,Ze=V?.setIsFollowing,nt=(0,da.useCallback)(Ut=>{Ge.current=Ut,Me(Ut),Ze&&Ze(Ut)},[Ze]);(0,da.useEffect)(()=>{V&&V.isFollowing!==Ge.current&&(Ge.current=V.isFollowing)},[V?.isFollowing,V]);let mt=[...R];ue.length>0&&!mt.includes("sdk-poi-layer")&&mt.push("sdk-poi-layer");let bt=(0,da.useRef)(W);(0,da.useEffect)(()=>{if(W!==bt.current&&(nt(W),bt.current=W,W&&ne.coords&&re.current)){let Ut=it();re.current.flyTo({center:ne.coords,duration:1e3,essential:!0,zoom:Math.max(re.current.getZoom(),16)}),setTimeout(()=>{Le(Ut)},1050)}},[W,nt,ne.coords,it,Le]);let Xt=(0,da.useRef)(null),It=(0,da.useRef)(null);(0,da.useEffect)(()=>{if(!Ue||!re.current){Ue||(Xt.current=null);return}let Ut=Ue!==Xt.current,ca=It.current!==Ve;if(Ve==="navigation"){if((ca||Ut)&&nt(!0),(ca||Ut)&&ne.coords&&re.current){let ha=it();re.current.flyTo({center:ne.coords,duration:1e3,essential:!0,zoom:17}),setTimeout(()=>{Le(ha)},1050)}}else if(Ve==="preview"&&Ut){nt(!1);let ha=Ue.coordinates;if(ha.length>0){let Oe=ha.reduce((qa,Mr)=>[[Math.min(qa[0][0],Mr[0]),Math.min(qa[0][1],Mr[1])],[Math.max(qa[1][0],Mr[0]),Math.max(qa[1][1],Mr[1])]],[[ha[0][0],ha[0][1]],[ha[0][0],ha[0][1]]]);re.current.fitBounds([Oe[0][0],Oe[0][1],Oe[1][0],Oe[1][1]],{padding:100,speed:1.2})}}Xt.current=Ue,It.current=Ve},[Ue,Ve,nt,ne.coords,it,Le]),(0,da.useEffect)(()=>{Ge.current&&!tt.current&&ne.coords&&re.current&&re.current.easeTo({center:ne.coords,duration:50,easing:Ut=>Ut,essential:!0})},[ne.coords]);let Vt=wv(Ue,Y?ne.coords:null),gt=Ke?.currentDistanceMeters??null,Pt=Ke?.totalDistance??null,Rt=Ke?.route?.durationSeconds??null,kt=gt??0,St=(()=>{if(!Rt||!Pt||!gt)return 0;let Ut=gt/Pt;return Math.ceil(Rt*Ut/60)})(),Ot=kt/1e3,jt=Pt&&Pt>0?Math.min(100,Math.max(0,(Pt-kt)/Pt*100)):0,vt=We&&Ke&&Ue?{distanceRemainingKm:Ot,etaMins:St,label:Ve==="navigation"?"Walking Guidance Active":"Route Preview",mode:Ve,onAbort:()=>{ee.cancel(),ve&&ve()},onStart:Ke.start,progress:jt}:void 0,wt=V?.setEtaData;(0,da.useEffect)(()=>{wt&&wt(vt)},[vt,wt]);let Kt=V?.setDrawerState;(0,da.useEffect)(()=>{Kt&&Pe!==void 0&&Kt(Pe)},[Pe,Kt]);let na=ie??[],{mapLibreChildren:Dr,menuContentFromChildren:wa}=(0,da.useMemo)(()=>{let Ut=[],ca=[];da.default.Children.forEach(s,Oe=>{if(da.default.isValidElement(Oe)){let qa=Oe.type,Mr=qa?.displayName||qa?.name,$t=qa===zh||Mr==="MapMenu",lr=$t||qa===ag||qa===rg||qa===og||qa===ig||["MapMenuItem","MapMenuTitle","MapMenuDivider","MapMenuFooter"].includes(Mr);$t?da.default.Children.forEach(Oe.props.children,Vi=>{Vi&&ca.push(Vi)}):lr?ca.push(Oe):Ut.push(Oe)}else Ut.push(Oe)});let ha=ca.length>0?(0,qr.jsx)(zh,{children:ca}):null;return{mapLibreChildren:Ut,menuContentFromChildren:ha}},[s]),_a=Ut=>{if(Z?.isPlacingLocation){Z.placeLocation([Ut.lngLat.lng,Ut.lngLat.lat]);return}let ca=Ut.features||[];if(J){let Oe=ca.find(qa=>qa.layer.id==="sdk-poi-layer");if(Oe){J(Oe.properties);return}}ca.some(Oe=>mt.includes(Oe.layer.id))||I&&I(Ut),A&&A(Ut)},ri=(0,da.useCallback)(Ut=>{if(ne.coords&&re.current){nt(!0);let ca=it();re.current.flyTo({center:ne.coords,duration:1e3,essential:!0,pitch:Ut?.pitch||0,zoom:Math.max(re.current.getZoom(),16),...Ut?.bearing!==void 0?{bearing:Ut.bearing}:{}}),setTimeout(()=>{Le(ca)},1050)}},[ne.coords,nt,it,Le]),Tr=(0,da.useCallback)((Ut,ca)=>{let ha=re.current;if(!ha)return;nt(!1);let Oe=it();ha.flyTo({center:Ut,essential:!0,pitch:ca?.pitch??0,zoom:ca?.zoom??ha.getZoom(),...ca?.duration!==void 0?{duration:ca.duration}:{},...ca?.bearing!==void 0?{bearing:ca.bearing}:{}}),ha.once("moveend",()=>Le(Oe))},[nt,it,Le]),_r=(0,da.useCallback)(Ut=>{re.current&&re.current.easeTo({bearing:0,duration:500,essential:!0,pitch:Ut?.pitch??0})},[]);(0,da.useEffect)(()=>{V&&(V._registerCenterCallback(ri),V._registerResetBearingCallback(_r),V._registerFlyToCallback(Tr))},[V,ri,_r,Tr]);let po=(0,da.useCallback)(()=>{re.current&&V&&(V.setBearing(re.current.getBearing()),V.setPitch(re.current.getPitch()))},[V]),br=()=>{Q||Ge.current&&(nt(!1),re.current&&re.current.stop())};return(0,qr.jsxs)("div",{className:`w-full h-full overflow-hidden relative ${Z?.isPlacingLocation?"cursor-crosshair":""} ${d}`,style:r,children:[(0,qr.jsxs)(Pv,{attributionControl:!1,initialViewState:t,interactiveLayerIds:mt,mapStyle:u,maxBounds:x,onClick:_a,onContextMenu:P,onDragStart:br,onLoad:Ut=>{K&&K(Ut),W&&ne.coords&&re.current&&re.current.jumpTo({center:ne.coords,zoom:16})},onMouseDown:br,onMove:po,onRotateStart:br,onTouchStart:br,onWheel:br,ref:re,children:[Y&&ne.coords&&(he?he({coords:ne.coords,heading:ne.heading}):(0,qr.jsx)(A3,{forcedLocation:ne.coords,heading:ne.heading})),Z&&Z.radiusMeters>0&&ne.coords&&(0,qr.jsx)(b3,{center:ne.coords,radiusMeters:Z.radiusMeters}),Vt&&(0,qr.jsx)(Rv,{geometry:Vt}),ue.length>0&&(0,qr.jsxs)(qr.Fragment,{children:[(0,qr.jsx)(E3,{pois:ue}),(0,qr.jsx)(w3,{onClick:J,pois:ue})]}),Dr]}),X&&V&&!V.hasControls&&(0,qr.jsx)(_v,{drawerContentRef:Ae,enableTouchDrag:we,etaData:vt,initialViewState:t,isInternal:!0,menuContent:Ce||wa,menuItems:na,...Ee})]})},FI=({children:t})=>(0,da.useContext)(Kn)?(0,qr.jsx)(qr.Fragment,{children:t}):(0,qr.jsx)(yv,{children:t}),Ov=t=>(0,qr.jsx)(FI,{children:(0,qr.jsx)(Av,{children:(0,qr.jsx)(SI,{...t})})});var $A=et(Et(),1),e7=et(JA(),1);function g5(t,r={}){let u=document.getElementById(t);if(!u)throw new Error(`Container with id "${t}" not found.`);let d=(0,e7.createRoot)(u);return d.render($A.default.createElement(Ov,r)),d}var a7=et(t7(),1),ak=512,rk="#18181b",ok="#ffffff",ik=6,nk="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AAAAAXNSR0IB2cksfwAAAARnQU1BAACxjwv8YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB+oIBggpDsP9ZQ0AACAASURBVHja7L15tG3rVRf4m3ufc+6953bv3Zc83ktCBQgh9OkEAwgYQEKgpEBURB02Y6ChRALRSBqsGAgEIyKOoIJWY6FWjeGowbCaIVKWHVJhlF1ZqNiVFgUlMQl5zb339HvvNeuPtZu1vjW7b+1zX+65Z84x9jjn7LPWt9bXzjl/swOSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkh4IUQ5B0nkTf/9X7jBNnibC06DJbezuvxRXblzD3v4emsXjaBY3wHwFwLRdhctlyKsVSe3v4aVLxa/S/RRY+tR+zd1r2LiXhWevvqaiHePZq3duGmB2BsxO5Wu5GKv12LHzDKGvLLxvr93O7zdudS4m+RpvbM17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",sk="600 %PXpx -apple-system, BlinkMacSystemFont, sans-serif",lk=.175,uk=-.04;async function r7(t,r={}){let u=r.size??ak,d=r.color??rk,x=r.backgroundColor??ok,s=r.label||(r.appName?`UP - ${r.appName}`:""),I=await new a7.default({backgroundOptions:{color:x,...r.backgroundGradient?{gradient:r.backgroundGradient}:{}},cornersDotOptions:{color:r.cornersDotColor??d,type:r.cornersDotType??"extra-rounded",...r.cornersDotGradient?{gradient:r.cornersDotGradient}:{}},cornersSquareOptions:{color:r.cornersSquareColor??d,type:r.cornersSquareType??"extra-rounded",...r.cornersSquareGradient?{gradient:r.cornersSquareGradient}:{}},data:t,dotsOptions:{color:d,type:r.dotsType??"extra-rounded",...r.dotsGradient?{gradient:r.dotsGradient}:{}},height:u,margin:r.margin??0,qrOptions:{errorCorrectionLevel:r.errorCorrectionLevel??"Q",mode:"Byte",typeNumber:0},shape:r.shape??"square",type:"canvas",width:u,...r.logo!==null?{image:r.logo??nk,imageOptions:{hideBackgroundDots:r.hideBackgroundDots??!0,imageSize:r.logoSize??.3,margin:r.logoMargin??0}}:{}}).getRawData("png");if(!I||!(I instanceof Blob))throw new Error("Failed to generate QR code image");let P=await ck(I),R=r.outerPadding??32,K=r.borderRadius??ik,Y=s?await dk(P,s,u,x,d):P;return hk(Y,R,K,x)}var ck=t=>new Promise((r,u)=>{let d=new FileReader;d.onloadend=()=>r(d.result),d.onerror=u,d.readAsDataURL(t)}),o7=t=>new Promise((r,u)=>{let d=new Image;d.onload=()=>r(d),d.onerror=u,d.src=t});async function dk(t,r,u,d,x){let s=await o7(t),A=Math.round(u*lk),I=Math.round(u*uk),P=document.createElement("canvas");P.width=u,P.height=u+A;let R=P.getContext("2d");if(!R)return t;R.fillStyle=d,R.fillRect(0,0,P.width,P.height);let K=Math.round(A*.45);return R.fillStyle=x,R.font=sk.replace("%PX",String(K)),R.textAlign="center",R.textBaseline="middle",R.fillText(r,P.width/2,A/2+I/2,P.width-I*2),R.drawImage(s,0,A,u,u),P.toDataURL("image/png")}function fk(t,r,u,d,x,s){t.beginPath(),t.moveTo(r+s,u),t.arcTo(r+d,u,r+d,u+x,s),t.arcTo(r+d,u+x,r,u+x,s),t.arcTo(r,u+x,r,u,s),t.arcTo(r,u,r+d,u,s),t.closePath()}async function hk(t,r,u,d){let x=await o7(t),s=x.width+r*2,A=x.height+r*2,I=Math.max(s,A),P=Math.min(Math.max(u,0),50)/100*I;if(!(P>0||s!==I||A!==I))return t;let K=document.createElement("canvas");K.width=I,K.height=I;let Y=K.getContext("2d");if(!Y)return t;P>0&&(fk(Y,0,0,I,I,P),Y.clip()),Y.fillStyle=d,Y.fillRect(0,0,I,I);let W=Math.round((I-x.width)/2),Q=Math.round((I-x.height)/2);return Y.drawImage(x,W,Q),K.toDataURL("image/png")}var i7=et(_5(),1);async function n7(t){let r=await xk(t),u=document.createElement("canvas");u.width=r.naturalWidth||r.width,u.height=r.naturalHeight||r.height;let d=u.getContext("2d");if(!d)throw new Error("No 2D canvas context available to decode the image.");d.drawImage(r,0,0,u.width,u.height);let x=d.getImageData(0,0,u.width,u.height);return(0,i7.default)(x.data,x.width,x.height,{inversionAttempts:"attemptBoth"})?.data??null}var xk=t=>new Promise((r,u)=>{let d=new Image;d.onload=()=>r(d),d.onerror=u,d.src=t});var G1={createErrorResponse(t,r,u){return{error:{code:r,message:u},requestId:t.requestId,sdkVersion:t.sdkVersion,success:!1,type:"SDK_ROUTING_GETROUTE_RESPONSE"}},decodePolyline(t,r){let u=0,d=0,x=0,s=[],A=10**r;for(;u<t.length;){let I,P=0,R=0;do I=t.charCodeAt(u++)-63,R|=(I&31)<<P,P+=5;while(I>=32);let K=R&1?~(R>>1):R>>1;d+=K,P=0,R=0;do I=t.charCodeAt(u++)-63,R|=(I&31)<<P,P+=5;while(I>=32);let Y=R&1?~(R>>1):R>>1;x+=Y,s.push([x/A,d/A])}return s},async fetchOSRMRoute(t,r,u,d){let x=r.map(Y=>`${Y[0]},${Y[1]}`).join(";"),A=`${d}/route/v1/${u==="walking"?"foot":u==="driving"?"car":"bike"}/${x}?overview=full&geometries=geojson&steps=true`,I=await fetch(A);if(!I.ok)throw new Error(`OSRM Error: ${I.statusText}`);let P=await I.json();if(P.code!=="Ok"||!P.routes||P.routes.length===0)throw new Error("NO_ROUTE");let R=P.routes[0],K=R.legs?.flatMap(Y=>Y.steps?.map(W=>({distance:W.distance,duration:W.duration,instruction:W.maneuver?.instruction||"Continue"})))||[];return{data:{distanceMeters:R.distance,durationSeconds:R.duration,geometry:R.geometry,steps:K},requestId:t.requestId,sdkVersion:t.sdkVersion,success:!0,type:"SDK_ROUTING_GETROUTE_RESPONSE"}},async fetchRoute(t,r){let{origin:u,destination:d,waypoints:x,profile:s,language:A}=t.payload;if(!this.isValidCoordinate(u)||!this.isValidCoordinate(d))return this.createErrorResponse(t,"INVALID_INPUT","Origin or destination coordinates are invalid.");if(x&&!x.every(this.isValidCoordinate))return this.createErrorResponse(t,"INVALID_INPUT","One or more waypoints are invalid.");let I=[u,...x||[],d];try{return r.backend==="osrm"?await this.fetchOSRMRoute(t,I,s,r.baseUrl):await this.fetchValhallaRoute(t,I,s,A,r.baseUrl)}catch(P){return P instanceof Error&&P.message.includes("NO_ROUTE")?this.createErrorResponse(t,"NO_ROUTE","No route could be found for the given points."):P instanceof TypeError?this.createErrorResponse(t,"NETWORK_ERROR","Failed to connect to the routing backend."):this.createErrorResponse(t,"BACKEND_ERROR",`Routing backend error: ${P instanceof Error?P.message:"Unknown error"}`)}},async fetchValhallaRoute(t,r,u,d,x){let A={costing:u==="driving"?"auto":u==="walking"?"pedestrian":"bicycle",directions_options:{language:d||"en-US"},locations:r.map(W=>({lat:W[1],lon:W[0]}))},I=await fetch(`${x}/route`,{body:JSON.stringify(A),headers:{"Content-Type":"application/json"},method:"POST"});if(!I.ok)throw new Error(`Valhalla Error: ${I.statusText}`);let P=await I.json();if(!P.trip||!P.trip.legs||P.trip.legs.length===0)throw new Error("NO_ROUTE");let R=P.trip,K=this.decodePolyline(R.legs[0].shape,6),Y=R.legs.flatMap(W=>W.maneuvers?.map(Q=>({distance:Q.length*1e3,duration:Q.time,instruction:Q.instruction||"Continue"})))||[];return{data:{distanceMeters:R.summary.length*1e3,durationSeconds:R.summary.time,geometry:{coordinates:K,type:"LineString"},steps:Y},requestId:t.requestId,sdkVersion:t.sdkVersion,success:!0,type:"SDK_ROUTING_GETROUTE_RESPONSE"}},isValidCoordinate(t){let[r,u]=t;return r>=-180&&r<=180&&u>=-90&&u<=90}};var Hx="0.5.6";function s7(t){let r=Object.getOwnPropertyNames(t);for(let u of r){let d=t[u];d&&typeof d=="object"&&!Object.isFrozen(d)&&!(d instanceof Sh)&&s7(d)}return Object.freeze(t)}var b5=null,Zx=class{maps=Object.freeze({render:g5});bridge;storage=Object.freeze({get:r=>this.bridge.send("STORAGE_GET",{key:r}),getAll:()=>this.bridge.send("STORAGE_GET_ALL"),set:(r,u)=>this.bridge.send("STORAGE_SET",{key:r,value:u})});secureStore=Object.freeze({get:r=>this.bridge.send("SECURE_GET",{key:r}),set:(r,u)=>this.bridge.send("SECURE_SET",{key:r,value:u})});database=Object.freeze({getUserData:()=>this.bridge.send("DATABASE_GET_USER_DATA"),setUserData:r=>this.bridge.send("DATABASE_SET_USER_DATA",{data:r})});location=Object.freeze({getCurrentPosition:()=>this.bridge.send("GET_CURRENT_POSITION"),startStream:r=>this.bridge.send("START_LOCATION_STREAM",r),stopStream:()=>this.bridge.send("STOP_LOCATION_STREAM")});user=Object.freeze({getProfile:r=>this.bridge.send("GET_USER_PROFILE",{fields:r}),getProfilePicture:(r=>this.bridge.send("GET_PROFILE_PICTURE",{uuids:r||[]}))});permission=Object.freeze({request:((r,u)=>this.bridge.send("REQUEST_PERMISSION",{fields:u,type:r}))});media=Object.freeze({pickImage:()=>this.bridge.send("PICK_IMAGE",{}),saveImage:(r,u)=>this.bridge.send("SAVE_IMAGE",{base64:r,filename:u})});qrCode=Object.freeze({generate:(r,u)=>r7(r,u),decode:r=>n7(r)});payment=Object.freeze({request:r=>this.bridge.send("PAYMENT_REQUEST",r)});activity=Object.freeze({start:(r,u,d)=>this.bridge.send("START_ACTIVITY",{id:r,status:d,title:u})});haptic=Object.freeze({trigger:r=>this.bridge.send("TRIGGER_HAPTIC",{style:r})});network=Object.freeze({request:async r=>this.bridge.send("NETWORK_REQUEST",r)});navigation=Object.freeze({abort:()=>{this.bridge.handleNativeMessage({eventName:"SDK_NAVIGATION_ABORT",type:"EVENT"})},createJourney:r=>{this.bridge.handleNativeMessage({eventName:"SDK_NAVIGATION_CREATE",payload:{...r,mode:"preview"},type:"EVENT"})},start:()=>{this.bridge.handleNativeMessage({eventName:"SDK_NAVIGATION_START",type:"EVENT"})}});fidelity=Object.freeze({getFidelityBalance:()=>this.bridge.send("GET_FIDELITY_BALANCE"),getFidelityHistory:r=>this.bridge.send("GET_FIDELITY_HISTORY",r),showHistory:r=>this.bridge.send("SHOW_FIDELITY_HISTORY",r),spendFPoints:r=>this.bridge.send("SPEND_FPOINTS",{intentUuid:r})});ui=Object.freeze({exit:()=>this.bridge.send("EXIT"),setScrollConfig:r=>this.bridge.send("SET_SCROLL_CONFIG",r)});debug=Object.freeze({log:(...r)=>this.bridge.send("DEBUG_LOG",{message:r})});routing=Object.freeze({clearRoute:()=>{let r=crypto.randomUUID?crypto.randomUUID():Math.random().toString(36).substring(2);return this.bridge.send("SDK_ROUTING_CLEARROUTE",{requestId:r,sdkVersion:Hx})},drawRoute:r=>{let u=crypto.randomUUID?crypto.randomUUID():Math.random().toString(36).substring(2);return this.bridge.send("SDK_ROUTING_DRAWROUTE",{payload:{routeData:r},requestId:u,sdkVersion:Hx})},getRoute:async r=>{let u=crypto.randomUUID?crypto.randomUUID():Math.random().toString(36).substring(2),d={payload:r,requestId:u,sdkVersion:Hx,type:"SDK_ROUTING_GETROUTE"};if(b5){let x=await G1.fetchRoute(d,b5);if(x.success&&x.data)return x.data;throw new Error(x.error?.message||"Routing failed")}return this.bridge.send("SDK_ROUTING_GETROUTE",{payload:r,requestId:u,sdkVersion:Hx})}});constructor(){this.bridge=new Sh,this.initialize=this.initialize.bind(this),this.on=this.on.bind(this),this.off=this.off.bind(this)}config(r){r.routingBackend&&(b5=r.routingBackend)}updateContext(r){return this.bridge.send("UPDATE_CONTEXT",r)}initialize(r){return this.bridge.send("INITIALIZE",r)}on(r,u){return this.bridge.on(r,u)}off(r,u){this.bridge.off(r,u)}},Qa=s7(new Zx);var Ua=et(Et(),1),zt=et(Zt(),1),mk=["variant03","variant06","variant07","variant08","variant09","variant10","variant11","variant12","variant13","variant14","variant15","variant16","variant21","variant22","variant23","variant25","variant26","variant27","variant28","variant29","variant30"].join(","),gk=["variant03","variant04","variant05"].join(",");function yk(t){let r=5381;for(let u=0;u<t.length;u++)r=r*33^t.charCodeAt(u);return(r>>>0).toString(36)}function l7(t){return`https://api.dicebear.com/10.x/notionists-neutral/png?seed=${yk(t)}&mouth=${mk}&eyes=${gk}&glassesProbability=50`}var vk=(t,r)=>{let u=t[1]*Math.PI/180,d=r[1]*Math.PI/180,x=(r[0]-t[0])*Math.PI/180,s=Math.sin(x)*Math.cos(d),A=Math.cos(u)*Math.sin(d)-Math.sin(u)*Math.cos(d)*Math.cos(x);return(Math.atan2(s,A)*180/Math.PI+360)%360},C5=({appId:t,initialLocation:r=[6.1258,45.9058],isMoving:u=!1,simulationPath:d,simulationSpeed:x=1,mockJWTToken:s,children:A})=>{let[I,P]=(0,Ua.useState)(u),[R,K]=(0,Ua.useState)(r),[Y,W]=(0,Ua.useState)(0),[Q,be]=(0,Ua.useState)(x),[he,ue]=(0,Ua.useState)(!1),[J,j]=(0,Ua.useState)(!0),[ae,le]=(0,Ua.useState)(0),[ve,Fe]=(0,Ua.useState)("m"),[H,X]=(0,Ua.useState)(!1),ie=(0,Ua.useRef)(null),Ce=(0,Ua.useRef)(0),Pe=(0,Ua.useRef)(null),Ae=(0,Ua.useRef)({autoMove:I,heading:Y,location:R,mockJWTToken:s,pushLocationUpdate:()=>{},setHeading:W,setLocation:K,simulationPath:d,speedMultiplier:Q}),Ee=(0,Ua.useCallback)((ne,ee)=>{let pe=Ae.current,Ke={accelerometer:null,heading:{accuracy:3,magneticHeading:ee,trueHeading:ee},location:{coords:{accuracy:10,altitude:0,altitudeAccuracy:null,heading:ee,latitude:ne[1],longitude:ne[0],speed:pe.autoMove?1.5*pe.speedMultiplier:0},timestamp:Date.now()},timestamp:Date.now()};window.__MiniAppBridge?.onNativeMessage({eventName:"LOCATION_STREAM_UPDATE",payload:Ke,type:"EVENT"})},[]),we=(0,Ua.useCallback)(()=>{let ne=Ae.current;Ee(ne.location,ne.heading)},[Ee]),V=(0,Ua.useCallback)(ne=>{K(ne),X(!1),Ee(ne,Ae.current.heading)},[Ee]);(0,Ua.useEffect)(()=>{Ae.current={autoMove:I,heading:Y,location:R,mockJWTToken:s,pushLocationUpdate:we,setHeading:W,setLocation:K,simulationPath:d,speedMultiplier:Q}},[R,Y,I,we,d,Q,s]),(0,Ua.useEffect)(()=>{P(u)},[u]),(0,Ua.useEffect)(()=>{be(x)},[x]),(0,Ua.useEffect)(()=>{d&&d.length>0&&(Ce.current=0,K(d[0]))},[d]),(0,Ua.useEffect)(()=>{ie.current&&Pe.current&&Qa.bridge.send("START_LOCATION_STREAM",Pe.current)},[Q]),(0,Ua.useEffect)(()=>{let ne=Qa.bridge,ee=ne.send.bind(ne),pe=()=>{ie.current&&(clearInterval(ie.current),ie.current=null),Pe.current=null},Ke=We=>{pe(),Pe.current=We||{};let Ve=We?.interval||500,qe=Math.max(10,Ve/Ae.current.speedMultiplier);ie.current=setInterval(()=>{let Ge=Ae.current;if(Ge.autoMove)if(Ge.simulationPath&&Ge.simulationPath.length>0)if(Ce.current<Ge.simulationPath.length-1){let tt=Ge.simulationPath[Ce.current],yt=Ge.simulationPath[Ce.current+1];Ce.current+=1;let it=vk(tt,yt);Ge.setHeading(it),Ge.setLocation(yt)}else Ge.setLocation(Ge.simulationPath[Ge.simulationPath.length-1]);else Ge.setLocation(tt=>[tt[0]+(Math.random()-.5)*1e-4,tt[1]+(Math.random()-.5)*1e-4]);Ge.pushLocationUpdate()},qe)},Ue=async We=>{let{url:Ve,method:qe="GET",headers:Ge={},body:tt}=We,yt=Ae.current,it=new Headers(Ge);yt.mockJWTToken&&it.set("Authorization",`Bearer ${yt.mockJWTToken.replace("Bearer ","")}`),tt&&typeof tt=="object"&&!it.has("Content-Type")&&it.set("Content-Type","application/json");try{let Le=await fetch(Ve,{body:tt?typeof tt=="string"?tt:JSON.stringify(tt):void 0,headers:it,method:qe}),Te=Le.headers.get("content-type"),Me;Te?.includes("application/json")?Me=await Le.json():Me=await Le.text();let ze={};return Le.headers.forEach((Ze,nt)=>{ze[nt]=Ze}),{data:Me,headers:ze,status:Le.status,statusText:Le.statusText}}catch(Le){throw{error:Le.message||"Network request failed",status:0}}};return ne.send=async(We,Ve)=>{if(We==="INITIALIZE")return Promise.resolve({appId:t,context:{theme:"dark"},description:"Mocked for Dev",env:{},insets:{bottom:0,left:0,right:0,top:0},name:"Vite Dev (Mock)",params:{},profile:{admin:!0,countryCode:"FR",createdAt:new Date().toISOString(),email:"caveman@up.app",firstName:"Smart",fullName:"Smart Caveman",lastName:"Caveman",localNumber:"0600000000",ups:100,username:"smart_caveman",uuid:"mock-user-42",xp:500},success:!0,userData:{},uuid:t||"mock-app-id",version:"1.0.0"});if(We==="GET_CURRENT_POSITION"){let qe=Ae.current;return Promise.resolve({coords:{accuracy:10,altitude:0,altitudeAccuracy:0,heading:qe.heading,latitude:qe.location[1],longitude:qe.location[0],speed:qe.autoMove?1.5*qe.speedMultiplier:0},timestamp:Date.now()})}if(We==="START_LOCATION_STREAM")return Ke(Ve),Promise.resolve();if(We==="STOP_LOCATION_STREAM")return pe(),Promise.resolve();if(We==="NETWORK_REQUEST")return Ue(Ve);if(We==="STORAGE_GET"||We==="SECURE_GET")return Promise.resolve(localStorage.getItem(`mock_sdk_${Ve.key}`));if(We==="STORAGE_SET"||We==="SECURE_SET")return localStorage.setItem(`mock_sdk_${Ve.key}`,Ve.value),Promise.resolve();if(We==="GET_USER_PROFILE")return Promise.resolve({admin:!0,countryCode:"FR",createdAt:new Date().toISOString(),email:"caveman@up.app",firstName:"Smart",fullName:"Smart Caveman",lastName:"Caveman",localNumber:"0600000000",ups:100,username:"smart_caveman",uuid:"mock-user-42",xp:500});if(We==="GET_PROFILE_PICTURE"){let qe=Ve?.uuids||[];if(qe.length===0)return Promise.resolve(l7("dummy"));let Ge={};for(let tt of qe)Ge[tt]=l7(tt);return Promise.resolve(Ge)}return We==="GET_FIDELITY_BALANCE"?Promise.resolve({balance:1337,currency:"FPoints"}):We==="PAYMENT_REQUEST"?Promise.resolve({success:!0,transactionId:`tx_${Math.random().toString(36).slice(2)}`}):We==="TRIGGER_HAPTIC"||We==="EXIT"||We==="UPDATE_CONTEXT"?Promise.resolve({success:!0}):ee(We,Ve)},ue(!0),()=>{pe(),ne.send=ee}},[t]);let Z=ve==="km"?ae*1e3:ae,re=(0,Ua.useMemo)(()=>({isPlacingLocation:H,placeLocation:V,radiusMeters:Z}),[H,V,Z]);return he?(0,zt.jsxs)("div",{className:"relative w-full h-full",children:[(0,zt.jsx)("div",{className:"w-full h-full",children:(0,zt.jsx)(a0.Provider,{value:re,children:A})}),J?(0,zt.jsx)(Ya,{className:"fixed bottom-4 right-4 w-8 h-8 rounded-full bg-slate-900/60 backdrop-blur-sm border border-slate-700/50 flex items-center justify-center text-slate-400 hover:text-blue-400 hover:bg-slate-900/80 z-[9999] transition-all shadow-lg group p-0!",onClick:()=>j(!1),title:"Open Simulation Controls",type:"button",variant:"ghost",children:(0,zt.jsxs)("svg",{className:"group-hover:scale-110 transition-transform",fill:"none",height:"14",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",viewBox:"0 0 24 24",width:"14",xmlns:"http://www.w3.org/2000/svg",children:[(0,zt.jsx)("path",{d:"M21 4H3"}),(0,zt.jsx)("path",{d:"M10 8H3"}),(0,zt.jsx)("path",{d:"M21 12H3"}),(0,zt.jsx)("path",{d:"M10 16H3"}),(0,zt.jsx)("path",{d:"M21 20H3"}),(0,zt.jsx)("circle",{cx:"14",cy:"8",r:"2"}),(0,zt.jsx)("circle",{cx:"14",cy:"16",r:"2"})]})}):(0,zt.jsxs)("div",{className:"fixed bottom-4 right-4 bg-slate-900 text-slate-300 font-mono text-xs rounded-xl shadow-2xl border border-slate-700 pointer-events-auto flex flex-col w-80 overflow-hidden animate-in slide-in-from-right duration-300",style:{zIndex:9998},children:[(0,zt.jsxs)("div",{className:"flex justify-between items-center p-3 border-b border-slate-800 cursor-pointer bg-slate-800/50 hover:bg-slate-800 transition-colors",onClick:()=>j(!0),children:[(0,zt.jsxs)("span",{className:"font-bold text-slate-100 flex items-center gap-2",children:[(0,zt.jsx)("span",{className:"text-lg",children:"\u{1F6E0}\uFE0F"})," Simulation Controls"]}),(0,zt.jsx)(Ya,{className:"text-slate-500 hover:text-white p-0 h-auto hover:bg-transparent cursor-pointer",type:"button",variant:"ghost",children:"\u25BC"})]}),(0,zt.jsxs)("div",{className:"p-4 flex flex-col gap-3",children:[(0,zt.jsxs)("div",{className:"flex justify-between items-center",children:[(0,zt.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer",children:[(0,zt.jsx)("input",{checked:I,className:"accent-blue-500 w-4 h-4",onChange:ne=>P(ne.target.checked),type:"checkbox"}),(0,zt.jsxs)("span",{className:"text-slate-200 font-bold",children:["Auto-Move ",d?"(Path)":"(Random)"]})]}),(0,zt.jsxs)("div",{className:"flex items-center gap-2",children:[(0,zt.jsx)("span",{className:"text-[10px] text-slate-500",children:"Speed:"}),(0,zt.jsx)("select",{className:"bg-slate-800 border border-slate-700 rounded px-1 py-0.5 text-white focus:outline-none focus:border-blue-500 text-[10px]",onChange:ne=>be(Number(ne.target.value)),value:Q,children:[1,2,5,10,50,100,250].map(ne=>(0,zt.jsxs)("option",{value:ne,children:[ne,"x"]},ne))})]})]}),(0,zt.jsxs)("div",{className:"grid grid-cols-2 gap-2",children:[(0,zt.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,zt.jsx)("span",{className:"text-[10px] text-slate-500 text-left",children:"Lng"}),(0,zt.jsx)("input",{className:"bg-slate-800 border border-slate-700 rounded px-2 py-1 text-white focus:outline-none focus:border-blue-500",onChange:ne=>{let ee=parseFloat(ne.target.value)||0;K([ee,R[1]]),we()},step:"0.001",type:"number",value:R[0]})]}),(0,zt.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,zt.jsx)("span",{className:"text-[10px] text-slate-500 text-left",children:"Lat"}),(0,zt.jsx)("input",{className:"bg-slate-800 border border-slate-700 rounded px-2 py-1 text-white focus:outline-none focus:border-blue-500",onChange:ne=>{let ee=parseFloat(ne.target.value)||0;K([R[0],ee]),we()},step:"0.001",type:"number",value:R[1]})]}),(0,zt.jsxs)("div",{className:"flex flex-col gap-1 col-span-2",children:[(0,zt.jsx)("span",{className:"text-[10px] text-slate-500",children:"Heading (Degrees)"}),(0,zt.jsx)("input",{className:"w-full accent-blue-500",max:"360",min:"0",onChange:ne=>{W(parseInt(ne.target.value,10)),we()},type:"range",value:Y}),(0,zt.jsxs)("div",{className:"text-right text-slate-400",children:[Y,"\xB0"]})]})]}),(0,zt.jsx)(Ya,{className:`w-full rounded px-2 py-1.5 text-[10px] font-bold border cursor-pointer ${H?"bg-blue-500/20 border-blue-500 text-blue-300":"bg-slate-800 border-slate-700 text-slate-200 hover:bg-slate-700"}`,onClick:()=>X(ne=>!ne),type:"button",variant:"ghost",children:H?"\u{1F4CD} Click the map to drop location\u2026":"\u{1F4CD} Drop location on map"}),(0,zt.jsxs)("div",{className:"flex flex-col gap-1 border-t border-slate-800 pt-3",children:[(0,zt.jsxs)("div",{className:"flex justify-between items-center",children:[(0,zt.jsx)("span",{className:"text-[10px] text-slate-500",children:"Scan Radius"}),(0,zt.jsxs)("div",{className:"flex items-center gap-1",children:[(0,zt.jsx)("input",{className:"w-16 bg-slate-800 border border-slate-700 rounded px-1.5 py-0.5 text-white text-[10px] focus:outline-none focus:border-blue-500",min:"0",onChange:ne=>le(Math.max(0,Number(ne.target.value)||0)),type:"number",value:ae}),(0,zt.jsxs)("select",{className:"bg-slate-800 border border-slate-700 rounded px-1 py-0.5 text-white text-[10px] focus:outline-none focus:border-blue-500",onChange:ne=>Fe(ne.target.value),value:ve,children:[(0,zt.jsx)("option",{value:"m",children:"m"}),(0,zt.jsx)("option",{value:"km",children:"km"})]})]})]}),(0,zt.jsx)("input",{className:"w-full accent-blue-500",max:ve==="km"?10:500,min:"0",onChange:ne=>le(Number(ne.target.value)),step:ve==="km"?.1:5,type:"range",value:ae}),(0,zt.jsx)("div",{className:"text-right text-slate-400",children:ae===0?"hidden":`${ae}${ve} radius around user`})]})]})]})]}):null};var ns=et(Et(),1),Ra=et(Zt(),1),E5=({isOpen:t=!1,onClose:r})=>{let[u,d]=(0,ns.useState)(t),[x,s]=(0,ns.useState)([]),A=(0,ns.useRef)(null);(0,ns.useEffect)(()=>{d(t)},[t]);let I=()=>s([]),P=(0,ns.useCallback)((R,K)=>{if(R.includes("LOCATION_STREAM_UPDATE"))return;let Y={content:typeof K=="string"?K:JSON.stringify(K,null,2),id:Math.random().toString(36).slice(2),label:R,time:new Date().toLocaleTimeString()};s(W=>[Y,...W].slice(0,100))},[]);return(0,ns.useEffect)(()=>{if(typeof window>"u")return;let R=Qa.bridge,K=R.send.bind(R);R.send=async(W,Q)=>(P(`OUT: ${W}`,Q),K(W,Q));let Y=R.handleNativeMessage.bind(R);return R.handleNativeMessage=W=>{let Q=W.eventName||W.event||W.type||"MSG";typeof Q=="string"&&(P(`IN: ${Q}`,W.payload||W.value||W),Y(W))},()=>{R.send=K,R.handleNativeMessage=Y}},[P]),u?(0,Ra.jsxs)("div",{className:"fixed inset-x-0 bottom-0 w-full bg-[#0a080f] border-t border-slate-800 z-[9998] p-4 shadow-2xl flex flex-col animate-in slide-in-from-bottom duration-300",children:[(0,Ra.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,Ra.jsxs)("span",{className:"text-[10px] font-bold uppercase tracking-widest text-slate-400 flex items-center gap-2",children:[(0,Ra.jsx)("span",{className:"w-2 h-2 rounded-full bg-emerald-500 animate-pulse"}),"UP SDK Debug Console"]}),(0,Ra.jsxs)("div",{className:"flex gap-4",children:[(0,Ra.jsx)(Ya,{className:"text-[10px] text-slate-500 font-bold uppercase hover:text-slate-300 hover:bg-transparent transition-colors p-0 h-auto cursor-pointer",onClick:I,type:"button",variant:"ghost",children:"Clear"}),(0,Ra.jsx)(Ya,{className:"text-[10px] text-pink-500 font-bold uppercase hover:text-pink-400 hover:bg-transparent transition-colors p-0 h-auto cursor-pointer",onClick:()=>{d(!1),r&&r()},type:"button",variant:"ghost",children:"Close"})]})]}),(0,Ra.jsx)("div",{className:"bg-black/80 rounded-xl p-3 font-mono text-[10px] text-emerald-400 min-h-[120px] max-h-[240px] overflow-y-auto border border-slate-900 custom-scrollbar",ref:A,children:x.length===0?(0,Ra.jsx)("div",{className:"text-slate-600 italic text-center py-8",children:"No logs yet. Interacting with the SDK will show events here."}):x.map(R=>(0,Ra.jsxs)("div",{className:"mb-3 pb-3 border-b border-slate-900/50 last:border-0 last:mb-0 last:pb-0",children:[(0,Ra.jsxs)("div",{className:"flex gap-2 text-slate-500 mb-1 items-center",children:[(0,Ra.jsx)("span",{className:"text-[8px]",children:R.time}),(0,Ra.jsx)("span",{className:"font-bold text-white uppercase text-[8px] bg-slate-800 px-1.5 py-0.5 rounded leading-none",children:R.label})]}),(0,Ra.jsx)("pre",{className:"whitespace-pre-wrap break-all opacity-90",children:R.content})]},R.id))})]}):(0,Ra.jsx)(Ya,{className:"fixed bottom-4 left-4 w-8 h-8 rounded-full bg-slate-900/60 backdrop-blur-sm border border-slate-700/50 flex items-center justify-center text-slate-400 hover:text-emerald-400 hover:bg-slate-900/80 transition-all z-[9998] shadow-lg group p-0!",onClick:()=>d(!0),title:"Open Debug Console",type:"button",variant:"ghost",children:(0,Ra.jsxs)("svg",{className:"group-hover:scale-110 transition-transform",fill:"none",height:"14",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",viewBox:"0 0 24 24",width:"14",xmlns:"http://www.w3.org/2000/svg",children:[(0,Ra.jsx)("path",{d:"m8 2 1.88 1.88"}),(0,Ra.jsx)("path",{d:"M14.12 3.88 16 2"}),(0,Ra.jsx)("path",{d:"M9 7.13v-1a3.003 3.003 0 1 1 6 0v1"}),(0,Ra.jsx)("path",{d:"M12 20c-3.3 0-6-2.7-6-6v-3a4 4 0 0 1 4-4h4a4 4 0 0 1 4 4v3c0 3.3-2.7 6-6 6"}),(0,Ra.jsx)("path",{d:"M12 20v-9"}),(0,Ra.jsx)("path",{d:"M6.53 9C4.6 8.8 3 7.1 3 5"}),(0,Ra.jsx)("path",{d:"M6 13H2"}),(0,Ra.jsx)("path",{d:"M3 21c0-2.1 1.7-3.9 3.8-4"}),(0,Ra.jsx)("path",{d:"M20.97 5c0 2.1-1.6 3.8-3.5 4"}),(0,Ra.jsx)("path",{d:"M22 13h-4"}),(0,Ra.jsx)("path",{d:"M17.2 17c2.1.1 3.8 1.9 3.8 4"})]})})};var u7=et(_5(),1),ss=et(Et(),1),nf=et(Zt(),1);function _k({onScan:t,onError:r,className:u=""}){let d=(0,ss.useRef)(null),x=(0,ss.useRef)(null),s=(0,ss.useRef)(null),A=(0,ss.useRef)(null),I=(0,ss.useRef)(!1),[P,R]=(0,ss.useState)(!1);return(0,ss.useEffect)(()=>{let K=!1;I.current=!1;let Y=()=>{if(A.current&&(cancelAnimationFrame(A.current),A.current=null),s.current){for(let be of s.current.getTracks())be.stop();s.current=null}},W=()=>{if(K||I.current)return;let be=d.current,he=x.current;if(!be||be.readyState!==be.HAVE_ENOUGH_DATA||!he){A.current=requestAnimationFrame(W);return}let ue=he.getContext("2d");if(!ue){A.current=requestAnimationFrame(W);return}he.height=be.videoHeight,he.width=be.videoWidth,ue.drawImage(be,0,0,he.width,he.height);let J=ue.getImageData(0,0,he.width,he.height),j=(0,u7.default)(J.data,J.width,J.height,{inversionAttempts:"dontInvert"});if(j?.data){I.current=!0,Y(),t(j.data);return}A.current=requestAnimationFrame(W)};return(async()=>{try{if(!await Qa.permission.request("camera")){r?.("Permission cam\xE9ra refus\xE9e par l'utilisateur.");return}if(!navigator.mediaDevices||!navigator.mediaDevices.getUserMedia){r?.("L'acc\xE8s \xE0 la cam\xE9ra requiert une connexion s\xE9curis\xE9e (HTTPS) ou n'est pas support\xE9 par ce navigateur.");return}let he=await navigator.mediaDevices.getUserMedia({video:{facingMode:"environment"}});if(K){for(let J of he.getTracks())J.stop();return}s.current=he;let ue=d.current;if(!ue||(ue.srcObject=he,ue.setAttribute("playsinline","true"),await ue.play(),K))return;R(!0),A.current=requestAnimationFrame(W)}catch(be){console.error("QRScanner: camera access failed:",be),r?.("Acc\xE8s cam\xE9ra refus\xE9 ou non disponible sur cet appareil.")}})(),()=>{K=!0,Y()}},[]),(0,nf.jsxs)("div",{className:u,style:{alignItems:"center",display:"flex",justifyContent:"center",overflow:"hidden",position:"relative"},children:[(0,nf.jsx)("video",{playsInline:!0,ref:d,style:{height:"100%",objectFit:"cover",width:"100%"}}),(0,nf.jsx)("canvas",{ref:x,style:{display:"none"}}),P&&(0,nf.jsx)("div",{style:{border:"2px dashed rgba(255,255,255,0.8)",borderRadius:12,bottom:"10%",left:"10%",pointerEvents:"none",position:"absolute",right:"10%",top:"10%"}})]})}var sf=et(Et(),1);var sl=et(Zt(),1),w5=(0,sf.createContext)({isMocked:!1}),bk=()=>(0,sf.useContext)(w5).isMocked,Ck=({children:t,debug:r=!1,...u})=>{let d=typeof window<"u"&&!(window.__UP_REACT_NATIVE_APP__===!0||window.ReactNativeWebView),x=(0,sf.useMemo)(()=>({isMocked:d}),[d]),s=(0,sl.jsxs)(sl.Fragment,{children:[t,(r||d)&&(0,sl.jsx)(E5,{})]});return d?(0,sl.jsx)(w5.Provider,{value:x,children:(0,sl.jsx)(C5,{...u,children:s})}):(0,sl.jsx)(w5.Provider,{value:x,children:s})};var Io=et(Et(),1),H1=et(Zt(),1),c7=8,Ek=40,wk=.4,Ak=.35,Bk="cubic-bezier(0.16, 1, 0.3, 1)",Dk=300,Sk=15,Fk=200,Lk=.5,Ik=2,Tk=1,Mk="[data-swipe-scroll-root]",d7=`transform ${Dk}ms ${Bk}`,kk=({items:t,activeId:r,onActiveChange:u,peek:d=1.1,gap:x=10,className:s,itemClassName:A,axisPriority:I="horizontal",verticalDrag:P,overscan:R=Ik,visibleOverscan:K=Tk})=>{let Y=(0,Io.useRef)(null),[W,Q]=(0,Io.useState)(0),[be,he]=(0,Io.useState)(0),[ue,J]=(0,Io.useState)(0),[j,ae]=(0,Io.useState)(!1),[le,ve]=(0,Io.useState)(!1),Fe=(0,Io.useRef)(null),[H,X]=(0,Io.useState)(()=>Math.max(0,t.findIndex(We=>We.id===r))),ie=(0,Io.useRef)(r),[Ce,Pe]=(0,Io.useState)(!0);(0,Io.useEffect)(()=>{let We=setTimeout(()=>{Pe(!1)},1e3);return()=>clearTimeout(We)},[]),(0,Io.useEffect)(()=>{if(r!==ie.current){let We=t.findIndex(Ve=>Ve.id===r);We!==-1&&X(We),ie.current=r}},[r,t]);let Ae=Math.min(Math.max(H,0),Math.max(t.length-1,0));(0,Io.useLayoutEffect)(()=>{let We=Y.current;if(!We)return;let Ve=()=>Q(We.clientWidth);Ve();let qe=new ResizeObserver(Ve);return qe.observe(We),()=>qe.disconnect()},[]);let Ee=W/d,we=Ee+x,Z=(W-Ee)/2-Ae*we+be,re=We=>{X(We);let Ve=t[We];Ve&&Ve.id!==r&&u(Ve.id)},ne=We=>{let Ve=We.targetTouches[0];if(!Ve)return;let qe=!1;if(P){let Ge=P.scrollRootSelector??Mk,tt=We.target.closest(Ge);qe=!tt||tt.scrollTop<=2}Fe.current={lastT:We.timeStamp,lastX:Ve.clientX,lastY:Ve.clientY,lockedAxis:null,startX:Ve.clientX,startY:Ve.clientY,velocityX:0,velocityY:0,verticalAllowed:qe}},ee=We=>{let Ve=We.targetTouches[0],qe=Fe.current;if(!Ve||!qe)return;let Ge=Ve.clientX-qe.startX,tt=Ve.clientY-qe.startY;if(!qe.lockedAxis){if(Math.abs(Ge)<c7&&Math.abs(tt)<c7)return;Math.abs(Ge)>Math.abs(tt)||Math.abs(Ge)===Math.abs(tt)&&I==="horizontal"?qe.lockedAxis="x":P&&qe.verticalAllowed?qe.lockedAxis="y":qe.lockedAxis="passthrough"}if(qe.lockedAxis==="passthrough")return;let yt=We.timeStamp-qe.lastT;if(yt>0&&(qe.velocityX=(Ve.clientX-qe.lastX)/yt,qe.velocityY=(Ve.clientY-qe.lastY)/yt),qe.lastX=Ve.clientX,qe.lastY=Ve.clientY,qe.lastT=We.timeStamp,qe.lockedAxis==="x"){j||ae(!0);let it=Ae===0&&Ge>0,Le=Ae===t.length-1&&Ge<0;he(it||Le?Ge*Ak:Ge)}else if(P){let it=P.direction??"down",Le=tt;it==="down"&&(Le=Math.max(0,tt)),it==="up"&&(Le=Math.min(0,tt));let Te=Math.sign(Le)*Math.max(0,Math.abs(Le)-Sk);le||ve(!0),J(Te),P.onDragChange?.(Te,!0)}We.cancelable&&We.preventDefault()},pe=()=>{let We=Fe.current;if(Fe.current=null,ae(!1),ve(!1),!We){he(0),J(0);return}if(We.lockedAxis==="x"){if(Math.abs(be)>Ek||Math.abs(We.velocityX)>wk){let qe=be<0?Math.min(t.length-1,Ae+1):Math.max(0,Ae-1);re(qe)}}else if(We.lockedAxis==="y"){let Ve=P?.dismissThreshold??Fk,qe=P?.dismissVelocity??Lk,Ge=P?.direction??"down",tt=Ge==="down"?Math.max(0,We.velocityY):Ge==="up"?Math.max(0,-We.velocityY):Math.abs(We.velocityY);(Math.abs(ue)>Ve||tt>qe)&&P?.onDismiss?.()}he(0),J(0),P?.onDragChange?.(0,!1)},Ke=Math.max(0,Ae-R),Ue=Math.min(t.length-1,Ae+R);return(0,H1.jsx)("div",{className:`relative overflow-hidden touch-pan-y ${s??""}`,onTouchCancel:pe,onTouchEnd:pe,onTouchMove:ee,onTouchStart:ne,ref:Y,children:(0,H1.jsx)("div",{className:"relative h-full",style:{transform:`translateX(${Z}px)`,transition:j||Ce?"none":d7,willChange:"transform"},children:t.map((We,Ve)=>{if(Ve<Ke||Ve>Ue)return null;let qe=Ve===Ae,Ge=qe?ue:0,tt=Math.abs(Ve-Ae),yt=tt<=K;return(0,H1.jsx)("div",{className:`absolute top-0 left-0 h-full shrink-0 ${A??""} ${We.className??""}`,style:{opacity:yt?1:0,pointerEvents:yt?void 0:"none",transform:`translateX(${Ve*we}px) translateY(${Ge}px)`,transition:qe&&le||Ce?"none":d7,width:`${Ee}px`,zIndex:R+1-tt},children:We.content},We.id)})})})};async function Pk(t,r){return G1.fetchRoute(t,r)}function Rk(t,r,u){let d=`sdk-route-${r}`,x=`sdk-route-casing-${r}`,s=`sdk-route-line-${r}`,A={features:[{geometry:u.payload.routeData.geometry,properties:{},type:"Feature"}],type:"FeatureCollection"},I=t.getSource(d);I?I.setData(A):(t.addSource(d,{data:A,type:"geojson"}),t.addLayer({id:x,layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#111111","line-opacity":.8,"line-width":8},source:d,type:"line"}),t.addLayer({id:s,layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#3b82f6","line-width":4},source:d,type:"line"}))}function zk(t,r){let u=`sdk-route-${r}`,d=`sdk-route-casing-${r}`,x=`sdk-route-line-${r}`;t.getLayer(x)&&t.removeLayer(x),t.getLayer(d)&&t.removeLayer(d),t.getSource(u)&&t.removeSource(u)}var Ok=Qa;return fS(Nk);})();
|
|
860
|
+
`}),(0,aa.jsx)("div",{className:`absolute inset-0 bg-black/45 backdrop-blur-[1px] transition-opacity duration-300 z-30 ${Me}`,onClick:()=>u("closed")}),d==="left"?(0,aa.jsxs)(aa.Fragment,{children:[r==="closed"&&(0,aa.jsx)(Ya,{className:"absolute top-4 left-4 z-40 w-12 h-12 rounded-full bg-zinc-950/80 backdrop-blur-md border border-white/10 shadow-lg flex items-center justify-center text-white active:scale-95 transition-all cursor-pointer hover:bg-zinc-900 hover:text-white p-0!",onClick:()=>u("full"),variant:"ghost",children:(0,aa.jsxs)("svg",{fill:"none",height:"24",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",viewBox:"0 0 24 24",width:"24",xmlns:"http://www.w3.org/2000/svg",children:[(0,aa.jsx)("line",{x1:"4",x2:"20",y1:"12",y2:"12"}),(0,aa.jsx)("line",{x1:"4",x2:"20",y1:"6",y2:"6"}),(0,aa.jsx)("line",{x1:"4",x2:"20",y1:"18",y2:"18"})]})}),(0,aa.jsx)(YE,{onOpenChange:gt=>u(gt?"full":"closed"),open:r!=="closed",children:(0,aa.jsxs)(xv,{className:"w-80 bg-zinc-950/85 backdrop-blur-md border-r border-y border-white/10 rounded-r-2xl shadow-2xl p-4 text-white flex flex-col h-full overflow-hidden",portal:!1,side:"left",children:[(0,aa.jsx)(pv,{className:"pb-3 border-b border-white/10 mb-2 text-left",children:(0,aa.jsx)(mv,{className:"text-sm font-bold tracking-wider text-zinc-400 uppercase",children:"Menu"})}),(0,aa.jsx)("div",{className:"flex-1 overflow-y-auto no-scrollbar pr-2",onScroll:ne,ref:X,children:ue||(0,aa.jsx)("div",{className:"flex flex-col gap-1.5",children:t.map(gt=>(0,aa.jsxs)(Ya,{className:`flex items-center gap-3 w-full py-3 px-3.5 rounded-xl text-left cursor-pointer transition-all duration-150 justify-start hover:bg-white/5 hover:text-white active:bg-white/10 text-white ${gt.disabled?"opacity-45 cursor-not-allowed pointer-events-none":""}`,disabled:gt.disabled,onClick:()=>{gt.disabled||(gt.onPress(),u("closed"))},variant:"ghost",children:[(0,aa.jsxs)("div",{className:"relative flex items-center justify-center w-8 h-8 rounded-lg bg-white/5 text-zinc-300",children:[gt.icon,gt.badge!==void 0&&(0,aa.jsx)("span",{className:"absolute -top-1 -right-1 bg-cyan-500 text-black text-[9px] font-extrabold min-w-[15px] h-3.5 rounded-full flex items-center justify-center px-1 border border-zinc-950 shadow",children:gt.badge})]}),(0,aa.jsx)("span",{className:"text-sm font-medium tracking-wide flex-1",children:gt.label})]},gt.id))})}),le&&Z&&(0,aa.jsx)(Ya,{className:"absolute bottom-6 right-6 z-50 flex items-center justify-center w-10 h-10 rounded-full bg-cyan-500 hover:bg-cyan-400 active:scale-95 text-black hover:text-black shadow-lg shadow-cyan-500/25 transition-all duration-200 cursor-pointer p-0!",onClick:()=>{X.current?.scrollTo({behavior:"smooth",top:0})},variant:"ghost",children:(0,aa.jsx)("svg",{fill:"none",height:"20",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2.5",viewBox:"0 0 24 24",width:"20",xmlns:"http://www.w3.org/2000/svg",children:(0,aa.jsx)("polyline",{points:"18 15 12 9 6 15"})})})]})})]}):(0,aa.jsxs)("div",{className:`absolute w-full bg-zinc-950/85 backdrop-blur-md border border-white/10 rounded-t-2xl shadow-2xl flex flex-col z-40 select-none ${K?"transition-none":"transition-transform duration-300 ease-out"}`,ref:ie,style:{bottom:"0px",height:`${r==="auto"?Math.max(Ze,Xt):Ze}px`,marginBottom:r==="closed"?`${Fe.bottom}px`:"0px",transform:Vt(),transition:K?"none":"transform 300ms ease-out, height 300ms ease-out, margin-bottom 250ms ease-in-out"},children:[j&&(0,aa.jsx)("div",{className:"w-full h-8 flex flex-col items-center justify-center cursor-pointer hover:bg-white/5 rounded-t-2xl transition-colors border-b border-white/5",onClick:()=>{We.current||Ae()},ref:Ce,children:(0,aa.jsx)("div",{className:"w-12 h-1 bg-white/25 rounded-full"})}),(0,aa.jsxs)("div",{className:"flex-1 flex flex-col overflow-hidden px-4 pb-4 pt-2 transition-[margin-top] duration-250 ease-in-out relative",ref:Pe,style:{marginTop:r==="closed"?`${Fe.bottom}px`:"0px"},children:[(0,aa.jsx)("div",{className:"flex-1 overflow-y-auto no-scrollbar",onScroll:ne,ref:X,style:{paddingBottom:r==="peek"?`${bt}px`:"0px"},children:ue||(0,aa.jsx)("div",{className:"flex flex-col gap-1",children:t.map(gt=>(0,aa.jsxs)(Ya,{className:`flex items-center gap-3 w-full py-3 px-3.5 rounded-xl text-left cursor-pointer transition-all duration-150 justify-start hover:bg-white/5 hover:text-white active:bg-white/10 text-white ${gt.disabled?"opacity-45 cursor-not-allowed pointer-events-none":""}`,disabled:gt.disabled,onClick:()=>{gt.disabled||(gt.onPress(),u("closed"))},variant:"ghost",children:[(0,aa.jsxs)("div",{className:"relative flex items-center justify-center w-8 h-8 rounded-lg bg-white/5 text-zinc-300",children:[gt.icon,gt.badge!==void 0&&(0,aa.jsx)("span",{className:"absolute -top-1 -right-1 bg-cyan-500 text-black text-[9px] font-extrabold min-w-[15px] h-3.5 rounded-full flex items-center justify-center px-1 border border-zinc-950 shadow",children:gt.badge})]}),(0,aa.jsx)("span",{className:"text-sm font-medium tracking-wide",children:gt.label})]},gt.id))})}),le&&Z&&(0,aa.jsx)(Ya,{className:"absolute right-6 z-50 flex items-center justify-center w-10 h-10 rounded-full bg-cyan-500 hover:bg-cyan-400 active:scale-95 text-black hover:text-black shadow-lg shadow-cyan-500/25 transition-all duration-200 cursor-pointer p-0!",onClick:()=>{X.current?.scrollTo({behavior:"smooth",top:0})},style:{bottom:r==="peek"?`calc(${24+bt}px + var(--drag-offset, 0px))`:"calc(24px + var(--drag-offset, 0px))"},variant:"ghost",children:(0,aa.jsx)("svg",{fill:"none",height:"20",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2.5",viewBox:"0 0 24 24",width:"20",xmlns:"http://www.w3.org/2000/svg",children:(0,aa.jsx)("polyline",{points:"18 15 12 9 6 15"})})})]})]})]})});var hc=et(Et(),1),xc=et(Zt(),1),eg=hc.forwardRef(({className:t,...r},u)=>(0,xc.jsx)("div",{className:zo("rounded-lg border bg-card text-card-foreground shadow-sm",t),ref:u,...r}));eg.displayName="Card";var ZL=hc.forwardRef(({className:t,...r},u)=>(0,xc.jsx)("div",{className:zo("flex flex-col space-y-1.5 p-6",t),ref:u,...r}));ZL.displayName="CardHeader";var XL=hc.forwardRef(({className:t,...r},u)=>(0,xc.jsx)("div",{className:zo("text-2xl font-semibold leading-none tracking-tight",t),ref:u,...r}));XL.displayName="CardTitle";var WL=hc.forwardRef(({className:t,...r},u)=>(0,xc.jsx)("div",{className:zo("text-sm text-muted-foreground",t),ref:u,...r}));WL.displayName="CardDescription";var tg=hc.forwardRef(({className:t,...r},u)=>(0,xc.jsx)("div",{className:zo("p-6 pt-0",t),ref:u,...r}));tg.displayName="CardContent";var KL=hc.forwardRef(({className:t,...r},u)=>(0,xc.jsx)("div",{className:zo("flex items-center p-6 pt-0",t),ref:u,...r}));KL.displayName="CardFooter";var Lt=et(Zt(),1),$E=({etaData:t,layoutMode:r,onHeaderClick:u,style:d,isDragging:x=!1})=>r==="closed-banner"?(0,Lt.jsxs)("div",{className:"w-full h-10 flex items-center justify-between px-4 pb-2 pt-1 border-b border-white/5 bg-zinc-950/15 relative overflow-hidden",children:[(0,Lt.jsxs)("div",{className:"flex items-center gap-2 cursor-pointer flex-1",onClick:u,children:[(0,Lt.jsx)("span",{className:"w-2 h-2 rounded-full bg-emerald-500 animate-pulse"}),(0,Lt.jsxs)("span",{className:"text-xs font-bold text-emerald-400",children:[t.etaMins," min (",t.distanceRemainingKm.toFixed(1)," km)"]})]}),t.onAbort&&(0,Lt.jsx)(Ya,{className:"px-1 py-1 text-[10px] font-black bg-red-500/20 text-red-400 hover:bg-red-500/30 border border-red-500/25 active:scale-95 rounded-md transition-all cursor-pointer pointer-events-auto h-auto p-0!",onClick:s=>{s.stopPropagation(),t.onAbort?.()},variant:"ghost",children:(0,Lt.jsxs)("svg",{className:"lucide lucide-x",fill:"none",height:"18",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2.5",viewBox:"0 0 24 24",width:"18",xmlns:"http://www.w3.org/2000/svg",children:[(0,Lt.jsx)("path",{d:"M18 6 6 18"}),(0,Lt.jsx)("path",{d:"m6 6 12 12"})]})}),t.progress!==void 0&&(0,Lt.jsx)("div",{className:"absolute bottom-0 left-0 right-0 h-[2px] bg-white/5",children:(0,Lt.jsx)("div",{className:"h-full bg-cyan-400",style:{width:`${t.progress}%`}})})]}):r==="open-card"?(0,Lt.jsxs)(eg,{className:"mx-4 mt-2 p-4 bg-white/5 border border-white/10 rounded-xl flex flex-col text-card-foreground",children:[(0,Lt.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,Lt.jsxs)("div",{className:"flex items-center gap-2",children:[(0,Lt.jsx)("span",{className:"w-2 h-2 rounded-full bg-emerald-500 animate-pulse"}),(0,Lt.jsx)("span",{className:"text-[10px] font-bold text-emerald-400 uppercase tracking-wider",children:t.label||"Journey Active"})]}),t.onAbort&&(0,Lt.jsx)(Ya,{className:"px-1 py-1 text-xs font-bold bg-red-500/20 text-red-400 hover:bg-red-500/30 border border-red-500/30 active:scale-95 rounded-lg transition-all cursor-pointer pointer-events-auto h-auto p-0!",onClick:t.onAbort,variant:"ghost",children:(0,Lt.jsxs)("svg",{className:"lucide lucide-x",fill:"none",height:"18",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2.5",viewBox:"0 0 24 24",width:"18",xmlns:"http://www.w3.org/2000/svg",children:[(0,Lt.jsx)("path",{d:"M18 6 6 18"}),(0,Lt.jsx)("path",{d:"m6 6 12 12"})]})})]}),(0,Lt.jsxs)(tg,{className:"p-0 flex flex-col",children:[(0,Lt.jsxs)("div",{className:"grid grid-cols-2 divide-x divide-white/10 py-1.5 mb-2.5",children:[(0,Lt.jsxs)("div",{className:"text-center",children:[(0,Lt.jsxs)("div",{className:"text-xl font-black text-white leading-none",children:[t.etaMins,(0,Lt.jsx)("span",{className:"text-xs text-zinc-400 font-normal",children:" min"})]}),(0,Lt.jsx)("div",{className:"text-[8px] text-zinc-500 font-bold uppercase tracking-wider mt-1",children:"Time Remaining"})]}),(0,Lt.jsxs)("div",{className:"text-center",children:[(0,Lt.jsxs)("div",{className:"text-xl font-black text-white leading-none",children:[t.distanceRemainingKm.toFixed(1),(0,Lt.jsx)("span",{className:"text-xs text-zinc-400 font-normal",children:" km"})]}),(0,Lt.jsx)("div",{className:"text-[8px] text-zinc-500 font-bold uppercase tracking-wider mt-1",children:"Distance Remaining"})]})]}),t.progress!==void 0&&(0,Lt.jsxs)("div",{className:"mb-3",children:[(0,Lt.jsxs)("div",{className:"flex justify-between text-[9px] font-bold text-zinc-400 mb-1",children:[(0,Lt.jsx)("span",{children:"Progress"}),(0,Lt.jsxs)("span",{children:[Math.round(t.progress),"%"]})]}),(0,Lt.jsx)("div",{className:"h-1 bg-white/10 rounded-full overflow-hidden",children:(0,Lt.jsx)("div",{className:"h-full bg-cyan-400 rounded-full",style:{width:`${t.progress}%`}})})]}),t.mode==="preview"&&t.onStart&&(0,Lt.jsx)(Ya,{className:"w-full py-2.5 text-xs font-bold bg-cyan-500 text-black hover:bg-cyan-400 hover:text-black active:scale-95 rounded-lg transition-all cursor-pointer h-auto",onClick:t.onStart,variant:"ghost",children:"Start Guidance"})]})]}):(0,Lt.jsxs)(eg,{className:`absolute left-1/2 -translate-x-1/2 z-40 w-[calc(100%-2rem)] max-w-[320px] sm:max-w-[380px] bg-zinc-950/85 backdrop-blur-md border border-white/10 rounded-2xl shadow-2xl p-3 sm:p-4 flex flex-col pointer-events-auto select-none text-card-foreground ${x?"transition-none":"transition-all duration-300 ease-out"}`,style:d,children:[(0,Lt.jsxs)("div",{className:"flex items-center justify-between mb-2 sm:mb-3",children:[(0,Lt.jsxs)("div",{className:"flex items-center gap-2",children:[(0,Lt.jsx)("span",{className:"w-1.5 h-1.5 sm:w-2 sm:h-2 rounded-full bg-emerald-500 animate-pulse"}),(0,Lt.jsx)("span",{className:"text-[9px] sm:text-[10px] font-bold text-emerald-400 uppercase tracking-wider",children:t.label||"Guidance Active"})]}),t.onAbort&&(0,Lt.jsx)(Ya,{className:"px-1 py-1 text-[10px] sm:text-xs font-bold bg-red-500/20 text-red-400 hover:bg-red-500/30 border border-red-500/30 active:scale-95 rounded-lg transition-all cursor-pointer h-auto p-0!",onClick:t.onAbort,variant:"ghost",children:(0,Lt.jsxs)("svg",{className:"lucide lucide-x",fill:"none",height:"18",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2.5",viewBox:"0 0 24 24",width:"18",xmlns:"http://www.w3.org/2000/svg",children:[(0,Lt.jsx)("path",{d:"M18 6 6 18"}),(0,Lt.jsx)("path",{d:"m6 6 12 12"})]})})]}),(0,Lt.jsxs)(tg,{className:"p-0 flex flex-col",children:[(0,Lt.jsxs)("div",{className:"grid grid-cols-2 divide-x divide-white/10 py-0.5 sm:py-1 mb-2 sm:mb-3",children:[(0,Lt.jsx)("div",{className:"text-center",children:(0,Lt.jsxs)("div",{className:"text-base sm:text-lg font-black text-white leading-none",children:[t.etaMins,(0,Lt.jsxs)("span",{className:"text-[10px] sm:text-xs text-zinc-400 font-normal",children:[" ","min"]})]})}),(0,Lt.jsx)("div",{className:"text-center",children:(0,Lt.jsxs)("div",{className:"text-base sm:text-lg font-black text-white leading-none",children:[t.distanceRemainingKm.toFixed(1),(0,Lt.jsxs)("span",{className:"text-[10px] sm:text-xs text-zinc-400 font-normal",children:[" ","km"]})]})})]}),t.progress!==void 0&&(0,Lt.jsxs)("div",{children:[(0,Lt.jsxs)("div",{className:"flex justify-between text-[8px] sm:text-[9px] font-bold text-zinc-400 mb-1",children:[(0,Lt.jsx)("span",{children:"Progress"}),(0,Lt.jsxs)("span",{children:[Math.round(t.progress),"%"]})]}),(0,Lt.jsx)("div",{className:"h-1 sm:h-1.5 bg-white/10 rounded-full overflow-hidden",children:(0,Lt.jsx)("div",{className:"h-full bg-cyan-400 rounded-full",style:{width:`${t.progress}%`}})})]}),t.mode==="preview"&&t.onStart&&(0,Lt.jsx)(Ya,{className:"mt-2.5 sm:mt-3 py-1.5 sm:py-2 text-[11px] sm:text-xs font-bold bg-cyan-500 text-black hover:bg-cyan-400 hover:text-black active:scale-95 rounded-lg transition-all cursor-pointer h-auto",onClick:t.onStart,variant:"ghost",children:"Start Guidance"})]})]});var pa=et(Zt(),1),e3=({customControls:t=[],etaBarHeight:r,onRecenter:u,isMapCentered:d,mapBearing:x,mapPitch:s,onResetBearing:A,initialViewState:I,drawerState:P,side:R,etaData:K,isDragging:Y,clampedDragOffset:W,customRecenterButton:Q,customCompassButton:be,drawerPeekHeight:he,insets:ue={bottom:0,left:0,right:0,top:0},bottomOffset:J=0})=>{let j=t.filter(Ce=>Ce.position==="above-recenter"),ae=t.filter(Ce=>Ce.position==="below-recenter"),le=Math.abs(x)>=.5||Math.abs(s)>=.5,ve="32px",Fe=K?r:P==="closed"?ue.bottom:0,H=typeof he=="number"?`${he}px`:he||"15%",X=R==="bottom"?P==="closed"?`calc(${ve} + 1rem + ${Fe}px + ${J}px - var(--drag-offset, 0px))`:`calc(${H} + 1rem + ${K?r:0}px + ${J}px - var(--drag-offset, 0px))`:`calc(1rem + ${ue.bottom}px + ${J}px)`;return(0,pa.jsxs)("div",{className:`absolute right-4 z-30 flex flex-col items-center gap-3 select-none pointer-events-none ${Y?"transition-none":"transition-all duration-300 ease-out"} ${R!=="bottom"||P!=="full"?"opacity-100 scale-100 pointer-events-auto":"opacity-0 scale-75 pointer-events-none"}`,style:{bottom:X},children:[j.length>0&&(0,pa.jsx)("div",{className:"flex flex-col gap-2 pointer-events-auto",children:j.map(Ce=>(0,pa.jsxs)("div",{className:"relative group flex items-center",children:[Ce.tooltip&&(0,pa.jsx)("div",{className:"absolute right-14 pointer-events-none opacity-0 scale-95 origin-right group-hover:opacity-100 group-hover:scale-100 transition-all duration-150 bg-zinc-900/95 border border-white/10 text-white text-xs px-2.5 py-1.5 rounded-lg shadow-xl whitespace-nowrap",children:Ce.tooltip}),(0,pa.jsx)(Ya,{className:`w-12 h-12 rounded-full bg-zinc-950/80 backdrop-blur-md border border-white/10 shadow-lg flex items-center justify-center text-white active:scale-95 transition-all cursor-pointer p-0! hover:bg-zinc-900 hover:text-white ${Ce.activeState?"ring-2 ring-cyan-400 ring-offset-2 ring-offset-zinc-950":""}`,onClick:Ce.onPress,variant:"ghost",children:Ce.icon})]},Ce.id))}),le&&(be?(0,pa.jsx)("div",{className:"pointer-events-auto",children:be}):(0,pa.jsx)("div",{className:"pointer-events-auto",children:(0,pa.jsx)(Ya,{className:`w-12 h-12 rounded-full bg-zinc-950/80 backdrop-blur-md border border-white/10 shadow-lg flex items-center justify-center text-white active:scale-95 transition-all duration-300 p-0! hover:bg-zinc-900 hover:text-white ${le?"opacity-100 pointer-events-auto":"opacity-0 pointer-events-none h-0 w-0 border-none m-0 p-0 overflow-hidden"}`,onClick:()=>A({pitch:I?.pitch??0}),style:{transform:le?"scale(1) rotate(0deg)":"scale(0.7) rotate(0deg)"},title:"Reset bearing to North",variant:"ghost",children:(0,pa.jsxs)("svg",{className:"w-7 h-7 transition-transform duration-75 ease-out",fill:"none",style:{transform:`rotate(${-x}deg)`},viewBox:"0 0 24 24",children:[(0,pa.jsx)("circle",{cx:"12",cy:"12",r:"9.5",stroke:"white",strokeOpacity:"0.2",strokeWidth:"1"}),(0,pa.jsx)("path",{d:"M12 4.5L15 12H9L12 4.5Z",fill:"#ef4444"}),(0,pa.jsx)("path",{d:"M12 19.5L9 12H15L12 19.5Z",fill:"#f4f4f5"}),(0,pa.jsx)("circle",{cx:"12",cy:"12",fill:"#18181b",r:"1.5"})]})})})),Q?(0,pa.jsx)("div",{className:"pointer-events-auto",children:Q}):(0,pa.jsx)("div",{className:"pointer-events-auto",children:(0,pa.jsx)(Ya,{className:`w-12 h-12 rounded-full bg-zinc-950/80 backdrop-blur-md border border-white/10 shadow-lg flex items-center justify-center text-white active:scale-95 transition-all cursor-pointer p-0! hover:bg-zinc-900 hover:text-white ${d?"ring-2 ring-cyan-400 ring-offset-2 ring-offset-zinc-950":""}`,onClick:()=>u(),title:"Recenter Map",variant:"ghost",children:d?(0,pa.jsxs)("svg",{className:"w-6 h-6 text-cyan-400",fill:"none",stroke:"currentColor",strokeWidth:"2.2",viewBox:"0 0 24 24",children:[(0,pa.jsx)("circle",{cx:"12",cy:"12",r:"8"}),(0,pa.jsx)("circle",{cx:"12",cy:"12",fill:"currentColor",r:"3"}),(0,pa.jsx)("line",{x1:"12",x2:"12",y1:"2",y2:"4"}),(0,pa.jsx)("line",{x1:"12",x2:"12",y1:"20",y2:"22"}),(0,pa.jsx)("line",{x1:"2",x2:"4",y1:"12",y2:"12"}),(0,pa.jsx)("line",{x1:"20",x2:"22",y1:"12",y2:"12"})]}):(0,pa.jsxs)("svg",{className:"w-6 h-6 text-zinc-300",fill:"none",stroke:"currentColor",strokeWidth:"2",viewBox:"0 0 24 24",children:[(0,pa.jsx)("circle",{cx:"12",cy:"12",r:"8"}),(0,pa.jsx)("line",{x1:"12",x2:"12",y1:"2",y2:"4"}),(0,pa.jsx)("line",{x1:"12",x2:"12",y1:"20",y2:"22"}),(0,pa.jsx)("line",{x1:"2",x2:"4",y1:"12",y2:"12"}),(0,pa.jsx)("line",{x1:"20",x2:"22",y1:"12",y2:"12"})]})})}),ae.length>0&&(0,pa.jsx)("div",{className:"flex flex-col gap-2 pointer-events-auto",children:ae.map(Ce=>(0,pa.jsxs)("div",{className:"relative group flex items-center",children:[Ce.tooltip&&(0,pa.jsx)("div",{className:"absolute right-14 pointer-events-none opacity-0 scale-95 origin-right group-hover:opacity-100 group-hover:scale-100 transition-all duration-150 bg-zinc-900/95 border border-white/10 text-white text-xs px-2.5 py-1.5 rounded-lg shadow-xl whitespace-nowrap",children:Ce.tooltip}),(0,pa.jsx)(Ya,{className:`w-12 h-12 rounded-full bg-zinc-950/80 backdrop-blur-md border border-white/10 shadow-lg flex items-center justify-center text-white active:scale-95 transition-all cursor-pointer p-0! hover:bg-zinc-900 hover:text-white ${Ce.activeState?"ring-2 ring-cyan-400 ring-offset-2 ring-offset-zinc-950":""}`,onClick:Ce.onPress,variant:"ghost",children:Ce.icon})]},Ce.id))})]})};var va=et(Et(),1),t3=et(Zt(),1),Kn=(0,va.createContext)(null),yv=({children:t})=>{let[r,u]=(0,va.useState)(!0),[d,x]=(0,va.useState)(0),[s,A]=(0,va.useState)(0),[I,P]=(0,va.useState)("closed"),R=(0,va.useRef)(null),K=(0,va.useCallback)(ee=>{P(ee)},[]),[Y,W]=(0,va.useState)(!0),Q=(0,va.useCallback)(ee=>{W(pe=>pe===ee?pe:ee)},[]),[be,he]=(0,va.useState)(!1),ue=(0,va.useCallback)(ee=>{he(pe=>pe===ee?pe:ee)},[]),[J,j]=(0,va.useState)(void 0),ae=(0,va.useCallback)(ee=>{j(pe=>!pe&&!ee?pe:!pe||!ee?ee:pe.etaMins===ee.etaMins&&pe.distanceRemainingKm===ee.distanceRemainingKm&&pe.label===ee.label&&pe.progress===ee.progress&&pe.mode===ee.mode&&pe.isCalculating===ee.isCalculating&&pe.error===ee.error?pe:ee)},[]),[le,ve]=(0,va.useState)({bottom:0,left:0,right:0,top:0}),Fe=(0,va.useCallback)(ee=>{ve(pe=>({...pe,...ee}))},[]),H=(0,va.useRef)(null),X=(0,va.useRef)(null),ie=(0,va.useRef)(null),Ce=(0,va.useCallback)(ee=>{H.current&&H.current(ee)},[]),Pe=(0,va.useCallback)(ee=>{X.current&&X.current(ee)},[]),Ae=(0,va.useCallback)((ee,pe)=>{ie.current&&ie.current(ee,pe)},[]),Ee=(0,va.useCallback)(ee=>{H.current=ee},[]),we=(0,va.useCallback)(ee=>{X.current=ee},[]),V=(0,va.useCallback)(ee=>{ie.current=ee},[]),Z=(0,va.useCallback)(ee=>{x(ee)},[]),re=(0,va.useCallback)(ee=>{A(ee)},[]),ne=(0,va.useMemo)(()=>({_registerCenterCallback:Ee,_registerFlyToCallback:V,_registerResetBearingCallback:we,bearing:d,centerOnUser:Ce,drawerContentRef:R,drawerHandleVisible:Y,drawerState:I,etaData:J,flyTo:Ae,hasControls:be,insets:le,isFollowing:r,pitch:s,resetBearing:Pe,setBearing:Z,setDrawerHandleVisible:Q,setDrawerState:K,setEtaData:ae,setHasControls:ue,setInsets:Fe,setIsFollowing:u,setPitch:re}),[Ee,V,we,d,Ce,Y,I,J,Ae,be,r,s,Pe,Z,Q,K,ae,ue,re,le,Fe]);return(0,t3.jsx)(Kn.Provider,{value:ne,children:t})},YL=()=>{let t=(0,va.useContext)(Kn);if(!t)throw new Error("useMapControls must be used within a MapControlsProvider");return t};var Jr=et(Et(),1),Os=et(Zt(),1),vv=(t,r)=>typeof t=="number"?t:t.endsWith("%")?parseFloat(t)/100*r:parseFloat(t),_v=({menuItems:t=[],drawerSide:r,customControls:u=[],etaBarHeight:d=100,onRecenter:x,isMapCentered:s,mapBearing:A,onResetBearing:I,etaData:P,customRecenterButton:R,defaultState:K,initialViewState:Y,customCompassButton:W,drawerPeekHeight:Q,drawerFullHeight:be,drawerAutoMaxHeight:he,drawerContentRef:ue,menuContent:J,children:j,enableTouchDrag:ae=!1,showScrollToTopButton:le=!0,scrollToTopThreshold:ve=300,controlsBottomOffset:Fe=0,isInternal:H=!1})=>{let X=(0,Jr.useContext)(Kn),ie=X?.drawerContentRef,Ce=(0,Jr.useCallback)(wt=>{ue&&(typeof ue=="function"?ue(wt):ue.current=wt),ie&&(ie.current=wt)},[ue,ie]),[Pe,Ae]=(0,Jr.useState)(K??"closed"),Ee=X?X.drawerState:Pe,we=(0,Jr.useCallback)(wt=>{X?X.setDrawerState(wt):Ae(wt)},[X]);(0,Jr.useEffect)(()=>{K&&X&&X.setDrawerState(K)},[]);let[V,Z]=(0,Jr.useState)("left"),re=(0,Jr.useRef)(null),[ne,ee]=(0,Jr.useState)(600);(0,Jr.useEffect)(()=>{let wt=re.current?.parentElement;if(!wt)return;let Kt=()=>{ee(wt.getBoundingClientRect().height)};Kt();let na=new ResizeObserver(Kt);return na.observe(wt),()=>{na.disconnect()}},[]);let pe=X?.setHasControls;(0,Jr.useEffect)(()=>{if(pe&&!H)return pe(!0),()=>pe(!1)},[pe,H]);let Ke=s!==void 0?s:X?X.isFollowing:!0,Ue=A!==void 0?A:X?X.bearing:0,We=wt=>{x?x(wt):X&&X.centerOnUser(wt)},Ve=wt=>{I?I(wt):X&&X.resetBearing(wt)},qe=X?X.pitch:0,Ge=P!==void 0?P:X?.etaData,[tt,yt]=(0,Jr.useState)(null),[it,Le]=(0,Jr.useState)(null),[Te,Me]=(0,Jr.useState)(0);(0,Jr.useEffect)(()=>{if(typeof window>"u")return;let wt=()=>{r?Z(r):window.innerWidth<768?Z("bottom"):Z("left")};return wt(),window.addEventListener("resize",wt),()=>window.removeEventListener("resize",wt)},[r]);let ze=tt!==null&&it!==null,Ze=ze?it-tt:0,nt=vv(be||"85%",ne),mt=vv(Q||"15%",ne),bt=vv(he||"100%",ne),Xt=Math.min(bt,Te),It=X?.insets.bottom||0,Vt=X?X.drawerHandleVisible:!0,gt=(Vt?32:0)+(Ee==="closed"?It:0),Pt=Ze;Ee==="full"?Pt=Math.max(0,Math.min(nt-gt,Ze)):Ee==="peek"?Pt=Math.max(-(nt-mt),Math.min(mt-gt,Ze)):Ee==="closed"?Pt=Math.min(0,Math.max(-(nt-gt),Ze)):Ee==="auto"&&(Pt=Math.max(0,Ze));let Rt=Vt?32:0;Ee==="peek"?Rt=mt:Ee==="full"?Rt=nt:Ee==="auto"&&(Rt=Xt);let kt=Rt-Pt,St=mt+20,Ot=mt+(nt-mt)*.35,jt=1,vt="1rem";return V==="bottom"?(kt<=St?jt=1:kt>=Ot?jt=0:jt=1-(kt-St)/(Ot-St),vt=`calc(${Rt+(Ee==="closed"?It:0)+16}px - var(--drag-offset, 0px))`):(jt=Ee==="full"?0:1,vt=`calc(1rem + ${It}px)`),(0,Os.jsxs)(Os.Fragment,{children:[(0,Os.jsx)("div",{ref:re,style:{display:"none"}}),(0,Os.jsx)(JE,{clampedDragOffset:Pt,containerHeight:ne,currentTouchY:it,drawerAutoMaxHeight:he,drawerFullHeight:be,drawerPeekHeight:Q,enableTouchDrag:ae,etaBarHeight:d,etaData:Ge,handleVisible:Vt,isDragging:ze,menuContent:j||J,menuItems:t,onAutoContentHeightChange:Me,onChangeState:we,ref:Ce,safeAreaInsets:X?.insets,scrollToTopThreshold:ve,setCurrentTouchY:Le,setTouchStartY:yt,showScrollToTopButton:le,side:V,state:Ee,touchStartY:tt}),(0,Os.jsx)(e3,{bottomOffset:Fe,clampedDragOffset:Pt,customCompassButton:W,customControls:u,customRecenterButton:R,drawerPeekHeight:Q,drawerState:Ee,etaBarHeight:d+(Ee==="closed"?It:0),etaData:Ge,initialViewState:Y,insets:X?.insets,isDragging:ze,isMapCentered:Ke,mapBearing:Ue,mapPitch:qe,onRecenter:()=>We(),onResetBearing:Ve,side:V}),Ge&&(0,Os.jsx)($E,{etaData:Ge,isDragging:ze,layoutMode:"floating-card",style:{bottom:vt,opacity:jt,pointerEvents:jt>.1?"auto":"none",transition:ze?"none":"bottom 250ms ease-in-out, opacity 300ms ease-out"}})]})};var a3=et(Et(),1),Dn=et(Zt(),1),zh=({children:t})=>(0,Dn.jsx)("div",{className:"flex flex-col gap-1.5",children:t}),ag=({id:t,label:r,icon:u,onPress:d,badge:x,disabled:s=!1,children:A})=>{let I=(0,a3.useContext)(Kn);return(0,Dn.jsxs)("button",{className:`flex items-center gap-3 w-full py-3 px-3.5 rounded-xl text-left cursor-pointer transition-all duration-150 ${s?"opacity-45 cursor-not-allowed pointer-events-none":"hover:bg-white/5 active:bg-white/10 text-white"}`,disabled:s,onClick:R=>{s||(d&&d(),I&&I.setDrawerState&&I.setDrawerState("closed"))},type:"button",children:[u&&(0,Dn.jsxs)("div",{className:"relative flex items-center justify-center w-8 h-8 rounded-lg bg-white/5 text-zinc-300",children:[u,x!==void 0&&(0,Dn.jsx)("span",{className:"absolute -top-1 -right-1 bg-cyan-500 text-black text-[9px] font-extrabold min-w-[15px] h-3.5 rounded-full flex items-center justify-center px-1 border border-zinc-950 shadow",children:x})]}),(0,Dn.jsxs)("div",{className:"flex-1 flex flex-col justify-center",children:[(0,Dn.jsx)("span",{className:"text-sm font-medium tracking-wide flex-1",children:r}),A]})]})};zh.displayName="MapMenu";ag.displayName="MapMenuItem";var rg=({children:t,showDivider:r=!0,className:u=""})=>(0,Dn.jsx)("div",{className:`flex items-center justify-between pb-3 first:mt-0 px-3.5 ${u} ${r?"border-b border-white/10 mb-2 mt-4":""}`,children:t});rg.displayName="MapMenuTitle";var og=({className:t=""})=>(0,Dn.jsx)("div",{className:`h-[1px] bg-white/10 my-3 mx-3.5 ${t}`});og.displayName="MapMenuDivider";var ig=({children:t,className:r=""})=>(0,Dn.jsx)("div",{className:`mt-auto pt-4 border-t border-white/10 px-3.5 text-xs text-zinc-500 font-medium ${r}`,children:t});ig.displayName="MapMenuFooter";var r3=(d=>(d.TOP_SCROLL_MORE="TOP_SCROLL_MORE",d.BOTTOM_SCROLL_MORE="BOTTOM_SCROLL_MORE",d.BACK_GESTURE="BACK_GESTURE",d))(r3||{}),Oh=(u=>(u.LOCATION_UPDATE="LOCATION_UPDATE",u.LOCATION_STREAM_UPDATE="LOCATION_STREAM_UPDATE",u))(Oh||{}),o3=(r=>(r.UPDATE_CONTEXT="UPDATE_CONTEXT",r))(o3||{});var Ns=et(Et(),1),bv=.12,Nh=()=>{let[t,r]=(0,Ns.useState)({accuracy:null,coords:null,heading:null}),u=(0,Ns.useRef)({accuracy:null,coords:null,heading:null}),d=(0,Ns.useRef)({accuracy:null,coords:null,heading:null}),x=(0,Ns.useCallback)(s=>{let A=s.location?.coords||s.coords,I=s.heading||s.coords,P=A?[A.longitude,A.latitude]:null,R=null;return I?.trueHeading!==void 0&&I.trueHeading>=0?R=I.trueHeading:I?.magneticHeading!==void 0&&I.magneticHeading>=0?R=I.magneticHeading:I?.heading!==null&&I.heading>=0&&(R=I.heading),{accuracy:A?.accuracy||null,coords:P,heading:R}},[]);return(0,Ns.useEffect)(()=>{let s,A=()=>{let R=!1;if(u.current.coords)if(!d.current.coords)d.current.coords=[...u.current.coords],R=!0;else{let[K,Y]=u.current.coords,[W,Q]=d.current.coords,be=W+(K-W)*bv,he=Q+(Y-Q)*bv;(Math.abs(be-W)>1e-7||Math.abs(he-Q)>1e-7)&&(d.current.coords=[be,he],R=!0)}if(u.current.heading!==null)if(d.current.heading===null)d.current.heading=u.current.heading,R=!0;else{let K=u.current.heading,Y=d.current.heading,W=K-Y;W>180&&(W-=360),W<-180&&(W+=360);let be=((Y+W*bv)%360+360)%360;Math.abs(W)>.1&&(d.current.heading=be,R=!0)}R&&r({accuracy:u.current.accuracy,coords:d.current.coords?[...d.current.coords]:null,heading:d.current.heading}),s=requestAnimationFrame(A)};s=requestAnimationFrame(A),Qa.location.getCurrentPosition().then(R=>{let K=x(R);u.current=K}).catch(R=>console.warn("Initial location fetch failed",R));let I=Qa.on("LOCATION_STREAM_UPDATE",R=>{u.current=x(R)}),P=Qa.on("LOCATION_UPDATE",R=>{u.current=x(R)});return Qa.location.startStream({distanceFilter:1,headingThreshold:2}).catch(R=>console.warn("Failed to start location stream",R)),()=>{cancelAnimationFrame(s),I(),P(),Qa.location.stopStream().catch(()=>{})}},[x]),t};var vr=et(Et(),1),Cv=({origin:t,destination:r,profile:u="driving",recalculateThreshold:d=50,enabled:x=!0,initialMode:s="preview"})=>{let[A,I]=(0,vr.useState)(null),[P,R]=(0,vr.useState)(null),[K,Y]=(0,vr.useState)(!1),[W,Q]=(0,vr.useState)(null),[be,he]=(0,vr.useState)(s),ue=Nh(),J=t||ue.coords,j=ue.coords||t,ae=(0,vr.useRef)(null),le=(0,vr.useRef)(null),ve=(0,vr.useRef)(!1),Fe=(0,vr.useRef)(null),H=(0,vr.useCallback)((Ce,Pe)=>{let Ee=Ce[1]*Math.PI/180,we=Pe[1]*Math.PI/180,V=(Pe[1]-Ce[1])*Math.PI/180,Z=(Pe[0]-Ce[0])*Math.PI/180,re=Math.sin(V/2)*Math.sin(V/2)+Math.cos(Ee)*Math.cos(we)*Math.sin(Z/2)*Math.sin(Z/2);return 6371e3*(2*Math.atan2(Math.sqrt(re),Math.sqrt(1-re)))},[]),X=(0,vr.useMemo)(()=>{if(!j||!A||A.geometry.coordinates.length<2)return j&&r?H(j,r):null;let Ce=A.geometry.coordinates,Pe=1/0,Ae=0,Ee=(re,ne)=>(re[0]-ne[0])**2+(re[1]-ne[1])**2;for(let re=0;re<Ce.length;re++){let ne=Ee(j,Ce[re]);ne<Pe&&(Pe=ne,Ae=re)}let we=Ce.slice(Ae+1),V=0,Z=j;for(let re of we)V+=H(Z,re),Z=re;return V},[j,A,r,H]),ie=(0,vr.useCallback)(async(Ce,Pe,Ae)=>{if(!ve.current){ve.current=!0,Y(!0);try{let Ee=await Qa.routing.getRoute({destination:Pe,origin:Ce,profile:u});if(I(Ee),Q(null),Ae){let we=Ee.geometry.coordinates,V=0;for(let Z=0;Z<we.length-1;Z++)V+=H(we[Z],we[Z+1]);R(V)}ae.current=Ce,le.current=Pe}catch(Ee){Q(Ee.message||"Failed to fetch route")}finally{Y(!1),ve.current=!1}}},[u,H]);return(0,vr.useEffect)(()=>{s==="navigation"&&he("navigation")},[s]),(0,vr.useEffect)(()=>{if(!x||!r||!J){(!x||!r)&&(I(null),R(null),ae.current=null,le.current=null,Fe.current=null,he(s));return}let Ce=!le.current||le.current[0]!==r[0]||le.current[1]!==r[1],Pe=`${r[0]},${r[1]}`;if(Fe.current!==Pe&&(Fe.current=Pe,he(s)),Ce)ie(J,r,!0);else if(ae.current){let Ae=j||J;H(Ae,ae.current)>d&&ie(Ae,r,!1)}else ie(J,r,!0)},[J,j,r,x,s,d,ie,H]),{currentDistanceMeters:X,error:W,isCalculating:K,mode:be,recalculate:()=>J&&r&&ie(J,r,!1),route:A,start:()=>he("navigation"),totalDistance:P}},QL=(t,r,u="driving")=>{let[d,x]=(0,vr.useState)(null),[s,A]=(0,vr.useState)(!1),[I,P]=(0,vr.useState)(null);return(0,vr.useEffect)(()=>{if(!t||!r){x(null);return}(async()=>{A(!0);try{let K=await Qa.routing.getRoute({destination:r,origin:t,profile:u});x(K),P(null)}catch(K){P(K.message||"Failed to fetch route")}finally{A(!1)}})()},[t,r,u]),{error:I,isCalculating:s,route:d}};var Fi=et(Et(),1),Ev=(t={})=>{let{navigation:r,onAbort:u,onModeChange:d}=t,[x,s]=(0,Fi.useState)(null),[A,I]=(0,Fi.useState)(!1);(0,Fi.useEffect)(()=>{let H=Qa.on("SDK_NAVIGATION_CREATE",Ce=>{I(!1),s(Ce)}),X=Qa.on("SDK_NAVIGATION_START",()=>{I(!1),s(Ce=>Ce?{...Ce,mode:"navigation"}:null)}),ie=Qa.on("SDK_NAVIGATION_ABORT",()=>{I(!0),s(null)});return()=>{H(),X(),ie()}},[]);let P=x||r,R=Cv({destination:P?.destination||null,enabled:!A&&!!P?.destination,initialMode:P?.mode||"preview",origin:P?.origin,profile:P?.profile||"driving",recalculateThreshold:P?.recalculateThreshold||50}),K=(0,Fi.useRef)(null),Y=P?.destination;(0,Fi.useEffect)(()=>{Y&&(!K.current||K.current[0]!==Y[0]||K.current[1]!==Y[1])&&I(!1),K.current=Y},[Y]);let W=(0,Fi.useRef)(d);W.current=d,(0,Fi.useEffect)(()=>{W.current?.(R.mode)},[R.mode]);let Q=!A&&!!P?.destination,be=Q?R.currentDistanceMeters:null,he=Q?R.totalDistance:null,ue=R.route?.durationSeconds??null,J=be??0,j=J/1e3,ae=(()=>{if(!ue||!he||!be)return 0;let H=be/he;return Math.ceil(ue*H/60)})(),le=he&&he>0?Math.min(100,Math.max(0,(he-J)/he*100)):0,ve=(0,Fi.useCallback)(()=>{I(!0),s(null),Qa.navigation.abort(),u&&u()},[u]),Fe=(0,Fi.useCallback)(()=>{Qa.navigation.start(),R.start()},[R.start]);return{cancel:ve,distanceRemainingKm:j,distanceRemainingMeters:be,error:Q?R.error:null,etaMinutes:ae,isActive:Q,isCalculating:Q?R.isCalculating:!1,mode:Q?R.mode:"preview",progress:le,recalculate:R.recalculate,route:Q?R.route:null,start:Fe,totalDistanceMeters:he}};var i3=et(Et(),1),wv=(t,r)=>(0,i3.useMemo)(()=>{if(!t||!r||t.coordinates.length<2)return t;let u=t.coordinates,d=1/0,x=0,s=(I,P)=>(I[0]-P[0])**2+(I[1]-P[1])**2;for(let I=0;I<u.length;I++){let P=s(r,u[I]);P<d&&(d=P,x=I)}let A=u.slice(x+1);return{coordinates:[r,...A],type:"LineString"}},[t,r]);var Hl=et(Et(),1),Ii=et(Et(),1);var ng=et(Et(),1),Yn=et(Et(),1);var sg=ng.createContext(null),Av=t=>{let[r,u]=(0,Yn.useState)({}),d=(0,Yn.useCallback)((s,A="default")=>{u(I=>{if(A==="current")throw new Error("'current' cannot be used as map id");if(I[A])throw new Error(`Multiple maps with the same id: ${A}`);return{...I,[A]:s}})},[]),x=(0,Yn.useCallback)((s="default")=>{u(A=>{if(A[s]){let I={...A};return delete I[s],I}return A})},[]);return ng.createElement(sg.Provider,{value:{maps:r,onMapMount:d,onMapUnmount:x}},t.children)};function Bv(){let t=(0,Yn.useContext)(sg)?.maps,r=(0,Yn.useContext)(Li);return(0,Yn.useMemo)(()=>({...t,current:r?.map}),[t,r])}function n3(t,r){let u=Array.isArray(t)?t[0]:t?t.x:0,d=Array.isArray(t)?t[1]:t?t.y:0,x=Array.isArray(r)?r[0]:r?r.x:0,s=Array.isArray(r)?r[1]:r?r.y:0;return u===x&&d===s}function $r(t,r){if(t===r)return!0;if(!t||!r)return!1;if(Array.isArray(t)){if(!Array.isArray(r)||t.length!==r.length)return!1;for(let u=0;u<t.length;u++)if(!$r(t[u],r[u]))return!1;return!0}else if(Array.isArray(r))return!1;if(typeof t=="object"&&typeof r=="object"){let u=Object.keys(t),d=Object.keys(r);if(u.length!==d.length)return!1;for(let x of u)if(!r.hasOwnProperty(x)||!$r(t[x],r[x]))return!1;return!0}return!1}function Dv(t){return{longitude:t.center.lng,latitude:t.center.lat,zoom:t.zoom,pitch:t.pitch,bearing:t.bearing,padding:t.padding}}function Sv(t,r){let u=r.viewState||r,d={};if("longitude"in u&&"latitude"in u&&(u.longitude!==t.center.lng||u.latitude!==t.center.lat)){let x=t.center.constructor;d.center=new x(u.longitude,u.latitude)}return"zoom"in u&&u.zoom!==t.zoom&&(d.zoom=u.zoom),"bearing"in u&&u.bearing!==t.bearing&&(d.bearing=u.bearing),"pitch"in u&&u.pitch!==t.pitch&&(d.pitch=u.pitch),u.padding&&t.padding&&!$r(u.padding,t.padding)&&(d.padding=u.padding),d}var JL=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function Fv(t){if(!t)return null;if(typeof t=="string"||("toJS"in t&&(t=t.toJS()),!t.layers))return t;let r={};for(let d of t.layers)r[d.id]=d;let u=t.layers.map(d=>{let x=null;"interactive"in d&&(x=Object.assign({},d),delete x.interactive);let s=r[d.ref];if(s){x=x||Object.assign({},d),delete x.ref;for(let A of JL)A in s&&(x[A]=s[A])}return x||d});return{...t,layers:u}}var s3={version:8,sources:{},layers:[]},$L={minZoom:0,maxZoom:22,minPitch:0,maxPitch:85,maxBounds:[-180,-85.051129,180,85.051129],projection:"mercator",renderWorldCopies:!0},l3={mousedown:"onMouseDown",mouseup:"onMouseUp",mouseover:"onMouseOver",mousemove:"onMouseMove",click:"onClick",dblclick:"onDblClick",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave",mouseout:"onMouseOut",contextmenu:"onContextMenu",touchstart:"onTouchStart",touchend:"onTouchEnd",touchmove:"onTouchMove",touchcancel:"onTouchCancel"},u3={movestart:"onMoveStart",move:"onMove",moveend:"onMoveEnd",dragstart:"onDragStart",drag:"onDrag",dragend:"onDragEnd",zoomstart:"onZoomStart",zoom:"onZoom",zoomend:"onZoomEnd",rotatestart:"onRotateStart",rotate:"onRotate",rotateend:"onRotateEnd",pitchstart:"onPitchStart",pitch:"onPitch",pitchend:"onPitchEnd"},c3={wheel:"onWheel",boxzoomstart:"onBoxZoomStart",boxzoomend:"onBoxZoomEnd",boxzoomcancel:"onBoxZoomCancel",resize:"onResize",load:"onLoad",render:"onRender",idle:"onIdle",remove:"onRemove",data:"onData",styledata:"onStyleData",sourcedata:"onSourceData",error:"onError"},eI=["minZoom","maxZoom","minPitch","maxPitch","maxBounds","projection","renderWorldCopies"],tI=["scrollZoom","boxZoom","dragRotate","dragPan","keyboard","doubleClickZoom","touchZoomRotate","touchPitch"],lg=class t{constructor(r,u,d){this._map=null,this._internalUpdate=!1,this._hoveredFeatures=null,this._propsedCameraUpdate=null,this._styleComponents={},this._onEvent=x=>{let s=this.props[c3[x.type]];s?s(x):x.type==="error"&&console.error(x.error)},this._onCameraEvent=x=>{if(this._internalUpdate)return;x.viewState=this._propsedCameraUpdate||Dv(this._map.transform);let s=this.props[u3[x.type]];s&&s(x)},this._onCameraUpdate=x=>this._internalUpdate?x:(this._propsedCameraUpdate=Dv(x),Sv(x,this.props)),this._onPointerEvent=x=>{(x.type==="mousemove"||x.type==="mouseout")&&this._updateHover(x);let s=this.props[l3[x.type]];s&&(this.props.interactiveLayerIds&&x.type!=="mouseover"&&x.type!=="mouseout"&&(x.features=this._hoveredFeatures||this._queryRenderedFeatures(x.point)),s(x),delete x.features)},this._MapClass=r,this.props=u,this._initialize(d)}get map(){return this._map}setProps(r){let u=this.props;this.props=r;let d=this._updateSettings(r,u),x=this._updateSize(r),s=this._updateViewState(r);this._updateStyle(r,u),this._updateStyleComponents(r),this._updateHandlers(r,u),(d||x||s&&!this._map.isMoving())&&this.redraw()}static reuse(r,u){let d=t.savedMaps.pop();if(!d)return null;let x=d.map,s=x.getContainer();for(u.className=s.className;s.childNodes.length>0;)u.appendChild(s.childNodes[0]);x._container=u;let A=x._resizeObserver;A&&(A.disconnect(),A.observe(u)),d.setProps({...r,styleDiffing:!1}),x.resize();let{initialViewState:I}=r;return I&&(I.bounds?x.fitBounds(I.bounds,{...I.fitBoundsOptions,duration:0}):d._updateViewState(I)),x.isStyleLoaded()?x.fire("load"):x.once("style.load",()=>x.fire("load")),x._update(),d}_initialize(r){let{props:u}=this,{mapStyle:d=s3}=u,x={...u,...u.initialViewState,container:r,style:Fv(d)},s=x.initialViewState||x.viewState||x;if(Object.assign(x,{center:[s.longitude||0,s.latitude||0],zoom:s.zoom||0,pitch:s.pitch||0,bearing:s.bearing||0}),u.gl){let I=HTMLCanvasElement.prototype.getContext;HTMLCanvasElement.prototype.getContext=()=>(HTMLCanvasElement.prototype.getContext=I,u.gl)}let A=new this._MapClass(x);s.padding&&A.setPadding(s.padding),u.cursor&&(A.getCanvas().style.cursor=u.cursor),A.transformCameraUpdate=this._onCameraUpdate,A.on("style.load",()=>{this._styleComponents={light:A.getLight(),sky:A.getSky(),projection:A.getProjection?.(),terrain:A.getTerrain()},this._updateStyleComponents(this.props)}),A.on("sourcedata",()=>{this._updateStyleComponents(this.props)});for(let I in l3)A.on(I,this._onPointerEvent);for(let I in u3)A.on(I,this._onCameraEvent);for(let I in c3)A.on(I,this._onEvent);this._map=A}recycle(){this.map.getContainer().querySelector("[mapboxgl-children]")?.remove(),t.savedMaps.push(this)}destroy(){this._map.remove()}redraw(){let r=this._map;r.style&&(r._frame&&(r._frame.cancel(),r._frame=null),r._render())}_updateSize(r){let{viewState:u}=r;if(u){let d=this._map;if(u.width!==d.transform.width||u.height!==d.transform.height)return d.resize(),!0}return!1}_updateViewState(r){let u=this._map,d=u.transform;if(!u.isMoving()){let s=Sv(d,r);if(Object.keys(s).length>0)return this._internalUpdate=!0,u.jumpTo(s),this._internalUpdate=!1,!0}return!1}_updateSettings(r,u){let d=this._map,x=!1;for(let s of eI)if((s in r||s in u)&&!$r(r[s],u[s])){x=!0;let I=s in r?r[s]:$L[s];d[`set${s[0].toUpperCase()}${s.slice(1)}`]?.call(d,I)}return x}_updateStyle(r,u){if(r.cursor!==u.cursor&&(this._map.getCanvas().style.cursor=r.cursor||""),r.mapStyle!==u.mapStyle){let{mapStyle:d=s3,styleDiffing:x=!0}=r,s={diff:x};"localIdeographFontFamily"in r&&(s.localIdeographFontFamily=r.localIdeographFontFamily),this._map.setStyle(Fv(d),s)}}_updateStyleComponents({light:r,projection:u,sky:d,terrain:x}){let s=this._map,A=this._styleComponents;s.style?._loaded&&(r&&!$r(r,A.light)&&(A.light=r,s.setLight(r)),u&&!$r(u,A.projection)&&u!==A.projection?.type&&(A.projection=typeof u=="string"?{type:u}:u,s.setProjection?.(A.projection)),d&&!$r(d,A.sky)&&(A.sky=d,s.setSky(d)),x!==void 0&&!$r(x,A.terrain)&&(!x||s.getSource(x.source))&&(A.terrain=x,s.setTerrain(x)))}_updateHandlers(r,u){let d=this._map;for(let x of tI){let s=r[x]??!0,A=u[x]??!0;$r(s,A)||(s?d[x].enable(s):d[x].disable())}}_queryRenderedFeatures(r){let u=this._map,{interactiveLayerIds:d=[]}=this.props;try{return u.queryRenderedFeatures(r,{layers:d.filter(u.getLayer.bind(u))})}catch{return[]}}_updateHover(r){let{props:u}=this;if(u.interactiveLayerIds&&(u.onMouseMove||u.onMouseEnter||u.onMouseLeave)){let x=r.type,s=this._hoveredFeatures?.length>0,A=this._queryRenderedFeatures(r.point),I=A.length>0;!I&&s&&(r.type="mouseleave",this._onPointerEvent(r)),this._hoveredFeatures=A,I&&!s&&(r.type="mouseenter",this._onPointerEvent(r)),r.type=x}else this._hoveredFeatures=null}};lg.savedMaps=[];var Lv=lg;var aI=["setMaxBounds","setMinZoom","setMaxZoom","setMinPitch","setMaxPitch","setRenderWorldCopies","setProjection","setStyle","addSource","removeSource","addLayer","removeLayer","setLayerZoomRange","setFilter","setPaintProperty","setLayoutProperty","setLight","setTerrain","setFog","remove"];function Iv(t){if(!t)return null;let r=t.map,u={getMap:()=>r};for(let d of rI(r))!(d in u)&&!aI.includes(d)&&(u[d]=r[d].bind(r));return u}function rI(t){let r=new Set,u=t;for(;u;){for(let d of Object.getOwnPropertyNames(u))d[0]!=="_"&&typeof t[d]=="function"&&d!=="fire"&&d!=="setEventedParent"&&r.add(d);u=Object.getPrototypeOf(u)}return Array.from(r)}var ug=et(Et(),1),oI=typeof document<"u"?ug.useLayoutEffect:ug.useEffect,d3=oI;function Tv(t,r){let{RTLTextPlugin:u,maxParallelImageRequests:d,workerCount:x,workerUrl:s}=r;if(u&&t.getRTLTextPluginStatus&&t.getRTLTextPluginStatus()==="unavailable"){let{pluginUrl:A,lazy:I=!0}=typeof u=="string"?{pluginUrl:u}:u;t.setRTLTextPlugin(A,P=>{P&&console.error(P)},I)}d!==void 0&&t.setMaxParallelImageRequests(d),x!==void 0&&t.setWorkerCount(x),s!==void 0&&t.setWorkerUrl(s)}var Li=Hl.createContext(null);function iI(t,r){let u=(0,Ii.useContext)(sg),[d,x]=(0,Ii.useState)(null),s=(0,Ii.useRef)(),{current:A}=(0,Ii.useRef)({mapLib:null,map:null});(0,Ii.useEffect)(()=>{let R=t.mapLib,K=!0,Y;return Promise.resolve(R||Promise.resolve().then(()=>et(h3(),1))).then(W=>{if(!K)return;if(!W)throw new Error("Invalid mapLib");let Q="Map"in W?W:W.default;if(!Q.Map)throw new Error("Invalid mapLib");Tv(Q,t),t.reuseMaps&&(Y=Lv.reuse(t,s.current)),Y||(Y=new Lv(Q.Map,t,s.current)),A.map=Iv(Y),A.mapLib=Q,x(Y),u?.onMapMount(A.map,t.id)}).catch(W=>{let{onError:Q}=t;Q?Q({type:"error",target:null,originalEvent:null,error:W}):console.error(W)}),()=>{K=!1,Y&&(u?.onMapUnmount(t.id),t.reuseMaps?Y.recycle():Y.destroy())}},[]),d3(()=>{d&&d.setProps(t)}),(0,Ii.useImperativeHandle)(r,()=>A.map,[d]);let I=(0,Ii.useMemo)(()=>({position:"relative",width:"100%",height:"100%",...t.style}),[t.style]),P={height:"100%"};return Hl.createElement("div",{id:t.id,ref:s,style:I},d&&Hl.createElement(Li.Provider,{value:A},Hl.createElement("div",{"mapboxgl-children":"",style:P},t.children)))}var Pv=Hl.forwardRef(iI);var p3=et(Et(),1),m3=et(r0(),1),$o=et(Et(),1);var nI=/box|flex|grid|column|lineHeight|fontWeight|opacity|order|tabSize|zIndex/;function co(t,r){if(!t||!r)return;let u=t.style;for(let d in r){let x=r[d];Number.isFinite(x)&&!nI.test(d)?u[d]=`${x}px`:u[d]=x}}function cg(t,r){if(t===r)return null;let u=x3(t),d=x3(r),x=[];for(let s of d)u.has(s)||x.push(s);for(let s of u)d.has(s)||x.push(s);return x.length===0?null:x}function x3(t){return new Set(t?t.trim().split(/\s+/):[])}var Uh=(0,$o.memo)((0,$o.forwardRef)((t,r)=>{let{map:u,mapLib:d}=(0,$o.useContext)(Li),x=(0,$o.useRef)({props:t}),s=(0,$o.useMemo)(()=>{let J=!1;p3.Children.forEach(t.children,le=>{le&&(J=!0)});let j={...t,element:J?document.createElement("div"):void 0},ae=new d.Marker(j);return ae.setLngLat([t.longitude,t.latitude]),ae.getElement().addEventListener("click",le=>{x.current.props.onClick?.({type:"click",target:ae,originalEvent:le})}),ae.on("dragstart",le=>{let ve=le;ve.lngLat=s.getLngLat(),x.current.props.onDragStart?.(ve)}),ae.on("drag",le=>{let ve=le;ve.lngLat=s.getLngLat(),x.current.props.onDrag?.(ve)}),ae.on("dragend",le=>{let ve=le;ve.lngLat=s.getLngLat(),x.current.props.onDragEnd?.(ve)}),ae},[]);(0,$o.useEffect)(()=>(s.addTo(u.getMap()),()=>{s.remove()}),[]);let{longitude:A,latitude:I,offset:P,style:R,draggable:K=!1,popup:Y=null,rotation:W=0,rotationAlignment:Q="auto",pitchAlignment:be="auto"}=t;(0,$o.useEffect)(()=>{co(s.getElement(),R)},[R]),(0,$o.useImperativeHandle)(r,()=>s,[]);let he=x.current.props;(s.getLngLat().lng!==A||s.getLngLat().lat!==I)&&s.setLngLat([A,I]),P&&!n3(s.getOffset(),P)&&s.setOffset(P),s.isDraggable()!==K&&s.setDraggable(K),s.getRotation()!==W&&s.setRotation(W),s.getRotationAlignment()!==Q&&s.setRotationAlignment(Q),s.getPitchAlignment()!==be&&s.setPitchAlignment(be),s.getPopup()!==Y&&s.setPopup(Y);let ue=cg(he.className,t.className);if(ue)for(let J of ue)s.toggleClassName(J);return x.current.props=t,(0,m3.createPortal)(t.children,s.getElement())}));var g3=et(r0(),1),Uo=et(Et(),1);var sI=(0,Uo.memo)((0,Uo.forwardRef)((t,r)=>{let{map:u,mapLib:d}=(0,Uo.useContext)(Li),x=(0,Uo.useMemo)(()=>document.createElement("div"),[]),s=(0,Uo.useRef)({props:t}),A=(0,Uo.useMemo)(()=>{let I={...t},P=new d.Popup(I);return P.setLngLat([t.longitude,t.latitude]),P.once("open",R=>{s.current.props.onOpen?.(R)}),P},[]);if((0,Uo.useEffect)(()=>{let I=P=>{s.current.props.onClose?.(P)};return A.on("close",I),A.setDOMContent(x).addTo(u.getMap()),()=>{A.off("close",I),A.isOpen()&&A.remove()}},[]),(0,Uo.useEffect)(()=>{co(A.getElement(),t.style)},[t.style]),(0,Uo.useImperativeHandle)(r,()=>A,[]),A.isOpen()){let I=s.current.props;(A.getLngLat().lng!==t.longitude||A.getLngLat().lat!==t.latitude)&&A.setLngLat([t.longitude,t.latitude]),t.offset&&!$r(I.offset,t.offset)&&A.setOffset(t.offset),(I.anchor!==t.anchor||I.maxWidth!==t.maxWidth)&&(A.options.anchor=t.anchor,A.setMaxWidth(t.maxWidth));let P=cg(I.className,t.className);if(P)for(let R of P)A.toggleClassName(R);s.current.props=t}return(0,g3.createPortal)(t.children,x)}));var dg=et(Et(),1);var h0=et(Et(),1);function ei(t,r,u,d){let x=(0,h0.useContext)(Li),s=(0,h0.useMemo)(()=>t(x),[]);return(0,h0.useEffect)(()=>{let A=d||u||r,I=typeof r=="function"&&typeof u=="function"?r:null,P=typeof u=="function"?u:typeof r=="function"?r:null,{map:R}=x;return R.hasControl(s)||(R.addControl(s,A?.position),I&&I(x)),()=>{P&&P(x),R.hasControl(s)&&R.removeControl(s)}},[]),s}function lI(t){let r=ei(({mapLib:u})=>new u.AttributionControl(t),{position:t.position});return(0,dg.useEffect)(()=>{co(r._container,t.style)},[t.style]),null}var uI=(0,dg.memo)(lI);var fg=et(Et(),1);function cI(t){let r=ei(({mapLib:u})=>new u.FullscreenControl({container:t.containerId&&document.getElementById(t.containerId)}),{position:t.position});return(0,fg.useEffect)(()=>{co(r._controlContainer,t.style)},[t.style]),null}var dI=(0,fg.memo)(cI);var Qn=et(Et(),1);function fI(t,r){let u=(0,Qn.useRef)({props:t}),d=ei(({mapLib:x})=>{let s=new x.GeolocateControl(t),A=s._setupUI;return s._setupUI=()=>{s._container.hasChildNodes()||A()},s.on("geolocate",I=>{u.current.props.onGeolocate?.(I)}),s.on("error",I=>{u.current.props.onError?.(I)}),s.on("outofmaxbounds",I=>{u.current.props.onOutOfMaxBounds?.(I)}),s.on("trackuserlocationstart",I=>{u.current.props.onTrackUserLocationStart?.(I)}),s.on("trackuserlocationend",I=>{u.current.props.onTrackUserLocationEnd?.(I)}),s},{position:t.position});return u.current.props=t,(0,Qn.useImperativeHandle)(r,()=>d,[]),(0,Qn.useEffect)(()=>{co(d._container,t.style)},[t.style]),null}var hI=(0,Qn.memo)((0,Qn.forwardRef)(fI));var hg=et(Et(),1);function xI(t){let r=ei(({mapLib:u})=>new u.NavigationControl(t),{position:t.position});return(0,hg.useEffect)(()=>{co(r._container,t.style)},[t.style]),null}var pI=(0,hg.memo)(xI);var x0=et(Et(),1);function mI(t){let r=ei(({mapLib:s})=>new s.ScaleControl(t),{position:t.position}),u=(0,x0.useRef)(t),d=u.current;u.current=t;let{style:x}=t;return t.maxWidth!==void 0&&t.maxWidth!==d.maxWidth&&(r.options.maxWidth=t.maxWidth),t.unit!==void 0&&t.unit!==d.unit&&r.setUnit(t.unit),(0,x0.useEffect)(()=>{co(r._container,x)},[x]),null}var gI=(0,x0.memo)(mI);var xg=et(Et(),1);function yI(t){let r=ei(({mapLib:u})=>new u.TerrainControl(t),{position:t.position});return(0,xg.useEffect)(()=>{co(r._container,t.style)},[t.style]),null}var vI=(0,xg.memo)(yI);var pg=et(Et(),1);function _I(t){let r=ei(({mapLib:u})=>new u.LogoControl(t),{position:t.position});return(0,pg.useEffect)(()=>{co(r._container,t.style)},[t.style]),null}var bI=(0,pg.memo)(_I);var y3=et(Et(),1),Ji=et(Et(),1);function pc(t,r){if(!t)throw new Error(r)}var CI=0;function EI(t,r,u){if(t.style&&t.style._loaded){let d={...u};return delete d.id,delete d.children,t.addSource(r,d),t.getSource(r)}return null}function wI(t,r,u){pc(r.id===u.id,"source id changed"),pc(r.type===u.type,"source type changed");let d="",x=0;for(let A in r)A!=="children"&&A!=="id"&&!$r(u[A],r[A])&&(d=A,x++);if(!x)return;let s=r.type;if(s==="geojson")t.setData(r.data);else if(s==="image")t.updateImage({url:r.url,coordinates:r.coordinates});else switch(d){case"coordinates":t.setCoordinates?.(r.coordinates);break;case"url":t.setUrl?.(r.url);break;case"tiles":t.setTiles?.(r.tiles);break;default:console.warn(`Unable to update <Source> prop: ${d}`)}}function mc(t){let r=(0,Ji.useContext)(Li).map.getMap(),u=(0,Ji.useRef)(t),[,d]=(0,Ji.useState)(0),x=(0,Ji.useMemo)(()=>t.id||`jsx-source-${CI++}`,[]);(0,Ji.useEffect)(()=>{if(r){let A=()=>setTimeout(()=>d(I=>I+1),0);return r.on("styledata",A),A(),()=>{if(r.off("styledata",A),r.style&&r.style._loaded&&r.getSource(x)){let I=r.getStyle()?.layers;if(I)for(let P of I)P.source===x&&r.removeLayer(P.id);r.removeSource(x)}}}},[r]);let s=r&&r.style&&r.getSource(x);return s?wI(s,t,u.current):s=EI(r,x,t),u.current=t,s&&y3.Children.map(t.children,A=>A&&(0,Ji.cloneElement)(A,{source:x}))||null}var Jn=et(Et(),1);function AI(t,r,u,d){if(pc(u.id===d.id,"layer id changed"),pc(u.type===d.type,"layer type changed"),u.type==="custom"||d.type==="custom")return;let{layout:x={},paint:s={},filter:A,minzoom:I,maxzoom:P,beforeId:R}=u;if(R!==d.beforeId&&t.moveLayer(r,R),x!==d.layout){let K=d.layout||{};for(let Y in x)$r(x[Y],K[Y])||t.setLayoutProperty(r,Y,x[Y]);for(let Y in K)x.hasOwnProperty(Y)||t.setLayoutProperty(r,Y,void 0)}if(s!==d.paint){let K=d.paint||{};for(let Y in s)$r(s[Y],K[Y])||t.setPaintProperty(r,Y,s[Y]);for(let Y in K)s.hasOwnProperty(Y)||t.setPaintProperty(r,Y,void 0)}$r(A,d.filter)||t.setFilter(r,A),(I!==d.minzoom||P!==d.maxzoom)&&t.setLayerZoomRange(r,I,P)}function BI(t,r,u){if(t.style&&t.style._loaded&&(!("source"in u)||t.getSource(u.source))){let d={...u,id:r};delete d.beforeId,t.addLayer(d,u.beforeId)}}var DI=0;function Us(t){let r=(0,Jn.useContext)(Li).map.getMap(),u=(0,Jn.useRef)(t),[,d]=(0,Jn.useState)(0),x=(0,Jn.useMemo)(()=>t.id||`jsx-layer-${DI++}`,[]);if((0,Jn.useEffect)(()=>{if(r){let A=()=>d(I=>I+1);return r.on("styledata",A),A(),()=>{r.off("styledata",A),r.style&&r.style._loaded&&r.getLayer(x)&&r.removeLayer(x)}}},[r]),r&&r.style&&r.getLayer(x))try{AI(r,x,t,u.current)}catch(A){console.warn(A)}else BI(r,x,t);return u.current=t,null}var qh=et(Zt(),1),Rv=({geometry:t,color:r="#3b82f6",width:u=5,opacity:d=.8})=>t?(0,qh.jsxs)(mc,{data:{geometry:t,properties:{},type:"Feature"},id:"sdk-route-source",type:"geojson",children:[(0,qh.jsx)(Us,{id:"sdk-route-layer-casing",paint:{"line-blur":1,"line-color":"#ffffff","line-opacity":d,"line-width":u+2},type:"line"}),(0,qh.jsx)(Us,{id:"sdk-route-layer",layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":r,"line-opacity":d,"line-width":u},type:"line"})]}):null;var da=et(Et(),1);var v3=(t,r,u=64)=>{let[d,x]=t,s=x*Math.PI/180,A=[];for(let I=0;I<=u;I++){let P=I/u*2*Math.PI,R=r*Math.cos(P)/6371e3*(180/Math.PI),K=r*Math.sin(P)/(6371e3*Math.cos(s))*(180/Math.PI);A.push([d+K,x+R])}return{geometry:{coordinates:[A],type:"Polygon"},properties:{},type:"Feature"}};var _3=et(Et(),1),Vh=et(Zt(),1),b3=({center:t,radiusMeters:r,color:u="#39ff88"})=>{let d=(0,_3.useMemo)(()=>v3(t,r),[t,r]);return(0,Vh.jsxs)(mc,{data:d,id:"sdk-mock-radius-source",type:"geojson",children:[(0,Vh.jsx)(Us,{id:"sdk-mock-radius-fill",paint:{"fill-color":u,"fill-opacity":.12},type:"fill"}),(0,Vh.jsx)(Us,{id:"sdk-mock-radius-outline",paint:{"line-color":u,"line-dasharray":[2,2],"line-width":2},type:"line"})]})};var gc=et(Et(),1),zv=et(Zt(),1);function C3(t,r=64){let u=document.createElement("canvas");u.width=r,u.height=r;let d=u.getContext("2d");return d.font=`${r*.75}px serif`,d.textAlign="center",d.textBaseline="middle",d.fillText(t,r/2,r/2),d.getImageData(0,0,r,r)}var E3=({pois:t})=>{let[r,u]=(0,gc.useState)(0),{current:d}=Bv(),x=(0,gc.useMemo)(()=>t.filter(A=>!A.displayMode||A.displayMode==="gl"),[t]);(0,gc.useEffect)(()=>{if(!d)return;let A=d.getMap();[{emoji:"\u{1F37A}",name:"sdk-default-bar"},{emoji:"\u{1F37D}\uFE0F",name:"sdk-default-restaurant"},{emoji:"\u{1F4CD}",name:"sdk-default-poi"}].forEach(R=>{A.hasImage(R.name)||A.addImage(R.name,C3(R.emoji),{pixelRatio:2})});let P=0;x.forEach(R=>{if(R.imageUrl){let K=`custom-url-${R.id}`;A.hasImage(K)||A.loadImage(R.imageUrl,(Y,W)=>{!Y&&W&&(A.hasImage(K)||(A.addImage(K,W),u(Q=>Q+1)))})}if(R.emoji){let K=`custom-emoji-${R.emoji}`;A.hasImage(K)||(A.addImage(K,C3(R.emoji),{pixelRatio:2}),P++)}}),P>0&&u(R=>R+P)},[d,x]);let s=(0,gc.useMemo)(()=>({features:x.map(A=>({geometry:{coordinates:[A.longitude,A.latitude],type:"Point"},properties:{...A,"sdk-icon":A.imageUrl?`custom-url-${A.id}`:A.spriteName?A.spriteName:A.emoji?`custom-emoji-${A.emoji}`:A.type==="bar"?"sdk-default-bar":A.type==="restaurant"?"sdk-default-restaurant":"sdk-default-poi"},type:"Feature"})),type:"FeatureCollection"}),[x]);return(0,zv.jsx)(mc,{data:s,id:"sdk-pois",type:"geojson",children:(0,zv.jsx)(Us,{id:"sdk-poi-layer",layout:{"icon-allow-overlap":!0,"icon-image":["get","sdk-icon"],"icon-size":1,"text-anchor":"top","text-field":["step",["zoom"],"",14,["get","name"]],"text-font":["Open Sans Bold"],"text-offset":[0,1.5],"text-optional":!0,"text-size":11},paint:{"icon-opacity":["interpolate",["linear"],["zoom"],11,0,12,1],"text-color":"#ffffff","text-halo-color":"#000000","text-halo-width":1,"text-opacity":["interpolate",["linear"],["zoom"],13.5,0,14,1]},type:"symbol"})})};var Sn=et(Zt(),1),w3=({pois:t,onClick:r})=>{let u=t.filter(d=>d.displayMode==="marker");return u.length===0?null:(0,Sn.jsx)(Sn.Fragment,{children:u.map(d=>(0,Sn.jsx)(Uh,{anchor:"bottom",latitude:d.latitude,longitude:d.longitude,onClick:x=>{x.originalEvent.stopPropagation(),r&&r(d)},children:d.markerComponent?d.markerComponent:(0,Sn.jsxs)("div",{style:{cursor:"pointer",filter:"drop-shadow(0 4px 6px rgba(0,0,0,0.1))",transform:"transition-transform duration-200 hover:scale-110"},children:[(0,Sn.jsx)("div",{style:{alignItems:"center",backgroundColor:d.type==="bar"?"#f97316":"#10b981",border:"2px solid white",borderRadius:"50%",display:"flex",height:"32px",justifyContent:"center",width:"32px"},children:d.emoji?(0,Sn.jsx)("span",{style:{fontSize:"16px"},children:d.emoji}):(0,Sn.jsx)("div",{style:{backgroundColor:"white",borderRadius:"50%",height:"8px",width:"8px"}})}),(0,Sn.jsx)("div",{style:{borderLeft:"6px solid transparent",borderRight:"6px solid transparent",borderTop:`8px solid ${d.type==="bar"?"#f97316":"#10b981"}`,height:0,margin:"-2px auto 0",width:0}})]})},d.id))})};var ti=et(Zt(),1),A3=({forcedLocation:t,heading:r})=>t?(0,ti.jsx)(Uh,{anchor:"center",latitude:t[1],longitude:t[0],children:(0,ti.jsxs)("div",{style:{alignItems:"center",display:"flex",justifyContent:"center",position:"relative"},children:[(0,ti.jsx)("div",{style:{animation:"pulse 2s infinite",backgroundColor:"rgba(59, 130, 246, 0.4)",borderRadius:"50%",height:"40px",position:"absolute",width:"40px"}}),r!=null&&(0,ti.jsx)("div",{style:{height:"60px",position:"absolute",transform:`rotate(${r}deg)`,width:"60px",zIndex:0},children:(0,ti.jsxs)("svg",{style:{height:"100%",width:"100%"},viewBox:"0 0 100 100",children:[(0,ti.jsx)("defs",{children:(0,ti.jsxs)("radialGradient",{cx:"50%",cy:"50%",fx:"50%",fy:"50%",id:"grad1",r:"50%",children:[(0,ti.jsx)("stop",{offset:"0%",style:{stopColor:"rgba(37, 99, 235, 0.6)",stopOpacity:1}}),(0,ti.jsx)("stop",{offset:"100%",style:{stopColor:"rgba(37, 99, 235, 0)",stopOpacity:0}})]})}),(0,ti.jsx)("path",{d:"M 50 50 L 35 0 A 50 50 0 0 1 65 0 Z",fill:"url(#grad1)"})]})}),(0,ti.jsx)("div",{style:{alignItems:"center",backgroundColor:"white",borderRadius:"50%",boxShadow:"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 0 0 2px rgba(37, 99, 235, 0.2)",display:"flex",height:"20px",justifyContent:"center",width:"20px",zIndex:1},children:(0,ti.jsx)("div",{style:{backgroundColor:"#2563eb",border:"2px solid white",borderRadius:"50%",height:"12px",width:"12px"}})}),(0,ti.jsx)("style",{children:"@keyframes pulse { 0% { transform: scale(0.95); opacity: 0.7; } 70% { transform: scale(1.5); opacity: 0; } 100% { transform: scale(0.95); opacity: 0; } }"})]})}):null;var qr=et(Zt(),1),SI=({initialViewState:t={latitude:45.90583599233422,longitude:6.12589018919138,zoom:12},style:r={},mapStyle:u="https://tiles.cloudparse.fr/style/up_dark_matter",className:d="",maxBounds:x,children:s,onClick:A,onMapClickMiss:I,onContextMenu:P,interactiveLayerIds:R=[],onLoad:K,showUserLocation:Y=!0,followUser:W=!1,lockToUser:Q=!1,showUserLocationButton:be=!0,renderUserLocation:he,pois:ue=[],onPoiClick:J,route:j,showNavigationUI:ae,navigationData:le,onNavigationAbort:ve,onNavigationModeChange:Fe,navigation:H,showControls:X=!0,menuItems:ie,menuContent:Ce,drawerState:Pe,drawerContentRef:Ae,controlProps:Ee={},enableTouchDrag:we=!1})=>{let V=(0,da.useContext)(Kn),Z=(0,da.useContext)(a0),re=(0,da.useRef)(null),ne=Nh(),ee=Ev({navigation:H,onModeChange:H?Fe:void 0}),pe=ee.isActive,Ke=pe?{currentDistanceMeters:ee.distanceRemainingMeters,mode:ee.mode,route:ee.route,start:ee.start,totalDistance:ee.totalDistanceMeters}:le,Ue=pe?ee.route?.geometry:j,We=pe?ae!==!1&&H?.showUI!==!1:ae,Ve=Ke?.mode||"preview",qe=V?V.isFollowing:W,Ge=(0,da.useRef)(qe),tt=(0,da.useRef)(!1),yt=(0,da.useRef)(0),it=(0,da.useCallback)(()=>(tt.current=!0,++yt.current),[]),Le=(0,da.useCallback)(Ut=>{yt.current===Ut&&(tt.current=!1)},[]),[Te,Me]=(0,da.useState)(qe),ze=V?V.isFollowing:Te,Ze=V?.setIsFollowing,nt=(0,da.useCallback)(Ut=>{Ge.current=Ut,Me(Ut),Ze&&Ze(Ut)},[Ze]);(0,da.useEffect)(()=>{V&&V.isFollowing!==Ge.current&&(Ge.current=V.isFollowing)},[V?.isFollowing,V]);let mt=[...R];ue.length>0&&!mt.includes("sdk-poi-layer")&&mt.push("sdk-poi-layer");let bt=(0,da.useRef)(W);(0,da.useEffect)(()=>{if(W!==bt.current&&(nt(W),bt.current=W,W&&ne.coords&&re.current)){let Ut=it();re.current.flyTo({center:ne.coords,duration:1e3,essential:!0,zoom:Math.max(re.current.getZoom(),16)}),setTimeout(()=>{Le(Ut)},1050)}},[W,nt,ne.coords,it,Le]);let Xt=(0,da.useRef)(null),It=(0,da.useRef)(null);(0,da.useEffect)(()=>{if(!Ue||!re.current){Ue||(Xt.current=null);return}let Ut=Ue!==Xt.current,ca=It.current!==Ve;if(Ve==="navigation"){if((ca||Ut)&&nt(!0),(ca||Ut)&&ne.coords&&re.current){let ha=it();re.current.flyTo({center:ne.coords,duration:1e3,essential:!0,zoom:17}),setTimeout(()=>{Le(ha)},1050)}}else if(Ve==="preview"&&Ut){nt(!1);let ha=Ue.coordinates;if(ha.length>0){let Oe=ha.reduce((qa,Mr)=>[[Math.min(qa[0][0],Mr[0]),Math.min(qa[0][1],Mr[1])],[Math.max(qa[1][0],Mr[0]),Math.max(qa[1][1],Mr[1])]],[[ha[0][0],ha[0][1]],[ha[0][0],ha[0][1]]]);re.current.fitBounds([Oe[0][0],Oe[0][1],Oe[1][0],Oe[1][1]],{padding:100,speed:1.2})}}Xt.current=Ue,It.current=Ve},[Ue,Ve,nt,ne.coords,it,Le]),(0,da.useEffect)(()=>{Ge.current&&!tt.current&&ne.coords&&re.current&&re.current.easeTo({center:ne.coords,duration:50,easing:Ut=>Ut,essential:!0})},[ne.coords]);let Vt=wv(Ue,Y?ne.coords:null),gt=Ke?.currentDistanceMeters??null,Pt=Ke?.totalDistance??null,Rt=Ke?.route?.durationSeconds??null,kt=gt??0,St=(()=>{if(!Rt||!Pt||!gt)return 0;let Ut=gt/Pt;return Math.ceil(Rt*Ut/60)})(),Ot=kt/1e3,jt=Pt&&Pt>0?Math.min(100,Math.max(0,(Pt-kt)/Pt*100)):0,vt=We&&Ke&&Ue?{distanceRemainingKm:Ot,etaMins:St,label:Ve==="navigation"?"Walking Guidance Active":"Route Preview",mode:Ve,onAbort:()=>{ee.cancel(),ve&&ve()},onStart:Ke.start,progress:jt}:void 0,wt=V?.setEtaData;(0,da.useEffect)(()=>{wt&&wt(vt)},[vt,wt]);let Kt=V?.setDrawerState;(0,da.useEffect)(()=>{Kt&&Pe!==void 0&&Kt(Pe)},[Pe,Kt]);let na=ie??[],{mapLibreChildren:Dr,menuContentFromChildren:wa}=(0,da.useMemo)(()=>{let Ut=[],ca=[];da.default.Children.forEach(s,Oe=>{if(da.default.isValidElement(Oe)){let qa=Oe.type,Mr=qa?.displayName||qa?.name,$t=qa===zh||Mr==="MapMenu",lr=$t||qa===ag||qa===rg||qa===og||qa===ig||["MapMenuItem","MapMenuTitle","MapMenuDivider","MapMenuFooter"].includes(Mr);$t?da.default.Children.forEach(Oe.props.children,Vi=>{Vi&&ca.push(Vi)}):lr?ca.push(Oe):Ut.push(Oe)}else Ut.push(Oe)});let ha=ca.length>0?(0,qr.jsx)(zh,{children:ca}):null;return{mapLibreChildren:Ut,menuContentFromChildren:ha}},[s]),_a=Ut=>{if(Z?.isPlacingLocation){Z.placeLocation([Ut.lngLat.lng,Ut.lngLat.lat]);return}let ca=Ut.features||[];if(J){let Oe=ca.find(qa=>qa.layer.id==="sdk-poi-layer");if(Oe){J(Oe.properties);return}}ca.some(Oe=>mt.includes(Oe.layer.id))||I&&I(Ut),A&&A(Ut)},ri=(0,da.useCallback)(Ut=>{if(ne.coords&&re.current){nt(!0);let ca=it();re.current.flyTo({center:ne.coords,duration:1e3,essential:!0,pitch:Ut?.pitch||0,zoom:Math.max(re.current.getZoom(),16),...Ut?.bearing!==void 0?{bearing:Ut.bearing}:{}}),setTimeout(()=>{Le(ca)},1050)}},[ne.coords,nt,it,Le]),Tr=(0,da.useCallback)((Ut,ca)=>{let ha=re.current;if(!ha)return;nt(!1);let Oe=it();ha.flyTo({center:Ut,essential:!0,pitch:ca?.pitch??0,zoom:ca?.zoom??ha.getZoom(),...ca?.duration!==void 0?{duration:ca.duration}:{},...ca?.bearing!==void 0?{bearing:ca.bearing}:{}}),ha.once("moveend",()=>Le(Oe))},[nt,it,Le]),_r=(0,da.useCallback)(Ut=>{re.current&&re.current.easeTo({bearing:0,duration:500,essential:!0,pitch:Ut?.pitch??0})},[]);(0,da.useEffect)(()=>{V&&(V._registerCenterCallback(ri),V._registerResetBearingCallback(_r),V._registerFlyToCallback(Tr))},[V,ri,_r,Tr]);let po=(0,da.useCallback)(()=>{re.current&&V&&(V.setBearing(re.current.getBearing()),V.setPitch(re.current.getPitch()))},[V]),br=()=>{Q||Ge.current&&(nt(!1),re.current&&re.current.stop())};return(0,qr.jsxs)("div",{className:`w-full h-full overflow-hidden relative ${Z?.isPlacingLocation?"cursor-crosshair":""} ${d}`,style:r,children:[(0,qr.jsxs)(Pv,{attributionControl:!1,initialViewState:t,interactiveLayerIds:mt,mapStyle:u,maxBounds:x,onClick:_a,onContextMenu:P,onDragStart:br,onLoad:Ut=>{K&&K(Ut),W&&ne.coords&&re.current&&re.current.jumpTo({center:ne.coords,zoom:16})},onMouseDown:br,onMove:po,onRotateStart:br,onTouchStart:br,onWheel:br,ref:re,children:[Y&&ne.coords&&(he?he({coords:ne.coords,heading:ne.heading}):(0,qr.jsx)(A3,{forcedLocation:ne.coords,heading:ne.heading})),Z&&Z.radiusMeters>0&&ne.coords&&(0,qr.jsx)(b3,{center:ne.coords,radiusMeters:Z.radiusMeters}),Vt&&(0,qr.jsx)(Rv,{geometry:Vt}),ue.length>0&&(0,qr.jsxs)(qr.Fragment,{children:[(0,qr.jsx)(E3,{pois:ue}),(0,qr.jsx)(w3,{onClick:J,pois:ue})]}),Dr]}),X&&V&&!V.hasControls&&(0,qr.jsx)(_v,{drawerContentRef:Ae,enableTouchDrag:we,etaData:vt,initialViewState:t,isInternal:!0,menuContent:Ce||wa,menuItems:na,...Ee})]})},FI=({children:t})=>(0,da.useContext)(Kn)?(0,qr.jsx)(qr.Fragment,{children:t}):(0,qr.jsx)(yv,{children:t}),Ov=t=>(0,qr.jsx)(FI,{children:(0,qr.jsx)(Av,{children:(0,qr.jsx)(SI,{...t})})});var $A=et(Et(),1),e7=et(JA(),1);function g5(t,r={}){let u=document.getElementById(t);if(!u)throw new Error(`Container with id "${t}" not found.`);let d=(0,e7.createRoot)(u);return d.render($A.default.createElement(Ov,r)),d}var a7=et(t7(),1),ak=512,rk="#18181b",ok="#ffffff",ik=6,nk="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AAAAAXNSR0IB2cksfwAAAARnQU1BAACxjwv8YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB+oIBggpDsP9ZQ0AACAASURBVHja7L15tG3rVRf4m3ufc+6953bv3Zc83ktCBQgh9OkEAwgYQEKgpEBURB02Y6ChRALRSBqsGAgEIyKOoIJWY6FWjeGowbCaIVKWHVJhlF1ZqNiVFgUlMQl5zb339HvvNeuPtZu1vjW7b+1zX+65Z84x9jjn7LPWt9bXzjl/swOSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkpKSkh4IUQ5B0nkTf/9X7jBNnibC06DJbezuvxRXblzD3v4emsXjaBY3wHwFwLRdhctlyKsVSe3v4aVLxa/S/RRY+tR+zd1r2LiXhWevvqaiHePZq3duGmB2BsxO5Wu5GKv12LHzDKGvLLxvr93O7zdudS4m+RpvbM17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",sk="600 %PXpx -apple-system, BlinkMacSystemFont, sans-serif",lk=.175,uk=-.04;async function r7(t,r={}){let u=r.size??ak,d=r.color??rk,x=r.backgroundColor??ok,s=r.label||(r.appName?`UP - ${r.appName}`:""),I=await new a7.default({backgroundOptions:{color:x,...r.backgroundGradient?{gradient:r.backgroundGradient}:{}},cornersDotOptions:{color:r.cornersDotColor??d,type:r.cornersDotType??"extra-rounded",...r.cornersDotGradient?{gradient:r.cornersDotGradient}:{}},cornersSquareOptions:{color:r.cornersSquareColor??d,type:r.cornersSquareType??"extra-rounded",...r.cornersSquareGradient?{gradient:r.cornersSquareGradient}:{}},data:t,dotsOptions:{color:d,type:r.dotsType??"extra-rounded",...r.dotsGradient?{gradient:r.dotsGradient}:{}},height:u,margin:r.margin??0,qrOptions:{errorCorrectionLevel:r.errorCorrectionLevel??"Q",mode:"Byte",typeNumber:0},shape:r.shape??"square",type:"canvas",width:u,...r.logo!==null?{image:r.logo??nk,imageOptions:{hideBackgroundDots:r.hideBackgroundDots??!0,imageSize:r.logoSize??.3,margin:r.logoMargin??0}}:{}}).getRawData("png");if(!I||!(I instanceof Blob))throw new Error("Failed to generate QR code image");let P=await ck(I),R=r.outerPadding??32,K=r.borderRadius??ik,Y=s?await dk(P,s,u,x,d):P;return hk(Y,R,K,x)}var ck=t=>new Promise((r,u)=>{let d=new FileReader;d.onloadend=()=>r(d.result),d.onerror=u,d.readAsDataURL(t)}),o7=t=>new Promise((r,u)=>{let d=new Image;d.onload=()=>r(d),d.onerror=u,d.src=t});async function dk(t,r,u,d,x){let s=await o7(t),A=Math.round(u*lk),I=Math.round(u*uk),P=document.createElement("canvas");P.width=u,P.height=u+A;let R=P.getContext("2d");if(!R)return t;R.fillStyle=d,R.fillRect(0,0,P.width,P.height);let K=Math.round(A*.45);return R.fillStyle=x,R.font=sk.replace("%PX",String(K)),R.textAlign="center",R.textBaseline="middle",R.fillText(r,P.width/2,A/2+I/2,P.width-I*2),R.drawImage(s,0,A,u,u),P.toDataURL("image/png")}function fk(t,r,u,d,x,s){t.beginPath(),t.moveTo(r+s,u),t.arcTo(r+d,u,r+d,u+x,s),t.arcTo(r+d,u+x,r,u+x,s),t.arcTo(r,u+x,r,u,s),t.arcTo(r,u,r+d,u,s),t.closePath()}async function hk(t,r,u,d){let x=await o7(t),s=x.width+r*2,A=x.height+r*2,I=Math.max(s,A),P=Math.min(Math.max(u,0),50)/100*I;if(!(P>0||s!==I||A!==I))return t;let K=document.createElement("canvas");K.width=I,K.height=I;let Y=K.getContext("2d");if(!Y)return t;P>0&&(fk(Y,0,0,I,I,P),Y.clip()),Y.fillStyle=d,Y.fillRect(0,0,I,I);let W=Math.round((I-x.width)/2),Q=Math.round((I-x.height)/2);return Y.drawImage(x,W,Q),K.toDataURL("image/png")}var i7=et(_5(),1);async function n7(t){let r=await xk(t),u=document.createElement("canvas");u.width=r.naturalWidth||r.width,u.height=r.naturalHeight||r.height;let d=u.getContext("2d");if(!d)throw new Error("No 2D canvas context available to decode the image.");d.drawImage(r,0,0,u.width,u.height);let x=d.getImageData(0,0,u.width,u.height);return(0,i7.default)(x.data,x.width,x.height,{inversionAttempts:"attemptBoth"})?.data??null}var xk=t=>new Promise((r,u)=>{let d=new Image;d.onload=()=>r(d),d.onerror=u,d.src=t});var G1={createErrorResponse(t,r,u){return{error:{code:r,message:u},requestId:t.requestId,sdkVersion:t.sdkVersion,success:!1,type:"SDK_ROUTING_GETROUTE_RESPONSE"}},decodePolyline(t,r){let u=0,d=0,x=0,s=[],A=10**r;for(;u<t.length;){let I,P=0,R=0;do I=t.charCodeAt(u++)-63,R|=(I&31)<<P,P+=5;while(I>=32);let K=R&1?~(R>>1):R>>1;d+=K,P=0,R=0;do I=t.charCodeAt(u++)-63,R|=(I&31)<<P,P+=5;while(I>=32);let Y=R&1?~(R>>1):R>>1;x+=Y,s.push([x/A,d/A])}return s},async fetchOSRMRoute(t,r,u,d){let x=r.map(Y=>`${Y[0]},${Y[1]}`).join(";"),A=`${d}/route/v1/${u==="walking"?"foot":u==="driving"?"car":"bike"}/${x}?overview=full&geometries=geojson&steps=true`,I=await fetch(A);if(!I.ok)throw new Error(`OSRM Error: ${I.statusText}`);let P=await I.json();if(P.code!=="Ok"||!P.routes||P.routes.length===0)throw new Error("NO_ROUTE");let R=P.routes[0],K=R.legs?.flatMap(Y=>Y.steps?.map(W=>({distance:W.distance,duration:W.duration,instruction:W.maneuver?.instruction||"Continue"})))||[];return{data:{distanceMeters:R.distance,durationSeconds:R.duration,geometry:R.geometry,steps:K},requestId:t.requestId,sdkVersion:t.sdkVersion,success:!0,type:"SDK_ROUTING_GETROUTE_RESPONSE"}},async fetchRoute(t,r){let{origin:u,destination:d,waypoints:x,profile:s,language:A}=t.payload;if(!this.isValidCoordinate(u)||!this.isValidCoordinate(d))return this.createErrorResponse(t,"INVALID_INPUT","Origin or destination coordinates are invalid.");if(x&&!x.every(this.isValidCoordinate))return this.createErrorResponse(t,"INVALID_INPUT","One or more waypoints are invalid.");let I=[u,...x||[],d];try{return r.backend==="osrm"?await this.fetchOSRMRoute(t,I,s,r.baseUrl):await this.fetchValhallaRoute(t,I,s,A,r.baseUrl)}catch(P){return P instanceof Error&&P.message.includes("NO_ROUTE")?this.createErrorResponse(t,"NO_ROUTE","No route could be found for the given points."):P instanceof TypeError?this.createErrorResponse(t,"NETWORK_ERROR","Failed to connect to the routing backend."):this.createErrorResponse(t,"BACKEND_ERROR",`Routing backend error: ${P instanceof Error?P.message:"Unknown error"}`)}},async fetchValhallaRoute(t,r,u,d,x){let A={costing:u==="driving"?"auto":u==="walking"?"pedestrian":"bicycle",directions_options:{language:d||"en-US"},locations:r.map(W=>({lat:W[1],lon:W[0]}))},I=await fetch(`${x}/route`,{body:JSON.stringify(A),headers:{"Content-Type":"application/json"},method:"POST"});if(!I.ok)throw new Error(`Valhalla Error: ${I.statusText}`);let P=await I.json();if(!P.trip||!P.trip.legs||P.trip.legs.length===0)throw new Error("NO_ROUTE");let R=P.trip,K=this.decodePolyline(R.legs[0].shape,6),Y=R.legs.flatMap(W=>W.maneuvers?.map(Q=>({distance:Q.length*1e3,duration:Q.time,instruction:Q.instruction||"Continue"})))||[];return{data:{distanceMeters:R.summary.length*1e3,durationSeconds:R.summary.time,geometry:{coordinates:K,type:"LineString"},steps:Y},requestId:t.requestId,sdkVersion:t.sdkVersion,success:!0,type:"SDK_ROUTING_GETROUTE_RESPONSE"}},isValidCoordinate(t){let[r,u]=t;return r>=-180&&r<=180&&u>=-90&&u<=90}};var Hx="0.5.7";function s7(t){let r=Object.getOwnPropertyNames(t);for(let u of r){let d=t[u];d&&typeof d=="object"&&!Object.isFrozen(d)&&!(d instanceof Sh)&&s7(d)}return Object.freeze(t)}var b5=null,Zx=class{maps=Object.freeze({render:g5});bridge;storage=Object.freeze({get:r=>this.bridge.send("STORAGE_GET",{key:r}),getAll:()=>this.bridge.send("STORAGE_GET_ALL"),set:(r,u)=>this.bridge.send("STORAGE_SET",{key:r,value:u})});secureStore=Object.freeze({get:r=>this.bridge.send("SECURE_GET",{key:r}),set:(r,u)=>this.bridge.send("SECURE_SET",{key:r,value:u})});database=Object.freeze({getUserData:()=>this.bridge.send("DATABASE_GET_USER_DATA"),setUserData:r=>this.bridge.send("DATABASE_SET_USER_DATA",{data:r})});location=Object.freeze({getCurrentPosition:()=>this.bridge.send("GET_CURRENT_POSITION"),startStream:r=>this.bridge.send("START_LOCATION_STREAM",r),stopStream:()=>this.bridge.send("STOP_LOCATION_STREAM")});user=Object.freeze({getProfile:r=>this.bridge.send("GET_USER_PROFILE",{fields:r}),getProfilePicture:(r=>this.bridge.send("GET_PROFILE_PICTURE",{uuids:r||[]}))});permission=Object.freeze({request:((r,u)=>this.bridge.send("REQUEST_PERMISSION",{fields:u,type:r}))});media=Object.freeze({pickImage:()=>this.bridge.send("PICK_IMAGE",{}),saveImage:(r,u)=>this.bridge.send("SAVE_IMAGE",{base64:r,filename:u})});qrCode=Object.freeze({generate:(r,u)=>r7(r,u),decode:r=>n7(r)});payment=Object.freeze({request:r=>this.bridge.send("PAYMENT_REQUEST",r)});activity=Object.freeze({start:(r,u,d)=>this.bridge.send("START_ACTIVITY",{id:r,status:d,title:u})});haptic=Object.freeze({trigger:r=>this.bridge.send("TRIGGER_HAPTIC",{style:r})});network=Object.freeze({request:async r=>this.bridge.send("NETWORK_REQUEST",r)});navigation=Object.freeze({abort:()=>{this.bridge.handleNativeMessage({eventName:"SDK_NAVIGATION_ABORT",type:"EVENT"})},createJourney:r=>{this.bridge.handleNativeMessage({eventName:"SDK_NAVIGATION_CREATE",payload:{...r,mode:"preview"},type:"EVENT"})},start:()=>{this.bridge.handleNativeMessage({eventName:"SDK_NAVIGATION_START",type:"EVENT"})}});fidelity=Object.freeze({getFidelityBalance:()=>this.bridge.send("GET_FIDELITY_BALANCE"),getFidelityHistory:r=>this.bridge.send("GET_FIDELITY_HISTORY",r),showHistory:r=>this.bridge.send("SHOW_FIDELITY_HISTORY",r),spendFPoints:r=>this.bridge.send("SPEND_FPOINTS",{intentUuid:r})});ui=Object.freeze({exit:()=>this.bridge.send("EXIT"),setScrollConfig:r=>this.bridge.send("SET_SCROLL_CONFIG",r)});debug=Object.freeze({log:(...r)=>this.bridge.send("DEBUG_LOG",{message:r})});routing=Object.freeze({clearRoute:()=>{let r=crypto.randomUUID?crypto.randomUUID():Math.random().toString(36).substring(2);return this.bridge.send("SDK_ROUTING_CLEARROUTE",{requestId:r,sdkVersion:Hx})},drawRoute:r=>{let u=crypto.randomUUID?crypto.randomUUID():Math.random().toString(36).substring(2);return this.bridge.send("SDK_ROUTING_DRAWROUTE",{payload:{routeData:r},requestId:u,sdkVersion:Hx})},getRoute:async r=>{let u=crypto.randomUUID?crypto.randomUUID():Math.random().toString(36).substring(2),d={payload:r,requestId:u,sdkVersion:Hx,type:"SDK_ROUTING_GETROUTE"};if(b5){let x=await G1.fetchRoute(d,b5);if(x.success&&x.data)return x.data;throw new Error(x.error?.message||"Routing failed")}return this.bridge.send("SDK_ROUTING_GETROUTE",{payload:r,requestId:u,sdkVersion:Hx})}});constructor(){this.bridge=new Sh,this.initialize=this.initialize.bind(this),this.on=this.on.bind(this),this.off=this.off.bind(this)}config(r){r.routingBackend&&(b5=r.routingBackend)}updateContext(r){return this.bridge.send("UPDATE_CONTEXT",r)}initialize(r){return this.bridge.send("INITIALIZE",r)}on(r,u){return this.bridge.on(r,u)}off(r,u){this.bridge.off(r,u)}},Qa=s7(new Zx);var Ua=et(Et(),1),zt=et(Zt(),1),mk=["variant03","variant06","variant07","variant08","variant09","variant10","variant11","variant12","variant13","variant14","variant15","variant16","variant21","variant22","variant23","variant25","variant26","variant27","variant28","variant29","variant30"].join(","),gk=["variant03","variant04","variant05"].join(",");function yk(t){let r=5381;for(let u=0;u<t.length;u++)r=r*33^t.charCodeAt(u);return(r>>>0).toString(36)}function l7(t){return`https://api.dicebear.com/10.x/notionists-neutral/png?seed=${yk(t)}&mouth=${mk}&eyes=${gk}&glassesProbability=50`}var vk=(t,r)=>{let u=t[1]*Math.PI/180,d=r[1]*Math.PI/180,x=(r[0]-t[0])*Math.PI/180,s=Math.sin(x)*Math.cos(d),A=Math.cos(u)*Math.sin(d)-Math.sin(u)*Math.cos(d)*Math.cos(x);return(Math.atan2(s,A)*180/Math.PI+360)%360},C5=({appId:t,initialLocation:r=[6.1258,45.9058],isMoving:u=!1,simulationPath:d,simulationSpeed:x=1,mockJWTToken:s,children:A})=>{let[I,P]=(0,Ua.useState)(u),[R,K]=(0,Ua.useState)(r),[Y,W]=(0,Ua.useState)(0),[Q,be]=(0,Ua.useState)(x),[he,ue]=(0,Ua.useState)(!1),[J,j]=(0,Ua.useState)(!0),[ae,le]=(0,Ua.useState)(0),[ve,Fe]=(0,Ua.useState)("m"),[H,X]=(0,Ua.useState)(!1),ie=(0,Ua.useRef)(null),Ce=(0,Ua.useRef)(0),Pe=(0,Ua.useRef)(null),Ae=(0,Ua.useRef)({autoMove:I,heading:Y,location:R,mockJWTToken:s,pushLocationUpdate:()=>{},setHeading:W,setLocation:K,simulationPath:d,speedMultiplier:Q}),Ee=(0,Ua.useCallback)((ne,ee)=>{let pe=Ae.current,Ke={accelerometer:null,heading:{accuracy:3,magneticHeading:ee,trueHeading:ee},location:{coords:{accuracy:10,altitude:0,altitudeAccuracy:null,heading:ee,latitude:ne[1],longitude:ne[0],speed:pe.autoMove?1.5*pe.speedMultiplier:0},timestamp:Date.now()},timestamp:Date.now()};window.__MiniAppBridge?.onNativeMessage({eventName:"LOCATION_STREAM_UPDATE",payload:Ke,type:"EVENT"})},[]),we=(0,Ua.useCallback)(()=>{let ne=Ae.current;Ee(ne.location,ne.heading)},[Ee]),V=(0,Ua.useCallback)(ne=>{K(ne),X(!1),Ee(ne,Ae.current.heading)},[Ee]);(0,Ua.useEffect)(()=>{Ae.current={autoMove:I,heading:Y,location:R,mockJWTToken:s,pushLocationUpdate:we,setHeading:W,setLocation:K,simulationPath:d,speedMultiplier:Q}},[R,Y,I,we,d,Q,s]),(0,Ua.useEffect)(()=>{P(u)},[u]),(0,Ua.useEffect)(()=>{be(x)},[x]),(0,Ua.useEffect)(()=>{d&&d.length>0&&(Ce.current=0,K(d[0]))},[d]),(0,Ua.useEffect)(()=>{ie.current&&Pe.current&&Qa.bridge.send("START_LOCATION_STREAM",Pe.current)},[Q]),(0,Ua.useEffect)(()=>{let ne=Qa.bridge,ee=ne.send.bind(ne),pe=()=>{ie.current&&(clearInterval(ie.current),ie.current=null),Pe.current=null},Ke=We=>{pe(),Pe.current=We||{};let Ve=We?.interval||500,qe=Math.max(10,Ve/Ae.current.speedMultiplier);ie.current=setInterval(()=>{let Ge=Ae.current;if(Ge.autoMove)if(Ge.simulationPath&&Ge.simulationPath.length>0)if(Ce.current<Ge.simulationPath.length-1){let tt=Ge.simulationPath[Ce.current],yt=Ge.simulationPath[Ce.current+1];Ce.current+=1;let it=vk(tt,yt);Ge.setHeading(it),Ge.setLocation(yt)}else Ge.setLocation(Ge.simulationPath[Ge.simulationPath.length-1]);else Ge.setLocation(tt=>[tt[0]+(Math.random()-.5)*1e-4,tt[1]+(Math.random()-.5)*1e-4]);Ge.pushLocationUpdate()},qe)},Ue=async We=>{let{url:Ve,method:qe="GET",headers:Ge={},body:tt}=We,yt=Ae.current,it=new Headers(Ge);yt.mockJWTToken&&it.set("Authorization",`Bearer ${yt.mockJWTToken.replace("Bearer ","")}`),tt&&typeof tt=="object"&&!it.has("Content-Type")&&it.set("Content-Type","application/json");try{let Le=await fetch(Ve,{body:tt?typeof tt=="string"?tt:JSON.stringify(tt):void 0,headers:it,method:qe}),Te=Le.headers.get("content-type"),Me;Te?.includes("application/json")?Me=await Le.json():Me=await Le.text();let ze={};return Le.headers.forEach((Ze,nt)=>{ze[nt]=Ze}),{data:Me,headers:ze,status:Le.status,statusText:Le.statusText}}catch(Le){throw{error:Le.message||"Network request failed",status:0}}};return ne.send=async(We,Ve)=>{if(We==="INITIALIZE")return Promise.resolve({appId:t,context:{theme:"dark"},description:"Mocked for Dev",env:{},insets:{bottom:0,left:0,right:0,top:0},name:"Vite Dev (Mock)",params:{},profile:{admin:!0,countryCode:"FR",createdAt:new Date().toISOString(),email:"caveman@up.app",firstName:"Smart",fullName:"Smart Caveman",lastName:"Caveman",localNumber:"0600000000",ups:100,username:"smart_caveman",uuid:"mock-user-42",xp:500},success:!0,userData:{},uuid:t||"mock-app-id",version:"1.0.0"});if(We==="GET_CURRENT_POSITION"){let qe=Ae.current;return Promise.resolve({coords:{accuracy:10,altitude:0,altitudeAccuracy:0,heading:qe.heading,latitude:qe.location[1],longitude:qe.location[0],speed:qe.autoMove?1.5*qe.speedMultiplier:0},timestamp:Date.now()})}if(We==="START_LOCATION_STREAM")return Ke(Ve),Promise.resolve();if(We==="STOP_LOCATION_STREAM")return pe(),Promise.resolve();if(We==="NETWORK_REQUEST")return Ue(Ve);if(We==="STORAGE_GET"||We==="SECURE_GET")return Promise.resolve(localStorage.getItem(`mock_sdk_${Ve.key}`));if(We==="STORAGE_SET"||We==="SECURE_SET")return localStorage.setItem(`mock_sdk_${Ve.key}`,Ve.value),Promise.resolve();if(We==="GET_USER_PROFILE")return Promise.resolve({admin:!0,countryCode:"FR",createdAt:new Date().toISOString(),email:"caveman@up.app",firstName:"Smart",fullName:"Smart Caveman",lastName:"Caveman",localNumber:"0600000000",ups:100,username:"smart_caveman",uuid:"mock-user-42",xp:500});if(We==="GET_PROFILE_PICTURE"){let qe=Ve?.uuids||[];if(qe.length===0)return Promise.resolve(l7("dummy"));let Ge={};for(let tt of qe)Ge[tt]=l7(tt);return Promise.resolve(Ge)}return We==="GET_FIDELITY_BALANCE"?Promise.resolve({balance:1337,currency:"FPoints"}):We==="PAYMENT_REQUEST"?Promise.resolve({success:!0,transactionId:`tx_${Math.random().toString(36).slice(2)}`}):We==="TRIGGER_HAPTIC"||We==="EXIT"||We==="UPDATE_CONTEXT"?Promise.resolve({success:!0}):ee(We,Ve)},ue(!0),()=>{pe(),ne.send=ee}},[t]);let Z=ve==="km"?ae*1e3:ae,re=(0,Ua.useMemo)(()=>({isPlacingLocation:H,placeLocation:V,radiusMeters:Z}),[H,V,Z]);return he?(0,zt.jsxs)("div",{className:"relative w-full h-full",children:[(0,zt.jsx)("div",{className:"w-full h-full",children:(0,zt.jsx)(a0.Provider,{value:re,children:A})}),J?(0,zt.jsx)(Ya,{className:"fixed bottom-4 right-4 w-8 h-8 rounded-full bg-slate-900/60 backdrop-blur-sm border border-slate-700/50 flex items-center justify-center text-slate-400 hover:text-blue-400 hover:bg-slate-900/80 z-[9999] transition-all shadow-lg group p-0!",onClick:()=>j(!1),title:"Open Simulation Controls",type:"button",variant:"ghost",children:(0,zt.jsxs)("svg",{className:"group-hover:scale-110 transition-transform",fill:"none",height:"14",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",viewBox:"0 0 24 24",width:"14",xmlns:"http://www.w3.org/2000/svg",children:[(0,zt.jsx)("path",{d:"M21 4H3"}),(0,zt.jsx)("path",{d:"M10 8H3"}),(0,zt.jsx)("path",{d:"M21 12H3"}),(0,zt.jsx)("path",{d:"M10 16H3"}),(0,zt.jsx)("path",{d:"M21 20H3"}),(0,zt.jsx)("circle",{cx:"14",cy:"8",r:"2"}),(0,zt.jsx)("circle",{cx:"14",cy:"16",r:"2"})]})}):(0,zt.jsxs)("div",{className:"fixed bottom-4 right-4 bg-slate-900 text-slate-300 font-mono text-xs rounded-xl shadow-2xl border border-slate-700 pointer-events-auto flex flex-col w-80 overflow-hidden animate-in slide-in-from-right duration-300",style:{zIndex:9998},children:[(0,zt.jsxs)("div",{className:"flex justify-between items-center p-3 border-b border-slate-800 cursor-pointer bg-slate-800/50 hover:bg-slate-800 transition-colors",onClick:()=>j(!0),children:[(0,zt.jsxs)("span",{className:"font-bold text-slate-100 flex items-center gap-2",children:[(0,zt.jsx)("span",{className:"text-lg",children:"\u{1F6E0}\uFE0F"})," Simulation Controls"]}),(0,zt.jsx)(Ya,{className:"text-slate-500 hover:text-white p-0 h-auto hover:bg-transparent cursor-pointer",type:"button",variant:"ghost",children:"\u25BC"})]}),(0,zt.jsxs)("div",{className:"p-4 flex flex-col gap-3",children:[(0,zt.jsxs)("div",{className:"flex justify-between items-center",children:[(0,zt.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer",children:[(0,zt.jsx)("input",{checked:I,className:"accent-blue-500 w-4 h-4",onChange:ne=>P(ne.target.checked),type:"checkbox"}),(0,zt.jsxs)("span",{className:"text-slate-200 font-bold",children:["Auto-Move ",d?"(Path)":"(Random)"]})]}),(0,zt.jsxs)("div",{className:"flex items-center gap-2",children:[(0,zt.jsx)("span",{className:"text-[10px] text-slate-500",children:"Speed:"}),(0,zt.jsx)("select",{className:"bg-slate-800 border border-slate-700 rounded px-1 py-0.5 text-white focus:outline-none focus:border-blue-500 text-[10px]",onChange:ne=>be(Number(ne.target.value)),value:Q,children:[1,2,5,10,50,100,250].map(ne=>(0,zt.jsxs)("option",{value:ne,children:[ne,"x"]},ne))})]})]}),(0,zt.jsxs)("div",{className:"grid grid-cols-2 gap-2",children:[(0,zt.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,zt.jsx)("span",{className:"text-[10px] text-slate-500 text-left",children:"Lng"}),(0,zt.jsx)("input",{className:"bg-slate-800 border border-slate-700 rounded px-2 py-1 text-white focus:outline-none focus:border-blue-500",onChange:ne=>{let ee=parseFloat(ne.target.value)||0;K([ee,R[1]]),we()},step:"0.001",type:"number",value:R[0]})]}),(0,zt.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,zt.jsx)("span",{className:"text-[10px] text-slate-500 text-left",children:"Lat"}),(0,zt.jsx)("input",{className:"bg-slate-800 border border-slate-700 rounded px-2 py-1 text-white focus:outline-none focus:border-blue-500",onChange:ne=>{let ee=parseFloat(ne.target.value)||0;K([R[0],ee]),we()},step:"0.001",type:"number",value:R[1]})]}),(0,zt.jsxs)("div",{className:"flex flex-col gap-1 col-span-2",children:[(0,zt.jsx)("span",{className:"text-[10px] text-slate-500",children:"Heading (Degrees)"}),(0,zt.jsx)("input",{className:"w-full accent-blue-500",max:"360",min:"0",onChange:ne=>{W(parseInt(ne.target.value,10)),we()},type:"range",value:Y}),(0,zt.jsxs)("div",{className:"text-right text-slate-400",children:[Y,"\xB0"]})]})]}),(0,zt.jsx)(Ya,{className:`w-full rounded px-2 py-1.5 text-[10px] font-bold border cursor-pointer ${H?"bg-blue-500/20 border-blue-500 text-blue-300":"bg-slate-800 border-slate-700 text-slate-200 hover:bg-slate-700"}`,onClick:()=>X(ne=>!ne),type:"button",variant:"ghost",children:H?"\u{1F4CD} Click the map to drop location\u2026":"\u{1F4CD} Drop location on map"}),(0,zt.jsxs)("div",{className:"flex flex-col gap-1 border-t border-slate-800 pt-3",children:[(0,zt.jsxs)("div",{className:"flex justify-between items-center",children:[(0,zt.jsx)("span",{className:"text-[10px] text-slate-500",children:"Scan Radius"}),(0,zt.jsxs)("div",{className:"flex items-center gap-1",children:[(0,zt.jsx)("input",{className:"w-16 bg-slate-800 border border-slate-700 rounded px-1.5 py-0.5 text-white text-[10px] focus:outline-none focus:border-blue-500",min:"0",onChange:ne=>le(Math.max(0,Number(ne.target.value)||0)),type:"number",value:ae}),(0,zt.jsxs)("select",{className:"bg-slate-800 border border-slate-700 rounded px-1 py-0.5 text-white text-[10px] focus:outline-none focus:border-blue-500",onChange:ne=>Fe(ne.target.value),value:ve,children:[(0,zt.jsx)("option",{value:"m",children:"m"}),(0,zt.jsx)("option",{value:"km",children:"km"})]})]})]}),(0,zt.jsx)("input",{className:"w-full accent-blue-500",max:ve==="km"?10:500,min:"0",onChange:ne=>le(Number(ne.target.value)),step:ve==="km"?.1:5,type:"range",value:ae}),(0,zt.jsx)("div",{className:"text-right text-slate-400",children:ae===0?"hidden":`${ae}${ve} radius around user`})]})]})]})]}):null};var ns=et(Et(),1),Ra=et(Zt(),1),E5=({isOpen:t=!1,onClose:r})=>{let[u,d]=(0,ns.useState)(t),[x,s]=(0,ns.useState)([]),A=(0,ns.useRef)(null);(0,ns.useEffect)(()=>{d(t)},[t]);let I=()=>s([]),P=(0,ns.useCallback)((R,K)=>{if(R.includes("LOCATION_STREAM_UPDATE"))return;let Y={content:typeof K=="string"?K:JSON.stringify(K,null,2),id:Math.random().toString(36).slice(2),label:R,time:new Date().toLocaleTimeString()};s(W=>[Y,...W].slice(0,100))},[]);return(0,ns.useEffect)(()=>{if(typeof window>"u")return;let R=Qa.bridge,K=R.send.bind(R);R.send=async(W,Q)=>(P(`OUT: ${W}`,Q),K(W,Q));let Y=R.handleNativeMessage.bind(R);return R.handleNativeMessage=W=>{let Q=W.eventName||W.event||W.type||"MSG";typeof Q=="string"&&(P(`IN: ${Q}`,W.payload||W.value||W),Y(W))},()=>{R.send=K,R.handleNativeMessage=Y}},[P]),u?(0,Ra.jsxs)("div",{className:"fixed inset-x-0 bottom-0 w-full bg-[#0a080f] border-t border-slate-800 z-[9998] p-4 shadow-2xl flex flex-col animate-in slide-in-from-bottom duration-300",children:[(0,Ra.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,Ra.jsxs)("span",{className:"text-[10px] font-bold uppercase tracking-widest text-slate-400 flex items-center gap-2",children:[(0,Ra.jsx)("span",{className:"w-2 h-2 rounded-full bg-emerald-500 animate-pulse"}),"UP SDK Debug Console"]}),(0,Ra.jsxs)("div",{className:"flex gap-4",children:[(0,Ra.jsx)(Ya,{className:"text-[10px] text-slate-500 font-bold uppercase hover:text-slate-300 hover:bg-transparent transition-colors p-0 h-auto cursor-pointer",onClick:I,type:"button",variant:"ghost",children:"Clear"}),(0,Ra.jsx)(Ya,{className:"text-[10px] text-pink-500 font-bold uppercase hover:text-pink-400 hover:bg-transparent transition-colors p-0 h-auto cursor-pointer",onClick:()=>{d(!1),r&&r()},type:"button",variant:"ghost",children:"Close"})]})]}),(0,Ra.jsx)("div",{className:"bg-black/80 rounded-xl p-3 font-mono text-[10px] text-emerald-400 min-h-[120px] max-h-[240px] overflow-y-auto border border-slate-900 custom-scrollbar",ref:A,children:x.length===0?(0,Ra.jsx)("div",{className:"text-slate-600 italic text-center py-8",children:"No logs yet. Interacting with the SDK will show events here."}):x.map(R=>(0,Ra.jsxs)("div",{className:"mb-3 pb-3 border-b border-slate-900/50 last:border-0 last:mb-0 last:pb-0",children:[(0,Ra.jsxs)("div",{className:"flex gap-2 text-slate-500 mb-1 items-center",children:[(0,Ra.jsx)("span",{className:"text-[8px]",children:R.time}),(0,Ra.jsx)("span",{className:"font-bold text-white uppercase text-[8px] bg-slate-800 px-1.5 py-0.5 rounded leading-none",children:R.label})]}),(0,Ra.jsx)("pre",{className:"whitespace-pre-wrap break-all opacity-90",children:R.content})]},R.id))})]}):(0,Ra.jsx)(Ya,{className:"fixed bottom-4 left-4 w-8 h-8 rounded-full bg-slate-900/60 backdrop-blur-sm border border-slate-700/50 flex items-center justify-center text-slate-400 hover:text-emerald-400 hover:bg-slate-900/80 transition-all z-[9998] shadow-lg group p-0!",onClick:()=>d(!0),title:"Open Debug Console",type:"button",variant:"ghost",children:(0,Ra.jsxs)("svg",{className:"group-hover:scale-110 transition-transform",fill:"none",height:"14",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",viewBox:"0 0 24 24",width:"14",xmlns:"http://www.w3.org/2000/svg",children:[(0,Ra.jsx)("path",{d:"m8 2 1.88 1.88"}),(0,Ra.jsx)("path",{d:"M14.12 3.88 16 2"}),(0,Ra.jsx)("path",{d:"M9 7.13v-1a3.003 3.003 0 1 1 6 0v1"}),(0,Ra.jsx)("path",{d:"M12 20c-3.3 0-6-2.7-6-6v-3a4 4 0 0 1 4-4h4a4 4 0 0 1 4 4v3c0 3.3-2.7 6-6 6"}),(0,Ra.jsx)("path",{d:"M12 20v-9"}),(0,Ra.jsx)("path",{d:"M6.53 9C4.6 8.8 3 7.1 3 5"}),(0,Ra.jsx)("path",{d:"M6 13H2"}),(0,Ra.jsx)("path",{d:"M3 21c0-2.1 1.7-3.9 3.8-4"}),(0,Ra.jsx)("path",{d:"M20.97 5c0 2.1-1.6 3.8-3.5 4"}),(0,Ra.jsx)("path",{d:"M22 13h-4"}),(0,Ra.jsx)("path",{d:"M17.2 17c2.1.1 3.8 1.9 3.8 4"})]})})};var u7=et(_5(),1),ss=et(Et(),1),nf=et(Zt(),1);function _k({onScan:t,onError:r,className:u=""}){let d=(0,ss.useRef)(null),x=(0,ss.useRef)(null),s=(0,ss.useRef)(null),A=(0,ss.useRef)(null),I=(0,ss.useRef)(!1),[P,R]=(0,ss.useState)(!1);return(0,ss.useEffect)(()=>{let K=!1;I.current=!1;let Y=()=>{if(A.current&&(cancelAnimationFrame(A.current),A.current=null),s.current){for(let be of s.current.getTracks())be.stop();s.current=null}},W=()=>{if(K||I.current)return;let be=d.current,he=x.current;if(!be||be.readyState!==be.HAVE_ENOUGH_DATA||!he){A.current=requestAnimationFrame(W);return}let ue=he.getContext("2d");if(!ue){A.current=requestAnimationFrame(W);return}he.height=be.videoHeight,he.width=be.videoWidth,ue.drawImage(be,0,0,he.width,he.height);let J=ue.getImageData(0,0,he.width,he.height),j=(0,u7.default)(J.data,J.width,J.height,{inversionAttempts:"dontInvert"});if(j?.data){I.current=!0,Y(),t(j.data);return}A.current=requestAnimationFrame(W)};return(async()=>{try{if(!await Qa.permission.request("camera")){r?.("Permission cam\xE9ra refus\xE9e par l'utilisateur.");return}if(!navigator.mediaDevices||!navigator.mediaDevices.getUserMedia){r?.("L'acc\xE8s \xE0 la cam\xE9ra requiert une connexion s\xE9curis\xE9e (HTTPS) ou n'est pas support\xE9 par ce navigateur.");return}let he=await navigator.mediaDevices.getUserMedia({video:{facingMode:"environment"}});if(K){for(let J of he.getTracks())J.stop();return}s.current=he;let ue=d.current;if(!ue||(ue.srcObject=he,ue.setAttribute("playsinline","true"),await ue.play(),K))return;R(!0),A.current=requestAnimationFrame(W)}catch(be){console.error("QRScanner: camera access failed:",be),r?.("Acc\xE8s cam\xE9ra refus\xE9 ou non disponible sur cet appareil.")}})(),()=>{K=!0,Y()}},[]),(0,nf.jsxs)("div",{className:u,style:{alignItems:"center",display:"flex",justifyContent:"center",overflow:"hidden",position:"relative"},children:[(0,nf.jsx)("video",{playsInline:!0,ref:d,style:{height:"100%",objectFit:"cover",width:"100%"}}),(0,nf.jsx)("canvas",{ref:x,style:{display:"none"}}),P&&(0,nf.jsx)("div",{style:{border:"2px dashed rgba(255,255,255,0.8)",borderRadius:12,bottom:"10%",left:"10%",pointerEvents:"none",position:"absolute",right:"10%",top:"10%"}})]})}var sf=et(Et(),1);var sl=et(Zt(),1),w5=(0,sf.createContext)({isMocked:!1}),bk=()=>(0,sf.useContext)(w5).isMocked,Ck=({children:t,debug:r=!1,...u})=>{let d=typeof window<"u"&&!(window.__UP_REACT_NATIVE_APP__===!0||window.ReactNativeWebView),x=(0,sf.useMemo)(()=>({isMocked:d}),[d]),s=(0,sl.jsxs)(sl.Fragment,{children:[t,(r||d)&&(0,sl.jsx)(E5,{})]});return d?(0,sl.jsx)(w5.Provider,{value:x,children:(0,sl.jsx)(C5,{...u,children:s})}):(0,sl.jsx)(w5.Provider,{value:x,children:s})};var Io=et(Et(),1),H1=et(Zt(),1),c7=8,Ek=40,wk=.4,Ak=.35,Bk="cubic-bezier(0.16, 1, 0.3, 1)",Dk=300,Sk=15,Fk=200,Lk=.5,Ik=2,Tk=1,Mk="[data-swipe-scroll-root]",d7=`transform ${Dk}ms ${Bk}`,kk=({items:t,activeId:r,onActiveChange:u,peek:d=1.1,gap:x=10,className:s,itemClassName:A,axisPriority:I="horizontal",verticalDrag:P,overscan:R=Ik,visibleOverscan:K=Tk})=>{let Y=(0,Io.useRef)(null),[W,Q]=(0,Io.useState)(0),[be,he]=(0,Io.useState)(0),[ue,J]=(0,Io.useState)(0),[j,ae]=(0,Io.useState)(!1),[le,ve]=(0,Io.useState)(!1),Fe=(0,Io.useRef)(null),[H,X]=(0,Io.useState)(()=>Math.max(0,t.findIndex(We=>We.id===r))),ie=(0,Io.useRef)(r),[Ce,Pe]=(0,Io.useState)(!0);(0,Io.useEffect)(()=>{let We=setTimeout(()=>{Pe(!1)},1e3);return()=>clearTimeout(We)},[]),(0,Io.useEffect)(()=>{if(r!==ie.current){let We=t.findIndex(Ve=>Ve.id===r);We!==-1&&X(We),ie.current=r}},[r,t]);let Ae=Math.min(Math.max(H,0),Math.max(t.length-1,0));(0,Io.useLayoutEffect)(()=>{let We=Y.current;if(!We)return;let Ve=()=>Q(We.clientWidth);Ve();let qe=new ResizeObserver(Ve);return qe.observe(We),()=>qe.disconnect()},[]);let Ee=W/d,we=Ee+x,Z=(W-Ee)/2-Ae*we+be,re=We=>{X(We);let Ve=t[We];Ve&&Ve.id!==r&&u(Ve.id)},ne=We=>{let Ve=We.targetTouches[0];if(!Ve)return;let qe=!1;if(P){let Ge=P.scrollRootSelector??Mk,tt=We.target.closest(Ge);qe=!tt||tt.scrollTop<=2}Fe.current={lastT:We.timeStamp,lastX:Ve.clientX,lastY:Ve.clientY,lockedAxis:null,startX:Ve.clientX,startY:Ve.clientY,velocityX:0,velocityY:0,verticalAllowed:qe}},ee=We=>{let Ve=We.targetTouches[0],qe=Fe.current;if(!Ve||!qe)return;let Ge=Ve.clientX-qe.startX,tt=Ve.clientY-qe.startY;if(!qe.lockedAxis){if(Math.abs(Ge)<c7&&Math.abs(tt)<c7)return;Math.abs(Ge)>Math.abs(tt)||Math.abs(Ge)===Math.abs(tt)&&I==="horizontal"?qe.lockedAxis="x":P&&qe.verticalAllowed?qe.lockedAxis="y":qe.lockedAxis="passthrough"}if(qe.lockedAxis==="passthrough")return;let yt=We.timeStamp-qe.lastT;if(yt>0&&(qe.velocityX=(Ve.clientX-qe.lastX)/yt,qe.velocityY=(Ve.clientY-qe.lastY)/yt),qe.lastX=Ve.clientX,qe.lastY=Ve.clientY,qe.lastT=We.timeStamp,qe.lockedAxis==="x"){j||ae(!0);let it=Ae===0&&Ge>0,Le=Ae===t.length-1&&Ge<0;he(it||Le?Ge*Ak:Ge)}else if(P){let it=P.direction??"down",Le=tt;it==="down"&&(Le=Math.max(0,tt)),it==="up"&&(Le=Math.min(0,tt));let Te=Math.sign(Le)*Math.max(0,Math.abs(Le)-Sk);le||ve(!0),J(Te),P.onDragChange?.(Te,!0)}We.cancelable&&We.preventDefault()},pe=()=>{let We=Fe.current;if(Fe.current=null,ae(!1),ve(!1),!We){he(0),J(0);return}if(We.lockedAxis==="x"){if(Math.abs(be)>Ek||Math.abs(We.velocityX)>wk){let qe=be<0?Math.min(t.length-1,Ae+1):Math.max(0,Ae-1);re(qe)}}else if(We.lockedAxis==="y"){let Ve=P?.dismissThreshold??Fk,qe=P?.dismissVelocity??Lk,Ge=P?.direction??"down",tt=Ge==="down"?Math.max(0,We.velocityY):Ge==="up"?Math.max(0,-We.velocityY):Math.abs(We.velocityY);(Math.abs(ue)>Ve||tt>qe)&&P?.onDismiss?.()}he(0),J(0),P?.onDragChange?.(0,!1)},Ke=Math.max(0,Ae-R),Ue=Math.min(t.length-1,Ae+R);return(0,H1.jsx)("div",{className:`relative overflow-hidden touch-pan-y ${s??""}`,onTouchCancel:pe,onTouchEnd:pe,onTouchMove:ee,onTouchStart:ne,ref:Y,children:(0,H1.jsx)("div",{className:"relative h-full",style:{transform:`translateX(${Z}px)`,transition:j||Ce?"none":d7,willChange:"transform"},children:t.map((We,Ve)=>{if(Ve<Ke||Ve>Ue)return null;let qe=Ve===Ae,Ge=qe?ue:0,tt=Math.abs(Ve-Ae),yt=tt<=K;return(0,H1.jsx)("div",{className:`absolute top-0 left-0 h-full shrink-0 ${A??""} ${We.className??""}`,style:{opacity:yt?1:0,pointerEvents:yt?void 0:"none",transform:`translateX(${Ve*we}px) translateY(${Ge}px)`,transition:qe&&le||Ce?"none":d7,width:`${Ee}px`,zIndex:R+1-tt},children:We.content},We.id)})})})};async function Pk(t,r){return G1.fetchRoute(t,r)}function Rk(t,r,u){let d=`sdk-route-${r}`,x=`sdk-route-casing-${r}`,s=`sdk-route-line-${r}`,A={features:[{geometry:u.payload.routeData.geometry,properties:{},type:"Feature"}],type:"FeatureCollection"},I=t.getSource(d);I?I.setData(A):(t.addSource(d,{data:A,type:"geojson"}),t.addLayer({id:x,layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#111111","line-opacity":.8,"line-width":8},source:d,type:"line"}),t.addLayer({id:s,layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#3b82f6","line-width":4},source:d,type:"line"}))}function zk(t,r){let u=`sdk-route-${r}`,d=`sdk-route-casing-${r}`,x=`sdk-route-line-${r}`;t.getLayer(x)&&t.removeLayer(x),t.getLayer(d)&&t.removeLayer(d),t.getSource(u)&&t.removeSource(u)}var Ok=Qa;return fS(Nk);})();
|
|
861
861
|
/*! Bundled license information:
|
|
862
862
|
|
|
863
863
|
react/cjs/react.production.js:
|