import{r as c,$ as R,j as s}from"./index-C4S3Am8g.js";import{b as E,a as f,c as $,d as N,_ as q,e as I,f as P,L as C,g as b,M as T,h as B,S as D,u as F,O}from"./components-Bx939k-8.js";import{L,t as A}from"./styles.css-C_RISUhl.js";import{N as U}from"./index-CXmzysBW.js";/* empty css *//* empty css */import{c as w}from"./index-DDEMacps.js";import"./index-fDxQpF_v.js";import"./index-DGzkTfaF.js";import"./index-C-my7Ify.js";import{i as M,l as z}from"./env-FxumXdYe.js";import{ErrorBoundary as st}from"./_-BUQZssrX.js";import"./asset-utils.esm-CoQyK7Io.js";import"./HubSpot-CLK1PMx5.js";import"./extends-CF3RwP-h.js";/** * @remix-run/react v2.9.1 * * Copyright (c) Remix Software Inc. * * This source code is licensed under the MIT license found in the * LICENSE.md file in the root directory of this source tree. * * @license MIT */let _="positions";function V({getKey:e,...t}){let{isSpaMode:n}=E(),r=f(),i=$();N({getKey:e,storageKey:_});let o=c.useMemo(()=>{if(!e)return null;let l=e(r,i);return l!==r.key?l:null},[]);if(n)return null;let a=((l,d)=>{if(!window.history.state||!window.history.state.key){let u=Math.random().toString(32).slice(2);window.history.replaceState({key:u},"")}try{let p=JSON.parse(sessionStorage.getItem(l)||"{}")[d||window.history.state.key];typeof p=="number"&&window.scrollTo(0,p)}catch(u){console.error(u),sessionStorage.removeItem(l)}}).toString();return c.createElement("script",q({},t,{suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:`(${a})(${JSON.stringify(_)}, ${JSON.stringify(o)})`}}))}function W(){return!M()&&Object.prototype.toString.call(typeof process<"u"?process:0)==="[object process]"}const Y=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,G="/home/runner/work/sentry-javascript/sentry-javascript/packages/remix/src/client/performance.tsx";function H(e,t={wrapWithErrorBoundary:!0,errorBoundaryOptions:{}}){return r=>(Y&&!W()&&z.warn("Remix SDK was unable to wrap your root because of one or more missing parameters."),c.createElement(e,{...r,__self:this,__source:{fileName:G,lineNumber:181}}))}var J="@vercel/speed-insights",Q="1.0.14",K=()=>{window.si||(window.si=function(...t){(window.siq=window.siq||[]).push(t)})};function X(){return typeof window<"u"}function Z(){try{const e="production"}catch{}return"production"}function v(){return Z()==="development"}function ee(e,t){if(!e||!t)return e;let n=e;try{const r=Object.entries(t);for(const[i,o]of r)if(!Array.isArray(o)){const a=g(o);a.test(n)&&(n=n.replace(a,`/[${i}]`))}for(const[i,o]of r)if(Array.isArray(o)){const a=g(o.join("/"));a.test(n)&&(n=n.replace(a,`/[...${i}]`))}return n}catch{return e}}function g(e){return new RegExp(`/${te(e)}(?=[/?#]|$)`)}function te(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}var x="https://va.vercel-scripts.com/v1/speed-insights",ne=`${x}/script.js`,re=`${x}/script.debug.js`,se="/_vercel/speed-insights/script.js";function oe(e={}){var t;if(!X()||e.route===null)return null;K();const r=!!e.dsn?ne:se,i=e.scriptSrc||(v()?re:r);if(document.head.querySelector(`script[src*="${i}"]`))return null;e.beforeSend&&((t=window.si)==null||t.call(window,"beforeSend",e.beforeSend));const o=document.createElement("script");return o.src=i,o.defer=!0,o.dataset.sdkn=J+(e.framework?`/${e.framework}`:""),o.dataset.sdkv=Q,e.sampleRate&&(o.dataset.sampleRate=e.sampleRate.toString()),e.route&&(o.dataset.route=e.route),e.endpoint&&(o.dataset.endpoint=e.endpoint),e.dsn&&(o.dataset.dsn=e.dsn),v()&&e.debug===!1&&(o.dataset.debug="false"),o.onerror=()=>{console.log(`[Vercel Speed Insights] Failed to load script from ${i}. Please check if any content blockers are enabled and try again.`)},document.head.appendChild(o),{setRoute:a=>{o.dataset.route=a??void 0}}}function ie(e){const t=c.useRef(null);return c.useEffect(()=>{if(t.current)e.route&&t.current(e.route);else{const n=oe({framework:e.framework||"react",...e});n&&(t.current=n.setRoute)}},[e.route]),null}var ae=()=>{const e=I(),t=f();return ee(t.pathname,e)};function ce(e){const t=ae();return R.createElement(ie,{...t&&{route:t},...e,framework:"remix"})}var le="@vercel/analytics",de="1.3.2",ue=()=>{window.va||(window.va=function(...t){(window.vaq=window.vaq||[]).push(t)})};function j(){return typeof window<"u"}function S(){try{const e="production"}catch{}return"production"}function fe(e="auto"){if(e==="auto"){window.vam=S();return}window.vam=e}function he(){return(j()?window.vam:S())||"production"}function h(){return he()==="development"}var me="https://va.vercel-scripts.com/v1/script.debug.js",pe="/_vercel/insights/script.js";function we(e={debug:!0}){var t;if(!j())return;fe(e.mode),ue(),e.beforeSend&&((t=window.va)==null||t.call(window,"beforeSend",e.beforeSend));const n=e.scriptSrc||(h()?me:pe);if(document.head.querySelector(`script[src*="${n}"]`))return;const r=document.createElement("script");r.src=n,r.defer=!0,r.dataset.sdkn=le+(e.framework?`/${e.framework}`:""),r.dataset.sdkv=de,e.disableAutoTrack&&(r.dataset.disableAutoTrack="1"),e.endpoint&&(r.dataset.endpoint=e.endpoint),e.dsn&&(r.dataset.dsn=e.dsn),r.onerror=()=>{const i=h()?"Please check if any ad blockers are enabled and try again.":"Be sure to enable Web Analytics for your project and deploy again. See https://vercel.com/docs/analytics/quickstart for more information.";console.log(`[Vercel Web Analytics] Failed to load script from ${n}. ${i}`)},h()&&e.debug===!1&&(r.dataset.debug="false"),document.head.appendChild(r)}function _e({route:e,path:t}){var n;(n=window.va)==null||n.call(window,"pageview",{route:e,path:t})}function ve(e){return c.useEffect(()=>{we({framework:e.framework||"react",...e.route!==void 0&&{disableAutoTrack:!0},...e})},[]),c.useEffect(()=>{e.route&&e.path&&_e({route:e.route,path:e.path})},[e.route,e.path]),null}const m=[{title:"Products",children:[{title:"Connect",href:"/connect"},{title:"Optimize",href:"/optimize"},{title:"Flex",href:"/flex"}]},{title:"Developers",children:[{title:"API reference",href:"https://developers.enode.com/api/reference"},{title:"Getting started",href:"https://developers.enode.com/docs/getting-started"},{title:"Features guides",href:"https://developers.enode.com/docs/integration-guide/introduction"},{title:"Reference articles",href:"https://developers.enode.com/api/reference"}]},{title:"Company",children:[{title:"About us",href:"/about"},{title:"Blog",href:"/blog"},{title:"Careers",href:"/careers"},{title:"Contact us",href:"/contact"}]},{title:"Use cases",children:[]}];var ge="_1o2301b2 _1o2301b0 _1l3htfk3t _1l3htfk4w _1l3htfk62 _1l3htfk0 _1l3htfk6 _1o2301b1 _1l3htfk7n _1l3htfk80 _1l3htfk8z _1l3htfk9c _1l3htfkj2 _1l3htfkig",ye="_1o2301b4 _1o2301b3 _1l3htfki2 _1l3htfkhs",ke="_1o2301b6 _1o2301b5 _1l3htfki2 _1l3htfki1",be="_1o2301b8 _1l3htfk7 _1o2301b7 _1l3htfkfn _1l3htfkfu _1l3htfkj2",xe="_1o2301ba _1o2301b9 _1l3htfki2 _1l3htfkhr",je="_1o2301bb",Se="_1o2301bd _1o2301bc _1l3htfkf2 _1l3htfk6t",y="_1o2301bf _1o2301be _1l3htfk3q _1l3htfk4t _1l3htfk5z";function Re(){const e=P("root");return s.jsxs(s.Fragment,{children:[s.jsx(U,{}),s.jsxs("footer",{className:ge,children:[s.jsx("div",{className:ye,children:s.jsx(L,{})}),s.jsxs("div",{className:ke,children:[s.jsx("nav",{className:be,children:m==null?void 0:m.map(t=>{let n=t.children;return t.title==="Use cases"&&(n=e.navigation["use-cases"].devices.map(r=>({title:r.title,href:r.url}))),s.jsxs("section",{className:xe,children:[s.jsx("span",{className:Se,children:t.title}),s.jsx("ul",{children:n.map((r,i)=>s.jsx("li",{className:je,children:s.jsx(C,{className:"",to:r.href,children:r.title})},i))})]},`nav::${t.title}`)})}),s.jsxs("aside",{children:[s.jsx("p",{className:y,children:"Third party logos and brand names are used for information purposes only and do not necessarily indicate affiliation with Enode."}),s.jsx("p",{className:y,children:"This site uses tracking for statistical and diagnostic purposes. By using this site, you agree to this use."})]})]})]})]})}function Ee(){var n,r;return((r=(n=b().find(i=>{var o;return(o=i.handle)==null?void 0:o.theme}))==null?void 0:n.handle)==null?void 0:r.theme)||A.default}function k(e,t,n){c.useEffect(()=>{if(!document.querySelector(`script[src="proxy.php?url=https%3A%2F%2Fenode.com%2F%24%7Be%7D"]`)){const i=document.createElement("script");t&&(i.id=t),i.src=e,i.async=!0,i.defer=!0,i.onload=()=>{n&&n()},document.body.append(i)}},[e,t,n])}function $e(e,t){c.useEffect(()=>{const n=`inline-${t}`;if(document.querySelector(`script#${n}`)===null){const r=document.createElement("script");r.id=n,r.innerText=e,document.body.append(r)}},[e,t])}const Ne="4788850";function qe(){return k("https://js-eu1.hs-scripts.com/26533468.js","hs-script-loader",()=>{var e,t;((e=window._hsq)==null?void 0:e.filter(n=>n[0]==="setCookieUseFirstParty").length)===0&&((t=window._hsq)==null||t.push(["setCookieUseFirstParty",!0]))}),k("https://snap.licdn.com/li.lms-analytics/insight.min.js","linkedin"),$e('if (!window.lintrk){window.lintrk = function(a,b){window.lintrk.q.push([a,b])};window.lintrk.q=[]} _linkedin_partner_id = "4788850"; window._linkedin_data_partner_ids = window._linkedin_data_partner_ids || []; window._linkedin_data_partner_ids.push(_linkedin_partner_id);',"linkedin-inline"),s.jsx(s.Fragment,{children:s.jsx("noscript",{children:s.jsx("img",{height:"1",width:"1",style:{display:"none"},alt:"",src:`https://px.ads.linkedin.com/collect/?pid=${Ne}&fmt=gif`})})})}const Ie="/assets/ABCWhyteVariable-CzNSyvBS.woff2",Pe="/assets/soehne-buch-CWOF00wC.woff2",Ce="/assets/soehne-mono-buch-D419n97J.woff2";var Te="_1qo9bzv0",Be="_1qo9bzv2 _1qo9bzv1 _1l3htfk6q _1l3htfk3z _1l3htfk52 _1l3htfk62",De="_1idzy7s2";const Xe=()=>[{title:"Enode"},{description:"Enode allows energy apps to connect to EVs, solar panels, batteries and other smart energy hardware - all through a single easy-to-use API."}],Ze=()=>[{rel:"preconnect",href:"https://res.cloudinary.com"},{rel:"preload",href:Ie,as:"font",type:"font/woff2",crossOrigin:"anonymous"},{rel:"preload",href:Pe,as:"font",type:"font/woff2",crossOrigin:"anonymous"},{rel:"preload",href:Ce,as:"font",type:"font/woff2",crossOrigin:"anonymous"},{rel:"icon",href:"/static/favicon.ico",sizes:"any"},{rel:"icon",href:"/static/favicon.svg",type:"image/svg+xml"},{rel:"apple-touch-icon",href:"/static/180.png"}];function et(e){const t=Ee(),{pathname:n}=f(),r=b(),i=n.startsWith("/admin"),o=r.some(l=>{var d;return(d=l.handle)==null?void 0:d.flex}),a=!i&&!o;return s.jsxs("html",{lang:"en",className:a?w(t,Te):void 0,dir:"ltr",children:[s.jsxs("head",{children:[s.jsx("meta",{charSet:"utf-8"}),s.jsx("meta",{name:"viewport",content:"width=device-width"}),s.jsx("meta",{name:"trustpilot-one-time-domain-verification-id",content:"3f749ac0-c0b2-45b8-897b-fa7adf182b79"}),s.jsx(T,{}),s.jsx(B,{}),s.jsx("script",{src:"https://challenges.cloudflare.com/turnstile/v0/api.js?render=explicit",async:!0,defer:!0})]}),s.jsxs("body",{className:w(a&&Be,o&&De),children:[e.children,a?s.jsx(Re,{}):null,s.jsx(ve,{}),s.jsx(ce,{}),s.jsx(V,{}),s.jsx(D,{})]})]})}function Fe(){const{pathname:e}=f(),{env:t}=F();return c.useEffect(()=>{var n,r;(n=window._hsq)==null||n.push(["setPath",e]),(r=window._hsq)==null||r.push(["trackPageView"])},[e]),s.jsxs(s.Fragment,{children:[s.jsx(O,{}),t.NODE_ENV==="production"?s.jsx(qe,{}):null]})}const tt=H(Fe,{wrapWithErrorBoundary:!1});export{st as ErrorBoundary,et as Layout,tt as default,Ze as links,Xe as meta};