PageSourceSearch

https://firerisk.ai/_next/static/chunks/app/wildfires-today/page-9…?dpl=dpl_8crqhEzzhzqQSbXKGrYLRB9egevY

js firerisk.ai collected 2026-10-04 16:32:27 UTC 17,331 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7384],{74718:function(e,t,r){Promise.resolve().then(r.bind(r,11892)),Promise.resolve().then(r.bind(r,12127)),Promise.resolve().then(r.bind(r,92429)),Promise.resolve().then(r.bind(r,98131)),Promise.resolve().then(r.bind(r,6068)),Promise.resolve().then(r.bind(r,24993)),Promise.resolve().then(r.bind(r,29130)),Promise.resolve().then(r.bind(r,94423)),Promise.resolve().then(r.bind(r,57457)),Promise.resolve().then(r.bind(r,17639)),Promise.resolve().then(r.t.bind(r,231,23))},12127:function(e,t,r){"use strict";r.d(t,{AircraftTracker:function(){return l}});var a=r(57437),n=r(2265),s=r(19377),i=r(25312);function l(){let[e,t]=(0,n.useState)(null),[r,l]=(0,n.useState)(!1),[c,o]=(0,n.useState)(!0),[d,f]=(0,n.useState)(!1),m=(0,n.useCallback)(async()=>{o(!0),l(!1);try{let e=await fetch("/api/aircraft",{cache:"no-store"});if(!e.ok)throw Error();t(await e.json())}catch(e){l(!0)}finally{o(!1)}},[]);(0,n.useEffect)(()=>{m();let e=setInterval(m,6e4);return()=>clearInterval(e)},[m]);let x=(null==e?void 0:e.aircraft)||[],u=new Set(x.map(e=>e.nearFire)).size;return(0,a.jsxs)("div",{className:"bg-white rounded-2xl shadow-sm p-5 sm:p-6",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between gap-3 mb-1",children:[(0,a.jsx)("h2",{className:"text-lg font-black text-gray-900",children:"Active firefighting aircraft"}),!c&&!r&&(0,a.jsxs)("span",{className:"flex items-center gap-1.5 text-[11px] font-bold text-gray-400 flex-none",children:[(0,a.jsx)("span",{className:"w-2 h-2 rounded-full bg-green-500 animate-pulse"})," Live \xb7 ADS-B"]})]}),(0,a.jsx)("p",{className:"text-[13px] text-gray-500 leading-relaxed mb-4",children:"Air tankers, scoopers, helitankers, and lead planes flying over active U.S. wildfires right now — identified from live public ADS-B by callsign and aircraft type. Not an official dispatch source."}),!r&&(c&&!e?null:(0,a.jsxs)("div",{className:"flex gap-3 mb-5",children:[(0,a.jsxs)("div",{className:"flex-1 rounded-xl bg-ember/10 border border-ember/20 p-3 text-center",children:[(0,a.jsx)("p",{className:"text-2xl font-black text-ember tabular-nums leading-none",children:x.length}),(0,a.jsx)("p",{className:"text-[11px] text-ember/80 font-semibold mt-1",children:"aircraft airborne"})]}),(0,a.jsxs)("div",{className:"flex-1 rounded-xl bg-red-50 border border-red-100 p-3 text-center",children:[(0,a.jsx)("p",{className:"text-2xl font-black text-red-700 tabular-nums leading-none",children:u}),(0,a.jsxs)("p",{className:"text-[11px] text-red-600/80 font-semibold mt-1",children:["fire",1===u?"":"s"," with air ops"]})]})]})),c&&!e&&(0,a.jsxs)("div",{children:[(0,a.jsxs)("p",{className:"text-[13px] font-semibold text-gray-500 mb-3 flex items-center justify-center gap-2",children:[(0,a.jsx)("span",{className:"text-lg animate-bounce",children:"✈️"})," Scanning the skies for active air tankers…"]}),(0,a.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-3",children:[0,1,2,3].map(e=>(0,a.jsxs)("div",{className:"rounded-2xl border border-gray-100 bg-gradient-to-br from-gray-50 to-white p-4",children:[(0,a.jsxs)("div",{className:"flex items-start gap-3",children:[(0,a.jsx)("span",{className:"text-2xl flex-none animate-bounce",style:{animationDelay:"".concat(120*e,"ms")},children:"✈️"}),(0,a.jsxs)("div",{className:"flex-1 space-y-2 pt-1",children:[(0,a.jsx)("div",{className:"h-3.5 w-2/3 rounded bg-gray-200 animate-pulse"}),(0,a.jsx)("div",{className:"h-2.5 w-1/3 rounded bg-gray-100 animate-pulse"})]})]}),(0,a.jsx)("div",{className:"mt-3 h-16 rounded-xl bg-gray-100 animate-pulse"})]},e))})]}),r&&(0,a.jsx)(s.i,{source:"firefighting-aircraft (ADS-B)",category:"aircraft"}),!r&&e&&0===x.length&&(0,a.jsxs)("div",{className:"rounded-xl bg-gray-50 border border-gray-100 p-6 text-center",children:[(0,a.jsx)("p",{className:"text-3xl mb-1",children:"\uD83D\uDEE9️"}),(0,a.jsx)("p",{className:"text-sm font-black text-gray-700",children:"No firefighting aircraft airborne over major fires right now."}),(0,a.jsx)("p",{className:"text-[13px] text-gray-500 leading-relaxed mt-1 max-w-md mx-auto",children:"Aerial firefighting runs in daylight and stands down overnight, in high winds, or in heavy smoke. Check back during daylight hours of an active incident."})]}),!r&&x.length>0&&(0,a.jsx)("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-3",children:(d?x:x.slice(0,4)).map(e=>(0,a.jsx)(i.K,{p:e},e.hex))}),!r&&x.length>4&&(0,a.jsxs)("button",{onClick:()=>f(e=>!e),className:"mt-3 w-full flex items-center justify-center gap-1.5 rounded-xl border border-gray-200 bg-gray-50 hover:bg-gray-100 text-[13px] font-black text-gray-700 py-2.5 transition-colors",children:[d?"Show fewer":"See all ".concat(x.length," aircraft"),(0,a.jsx)("svg",{className:"w-3.5 h-3.5 transition-transform ".concat(d?"rotate-180":""),fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:3,children:(0,a.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"m6 9 6 6 6-6"})})]}),(0,a.jsx)("p",{className:"text-[11px] text-gray-400 leading-relaxed mt-4 pt-4 border-t border-gray-100",children:"Aircraft are identified as firefighting from public ADS-B callsigns and type co
1des and may occasionally be imperfect. Positions carry a short delay. Data: airplanes.live + NIFC. For awareness only — not an official aviation or dispatch source."})]})}},29130:function(e,t,r){"use strict";r.d(t,{NationalPulse:function(){return o}});var a=r(57437),n=r(76847),s=r(2265),i=r(90961);let l=e=>e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"");function c(e){let{value:t,label:r,sub:n,accent:i}=e,l=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1100,[r,a]=(0,s.useState)(0),n=(0,s.useRef)(0);return(0,s.useEffect)(()=>{let r=n.current;n.current=e;let s=0,i=0,l=n=>{i||(i=n);let c=Math.min(1,(n-i)/t);a(Math.round(r+(e-r)*(1-Math.pow(1-c,3)))),c<1&&(s=requestAnimationFrame(l))};return s=requestAnimationFrame(l),()=>cancelAnimationFrame(s)},[e,t]),r}(t);return(0,a.jsxs)("div",{className:"flex-1 min-w-[120px]",children:[(0,a.jsx)("div",{className:"text-3xl sm:text-4xl font-black tabular-nums",style:{color:i},children:l.toLocaleString()}),(0,a.jsx)("div",{className:"text-[12px] font-bold text-white/80 mt-0.5",children:r}),n&&(0,a.jsx)("div",{className:"text-[10px] text-white/40 uppercase tracking-wide",children:n})]})}function o(){var e,t;let{cta:r,shareUrl:o}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},[d,f]=(0,s.useState)(null);return((0,s.useEffect)(()=>{let e=!0,t=()=>fetch("/api/pulse",{cache:"no-store"}).then(e=>e.json()).then(t=>{e&&f(t)}).catch(()=>{});t();let r=setInterval(t,3e5);return()=>{e=!1,clearInterval(r)}},[]),d&&d.ok)?(0,a.jsxs)("div",{className:"relative overflow-hidden rounded-3xl border border-white/10 bg-gradient-to-br from-[#1a0f08] via-[#0f0a08] to-[#0a0a0c] p-5 sm:p-6",children:[(0,a.jsx)("div",{className:"absolute -top-16 -right-10 w-64 h-64 rounded-full bg-orange-600/20 blur-3xl pointer-events-none"}),(0,a.jsxs)("div",{className:"relative",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 mb-4",children:[(0,a.jsx)("span",{className:"w-2 h-2 rounded-full bg-green-500 animate-pulse flex-none"}),(0,a.jsx)("h2",{className:"text-[clamp(10px,3.2vw,14px)] sm:text-sm font-black uppercase tracking-tight sm:tracking-widest text-white/90 whitespace-nowrap",children:"Live national wildfire pulse"}),(0,a.jsx)("span",{className:"ml-auto flex-none whitespace-nowrap text-[10px] uppercase tracking-wide px-2 py-0.5 rounded-full bg-white/10 text-white/55 border border-white/10",children:"NIFC + NWS"})]}),(0,a.jsxs)("div",{className:"flex flex-wrap gap-5 justify-center sm:justify-start text-center sm:text-left",children:[(0,a.jsx)(c,{value:d.activeFires||0,label:"Active wildfires",sub:"uncontained \xb7 NIFC",accent:"#f97316"}),(0,a.jsx)(c,{value:d.totalAcres||0,label:"Acres across active fires",sub:"reported size \xb7 NIFC",accent:"#ef4444"}),(d.fireWeatherStates||0)>0&&(0,a.jsx)(c,{value:d.fireWeatherStates||0,label:"States under fire-weather alerts",sub:"Red Flag + Fire Weather Watch \xb7 NWS",accent:"#f59e0b"})]}),(()=>{let e=d.redFlagStateList,t=d.watchStateList;return Array.isArray(e)||Array.isArray(t)?(null==e?void 0:e.length)||(null==t?void 0:t.length)?(0,a.jsxs)("div",{className:"mt-3 space-y-2",children:[e&&e.length>0&&(0,a.jsxs)("div",{className:"flex flex-col sm:flex-row sm:flex-wrap sm:items-center gap-1.5 sm:gap-x-2",children:[(0,a.jsx)("span",{className:"text-[11px] font-black uppercase tracking-wide text-red-400 text-center sm:text-left",children:"\uD83D\uDEA9 Under Red Flag Warning:"}),(0,a.jsx)("div",{className:"flex flex-wrap gap-1.5 justify-center sm:justify-start",children:e.map(e=>(0,a.jsx)("a",{href:"/red-flag-warning/".concat(e.slug),className:"text-[12px] font-semibold text-white/85 bg-red-500/15 border border-red-500/40 rounded-full px-2.5 py-0.5 hover:border-red-400 hover:text-white transition",title:"".concat(e.name," — Red Flag Warning"),children:e.abbr},e.slug))})]}),t&&t.length>0&&(0,a.jsxs)("div",{className:"flex flex-col sm:flex-row sm:flex-wrap sm:items-center gap-1.5 sm:gap-x-2",children:[(0,a.jsx)("span",{className:"text-[11px] font-black uppercase tracking-wide text-amber-400/90 text-center sm:text-left",children:"⚠️ Fire Weather Watch only:"}),(0,a.jsx)("div",{className:"flex flex-wrap gap-1.5 justify-center sm:justify-start",children:t.map(e=>(0,a.jsx)("a",{href:"/red-flag-warning/".concat(e.slug),className:"text-[12px] font-semibold text-white/80 bg-amber-500/10 border border-amber-500/30 rounded-full px-2.5 py-0.5 hover:border-amber-400 hover:text-white transition",title:"".concat(e.name," — Fire Weather Watch"),children:e.abbr},e.slug))})]})]}):null:d.fireWeatherStateList&&0!==d.fireWeatherStateList.length?(0,a.jsxs)("div",{className:"mt-3 flex flex-col sm:flex-row sm:flex-wrap sm:items-center gap-1.5 sm:gap-x-1.5",children:[(0,a.jsx)("span",{className:"text-[11px] font-bold uppercase tracking-wide text-amber-400/80 text-center sm:text-left",children:"\uD83D\uDEA9 Fire-weather alerts:"}),(0,a.jsx)("div",{className:"flex flex-wrap gap-1.5 justify-center sm:justify-start",children:d.fireWeatherStateList.map(e=>(0,a.jsx)("a",{href:"/red-flag-warning/".concat(e.slug),className:"text-[12px] font-semibold text-white/80 bg-amber-500/10 border border-amber-500/25 rounded-full px-2.5 py-0.5 hover:border-ember/50 hover:text-white transition",title:"".concat(e.name," fire-weather alerts"),children:e.abbr},e.slug))})]}):null})(),d.largest&&d.largest.length>0&&(0,a.jsxs)("div",{className:"mt-5 border-t border-white/10 pt-4",children:[(0,a.jsx)("p",{className:"text-[11px] font-bold uppercase tracking-wide text-white/40 mb-2 text-center sm:text-left",children:"Largest active fires right now"}),(0,a.jsx)("div",{className:"flex flex-col sm:flex-row sm:flex-wrap gap-2",children:[...d.largest].sort((e,t)=>
1(t.acres||0)-(e.acres||0)).slice(0,6).map((e,t)=>{let r="block w-full sm:w-auto text-center sm:text-left text-[12px] text-white/80 bg-white/5 border border-white/10 rounded-full px-3 py-2 sm:py-1 hover:bg-white/10 hover:border-ember/40 transition",s=(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("span",{className:"font-semibold text-white",children:e.name}),e.county||e.state?" \xb7 ".concat(e.county?"".concat(e.county," County, "):"").concat(e.state||""):""," \xb7 ",e.acres.toLocaleString()," ac",null!=e.contained?" \xb7 ".concat(e.contained,"% contained"):""]});return(0,n.Xq)(e.acres)?(0,a.jsx)("a",{href:"/fire/".concat(l(e.name),"-fire"),className:r,children:s},t):(0,a.jsx)("span",{className:r,children:s},t)})})]}),r&&(0,a.jsxs)("a",{href:r.href,className:"flex w-full sm:inline-flex sm:w-auto items-center justify-center gap-2 mt-5 px-5 py-3 rounded-xl bg-ember hover:bg-ember-dark transition font-black text-white text-sm shadow-lg",children:[r.label," ",(0,a.jsx)("span",{"aria-hidden":!0,children:"→"})]}),(0,a.jsxs)("div",{className:"mt-4 text-[11px] text-white/40 flex flex-col sm:flex-row sm:items-center gap-1 sm:gap-3",children:[(0,a.jsxs)("span",{className:"inline-flex items-center gap-2 min-w-0",children:[(0,a.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-green-400 animate-pulse flex-none"}),(0,a.jsxs)("span",{children:["Live from official feeds \xb7 updated ",function(e){if(!e)return"";let t=Math.max(0,Math.floor((Date.now()-new Date(e).getTime())/1e3));return t<60?"just now":t<3600?"".concat(Math.floor(t/60),"m ago"):"".concat(Math.floor(t/3600),"h ago")}(d.checkedAt)," \xb7 auto-refreshes"]})]}),(0,a.jsx)("span",{className:"sm:ml-auto sm:text-right text-white/30",children:"Awareness only — official reported figures, not real-time ground truth."})]}),(0,a.jsx)(i.r,{shareUrl:o,shareText:"\uD83D\uDD25 Live national wildfire pulse — ".concat((null===(e=d.activeFires)||void 0===e?void 0:e.toLocaleString())||"?"," active fires, ").concat((null===(t=d.totalAcres)||void 0===t?void 0:t.toLocaleString())||"?"," acres burning across the U.S. right now via FireRisk.ai"),heading:"Help someone see it coming",blurb:"You're looking at the latest national picture — active fires, acres burning, and fire-weather from official feeds. Send it to anyone in a fire-prone area so they're watching too. A few seconds now could be someone's head start."})]})]}):null}},57457:function(e,t,r){"use strict";r.d(t,{ReportBackLink:function(){return i}});var a=r(57437),n=r(87138),s=r(2265);function i(e){let{tone:t="dark"}=e,[r,i]=(0,s.useState)(null);return((0,s.useEffect)(()=>{try{let e=sessionStorage.getItem("fr_report_url");if(e&&e.split("?")[0]!==window.location.pathname){i(e);return}let t=document.referrer;if(t){let e=new URL(t);e.origin===window.location.origin&&"/analyze"===e.pathname&&i(e.pathname+e.search)}}catch(e){}},[]),r)?(0,a.jsx)(n.default,{href:r,onClick:e=>{try{window.history.length<=1&&(e.preventDefault(),window.close(),setTimeout(()=>{window.location.href=r},150))}catch(e){}},className:"inline-flex items-center gap-1.5 rounded-full border px-3.5 py-1.5 font-black ".concat("dark"===t?"text-emerald-300 hover:text-emerald-200 border-emerald-400/30 bg-emerald-400/10":"text-forest hover:text-ember border-forest/20 bg-forest/5"," transition-colors"),children:"← Take Me Back To My Report"}):null}},20221:function(e,t,r){"use strict";function a(){if("undefined"==typeof navigator)return!1;if(navigator.userAgent.includes("FireRiskApp"))return!0;try{if(!0===navigator.standalone||"function"==typeof window.matchMedia&&window.matchMedia("(display-mode: standalone)").matches)return!0}catch(e){}try{try{localStorage.removeItem("fr_app_preview")}catch(e){}let e=new URLSearchParams(window.location.search).get("appPreview");if("1"===e){try{sessionStorage.setItem("fr_app_preview","1")}catch(e){}return!0}if("0"===e){try{sessionStorage.removeItem("fr_app_preview")}catch(e){}return!1}return"1"===sessionStorage.getItem("fr_app_preview")}catch(e){return!1}}r.d(t,{$3:function(){return c},JW:function(){return i},Vg:function(){return m},Wr:function(){return a},bF:function(){return f},kY:function(){return d},o:function(){return n},wD:function(){return o}});let n=["/fire-map","/wildfires-today","/fire-evacuation-map","/wildfire-smoke-map","/fires-near-me"],s="fr-device-places:v1";function i(){try{let e=localStorage.getItem(s),t=e?JSON.parse(e):null;if(!Array.isArray(t))return[];let r=t.filter(e=>e&&"string"==typeof e.label&&"string"==typeof e.email&&Number.isFinite(e.lat)&&Number.isFinite(e.lng));if(r.length<=10)return r;let a=[...r];for(let e=a.length-1;e>=0&&a.length>10;e--)"fire"!==a[e].kind||a[e].ruleId||a.splice(e,1);for(let e=a.length-1;e>=0&&a.length>10;e--)"fire"===a[e].kind&&a.splice(e,1);return a.slice(0,10)}catch(e){return[]}}let l=(e,t)=>
1!!e.uid&&!!t.uid&&e.uid===t.uid||1e-4>Math.abs(e.lat-t.lat)&&1e-4>Math.abs(e.lng-t.lng);function c(e){try{let t=i().filter(t=>!l(t,e));if(t.length>=10){let r=(e,t)=>e.findIndex(t),a=r(t,e=>"fire"===e.kind&&!e.ruleId);if(a<0&&"fire"!==e.kind&&(a=r(t,e=>"fire"!==e.kind)),a<0&&"fire"===e.kind&&(a=r(t,e=>"fire"===e.kind&&!e.ruleId)),a<0||"fire"===t[a].kind&&t[a].ruleId)return!1;t.splice(a,1)}return localStorage.setItem(s,JSON.stringify([...t,e])),!0}catch(e){return!1}}function o(e,t,r){try{let a=i().filter(a=>!l(a,{lat:e,lng:t,uid:r}));localStorage.setItem(s,JSON.stringify(a))}catch(e){}}function d(e,t){try{let r=i(),a=r.findIndex(t=>l(t,e));if(a<0)return;r[a]={...r[a],...t},localStorage.setItem(s,JSON.stringify(r))}catch(e){}}function f(){try{let e=i().filter(e=>"fire"===e.kind);e.length?localStorage.setItem(s,JSON.stringify(e)):localStorage.removeItem(s)}catch(e){}}function m(){try{let e=new URLSearchParams(window.location.search),t=(e.get("e")||"").trim().toLowerCase(),r=e.get("t")||"";if(t&&r)try{localStorage.setItem("fr_places_url","/my-places?e=".concat(encodeURIComponent(t),"&t=").concat(encodeURIComponent(r)))}catch(e){}else{let e=localStorage.getItem("fr_places_url");if(!e)return null;let a=new URL(e,"https://firerisk.ai");t=(a.searchParams.get("e")||"").trim().toLowerCase(),r=a.searchParams.get("t")||""}if(!t||!r)return null;return{search:"?e=".concat(encodeURIComponent(t),"&t=").concat(encodeURIComponent(r)),email:t}}catch(e){return null}}}},function(e){e.O(0,[231,20559,78887,68473,94423,5528,19639,50351,91412,92971,47023,1744],function(){return e(e.s=74718)}),_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.