PageSourceSearch

https://frontierclimate.com/_next/static/chunks/pages/progress-0ed44776debb3ab1.js

js frontierclimate.com collected 2026-09-24 08:41:31 UTC 17,748 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5603],{51592:function(e,t,a){(window.__NEXT_P=window.__NEXT_P||[]).push(["/progress",function(){return a(82636)}])},82636:function(e,t,a){"use strict";a.r(t),a.d(t,{default:function(){return R}});var r=a(85893),i=a(67294),n=a(12515),l=a(5405),s=a(15330),o=a(80951),c=a(26864),d=a(58461),u=a(44908),m=a.n(u),p=a(11163),h=a(6767),f=a.n(h),b=a(66775),g=a(55376),x=a(31284);function v(e){return e.flatMap(e=>e.deals.map(t=>{let{volume:a,expected_delivery_year:r,effective_date:i}=t;if(null===r)throw Error(`expected_delivery_year must be specified for all purchases | ${JSON.stringify(t)}`);return{volume:a,pathway:e?.pathway,supplier:e?.name,year:r,effective_date:new Date(i)}}))}function y(e){return e.flatMap(e=>e.deliveries.map(t=>{let{volume:a,year:r,effective_date:i}=t;if(null===r)throw Error(`year must be specified for all purchases | ${JSON.stringify(t)}`);return{volume:a,pathway:e?.pathway,supplier:e?.name,year:r,effective_date:new Date(i)}}))}var w=a(7739),j=a.n(w);function _(e){let{label:t,parts:a,leftPosition:n,topPosition:l,bottomPosition:s,innerRef:o}=e;if(!t||!a||!n||!l&&!s)return null;let c=[...a.filter(e=>e.amount>0)].reverse(),d=j()(c,"group");return(0,r.jsx)("div",{ref:o,className:"absolute min-w-[200px]",style:l?{top:l,left:n}:{bottom:s,left:n},children:(0,r.jsxs)("div",{className:"column gap-3 py-5 px-3 bg-white border border-beige rounded shadow-legacy-sm",children:[(0,r.jsx)("div",{className:"text-slate text-[10px]",children:t}),(0,r.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:8},children:Object.entries(d).map((e,t,a)=>{let[n,l]=e;return(0,r.jsxs)(i.Fragment,{children:[(0,r.jsxs)("div",{children:[(0,r.jsxs)("div",{className:"row-between text-[14px] items-baseline gap-2 mb-1",children:[(0,r.jsx)("div",{className:"text-black font-semibold text-sm/[22px]",children:n}),(0,r.jsx)("div",{children:x.N.formatNumber(l.reduce((e,t)=>e+t.amount,0))})]}),l.map(e=>(0,r.jsxs)("div",{className:"flex items-center text-[#797d90] gap-2 text-[12px]/[18px] not-italic tracking-[0.2px]",children:[(0,r.jsx)("div",{style:{width:8,height:8,borderRadius:2,background:e.color}}),(0,r.jsx)("span",{children:e.label}),(0,r.jsx)("div",{style:{marginLeft:"auto",paddingLeft:4},children:x.N.formatNumber(e.amount)})]},e.label))]},n),t!==a.length-1&&(0,r.jsx)("div",{className:"border-b"},t)]},n)})})]})})}var N=a(41664),D=a.n(N);let k=e=>{let{label:t,color:a}=e;return(0,r.jsxs)("div",{className:"flex gap-2 items-baseline",children:[(0,r.jsx)("div",{className:"inline-block shrink-0 w-2 h-2 rounded-sm",style:{backgroundColor:a}}),(0,r.jsx)("div",{className:"inline-block text-slate text-[12px]/[18px]",children:t})]})};function O(e){let{categories:t}=e;return(0,r.jsx)("div",{className:"flex flex-wrap mb-4 gap-x-6",children:t.sort((e,t)=>e.label.localeCompare(t.label)).map(e=>(0,r.jsx)(D(),{href:e.href,style:{fontWeight:400},target:"_blank",children:(0,r.jsx)(k,{label:e.label,color:e.color})},e.label))})}var C=a(96789),F=a(36156);function M(e,t){return t%2!=0?"":x.N.formatNumber(e,{notation:"compact"})}b.kL.register(b.uw,b.f$,b.vn,b.ZL,b.Dx,b.DK,b.u,b.De),b.ce.font.family="'Dazzed', 'Helvetica Neue', helvetica, arial, sans-serif",b.u.positioners.custom=function(e){return 0!==e.length&&{x:e.reduce((e,t)=>t.element.x>e?t.element.x:e,0),y:e.reduce((e,t)=>t.element.y<e?t.element.y:e,9999)}};let P=["#54280e","#9d4f23","#d29d7f","#023838","#366c6c","#82bebe","#4a1e4a","#805480","#cfa3cf","#243a0a","#556b3b","#a6bc8c","#38312a","#6d6152","#b9b2a9"],E=e=>e.year,T=e=>x.N.formatDate(e.effective_date,{month:"short",year:"numeric"});function B(e){let{points:t,mode:a="pathway",period:n="year",allowTooltipOverflow:l=!1,title:s,end:o}=e,c=(0,p.useRouter)(),u=(0,d.Z0)(),h="pathway"===a,b="month"===n,v=function(e,t,a){let r={};for(let i of e){let{volume:e}=i,n=a(i);r[n]||(r[n]={});let l=String(i[t]);r[n][l]=(r[n][l]||0)+e}return r}(t,a,b?T:E),y=i.useRef(new Map),[w,j]=i.useState(null),[N,D]=i.useState(!1),k=i.useRef(null),B=i.useMemo(()=>m()(Object.values(v).flatMap(e=>Object.keys(e))).sort((e,t)=>e.localeCompare(t)),[v]);B.forEach((e,t)=>{y.current.has(e)||y.current.set(e,P[t%P.length])});let S=i.useMemo(()=>b?function(e,t){let a=[],r=new Date(e);r.setDate(1);let i=new Date(t);for(i.setDate(1);r<=i;)a.push(x.N.formatDate(r,{month:"short",year:"numeric"})),r.setMonth(r.getMonth()+1);return a}(new Date(Math.min(...t.map(e=>e.effective_date.getTime()))),new Date):Object.keys(v).map(Number).sort(),[b,t,v]),z=i.useCallback(e=>{if(0===e.tooltip.opacity){j(null);return}let t=e.tooltip.title[0],a=e.tooltip.dataPoints.map(e=>{let t=e.dataset.categoryAtPosition?.[e.dataIndex];return{label:h?C.L6[t]:t,group:e.dataset.group,amount:e.raw,color:e.dataset.hoverBackgroun
1dColor[e.dataIndex]}}),{leftPosition:r,topPosition:i,bottomPosition:n}=(()=>{let t=e.tooltip.dataPoints.reduce((e,t)=>t.element.y<e?t.element.y:e,9999),a=e.tooltip.dataPoints[0].element.x,r=e.tooltip.dataPoints[0].element.width,i=k.current?.getBoundingClientRect().width||260,n=k.current?.getBoundingClientRect().height||200,s=a-r/2-i;return l?{leftPosition:s-12,topPosition:t}:s<e.chart.chartArea.left||t+n>e.chart.chartArea.bottom?{leftPosition:a-r/2,bottomPosition:e.chart.height-t+12}:{leftPosition:s-12,topPosition:t}})();w?.leftPosition!==r&&j(e=>({...e,label:t,parts:a,leftPosition:r,topPosition:i,bottomPosition:n}))},[j,w,l,h]),A=(()=>{let e=S.map(e=>B.map(t=>{let a=v[e],r=a?.[String(t)]||0;return{category:t,value:r?Math.floor(r):0}}).filter(e=>e.value>0).sort((e,t)=>t.value-e.value)),t=Math.max(...e.map(e=>e.length)),a=[];for(let r=0;r<t;r++){let t=[],i=[],n=[],l=[];S.forEach((a,s)=>{let o=e[s];if(r<o.length){let{category:e,value:a}=o[r],s=h?F.q[e].hex():y.current.get(e)||P[0];t.push(a),i.push(e),n.push(N?f()(s).desaturate(.95).lighten(.7).hex():s),l.push(s)}else t.push(null),i.push(null),n.push(null),l.push(null)}),a.push({label:`Position ${r}`,data:t,categoryAtPosition:i,backgroundColor:n,hoverBackgroundColor:l,borderRadius:4,maxBarThickness:100,minBarLength:2,group:"Total"})}return a})();return(0,r.jsxs)("div",{className:"p-6 bg-white border rounded",children:[(0,r.jsxs)("div",{className:"flex flex-wrap justify-between mb-2",children:[(0,r.jsx)("h5",{children:s}),o]}),(0,r.jsx)(O,{categories:h?B.map(e=>({color:F.q[e].hex(),label:C.L6[e],href:C.En[e]})):B.map(e=>{let t=u.find(t=>t.name===e);return{color:y.current.get(e)||P[0],label:e,href:t.detailsButtonLink??{pathname:"/portfolio",query:{...c.query,supplier_id:t?.supplier_id}}}})}),(0,r.jsxs)("div",{className:"relative h-[400px]",children:[(0,r.jsx)(_,{...w,innerRef:k}),(0,r.jsx)(g.kL,{type:"bar",options:{events:["mousemove","mouseout"],maintainAspectRatio:!1,transitions:{active:{animation:{duration:0}}},interaction:{mode:"x"},responsive:!0,scales:{x:{stacked:!0,title:{display:!0,text:n.toUpperCase()},grid:{display:!1,drawTicks:!1}},y:{stacked:!0,title:{display:!0,text:"METRIC TONS CO₂"},grid:{display:!0,borderDash:[2,4],color:"#E8E5E1",drawTicks:!1,drawBorder:!1},ticks:{padding:8,callback:M}}},plugins:{title:{display:!1},subtitle:{display:!1},legend:{display:!1},tooltip:{enabled:!1,external:z,position:"custom"}}},data:{labels:S.map(String),datasets:A},plugins:[{id:"dim-hover",afterEvent(e,t){let{event:a}=t;"mousemove"===a.type?a.chart.getActiveElements().length>0?D(!0):D(!1):"mouseout"===a.type&&D(!1)}}]})]})]})}var S=a(83673),z=a(8556),A=a(20278),L=a(68853);function R(){let e=(0,d.Z0)(),t=(0,C.B)(e),a=e.flatMap(e=>e.track.flatMap(t=>[new d.IK({supplier:e.supplier,deals:e.deals.filter(e=>e.track===t),deliveries:[],deliveryStatus:"awaiting_delivery"}),new d.IK({supplier:e.supplier,deals:e.deals.filter(e=>e.track===t).map(e=>({...e,volume:0,spend:0})),deliveries:e.deliveries.filter(e=>e.track===t),deliveryStatus:"delivered"})])).filter(e=>[...e.deals,...e.deliveries].filter(e=>e.volume).length),u=(0,A.L0)(t),m=i.useMemo(()=>a.filter((0,A.we)(u.selectedFilters)),[a,u.selectedFilters]),{dollarsContracted:p,tonsContracted:h,tonsDelivered:f}=(0,S.Vs)(m),b=[...v(m),...y(m)].reduce((e,t)=>{let{effective_date:a}=t;return a>e?a:e},new Date(0));return(0,r.jsx)(o.T,{href:"/progress",header:(0,r.jsx)(s.m,{headline:"Progress",description:(0,r.jsxs)(r.Fragment,{children:["Frontier’s goal is to catalyze a diverse portfolio of c
1arbon removal companies that can collectively reach climate-relevant scale in the coming decades. The majority of Frontier’s fund will be allocated via"," ",(0,r.jsx)(z.Z,{content:"Offtake agreements are legally binding contracts to buy future tons of carbon removal at an agreed price if and when delivered. Offtakes are for larger suppliers preparing to scale.",placement:"top",children:(0,r.jsx)("span",{className:"border-b border-dashed border-brown-300",children:"offtakes"})})," ","and a smaller portion via"," ",(0,r.jsx)(z.Z,{content:"Prepurchase agreements are small purchases paid upfront, before a supplier has delivered tons. Prepurchases support early-stage companies piloting new technologies.",placement:"top",children:(0,r.jsx)("span",{className:"border-b border-dashed border-brown-300",children:"prepurchases"})}),". This dashboard provides visibility into how Frontier commitments have been contracted to date and how those contracts are tracking on deliveries."]})}),socialImage:"/_next/static/media/social.50cbb9a2.png",children:(0,r.jsxs)(c.$,{name:"chart",background:"white",spacing:"none",children:[(0,r.jsx)("div",{className:"pt-12 pb-4",children:(0,r.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-4",children:[(0,r.jsx)(L.e,{...u}),m.length?(0,r.jsxs)("span",{className:"text-slate font-medium text-sm/6",children:["Last updated"," ",x.N.formatDate(b,{year:"numeric",month:"long"})]}):null]})}),(0,r.jsx)("div",{style:{padding:"16px 0",borderTop:"1px dashed var(--hex-brown-300)",marginBottom:"16px"},children:(0,r.jsx)("div",{className:"w-full md:max-w-[640px]",children:(0,r.jsxs)(S.No,{children:[(0,r.jsx)(S.O$,{...f,label:(0,r.jsxs)(r.Fragment,{children:[f.label,(0,r.jsx)("sup",{className:"text-secondary",children:"*"})]})}),(0,r.jsx)(S.O$,{...p}),(0,r.jsx)(S.O$,{...h,label:(0,r.jsxs)(r.Fragment,{children:[h.label,(0,r.jsx)("sup",{className:"text-secondary",children:"*"})]})})]})})}),(0,r.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4 mb-4",children:[(0,r.jsx)(B,{points:y(m),mode:"pathway",allowTooltipOverflow:!0,title:"Deliveries by pathway",end:(0,r.jsx)("div",{className:"self-center",children:(0,r.jsxs)(l.Z,{color:"sienna",link:{href:"/pathway"},children:["Explore",(0,r.jsx)(n.Rgz,{size:"16px"})]})})}),(0,r.jsx)(B,{points:y(m),mode:"supplier",title:"Deliveries by supplier"})]}),(0,r.jsx)(B,{points:v(m).filter(e=>e.year>=new Date().getFullYear()),mode:"pathway",title:"Contracted tons"}),(0,r.jsxs)("p",{className:"text-sm font-medium text-secondary mt-4",children:[(0,r.jsx)("sup",{className:"text-secondary",children:"*"}),(0,r.jsx)("span",{children:"Because the carbon removal industry is in its early stages, it's likely that some deliveries will be delayed or may not materialize at all. We’ll update this dashboard over time to reflect the latest—including when new contracts are signed and when suppliers deliver tons of carbon removal."})]})]})})}},96789:function(e,t,a){"use strict";a.d(t,{B:function(){return g},En:function(){return c},Ib:function(){return d},L6:function(){return o},RJ:function(){return p},mN:function(){return b},rF:function(){return f}});var r=a(67294),i=a(44908),n=a.n(i),l=a(7739),s=a.n(l);let o={biomass_carbon_removal_and_storage:"Biomass carbon removal & storage",direct_air_capture:"Direct air capture",enhanced_weathering:"Field weathering",marine_carbon_removal:"Marine carbon removal",mineralization:"Mineralization"},c={biomass_carbon_removal_and_storage:"/pathway/biomass-carbon-removal-and-storage",direct_air_capture:"/pathway/direct-air-capture",enhanced_weathering:"/pathway/enhanced-weathering",marine_carbon_removal:"/pathway/marine-carbon-removal",mineralization:"/pathway/mineralization"},d={biomass_carbon_removal_and_storage:"Biomass carbon removal and storage processes permanently store CO₂ from waste biomass, which naturally capture CO₂ from the atmosphere via photosynthesis. Examples include pyrolysis, gasification, and biomass burial.",direct_air_capture:"Direct air capture is the process of separating CO₂ out of ambient air via cycling a sorbent or solvent repeatedly through capture and release. The resulting CO₂ stream can then be paired with any type of permanent storage.",enhanced_weathering:"Field weathering speeds up the natural weathering of alkaline materials with CO₂ and rainwater. The resulting reaction leads to durable storage of CO₂ as bicarbonate.",marine_carbon_removal:"Marine carbon removal includes a range of approaches that involve the ocean to remove CO₂ from the atmosphere. This\xa0 includes processes that interact with the inorganic ocean bicarbonate buffer system to either extract CO₂ directly (Direct Ocean Removal) or enhance its storage c
1apacity by extracting acid or adding alkalinity (Ocean Alkalinity Enhancement), as well as approaches to speed up the weathering\xa0 of limestone to catalyze the conversion of CO₂ to bicarbonate for storage in the ocean (Accelerated Weathering of Limestone)",mineralization:"Mineralization is the reaction of alkaline minerals, CO₂, and water to form solid carbonate minerals, a durable form of carbon storage."},u=Object.entries(o).map(e=>{let[t,a]=e;return{id:t,label:a}}),m=["Africa","Asia","Australia","Europe","North America","South America"],p={offtake:"Offtake",prepurchase:"Prepurchase",r_and_d:"R&D"},h=Object.entries(p).map(e=>{let[t,a]=e;return{id:t,label:a}});function f(){return u}function b(e){return[{category:"purchase-cycle",title:"Purchase date",options:r.useMemo(()=>n()(e.flatMap(e=>e.purchaseCycle)).sort((e,t)=>t-e).map(String).map(e=>({id:e,label:e})),[e])},{category:"pathway",title:"Pathway",options:u},{category:"location",title:"Location",options:r.useMemo(()=>(function(e){let t=s()(e.flatMap(e=>e.locations),"region");return m.map(e=>{let a=t[e]||[];return{id:e,label:e,children:n()(a.map(e=>e.country).filter(Boolean)).sort().map(e=>({id:e,label:e}))}})})(e),[e])},{category:"track",title:"Track",options:h},{category:"supplier_id",title:"Supplier",options:e.map(e=>({id:e.supplier_id,label:e.name})).sort((e,t)=>e.label.localeCompare(t.label))},{category:"delivery_status",title:"Delivery status",options:[{id:"delivered",label:"Fully delivered"},{id:"partially_delivered",label:"Partially delivered"}]}]}function g(e){return[{category:"pathway",title:"Pathway",options:u},{category:"track",title:"Track",options:h.filter(e=>"r_and_d"!==e.id)},{category:"supplier_id",title:"Supplier",options:e.filter(e=>e.tons).map(e=>({id:e.supplier_id,label:e.name})).sort((e,t)=>e.label.localeCompare(t.label))}]}},83673:function(e,t,a){"use strict";a.d(t,{O$:function(){return o},No:function(){return d},Vs:function(){return c}});var r=a(85893);a(67294);var i=a(16711);function n(e,t,a){let r={...a,minimumFractionDigits:t%1==0?0:a.minimumFractionDigits};return e.formatNumber(t,r)}var l=a(31284);function s(e,t){return"number"==typeof t?e+t:e}function o(e){let{label:t,value:a,delta:n}=e;return(0,r.jsxs)("div",{className:"flex flex-col flex-1",children:[(0,r.jsx)("p",{className:"mb-4 font-semibold",children:t}),(0,r.jsx)("p",{className:"mb-4 font-semibold text-[30px]",children:a}),n?(0,r.jsxs)("p",{className:"flex items-center text-[14px] whitespace-nowrap",children:[(0,r.jsx)(i.iq,{className:"w-[15px] h-[15px] mr-1 text-green-500"}),n.value," since"," ",l.N.formatDate(n.previousDate,{month:"short",year:"numeric"})]}):(0,r.jsx)("div",{})]})}function c(e){let t=new Date;t.setFullYear(t.getFullYear()-1);let a=e.filter(e=>e.addedDate>t),r=e.flatMap(e=>e.deliveries),i=e.flatMap(e=>e.deliveries).filter(e=>new Date(e.effective_date)>t),o=Math.round(e.map(e=>e.spend).reduce(s,0)),c=a.map(e=>e.spend).reduce(s,0),d=n(l.N,o,{style:"currency",currency:"USD",notation:"compact",maximumFractionDigits:0}),u=n(l.N,c,{style:"currency",currency:"USD",notation:"compact",minimumFractionDigits:1,maximumFractionDigits:1}),m=e.map(e=>e.tons).reduce(s,0),p=a.map(e=>e.tons).reduce(s,0),h=n(l.N,m,{style:"decimal",notation:"standard",maximumFractionDigits:0}),f=n(l.N,p,{style:"decimal",notation:"compact",minimumFractionDigits:1,maximumFractionDigits:1}),b=r.map(e=>e.volume).reduce(s,0),g=i.map(e=>e.volume).reduce(s,0);return{dollarsContracted:{label:"Dollars contracted",value:d,delta:{value:u,previousDate:t}},tonsContracted:{label:"Tons contracted",value:h,delta:{value:f,previousDate:t}},tonsDelivered:{label:"Tons delivered",value:n(l.N,b,{style:"decimal",notation:"standard",maximumFractionDigits:0}),delta:{value:n(l.N,g,{style:"decimal",notation:"compact",minimumFractionDigits:1,maximumFractionDigits:1}),previousDate:t}}}}function d(e){let{children:t}=e;return(0,r.jsx)("div",{className:"flex flex-wrap justify-between gap-4",children:t})}},8556:function(e,t,a){"use strict";a.d(t,{Z:function(){return i}});var r=a(67294);function i(e){return r.cloneElement(e.children,{"data-tooltip-id":"global-tooltip","data-tooltip-html":e.content,"data-tooltip-place":e.placement||"bottom","data-tooltip-delay-show":e.delayShow})}},36156:function(e,t,a){"use strict";a.d(t,{q:function(){return n}});var r=a(6767),i=a.n(r);let n={biomass_carbon_removal_and_storage:new(i())("#7F9565"),direct_air_capture:new(i())("#B6602F"),enhanced_weathering:new(i())("#4D4439"),marine_carbon_removal:new(i())("#508686"),mineralization:new(i())("#A77BA7")}}},function(e){e.O(0,[6130,7665,2757,2222,3061,608,4908,3303,7132,951,8461,4082,2888,9774,179],function(){return e(e.s=51592)}),_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.