UNPKG

houdini-adapter-node

Version:

The adapter for deploying your Houdini application as a standalone node server

2 lines (1 loc) 1.51 kB
"use strict";var v=Object.create;var c=Object.defineProperty;var x=Object.getOwnPropertyDescriptor;var j=Object.getOwnPropertyNames;var S=Object.getPrototypeOf,b=Object.prototype.hasOwnProperty;var k=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of j(t))!b.call(e,s)&&s!==n&&c(e,s,{get:()=>t[s],enumerable:!(r=x(t,s))||r.enumerable});return e};var m=(e,t,n)=>(n=e!=null?v(S(e)):{},k(t||!e||!e.__esModule?c(n,"default",{value:e,enumerable:!0}):n,e));var d=require("houdini/adapter"),i=m(require("fs"),1),f=require("http"),a=m(require("path"),1),g=require("url"),M={},T=(0,g.fileURLToPath)(M.url),p=(0,a.dirname)(T),y=(0,d.createServerAdapter)({production:!0,assetPrefix:"/assets"}),w=(0,f.createServer)((e,t)=>{if(e.url&&e.url.startsWith("/assets"))return I(e,t);y(e,t)}),l=process.env.PORT??3e3;w.listen(l,()=>{console.log(`Server is listening on port ${l} \u{1F680}`)});function I(e,t){let n=a.default.join(p,e.url==="/"?"index.html":e.url??"/"),r=a.default.extname(n),s="text/html";switch(r){case".js":s="application/javascript";break;case".css":s="text/css";break;case".json":s="application/json";break;case".png":s="image/png";break;case".jpg":s="image/jpg";break;case".ico":s="image/x-icon";break;default:s="text/html"}i.readFile(n,(o,u)=>{o?o.code==="ENOENT"?i.readFile(a.default.join(p,"404.html"),(P,h)=>{t.writeHead(404,{"Content-Type":"text/html"}),t.end(h,"utf8")}):(t.writeHead(500),t.end(`Server Error: ${o.code}`)):(t.writeHead(200,{"Content-Type":s}),t.end(u,"utf8"))})}