UNPKG

presta

Version:

Hyper minimal framework for the modern web.

3 lines (2 loc) 11.4 kB
var V=Object.create;var n=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var q=Object.getOwnPropertyNames;var B=Object.getPrototypeOf,M=Object.prototype.hasOwnProperty;var d=r=>n(r,"__esModule",{value:!0});var w=(r,e)=>{d(r);for(var a in e)n(r,a,{get:e[a],enumerable:!0})},C=(r,e,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of q(e))!M.call(r,t)&&t!=="default"&&n(r,t,{get:()=>e[t],enumerable:!(a=b(e,t))||a.enumerable});return r},i=r=>C(d(n(r!=null?V(B(r)):{},"default",r&&r.__esModule&&"default"in r?{get:()=>r.default,enumerable:!0}:{value:r,enumerable:!0})),r);w(exports,{requestToEvent:()=>H});var P=i(require("url")),g=i(require("raw-body")),E=i(require("mime-types"));var y=i(require("query-string"));function m(r){let e=(0,y.parse)(r,{arrayFormat:"comma"}),a={},t={};for(let s of Object.keys(e)){let o=e[s];Array.isArray(o)?t[s]=o:o&&(a[s]=o)}return{queryStringParameters:a,multiValueQueryStringParameters:t}}var x=/image|audio|video|application\/pdf|application\/zip|applicaton\/octet-stream/i;function u(r){return Boolean(r)&&x.test(r)}function f(r){var o,p;let e=r.rawQuery||r.path.split("?")[1],{queryStringParameters:a,multiValueQueryStringParameters:t}=m(e),s=(p=r.isBase64Encoded)!=null?p:u(((o=r==null?void 0:r.headers)==null?void 0:o["content-type"])||"");return{rawUrl:r.rawUrl||r.path,rawQuery:e,path:r.path,httpMethod:r.httpMethod||"GET",headers:r.headers||{},multiValueHeaders:r.multiValueHeaders||{},queryStringParameters:r.queryStringParameters||a,multiValueQueryStringParameters:r.multiValueQueryStringParameters||t,pathParameters:r.pathParameters||{},body:r.body||null,isBase64Encoded:s!=null?s:!1,requestContext:r.requestContext||{},resource:r.resource||""}}function h(r){let e={},a={};for(let t of Object.keys(r)){let s=t.toLowerCase(),o=r[t];!o||(Array.isArray(o)?a[s]=o:e[s]=o)}return{headers:e,multiValueHeaders:a}}async function H(r){let{url:e="",method:a}=r,{headers:t,multiValueHeaders:s}=h(r.headers),o=u(t["content-type"]||""),l=t["content-length"]?await(0,g.default)(r,{limit:"1mb",encoding:t["content-type"]&&E.default.charset(t["content-type"])||!0}):void 0,c=(0,P.parse)(e).query||"",{queryStringParameters:S,multiValueQueryStringParameters:Q}=m(c);return f({rawUrl:e,path:e,httpMethod:a,headers:t,multiValueHeaders:s,rawQuery:c,queryStringParameters:S,multiValueQueryStringParameters:Q,body:l?Buffer.from(l).toString(o?"base64":"utf8"):null,isBase64Encoded:o,pathParameters:void 0,requestContext:{},resource:""})}0&&(module.exports={requestToEvent}); //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vbGliL3V0aWxzL3JlcXVlc3RUb0V2ZW50LnRzIiwgIi4uL2xpYi9ydW50aW1lL3BhcnNlUXVlcnlTdHJpbmdQYXJhbWV0ZXJzLnRzIiwgIi4uL2xpYi9ydW50aW1lL2lzQmFzZTY0RW5jb2RlZENvbnRlbnRUeXBlLnRzIiwgIi4uL2xpYi9ydW50aW1lL25vcm1hbGl6ZUV2ZW50LnRzIiwgIi4uL2xpYi9ydW50aW1lL25vcm1hbGl6ZVJlcXVlc3RIZWFkZXJzLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyJpbXBvcnQgaHR0cCBmcm9tICdodHRwJ1xuLy8gVE9ETyBjYW4gd2UgbWFrZSB0aGlzIGZpbGUgVjggc2FmZT9cbmltcG9ydCB7IHBhcnNlIGFzIHBhcnNlVXJsIH0gZnJvbSAndXJsJ1xuaW1wb3J0IHJhd0JvZHkgZnJvbSAncmF3LWJvZHknXG5pbXBvcnQgbWltZSBmcm9tICdtaW1lLXR5cGVzJ1xuXG5pbXBvcnQgeyBub3JtYWxpemVFdmVudCB9IGZyb20gJy4uL3J1bnRpbWUvbm9ybWFsaXplRXZlbnQnXG5pbXBvcnQgeyBub3JtYWxpemVSZXF1ZXN0SGVhZGVycyB9IGZyb20gJy4uL3J1bnRpbWUvbm9ybWFsaXplUmVxdWVzdEhlYWRlcnMnXG5pbXBvcnQgeyBwYXJzZVF1ZXJ5U3RyaW5nUGFyYW1ldGVycyB9IGZyb20gJy4uL3J1bnRpbWUvcGFyc2VRdWVyeVN0cmluZ1BhcmFtZXRlcnMnXG5pbXBvcnQgeyBpc0Jhc2U2NEVuY29kZWRDb250ZW50VHlwZSB9IGZyb20gJy4uL3J1bnRpbWUvaXNCYXNlNjRFbmNvZGVkQ29udGVudFR5cGUnXG5pbXBvcnQgeyBFdmVudCB9IGZyb20gJy4uLydcblxuLyoqXG4gKiBVc2VkIGludGVybmFsbHkuIENvbnZlcnRzIGEgYGh0dHAuSW5jb21pbmdNZXNzYWdlYCB0byBhIEFXUyBMYW1iZGEgZmxhdm9yZWRcbiAqIGBFdmVudGAgb2JqZWN0LiBUaGlzIG1ldGhvZCBvbmx5IGhhcyBhY2Nlc3MgdG8gdGhlIGluY29taW5nIG1lc3NhZ2UsIHNvIGl0XG4gKiBjYW4ndCBwb3B1bGF0ZSBhbGwgYEV2ZW50YCBwcm9wZXJ0aWVzLCBsaWtlIGBwYXRoUGFyYW1ldGVyc2AuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZXF1ZXN0VG9FdmVudChyZXE6IGh0dHAuSW5jb21pbmdNZXNzYWdlKTogUHJvbWlzZTxFdmVudD4ge1xuICBjb25zdCB7IHVybDogcGF0aCA9ICcnLCBtZXRob2QgfSA9IHJlcVxuICBjb25zdCB7IGhlYWRlcnMsIG11bHRpVmFsdWVIZWFkZXJzIH0gPSBub3JtYWxpemVSZXF1ZXN0SGVhZGVycyhyZXEuaGVhZGVycylcbiAgY29uc3QgaXNCYXNlNjRFbmNvZGVkID0gaXNCYXNlNjRFbmNvZGVkQ29udGVudFR5cGUoaGVhZGVyc1snY29udGVudC10eXBlJ10gfHwgJycpXG4gIGNvbnN0IGNvbnRlbnRMZW5ndGhIZWFkZXIgPSBoZWFkZXJzWydjb250ZW50LWxlbmd0aCddXG4gIGNvbnN0IGJvZHkgPSBjb250ZW50TGVuZ3RoSGVhZGVyXG4gICAgPyBhd2FpdCByYXdCb2R5KHJlcSwge1xuICAgICAgICBsaW1pdDogJzFtYicsXG4gICAgICAgIGVuY29kaW5nOiBoZWFkZXJzWydjb250ZW50LXR5cGUnXSA/IG1pbWUuY2hhcnNldChoZWFkZXJzWydjb250ZW50LXR5cGUnXSkgfHwgdHJ1ZSA6IHRydWUsXG4gICAgICB9KVxuICAgIDogdW5kZWZpbmVkXG4gIGNvbnN0IHJhd1F1ZXJ5ID0gcGFyc2VVcmwocGF0aCkucXVlcnkgfHwgJydcbiAgY29uc3QgeyBxdWVyeVN0cmluZ1BhcmFtZXRlcnMsIG11bHRpVmFsdWVRdWVyeVN0cmluZ1BhcmFtZXRlcnMgfSA9IHBhcnNlUXVlcnlTdHJpbmdQYXJhbWV0ZXJzKHJhd1F1ZXJ5KVxuXG4gIHJldHVybiBub3JtYWxpemVFdmVudCh7XG4gICAgcmF3VXJsOiBwYXRoLFxuICAgIHBhdGgsXG4gICAgaHR0cE1ldGhvZDogbWV0aG9kIGFzIHN0cmluZyxcbiAgICBoZWFkZXJzLFxuICAgIG11bHRpVmFsdWVIZWFkZXJzLFxuICAgIHJhd1F1ZXJ5LFxuICAgIHF1ZXJ5U3RyaW5nUGFyYW1ldGVycyxcbiAgICBtdWx0aVZhbHVlUXVlcnlTdHJpbmdQYXJhbWV0ZXJzLFxuICAgIGJvZHk6IGJvZHkgPyBCdWZmZXIuZnJvbShib2R5KS50b1N0cmluZyhpc0Jhc2U2NEVuY29kZWQgPyAnYmFzZTY0JyA6ICd1dGY4JykgOiBudWxsLFxuICAgIGlzQmFzZTY0RW5jb2RlZCxcbiAgICBwYXRoUGFyYW1ldGVyczogdW5kZWZpbmVkLFxuICAgIHJlcXVlc3RDb250ZXh0OiB7fSxcbiAgICByZXNvdXJjZTogJycsXG4gIH0pXG59XG4iLCAiaW1wb3J0IHsgcGFyc2UgYXMgcGFyc2VRdWVyeSB9IGZyb20gJ3F1ZXJ5LXN0cmluZydcbmltcG9ydCB7IFBhcmFtcywgTXVsdGlWYWx1ZVBhcmFtcyB9IGZyb20gJ2xhbWJkYS10eXBlcydcblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlUXVlcnlTdHJpbmdQYXJhbWV0ZXJzKHF1ZXJ5OiBzdHJpbmcpIHtcbiAgY29uc3QgcGFyYW1zID0gcGFyc2VRdWVyeShxdWVyeSwgeyBhcnJheUZvcm1hdDogJ2NvbW1hJyB9KVxuXG4gIGNvbnN0IHF1ZXJ5U3RyaW5nUGFyYW1ldGVyczogUGFyYW1zID0ge31cbiAgY29uc3QgbXVsdGlWYWx1ZVF1ZXJ5U3RyaW5nUGFyYW1ldGVyczogTXVsdGlWYWx1ZVBhcmFtcyA9IHt9XG5cbiAgZm9yIChjb25zdCBwYXJhbSBvZiBPYmplY3Qua2V5cyhwYXJhbXMpKSB7XG4gICAgY29uc3QgdmFsdWUgPSBwYXJhbXNbcGFyYW1dXG4gICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICBtdWx0aVZhbHVlUXVlcnlTdHJpbmdQYXJhbWV0ZXJzW3BhcmFtXSA9IHZhbHVlXG4gICAgfSBlbHNlIGlmICh2YWx1ZSkge1xuICAgICAgcXVlcnlTdHJpbmdQYXJhbWV0ZXJzW3BhcmFtXSA9IHZhbHVlXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHsgcXVlcnlTdHJpbmdQYXJhbWV0ZXJzLCBtdWx0aVZhbHVlUXVlcnlTdHJpbmdQYXJhbWV0ZXJzIH1cbn1cbiIsICIvLyBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZXRsaWZ5L2NsaS9ibG9iLzI3YmI3YjliMzBkNDY1YWJlODZmODdmNDI3NGRkN2E3MWIxYjAwM2Ivc3JjL3V0aWxzL3NlcnZlLWZ1bmN0aW9ucy5qcyNMMTY3XG5jb25zdCBCQVNFXzY0X01JTUVfUkVHRVhQID0gL2ltYWdlfGF1ZGlvfHZpZGVvfGFwcGxpY2F0aW9uXFwvcGRmfGFwcGxpY2F0aW9uXFwvemlwfGFwcGxpY2F0b25cXC9vY3RldC1zdHJlYW0vaVxuXG5leHBvcnQgZnVuY3Rpb24gaXNCYXNlNjRFbmNvZGVkQ29udGVudFR5cGUoY29udGVudFR5cGU6IHN0cmluZykge1xuICByZXR1cm4gQm9vbGVhbihjb250ZW50VHlwZSkgJiYgQkFTRV82NF9NSU1FX1JFR0VYUC50ZXN0KGNvbnRlbnRUeXBlKVxufVxuIiwgImltcG9ydCB7IHBhcnNlUXVlcnlTdHJpbmdQYXJhbWV0ZXJzIH0gZnJvbSAnLi9wYXJzZVF1ZXJ5U3RyaW5nUGFyYW1ldGVycydcbmltcG9ydCB7IGlzQmFzZTY0RW5jb2RlZENvbnRlbnRUeXBlIH0gZnJvbSAnLi9pc0Jhc2U2NEVuY29kZWRDb250ZW50VHlwZSdcbmltcG9ydCB7IEV2ZW50IH0gZnJvbSAnLi4vJ1xuXG4vKipcbiAqIFRha2VzIGEgYFBhcnRpYWw8RXZlbnQ+YCBhbmQgcmV0dXJucyBgRXZlbnRgLiBSZXF1aXJlcyBhdCBsZWFzdCBhbiBgZXZlbnQucGF0aGAgcHJvcGVydHkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBub3JtYWxpemVFdmVudChldmVudDogUGljazxFdmVudCwgJ3BhdGgnPiAmIFBhcnRpYWw8T21pdDxFdmVudCwgJ3BhdGgnPj4pOiBFdmVudCB7XG4gIGNvbnN0IHJhd1F1ZXJ5ID0gZXZlbnQucmF3UXVlcnkgfHwgZXZlbnQucGF0aC5zcGxpdCgnPycpWzFdXG4gIGNvbnN0IHsgcXVlcnlTdHJpbmdQYXJhbWV0ZXJzLCBtdWx0aVZhbHVlUXVlcnlTdHJpbmdQYXJhbWV0ZXJzIH0gPSBwYXJzZVF1ZXJ5U3RyaW5nUGFyYW1ldGVycyhyYXdRdWVyeSlcbiAgY29uc3QgaXNCYXNlNjRFbmNvZGVkID0gZXZlbnQuaXNCYXNlNjRFbmNvZGVkID8/IGlzQmFzZTY0RW5jb2RlZENvbnRlbnRUeXBlKGV2ZW50Py5oZWFkZXJzPy5bJ2NvbnRlbnQtdHlwZSddIHx8ICcnKVxuXG4gIHJldHVybiB7XG4gICAgcmF3VXJsOiBldmVudC5yYXdVcmwgfHwgZXZlbnQucGF0aCxcbiAgICByYXdRdWVyeSxcbiAgICBwYXRoOiBldmVudC5wYXRoLFxuICAgIGh0dHBNZXRob2Q6IGV2ZW50Lmh0dHBNZXRob2QgfHwgJ0dFVCcsXG4gICAgaGVhZGVyczogZXZlbnQuaGVhZGVycyB8fCB7fSxcbiAgICBtdWx0aVZhbHVlSGVhZGVyczogZXZlbnQubXVsdGlWYWx1ZUhlYWRlcnMgfHwge30sXG4gICAgcXVlcnlTdHJpbmdQYXJhbWV0ZXJzOiBldmVudC5xdWVyeVN0cmluZ1BhcmFtZXRlcnMgfHwgcXVlcnlTdHJpbmdQYXJhbWV0ZXJzLFxuICAgIG11bHRpVmFsdWVRdWVyeVN0cmluZ1BhcmFtZXRlcnM6IGV2ZW50Lm11bHRpVmFsdWVRdWVyeVN0cmluZ1BhcmFtZXRlcnMgfHwgbXVsdGlWYWx1ZVF1ZXJ5U3RyaW5nUGFyYW1ldGVycyxcbiAgICBwYXRoUGFyYW1ldGVyczogZXZlbnQucGF0aFBhcmFtZXRlcnMgfHwge30sXG4gICAgYm9keTogZXZlbnQuYm9keSB8fCBudWxsLFxuICAgIGlzQmFzZTY0RW5jb2RlZDogaXNCYXNlNjRFbmNvZGVkID8/IGZhbHNlLFxuICAgIHJlcXVlc3RDb250ZXh0OiBldmVudC5yZXF1ZXN0Q29udGV4dCB8fCB7fSxcbiAgICByZXNvdXJjZTogZXZlbnQucmVzb3VyY2UgfHwgJycsXG4gIH1cbn1cbiIsICJpbXBvcnQgdHlwZSBodHRwIGZyb20gJ2h0dHAnXG5pbXBvcnQgeyBQYXJhbXMsIE11bHRpVmFsdWVQYXJhbXMgfSBmcm9tICdsYW1iZGEtdHlwZXMnXG5cbmV4cG9ydCBmdW5jdGlvbiBub3JtYWxpemVSZXF1ZXN0SGVhZGVycyhyYXdSZXF1ZXN0SGVhZGVyczogaHR0cC5JbmNvbWluZ01lc3NhZ2VbJ2hlYWRlcnMnXSkge1xuICBjb25zdCBoZWFkZXJzOiBQYXJhbXMgPSB7fVxuICBjb25zdCBtdWx0aVZhbHVlSGVhZGVyczogTXVsdGlWYWx1ZVBhcmFtcyA9IHt9XG5cbiAgZm9yIChjb25zdCBoZWFkZXIgb2YgT2JqZWN0LmtleXMocmF3UmVxdWVzdEhlYWRlcnMpKSB7XG4gICAgY29uc3Qga2V5ID0gaGVhZGVyLnRvTG93ZXJDYXNlKClcbiAgICBjb25zdCB2YWx1ZSA9IHJhd1JlcXVlc3RIZWFkZXJzW2hlYWRlcl1cblxuICAgIGlmICghdmFsdWUpIGNvbnRpbnVlXG5cbiAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgIG11bHRpVmFsdWVIZWFkZXJzW2tleV0gPSB2YWx1ZVxuICAgIH0gZWxzZSB7XG4gICAgICBoZWFkZXJzW2tleV0gPSB2YWx1ZVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiB7IGhlYWRlcnMsIG11bHRpVmFsdWVIZWFkZXJzIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICJtbEJBQUEsa0NBRUEsTUFBa0Msa0JBQ2xDLEVBQW9CLHVCQUNwQixFQUFpQix5QkNKakIsTUFBb0MsMkJBRzdCLFdBQW9DLEVBQWUsQ0FDeEQsR0FBTSxHQUFTLFlBQVcsRUFBTyxDQUFFLFlBQWEsVUFFMUMsRUFBZ0MsR0FDaEMsRUFBb0QsR0FFMUQsT0FBVyxLQUFTLFFBQU8sS0FBSyxHQUFTLENBQ3ZDLEdBQU0sR0FBUSxFQUFPLEdBQ3JCLEFBQUksTUFBTSxRQUFRLEdBQ2hCLEVBQWdDLEdBQVMsRUFDaEMsR0FDVCxHQUFzQixHQUFTLEdBSW5DLE1BQU8sQ0FBRSx3QkFBdUIsbUNDakJsQyxHQUFNLEdBQXNCLGdGQUVyQixXQUFvQyxFQUFxQixDQUM5RCxNQUFPLFNBQVEsSUFBZ0IsRUFBb0IsS0FBSyxHQ0duRCxXQUF3QixFQUFrRSxDQVBqRyxRQVFFLEdBQU0sR0FBVyxFQUFNLFVBQVksRUFBTSxLQUFLLE1BQU0sS0FBSyxHQUNuRCxDQUFFLHdCQUF1QixtQ0FBb0MsRUFBMkIsR0FDeEYsRUFBa0IsS0FBTSxrQkFBTixPQUF5QixFQUEyQixxQkFBTyxVQUFQLGNBQWlCLGtCQUFtQixJQUVoSCxNQUFPLENBQ0wsT0FBUSxFQUFNLFFBQVUsRUFBTSxLQUM5QixXQUNBLEtBQU0sRUFBTSxLQUNaLFdBQVksRUFBTSxZQUFjLE1BQ2hDLFFBQVMsRUFBTSxTQUFXLEdBQzFCLGtCQUFtQixFQUFNLG1CQUFxQixHQUM5QyxzQkFBdUIsRUFBTSx1QkFBeUIsRUFDdEQsZ0NBQWlDLEVBQU0saUNBQW1DLEVBQzFFLGVBQWdCLEVBQU0sZ0JBQWtCLEdBQ3hDLEtBQU0sRUFBTSxNQUFRLEtBQ3BCLGdCQUFpQixVQUFtQixHQUNwQyxlQUFnQixFQUFNLGdCQUFrQixHQUN4QyxTQUFVLEVBQU0sVUFBWSxJQ3RCekIsV0FBaUMsRUFBb0QsQ0FDMUYsR0FBTSxHQUFrQixHQUNsQixFQUFzQyxHQUU1QyxPQUFXLEtBQVUsUUFBTyxLQUFLLEdBQW9CLENBQ25ELEdBQU0sR0FBTSxFQUFPLGNBQ2IsRUFBUSxFQUFrQixHQUVoQyxBQUFJLENBQUMsR0FFTCxDQUFJLE1BQU0sUUFBUSxHQUNoQixFQUFrQixHQUFPLEVBRXpCLEVBQVEsR0FBTyxHQUluQixNQUFPLENBQUUsVUFBUyxxQkpIcEIsaUJBQXFDLEVBQTJDLENBQzlFLEdBQU0sQ0FBRSxJQUFLLEVBQU8sR0FBSSxVQUFXLEVBQzdCLENBQUUsVUFBUyxxQkFBc0IsRUFBd0IsRUFBSSxTQUM3RCxFQUFrQixFQUEyQixFQUFRLGlCQUFtQixJQUV4RSxFQUFPLEFBRGUsRUFBUSxrQkFFaEMsS0FBTSxjQUFRLEVBQUssQ0FDakIsTUFBTyxNQUNQLFNBQVUsRUFBUSxpQkFBa0IsVUFBSyxRQUFRLEVBQVEsa0JBQW9CLEtBRS9FLE9BQ0UsRUFBVyxZQUFTLEdBQU0sT0FBUyxHQUNuQyxDQUFFLHdCQUF1QixtQ0FBb0MsRUFBMkIsR0FFOUYsTUFBTyxHQUFlLENBQ3BCLE9BQVEsRUFDUixPQUNBLFdBQVksRUFDWixVQUNBLG9CQUNBLFdBQ0Esd0JBQ0Esa0NBQ0EsS0FBTSxFQUFPLE9BQU8sS0FBSyxHQUFNLFNBQVMsRUFBa0IsU0FBVyxRQUFVLEtBQy9FLGtCQUNBLGVBQWdCLE9BQ2hCLGVBQWdCLEdBQ2hCLFNBQVUiLAogICJuYW1lcyI6IFtdCn0K