PageSourceSearch

https://uug.ai/assets/entries/pages_index.C6yZ52Wl.js

js uug.ai collected 2026-10-05 13:09:53 UTC 66,712 bytes, 2 lines download raw bytes

1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/chunks/chunk-9HjHhJ3l.js","assets/chunks/chunk-C0NELHBk.js","assets/chunks/chunk-B5V_m5y9.js","assets/static/vike-react-b64a028b.BcWtY8Ol.css","assets/static/src_App-ac5f32af.BYidKf76.css","assets/static/src_components_Button_component-6f4c562f.Dj4_SuCR.css","assets/static/src_index-b3c78705.4aLjc44d.css","assets/static/src_components_Globe_component-df3d19c7.COlZLtbe.css"])))=>i.map(i=>d[i]);
2import{r as s,t as j,j as e,c as $r,S as Lr,a as Nr,h as Er,i as Mr,b as Or,o as Rr}from"../chunks/chunk-C0NELHBk.js";import{_ as Pr}from"../chunks/chunk-B5V_m5y9.js";import{h as Sr}from"../chunks/chunk-Cd-b394A.js";import{x as Hr,S as Vr}from"../chunks/chunk-DE1jPlzS.js";/* empty css                      *//* empty css                      *//* empty css                      *//* empty css                      */var Ar=Object.defineProperty,lt=Object.getOwnPropertySymbols,Ir=Object.prototype.hasOwnProperty,_r=Object.prototype.propertyIsEnumerable,ct=(o,t,r)=>t in o?Ar(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,ge=(o,t)=>{for(var r in t||(t={}))Ir.call(t,r)&&ct(o,r,t[r]);if(lt)for(var r of lt(t))_r.call(t,r)&&ct(o,r,t[r]);return o};const Tr=(o,t)=>{const r=s.useContext(j),i=ge(ge({},r),o);return s.createElement("svg",ge({width:"1.5em",height:"1.5em",strokeWidth:1.5,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M15 4V2M15 4V6M15 4H10.5M3 10V19C3 20.1046 3.89543 21 5 21H19C20.1046 21 21 20.1046 21 19V10H3Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M3 10V6C3 4.89543 3.89543 4 5 4H7",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M7 2V6",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M21 10V6C21 4.89543 20.1046 4 19 4H18.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}))},Wr=s.forwardRef(Tr);var Dr=Wr,Br=Object.defineProperty,dt=Object.getOwnPropertySymbols,Yr=Object.prototype.hasOwnProperty,Zr=Object.prototype.propertyIsEnumerable,ut=(o,t,r)=>t in o?Br(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,ve=(o,t)=>{for(var r in t||(t={}))Yr.call(t,r)&&ut(o,r,t[r]);if(dt)for(var r of dt(t))Zr.call(t,r)&&ut(o,r,t[r]);return o};const zr=(o,t)=>{const r=s.useContext(j),i=ve(ve({},r),o);return s.createElement("svg",ve({width:"1.5em",height:"1.5em",strokeWidth:1.5,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M2 19V9C2 7.89543 2.89543 7 4 7H4.5C5.12951 7 5.72229 6.70361 6.1 6.2L8.32 3.24C8.43331 3.08892 8.61115 3 8.8 3H15.2C15.3889 3 15.5667 3.08892 15.68 3.24L17.9 6.2C18.2777 6.70361 18.8705 7 19.5 7H20C21.1046 7 22 7.89543 22 9V19C22 20.1046 21.1046 21 20 21H4C2.89543 21 2 20.1046 2 19Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M12 17C14.2091 17 16 15.2091 16 13C16 10.7909 14.2091 9 12 9C9.79086 9 8 10.7909 8 13C8 15.2091 9.79086 17 12 17Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}))},Xr=s.forwardRef(zr);var ae=Xr,Fr=Object.defineProperty,pt=Object.getOwnPropertySymbols,Ur=Object.prototype.hasOwnProperty,Gr=Object.prototype.propertyIsEnumerable,ht=(o,t,r)=>t in o?Fr(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,we=(o,t)=>{for(var r in t||(t={}))Ur.call(t,r)&&ht(o,r,t[r]);if(pt)for(var r of pt(t))Gr.call(t,r)&&ht(o,r,t[r]);return o};const qr=(o,t)=>{const r=s.useContext(j),i=we(we({},r),o);return s.createElement("svg",we({width:"1.5em",height:"1.5em",strokeWidth:1.5,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M12 4C6 4 6 8 6 10C4.33333 10 1 11 1 15C1 19 4.33333 20 6 20H18C19.6667 20 23 19 23 15C23 11 19.6667 10 18 10C18 8 18 4 12 4Z",stroke:"currentColor",strokeLinejoin:"round"}))},Qr=s.forwardRef(qr);var Ie=Qr,Kr=Object.defineProperty,mt=Object.getOwnPropertySymbols,Jr=Object.prototype.hasOwnProperty,eo=Object.prototype.propertyIsEnumerable,ft=(o,t,r)=>t in o?Kr(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,xe=(o,t)=>{for(var r in t||(t={}))Jr.call(t,r)&&ft(o,r,t[r]);if(mt)for(var r of mt(t))eo.call(t,r)&&ft(o,r,t[r]);return o};const to=(o,t)=>{const r=s.useContext(j),i=xe(xe({},r),o);return s.createElement("svg",xe({width:"1.5em",height:"1.5em",strokeWidth:1.5,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M13.5 6L10 18.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M6.5 8.5L3 12L6.5 15.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M17.5 8.5L21 12L17.5 15.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}))},ro=s.forwardRef(to);var oo=ro,no=Object.defineProperty,gt=Object.getOwnPropertySymbols,so=Object.prototype.hasOwnProperty,ao=Object.prototype.propertyIsEnumerable,vt=(o,t,r)=>t in o?no(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,ye=(o,t)=>{for(var r in t||(t={}))so.call(t,r)&&vt(o,r,t[r]);if(gt)for(var r of gt(t))ao.call(t,r)&&vt(o,r,t[r]);return o};const io=(o,t)=>{const r=s.useContext(j),i=ye(ye({},r),o);return s.createElement("svg",ye({width:"1.5em",height:"1.5em",strokeWidth:1.5,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M8 15.4V8.6C8 8.26863 8.26863 8 8.6 8H15.4C15.7314 8 16 8.26863 16 8.6V15.4C16 15.7314 15.7314 16 15.4 16H8.6C8.26863 16 8 15.7314 8 15.4Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M20 4.6V19.4C20 19.7314 19.7314 20 19.4 20H4.6C4.26863 20 4 19.7314 4 19.4V4.6C4 4.26863 4.26863 4 4.6 4H19.4C19.7314 4 20 4.26863 20 4.6Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M17 4V2",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M12 4V2",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M7 4V2",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M7 20V22",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M12 20V22",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M17 20V22",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M20 17H22",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M20 12H22",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M20 7H22",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M4 17H2",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M4 12H2",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M4 7H2",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}))},lo=s.forwardRef(io);var Qt=lo,co=Object.defineProperty,wt=Object.getOwnPropertySymbols,uo=Object.prototype.hasOwnProperty,po=Object.prototype.propertyIsEnumerable,xt=(o,t,r)=>t in o?co(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,be=(o,t)=>{for(var r in t||(t={}))uo.call(t,r)&&xt(o,r,t[r]);if(wt)for(var r of wt(t))po.call(t,r)&&xt(o,r,t[r]);return o};const ho=(o,t)=>{const r=s.useContext(j),i=be(be({},r),o);return s.createElement("svg",be({width:"1.5em",height:"1.5em",viewBox:"0 0 24 24",strokeWidth:1.5,fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M12 12L4 4M4 4V8M4 4H8",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}
2),s.createElement("path",{d:"M12 12L20 4M20 4V8M20 4H16",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M12 12L4 20M4 20V16M4 20H8",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M12 12L20 20M20 20V16M20 20H16",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}))},mo=s.forwardRef(ho);var fo=mo,go=Object.defineProperty,yt=Object.getOwnPropertySymbols,vo=Object.prototype.hasOwnProperty,wo=Object.prototype.propertyIsEnumerable,bt=(o,t,r)=>t in o?go(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,je=(o,t)=>{for(var r in t||(t={}))vo.call(t,r)&&bt(o,r,t[r]);if(yt)for(var r of yt(t))wo.call(t,r)&&bt(o,r,t[r]);return o};const xo=(o,t)=>{const r=s.useContext(j),i=je(je({},r),o);return s.createElement("svg",je({width:"1.5em",height:"1.5em",strokeWidth:1.5,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M3.99961 3H19.9997C20.552 3 20.9997 3.44764 20.9997 3.99987L20.9999 5.58569C21 5.85097 20.8946 6.10538 20.707 6.29295L14.2925 12.7071C14.105 12.8946 13.9996 13.149 13.9996 13.4142L13.9996 19.7192C13.9996 20.3698 13.3882 20.8472 12.7571 20.6894L10.7571 20.1894C10.3119 20.0781 9.99961 19.6781 9.99961 19.2192L9.99961 13.4142C9.99961 13.149 9.89425 12.8946 9.70672 12.7071L3.2925 6.29289C3.10496 6.10536 2.99961 5.851 2.99961 5.58579V4C2.99961 3.44772 3.44732 3 3.99961 3Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}))},yo=s.forwardRef(xo);var bo=yo,jo=Object.defineProperty,jt=Object.getOwnPropertySymbols,Co=Object.prototype.hasOwnProperty,ko=Object.prototype.propertyIsEnumerable,Ct=(o,t,r)=>t in o?jo(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,Ce=(o,t)=>{for(var r in t||(t={}))Co.call(t,r)&&Ct(o,r,t[r]);if(jt)for(var r of jt(t))ko.call(t,r)&&Ct(o,r,t[r]);return o};const $o=(o,t)=>{const r=s.useContext(j),i=Ce(Ce({},r),o);return s.createElement("svg",Ce({width:"1.5em",height:"1.5em",strokeWidth:1.5,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M20 20H4V4",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M4 16.5L12 9L15 12L19.5 7.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}))},Lo=s.forwardRef($o);var Kt=Lo,No=Object.defineProperty,kt=Object.getOwnPropertySymbols,Eo=Object.prototype.hasOwnProperty,Mo=Object.prototype.propertyIsEnumerable,$t=(o,t,r)=>t in o?No(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,ke=(o,t)=>{for(var r in t||(t={}))Eo.call(t,r)&&$t(o,r,t[r]);if(kt)for(var r of kt(t))Mo.call(t,r)&&$t(o,r,t[r]);return o};const Oo=(o,t)=>{const r=s.useContext(j),i=ke(ke({},r),o);return s.createElement("svg",ke({width:"1.5em",height:"1.5em",strokeWidth:1.5,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M13 2.04932C13 2.04932 16 5.99994 16 11.9999",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M11 21.9506C11 21.9506 8 17.9999 8 11.9999C8 5.99994 11 2.04932 11 2.04932",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M2.62964 15.5H12",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M2.62964 8.5H21.3704",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M21.8789 17.9174C22.3727 18.2211 22.3423 18.9604 21.8337 19.0181L19.2671 19.309L18.1159 21.6213C17.8878 22.0795 17.1827 21.8552 17.0661 21.2873L15.8108 15.1713C15.7123 14.6913 16.1437 14.3892 16.561 14.646L21.8789 17.9174Z",stroke:"currentColor"}))},Ro=s.forwardRef(Oo);var Po=Ro,So=Object.defineProperty,Lt=Object.getOwnPropertySymbols,Ho=Object.prototype.hasOwnProperty,Vo=Object.prototype.propertyIsEnumerable,Nt=(o,t,r)=>t in o?So(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,$e=(o,t)=>{for(var r in t||(t={}))Ho.call(t,r)&&Nt(o,r,t[r]);if(Lt)for(var r of Lt(t))Vo.call(t,r)&&Nt(o,r,t[r]);return o};const Ao=(o,t)=>{const r=s.useContext(j),i=$e($e({},r),o);return s.createElement("svg",$e({width:"1.5em",height:"1.5em",strokeWidth:1.5,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M16 12H17.4C17.7314 12 18 12.2686 18 12.6V19.4C18 19.7314 17.7314 20 17.4 20H6.6C6.26863 20 6 19.7314 6 19.4V12.6C6 12.2686 6.26863 12 6.6 12H8M16 12V8C16 6.66667 15.2 4 12 4C8.8 4 8 6.66667 8 8V12M16 12H8",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}))},Io=s.forwardRef(Ao);var _e=Io,_o=Object.defineProperty,Et=Object.getOwnPropertySymbols,To=Object.prototype.hasOwnProperty,Wo=Object.prototype.propertyIsEnumerable,Mt=(o,t,r)=>t in o?_o(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,Le=(o,t)=>{for(var r in t||(t={}))To.call(t,r)&&Mt(o,r,t[r]);if(Et)for(var r of Et(t))Wo.call(t,r)&&Mt(o,r,t[r]);return o};const Do=(o,t)=>{const r=s.useContext(j),i=Le(Le({},r),o);return s.createElement("svg",Le({width:"1.5em",height:"1.5em",strokeWidth:1.5,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M9 6L15 12L9 18",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}))},Bo=s.forwardRef(Do);var Yo=Bo,Zo=Object.defineProperty,Ot=Object.getOwnPropertySymbols,zo=Object.prototype.hasOwnProperty,Xo=Object.prototype.propertyIsEnumerable,Rt=(o,t,r)=>t in o?Zo(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,Ne=(o,t)=>{for(var r in t||(t={}))zo.call(t,r)&&Rt(o,r,t[r]);if(Ot)for(var r of Ot(t))Xo.call(t,r)&&Rt(o,r,t[r]);return o};const Fo=(o,t)=>{const r=s.useContext(j),i=Ne(Ne({},r),o);return s.createElement("svg",Ne({width:"1.5em",height:"1.5em",strokeWidth:1.5,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M6 12H12M18 12H12M12 12V6M12 12V18",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}))},Uo=s.forwardRef(Fo);var Go=Uo,qo=Object.defineProperty,Pt=Object.getOwnPropertySymbols,Qo=Object.prototype.hasOwnProperty,Ko=Object.prototype.propertyIsEnumerable,St=(o,t,r)=>t in o?qo(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,Ee=(o,t)=>{for(var r in t||(t={}))Qo.call(t,r)&&St(o,r,t[r]);if(Pt)for(var r of Pt(t))Ko.call(t,r)&&St(o,r,t[r]);return o};const Jo=(o,t)=>{const r=s.useContext(j),i=Ee(Ee({},r),o);return s.createElement("svg",Ee({width:"1.5em",height:"1.5em",strokeWidth:1.5,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M6 18.01L6.01 17.9989",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M6 6.01L6.01 5.99889",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M2 9.4V2.6C2 2.26863 2.26863 2 2.6 2H21.4C21.7314 2 22 2.26863 22 2.6V9.4C22 9.73137 21.7314 10 21.4 10H2.6C2.26863 10 2 9.73137 2 9.4Z",stroke:"currentColor"}),s.createElement("path",{d:"M2 21.4V14.6C2 14.2686 2.26863 14 2.6 14H21.4C21.7314 14 22 14.2686 22 14.6V21.4C22 21.7314 21.7314 22 21.4 22H2.6C2.26863 22 2 21.7314 2 21.4Z",stroke:"currentColor"}))},en=s.forwardRef(Jo);var Te=en,tn=Object.defineProperty,Ht=Object.getOwnPropertySymbols,rn=Object.prototype.hasOwnProperty,on=Object.prototype.propertyIsEnumerable,Vt=(o,t,r)=>t in o?tn(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,Me=(o,t)=>{for(var r in t||(t={}))rn.call(t,r)&&Vt(o,r,t[r]);if(Ht)for(var r of Ht(t))on.call(t,r)&&Vt(o,r,t[r]);return o};const nn=(o,t)=>{const r=s.useContext(j),i=Me(Me({},r),o);return s.createElement("svg",Me({width:"1.5em",height:"1.5em",strokeWidth:1.5,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M18 22C19.6569 22 21 20.6569 21 19C21 17.3431 19.6569 16 18 16C16.3431 16 15 17.3431 15 19C15 20.6569 
216.3431 22 18 22Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M18 8C19.6569 8 21 6.65685 21 5C21 3.34315 19.6569 2 18 2C16.3431 2 15 3.34315 15 5C15 6.65685 16.3431 8 18 8Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M6 15C7.65685 15 9 13.6569 9 12C9 10.3431 7.65685 9 6 9C4.34315 9 3 10.3431 3 12C3 13.6569 4.34315 15 6 15Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M15.5 6.5L8.5 10.5",stroke:"currentColor"}),s.createElement("path",{d:"M8.5 13.5L15.5 17.5",stroke:"currentColor"}))},sn=s.forwardRef(nn);var At=sn,an=Object.defineProperty,It=Object.getOwnPropertySymbols,ln=Object.prototype.hasOwnProperty,cn=Object.prototype.propertyIsEnumerable,_t=(o,t,r)=>t in o?an(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,Oe=(o,t)=>{for(var r in t||(t={}))ln.call(t,r)&&_t(o,r,t[r]);if(It)for(var r of It(t))cn.call(t,r)&&_t(o,r,t[r]);return o};const dn=(o,t)=>{const r=s.useContext(j),i=Oe(Oe({},r),o);return s.createElement("svg",Oe({width:"1.5em",height:"1.5em",strokeWidth:1.5,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M8.5 11.5L11.5 14.5L16.5 9.5",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M5 18L3.13036 4.91253C3.05646 4.39524 3.39389 3.91247 3.90398 3.79912L11.5661 2.09641C11.8519 2.03291 12.1481 2.03291 12.4339 2.09641L20.096 3.79912C20.6061 3.91247 20.9435 4.39524 20.8696 4.91252L19 18C18.9293 18.495 18.5 21.5 12 21.5C5.5 21.5 5.07071 18.495 5 18Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}))},un=s.forwardRef(dn);var Jt=un,pn=Object.defineProperty,Tt=Object.getOwnPropertySymbols,hn=Object.prototype.hasOwnProperty,mn=Object.prototype.propertyIsEnumerable,Wt=(o,t,r)=>t in o?pn(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,Re=(o,t)=>{for(var r in t||(t={}))hn.call(t,r)&&Wt(o,r,t[r]);if(Tt)for(var r of Tt(t))mn.call(t,r)&&Wt(o,r,t[r]);return o};const fn=(o,t)=>{const r=s.useContext(j),i=Re(Re({},r),o);return s.createElement("svg",Re({width:"1.5em",height:"1.5em",viewBox:"0 0 24 24",strokeWidth:1.5,fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M8 15C12.8747 15 15 12.949 15 8C15 12.949 17.1104 15 22 15C17.1104 15 15 17.1104 15 22C15 17.1104 12.8747 15 8 15Z",stroke:"currentColor",strokeLinejoin:"round"}),s.createElement("path",{d:"M2 6.5C5.13376 6.5 6.5 5.18153 6.5 2C6.5 5.18153 7.85669 6.5 11 6.5C7.85669 6.5 6.5 7.85669 6.5 11C6.5 7.85669 5.13376 6.5 2 6.5Z",stroke:"currentColor",strokeLinejoin:"round"}))},gn=s.forwardRef(fn);var vn=gn,wn=Object.defineProperty,Dt=Object.getOwnPropertySymbols,xn=Object.prototype.hasOwnProperty,yn=Object.prototype.propertyIsEnumerable,Bt=(o,t,r)=>t in o?wn(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,Pe=(o,t)=>{for(var r in t||(t={}))xn.call(t,r)&&Bt(o,r,t[r]);if(Dt)for(var r of Dt(t))yn.call(t,r)&&Bt(o,r,t[r]);return o};const bn=(o,t)=>{const r=s.useContext(j),i=Pe(Pe({},r),o);return s.createElement("svg",Pe({width:"1.5em",height:"1.5em",strokeWidth:1.5,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M9 2L15 2",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M12 10L12 14",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}),s.createElement("path",{d:"M12 22C16.4183 22 20 18.4183 20 14C20 9.58172 16.4183 6 12 6C7.58172 6 4 9.58172 4 14C4 18.4183 7.58172 22 12 22Z",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}))},jn=s.forwardRef(bn);var Cn=jn,kn=Object.defineProperty,Yt=Object.getOwnPropertySymbols,$n=Object.prototype.hasOwnProperty,Ln=Object.prototype.propertyIsEnumerable,Zt=(o,t,r)=>t in o?kn(o,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[t]=r,Se=(o,t)=>{for(var r in t||(t={}))$n.call(t,r)&&Zt(o,r,t[r]);if(Yt)for(var r of Yt(t))Ln.call(t,r)&&Zt(o,r,t[r]);return o};const Nn=(o,t)=>{const r=s.useContext(j),i=Se(Se({},r),o);return s.createElement("svg",Se({width:"1.5em",height:"1.5em",strokeWidth:1.5,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",color:"currentColor",ref:t},i),s.createElement("path",{d:"M6.75827 17.2426L12.0009 12M17.2435 6.75736L12.0009 12M12.0009 12L6.75827 6.75736M12.0009 12L17.2435 17.2426",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round"}))},En=s.forwardRef(Nn);var Mn=En;const On=()=>e.jsxs(e.Fragment,{children:[e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M2.63977 3.6945C3.60315 1.63165 5.67557 0 8.99992 0C12.3243 0 14.3967 1.63165 15.36 3.69451C16.2775 5.659 16.1823 8.02363 15.2407 9.53003C14.2882 
211.0538 12.7448 13.2982 11.4807 15.1363C10.8093 16.1127 10.2167 16.9744 9.8334 17.5526C9.64814 17.832 9.33519 18 8.99992 18C8.66466 18 8.3517 17.832 8.16645 17.5526C7.78308 16.9743 7.1904 16.1124 6.5189 15.136C5.2549 13.2979 3.71159 11.0537 2.75917 9.53006C1.81753 8.02364 1.72234 5.65899 2.63977 3.6945ZM4.4519 4.54079C3.77601 5.98807 3.92594 7.62341 4.4551 8.46995C5.39014 9.96579 6.86091 12.1036 8.1055 13.9128C8.42251 14.3735 8.72485 14.813 8.99992 15.2151C9.27494 14.8131 9.5772 14.3738 9.89414 13.9131C11.1388 12.1039 12.6097 9.96591 13.5447 8.46997C14.0739 7.62343 14.2238 5.98806 13.5479 4.54078C12.918 3.19188 11.5586 2 8.99992 2C6.44123 2 5.08186 3.19188 4.4519 4.54079Z"}),e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M8.99988 9C10.1044 9 10.9999 8.10457 10.9999 7C10.9999 5.89543 10.1044 5 8.99988 5C7.89531 5 6.99988 5.89543 6.99988 7C6.99988 8.10457 7.89531 9 8.99988 9Z"})]}),Rn=()=>e.jsxs(e.Fragment,{children:[e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9 2C7.89543 2 7 2.89543 7 4C7 5.10457 7.89543 6 9 6C10.1046 6 11 5.10457 11 4C11 2.89543 10.1046 2 9 2ZM5 4C5 1.79086 6.79086 0 9 0C11.2091 0 13 1.79086 13 4C13 6.20914 11.2091 8 9 8C6.79086 8 5 6.20914 5 4Z"}),e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3.9981 11.3995C5.29471 9.88675 7.08937 9 9 9C10.9106 9 12.7053 9.88675 14.0019 11.3995C15.2944 12.9074 16 14.9238 16 17C16 17.5523 15.5523 18 15 18L3 18C2.44772 18 2 17.5523 2 17C2 14.9238 2.70558 12.9074 3.9981 11.3995
2ZM9 11C7.72803 11 6.47044 11.5882 5.51662 12.701C4.75666 13.5877 4.24797 14.743 4.07017 16L13.9298 16C13.752 14.743 13.2433 13.5877 12.4834 12.701C11.5296 11.5882 10.272 11 9 11Z"})]}),Pn=()=>e.jsxs(e.Fragment,{children:[e.jsxs("g",{clipPath:"url(#hub-device-group-right)",children:[e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12.4802 6H15V5.11364C15 4.64235 14.9043 4.1751 14.7178 3.73836C14.5312 3.30157 14.257 2.90316 13.9099 2.56651C13.5626 2.2298 13.1492 1.96154 12.6925 1.77812C12.2359 1.59469 11.7456 1.5 11.25 1.5C10.7544 1.5 10.2642 1.59469 9.80746 1.77812C9.52217 1.89271 9.25373 2.04042 9.00778 2.21724L7.32179 1.72093C7.39394 1.64168 7.46868 1.56454 7.5459 1.48966C8.03441 1.01595 8.61311 0.64137 9.24838 0.386204C9.88362 0.131052 10.5637 5.99978e-08 11.25 0C11.9363 -5.99977e-08 12.6163 0.131052 13.2516 0.386204C13.8869 0.64137 14.4655 1.01595 14.9541 1.48966C15.4426 1.9634 15.8314 2.52708 16.0972 3.14913C16.3629 3.77123 16.5 4.43885 16.5 5.11364V6.75C16.5 6.94892 16.4209 7.13968 16.2803 7.28033C16.1397 7.42098 15.9489 7.5 15.75 7.5H13.6903L12.4802 6Z"}),e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M13.5686 7.5H15V8.25H13.9865L14.179 9.75H15.75C16.1642 9.75 16.5 9.41423 16.5 9V6.75C16.5 6.33579 16.1642 6 15.75 6H12.5131L13.5686 7.5Z"}),e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M16.5 12H13.0178V13.5H17.25C17.6642 13.5 18 13.1642 18 12.75V9.75C18 8.92155 17.3285 8.25 16.5 8.25H14.0031L14.2502 9.75H16.5V12Z"}),e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.6761 5.18862C12.297 5.00501 12.75 4.43041 12.75 3.75C12.75 2.92157 12.0785 2.25 11.25 2.25C10.8002 2.25 10.3966 2.44801 10.1217 2.76162L10.6799 3.26263C10.8175 3.10188 11.0218 3 11.25 3C11.6642 3 12 3.33579 12 3.75C12 4.09028 11.7734 4.37763 11.4628 4.46937L11.6761 5.18862Z"})]}),e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.8206 5.27212C11.7697 5.10777 11.6651 4.80819 11.5972 4.64915C11.3314 4.0271 10.9426 3.46342 10.4541 2.98967C9.96555 2.51597 9.38692 2.14138 8.7516 1.88622C8.11635 1.63107 7.43629 1.50002 6.75 1.50002C6.0637 1.50002 5.38363 1.63107 4.74838 1.88622C4.11311 2.14139 3.53441 2.51597 3.04591 2.98967C2.55736 3.46342 2.16854 4.0271 1.90283 4.64915C1.63709 5.27125 1.5 5.93886 1.5 6.61366V8.25002C1.5 8.66423 1.83579 9.00002 2.25 9.00002H4.99591L5.55615 7.50002H3V6.61366C3 6.14237 3.0957 5.67512 3.28225 5.23838C3.46883 4.80158 3.74296 4.40318 4.09013 4.06652C4.43735 3.72982 4.85081 3.46156 5.30746 3.27814C5.76415 3.0947 6.25439 3.00002 6.75 3.00002C7.24561 3.00002 7.73587 3.0947 8.19255 3.27814C8.64922 3.46156 9.06262 3.72982 9.40987 4.06652C9.65998 4.30905 9.87217 4.58362 10.041 4.8815L11.8206 5.27212Z"}),e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4.99564 9H3V9.75H4.89629L4.87556 11.25H2.25C1.83579 11.25 1.5 10.9142 1.5 10.5V8.25C1.5 7.83579 1.83579 7.5 2.25 7.5H5.55093L4.99564 9Z"}),e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M5.0625 11.25H1.5V13.5H3.90234L3.375 15H0.75C0.335786 15 0 14.6642 0 14.25V11.25C0 10.4215 0.671573 9.75 1.5 9.75H5.0625V11.25Z"}),e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.38875 4.85676C7.25667 4.64269 7.02 4.50002 6.75 4.50002C6.33579 4.50002 6 4.83581 6 5.25002C6 5.34965 6.01943 5.44474 6.0547 5.53172L5.44733 5.99421C5.32177 5.7749 5.25 5.52084 5.25 5.25002C5.25 4.42159 5.92157 3.75002 6.75 3.75002C7.37642 3.75002 7.91313 4.13398 8.13765 4.67938L7.38875 4.85676Z"}),e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M14.1044 11.7803C13.9638 11.921 13.773 12 13.5741 12H4.57407C4.15986 12 3.82407 11.6642 3.82407 11.25V9.61364C3.82407 8.93885 3.96116 8.27123 4.2269 7.64913C4.49261 7.02709 4.88142 6.4634 5.36997 5.98966C5.85848 5.51595 6.43718 5.14137 7.07245 4.8862C7.70769 4.63105 8.38777 4.5 9.07407 4.5C9.76035 4.5 10.4404 4.63105 11.0757 4.8862C11.711 5.14137 12.2896 5.51595 12.7782 5.98966C13.2667 6.4634 13.6555 7.02708 13.9212 7.64913C14.187 8.27123 14.3241 8.93885 14.3241 9.61364V11.25C14.3241 11.4489 14.245 11.6397 14.1044 11.7803ZM12.8241 10.5V9.61364C12.8241 9.14235 12.7284 8.6751 12.5418 8.23836C12.3552 7.80157 12.0811 7.40316 11.7339 7.06651C11.3867 6.7298 10.9733 6.46154 10.5166 6.27812C10.0599 6.09469 9.56967 6 9.07407 6C8.57846 6 8.08822 6.09469 7.63153 6.27812C7.17488 6.46154 6.76142 6.7298 6.4142 7.06651C6.06702 7.40316 5.7929 7.80157 5.60632 8.23836C5.41977 8.6751 5.32407 9.14235 5.32407 9.61364V10.5H12.8241Z"}),e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M3.82407 11.25C3.82407 10.8358 4.15986 10.5 4.57407 10.5H13.5741C13.9883 10.5 14.3241 10.8358 14.3241 11.25V13.5C14.3241 13.9142 13.9883 14.25 13.5741 14.25H4.57407C4.15986 14.25 3.82407 13.9142 3.82407 13.5V11.25ZM5.32407 12
2V12.75H12.8241V12H5.32407Z"}),e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M2.32407 14.25C2.32407 13.4215 2.99564 12.75 3.82407 12.75H14.3241C15.1525 12.75 15.8241 13.4215 15.8241 14.25V17.25C15.8241 17.6642 15.4883 18 15.0741 18H3.07407C2.65985 18 2.32407 17.6642 2.32407 17.25V14.25ZM14.3241 14.25H3.82407V16.5H14.3241V14.25Z"}),e.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M9.07406 9C9.48827 9 9.82406 8.66421 9.82406 8.25C9.82406 7.83579 9.48827 7.5 9.07406 7.5C8.65985 7.5 8.32406 7.83579 8.32406 8.25C8.32406 8.66421 8.65985 9 9.07406 9ZM9.07406 9.75C9.90251 9.75 10.5741 9.07843 10.5741 8.25C10.5741 7.42157 9.90251 6.75 9.07406 6.75C8.24563 6.75 7.57406 7.42157 7.57406 8.25C7.57406 9.07843 8.24563 9.75 9.07406 9.75Z"}),e.jsx("defs",{children:e.jsx("clipPath",{id:"hub-device-group-right",children:e.jsx("rect",{width:"13.5",height:"13.5",transform:"translate(4.5)"})})})]}),Sn=({icon:o,className:t})=>e.jsxs("svg",{className:t,width:"18",height:"18",viewBox:"0 0 18 18",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",children:[o==="sites"&&e.jsx(On,{}),o==="deviceGroup"&&e.jsx(Pn,{}),o==="accounts"&&e.jsx(Rn,{})]}),Hn=$r(()=>Pr(()=>import("../chunks/chunk-9HjHhJ3l.js"),__vite__mapDeps([0,1,2,3,4,5,6,7]))),Vn=[{value:"100K+",label:"cameras monitored"},{value:"+50%",label:"increased efficiency"},{value:"100+",label:"supported camera brands"}],An=[{title:"Edge",location:"On-premise",description:"Keep critical inference close to the sensor for low-latency operations.",icon:Te,accent:"edge"},{title:"Hybrid",location:"Encrypted tunnel",description:"Blend local resilience with central orchestration and policy control.",icon:_e,accent:"hybrid"},{title:"Cloud",location:"Global scale",description:"Roll out global visibility, automation, and remote management at scale.",icon:Ie,accent:"cloud"}],In=[{name:"AWS",color:"#ff9900"},{name:"Azure",color:"#0078d4"},{name:"Google Cloud",color:"#4285f4"}],_n=["Front door","Parking","Lobby"],Tn=["Person detection","Face recognition"],Wn=["Activate your own AI","White labeling","Real-time MQTT","Custom integrations","Large language models","Open APIs","MCP integration","Bring your own storage"],Dn=["Agent","Factory","Vault","Hub"],er=[{label:"Device",description:"Cameras and sensors streaming live events.",icon:ae,accent:"device",options:["Camera — Front door","Camera — Parking lot","Camera — Warehouse","Camera — Reception"]},{label:"AI model",description:"Built-in detection, recognition and more.",icon:Qt,accent:"model",options:["Person detection","Vehicle detection","Face recognition","Anomaly detector"]},{label:"Throttle",description:"Limit the frame rate per stream.",icon:Cn,accent:"throttle",options:["1 frame / second","5 fps","1 frame / 30s","1 frame / 60s"]},{label:"Active window",description:"Only run during the hours you choose.",icon:Dr,accent:"schedule",options:["Mon–Fri, 9–17","Weekends only","Always on","Nights 22–06"]},{label:"Custom stage",description:"Your own microservice, in any language.",icon:oo,accent:"stage",options:["Your microservice","ANPR","Object detection","Quality check"]}],zt=Object.fromEntries(er.map(o=>[o.accent,o])),Ae=200,We=96,Xt=[{id:"device-1",accent:"device",value:"Camera — Front door",x:12,y:122},{id:"throttle-1",accent:"throttle",value:"1 frame / second",x:276,y:36},{id:"stage-1",accent:"stage",value:"Your microservice",x:540,y:36},{id:"model-1",accent:"model",value:"Person detection",x:276,y:210},{id:"model-2",accent:"model",value:"Face recognition",x:540,y:210}],Ft=[{id:"edge-device-throttle",source:"device-1",target:"throttle-1"},{id:"edge-throttle-stage",source:"throttle-1",target:"stage-1"},{id:"edge-device-model",source:"device-1",target:"model-1"},{id:"edge-model-face",source:"model-1",target:"model-2"}],te=o=>({x:o.x+Ae,y:o.y+We/2}),Ut=o=>({x:o.x,y:o.y+We/2}),Gt=(o,t,r,i)=>{const u=Math.max(40,Math.abs(r-o)/2);return`M ${o} ${t} C ${o+u} ${t}, ${r-u} ${i}, ${r} ${i}`},tr=84,w=tr/2,v=tr/2,re=252,oe=14,Bn=18,rr=560,Yn=[{id:"llm",label:"LLM",icon:Sr,x:v*2,y:v*2},{id:"cloud",label:"Cloud",icon:Ie,x:v*7,y:v*1},{id:"stream",label:"Stream",icon:Po,x:v*12,y:v*2},{id:"secure",label:"Secure",icon:_e,x:v*1,y:v*5},{id:"data",label:"Data",icon:Kt,x:v*13,y:v*4},{id:"hub",label:"Hub",icon:Te,x:v*2,y:v*11},{id:"vision",label:"Vision",icon:ae,x:v*6,y:v*13},{id:"ops",label:"Ops",icon:Er,x:v*12,y:v*11},{id:"trust",label:"Trust",icon:Jt,x:v*13,y:v*8}],Zn={Agent:["llm","vision","secure"],Factory:["cloud","data","ops"],Vault:["secure","trust","hub"],Hub:["hub","stream","ops"]},zn=[{title:"Fleet telemetry",description:"Operational health, camera uptime, and rollout status across regions.",icon:Kt,learnMoreHref:"https://learn.uug.ai/docs/hub/analytics/"},{title:"Secure by default",description:"Role-aware access, encrypted transport, and audit-ready operational trails.",icon:_e,learnMoreHref:"https://learn.uug.ai/docs/hub/roles/"},{title:"Camera interoperability",description:"One platform for mixed vendors, mixed networks, and mixed deployment models.",icon:ae,learnMoreHref:"https://learn.uug.ai/docs/hub/onvif/"},{title:"Enterprise resilience",description:"Graceful failover paths for networks, inference workers, and data pipelines.",icon:Jt,learnMoreHref:"https://learn.uug.ai/docs/prologue/deployments/"}],Xn=24,Fn=76,Un=26,Gn=74,ne=[{id:"newyork",label:"New York",landmark:"Times Square",group:"Entrance",groupId:"entrance",cameraCount:24,regionalAccess:!0,left:"27%",top:"40%",stream
2:"/live-view/locations/new-york.jpg",focus:"50% 54%"},{id:"ghent",label:"Ghent",landmark:"Graslei",group:"Entrance",groupId:"entrance",cameraCount:18,regionalAccess:!0,left:"50%",top:"32%",stream:"/live-view/locations/ghent.jpg",focus:"50% 52%"},{id:"saopaulo",label:"São Paulo",landmark:"Avenida Paulista",group:"Control room",groupId:"control-room",cameraCount:31,regionalAccess:!1,left:"35%",top:"72%",stream:"/live-view/locations/sao-paulo.jpg",focus:"50% 70%"},{id:"capetown",label:"Cape Town",landmark:"V&A Waterfront",group:"Factory section",groupId:"factory-section",cameraCount:16,regionalAccess:!1,left:"55%",top:"76%",stream:"/live-view/locations/cape-town.jpg",focus:"50% 52%"},{id:"tokyo",label:"Tokyo",landmark:"Shibuya Crossing",group:"Hospital",groupId:"hospital",cameraCount:28,regionalAccess:!0,left:"83%",top:"43%",stream:"/live-view/locations/tokyo.jpg",focus:"50% 68%"},{id:"sydney",label:"Sydney",landmark:"Sydney Opera House",group:"Hospital",groupId:"hospital",cameraCount:11,regionalAccess:!0,left:"86%",top:"76%",stream:"/live-view/locations/sydney.jpg",focus:"50% 50%"}],He=[{id:"entrance",label:"Entrance",cameraCount:32,stream:"/live-view/groups/entrance.jpg",focus:"50% 58%"},{id:"control-room",label:"Control room",cameraCount:27,stream:"/live-view/groups/control-room.jpg",focus:"50% 50%"},{id:"factory-section",label:"Factory section",cameraCount:41,stream:"/live-view/groups/factory-section.jpg",focus:"50% 50%"},{id:"hospital",label:"Hospital",cameraCount:28,stream:"/live-view/groups/hospital.jpg",focus:"50% 56%"}],qn={"#top":"Home","#scale":"Solutions","#platform":"Platform","#workflows":"Workflows","#features":"Features"};function Ve(){const o=qn[window.location.hash]??"Home";document.title=`Augment Vision - ${o}`}function S(o,t,r){return Math.min(Math.max(o,t),r)}function H(o){return Math.round(o/v)*v}function se(o,t,r){return S(H(o),t,r)}function qt(o,t=588,r=rr){const i=Math.max(w,t-w),u=Math.max(w,r-w);return o.map(C=>({...C,x:se(C.x,w,i),y:se(C.y,w,u)}))}function Qn(o,t){const r=o/2-re/2,i=t/2-re/2;return{left:r,top:i,right:r+re,bottom:i+re,centerX:o/2,centerY:t/2}}function Kn(o,t,r){const i=Qn(t,r),u=o.x-i.centerX,C=o.y-i.centerY,y=H(i.top+v*2),L=H(i.bottom-v*2),N=H(i.left+v*2),$=H(i.right-v*2);return Math.abs(u)>=Math.abs(C)?u<0?{start:{x:o.x+w,y:o.y},end:{x:i.left+oe,y:o.y<i.centerY?y:L},axis:"horizontal"}:{start:{x:o.x-w,y:o.y},end:{x:i.right-oe,y:o.y<i.centerY?y:L},axis:"horizontal"}:C<0?{start:{x:o.x,y:o.y+w},end:{x:o.x<i.centerX?N:$,y:i.top+oe},axis:"vertical"}:{start:{x:o.x,y:o.y-w},end:{x:o.x<i.centerX?N:$,y:i.bottom-oe},axis:"vertical"}}function Jn(o,t,r){const{start:i,end:u,axis:C}=Kn(o,t,r);if(C==="horizontal"){const L=H((i.x+u.x)/2);return[i,{x:L,y:i.y},{x:L,y:u.y},u]}const y=H((i.y+u.y)/2);return[i,{x:i.x,y},{x:u.x,y},u]}function es(o,t){if(o.length<2)return"";let r=`M ${o[0].x} ${o[0].y}`;for(let i=1;i<o.length;i+=1){const u=o[i],C=o[i-1],y=o[i+1];if(!y){r+=` L ${u.x} ${u.y}`;continue}const L=Math.hypot(u.x-C.x,u.y-C.y),N=Math.hypot(y.x-u.x,y.y-u.y),$=Math.min(t,L/2,N/2),D=u.x-Math.sign(u.x-C.x||0)*$,G=u.y-Math.sign(u.y-C.y||0)*$,q=u.x+Math.sign(y.x-u.x||0)*$,O=u.y+Math.sign(y.y-u.y||0)*$;r+=` L ${D} ${G} Q ${u.x} ${u.y} ${q} ${O}`}return r}function ts(){const[o,t]=s.useState("Hub"),[r,i]=s.useState(()=>qt(Yn)),[u,C]=s.useState(null),[y,L]=s.useState({width:588,height:rr}),N=s.useRef(null),$=s.useRef(null),D=s.useRef(null),G=s.useRef(null),q=s.useRef(null),O=s.useRef(null),[or,De]=s.useState(!1),[f,Be]=s.useState(1),[P,Ye]=s.useState([]),[E,Ze]=s.useState([]),[V,nr]=s.useState({x:50,y:50}),[B,ze]=s.useState(null),[sr,ar]=s.useState(!1),[R,Y]=s.useState(Xt),[ie,Q]=s.useState(Ft),A=s.useRef(100),Z=s.useRef(null),[Xe,ir]=s.useState({width:760,height:340}),[z,lr]=s.useState(null),le=s.useRef(null),[I,cr]=s.useState(null),ce=s.useRef(null),Fe=s.useRef(null),Ue=s.useRef(null),Ge=s.useRef(null),qe=s.useRef(null),[_,dr]=s.useState({left:"M256.8 384.8 V137.1 Q256.8 113.1 280.8 113.1 H500",right:"M500 113.1 H719.2 Q743.2 113.1 743.2 137.1 V384.8",base:"M662 384.8 L350 384.8"}),de=n=>{le.current=n,lr(n)},ue=n=>{ce.current=n,cr(n)},ur=n=>{A.current+=1;const a=zt[n],c=`${n}-${A.current}`,l=A.current%6*24;Y(d=>[...d,{id:c,accent:n,value:a.options[0],x:40+l,y:28+l}])},pr=n=>{Y(a=>a.filter(c=>c.id!==n)),Q(a=>a.filter(c=>c.source!==n&&c.target!==n))},hr=(n,a)=>{Y(c=>c.map(l=>l.id===n?{...l,value:a}:l))},mr=n=>{Q(a=>a.filter(c=>c.id!==n))},fr=()=>{A.current=100,Y(Xt),Q(Ft)},gr=n=>a=>{const c=Z.current,l=R.find(h=>h.id===n);if(!c||!l)return;a.preventDefault();const d=c.getBoundingClientRect();de({id:n,offsetX:a.clientX-d.left-l.x,offsetY:a.clientY-d.top-l.y,x:l.x,y:l.y})},vr=n=>a=>{const c=Z.current,l=R.find(h=>h.id===n);if(!c||!l)return;a.preventDefault(),a.stopPropagation();const d=te(l);ue({source:n,x:d.x,y:d.y})},Qe=!!z,Ke=!!I;s.useEffect(()=>{if(!Qe&&!Ke)return;const n=c=>{const l=Z.current;if(!l)return;const d=l.getBoundingClientRect(),h=c.clientX-d.left,p=c.clientY-d.top,g=le.current,b=ce.current;if(g){const m=Math.max(0,d.width-Ae),k=Math.max(0,d.height-We),x=S(h-g.offsetX,0,m),M=S(p-g.offsetY,0,k);de({...g,x,y:M})}else b&&ue({...b,x:h,y:p})},a=c=>{const l=le.current,d=ce.current;if(l){const{id:h,x:p,y:g}=l;Y(b=>b.map(m=>m.id===h?{...m,x:p,y:g}:m)),de(null)}if(d){const p=document.elementFromPoint(c.clientX,c.clientY)?.closest("[data-workflow-node]")?.dataset.workflowNode;p&&p!==d.source&&(Q(g=>g.some(b=>b.source===d.source&&b.target===p)?g:[...g,{id:`edge-${d.source}-${p}-${A.current}`,source:d.source,target:p}]),A.current+=1),ue(null)}};return window.addEventListener("pointermove",n),window.addEventListener("pointerup",a),()=>{window.removeEventListener("pointermove",n),window.removeEventListener("pointerup",a)}},[Qe,Ke]);const wr=R.length>0;s.useEffect(()=>{const n=Z.current;if(!n)return;const a=new ResizeObserver(()=>{ir({width:n.clientWidth,height:n.clientHeight})});return a.observe(n),()=>a.disconnect()},[wr]);const pe=new Map(R.map(n=>[n.id,n])),K=n=>z?.id===n.id?{...n,x:z.x,y:z.y}:n,Je=new Set(Zn[o]??[]);s.useEffect(()=>(Ve(),window.addEventListener("hashchange",Ve),()=>{window.removeEventListener("hashchange",Ve)}),[]),s.useEffect(()=>{const n=c=>{const l=O.current;l?.open&&!l.contains(c.target)&&l.removeAttribute("open")},a=c=>{const l=O.current;
2c.key==="Escape"&&l?.open&&(l.removeAttribute("open"),l.querySelector("summary")?.focus())};return document.addEventListener("pointerdown",n),document.addEventListener("keydown",a),()=>{document.removeEventListener("pointerdown",n),document.removeEventListener("keydown",a)}},[]),s.useEffect(()=>{if(window.matchMedia("(prefers-reduced-motion: reduce)").matches)return;const n=1,a=2.9,c=[G.current,q.current].flatMap(l=>{if(!l)return[];let d=0,h=n;const p=()=>l.getAnimations({subtree:!0}).find(x=>x.animationName==="hero-cta-travel"),g=()=>{const x=p();if(!x)return;const M=x.playbackRate+(h-x.playbackRate)*.15;x.playbackRate=Math.abs(M-h)<.01?h:M,x.playbackRate!==h&&(d=requestAnimationFrame(g))},b=x=>{h=x,cancelAnimationFrame(d),d=requestAnimationFrame(g)},m=()=>b(a),k=()=>b(n);return l.addEventListener("mouseenter",m),l.addEventListener("mouseleave",k),l.addEventListener("focus",m),l.addEventListener("blur",k),[()=>{cancelAnimationFrame(d),l.removeEventListener("mouseenter",m),l.removeEventListener("mouseleave",k),l.removeEventListener("focus",m),l.removeEventListener("blur",k)}]});return()=>{c.forEach(l=>l())}},[]),s.useEffect(()=>{const n=$.current;if(!n)return;if(typeof IntersectionObserver>"u"){De(!0);return}const a=new IntersectionObserver(c=>{c.some(l=>l.isIntersecting)&&(De(!0),a.disconnect())},{threshold:.25});return a.observe(n),()=>a.disconnect()},[]),s.useEffect(()=>{const n=N.current;if(!n)return;const a=()=>{L({width:n.clientWidth,height:n.clientHeight}),i(l=>qt(l,n.clientWidth,n.clientHeight))};a();const c=new ResizeObserver(()=>{a()});return c.observe(n),()=>{c.disconnect()}},[]),s.useEffect(()=>{const n=Fe.current,a=Ue.current,c=Ge.current,l=qe.current;if(!n||!a||!c||!l)return;const d=()=>{const p=n.getBoundingClientRect();if(p.width===0||p.height===0)return;const g=U=>(U-p.left)/p.width*1e3,b=U=>(U-p.top)/p.height*560,m=U=>Math.round(U*10)/10,k=a.getBoundingClientRect(),x=c.getBoundingClientRect(),M=l.getBoundingClientRect(),ee=24,st=g(M.left+M.width/2),W=b(M.top+M.height/2),me=g(k.left+k.width/2),at=b(k.top+k.height/2),fe=g(x.left+x.width/2),it=b(x.top+x.height/2),Cr=g(k.right),kr=g(x.left);dr({left:`M${m(me)} ${m(at)} V${m(W+ee)} Q${m(me)} ${m(W)} ${m(me+ee)} ${m(W)} H${m(st)}`,right:`M${m(st)} ${m(W)} H${m(fe-ee)} Q${m(fe)} ${m(W)} ${m(fe)} ${m(W+ee)} V${m(it)}`,base:`M${m(kr+4)} ${m(it)} L${m(Cr-4)} ${m(at)}`})};d();const h=new ResizeObserver(()=>d());return h.observe(n),h.observe(a),h.observe(c),h.observe(l),window.addEventListener("resize",d),document.fonts?.ready&&document.fonts.ready.then(d).catch(()=>{}),()=>{h.disconnect(),window.removeEventListener("resize",d)}},[]),s.useEffect(()=>{if(!u)return;const n=c=>{const l=N.current;if(!l)return;const d=l.getBoundingClientRect(),h=c.clientX-d.left-u.offsetX,p=c.clientY-d.top-u.offsetY,g=Math.max(w,d.width-w),b=Math.max(w,d.height-w),m=S(h,w,g),k=S(p,w,b);C(x=>x&&{...x,x:m,y:k})},a=()=>{i(c=>c.map(l=>l.id===u.id?{...l,x:se(u.x,w,Math.max(w,y.width-w)),y:se(u.y,w,Math.max(w,y.height-w))}:l)),C(null)};return window.addEventListener("pointermove",n),window.addEventListener("pointerup",a),()=>{window.removeEventListener("pointermove",n),window.removeEventListener("pointerup",a)}},[y.height,y.width,u]),s.useEffect(()=>{if(!B)return;const n=c=>{const l=D.current;if(!l)return;const d=l.getBoundingClientRect(),h=c.clientX-d.left-B.offsetX,p=c.clientY-d.top-B.offsetY,g=S(h/d.width*100,Xn,Fn),b=S(p/d.height*100,Un,Gn);nr({x:g,y:b})},a=()=>{ze(null)};return window.addEventListener("pointermove",n),window.addEventListener("pointerup",a),()=>{window.removeEventListener("pointermove",n),window.removeEventListener("pointerup",a)}},[B]);const xr=["Hub live view","Sites by location","Logical camera groups","User access"],X=[{value:1,label:"Sites",icon:"sites"},{value:2,label:"Groups",icon:"deviceGroup"},{value:3,label:"User access",icon:"accounts"}],yr=ne.filter(n=>n.regionalAccess),et=f===3?yr:ne,he=E.length?He.filter(n=>E.includes(n.id)):He,J=et.filter(n=>f===2?!E.length||E.includes(n.groupId):!P.length||P.includes(n.id)),tt=J.reduce((n,a)=>n+a.cameraCount,0),br=he.reduce((n,a)=>n+a.cameraCount,0),rt=he.length,F=f===2?E:P,ot=f===2?He:et,nt=f===2?"groups":"sites",T=ot.filter(n=>
2F.includes(n.id)),jr=n=>{(f===2?Ze:Ye)(c=>c.includes(n)?c.filter(l=>l!==n):[...c,n])};return e.jsxs("div",{className:"app-container",children:[e.jsx(Lr,{currentPage:"home"}),e.jsxs("main",{id:"top",className:"main-content",children:[e.jsxs("section",{className:"hero section-gap","data-theme":"dark",children:[e.jsx("div",{className:"hero-visual",children:e.jsx(Hn,{fallback:e.jsx("div",{className:"globe","aria-hidden":"true"}),onPlayingChange:ar,theme:"dark"})}),e.jsxs("div",{className:"hero-inner section-width",children:[e.jsxs("div",{className:"hero-title-block",children:[e.jsx("h1",{className:"hero-title-main",children:"AUGMENT VISION"}),e.jsx("div",{className:"hero-title-sub",children:sr?"Protecting the future of vision AI":"Scaling the future of vision AI"})]}),e.jsxs("div",{className:"hero-copy",children:[e.jsxs("div",{className:"hero-story",children:[e.jsx("h2",{children:"Operate vision AI from one control layer"}),e.jsx("p",{children:"Deploy, monitor, and scale camera intelligence across sites, regions, and deployment models from a single platform. Augment Vision gives teams one place to connect video, orchestration, and operational oversight without fragmenting their stack."})]}),e.jsxs("div",{className:"hero-actions hero-primary-actions",children:[e.jsx("a",{ref:G,href:"#scale",className:"button button-primary hero-cta",children:"Learn more"}),e.jsx("a",{href:"https://app-demo.kerberos.io",className:"button hero-demo-secondary",target:"_blank",rel:"noopener noreferrer",children:"View demo"})]})]}),e.jsx("div",{className:"metrics hero-metrics",children:Vn.map(n=>e.jsxs("div",{className:"metric-item",children:[e.jsx("strong",{children:n.value}),e.jsx("span",{children:n.label})]},n.label))})]})]}),e.jsx("section",{id:"scale",className:"gradient-panel section-gap",children:e.jsxs("div",{className:"section-width panel-grid contact-shell control-tower-shell",ref:$,children:[e.jsx("div",{className:`control-tower-map ${or?"is-visible":""}`,ref:$,children:e.jsxs("div",{className:"map-preview",ref:D,children:[e.jsx("img",{className:"map-preview-world",src:"/worldmap%201.svg",alt:"","aria-hidden":"true"}),e.jsx("svg",{className:"map-preview-links",preserveAspectRatio:"none","aria-hidden":"true",children:ne.map(n=>{const a=f===2?E.length>0&&!E.includes(n.groupId):P.length>0&&!P.includes(n.id);return e.jsx("line",{className:`map-preview-link ${f===2?`is-group-view group-${n.groupId}`:""} ${f===3&&!n.regionalAccess?"is-restricted":""} ${a?"is-filtered-out":""}`,x1:n.left,y1:n.top,x2:`${V.x}%`,y2:`${V.y}%`},n.id)})}),ne.map(n=>{const a=f===2?E.length>0&&!E.includes(n.groupId):P.length>0&&!P.includes(n.id);return e.jsxs("span",{className:`map-preview-pin ${f>0?"is-governed":""} ${f===2?`is-group-view group-${n.groupId}`:""} ${f===3&&!n.regionalAccess?"is-restricted":""} ${a?"is-filtered-out":""}`,style:{left:n.left,top:n.top},children:[e.jsx("span",{className:"map-preview-pin-marker",children:e.jsx("span",{className:"map-preview-pin-ping"})}),e.jsxs("span",{className:"map-preview-pin-label",children:[f===2?n.group:n.label,f===3&&e.jsx("small",{children:n.regionalAccess?"Operator access":"Restricted"})]})]},n.id)}),e.jsx("div",{className:`map-preview-core ${B?"is-dragging":""}`,style:{left:`${V.x}%`,top:`${V.y}%`},children:e.jsxs("div",{className:"hub-app",role:"img","aria-label":"Hub application aggregating live camera streams from every location into a single pane of glass. Drag to reposition it on the map.",onPointerDown:n=>{const a=D.current;if(!a)return;n.preventDefault();const c=a.getBoundingClientRect(),l=V.x/100*c.width,d=V.y/100*c.height;ze({offsetX:n.clientX-c.left-l,offsetY:n.clientY-c.top-d})},children:[e.jsxs("div",{className:"hub-app__bar",children:[e.jsxs("span",{className:"hub-app__heading",children:[e.jsx("strong",{className:"hub-app__title",children:xr[f]}),e.jsx("span",{className:"hub-app__meta",children:f===2?`${rt} groups · ${br} cameras`:`${J.length} sites · ${tt} cameras`})]}),e.jsxs("span",{className:"hub-app__live",children:[e.jsx("span",{className:"hub-app__live-dot"}),"LIVE"]})]}),e.jsx("div",{className:"hub-app__wall",children:(f===2?he:J).map((n,a)=>e.jsxs("div",{className:`hub-app__tile ${f>0?"is-governed":""}`,style:{"--i":a},children:[e.jsx("img",{className:"hub-app__tile-img",src:n.stream,alt:f===2?`${n.label} camera group`:`Live view of ${"landmark"in n?n.landmark:n.label}, ${n.label}`,style:{objectPosition:n.focus},loading:"lazy",decoding:"async",draggable:!1}),e.jsx("span",{className:"hub-app__tile-live","aria-hidden":"true"}),e.jsx("span",{className:"hub-app__tile-label",children:n.label})]},n.id))})]})})]})}),e.jsxs("div",{className:"panel-copy contact-copy control-tower
2-copy",children:[e.jsx("p",{className:"eyebrow eyebrow-light",children:"Hub"}),e.jsx("h2",{children:"Govern every camera, across every location"}),e.jsx("p",{className:"contact-description control-tower-description",children:"Organize cameras by tenant, site, and group. Give each user access to exactly what they need, while managing every location from one central Hub."}),e.jsx("div",{className:`governance-modes is-step-${f}`,role:"tablist","aria-label":"Map view",onKeyDown:n=>{if(n.key!=="ArrowLeft"&&n.key!=="ArrowRight")return;const a=X.findIndex(p=>p.value===f),c=n.key==="ArrowRight"?1:-1,l=(a+c+X.length)%X.length,d=X[l];n.preventDefault(),Be(d.value),O.current?.removeAttribute("open"),n.currentTarget.querySelectorAll('[role="tab"]')[l]?.focus()},children:X.map(n=>e.jsxs("button",{type:"button",role:"tab",className:`governance-mode ${f===n.value?"is-active":""}`,"aria-selected":f===n.value,tabIndex:f===n.value?0:-1,onClick:()=>{Be(n.value),O.current?.removeAttribute("open")},children:[e.jsx(Sn,{icon:n.icon}),e.jsx("span",{children:n.label})]},n.value))}),e.jsxs("details",{ref:O,className:"governance-filter",children:[e.jsxs("summary",{children:[e.jsx(bo,{"aria-hidden":"true"}),T.length===0&&e.jsxs("span",{className:"governance-filter__placeholder",children:["Filter ",nt]}),T.length>0&&e.jsxs("strong",{className:"governance-filter__title",children:[T[0].label,T.length>1&&",",T.length>1&&e.jsxs("b",{children:["+",T.length-1]})]}),e.jsx(Hr,{className:"governance-filter__chevron","aria-hidden":"true"})]}),e.jsxs("div",{className:"governance-filter__menu",children:[e.jsxs("button",{type:"button",className:F.length?"":"is-active",onClick:()=>{f===2?Ze([]):Ye([]),O.current?.removeAttribute("open")},children:[e.jsxs("span",{children:["All ",nt]}),e.jsx("input",{type:"checkbox",checked:!F.length,readOnly:!0})]}),ot.map(n=>e.jsxs("label",{className:F.includes(n.id)?"is-active":"",children:[e.jsx("span",{children:n.label}),e.jsx("input",{type:"checkbox",checked:F.includes(n.id),onChange:()=>jr(n.id)})]},n.id))]})]}),e.jsxs("div",{className:"governance-readout","aria-live":"polite",children:[e.jsxs("span",{children:[e.jsx("small",{children:"Tenant"}),"City Operations"]}),e.jsxs("span",{children:[e.jsx("small",{children:"Sites"}),J.length]}),e.jsxs("span",{children:[e.jsx("small",{children:f===2?"Groups":"Cameras"}),f===2?rt:tt]}),e.jsxs("span",{children:[e.jsx("small",{children:f===3?"Scope":"Organization"}),f===1&&"Location based",f===2&&"Cross-site",f===3&&"Regional operator"]})]}),e.jsxs("div",{className:"hero-actions control-tower-actions",children:[e.jsx("a",{ref:q,href:"#platform",className:"button button-surface hero-cta control-tower-demo-cta",children:"Deploy a new site"}),e.jsx("a",{href:"https://app-demo.kerberos.io",className:"button control-tower-demo-secondary",target:"_blank",rel:"noopener noreferrer",children:"Play with demo"})]})]})]})}),e.jsxs("section",{id:"platform",className:"section-width section-gap platform-section",children:[e.jsxs("div",{className:"split-heading",children:[e.jsxs("div",{children:[e.jsx("h2",{children:"You are in the driving seat"}),e.jsx("p",{children:"Your data remains your data, wherever you operate on premise, hybrid in the cloud, you are in the driving seat."})]}),e.jsx("a",{href:"/contact/",className:"button button-primary button-small",children:"Book a demo"})]}),e.jsxs("div",{className:"deployment-scene",children:[e.jsx("div",{className:"deployment-legend",children:An.map(n=>{const a=n.icon;return e.jsxs("article",{className:`mode-card deploy-legend-card is-${n.accent}`,children:[e.jsxs("div",{className:"deploy-legend-head",children:[e.jsx("span",{className:"mode-icon deploy-legend-icon",children:e.jsx(a,{width:22,height:22})}),e.jsxs("div",{children:[e.jsx("h3",{children:n.title}),e.jsx("span",{className:"deploy-legend-place",children:n.location})]})]}),e.jsx("p",{children:n.description})]},n.title)})}),e.jsxs("div",{className:"deployment-stage is-triangle","aria-hidden":"true",children:[e.jsxs("svg",{ref:Fe,className:"deploy-tri-links",viewBox:"0 0 1000 560",preserveAspectRatio:"none",role:"img",children:[e.jsx("path",{className:"deploy-line",d:_.left}),e.jsx("path",{className:"deploy-line",d:_.right}),e.jsx("path",{className:"deploy-line",d:_.base}),e.jsx("path",{className:"deploy-flow deploy-flow-l",d:_.left,pathLength:100}),e.jsx("path",{className:"deploy-flow deploy-flow-r",d:_.right,pathLength:100}),e.jsx("path",{className:"deploy-flow deploy-flow-base",d:_.base,pathLength:100})]}),e.jsxs("div",{className:"deploy-node deploy-node-hybrid deploy-apex",ref:qe,children:[e.jsx("span",{className:"deploy-node-badge",children:"Hybrid"}),e.jsx("div",{className:"deploy-art-wrap deploy-apex-art",children:e.jsx(At,{width:44,height:44})}),e.jsx("span",{className:"deploy-node-place",children:"Orchestration & policy"})]}),e.jsxs("span",{className:"deploy-store deploy-store-edge",children:[e.jsx(Te,{width:14,height:14}),"Edge storage"]}),e.jsxs("span",{className:"deploy-store deploy-store-cloud",children:[e.jsx(Ie,{width:14,height:14}),"Cloud storage"]}),e.jsxs("div",{className:"deploy-node deploy-node-edge deploy-corner deploy-corner-edge",ref:Ue,children:[e.jsx("span",{className:"deploy-node-badge",children:"Edge"}),e.jsx("div",{className:"deploy-art-wrap",children:e.jsxs("svg",{className:"deploy-art",viewBox:"0 0 120 120",role:"img",children:[e.jsxs("g",{className:"deploy-art-cam",children:[e.jsx("rect",{x:"49",y:"20",width:"34",height:"13",rx:"6"}),e.jsx("circle",{cx:"83",cy:"26",r:"3.4",className:"deploy-art-lens"}),e.jsx("line",{x1:"56",y1:"33",x2:"56",y2:"40"})]}),e.jsx("rect",{x:"30",y:"40",width:"60",height:"64",rx:"8",className:"deploy-art-body"}),e.jsx("rect",{x:"40",y:"52",width:"12",height:"12",rx:"2",className:"deploy-art-win"}),e.jsx("rect",{x:"58",y:"52",width:"12",height:"12",rx:"2",className:"deploy-art-win"}),e.jsx("rect",{x:"40",y:"72",width:"12",height:"12",rx:"2",className:"deploy-art-win"}),e.jsx("rect",{x:"58",y:"72",width:"12",height:"22",rx:"2",className:"deploy-art-door"})]})}),e.jsxs("div",{className:"deploy-feed",children:[e.jsx("div",{className:"deploy-chip-row",children:_n.map(n=>e.jsxs("span",{className:"deploy-chip is-camera",children:[e.jsx(ae,{width:13,height:13}),n]},n))}
2),e.jsx("div",{className:"deploy-chip-row",children:Tn.map(n=>e.jsxs("span",{className:"deploy-chip is-model",children:[e.jsx(Qt,{width:13,height:13}),n]},n))})]}),e.jsx("span",{className:"deploy-node-place",children:"On-premise"})]}),e.jsxs("div",{className:"deploy-node deploy-node-cloud deploy-corner deploy-corner-cloud",ref:Ge,children:[e.jsx("span",{className:"deploy-node-badge",children:"Cloud"}),e.jsx("div",{className:"deploy-art-wrap",children:e.jsxs("svg",{className:"deploy-art",viewBox:"0 0 130 120",role:"img",children:[e.jsxs("g",{className:"deploy-art-sat",children:[e.jsx("line",{x1:"65",y1:"30",x2:"40",y2:"30",className:"deploy-art-panel-bar"}),e.jsx("line",{x1:"65",y1:"30",x2:"90",y2:"30",className:"deploy-art-panel-bar"}),e.jsx("rect",{x:"22",y:"22",width:"18",height:"16",rx:"2",className:"deploy-art-panel"}),e.jsx("rect",{x:"90",y:"22",width:"18",height:"16",rx:"2",className:"deploy-art-panel"}),e.jsx("rect",{x:"57",y:"22",width:"16",height:"16",rx:"3",className:"deploy-art-sat-body"}),e.jsx("circle",{cx:"65",cy:"14",r:"6",className:"deploy-art-dish"}),e.jsx("path",{className:"deploy-art-wave",d:"M74 6 a12 12 0 0 1 8 8"}),e.jsx("path",{className:"deploy-art-wave",d:"M78 2 a18 18 0 0 1 12 12"})]}),e.jsx("path",{className:"deploy-art-cloud",d:"M40 92 a18 18 0 0 1 2-35 a24 24 0 0 1 46 4 a16 16 0 0 1 -2 31 Z"})]})}),e.jsx("div",{className:"deploy-providers",children:In.map(n=>e.jsxs("span",{className:"deploy-provider",children:[e.jsx("span",{className:"deploy-provider-dot",style:{background:n.color}}),n.name]},n.name))}),e.jsx("span",{className:"deploy-node-place",children:"Global scale"})]})]})]})]}),e.jsx("section",{id:"composition",className:"dark-panel section-gap",children:e.jsxs("div",{className:"section-width ecosystem-grid contact-shell composition-shell",children:[e.jsxs("div",{className:"contact-copy composition-copy",children:[e.jsx("p",{className:"eyebrow eyebrow-light",children:"Composable platform"}),e.jsx("h2",{children:"Extensible and modular by default"}),e.jsx("p",{className:"contact-description composition-description",children:"A platform designed for builders: extensible, modular, and integration-ready from the start. We provide the backbone, you bring the vision together creating solutions that move your business forward."}),e.jsx("div",{className:"chip-grid contact-chip-grid composition-chip-grid",children:Wn.map(n=>e.jsx("span",{className:"capability-chip",children:n},n))})]}),e.jsxs("div",{className:"architecture-visual",ref:N,children:[e.jsxs("svg",{className:"architecture-connectors",viewBox:`0 0 ${y.width} ${y.height}`,"aria-hidden":"true",children:[e.jsx("defs",{children:e.jsxs("linearGradient",{id:"architectureConnectorGradient",gradientUnits:"userSpaceOnUse",x1:"0%",y1:"0%",x2:"100%",y2:"100%",children:[e.jsx("stop",{offset:"0%",stopColor:"#2713ff"}),e.jsx("stop",{offset:"100%",stopColor:"#ff0059"})]})}),r.map(n=>{const a=u?.id===n.id?{...n,x:u.x,y:u.y}:n;return e.jsx("path",{d:es(Jn(a,y.width,y.height),Bn),className:`architecture-connector-path ${Je.has(n.id)?"is-linked":""}`},`${n.id}-connector`)})]}),e.jsxs("div",{className:"core-node",children:[e.jsx("div",{className:"core-ring"}),e.jsx("div",{className:"core-card",role:"radiogroup","aria-label":"Platform modules",children:Dn.map(n=>e.jsx("button",{type:"button",role:"radio",className:`core-card-button ${o===n?"is-active":""}`,onClick:()=>t(n),"aria-checked":o===n,children:n},n))})]}),r.map(n=>{const a=n.icon,c=u?.id===n.id,l=c?u.x:n.x,d=c?u.y:n.y;return e.jsxs("button",{type:"button",className:`orbit ${c?"is-dragging":""} ${Je.has(n.id)?"is-linked":""}`,style:{left:l-w,top:d-w},"aria-label":`Drag ${n.label} node`,onPointerDown:h=>{const p=N.current;if(!p)return;const g=p.getBoundingClientRect();C({id:n.id,offsetX:h.clientX-g.left-n.x,offsetY:h.clientY-g.top-n.y,x:n.x,y:n.y})},children:[e.jsx(a,{width:22,height:22}),e.jsx("span",{children:n.label})]},n.id)})]})]})}),e.jsxs("section",{id:"workflows",className:"section-width section-gap workflows-section",children:[e.jsxs("div",{className:"split-heading split-heading-top workflows-heading",children:[e.jsxs("div",{className:"workflows-heading-copy",children:[e.jsx("p",{className:"eyebrow",children:"Custom workflows"}),e.jsx("h2",{children:"Drop your own microservice into the workflow"}),e.jsx("p",{className:"workflows-heading-lead",children:"Wrap any computer-vision task as a stage — ANPR, object detection, quality inspection — and compose it straight into a workflow, right next to the built-in no
2des."})]}),e.jsxs("div",{className:"features-intro-card workflows-intro-card",children:[e.jsx("p",{className:"eyebrow",children:"Bring your own stage"}),e.jsx("p",{className:"features-intro",children:"Wire devices, throttles and AI models into a flow on the canvas. Need more? Ship a stage as a microservice in any language and drop it in as a building block."}),e.jsx("a",{href:"https://learn.uug.ai/docs/hub/workflows/",className:"button button-primary button-small",target:"_blank",rel:"noopener noreferrer",children:"Learn more"})]})]}),e.jsxs("div",{className:"workflow-board",children:[e.jsxs("div",{className:"workflow-board-top",children:[e.jsxs("div",{className:"workflow-board-title",children:[e.jsx("span",{className:"workflow-board-icon",children:e.jsx(At,{width:20,height:20})}),e.jsxs("div",{children:[e.jsx("h3",{children:"Visual workflow editor"}),e.jsx("p",{children:"Compose devices, AI models and your own stages into automated pipelines."})]})]}),e.jsxs("div",{className:"workflow-board-actions",children:[e.jsxs("span",{className:"workflow-board-stat",children:[R.length," ",R.length===1?"node":"nodes"," ·"," ",ie.length," ",ie.length===1?"edge":"edges"]}),e.jsxs("button",{type:"button",className:"workflow-board-reset",onClick:fr,"aria-label":"Reset workflow",children:[e.jsx(Vr,{width:15,height:15}),"Reset"]})]})]}),e.jsxs("div",{className:"workflow-layout",children:[e.jsxs("aside",{className:"workflow-palette","aria-label":"Workflow building blocks",children:[e.jsx("p",{className:"workflow-palette-label",children:"Building blocks · click to add, drag a port to connect"}),er.map(n=>{const a=n.icon;return e.jsxs("button",{type:"button",className:`workflow-block is-${n.accent}`,onClick:()=>ur(n.accent),"aria-label":`Add ${n.label} node`,children:[e.jsx("span",{className:"workflow-block-icon",children:e.jsx(a,{width:18,height:18})}),e.jsxs("span",{className:"workflow-block-text",children:[e.jsx("strong",{children:n.label}),e.jsx("span",{children:n.description})]}),e.jsx("span",{className:"workflow-block-add","aria-hidden":"true",children:e.jsx(Go,{width:16,height:16})})]},n.accent)})]}),e.jsxs("div",{className:"workflow-canvas",children:[R.length>0?e.jsxs("div",{ref:Z,className:`workflow-stage${I?" is-connecting":""}`,children:[e.jsxs("svg",{className:"workflow-edges",width:Xe.width,height:Xe.height,children:[ie.map(n=>{const a=pe.get(n.source),c=pe.get(n.target);if(!a||!c)return null;const l=te(K(a)),d=Ut(K(c)),h=Gt(l.x,l.y,d.x,d.y);return e.jsxs("g",{className:"workflow-edge",children:[e.jsx("path",{className:"workflow-edge-hit",d:h,onClick:()=>mr(n.id)}),e.jsx("path",{className:"workflow-edge-line",d:h})]},n.id)}),I?(()=>{const n=pe.get(I.source);if(!n)return null;const a=te(K(n));return e.jsx("path",{className:"workflow-edge-line is-ghost",d:Gt(a.x,a.y,I.x,I.y)})})():null]}),R.map(n=>{const a=K(n),c=zt[n.accent],l=c.icon,d=Ut(a),h=te(a);return e.jsxs(s.Fragment,{children:[e.jsxs("article",{"data-workflow-node":n.id,className:`workflow-node is-${n.accent}${z?.id===n.id?" is-dragging":""}`,style:{left:a.x,top:a.y,width:Ae},children:[e.jsxs("header",{className:"workflow-node-header",onPointerDown:gr(n.id),children:[e.jsx("span",{className:"workflow-node-grip","aria-hidden":"true",children:e.jsx(fo,{width:15,height:15})}),e.jsx("span",{className:"workflow-node-icon",children:e.jsx(l,{width:16,height:16})}),e.jsx("span",{className:"workflow-node-title",children:c.label}),e.jsx("button",{type:"button",className:"workflow-node-remove",onPointerDown:p=>p.stopPropagation(),onClick:()=>pr(n.id),"aria-label":`Remove ${c.label} node`,children:e.jsx(Mn,{width:14,height:14})})]}),e.jsx("div",{className:"workflow-node-body",children:e.jsx("select",{className:"workflow-node-value",value:n.value,onPointerDown:p=>p.stopPropagation(),onChange:p=>hr(n.id,p.target.value),"aria-label":`${c.label} value`,children:c.options.map(p=>e.jsx("option",{value:p,children:p},p))})})]}),e.jsx("span",{className:"workflow-port workflow-port-in",style:{left:d.x,top:d.y},"aria-hidden":"true"}),e.jsx("button",{type:"button",className:`workflow-port workflow-port-out is-${n.accent}`,style:{left:h.x,top:h.y},onPointerDown:vr(n.id),"aria-label":`Drag to connect from ${c.label}`})]},n.id)})]}):e.jsx("p",{className:"workflow-canvas-empty",children:"Click a building block to start your flow."}),e.jsxs("p",{className:"workflow-canvas-hint",children:[e.jsx(vn,{width:15,height:15}),"Drag nodes to arrange them, and drag from a node's right-hand port onto another node to wire an edge. Click an edge to remove it."]})]})]})]})]}),e.jsxs("section",{id:"features",className:"section-width section-gap features-section",children:[e.jsxs("div",{className:"split-heading split-heading-top features-heading",children:[e.jsx("div",{className:"features-heading-copy",children:e.jsx("h2",{children:"Enterprise grade features at scale"})}),e.jsxs("div",{className:"features-intro-card",children:[e.jsx("p",{className:"eyebrow",children:"Why it matters"}),e.jsx("p",{className:"features-intro",children:"Your data remains your data, whether you operate on premise, hybrid, or in the cloud. You stay in the driving seat while the platform scales with you."}),e.jsx("a",{href:"/contact/",className:"button button-primary button-small",children:"Request a demo"})]})]}),e.jsx("div",{className:"feature-grid",children:zn.map(n=>{const a=n.icon;return e.jsxs("article",{className:"feature-card",children:[e.jsx("div",{className:"feature-icon",children:e.jsx(a,{width:26,height:26})}),e.jsx("h3",{children:n.title}),e.jsx("p",{children:n.description}),e.jsxs("a",{href:n.learnMoreHref,className:"feature-link",target:"_blank",rel:"noopener noreferrer",children:["Learn more ",e.jsx(Yo,{width:16,height:16})]})]},n.title)})})]})]}),e.jsx(Nr,{})]})}function rs(){return e.jsx(ts,{})}const os=Object.freeze(Object.defineProperty({__proto__:null,Page:rs},Symbol.toStringTag,{value:"Module"})),ps={hasServerOnlyHook:{type:"computed",definedAtData:null,valueSerialized:{type:"js-serialized",value:!1}},isClientRuntimeLoaded:{type:"computed",definedAtData:null,valueSerialized:{type:"js-serialized",value:!0}},onBeforeRenderEnv:{type:"computed",definedAtData:null,valueSerialized:{type:"js-serialized",value:null}},dataEnv:{type:"computed",definedAtData:null,valueSerialized:{type:"js-serialized",value:null}},guardEnv:{type:"computed",definedAtData:null,valueSerialized:{type:"js-serialized",value:null}},onRenderClient:{type:"standard",definedAtData:{filePathToShowToUser:"vike-react/__internal/integration/onRenderClient",fileExportPathToShowToUser:[]},valueSerialized:{type:"pointer-import",value:Rr}},Page:{type:"standard",definedAtData:{filePathToShowToUser:"/pages/index/+Page.tsx",fileExportPathToShowToUser:[]},valueSerialized:{type:"plus-file",exportValues:os}},hydrationCanBeAborted:{type:"standard",definedAtData:{filePathToShowToUser:"vike-react/config",fileExportPathToShowToUser:["default","hydrationCanBeAborted"]},valueSerialized:{type:"js-serialized",value:!0}},Layout:{type:"cumulative",definedAtData:[{filePathToShowToUser:"/pages/+Layout.t
2sx",fileExportPathToShowToUser:[]}],valueSerialized:[{type:"plus-file",exportValues:Or}]},title:{type:"standard",definedAtData:{filePathToShowToUser:"/pages/index/+config.ts",fileExportPathToShowToUser:["default","title"]},valueSerialized:{type:"js-serialized",value:"Augment Vision - Home"}},lang:{type:"standard",definedAtData:{filePathToShowToUser:"/pages/+config.ts",fileExportPathToShowToUser:["default","lang"]},valueSerialized:{type:"js-serialized",value:"en"}},Loading:{type:"standard",definedAtData:{filePathToShowToUser:"vike-react/__internal/integration/Loading",fileExportPathToShowToUser:[]},valueSerialized:{type:"pointer-import",value:Mr}}};export{ps as configValuesSerialized};

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