PageSourceSearch

https://www.is.fi/supersaa/_next/static/chunks/2yotag1m_lepl.js

js is.fi collected 2026-09-24 08:35:40 UTC 20,667 bytes, 1 lines download raw bytes

1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,45534,e=>{e.v(t=>Promise.all(["static/chunks/12o4dfn9mhknm.js","static/chunks/0_bvloozdmpt-.js","static/chunks/2qkn8r_2jg3cr.js"].map(t=>e.l(t))).then(()=>t(11488)))},3,e=>{"use strict";let t=new Uint32Array(256);for(let e=0;e<256;++e){let r=e;for(let e=0;e<8;++e)r=1&r?0xedb88320^r>>>1:r>>>1;t[e]=r>>>0}e.s(["Crc32",0,class{digestLength=4;checksum=0xffffffff;update(e){for(let r=0;r<e.length;++r)this.checksum=this.checksum>>>8^t[(this.checksum^e[r])&255]}digestSync(){return(0xffffffff^this.checksum)>>>0}async digest(){let e=this.digestSync(),t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,e,!1),t}reset(){this.checksum=0xffffffff}}],3)},845,55535,e=>{"use strict";var t,r,s=e.i(3),a=e.i(74733);let n={},i={};for(let e=0;e<256;e++){let t=e.toString(16).toLowerCase();1===t.length&&(t=`0${t}`),n[e]=t,i[t]=e}function o(e){if(e.length%2!=0)throw Error("Hex encoded strings must have an even number length");let t=new Uint8Array(e.length/2);for(let r=0;r<e.length;r+=2){let s=e.slice(r,r+2).toLowerCase();if(s in i)t[r/2]=i[s];else throw Error(`Cannot decode unrecognized sequence ${s} as hexadecimal`)}return t}function l(e){let t="";for(let r=0;r<e.byteLength;r++)t+=n[e[r]];return t}e.s(["fromHex",0,o,"toHex",0,l],55535);class u{bytes;constructor(e){if(this.bytes=e,8!==e.byteLength)throw Error("Int64 buffers must be exactly 8 bytes")}static fromNumber(e){if(e>0x8000000000000000||e<-0x8000000000000000)throw Error(`${e} is too large (or, if negative, too small) to represent as an Int64`);let t=new Uint8Array(8);for(let r=7,s=Math.abs(Math.round(e));r>-1&&s>0;r--,s/=256)t[r]=s;return e<0&&c(t),new u(t)}valueOf(){let e=this.bytes.slice(0),t=128&e[0];return t&&c(e),parseInt(l(e),16)*(t?-1:1)}toString(){return String(this.valueOf())}}function c(e){for(let t=0;t<8;t++)e[t]^=255;for(let t=7;t>-1&&(e[t]++,0===e[t]);t--);}class f{toUtf8;fromUtf8;constructor(e,t){this.toUtf8=e,this.fromUtf8=t}format(e){let t=[];for(let r in e){if(!(0,a.hasOwn)(e,r))continue;let s=this.fromUtf8(r);t.push(Uint8Array.from([s.byteLength]),s,this.formatHeaderValue(e[r]))}let r=new Uint8Array(t.reduce((e,t)=>e+t.byteLength,0)),s=0;for(let e of t)r.set(e,s),s+=e.byteLength;return r}formatHeaderValue(e){switch(e.type){case"boolean":return Uint8Array.from([+!e.value]);case"byte":return Uint8Array.from([2,e.value]);case"short":let t=new DataView(new ArrayBuffer(3));return t.setUint8(0,3),t.setInt16(1,e.value,!1),new Uint8Array(t.buffer);case"integer":let r=new DataView(new ArrayBuffer(5));return r.setUint8(0,4),r.setInt32(1,e.value,!1),new Uint8Array(r.buffer);case"long":let s=new Uint8Array(9);return s[0]=5,s.set(e.value.bytes,1),s;case"binary":let a=new DataView(new ArrayBuffer(3+e.value.byteLength));a.setUint8(0,6),a.setUint16(1,e.value.byteLength,!1);let n=new Uint8Array(a.buffer);return n.set(e.value,3),n;case"string":let i=this.fromUtf8(e.value),l=new DataView(new ArrayBuffer(3+i.byteLength));l.setUint8(0,7),l.setUint16(1,i.byteLength,!1);let c=new Uint8Array(l.buffer);return c.set(i,3),c;case"timestamp":let f=new Uint8Array(9);return f[0]=8,f.set(u.fromNumber(e.value.valueOf()).bytes,1),f;case"uuid":if(!x.test(e.value))throw Error(`Invalid UUID received: ${e.value}`);let d=new Uint8Array(17);return d[0]=9,d.set(o(e.value.replace(/-/g,"")),1),d}}parse(e){let t={},r=0;for(;r<e.byteLength;){let s=e.getUint8(r++),a=this.toUtf8(new Uint8Array(e.buffer,e.byteOffset+r,s));switch(r+=s,e.getUint8(r++)){case 0:t[a]={type:d,value:!0};break;case 1:t[a]={type:d,value:!1};break;case 2:t[a]={type:h,value:e.getInt8(r++)};break;case 3:t[a]={type:p,value:e.getInt16(r,!1)},r+=2;break;case 4:t[a]={type:m,value:e.getInt32(r,!1)},r+=4;break;
1case 5:t[a]={type:g,value:new u(new Uint8Array(e.buffer,e.byteOffset+r,8))},r+=8;break;case 6:let n=e.getUint16(r,!1);r+=2,t[a]={type:y,value:new Uint8Array(e.buffer,e.byteOffset+r,n)},r+=n;break;case 7:let i=e.getUint16(r,!1);r+=2,t[a]={type:w,value:this.toUtf8(new Uint8Array(e.buffer,e.byteOffset+r,i))},r+=i;break;case 8:t[a]={type:b,value:new Date(new u(new Uint8Array(e.buffer,e.byteOffset+r,8)).valueOf())},r+=8;break;case 9:let o=new Uint8Array(e.buffer,e.byteOffset+r,16);r+=16,t[a]={type:v,value:`${l(o.subarray(0,4))}-${l(o.subarray(4,6))}-${l(o.subarray(6,8))}-${l(o.subarray(8,10))}-${l(o.subarray(10))}`};break;default:throw Error("Unrecognized header type tag")}}return t}}(t=r||(r={}))[t.boolTrue=0]="boolTrue",t[t.boolFalse=1]="boolFalse",t[t.byte=2]="byte",t[t.short=3]="short",t[t.integer=4]="integer",t[t.long=5]="long",t[t.byteArray=6]="byteArray",t[t.string=7]="string",t[t.timestamp=8]="timestamp",t[t.uuid=9]="uuid";let d="boolean",h="byte",p="short",m="integer",g="long",y="binary",w="string",b="timestamp",v="uuid",x=/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/,S=16;class E{headerMarshaller;messageBuffer;isEndOfStream;constructor(e,t){this.headerMarshaller=new f(e,t),this.messageBuffer=[],this.isEndOfStream=!1}feed(e){this.messageBuffer.push(this.decode(e))}endOfStream(){this.isEndOfStream=!0}getMessage(){let e=this.messageBuffer.pop(),t=this.isEndOfStream;return{getMessage:()=>e,isEndOfStream:()=>t}}getAvailableMessages(){let e=this.messageBuffer;this.messageBuffer=[];let t=this.isEndOfStream;return{getMessages:()=>e,isEndOfStream:()=>t}}encode({headers:e,body:t}){let r=this.headerMarshaller.format(e),a=r.byteLength+t.byteLength+16,n=new Uint8Array(a),i=new DataView(n.buffer,n.byteOffset,n.byteLength),o=new s.Crc32;return i.setUint32(0,a,!1),i.setUint32(4,r.byteLength,!1),o.update(n.subarray(0,8)),i.setUint32(8,o.digestSync(),!1),n.set(r,12),n.set(t,r.byteLength+12),o.update(n.subarray(8,a-4)),i.setUint32(a-4,o.digestSync(),!1),n}decode(e){let{headers:t,body:r}=function({byteLength:e,byteOffset:t,buffer:r}){if(e<S)throw Error("Provided message too short to accommodate event stream message overhead");let a=new DataView(r,t,e),n=a.getUint32(0,!1);if(e!==n)throw Error("Reported message length does not match received message length");let i=a.getUint32(4,!1),o=a.getUint32(8,!1),l=a.getUint32(e-4,!1),u=new s.Crc32;if(u.update(new Uint8Array(r,t,8)),o!==u.digestSync())throw Error(`The prelude checksum specified in the message (${o}) does not match the calculated CRC32 checksum (${u.digestSync()})`);if(u.update(new Uint8Array(r,t+8,e-12)),l!==u.digestSync())throw Error(`The message checksum (${u.digestSync()}) did not match the expected value of ${l}`);return{headers:new DataView(r,t+8+4,i),body:new Uint8Array(r,t+8+4+i,n-i-16)}}(e);return{headers:this.headerMarshaller.parse(t),body:r}}formatHeaders(e){return this.headerMarshaller.format(e)}}class U{options;constructor(e){this.options=e}[Symbol.asyncIterator](){return this.asyncIterator()}async *asyncIterator(){for await(let e of this.options.inputStream){let t=this.options.decoder.decode(e);yield t}}}class k{options;constructor(e){this.options=e}[Symbol.asyncIterator](){return this.asyncIterator()}async *asyncIterator(){for await(let e of this.options.messageStream){let t=this.options.encoder.encode(e);yield t}this.options.includeEndFrame&&(yield new Uint8Array(0))}}class A{options;constructor(e){this.options=e}[Symbol.asyncIterator](){return this.asyncIterator()}async *asyncIterator(){for await(let e of this.options.messageStream){let t=await this.options.deserializer(e);void 0!==t&&(yield t)}}}class I{options;constructor(e){this.options=e}[Symbol.asyncIterator](){return this.asyncIterator()}async *asyncIterator(){for await(let e of this.options.inputStream){let t=this.options.serializer(e);yield t}}}class N{eventStreamCodec;utfEncoder;constructor({utf8Encoder:e,utf8Decoder:t}){this.eventStreamCodec=new E(e,t),this.utfEncoder=e}deserialize(e,t){var r;let s,a,n,i,o;return new A({messageStream:new U({inputStream:(s=0,a=0,n=null,i=null,o=e=>{if("number"!=typeof e)throw Error("Attempted to allocate an event message where size was not a number: "+e);s=e,a=4,new DataView((n=new Uint8Array(e)).buffer).setUint32(0,e,!1)},{[Symbol.asyncIterator]:async function*(){let t=e[Symbol.asyncIterator]();for(;;){let{value:e,done:r}=await t.next();if(r){if(s)if(s===a)yield n;else throw Error("Truncated event message received.");return}let l=e.length,u=0;for(;u<l;){if(!n){let t=l-u;i||(i=new Uint8Array(4));let r=Math.min(4-a,t);if(i.set(e.slice(u,u+r),a),a+=r,u+=r,a<4)break;o(new DataView(i.buffer).getUint32(0,!1)),i=null}let t=Math.min(s-a,l-u);n.set(e.slice(u,u+t),a),a+=t,u+=t,s&&s===a&&(yield n,n=null,s=0,a=0)}}}}),decoder:this.eventStreamCodec}),deserializer:(r=this.utfEncoder,async function(e){let{value:s}=e.headers[":message-type"];if("error"===s){let t=Error(e.headers[":error-message"].value||"UnknownError");throw t.name=e.headers[":error-code"].value,t}if("exception"===s){let s=e.headers[":exception-type"].value,a=await t({[s]:e});if(a.$unknown){let t=Error(r(e.body));throw t.name=s,t}throw a[s]}if("event"===s){let r={[e.headers[":event-type"].value]:e},s=await t(r);if(s.$unknown)return;return s}throw Error(`Unrecognizable event type: ${e.headers[":event-type"].value}`)})})}serialize(e,t){return new k({messageStream:new I({inputStream:e,serializer:t}),encoder:this.eventStreamCodec,includeEndFrame:!0})}}class j{universalMarshaller;constructor({utf8Encoder:e,utf8Decoder:t}){this.universalMarshaller=new N({utf8Decoder:t,utf8Encoder:e})}deserialize(e,t){let r=L(e)?{[Symbol.asyncIterator]:async function*(){let t=e.getReader();try{for(;;){let{done:e,value:r}=await t.read();if(e)return;yield r}}finally{t.releaseLock()}}}:e;return this.universalMarshaller.deserialize(r,t)}serialize(e,t){let r,s=this.universalMarshaller.serialize(e,t);return"function"==typeof ReadableStream?(r=s[Symbol.asyncIterator](),new ReadableStream({async pull(e){let{done:t,value:s}=await r.next();if(t)return e.close();e.enqueue(s)}})):s}}let L=e=>"function"==typeof ReadableStream&&e instanceof ReadableStream;e.s(["eventStreamSerdeProvider",0,e=>new j(e)],845)},51195,e=>{e.v(t=>Promise.all(["static/chunks/0zcf_qwhtg0ka.js"].map(t=>e.l(t))).then(()=>t(80043)))},22144,e=>{"use strict";class t{namespace;schemas;exceptions;static registries=new Map;constructor(e,t=new Map,r=new Map){this.namespace=e,this.schemas=t,this.exceptions=r}static for(e){return t.registries.has(e)||t.registries.set(e,new t(e)),t.registries.get(e)}copyFrom(e){let{schemas:t,exceptions:r}=this;for(let[r,s]of e.schemas)t.has(r)||t.set(r,s);for(let[t,s]of e.exceptions)r.has(t)||r.set(t,s)}register(e,r){let s=this.normalizeShapeId(e);for(let e of[this,t.for(s.split("#")[0])])e.schemas.set(s,r)}getSchema(e){let t=this.normalizeShapeId(e);if(!this.schemas.has(t)){if(!e.includes("#")){let t="#"+e,r=[];for(let[e,s]of this.schemas.entries())e.endsWith(t)&&r.push(s);if(1===r.length)return r[0]}throw Error(`@smithy/core/schema - schema not found for ${t}`)}return this.schemas.get(t)}registerError(e,r){let s=e[1];
1for(let a of[this,t.for(s)])a.schemas.set(s+"#"+e[2],e),a.exceptions.set(e,r)}getErrorCtor(e){return this.exceptions.has(e)?this.exceptions.get(e):t.for(e[1]).exceptions.get(e)}getBaseException(){for(let e of this.exceptions.keys())if(Array.isArray(e)){let[,t,r]=e,s=t+"#"+r;if(s.startsWith("smithy.ts.sdk.synthetic.")&&s.endsWith("ServiceException"))return e}}find(e){for(let t of this.schemas.values())if(e(t))return t}clear(){this.schemas.clear(),this.exceptions.clear()}normalizeShapeId(e){return e.includes("#")?e:this.namespace+"#"+e}}e.s(["TypeRegistry",0,t])},75540,e=>{"use strict";e.s(["fromUtf8",0,e=>new TextEncoder().encode(e)])},35245,e=>{"use strict";e.s(["toUtf8",0,e=>{if("string"==typeof e)return e;if("object"!=typeof e||"number"!=typeof e.byteOffset||"number"!=typeof e.byteLength)throw Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");return new TextDecoder("utf-8").decode(e)}])},74733,e=>{"use strict";e.s(["hasOwn",0,function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}])},72043,(e,t,r)=>{!function(){"use strict";var r={}.hasOwnProperty;function s(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=a(e,function(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return s.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var t="";for(var n in e)r.call(e,n)&&e[n]&&(t=a(t,n));return t}(n)))}return e}function a(e,t){return t?e?e+" "+t:e+t:e}if(t.exports)s.default=s,t.exports=s;else if("function"==typeof define&&"object"==typeof define.amd&&define.amd)void 0!==s&&e.v(s);else window.classNames=s}()},28805,e=>{e.v(t=>Promise.all(["static/chunks/0h0r_q6xa9qr_.js"].map(t=>e.l(t))).then(()=>t(79466)))},48761,e=>{e.v(t=>Promise.all(["static/chunks/1ae-9ft5cgojf.js"].map(t=>e.l(t))).then(()=>t(93594)))},89129,(e,t,r)=>{"use strict";e.i(50461),Object.defineProperty(r,"__esModule",{value:!0});var s={DecodeError:function(){return y},MiddlewareNotFoundError:function(){return x},MissingStaticPage:function(){return v},NormalizeError:function(){return w},PageNotFoundError:function(){return b},SP:function(){return m},ST:function(){return g},WEB_VITALS:function(){return n},execOnce:function(){return i},getDisplayName:function(){return f},getLocationOrigin:function(){return u},getURL:function(){return c},isAbsoluteUrl:function(){return l},isResSent:function(){return d},loadGetInitialProps:function(){return p},normalizeRepeatedSlashes:function(){return h},stringifyError:function(){return S}};for(var a in s)Object.defineProperty(r,a,{enumerable:!0,get:s[a]});let n=["CLS","FCP","FID","INP","LCP","TTFB"];function i(e){let t,r=!1;return(...s)=>(r||(r=!0,t=e(...s)),t)}let o=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,l=e=>{let t=e.charCodeAt(0);return!!(t>=65&&t<=90||t>=97&&t<=122)&&o.test(e)};function u(){let{protocol:e,hostname:t,port:r}=window.location;return`${e}//${t}${r?":"+r:""}`}function c(){let{href:e}=window.location,t=u();return e.substring(t.length)}function f(e){return"string"==typeof e?e:e.displayName||e.name||"Unknown"}function d(e){return e.finished||e.headersSent}function h(e){let t=e.split("?");return t[0].replace(/\\/g,"/").replace(/\/\/+/g,"/")+(t[1]?`?${t.slice(1).join("?")}`:"")}async function p(e,t){let r=t.res||t.ctx&&t.ctx.res;if(!e.getInitialProps)return t.ctx&&t.Component?{pageProps:await p(t.Component,t.ctx)}:{};let s=await e.getInitialProps(t);if(r&&d(r))return s;if(!s)throw Object.defineProperty(Error(`"${f(e)}.getInitialProps()" should resolve to an object. But found "${s}" instead.`),"__NEXT_ERROR_CODE",{value:"E1025",enumerable:!1,configurable:!0});return s}let m="u">typeof performance,g=m&&["mark","measure","getEntriesByName"].every(e=>"function"==typeof performance[e]);class y extends Error{}class w extends Error{}class b extends Error{constructor(e){super(),this.code="ENOENT",this.name="PageNotFoundError",this.message=`Cannot find module for page: ${e}`}}class v extends Error{constructor(e,t){super(),this.message=`Failed to load static file for page: ${e} ${t}`}}
1class x extends Error{constructor(){super(),this.code="ENOENT",this.message="Cannot find the middleware module"}}function S(e){return JSON.stringify({message:e.message,stack:e.stack})}},3828,(e,t,r)=>{t.exports=e.r(26990)},67599,e=>{"use strict";var t=e.i(91398),r=e.i(72043),s=e.i(26019),a=e.i(91788),n=e.i(95161);let i="android";e.s(["default",0,()=>{let[e,o]=(0,a.useState)(void 0);return(0,a.useEffect)(()=>{let e;(0,n.isBrowser)()&&o((e=(0,n.getMobileOS)(navigator.userAgent),/ios/.exec(e)?"ios":i))},[]),(0,t.jsxs)("div",{className:"embed-promo",children:[(0,t.jsxs)("div",{className:"embed-promo-items",children:[(0,t.jsx)("h1",{className:"embed-promo-text section-heading-20 text-28",children:"IS Supersää – tuplasti parempi sääpalvelu"}),(0,t.jsx)("p",{className:"embed-promo-text ui-text-40 text-18",children:"Kaksi kilpailevaa sääennustetta, sadekartta, suosikkipaikat, varoitukset ja tumma ulkoasuvaihtoehto!"}),(0,t.jsx)("a",{"data-testid":"embed-promo-download-link",href:"ios"===e?"https://apps.apple.com/app/apple-store/id657765123?pt=350676&ct=is_app_promo&mt=8&l=fi":"https://play.google.com/store/apps/details?id=fi.supersaa&hl=fi&referrer=utm_source=is_app&utm_campaign=is_app_promo&utm_medium=referral",children:(0,t.jsx)(s.default,{className:"embed-promo-download-link-image",src:"/supersaa/assets/embed_promo_download_button.svg",width:200,height:60,alt:"lataa sovellus"})})]}),(0,t.jsx)("div",{className:(0,r.default)("embed-promo-device-img",{"embed-promo-android-img":e===i},{"embed-promo-ios-img":"ios"===e}),role:"presentation"})]})}])},87899,e=>{"use strict";var t=e.i(91398),r=e.i(26019);e.s(["DownloadButtons",0,({smaller:e})=>(0,t.jsxs)("div",{className:"flex flex-row py-5 items-center",children:[(0,t.jsx)("a",{href:"https://play.google.com/store/apps/details?id=fi.supersaa&hl=fi&referrer=utm_source=supersaafi&utm_campaign=supersaa_app_page&utm_medium=referral",target:"_blank",rel:"noopener noreferrer",className:"mr-4",children:(0,t.jsx)(r.default,{src:"/supersaa/assets/download-google-play-badge-fi.svg",width:e?101:135,height:e?30:40,alt:"Supersää Android-puhelimille"})}),(0,t.jsx)("a",{href:"https://apps.apple.com/app/apple-store/id657765123?pt=350676&ct=supersaa_app_page&mt=8&l=fi",target:"_blank",rel:"noopener noreferrer",children:(0,t.jsx)(r.default,{src:"/supersaa/assets/download-appstore-badge-fi.svg",width:e?107:143,height:e?30:40,alt:"Supersää iPhonelle ja iPadille"})})]})])},49749,84002,e=>{"use strict";var t=e.i(91398),r=e.i(45246),s=e.i(72043),a=e.i(26019);e.s(["LoadingIndicator",0,({className:e})=>(0,t.jsxs)("div",{className:"jsx-3af0d7d2216695db "+((0,s.default)("fade-in",e)||""),children:[(0,t.jsx)(a.default,{className:"animate-spin",src:"/supersaa/assets/loading-indicator.svg",height:24,width:24,alt:"Ladataan sisältöä"}),(0,t.jsx)(r.default,{id:"3af0d7d2216695db",children:".loading-wrapper.jsx-3af0d7d2216695db{padding-top:calc(50vh - 133px)}.fade-in.jsx-3af0d7d2216695db{opacity:0;animation:.5s .5s forwards fadeIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}"})]})],49749),e.s(["default",0,({size:e,fillColor:r})=>(0,t.jsx)("svg",{width:e?e+"px":"24px",height:e?e+"px":"24px",viewBox:"0 0 24 24",fill:r??"#0289B0",children:(0,t.jsx)("g",{color:"#CD21278",stroke:"none",strokeWidth:"1",children:(0,t.jsx)("path",{d:"M1.29289322,6.29289322 C1.65337718,5.93240926 2.22060824,5.90467972 2.61289944,6.20970461 L2.70710678,6.29289322 L12,15.585 L21.2928932,6.29289322 C21.6533772,5.93240926 22.2206082,5.90467972 22.6128994,6.20970461 L22.7071068,6.29289322 C23.0675907,6.65337718 23.0953203,7.22060824 22.7902954,7.61289944 L22.7071068,7.70710678 L12.7071068,17.7071068 C12.3466228,18.0675907 11.7793918,18.0953203 11.3871006,17.7902954 L11.2928932,17.7071068 L1.29289322,7.70710678 C0.902368927,7.31658249 0.902368927,6.68341751 1.29289322,6.29289322 Z"})})})],84002)},98986,e=>{"use strict";var t=e.i(50461),r=e.i(86485);t.default.env.ENV||t.default.env.DEVAPIENV||r.logger.error("Error: No ENV set. Check README for details on how to configure the environment.");let s=(e,t)=>["local","test","prod"].includes(e)?e:(r.logger.error(`Invalid ${t} value ${e}. Defaulting to "test" environment.`),"test");e.s(["getAPIEnv",0,()=>{if(t.default.env.ENV)return s(t.default.env.ENV,"process.env.ENV");if(t.default.env.DEVAPIENV)return s(t.default.env.DEVAPIENV,"process.env.DEVAPIENV");throw Error("No API environment set.")},"getEnv",0,()=>s("prod","process.env.NEXT_PUBLIC_APP_ENVIRONMENT or process.env.APP_ENVIRONMENT or process.env.ENV"),"getIframeResizerLicense",0,()=>"12ajjdewwwy-26rnhw2943-1s7g1u8ma0i"])},79407,e=>{"use strict";let t=["\bPohjoistuulta","Koillistuulta","Itätuulta","Kaakkoistuulta","Etelätuulta","Lounaistuulta","Länsituulta","Luoteistuulta"];e.s(["capitalize",0,e=>`${e[0]?.toUpperCase()}${e.slice(1)}`,"formatToDecimal",0,(e,t,r)=>{if(null==e)return"–";{let s=e.toFixed(t).replace(".",",");return r&&(s="0,0"===s?"0 mm":s.concat(" mm")),s}},"getCardinalDirection",0,e=>t[Math.floor((e+22.5)%360/45)]])},17419,e=>{"use strict";let t=e=>
1{let{name:t,region:r}=e;return t!==r?[t,r].filter(e=>e&&"Suomi"!==e).join(", "):t};e.s(["getAppleWebAppTitle",0,(e,r)=>"app-promo"===e?"Sovellukset":r?"radar"===e?"Sadekartta":t(r):"Supersää","getLocationName",0,t,"getSeoTitle",0,(e,r)=>"app-promo"===e?"Sovellukset - Supersää":r?"radar"!==e?`${t(r)} | S\xe4\xe4 t\xe4n\xe4\xe4n - Supers\xe4\xe4 - s\xe4\xe4ennuste`:"FI"===r.country?`Sadetutka ${t(r)} - Supers\xe4\xe4`:"Sadetutka - Supersää":"Supersää","getTitleForSubMenu",0,(e,r)=>"app-promo"===e?"Supersää-sovellus":r?"radar"===e?"Sadetutka":`S\xe4\xe4 ${t(r)}`:"Supersää"])}]);

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.