PageSourceSearch

https://aeroza.vercel.app/_next/static/chunks/app/page-7702240ac2d…?dpl=dpl_CXsDeLe9PPkf4iaLhECuWBnfwtij

js aeroza.vercel.app collected 2026-10-03 06:11:31 UTC 14,651 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[974],{407:(e,t,r)=>{"use strict";r.d(t,{default:()=>s.a});var n=r(4252),s=r.n(n)},1053:(e,t,r)=>{"use strict";r.d(t,{HeroVerificationCard:()=>i});var n=r(3365),s=r(8197),a=r.n(s),l=r(1521),o=r(754);function i(){let[e,t]=(0,l.useState)(null),[r,s]=(0,l.useState)(null),[i,f]=(0,l.useState)(!0);(0,l.useEffect)(()=>{let e=!1,r=async()=>{try{let r=await (0,o.V4)({windowHours:24});if(e)return;t(r.items),s(null)}catch(t){if(e)return;s(t instanceof Error?t.message:"Failed to load calibration")}finally{e||f(!1)}};r();let n=setInterval(r,6e4);return()=>{e=!0,clearInterval(n)}},[]);let p=(0,l.useMemo)(()=>(function(e){if(0===e.length)return null;let t=e.find(e=>null!==e.brierMean&&30===e.forecastHorizonMinutes&&"persistence"!==e.algorithm);if(t&&null!==t.brierMean)return{row:t,kind:"brier",value:t.brierMean};let r=[...e].filter(e=>null!==e.brierMean).sort((e,t)=>e.forecastHorizonMinutes-t.forecastHorizonMinutes)[0];if(r&&null!==r.brierMean)return{row:r,kind:"brier",value:r.brierMean};let n=e.find(e=>"persistence"===e.algorithm&&30===e.forecastHorizonMinutes);if(n)return{row:n,kind:"mae",value:n.maeMean};let s=e.find(e=>30===e.forecastHorizonMinutes);if(s)return{row:s,kind:"mae",value:s.maeMean};let a=[...e].sort((e,t)=>e.forecastHorizonMinutes-t.forecastHorizonMinutes)[0];return a?{row:a,kind:"mae",value:a.maeMean}:null})(null!=e?e:[]),[e]),b=(0,l.useMemo)(()=>(null!=e?e:[]).reduce((e,t)=>e+t.sampleCount,0),[e]),h=(0,l.useMemo)(()=>(null!=e?e:[]).reduce((e,t)=>e+t.verificationCount,0),[e]);return(0,n.jsxs)("article",{className:"flex h-full flex-col gap-4 roun
1ded-2xl border border-border/70 bg-surface/50 p-5 shadow-[0_1px_0_0_rgba(255,255,255,0.04)_inset] backdrop-blur",children:[(0,n.jsx)("header",{className:"flex items-start justify-between gap-3",children:(0,n.jsxs)("div",{className:"min-w-0",children:[(0,n.jsx)("p",{className:"font-mono text-[10px] uppercase tracking-[0.2em] text-accent",children:"The moat \xb7 \xa73.3"}),(0,n.jsx)("h2",{className:"mt-1 font-display text-xl font-semibold leading-tight text-text",children:"Were we right?"}),(0,n.jsx)("p",{className:"mt-1.5 text-xs leading-relaxed text-muted",children:"Every forecast scored against reality, in public. Nobody else in the dev-API weather space publishes this."})]})}),r?(0,n.jsx)(x,{message:r}):i&&null===e?(0,n.jsx)(u,{}):null!==e&&0===e.length?(0,n.jsx)(m,{}):(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(c,{headline:p,totalSamples:b,totalVerifications:h}),(0,n.jsx)(d,{items:null!=e?e:[]})]}),(0,n.jsx)(a(),{href:"/calibration",className:"mt-auto inline-flex items-center gap-1 self-start rounded-md border border-border/70 px-3 py-1.5 text-xs text-muted hover:border-accent/60 hover:text-accent",children:"See the full matrix →"})]})}function c(e){let{headline:t,totalSamples:r,totalVerifications:s}=e;if(!t)return null;let{row:a,kind:l,value:o}=t,i="brier"===l?o.toFixed(3):o.toFixed(2),c="brier"===l?"Brier ∈ [0, 1] \xb7 ".concat(f(a.algorithm)).concat(a.ensembleSize?" (M=".concat(a.ensembleSize,")"):""," \xb7 ").concat(a.forecastHorizonMinutes,"-min horizon \xb7 last ").concat(24,"h"):"".concat(f(a.algorithm)," \xb7 ").concat(a.forecastHorizonMinutes,"-min horizon \xb7 last ").concat(24,"h");return(0,n.jsxs)("div",{className:"rounded-xl border border-border/60 bg-bg/40 p-4",children:[(0,n.jsxs)("div",{className:"flex items-baseline gap-2",children:[(0,n.jsx)("span",{className:"font-display text-3xl font-semibold tabular-nums text-text",children:i}),(0,n.jsx)("span",{className:"font-mono text-[11px] uppercase tracking-wide text-muted",children:"brier"===l?"Brier score":"dBZ MAE"}),"brier"===l?(0,n.jsx)("span",{className:"ml-1 rounded-sm border border-accent/40 bg-accent/10 px-1.5 py-px font-mono text-[9px] uppercase tracking-wider text-accent",title:"Ensemble probabilistic skill score — the proper complement to deterministic MAE",children:"ensemble"}):null]}),(0,n.jsx)("p",{className:"mt-1 text-[11px] text-muted",children:c}),(0,n.jsxs)("div",{className:"mt-3 flex flex-wrap gap-x-4 gap-y-1 font-mono text-[10px] tabular-nums text-muted",children:[(0,n.jsxs)("span",{children:[(0,n.jsx)("span",{className:"text-text",children:p(s)})," ","forecasts scored"]}),(0,n.jsxs)("span",{children:[(0,n.jsx)("span",{className:"text-text",children:p(r)})," cells contributed"]})]})]})}function d(e){let{items:t}=e,r=(0,l.useMemo)(()=>[...t].sort((e,t)=>e.algorithm!==t.algorithm?"persistence"===e.algorithm?-1:"persistence"===t.algorithm?1:e.algorithm.localeCompare(t.algorithm):e.forecastHorizonMinutes-t.forecastHorizonMinutes).slice(0,6),[t]);return 0===r.length?null:(0,n.jsxs)("div",{className:"flex flex-col gap-1 text-[11px]",children:[(0,n.jsxs)("div",{className:"flex items-center justify-between font-mono text-[9px] uppercase tracking-wider text-muted/80",children:[(0,n.jsx)("span",{children:"Algo \xb7 horizon"}),(0,n.jsx)("span",{children:"MAE"})]}),r.map(e=>(0,n.jsxs)("div",{className:"flex items-center justify-between rounded-md border border-border/40 bg-bg/30 px-2.5 py-1.5",children:[(0,n.jsxs)("span",{className:"truncate font-mono text-text",children:[f(e.algorithm)," ",(0,n.jsxs)("span",{className:"text-muted",children:["\xb7 ",e.forecastHorizonMinutes,"m"]})]}),(0,n.jsxs)("span",{className:"font-mono tabular-nums text-text",children:[e.maeMean.toFixed(2)," ",(0,n.jsx)("span",{className:"text-muted",children:"dBZ"})]})]},"".concat(e.algorithm,":").concat(e.forecastHorizonMinutes)))]})}function u(){return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"rounded-xl border border-border/60 bg-bg/40 p-4",children:[(0,n.jsxs)("div",{className:"flex items-baseline gap-2",children:[(0,n.jsx)("span",{className:"block h-7 w-20 animate-pulse rounded bg-muted/20"}),(0,n.jsx)("span",{className:"font-mono text-[11px] uppercase tracking-wide text-muted/60",children:"dBZ MAE"})]}),(0,n.jsx)("span",{className:"mt-2 block h-3 w-48 animate-pulse rounded bg-muted/15"})]}),(0,n.jsx)("div",{className:"flex flex-col gap-1.5",children:[10,30,60].map(e=>(0,n.jsxs)("div",{className:"flex h-7 items-center justify-between rounded-md border border-border/40 bg-bg/30 px-2.5",children:[(0,n.jsx)("span",{className:"block h-2.5 w-24 animate-pulse rounded bg-muted/15"}),(0,n.jsx)("span",{className:"block h-2.5 w-12 animate-pulse rounded bg-muted/15"})]},e))})]})}function m(){return(0,n.jsxs)("div",{className:"rounded-xl border border-dashed border-border/60 bg-bg/30 p-4 text-xs leading-relaxed text-muted",children:[(0,n.jsx)("p",{className:"text-text",children:"No verifications scored yet."}),(0,n.jsxs)("p",{className:"mt-1.5",children:["Run ",(0,n.jsx)("code",{className:"font-mono",children:"aeroza-verify-nowcasts"})," alongside the nowcaster — the moat fills in within a few minutes of forecasts landing alongside real observations."]})]})}function x(e){let{message:t}=e;return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"relative rounded-xl border border-border/60 bg-bg/40 p-4",children:[(0,n.jsx)("span",{className:"absolute right-3 top-3 rounded-md border border-warning/40 bg-warning/10 px-1.5 py-0.5 font-mono text-[9px] uppercase tracking-wider text-warning",children:"Preview"}),(0,n.jsxs)("div",{className:"flex items-baseline gap-2",children:[(0,n.jsx)("span",{className:"font-display text-3xl font-semibold tabular-nums text-text/60",children:"2.34"}),(0,n.jsx)("span",{className:"font-mono text-[11px] uppercase tracking-wide text-muted/70",children:"dBZ MAE"})]}),(0,n.jsx)("p",{className:"mt-1 text-[11px] text-muted/70",children:"Persistence \xb7 30-min horizon \xb7 last 24h (illustrative)"})]}),(0,n.jsxs)("div",{role:"status",className:"rounded-md border border-warning/30 bg-warning/5 px-3 py-2 text-[11px] text-warning",children:["Live numbers unavailable — ",t.toLowerCase(),"."]})]})}function f(e){let t=e[0];return t?t.toUpperCase()+e.slice(1):e}function p(e){return e>=1e6?"".concat((e/1e6).toFixed(1),"M"):e>=1e3?"".concat((e/1e3).toFixed(1),"k"):String(e)}},1334:(e,t,r)=>{"use strict";r.d(t,{HeroLiveMap:()=>u});var n=r(3365),s=r(407),a=r(8197),l=r.n(a),o=r(1521),i=r(754);let c=(0,s.default)(()=>Promise.all([r.e(834),r.e(559),r.e(166),r.e(185)]).then(r.bind(r,3166)).then(e=>e.AlertsMap),{loadableGenerated:{webpack:()=>[3166]},ssr:!1,loading:()=>(0,n.jsx)("div",{className:"flex h-full w-full items-center justify-center bg-bg/60 text-xs text-muted",children:"Booting map…"})}),d=[-122,26,-68,49];function u(){var e,t;let[r,s]=(0,o.useState)(null),[a,u]=(0,o.useState)(null),[f,p]=(0,o.useState)(null),[b,h]=(0,o.useState)(()=>new Date);(0,o.useEffect)(()=>{let e=setInterval(()=>h(new Date),3e4);return()=>clearInterval(e)},[]),(0,o.useEffect)(()=>{let e=!1,t=async()=>{let t=await (0,i.hg)();e||null===t||p(e=>(0,i.X1)(e,t))};t();let r=setInterval(t,3e4);return()=>{e=!0,clearInterval(r)}},[]),(0,o.useEffect)(()=>{let e=!1,t=async()=>{try{let t=await (0,i.jH)({limit:1});if(e)return;let r=t.items[0];r&&u(new Date(r.validAt))}catch(e){}};t();let r=setInterval(t,3e4);return()=>{e=!0,clearInterval(r)}},[]);let g=(0,o.useCallback)(e=>{s(e)},[]),j=function(e,t){let r=t.getTime(),n=0;for(let t of e){var s,a;let e=t.properties,l=null!=(s=e.onset)?s:e.effective,o=null!=(a=e.ends)?a:e.expires,i=l?Date.parse(l):-1/0,c=o?Date.parse(o):1/0;r>=i&&r<=c&&(n+=1)}return n}(null!=(e=null==r?void 0:r.features)?e:[],b),v=function(e,t){if(null===e)return"—";let r=Math.max(0,Math.floor((t.getTime()-e.getTime())/1e3));if(r<5)return"just now";if(r<60)return"".concat(r,"s ago");let n=Math.floor(r/60);if(n<60)return"".concat(n,"m ago");let s=Math.floor(n/60);return"".concat(s,"h ago")}(a,b);return(0,n.jsxs)("div",{className:"group relative h-[480px] w-full overflow-hidden rounded-2xl border border-border/70 bg-surface/40 shadow-[0_1px_0_0_rgba(255,255,255,0.04)_inset]",children:[(0,n.jsx)(c,{initialBounds:d,showRadar:!0,radarFileKe
1y:null!=(t=null==f?void 0:f.fileKey)?t:null,hideLegend:!0,onLoaded:g}),(0,n.jsxs)("div",{className:"pointer-events-none absolute inset-x-3 top-3 z-10 flex items-center justify-between gap-3",children:[(0,n.jsx)(m,{}),(0,n.jsx)(x,{freshness:v,activeCount:j})]}),(0,n.jsx)(l(),{href:"/map",className:"pointer-events-auto absolute bottom-3 right-3 z-10 inline-flex items-center gap-1 rounded-md border border-accent/60 bg-bg/85 px-3 py-1.5 font-mono text-[11px] uppercase tracking-wide text-accent shadow-md backdrop-blur transition hover:bg-accent/10",children:"Open full map →"}),(0,n.jsx)(l(),{href:"/map","aria-label":"Open the live map",className:"absolute inset-0 z-0"})]})}function m(){return(0,n.jsxs)("span",{className:"inline-flex items-center gap-1.5 rounded-full border border-success/50 bg-bg/85 px-2.5 py-1 font-mono text-[10px] uppercase tracking-[0.18em] text-success shadow-md backdrop-blur",children:[(0,n.jsx)("span",{className:"pulse-dot inline-block h-1.5 w-1.5 rounded-full bg-success"}),"Live \xb7 CONUS"]})}function x(e){let{freshness:t,activeCount:r}=e;return(0,n.jsxs)("div",{className:"flex items-center gap-1.5 font-mono text-[10px]",children:[(0,n.jsxs)("span",{className:"rounded-md border border-border/70 bg-bg/85 px-2 py-1 text-muted shadow-md backdrop-blur",children:["Last grid ",(0,n.jsx)("span",{className:"text-text",children:t})]}),(0,n.jsxs)("span",{className:"rounded-md border border-border/70 bg-bg/85 px-2 py-1 text-muted shadow-md backdrop-blur",children:[(0,n.jsx)("span",{className:"text-text",children:r})," active"]})]})}},1372:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return i}});let n=r(3365),s=r(1521),a=r(7547);function l(e){return{default:e&&"default"in e?e.default:e}}r(2870);let o={loader:()=>Promise.resolve(l(()=>null)),loading:null,ssr:!0},i=function(e){let t={...o,...e},r=(0,s.lazy)(()=>t.loader().then(l)),i=t.loading;function c(e){let l=i?(0,n.jsx)(i,{isLoading:!0,pastDelay:!0,error:null}):null,o=!t.ssr||!!t.loading,c=o?s.Suspense:s.Fragment,d=t.ssr?(0,n.jsxs)(n.Fragment,{children:[null,(0,n.jsx)(r,{...e})]}):(0,n.jsx)(a.BailoutToCSR,{reason:"next/dynamic",children:(0,n.jsx)(r,{...e})});return(0,n.jsx)(c,{...o?{fallback:l}:{},children:d})}return c.displayName="LoadableComponent",c}},1976:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),!function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{bindSnapshot:function(){return l},createAsyncLocalStorage:function(){return a},createSnapshot:function(){return o}});let r=Object.defineProperty(Error("Invariant: AsyncLocalStorage accessed in runtime where it is not available"),"__NEXT_ERROR_CODE",{value:"E504",enumerable:!1,configurable:!0});class n{disable(){throw r}getStore(){}run(){throw r}exit(){throw r}enterWith(){throw r}static bind(e){return e}}let s="undefined"!=typeof globalThis&&globalThis.AsyncLocalStorage;function a(){return s?new s:new n}function l(e){return s?s.bind(e):n.bind(e)}function o(){return s?s.snapshot():function(e,...t){return e(...t)}}},2870:(e,t,r)=>{"use strict";function n(e){let{moduleIds:t}=e;return null}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"PreloadChunks",{enumerable:!0,get:function(){return n}}),r(3365),r(8196),r(5309),r(6308)},4252:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"default",{enumerable:!0,get:function(){return s}});let n=r(6162)._(r(1372));function s(e,t){var r;let s={};"function"==typeof e&&(s.loader=e);let a={...s,...t};return(0,n.default)({...a,modules:null==(r=a.loadableGenerated)?void 0:r.modules})}("function"==typeof t.default||"object"==typeof t.default&&null!==t.default)&&void 0===t.default.__esModule&&(Object.defineProperty(t.default,"__esModule",{value:!0}),Object.assign(t.default,t),e.exports=t.default)},5309:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"workAsyncStorage",{enumerable:!0,get:function(){return n.workAsyncStorageInstance}});let n=r(9238)},7547:(e,t,r)=>{"use strict";function n(e){let{reason:t,children:r}=e;return r}
1Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"BailoutToCSR",{enumerable:!0,get:function(){return n}}),r(879)},7901:(e,t,r)=>{Promise.resolve().then(r.t.bind(r,8197,23)),Promise.resolve().then(r.bind(r,1334)),Promise.resolve().then(r.bind(r,1053))},9238:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"workAsyncStorageInstance",{enumerable:!0,get:function(){return n}});let n=(0,r(1976).createAsyncLocalStorage)()}},e=>{e.O(0,[578,754,347,131,358],()=>e(e.s=7901)),_N_E=e.O()}]);

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.