@serverless-stack/nextjs-lambda
Version:
Provides handlers that can be used in CloudFront Lambda@Edge to deploy next.js applications to the edge
2 lines (1 loc) • 42 kB
JavaScript
var e=require("./prerender-manifest.json"),t=require("./manifest.json"),r=require("./routes-manifest.json"),n=require("stream"),o=require("zlib"),i=require("http"),a=require("perf_hooks"),s=require("crypto");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function u(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var l=c(e),d=c(t),f=c(r),p=c(n),h=c(o),m=c(i),v=u(s);const g={"accept-encoding":!0,"content-length":!0,"if-modified-since":!0,"if-none-match":!0,"if-range":!0,"if-unmodified-since":!0,"transfer-encoding":!0,via:!0},E={202:"Accepted",502:"Bad Gateway",400:"Bad Request",409:"Conflict",100:"Continue",201:"Created",417:"Expectation Failed",424:"Failed Dependency",403:"Forbidden",504:"Gateway Timeout",410:"Gone",505:"HTTP Version Not Supported",418:"I'm a teapot",419:"Insufficient Space on Resource",507:"Insufficient Storage",500:"Server Error",411:"Length Required",423:"Locked",420:"Method Failure",405:"Method Not Allowed",301:"Moved Permanently",302:"Moved Temporarily",207:"Multi-Status",300:"Multiple Choices",511:"Network Authentication Required",204:"No Content",203:"Non Authoritative Information",406:"Not Acceptable",404:"Not Found",501:"Not Implemented",304:"Not Modified",200:"OK",206:"Partial Content",402:"Payment Required",308:"Permanent Redirect",412:"Precondition Failed",428:"Precondition Required",102:"Processing",407:"Proxy Authentication Required",431:"Request Header Fields Too Large",408:"Request Timeout",413:"Request Entity Too Large",414:"Request-URI Too Long",416:"Requested Range Not Satisfiable",205:"Reset Content",303:"See Other",503:"Service Unavailable",101:"Switching Protocols",307:"Temporary Redirect",429:"Too Many Requests",401:"Unauthorized",422:"Unprocessable Entity",415:"Unsupported Media Type",305:"Use Proxy"},y={enableHTTPCompression:!1},_=(e,{enableHTTPCompression:t,rewrittenUri:r}=y)=>{const{request:n,response:o={headers:{}}}=e,i={headers:{}},a=new p.default.Readable,s=Object.assign(a,m.default.IncomingMessage.prototype);s.url=r||n.uri,s.method=n.method,s.rawHeaders=[],s.headers={},s.connection={},n.querystring&&(s.url=s.url+"?"+n.querystring);const c=n.headers||{};for(const e of Object.keys(c)){const t=c[e];t.forEach((e=>{s.rawHeaders.push(e.key),s.rawHeaders.push(e.value)})),s.headers[e]=t[0].value}s.getHeader=e=>s.headers[e.toLowerCase()],s.getHeaders=()=>s.headers,n.body&&n.body.data&&s.push(n.body.data,n.body.encoding?"base64":void 0),s.push(null);const u=new p.default;u.finished=!1,Object.defineProperty(u,"statusCode",{get:()=>i.status,set(e){i.status=e,i.statusDescription=E[e]}}),u.headers={};const l={};u.writeHead=(e,t)=>(i.status=e,i.statusDescription=E[e],t&&(u.headers=Object.assign(u.headers,t)),u),u.write=e=>{i.body||(i.body=Buffer.from("")),i.body=Buffer.concat([i.body,Buffer.isBuffer(e)?e:Buffer.from(e)])};let d=t&&(e=>{let t=!1;const r=e["accept-encoding"];if(r)for(let e=0;e<r.length;e++){const{value:n}=r[e];-1!==n.split(",").map((e=>e.split(";")[0].trim())).indexOf("gzip")&&(t=!0)}return t})(c);const f=new Promise((e=>{u.end=t=>{!0!==u.finished&&(u.finished=!0,t&&u.write(t),u.statusCode||(u.statusCode=200),i.body&&(i.bodyEncoding="base64",i.body=d?h.default.gzipSync(i.body).toString("base64"):Buffer.from(i.body).toString("base64")),i.headers=((e,t,r)=>{const n={};return Object.entries(r).forEach((([e,t])=>{n[e.toLowerCase()]=t})),Object.entries(e).forEach((([e,r])=>{const o=e.toLowerCase();e=t[o]||e,g[o]||(n[o]=[],r instanceof Array?r.forEach((t=>{n[o].push({key:e,value:t.toString()})})):n[o].push({key:e,value:r.toString()}))})),n})(u.headers,l,o.headers),d&&(i.headers["content-encoding"]=[{key:"Content-Encoding",value:"gzip"}]),e(i))}}));return u.setHeader=(e,t)=>{u.headers[e.toLowerCase()]=t,l[e.toLowerCase()]=e},u.removeHeader=e=>{delete u.headers[e.toLowerCase()]},u.getHeader=e=>u.headers[e.toLowerCase()],u.getHeaders=()=>u.headers,u.hasHeader=e=>!!u.getHeader(e),{req:s,res:u,responsePromise:f}};_.SPECIAL_NODE_HEADERS=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];var b=_;function T(e,t){void 0===t&&(t={});for(var r=function(e){for(var t=[],r=0;r<e.length;){var n=e[r];if("*"!==n&&"+"!==n&&"?"!==n)if("\\"!==n)if("{"!==n)if("}"!==n)if(":"!==n)if("("!==n)t.push({type:"CHAR",index:r,value:e[r++]});else{var o=1,i="";if("?"===e[s=r+1])throw new TypeError('Pattern cannot start with "?" at '+s);for(;s<e.length;)if("\\"!==e[s]){if(")"===e[s]){if(0==--o){s++;break}}else if("("===e[s]&&(o++,"?"!==e[s+1]))throw new TypeError("Capturing groups are not allowed at "+s);i+=e[s++]}else i+=e[s++]+e[s++];if(o)throw new TypeError("Unbalanced pattern at "+r);if(!i)throw new TypeError("Missing pattern at "+r);t.push({type:"PATTERN",index:r,value:i}),r=s}else{for(var a="",s=r+1;s<e.length;){var c=e.charCodeAt(s);if(!(c>=48&&c<=57||c>=65&&c<=90||c>=97&&c<=122||95===c))break;a+=e[s++]}if(!a)throw new TypeError("Missing parameter name at "+r);t.push({type:"NAME",index:r,value:a}),r=s}else t.push({type:"CLOSE",index:r,value:e[r++]});else t.push({type:"OPEN",index:r,value:e[r++]});else t.push({type:"ESCAPED_CHAR",index:r++,value:e[r++]});else t.push({type:"MODIFIER",index:r,value:e[r++]})}return t.push({type:"END",index:r,value:""}),t}(e),n=t.prefixes,o=void 0===n?"./":n,i="[^"+R(t.delimiter||"/#?")+"]+?",a=[],s=0,c=0,u="",l=function(e){if(c<r.length&&r[c].type===e)return r[c++].value},d=function(e){var t=l(e);if(void 0!==t)return t;var n=r[c],o=n.type,i=n.index;throw new TypeError("Unexpected "+o+" at "+i+", expected "+e)},f=function(){for(var e,t="";e=l("CHAR")||l("ESCAPED_CHAR");)t+=e;return t};c<r.length;){var p=l("CHAR"),h=l("NAME"),m=l("PATTERN");if(h||m){var v=p||"";-1===o.indexOf(v)&&(u+=v,v=""),u&&(a.push(u),u=""),a.push({name:h||s++,prefix:v,suffix:"",pattern:m||i,modifier:l("MODIFIER")||""})}else{var g=p||l("ESCAPED_CHAR");if(g)u+=g;else if(u&&(a.push(u),u=""),l("OPEN")){v=f();var E=l("NAME")||"",y=l("PATTERN")||"",_=f();d("CLOSE"),a.push({name:E||(y?s++:""),pattern:E&&!y?i:y,prefix:v,suffix:_,modifier:l("MODIFIER")||""})}else d("END")}}return a}function w(e,t){return function(e,t){void 0===t&&(t={});var r=C(t),n=t.encode,o=void 0===n?function(e){return e}:n,i=t.validate,a=void 0===i||i,s=e.map((function(e){if("object"==typeof e)return new RegExp("^(?:"+e.pattern+")$",r)}));return function(t){for(var r="",n=0;n<e.length;n++){var i=e[n];if("string"!=typeof i){var c=t?t[i.name]:void 0,u="?"===i.modifier||"*"===i.modifier,l="*"===i.modifier||"+"===i.modifier;if(Array.isArray(c)){if(!l)throw new TypeError('Expected "'+i.name+'" to not repeat, but got an array');if(0===c.length){if(u)continue;throw new TypeError('Expected "'+i.name+'" to not be empty')}for(var d=0;d<c.length;d++){var f=o(c[d],i);if(a&&!s[n].test(f))throw new TypeError('Expected all "'+i.name+'" to match "'+i.pattern+'", but got "'+f+'"');r+=i.prefix+f+i.suffix}}else if("string"!=typeof c&&"number"!=typeof c){if(!u){var p=l?"an array":"a string";throw new TypeError('Expected "'+i.name+'" to be '+p)}}else{f=o(String(c),i);if(a&&!s[n].test(f))throw new TypeError('Expected "'+i.name+'" to match "'+i.pattern+'", but got "'+f+'"');r+=i.prefix+f+i.suffix}}else r+=i}return r}}(T(e,t),t)}function S(e,t){var r=[];return function(e,t,r){void 0===r&&(r={});var n=r.decode,o=void 0===n?function(e){return e}:n;return function(r){var n=e.exec(r);if(!n)return!1;for(var i=n[0],a=n.index,s=Object.create(null),c=function(e){if(void 0===n[e])return"continue";var r=t[e-1];"*"===r.modifier||"+"===r.modifier?s[r.name]=n[e].split(r.prefix+r.suffix).map((function(e){return o(e,r)})):s[r.name]=o(n[e],r)},u=1;u<n.length;u++)c(u);return{path:i,index:a,params:s}}}(I(e,r,t),r,t)}function R(e){return e.replace(/([.+*?=^!:${}()[\]|/\\])/g,"\\$1")}function C(e){return e&&e.sensitive?"":"i"}function x(e,t,r){return function(e,t,r){void 0===r&&(r={});for(var n=r.strict,o=void 0!==n&&n,i=r.start,a=void 0===i||i,s=r.end,c=void 0===s||s,u=r.encode,l=void 0===u?function(e){return e}:u,d="["+R(r.endsWith||"")+"]|$",f="["+R(r.delimiter||"/#?")+"]",p=a?"^":"",h=0,m=e;h<m.length;h++){var v=m[h];if("string"==typeof v)p+=R(l(v));else{var g=R(l(v.prefix)),E=R(l(v.suffix));if(v.pattern)if(t&&t.push(v),g||E)if("+"===v.modifier||"*"===v.modifier){var y="*"===v.modifier?"?":"";p+="(?:"+g+"((?:"+v.pattern+")(?:"+E+g+"(?:"+v.pattern+"))*)"+E+")"+y}else p+="(?:"+g+"("+v.pattern+")"+E+")"+v.modifier;else p+="("+v.pattern+")"+v.modifier;else p+="(?:"+g+E+")"+v.modifier}}if(c)o||(p+=f+"?"),p+=r.endsWith?"(?="+d+")":"$";else{var _=e[e.length-1],b="string"==typeof _?f.indexOf(_[_.length-1])>-1:void 0===_;o||(p+="(?:"+f+"(?="+d+"))?"),b||(p+="(?="+f+"|"+d+")")}return new RegExp(p,C(r))}(T(e,r),t,r)}function I(e,t,r){return e instanceof RegExp?function(e,t){if(!t)return e;for(var r=/\((?:\?<(.*?)>)?(?!\?)/g,n=0,o=r.exec(e.source);o;)t.push({name:o[1]||n++,prefix:"",suffix:"",modifier:"",pattern:""}),o=r.exec(e.source);return e}(e,t):Array.isArray(e)?function(e,t,r){var n=e.map((function(e){return I(e,t,r).source}));return new RegExp("(?:"+n.join("|")+")",C(r))}(e,t,r):x(e,t,r)}var P=function(e,t){if("string"!=typeof e)throw new TypeError("argument str must be a string");for(var r={},n=t||{},o=e.split(A),i=n.decode||L,a=0;a<o.length;a++){var s=o[a],c=s.indexOf("=");if(!(c<0)){var u=s.substr(0,c).trim(),l=s.substr(++c,s.length).trim();'"'==l[0]&&(l=l.slice(1,-1)),null==r[u]&&(r[u]=N(l,i))}}return r},L=decodeURIComponent,A=/; */;function N(e,t){try{return t(e)}catch(t){return e}}const O=(e,t)=>{var r;const n=null===(r=t.i18n)||void 0===r?void 0:r.domains;if(n){const t=e.headers.host;if(t&&t.length>0){const e=t[0].value.split(":")[0],r=n.find((t=>t.domain===e));if(r)return r.defaultLocale}}return null};function D(e,t,r=null){if(t.i18n){const n=null!=r?r:t.i18n.defaultLocale,o=t.i18n.locales,i=e.startsWith(t.basePath)?t.basePath:"",a=e.toLowerCase();for(const t of o)if(a===`${i}/${t}`.toLowerCase()||a.startsWith(`${i}/${t}/`.toLowerCase()))return e.replace(new RegExp(`${i}/${t}`,"i"),`${i}/${null!=r?r:t}`);return"/"===e||e===`${i}`?`${i}/${n}`:e.replace(`${i}/`,`${i}/${n}/`)}return e}function $(e,t){if(t.i18n){const r=e.toLowerCase(),n=t.i18n.locales;for(const e of n){const t=`/${e.toLowerCase()}`;if(r===t)return"/";if(r.startsWith(`${t}/`))return`${r.slice(t.length)}`}}return e}const M=async(e,t,r)=>{var n;if(r.i18n){const o=null===(n=r.i18n.defaultLocale)||void 0===n?void 0:n.toLowerCase(),i={};for(const e of r.i18n.locales)i[e.toLowerCase()]=e;const a=await Promise.resolve().then((function(){return require("./index-52fac20a.js")})).then((function(e){return e.index}));for(const n of a.languages(e)){const e=n.toLowerCase();if(e===o)break;if(i[e])return`${r.basePath}/${i[e]}${t.trailingSlash?"/":""}`}}};function q(e,t){if(t.basePath&&e.startsWith(t.basePath)&&(e=e.slice(t.basePath.length)),t.i18n){const r=e.toLowerCase();for(const e of t.i18n.locales){const t=e.toLowerCase();if(r===`/${t}`||r.startsWith(`/${t}/`))return`/${e}`}return`/${t.i18n.defaultLocale}`}return""}function j(e,t){return S(t,{decode:decodeURIComponent})(e)}function F(e,t){try{const r=e.toLowerCase();if(r.startsWith("https://")||r.startsWith("http://")){const{origin:r,pathname:n}=new URL(e),o=`${r}${w(n,{encode:encodeURIComponent})(t)}`;return!e.endsWith("/")&&o.endsWith("/")?o.slice(0,-1):o}{const r=e.replace(/\?/g,"\\?");return w(r,{encode:encodeURIComponent})(t)}}catch(t){return console.error(`Could not compile destination ${e}, returning null instead. Error: ${t}`),null}}const H=(e,t)=>{for(const{route:r,regex:n}of t){if(new RegExp(n,"i").test(e))return r}},U=(e,t)=>{const r=D(e,t),n={};for(const e of t.headers)if(j(r,e.source))for(const{key:t,value:r}of e.headers)t&&(n[t.toLowerCase()]=[{key:t,value:r}]);return n},k=(e,t)=>{var r;const[n]=(null!==(r=e.req.url)&&void 0!==r?r:"").split("?"),o=U(n,t);for(const[{key:t,value:r}]of Object.values(o))t&&e.res.setHeader(t,r)},B=(e,t)=>{var r;for(const[n,o]of Object.entries(t.headers||[])){const t=o.map((({key:e})=>e)),i=o.map((({value:e})=>e)).join(";");i&&e.res.setHeader(null!==(r=t[0])&&void 0!==r?r:n,i)}},z=e=>{var t;const[r,n]=(null!==(t=e.req.url)&&void 0!==t?t:"").split("?"),o={};for(const[t,r]of Object.entries(e.req.headers))r&&Array.isArray(r)?o[t.toLowerCase()]=r.map((e=>({key:t,value:e}))):r&&(o[t.toLowerCase()]=[{key:t,value:r}]);return{headers:o,querystring:n,uri:r}},G=(e,t)=>{const{basePath:r,i18n:n}=t;if(r){if(!e.startsWith(r))return(null==n?void 0:n.defaultLocale)?`/${n.defaultLocale}/404`:"/404";e=e.slice(r.length)}return e.endsWith("/")&&(e=e.slice(0,-1)),""===e?"/":e},W=(e,t,r)=>{const n=`${q(e,r)}/404`;if(t.pages.html.nonDynamic[n]||t.pages.ssg.nonDynamic[n])return{isData:!1,isStatic:!0,file:`pages${n}.html`,statusCode:404}},V=(e,t,r)=>W(e,t,r)||{isData:!0,isRender:!0,page:"pages/_error.js",statusCode:404},Y=(e,t,r)=>W(e,t,r)||{isData:!1,isRender:!0,page:"pages/_error.js",statusCode:404},K=e=>"/"==e?"pages/index.html":`pages${e}.html`,X=(e,t,r,n,o,i)=>{var a,s;const{pages:c}=r,u=G(D(t,n,O(e,n)),n);if(c.html.nonDynamic[u]){const e=$(u,n),t="/404"===e?404:"/500"===e?500:void 0;return{isData:!1,isStatic:!0,file:c.html.nonDynamic[u],statusCode:t}}if(c.ssg.nonDynamic[u]&&!o){const e=c.ssg.nonDynamic[u],t=null!==(a=e.srcRoute)&&void 0!==a?a:u,r=$(u,n),o="/404"===r?404:"/500"===r?500:void 0;return{isData:!1,isStatic:!0,file:K(u),page:c.ssr.nonDynamic[t]||c.ssr.dynamic[t],revalidate:e.initialRevalidateSeconds,statusCode:o}}if((null!==(s=c.ssg.notFound)&&void 0!==s?s:{})[u]&&!o)return Y(t,r,n);if(c.ssr.nonDynamic[u])return{isData:!1,isRender:!0,page:c.ssr.nonDynamic[u]};const l=!i&&function(e,t,r,n){const o=D(t,r,O(e,r)),i=r.rewrites;for(const t of i){const i=j(o,t.source);if(!i)continue;const a=i.params,s=F(t.destination,a);if(!s)return;if(n&&o===s){if(404===X(e,s,n,r,!1,!0).statusCode)continue}const c=Object.keys(a).filter((e=>"nextInternalLocale"!==e)).filter((e=>!t.destination.endsWith(`:${e}`)&&!t.destination.includes(`:${e}/`))).map((e=>{const t=a[e];return"string"==typeof t?`${e}=${t}`:t.map((t=>`${e}=${t}`)).join("&")})).filter((e=>e)).join("&");if(c){const e=s.includes("?")?"&":"?";return`${s}${e}${c}`}return s}}(e,t,n,r);if(l){const[t,i]=l.split("?");if((d=t).startsWith("http://")||d.startsWith("https://"))return{isExternal:!0,path:t,querystring:i};return{...X(e,t,r,n,o,!0),querystring:i}}var d;const f=H(u,c.dynamic),p=f&&c.ssg.dynamic[f];if(p&&!o)return{isData:!1,isStatic:!0,file:K(u),page:f?c.ssr.dynamic[f]:void 0,fallback:p.fallback};const h=f&&c.ssr.dynamic[f];if(h)return{isData:!1,isRender:!0,page:h};const m=f&&c.html.dynamic[f];return m?{isData:!1,isStatic:!0,file:m}:Y(t,r,n)};const J=(e,t)=>{const r=`/_next/data/${t}`;return"/"===e?`${r}/index.json`:`${r}${e}.json`},Q={__prerender_bypass:"",__next_preview_data:""},Z=e=>(e||[]).reduce(((e,t)=>{const r=P(t.value);return ee(r)?r:e}),Q),ee=e=>!(!e.__next_preview_data||!e.__prerender_bypass);function te(e,t,r){let n;if(t){const[r,o]=e.split("?");n=`${r}?${t}${o?`&${o}`:""}`}else n=e;const o=r;return{isRedirect:!0,status:o,statusDescription:i.STATUS_CODES[o]||"",headers:{location:[{key:"Location",value:n}],refresh:308===r?[{key:"Refresh",value:`0;url=${n}`}]:[],"cache-control":[{key:"Cache-Control",value:"s-maxage=0"}]}}}async function re(e,t,r){var n,o,i;if(!1===(null===(n=r.i18n)||void 0===n?void 0:n.localeDetection))return;const a=await async function(e,t){var r,n,o,i,a,s;const c=null===(r=t.i18n)||void 0===r?void 0:r.domains,u=e.headers.host;if(c&&u&&u.length>0){const t=u[0].value.split(":")[0],r=e.headers["accept-language"],l=r&&(null===(n=r[0])||void 0===n?void 0:n.value),d=e.headers.cookie?null===(o=e.headers.cookie[0])||void 0===o?void 0:o.value:void 0;let f,p=[];d&&(f=P(d).NEXT_LOCALE),p=f?[f.toLowerCase()]:(await Promise.resolve().then((function(){return require("./index-52fac20a.js")})).then((function(e){return e.index}))).languages(l).map((e=>e.toLowerCase()));const h=c.find((e=>e.domain===t));if(h)for(const e of p)if((null===(i=h.defaultLocale)||void 0===i?void 0:i.toLowerCase())===e||(null===(a=h.locales)||void 0===a?void 0:a.map((e=>e.toLowerCase())).includes(e)))return;for(const t of p)for(const r of c)if(r.defaultLocale.toLowerCase()===t)return`${r.domain}${e.uri}`;for(const t of p)for(const r of c)if(null===(s=r.locales)||void 0===s?void 0:s.map((e=>e.toLowerCase())).includes(t))return`${r.domain}${e.uri}`}}(e,r);if(a)return a;const s=r.basePath,c=t.trailingSlash,u=s?`${s}${c?"/":""}`:"/",l=e.headers.cookie?null===(o=e.headers.cookie[0])||void 0===o?void 0:o.value:void 0;if(e.uri===u&&l){const e=P(l).NEXT_LOCALE;if(e)return await M(e,t,r)}const d=e.headers["accept-language"],f=d&&(null===(i=d[0])||void 0===i?void 0:i.value);return e.uri===u&&f?await M(f,t,r):void 0}const ne=(e,t)=>{const{headers:r}=e;return function(e,t){var r;if(t&&t.username&&t.password){const n="Basic "+Buffer.from(t.username+":"+t.password).toString("base64");if(!e||(null===(r=e[0])||void 0===r?void 0:r.value)!==n)return{isUnauthorized:!0,status:401,statusDescription:"Unauthorized",body:"Unauthorized",headers:{"www-authenticate":[{key:"WWW-Authenticate",value:"Basic"}]}}}}(r.authorization,t.authentication)},oe=(e,t)=>{const r=function(e,t){var r;const n=D(e.uri,t),o=null!==(r=t.redirects)&&void 0!==r?r:[];for(const e of o){const t=j(n,e.source);if(t){const r=F(e.destination,t.params);return r?{path:r,statusCode:e.statusCode}:null}}return null}(e,t);if(r){const{path:t,statusCode:n}=r;return te(t,e.querystring,n)}},ie=(e,t)=>{const r=decodeURI(e);if(t.publicFiles&&t.publicFiles[r])return{isPublicFile:!0,file:e}},ae=async(e,t,r,n)=>{const o=ne(e,t);if(o)return o;const i=((e,t)=>{const r=function(e,t){const r=e.headers.host;if(r&&r.length>0){const n=r[0].value,o=t.domainRedirects;if(o&&o[n])return`${o[n]}${e.uri}`}}(e,t);if(r)return te(r,e.querystring,308)})(e,t);if(i)return i;const a=G(e.uri,n),s=a.endsWith("/404"),c=a.startsWith("/_next/data"),u=ie(a,t),l=!s&&((e,t,r)=>{const n=function(e,t,r){const{uri:n}=e;if(r){if(n.endsWith("/"))return n.slice(0,-1)}else if(/^\/[^/]/.test(e.uri)){const e=t.trailingSlash;if(!e&&n.endsWith("/"))return n.slice(0,-1);if(e&&!n.endsWith("/"))return n+"/"}}(e,t,r);if(n)return te(n,e.querystring,308)})(e,t,c||!!u);if(l)return l;if(u)return u;const d=oe(e,n)||await(async(e,t,r)=>{const n=await re(e,t,r);if(n)return te(n,e.querystring,307)})(e,t,n);if(d)return d;const f=await(async(e,t)=>{const r=Z(e);if(ee(r))try{return(await Promise.resolve().then((function(){return require("./index-253b0c60.js")})).then((function(e){return e.index}))).verify(r.__next_preview_data,t),!0}catch(e){console.warn("Found preview headers without valid authentication token")}return!1})(e.headers.cookie,r.preview.previewModeSigningKey);return c?((e,t,r,n)=>{var o,i;const{buildId:a,pages:s}=t,c=D(((e,t)=>{const r=`/_next/data/${t}`;return e.startsWith(r)?e.slice(r.length).replace(/\.json$/,"").replace(/^(\/index)?$/,"/"):e})(e,a),r);if(s.ssg.nonDynamic[c]&&!n){const e=s.ssg.nonDynamic[c],t=null!==(o=e.srcRoute)&&void 0!==o?o:c;return{isData:!0,isStatic:!0,file:J(c,a),page:s.ssr.nonDynamic[t],revalidate:e.initialRevalidateSeconds}}if((null!==(i=s.ssg.notFound)&&void 0!==i?i:{})[c]&&!n)return V(e,t,r);if(s.ssr.nonDynamic[c])return{isData:!0,isRender:!0,page:s.ssr.nonDynamic[c]};const u=H(c,s.dynamic),l=u&&s.ssg.dynamic[u];if(l&&!n)return{isData:!0,isStatic:!0,file:J(c,a),page:u?s.ssr.dynamic[u]:void 0,fallback:l.fallback};const d=u&&s.ssr.dynamic[u];return d?{isData:!0,isRender:!0,page:d}:V(e,t,r)})(a,t,n,f):X(e,e.uri,t,n,f)},se=async(e,t,r,n,o,i)=>{var a;console.error(`Error rendering page: ${r.page}. Error:\n${e}\nRendering Next.js error page.`);const{req:s,res:c}=t,u=q(null!==(a=s.url)&&void 0!==a?a:"",o),l=`${u}/500`;if(n.pages.html.nonDynamic[l]||n.pages.ssg.nonDynamic[l])return{isData:r.isData,isStatic:!0,file:`pages${u}/500.html`,statusCode:500};{c.statusCode=500;const e=i("./pages/_error.js");await Promise.race([e.render(s,c),t.responsePromise])}},ce=async(e,t,r,n,o)=>{const{req:i,res:a}=e;k(e,n),i.url&&n.i18n&&!t.isData&&(i.url=D(i.url,n,O(z(e),n))),t.statusCode&&(a.statusCode=t.statusCode);const s=o(t.page);try{if(t.isData){const{renderOpts:e}=await s.renderReqToHTML(i,a,"passthrough");a.setHeader("Content-Type","application/json"),a.end(JSON.stringify(e.pageData))}else await Promise.race([s.render(i,a),e.responsePromise])}catch(i){return se(i,e,t,r,n,o)}},ue=async(e,t,r,n,o)=>{const i=z(e),a=await ae(i,t,r,n);return a.querystring&&(e.req.url=`${e.req.url}${i.querystring?"&":"?"}${a.querystring}`),a.isRedirect?((e,t)=>{B(e,t),e.res.statusCode=t.status,e.res.statusMessage=t.statusDescription,e.res.end()})(e,a):a.isRender?ce(e,a,t,n,o):a.isUnauthorized?((e,t)=>{B(e,t),e.res.statusCode=t.status,e.res.statusMessage=t.statusDescription,e.res.end()})(e,a):a};var le=(()=>{var e={343:(e,t,r)=>{r.r(t),r.d(t,{Observable:()=>y,combineLatest:()=>b,default:()=>w,merge:()=>_,zip:()=>T});const n=()=>"function"==typeof Symbol,o=e=>n()&&Boolean(Symbol[e]),i=e=>o(e)?Symbol[e]:"@@"+e;n()&&!o("observable")&&(Symbol.observable=Symbol("observable"));const a=i("iterator"),s=i("observable"),c=i("species");function u(e,t){let r=e[t];if(null!=r){if("function"!=typeof r)throw new TypeError(r+" is not a function");return r}}function l(e){let t=e.constructor;return void 0!==t&&(t=t[c],null===t&&(t=void 0)),void 0!==t?t:y}function d(e){d.log?d.log(e):setTimeout((()=>{throw e}))}function f(e){Promise.resolve().then((()=>{try{e()}catch(e){d(e)}}))}function p(e){let t=e._cleanup;if(void 0!==t&&(e._cleanup=void 0,t))try{if("function"==typeof t)t();else{let e=u(t,"unsubscribe");e&&e.call(t)}}catch(e){d(e)}}function h(e){e._observer=void 0,e._queue=void 0,e._state="closed"}function m(e,t,r){e._state="running";let n=e._observer;try{let o=u(n,t);switch(t){case"next":o&&o.call(n,r);break;case"error":if(h(e),!o)throw r;o.call(n,r);break;case"complete":h(e),o&&o.call(n)}}catch(e){d(e)}"closed"===e._state?p(e):"running"===e._state&&(e._state="ready")}function v(e,t,r){if("closed"!==e._state){if("buffering"!==e._state)return"ready"!==e._state?(e._state="buffering",e._queue=[{type:t,value:r}],void f((()=>function(e){let t=e._queue;if(t){e._queue=void 0,e._state="ready";for(let r=0;r<t.length&&(m(e,t[r].type,t[r].value),"closed"!==e._state);++r);}}(e)))):void m(e,t,r);e._queue.push({type:t,value:r})}}class g{constructor(e,t){this._cleanup=void 0,this._observer=e,this._queue=void 0,this._state="initializing";let r=new E(this);try{this._cleanup=t.call(void 0,r)}catch(e){r.error(e)}"initializing"===this._state&&(this._state="ready")}get closed(){return"closed"===this._state}unsubscribe(){"closed"!==this._state&&(h(this),p(this))}}class E{constructor(e){this._subscription=e}get closed(){return"closed"===this._subscription._state}next(e){v(this._subscription,"next",e)}error(e){v(this._subscription,"error",e)}complete(){v(this._subscription,"complete")}}class y{constructor(e){if(!(this instanceof y))throw new TypeError("Observable cannot be called as a function");if("function"!=typeof e)throw new TypeError("Observable initializer must be a function");this._subscriber=e}subscribe(e){return"object"==typeof e&&null!==e||(e={next:e,error:arguments[1],complete:arguments[2]}),new g(e,this._subscriber)}forEach(e){return new Promise(((t,r)=>{if("function"!=typeof e)return void r(new TypeError(e+" is not a function"));function n(){o.unsubscribe(),t()}let o=this.subscribe({next(t){try{e(t,n)}catch(e){r(e),o.unsubscribe()}},error:r,complete:t})}))}map(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return new(l(this))((t=>this.subscribe({next(r){try{r=e(r)}catch(e){return t.error(e)}t.next(r)},error(e){t.error(e)},complete(){t.complete()}})))}filter(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");return new(l(this))((t=>this.subscribe({next(r){try{if(!e(r))return}catch(e){return t.error(e)}t.next(r)},error(e){t.error(e)},complete(){t.complete()}})))}reduce(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");let t=l(this),r=arguments.length>1,n=!1,o=arguments[1];return new t((t=>this.subscribe({next(i){let a=!n;if(n=!0,!a||r)try{o=e(o,i)}catch(e){return t.error(e)}else o=i},error(e){t.error(e)},complete(){if(!n&&!r)return t.error(new TypeError("Cannot reduce an empty sequence"));t.next(o),t.complete()}})))}concat(...e){let t=l(this);return new t((r=>{let n,o=0;return function i(a){n=a.subscribe({next(e){r.next(e)},error(e){r.error(e)},complete(){o===e.length?(n=void 0,r.complete()):i(t.from(e[o++]))}})}(this),()=>{n&&(n.unsubscribe(),n=void 0)}}))}flatMap(e){if("function"!=typeof e)throw new TypeError(e+" is not a function");let t=l(this);return new t((r=>{let n=[],o=this.subscribe({next(o){if(e)try{o=e(o)}catch(e){return r.error(e)}let a=t.from(o).subscribe({next(e){r.next(e)},error(e){r.error(e)},complete(){let e=n.indexOf(a);e>=0&&n.splice(e,1),i()}});n.push(a)},error(e){r.error(e)},complete(){i()}});function i(){o.closed&&0===n.length&&r.complete()}return()=>{n.forEach((e=>e.unsubscribe())),o.unsubscribe()}}))}[s](){return this}static from(e){let t="function"==typeof this?this:y;if(null==e)throw new TypeError(e+" is not an object");let r=u(e,s);if(r){let n=r.call(e);if(Object(n)!==n)throw new TypeError(n+" is not an object");return function(e){return e instanceof y}(n)&&n.constructor===t?n:new t((e=>n.subscribe(e)))}if(o("iterator")&&(r=u(e,a),r))return new t((t=>{f((()=>{if(!t.closed){for(let n of r.call(e))if(t.next(n),t.closed)return;t.complete()}}))}));if(Array.isArray(e))return new t((t=>{f((()=>{if(!t.closed){for(let r=0;r<e.length;++r)if(t.next(e[r]),t.closed)return;t.complete()}}))}));throw new TypeError(e+" is not observable")}static of(...e){return new("function"==typeof this?this:y)((t=>{f((()=>{if(!t.closed){for(let r=0;r<e.length;++r)if(t.next(e[r]),t.closed)return;t.complete()}}))}))}static get[c](){return this}}function _(...e){return new y((t=>{if(0===e.length)return y.from([]);let r=e.length,n=e.map((e=>y.from(e).subscribe({next(e){t.next(e)},error(e){t.error(e)},complete(){0==--r&&t.complete()}})));return()=>n.forEach((e=>e.unsubscribe()))}))}function b(...e){return new y((t=>{if(0===e.length)return y.from([]);let r=e.length,n=new Set,o=!1,i=e.map((()=>{})),a=e.map(((a,s)=>y.from(a).subscribe({next(r){if(i[s]=r,!o){if(n.add(s),n.size!==e.length)return;n=null,o=!0}t.next(Array.from(i))},error(e){t.error(e)},complete(){0==--r&&t.complete()}})));return()=>a.forEach((e=>e.unsubscribe()))}))}function T(...e){return new y((t=>{if(0===e.length)return y.from([]);let r=e.map((()=>[]));function n(){return r.some(((e,t)=>0===e.length&&o[t].closed))}let o=e.map(((e,o)=>y.from(e).subscribe({next(e){r[o].push(e),r.every((e=>e.length>0))&&(t.next(r.map((e=>e.shift()))),n()&&t.complete())},error(e){t.error(e)},complete(){n()&&t.complete()}})));return()=>o.forEach((e=>e.unsubscribe()))}))}n()&&Object.defineProperty(y,Symbol("extensions"),{value:{symbol:s,hostReportError:d},configurable:!0});const w=y}},t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={exports:{}},i=!0;try{e[n](o,o.exports,r),i=!1}finally{i&&delete t[n]}return o.exports}return r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.ab=__dirname+"/",r(343)})(),de="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function fe(e){var t={exports:{}};return e(t,t.exports),t.exports}fe((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.SERVER_DIRECTORY=t.PAGES_MANIFEST=t.SERVER_PROPS_ID=t.CLIENT_STATIC_FILES_RUNTIME_WEBPACK=t.PERMANENT_REDIRECT_STATUS=t.SERVER_FILES_MANIFEST=t.STATIC_PROPS_ID=t.BUILD_MANIFEST=t.BLOCKED_PAGES=t.STATIC_STATUS_PAGES=t.PRERENDER_MANIFEST=t.DEV_CLIENT_PAGES_MANIFEST=t.OPTIMIZED_FONT_PROVIDERS=t.TEMPORARY_REDIRECT_STATUS=t.SERVERLESS_DIRECTORY=t.EXPORT_MARKER=t.GOOGLE_FONT_PROVIDER=t.PHASE_PRODUCTION_BUILD=t.CLIENT_STATIC_FILES_RUNTIME_MAIN=t.BUILD_ID_FILE=t.CONFIG_FILE=t.CLIENT_STATIC_FILES_RUNTIME=t.PHASE_PRODUCTION_SERVER=t.EXPORT_DETAIL=t.IMAGES_MANIFEST=t.CLIENT_STATIC_FILES_RUNTIME_AMP=t.CLIENT_PUBLIC_FILES_PATH=t.CLIENT_STATIC_FILES_RUNTIME_POLYFILLS_SYMBOL=t.STRING_LITERAL_DROP_BUNDLE=t.TRACE_OUTPUT_VERSION=t.CLIENT_STATIC_FILES_RUNTIME_REACT_REFRESH=t.FONT_MANIFEST=t.REACT_LOADABLE_MANIFEST=t.ROUTES_MANIFEST=t.CLIENT_STATIC_FILES_PATH=t.BODY_RENDER_TARGET=t.PHASE_EXPORT=t.PHASE_DEVELOPMENT_SERVER=void 0;t.PHASE_EXPORT="phase-export";t.PHASE_PRODUCTION_BUILD="phase-production-build";t.PHASE_PRODUCTION_SERVER="phase-production-server";t.PHASE_DEVELOPMENT_SERVER="phase-development-server";t.PAGES_MANIFEST="pages-manifest.json";t.BUILD_MANIFEST="build-manifest.json";t.EXPORT_MARKER="export-marker.json";t.EXPORT_DETAIL="export-detail.json";t.PRERENDER_MANIFEST="prerender-manifest.json";t.ROUTES_MANIFEST="routes-manifest.json";t.IMAGES_MANIFEST="images-manifest.json";t.SERVER_FILES_MANIFEST="required-server-files.json";t.DEV_CLIENT_PAGES_MANIFEST="_devPagesManifest.json";t.REACT_LOADABLE_MANIFEST="react-loadable-manifest.json";t.FONT_MANIFEST="font-manifest.json";t.SERVER_DIRECTORY="server";t.SERVERLESS_DIRECTORY="serverless";t.CONFIG_FILE="next.config.js";t.BUILD_ID_FILE="BUILD_ID";t.BLOCKED_PAGES=["/_document","/_app","/_error"];t.CLIENT_PUBLIC_FILES_PATH="public";t.CLIENT_STATIC_FILES_PATH="static";t.CLIENT_STATIC_FILES_RUNTIME="runtime";t.BODY_RENDER_TARGET="__NEXT_BODY_RENDER_TARGET__";t.STRING_LITERAL_DROP_BUNDLE="__NEXT_DROP_CLIENT_FILE__";t.CLIENT_STATIC_FILES_RUNTIME_MAIN="main";t.CLIENT_STATIC_FILES_RUNTIME_REACT_REFRESH="react-refresh";t.CLIENT_STATIC_FILES_RUNTIME_AMP="amp";t.CLIENT_STATIC_FILES_RUNTIME_WEBPACK="webpack";const r=Symbol("polyfills");t.CLIENT_STATIC_FILES_RUNTIME_POLYFILLS_SYMBOL=r;t.TEMPORARY_REDIRECT_STATUS=307;t.PERMANENT_REDIRECT_STATUS=308;t.STATIC_PROPS_ID="__N_SSG";t.SERVER_PROPS_ID="__N_SSP";const n="https://fonts.googleapis.com/css";t.GOOGLE_FONT_PROVIDER=n;const o=[{url:n,preconnect:"https://fonts.gstatic.com"},{url:"https://use.typekit.net",preconnect:"https://use.typekit.net"}];t.OPTIMIZED_FONT_PROVIDERS=o;t.STATIC_STATUS_PAGES=["/500"];t.TRACE_OUTPUT_VERSION=1}));var pe,he=async function(e){const t=[];return await function(e){return me.default.prototype.concat.call(...e)}(e).forEach((e=>{t.push(e)})),t.join("")},me=(pe=le)&&pe.__esModule?pe:{default:pe};const ve=async(e,t,r,n)=>{var o;const i=Y(null!==(o=e.req.url)&&void 0!==o?o:"",t,r);return i.isStatic?i:await ce(e,i,t,r,n)},ge=async(e,t,r,n,o)=>{const{req:i,res:a}=e;k(e,n);const s=o(t.page);try{const{html:c,renderOpts:u}=await(async(e,t,r,n)=>{const{renderOpts:o,html:i}=await e.renderReqToHTML(t,r,n);let a;try{a="string"==typeof i?i:i?await he([i]):""}catch(n){console.log("Falling back to using page's rendering function for html"),a=await e.renderReqToHTML(t,r)}return{html:a,renderOpts:o}})(s,i,a,"passthrough");return u.isNotFound?t.isData?(a.setHeader("Content-Type","application/json"),a.statusCode=404,void a.end(JSON.stringify({notFound:!0}))):ve(e,r,n,o):{isStatic:!1,route:t,html:c,renderOpts:u}}catch(i){return se(i,e,t,r,n,o)}},Ee=e=>{const{initialRevalidateSeconds:t}=e;if(!(e.expiresHeader||e.lastModifiedHeader&&"number"==typeof t))return!1;const r=e.expiresHeader?new Date(e.expiresHeader):((e,t)=>new Date(new Date(e).getTime()+1e3*t))(e.lastModifiedHeader,t),n=Math.ceil(Math.max(0,(r.getTime()-Date.now())/1e3));return{secondsRemainingUntilRevalidation:n,cacheControl:`public, max-age=0, s-maxage=${n}, must-revalidate`}},ye=["connection","expect","keep-alive","proxy-authenticate","proxy-authorization","proxy-connection","trailer","upgrade","x-accel-buffering","x-accel-charset","x-accel-limit-rate","x-accel-redirect","x-cache","x-forwarded-proto","x-real-ip","content-length","host","transfer-encoding","via"],_e=["x-amz-cf-","x-amzn-","x-edge-"];function be(e){const t=e.toLowerCase();for(const e of _e)if(t.startsWith(e))return!0;return ye.includes(t)}const Te=async(e,t,r)=>{var n;const o=e.Records[0].cf.request,{req:i,res:a,responsePromise:s}=b(e.Records[0].cf,{enableHTTPCompression:t});return await async function(e,t,r,n){const{default:o}=await Promise.resolve().then((function(){return require("./index-9e574644.js")})),i={};let a;if(Object.assign(i,t.headers),i.hasOwnProperty("host")&&delete i.host,n){const r=Buffer.from(n,"base64").toString("utf8");a=await o(e,{headers:i,method:t.method,body:r,compress:!1,redirect:"manual"})}else a=await o(e,{headers:i,method:t.method,compress:!1,redirect:"manual"});for(const[e,t]of a.headers.entries())be(e)||r.setHeader(e,t);r.statusCode=a.status,r.end(await a.buffer())}(r+(o.querystring?"?":"")+o.querystring,i,a,null===(n=o.body)||void 0===n?void 0:n.data),await s},we=["connection","expect","keep-alive","proxy-authenticate","proxy-authorization","proxy-connection","trailer","upgrade","x-accel-buffering","x-accel-charset","x-accel-limit-rate","x-accel-redirect","x-cache","x-forwarded-proto","x-real-ip"],Se=["x-amz-cf-","x-amzn-","x-edge-"];function Re(e){const t=e.toLowerCase();for(const e of Se)if(t.startsWith(e))return!0;return we.includes(t)}const Ce=e=>{var t;const{region:r,domainName:n}=(null===(t=e.origin)||void 0===t?void 0:t.s3)||{};return r&&(null==n?void 0:n.includes(r))?null==n?void 0:n.replace(`.s3.${r}.amazonaws.com`,""):null==n?void 0:n.replace(".s3.amazonaws.com","")};const xe=f.default.basePath,Ie=e=>e?{now:()=>a.performance.now(),log:(e,t,r)=>{t&&r&&console.log(`${e}: ${r-t} (ms)`)}}:{now:()=>0,log:()=>{}},Pe=(e,t,r)=>{var n;const o=null===(n=e.origin)||void 0===n?void 0:n.s3,i=(e=>{if("us-east-1"===e.region)return e.domainName;if(!e.domainName.includes(e.region))return e.domainName.replace("s3.amazonaws.com",`s3.${e.region}.amazonaws.com`);return e.domainName})(o);var a;return o.domainName=i,o.path=r,e.uri=t,a=i,e.headers.host=[{key:"host",value:a}],e},Le=async({event:e,manifest:t,prerenderManifest:r,routesManifest:n})=>{const o=e.Records[0].cf.request,{req:i,res:a,responsePromise:s}=b(e.Records[0].cf,{enableHTTPCompression:t.enableHTTPCompression}),{now:c,log:u}=Ie(t.logLambdaExecutionTimes);let l=null;const d=await ue({req:i,res:a,responsePromise:s},t,r,n,(e=>{const t=c(),r=require(`./${e}`),n=l=c();return u("require JS execution time",t,n),r}));if(l){const e=c();u("SSR execution time",l,e)}if(!d)return await s;if(d.isPublicFile){const{file:e}=d;return Pe(o,e,`${n.basePath}/deploy-${t.buildId}/public`)}if(d.isStatic){const{file:e,isData:r}=d,i=r?`${n.basePath}/deploy-${t.buildId}`:`${n.basePath}/deploy-${t.buildId}/static-pages/${t.buildId}`,a=r?e:e.slice("pages".length);return Pe(o,a,i)}const f=d,{path:p}=f;return Te(e,t.enableHTTPCompression,p)},Ae=async({event:e,manifest:t,prerenderManifest:r,routesManifest:n})=>{var o,i,a,s,c,u,l,d,f,p,h,m;const g=e.Records[0].cf.response,E=e.Records[0].cf.request,y=Ce(E),_=E.uri;E.uri=((e,t)=>{if(ie(e,t))return`${xe}${e}`;let r=`${xe}${e.replace(/(\.html)?$/,t.trailingSlash?"/":"")}`;return r=r.replace(/\/index$/,"/"),r})(_,t);const T=await ae(E,t,r,n),w=T.isStatic?T:void 0,S=null==T?void 0:T.statusCode;if("403"!==g.status&&"404"!==g.status){if(g.headers={...g.headers,...U(E.uri,n)},404===S)return g.status="404",g.statusDescription="Not Found",g;if(500===S)return g.status="500",g.statusDescription="Internal Server Error",g.headers["cache-control"]=[{key:"Cache-Control",value:"public, max-age=0, s-maxage=0, must-revalidate"}],g;const e=Ee({expiresHeader:(null===(a=null===(i=null===(o=g.headers)||void 0===o?void 0:o.expires)||void 0===i?void 0:i[0])||void 0===a?void 0:a.value)||"",lastModifiedHeader:(null===(u=null===(c=null===(s=g.headers)||void 0===s?void 0:s["last-modified"])||void 0===c?void 0:c[0])||void 0===u?void 0:u.value)||"",initialRevalidateSeconds:null==w?void 0:w.revalidate});if(e&&(g.headers["cache-control"]=[{key:"Cache-Control",value:e.cacheControl}],delete g.headers.expires,(null==w?void 0:w.page)&&0===e.secondsRemainingUntilRevalidation)){const e=null!==(l=t.regenerationQueueName)&&void 0!==l?l:`${y}.fifo`;if(!e)throw new Error("Regeneration queue name is undefined.");const{throttle:r}=await(async e=>{var t,r,n;const{region:o}=(null===(t=e.request.origin)||void 0===t?void 0:t.s3)||{},i=Ce(e.request),a=e.queueName;if(!i)throw new Error("Expected bucket name to be defined");if(!o)throw new Error("Expected region to be defined");const{SQSClient:s,SendMessageCommand:c}=await Promise.resolve().then((function(){return require("./index-a033b08c.js")})),u=new s({region:o,maxAttempts:1}),l={region:o,bucketName:i,cloudFrontEventRequest:e.request,basePath:e.basePath,pagePath:e.pagePath};try{const t=v.createHash("md5").update(e.request.uri).digest("hex");return await u.send(new c({QueueUrl:`https://sqs.${o}.amazonaws.com/${a}`,MessageBody:JSON.stringify(l),MessageDeduplicationId:(null===(r=e.response.headers.etag)||void 0===r?void 0:r[0].value)||new Date(null===(n=e.response.headers["last-modified"])||void 0===n?void 0:n[0].value).getTime().toString(),MessageGroupId:t})),{throttle:!1}}catch(e){if("RequestThrottled"===e.code)return{throttle:!0};throw e}})({basePath:`${xe}/deploy-${t.buildId}`,request:E,response:g,pagePath:w.page,queueName:e});r&&(g.headers["cache-control"]=[{key:"Cache-Control",value:(R=1,{secondsRemainingUntilRevalidation:R,cacheControl:`public, max-age=0, s-maxage=${R}, must-revalidate`}).cacheControl}])}return g}var R;if("PUT"===E.method||"DELETE"===E.method)return g;const{req:C,res:x,responsePromise:I}=b(e.Records[0].cf,{enableHTTPCompression:t.enableHTTPCompression}),P=await(async(e,t,r,n,o)=>{if(t.isRender)return ce(e,t,r,n,o);if(t.isStatic){const i=t;if((i.fallback&&i.isData||null===i.fallback)&&i.page)return ge(e,i,r,n,o);if(i.fallback)return{...i,file:`pages${i.fallback}`}}return await ve(e,r,n,o)})({req:C,res:x,responsePromise:I},T,t,n,(e=>require(`./${e}`)));if(!P)return await I;const{S3Client:L}=await Promise.resolve().then((function(){return require("./S3Client-71a1a276.js")})),A=new L({region:null===(f=null===(d=E.origin)||void 0===d?void 0:d.s3)||void 0===f?void 0:f.region,maxAttempts:3});let N=`${xe}/deploy-${t.buildId}`;if(N=`${N.replace(/^\//,"")}/`,P.isStatic){const e=P.file.slice("pages".length),r=`${N}static-pages/${t.buildId}${e}`,{GetObjectCommand:n}=await Promise.resolve().then((function(){return require("./GetObjectCommand-1e69dc8c.js")})),o=await Promise.resolve().then((function(){return require("./index-891c56ba.js")})).then((function(e){return e.index})),i={Bucket:y,Key:r},a=await A.send(new n(i)),s=await o.default(a.Body),c=P.statusCode||200,u=500===c?"public, max-age=0, s-maxage=0, must-revalidate":null!==(p=a.CacheControl)&&void 0!==p?p:P.fallback?"public, max-age=0, s-maxage=0, must-revalidate":"public, max-age=0, s-maxage=2678400, must-revalidate";return x.writeHead(c,{"Cache-Control":u,"Content-Type":"text/html"}),x.end(s),await I}const{renderOpts:O,html:D}=P,{expires:$}=await(async e=>{const{S3Client:t}=await Promise.resolve().then((function(){return require("./S3Client-71a1a276.js")})),r=new t({region:e.region,maxAttempts:3}),n=e.basePath?`${e.basePath.replace(/^\//,"")}/`:"",o=e.uri.replace(/^\/$/,"index").replace(/^\//,"").replace(/\.(json|html)$/,"").replace(/^_next\/data\/[^\/]*\//,""),i=`_next/data/${e.buildId}/${o}.json`,a=`static-pages/${e.buildId}/${o}.html`,s=e.revalidate?void 0:"public, max-age=0, s-maxage=2678400, must-revalidate",c=e.revalidate?new Date((new Date).getTime()+1e3*e.revalidate):void 0,u={Bucket:e.bucketName,Key:`${n}${i}`,Body:JSON.stringify(e.pageData),ContentType:"application/json",CacheControl:s,Expires:c},l={Bucket:e.bucketName,Key:`${n}${a}`,Body:e.html,ContentType:"text/html",CacheControl:s,Expires:c},{PutObjectCommand:d}=await Promise.resolve().then((function(){return require("./PutObjectCommand-17deb54e.js")}));return await Promise.all([r.send(new d(u)),r.send(new d(l))]),{cacheControl:s,expires:c}})({html:D,uri:_,basePath:`${xe}/deploy-${t.buildId}`,bucketName:y||"",buildId:t.buildId,pageData:O.pageData,region:(null===(m=null===(h=E.origin)||void 0===h?void 0:h.s3)||void 0===m?void 0:m.region)||"",revalidate:O.revalidate}),M=$?Ee({expiresHeader:$.toJSON(),lastModifiedHeader:void 0,initialRevalidateSeconds:null==w?void 0:w.revalidate}):null,q=M&&M.cacheControl||"public, max-age=0, s-maxage=2678400, must-revalidate";return x.setHeader("Cache-Control",q),P.route.isData?(x.setHeader("Content-Type","application/json"),x.end(JSON.stringify(O.pageData))):(x.setHeader("Content-Type","text/html"),x.end(D)),await I},Ne=e=>"origin-response"===e.Records[0].cf.config.eventType;exports.commonjsGlobal=de,exports.createCommonjsModule=fe,exports.getAugmentedNamespace=function(e){if(e.__esModule)return e;var t=Object.defineProperty({},"__esModule",{value:!0});return Object.keys(e).forEach((function(r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})})),t},exports.handler=async e=>{!function(){try{const e="{{ _SST_NEXTJS_SITE_ENVIRONMENT_ }}";process.env={...process.env,...e}}catch(e){console.log("Failed to set SST NextjsSite environment."),console.log(e)}}();const t=d.default;let r;const n=l.default,o=f.default,{now:i,log:a}=Ie(t.logLambdaExecutionTimes),s=i();r=Ne(e)?await Ae({event:e,manifest:t,prerenderManifest:n,routesManifest:o}):await Le({event:e,manifest:t,prerenderManifest:n,routesManifest:o}),r.headers&&function(e){for(const t in e)Re(t)&&delete e[t]}(r.headers);return a("handler execution time",s,i()),r};
;