{"_id":"3h-serve","_rev":"18-9005ecead3da5220046dc82540b6761d","name":"3h-serve","dist-tags":{"latest":"0.8.2"},"versions":{"0.1.0":{"name":"3h-serve","version":"0.1.0","description":"A simple but powerful server.","main":"src/crtServer.js","bin":{"3h-serve":"src/cli.js"},"scripts":{"test":"node test/index.js"},"repository":{"type":"git","url":"git+https://github.com/huang2002/3h-serve.git"},"keywords":["serve","server","cli","spa","3h"],"author":{"name":"3h"},"license":"MIT","bugs":{"url":"https://github.com/huang2002/3h-serve/issues"},"homepage":"https://github.com/huang2002/3h-serve#readme","dependencies":{"3h-cli":"^1.5.0","3h-log":"^3.1.1"},"devDependencies":{"3h-join":"^2.0.0","@types/node":"^10.12.18"},"_id":"3h-serve@0.1.0","_npmVersion":"6.5.0","_nodeVersion":"10.15.0","_npmUser":{"name":"3h","email":"1340545944@qq.com"},"dist":{"integrity":"sha512-sfD4rZQEmgODoVUZjqVo3C5HSzfM/hiAFiJYsABBO55mcG7ZeyWi/J32iMgL3u5MxAyKHxFRDAuYnmM7b9lWOw==","shasum":"2ad9f01d35fef823c7f24e3bfd0d8190e1f01365","tarball":"https://registry.npmjs.org/3h-serve/-/3h-serve-0.1.0.tgz","fileCount":6,"unpackedSize":12604,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcTGjeCRA9TVsSAnZWagAAfIcP/3SJgZ8sWuC/5XZK/mFg\nZ4bMjsO3tgJTjql+5cTn67ty6NUiwttE+dnxYXbkMwXRDSCqtkQ20qs1Rkz7\ncecBivJWrUecK7nEMvZRHNHrdNdSBFvt8SbVpf9aLXNaWMbWZihp+X8OpEJy\nksvZomWbpNoEOBPZzuylHUv9XT+pC+ZaK/0LNGEhEKFWxLZIveAfa1svqaZc\nx3n0tiVxa6iUj18QhtSdC3BpusgenE816vukcPacUtVVM7NHKLvAgJpFH5L9\n9Hlh3TpUSHzHMGZhj6V2YyLsK4NKr2BNhZMB68GQJBOA9rOjYxwdt0lXke2w\nuTA7VwoE0gYHu3U+Jo9s2CxVLPugwiRAK1Nu0nE1mvUrcfFH1pgPntpFh0l4\nqY515WPvQJNoe6p04H5qg/wpZK7Z99LPgYGhBfO2f03ArRBoTjRoB8hbADYJ\nTcgEfh+2ITGGxqv1sS+5QQSYCuyGnBXkI1nMPh2gF6WJ1Hc620jQxv+Rq6fa\nsPsMKtpfF+EaixnoQa2Npqn39pbLpUhZrGpKOqJXMp9xFnh2uP1cAj6AyimX\n0G1m/qZHGPXLZeb8/zOALyO3jZ8xUBumHArsoKeMYXtAD+jNMj/BNfFpmRJv\nqvTok2XVz8/RFSb5xyWBCDVAgOG88AFCQdKPssURwHikaZyGD5PP7YGlU0j5\nM+PA\r\n=+hCa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEmBgbRFvxqlucA+MYLhIcyzmdWMTgR/pLKYrbY0HYfjAiB/dmS9GY3G0cJg4yAvR6VK+B9dvWw4aGpKilzrVr7E1A=="}]},"maintainers":[{"name":"3h","email":"1340545944@qq.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/3h-serve_0.1.0_1548511454375_0.08345411602945774"},"_hasShrinkwrap":false},"0.1.1":{"name":"3h-serve","version":"0.1.1","description":"A simple but powerful server.","main":"src/crtServer.js","bin":{"3h-serve":"src/cli.js"},"scripts":{"test":"node test/index.js"},"repository":{"type":"git","url":"git+https://github.com/huang2002/3h-serve.git"},"keywords":["serve","server","cli","spa","3h"],"author":{"name":"3h"},"license":"MIT","bugs":{"url":"https://github.com/huang2002/3h-serve/issues"},"homepage":"https://github.com/huang2002/3h-serve#readme","dependencies":{"3h-cli":"^1.5.0","3h-log":"^3.1.1"},"devDependencies":{"3h-join":"^2.0.0","@types/node":"^10.12.18"},"gitHead":"57da55a589370dd2e0bfce4483280b950c806151","_id":"3h-serve@0.1.1","_npmVersion":"6.5.0","_nodeVersion":"10.15.0","_npmUser":{"name":"3h","email":"1340545944@qq.com"},"dist":{"integrity":"sha512-zExGGtMzPCC3GRkf+hD5yPyy+uqiYLjatKU04TioC/oa7HMWEPbr9V6ML8XlBkCaw2+J1JofNnzF8w+kzT+LtQ==","shasum":"c6fab6b3c3179a60c0399b65bcb34661a71e0c12","tarball":"https://registry.npmjs.org/3h-serve/-/3h-serve-0.1.1.tgz","fileCount":7,"unpackedSize":12778,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcTGq1CRA9TVsSAnZWagAATjcP/RytyT4Ro0ugq2Bn498u\nCozATqJOGjren4PSPhM9QD3TR/sZiet7RnGHQ+wMffkHOZS3xOQG7nBwjq1s\n5/rj11A9vlubpNrFUQZxZQ4mwvemOHLMIac3Q6w51IEgNgRU/h+6UPr61sky\nz2cRHXzQ8TgEl+FodB0ZBY/BwTz7yk3KJOqF1U6RhLxhKCS9RVoqtXksQeFI\nPBRo9TliQACGkifUBTDVZ5W978J7sr+iMo5WOVWwdaT0+FVts0G0pso4CM88\noQLBvQwl1PIuJvjoVfVM/zIgCASb6CMOWjHov6v7lI2jMI7DDRxgZckHRYL1\nd6gMYylTaZqCZa7GnieuizVSbSovye4phw60WvGutyX/JnxPoBvsYhHtCEW7\nXQLS51JSqN5uD3Pr9aORHbM3x9N/2munvw5gGhvM9xm8vqIB3uCXPTA4vFHF\nmARTl6G22sd+Hh0Nq8SNv1lRThqlZ3VZGUVjjrJPzjC+Y7ZkdEoGdOv3rFaf\n9yUZZbq4Vt4yV8n2TkzKrm3Miwc7RjeNi8VzkUCuzSMuXI55ZakTrm5HIZdu\neiKfzO34lzOE2e+BWQkP7nIK2f0hREJa5VxA+sM8hH790fcLVs9YifHWppYv\nlmIIp4U+/yAMfnV245FndMzX15MpWq+w5waGOag4b5bdqmXRXbNbYvH9ffrv\nfQ+d\r\n=gOTl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD2tRCCoS1nAp+mxsANu9oD9366221a3aTVYzCv/1NIqAIhAKswZunaj05kwN+X+VXoC3EjhXGoY/A0JoZVOjblPK5g"}]},"maintainers":[{"name":"3h","email":"1340545944@qq.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/3h-serve_0.1.1_1548511924631_0.9502932418347958"},"_hasShrinkwrap":false},"0.1.2":{"name":"3h-serve","version":"0.1.2","description":"A simple but powerful server.","main":"src/crtServer.js","bin":{"3h-serve":"src/cli.js"},"scripts":{"test":"node test/index.js"},"repository":{"type":"git","url":"git+https://github.com/huang2002/3h-serve.git"},"keywords":["serve","server","cli","spa","3h"],"author":{"name":"3h"},"license":"MIT","bugs":{"url":"https://github.com/huang2002/3h-serve/issues"},"homepage":"https://github.com/huang2002/3h-serve#readme","dependencies":{"3h-cli":"^1.5.0","3h-log":"^3.1.1"},"devDependencies":{"3h-join":"^2.0.0","@types/node":"^10.12.18"},"gitHead":"0cd92e30e832dea1a8f33cfb1a38abc36f3513a4","_id":"3h-serve@0.1.2","_npmVersion":"6.5.0","_nodeVersion":"10.15.0","_npmUser":{"name":"3h","email":"1340545944@qq.com"},"dist":{"integrity":"sha512-jR5IiqjtDBC0lClEs69o1+TtY9tLKKKoQV5R1kVNgEyqQTpuFH72J19vcFy+PhP2D17Y6wZnnCUko+NzEu0Pvg==","shasum":"3560d0f2eadfead5a21d14251a11028e16645a06","tarball":"https://registry.npmjs.org/3h-serve/-/3h-serve-0.1.2.tgz","fileCount":7,"unpackedSize":12824,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcTG6LCRA9TVsSAnZWagAAcFYP/jx+TMR+WcbHSYZrjghu\npalnoQ7fSxgxvW+TbWI9oxkq/PfANv1uJKM8bqaEAQ/gMt623+XEGiQSA18c\nGusS8x7nVB9Xu+PQ9VG/xl3h8QdLu79qwteX9q1DCfWBpmOoC5osV/yg69ko\nbtt9kMc//M9rDWz0G3AMku5a6L1jq+GnRFNJxrMWKMlk5GIfsGad6E8/evoL\n0ByUwkG48bK2Qdm6Ymy6Uk8yL0G590gkbdibZghGqxd7nqmAJjl4O+Pq9y2I\nzg8Hgu2kjcYICFZDMzdq1XI88wv6Zw4fZajEmH2jNWKZyuEMQvclRMe6IzK2\nvOZRPdfgrQ46TAuBpAaxw0W6ysUfbXvhRR0TqBlO/b8/wqc828M7V/lWQRgW\ncIQ+Up/uid+qe3mJhCVUFG3l1yMWkxaLm9HIoLFT0A/DFruBwqpLnSa76UhN\n+12Bd/F1wGGhNgG0kYLh9Bk49Mwpk3uPl9H6S++JLMe4m6UNmTMC367lRG7Z\nle0kCptensqF+r++lUm5M5I8+NR5nyezI6TaYJULWQDpaexBmhLuovFIXn1E\nm1ZOkn+VVgVQ3LXSL8X5HKZvGBK10/8jdAmkr/ENqE1kUxB/g8oBLYL9iUAJ\njf+VkUgKm35qADh+nwjg4kGSXtGZyz8Da/8/JmRACLHC4mirQjwGyGINZeoH\noiVl\r\n=GKF3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDI0XJxN1byy5/CZoc04o5/4LbPGsV2zNgjDfYho4Ap9AIgNrXjeIc/R4QDH5dCuffyF3HAAhVBb8DO7QJ3oaImi7s="}]},"maintainers":[{"name":"3h","email":"1340545944@qq.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/3h-serve_0.1.2_1548512906642_0.44206714395748636"},"_hasShrinkwrap":false},"0.2.0":{"name":"3h-serve","version":"0.2.0","description":"A simple but powerful server.","main":"src/crtServer.js","bin":{"3h-serve":"src/cli.js"},"scripts":{"start":"node src/cli test --debug","help":"node src/cli -h","test":"node test/index.js"},"repository":{"type":"git","url":"git+https://github.com/huang2002/3h-serve.git"},"keywords":["serve","server","cli","spa","3h"],"author":{"name":"3h"},"license":"MIT","bugs":{"url":"https://github.com/huang2002/3h-serve/issues"},"homepage":"https://github.com/huang2002/3h-serve#readme","dependencies":{"3h-cli":"^1.5.0","3h-log":"^3.1.1"},"devDependencies":{"3h-join":"^2.0.0","@types/node":"^10.12.18"},"gitHead":"99a65bb6bd24a8b9a544f6c8dddf2c6e3c2141a8","_id":"3h-serve@0.2.0","_nodeVersion":"10.15.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-yiwNnTwgfs4ucoHH/R/zxlHvRQIgBuyWpnipxEK8G9x5iLvsFdyQZG2uB3bij8fFIQqaJkEit0LuBstJVLs/iA==","shasum":"19d1ff87c6c1a7995445b76e3b155609bdefac0a","tarball":"https://registry.npmjs.org/3h-serve/-/3h-serve-0.2.0.tgz","fileCount":8,"unpackedSize":21858,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcTvrdCRA9TVsSAnZWagAAO+wP/RKLKfzjoXldYPgxMnCF\nomiifitTo5vHY+0BRQk5oDfjYt76VPcqY5l5wcO8nmO4p97c6Bwtrwh9rl0f\nMZ+4G662xYKhJovL3ZACF0YKSRYteAUv8WPeNZbHbppr3TegccUv912m9P5D\nJ98EU+cENGpiHvb9MsOhjXOm8k62yeWJm/mSCbScS9rQoEmzUYCOgeuneFqi\nxzaghO/1JUn+TOCNBg28t5YEBAaIVEK6MHPrWXrNgaDUkFG5dnqSMlPhka/D\nYTgNYSnGWERugJtVpQdWONvUsgipVin+EwXvn8UAQn/Aprdka6i4UnXjlC8U\nbNbTFkfVZbAZcudENT9A6+vHDwHiVoijawGYxIV1eNW54jx2ZKHseMHf3+7Q\nd+J1YRVSBZNdLniM6T/fKxq1VvHpzx4nUolNHw+aucIUM2cOedXtHN/3NuLp\nlw7pPsSdNhQcSA8c0Wy4XxJbh0ArLQMnu1Ki6016ApXk2v3scMwAG4i2fXVT\nxg9o4fXlyPsCmZHXU1/Rr/j4IC2+NU33Xnmr/hYHiPIoLDXyHwjh3QSddLuI\nv385GOqxZkzpYmL7CekcCREpNAxEa/pIp2BI6d5OHybK2DmjLP62fN119+x0\n9IouNnGGiUbJkd0zqvGdVCAtedRPcjT2+tAaaLDTg85PpXghq78cnhjlRwur\niAlu\r\n=G+nz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD/i+FN6dc8hCv+SzudkQ/h7KzoTHv7NT1iYm6i5VbzzAIhAIjecp4NH1yMe6LTVg+KJti5RZgCo7XVtHwykVcMHUyt"}]},"maintainers":[{"name":"3h","email":"1340545944@qq.com"}],"_npmUser":{"name":"3h","email":"1340545944@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/3h-serve_0.2.0_1548679900133_0.34136217973617655"},"_hasShrinkwrap":false},"0.3.0":{"name":"3h-serve","version":"0.3.0","description":"A simple but powerful server.","main":"src/crtServer.js","bin":{"3h-serve":"src/cli.js"},"scripts":{"start":"node src/cli test --debug","help":"node src/cli -h","test":"node test/index.js"},"repository":{"type":"git","url":"git+https://github.com/huang2002/3h-serve.git"},"keywords":["serve","server","cli","spa","3h"],"author":{"name":"3h"},"license":"MIT","bugs":{"url":"https://github.com/huang2002/3h-serve/issues"},"homepage":"https://github.com/huang2002/3h-serve#readme","dependencies":{"3h-cli":"^1.5.0","3h-log":"^3.1.1"},"devDependencies":{"3h-join":"^2.0.0","@types/node":"^10.12.18"},"gitHead":"c8d28d69e6afea315f32b3dd2ba7a1de39f26ca9","_id":"3h-serve@0.3.0","_nodeVersion":"10.15.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-0h1dBoxnLJfsWe17Q3yskns9+9eM6XiAisB5YtJemU0P/pZ3F8jAvj2L1ddjQdjqzzxyhien8XTtGOLf8SSoaQ==","shasum":"f053131f8185e915050e8b531ec602506fad6b2b","tarball":"https://registry.npmjs.org/3h-serve/-/3h-serve-0.3.0.tgz","fileCount":8,"unpackedSize":21973,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcTwwICRA9TVsSAnZWagAAhowQAJpWLzaWA9bvt830yiVR\neo0lQjRmshP6TdJjnHDDIHwjbJ0rt+5mZA0sVXZxY37SHYhCYFA97mqCYj60\nmD4knx01hJCSP7Y9sBLAz2FpBanzUNBUNisDkQPzbwjAMmebSXCxo7fyI63e\n3nn9//32vhi+zcysLzeZoosPOT1zC1ObQ1d16sCCrch6LoN/ibNHBI2ir9Md\neOvvgO1S0ls3W5NuICpNiXOrZlB433AsD4gaxnNp4pwqZ9QZ9EkaWs2RdrRY\nw30dqd5uU5UEaozE7vBvvBrrRs8P5tmziUdGXbMOnw2+J0GN80oIQYWE8XQS\n23AEnGvKjnh0ZBjyl+PSv50Ms4kXy5/BXtyXuztaa7Yd9svtEnTmFr5sTC8c\nUKa8n66QmJ1ZdO7/r+L/qiWQQNyOzBSB+9pbBTh7nxdHOkZ56T8yZdRsge+x\nFarzocqklTcete84mHZ0X/wmlyx6+NLvvmBWynSAGEtEScn7VC9rhEf0vE0g\nISzCouyzEhUU8fY/yyyr0VMaCWHu3FEOxOTRZ4/Hm2Gug0LHgOUIV7HanjvW\na2Thfn6YQePwFE3In5O232rxAu5see7/CIAF1al0A1DKPqm3DocZoKC/I/Aa\nVMHQU7/u+ESmEdKQqfqrGD7o3Pp8DHbLVPNrOhk0rgy4ZqtstiVRCLx8GuIU\nxD/G\r\n=7id2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCJjji19MxkXu02RepZ0Py7DW/8IJexA+2Fb2d9eNV+RgIgd+Rud5P+bfv0ToQ9cr68k+WpZQ0Xo/rkylZuEsAGt3g="}]},"maintainers":[{"name":"3h","email":"1340545944@qq.com"}],"_npmUser":{"name":"3h","email":"1340545944@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/3h-serve_0.3.0_1548684295532_0.6467191390418996"},"_hasShrinkwrap":false},"0.4.0":{"name":"3h-serve","version":"0.4.0","description":"A simple but powerful server.","main":"src/crtServer.js","bin":{"3h-serve":"src/cli.js"},"scripts":{"start":"node src/cli test --debug","help":"node src/cli -h","test":"node test/index.js"},"repository":{"type":"git","url":"git+https://github.com/huang2002/3h-serve.git"},"keywords":["serve","server","cli","spa","3h"],"author":{"name":"3h"},"license":"MIT","bugs":{"url":"https://github.com/huang2002/3h-serve/issues"},"homepage":"https://github.com/huang2002/3h-serve#readme","dependencies":{"3h-cli":"^1.5.0","3h-log":"^3.1.1"},"devDependencies":{"3h-join":"^2.0.0","@types/node":"^10.12.18"},"gitHead":"d97505f27b938d259098c5e900959ead3011dfa1","_id":"3h-serve@0.4.0","_nodeVersion":"10.15.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-F7h7FjjGHkGSii0Bj0ZzZxHlby5f3xGG9QWp2gNHs8/kjeoWir3zr6POiPwU0GT6GazBKj1jXt/OH7KILg948Q==","shasum":"1c598a5e27ad06617733d854c6d9f0ec5ab01a27","tarball":"https://registry.npmjs.org/3h-serve/-/3h-serve-0.4.0.tgz","fileCount":8,"unpackedSize":22117,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcUEDVCRA9TVsSAnZWagAA1aMP/i4VkYpXCv4MRC2blJT2\nV1ujxrDi27cRBjhOrtl1xLoEXcafiWOFhVrDuNNTUp9hMtEtS4qx1NqrtmII\nDrdg9LjnFngMrPSFGLJyjUfZ7rdEwDBGGPWomqPzr4LfcfO/dI7zvhR5M4hq\nombel7qE2EB2JnxFT/sx/C9dVAvKXucAFOzV84+383N4JxqxGOCkEcY6Yg46\nYQTtxIaFHXCppxVoW5xQ6n1lLw/apm2HxNl/j03e6Km+ON7qHNP6UESzkRCy\nAzjmcPk+BfES0WqOeyob8g+/gYMiZPaUgIiL5V3ml9Y0+9RFX59NUElNulmr\nVBI1kLXKTCS1gepXztb9D8aYT5rQwUERESirsc3YAJ6RP6R1x0EBXCTPHEDl\nE8b7xw8y67wcDYQ3X/HidKU5NKqIe+suDCP5DYOVp84M5NqVWiO4V2dUc9Ng\n9efm+hiWI8MMqIcnMi+Y9SMJx6UacjJUO7kNEkLTpc5hP3tEJwFyH6Rnie+F\n74ovSDrydV6rU7vf4ZU20F6a4aIEYUkL61b0cN2OMKeuZ6KYX5pXC6DiI/tO\nRFLqYXD1aZMK4/E6nxc7T4j1ZSkdvGZtdbxG+6hnUr89iytlftf+JWK5KtTf\nmim3rBG2PEy+hZY6rp+A29dtoXJVZiuttrbeG3Vn1+GuzHuyCRo5d6Qx9i+u\n3ybh\r\n=7+nU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDXgyguuWSjnXIXA+svmdbEqiS6z1E3oEFzil39URTj4QIgYILQAUm4+SEEaeQLPjzSEUBt8erxvUHRDMCE1oFwfWo="}]},"maintainers":[{"name":"3h","email":"1340545944@qq.com"}],"_npmUser":{"name":"3h","email":"1340545944@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/3h-serve_0.4.0_1548763348354_0.35541733356673877"},"_hasShrinkwrap":false},"0.4.1":{"name":"3h-serve","version":"0.4.1","description":"A simple but powerful server.","main":"src/crtServer.js","bin":{"3h-serve":"src/cli.js"},"scripts":{"start":"node src/cli test --debug","help":"node src/cli -h","test":"node test/index.js"},"repository":{"type":"git","url":"git+https://github.com/huang2002/3h-serve.git"},"keywords":["serve","server","cli","spa","3h"],"author":{"name":"3h"},"license":"MIT","bugs":{"url":"https://github.com/huang2002/3h-serve/issues"},"homepage":"https://github.com/huang2002/3h-serve#readme","dependencies":{"3h-cli":"^1.5.0","3h-log":"^3.1.1"},"devDependencies":{"3h-join":"^2.0.0","@types/node":"^10.12.18"},"gitHead":"4ea82cf39059458a5a872a6bf72cb6296b81f611","_id":"3h-serve@0.4.1","_nodeVersion":"10.15.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-rgXW/d581ycpGwjqNIcuFKi1lKFmRvFphBP1TiAi+eKiK/Ozd8ONV8MfotOAtE1dbe/XMsNyHuaUB6e6iMhjhQ==","shasum":"ef830df53126533ade4824b8f6c4cb5f3d078171","tarball":"https://registry.npmjs.org/3h-serve/-/3h-serve-0.4.1.tgz","fileCount":8,"unpackedSize":22253,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcUxTvCRA9TVsSAnZWagAAzOQP+QHIaNvksoFdqo7rYgaB\nHQouLH5hVCiJinv2RscchzVs+FzXYRaLT/4DdXKPLcm7tRavW/VZZM+jspys\nwfXlXLPzKyF94qnSBJXZkUOm/ArpgoznWlstimgbRg36NkHpEt1mR4OWz0hi\nV3iNnK3Mb5HUM3E0JomiXihlNXyIQ2vcZSpAUuW7+oH9lVPyBmIzawyUFGaP\ndB67GapafD4lXdUs/exYYDcdryaxQY8ddVdU5hrILdHJKeF3oAzAPpP27F8d\nh9x3nk5F+5zMMIcVtNqVNIjh3XSrlmqhCC6mlQHMMlvykpn250s/UXW3SDul\nZNNJR1mHno3Dx3WADQiH/eyfmsKfncdCksDttARIOSjiDhJoDvVLq8otp0ok\n8pZQ8lWP0/QsPoFHpZGfZ+DVbtsQfHGD8zNczYG2Pp1/XAV9aNPDna7tMGbV\ns8/KsSoXYoPakZ1O+Iy/z84LsFS2tf8TMv0+23qLA4ykJWmSBIYSwhglY/bX\nOAec88n8/NvGj9FHrOm/GRUCQ7RfvoM9DZ4t0qGll8VAEsdCqFcTpxVQIUMA\nA63RXyJo69VVbBdu2DZ5zUC5BM5eJgyRRBm747O+CD/6gzyRTf7WbeY5PBSA\nKixrdhfyICY+0tooxeA+EDxZB7tywZJm06qqvvxyGbltkqRPrpDBOT9N7fE+\n11z7\r\n=T64Z\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDL07V7ICI/T3WqrjKAaLWmzAP8ke+NhH1hwnjY6U7yqgIhAKPpdY+NQvsGq1PYUe66kenhctbUp/jNhqxKx2WFSxvj"}]},"maintainers":[{"name":"3h","email":"1340545944@qq.com"}],"_npmUser":{"name":"3h","email":"1340545944@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/3h-serve_0.4.1_1548948719247_0.8126807569373311"},"_hasShrinkwrap":false},"0.4.2":{"name":"3h-serve","version":"0.4.2","description":"A simple but powerful server.","main":"src/crtServer.js","bin":{"3h-serve":"src/cli.js"},"scripts":{"start":"node src/cli test --debug","help":"node src/cli -h","test":"node test/index.js"},"repository":{"type":"git","url":"git+https://github.com/huang2002/3h-serve.git"},"keywords":["serve","server","cli","spa","3h"],"author":{"name":"3h"},"license":"MIT","bugs":{"url":"https://github.com/huang2002/3h-serve/issues"},"homepage":"https://github.com/huang2002/3h-serve#readme","dependencies":{"3h-cli":"^1.5.0","3h-log":"^3.1.1"},"devDependencies":{"3h-join":"^2.0.0","@types/node":"^10.12.18"},"gitHead":"3f4bb8e162df3d4b7549681faf6248eef8dfb38d","_id":"3h-serve@0.4.2","_nodeVersion":"10.15.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-Il/GXB7adSpEYqaRuyhvgfrpu/X6BOb4rnPigz4HOw4uYk8/EBi+d9JCLlFLyiui+82cD4+yRNN+qAY9uNChBQ==","shasum":"97d6491dc2cbb3fbe662eb6d485cff435624b0e3","tarball":"https://registry.npmjs.org/3h-serve/-/3h-serve-0.4.2.tgz","fileCount":8,"unpackedSize":22306,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcU8JWCRA9TVsSAnZWagAAVCUP/2UOw6sbncUam0PlYWbV\nZJM/fFlzZxYirf7LQLA7zlfWWSRpXzadAhDaszyeRY8p8dKJ/KQnfomNMJWr\n+1k1zsZZGJ/sv2zDRLls06ChZyZ9c0wDxUYUlZrQJwLiKkAzITAAaQRg36gi\n/ASQ6c3LsiPdPIC/Gtk1N/GfjpPaCjbwNUacRy1JrlDhDV8QKEDfPwZgUmhh\nf4jSBdbSR/uUMQL4666xgt/XAhV6yxODT+Pb7EIzWaGWM/yibzkS9tNxzX6b\neQHrz8Q0H1QgpMdjSxXrNGBUr55OmzGqjkAh+/8/z329+QoetHvuUl9aIYlj\nHi53TIapmkvxM6uXRxLXMnmhsnZW56M4GRh1nlLjlw8WiIRZ5y8mW3ErZ4WN\nBMqJDBM9yXpzZt65sOxTwQikZRvkceZjRryVX7evOZPjPrvCVCx7W+/A9QzN\n+ZJIUnZKpJQfY8kXK+ui/E3uMov5BmTN+CslJtEDBFjNts6UYDkWNq+WuSnE\n2kHxkA7R/PR179WTMWl7GIqJbIFH6GOcMcZpukogMzrt7Lm/nEOLUVWEaepX\nfeaCuwNiEl4dmN4xwgyu2RGbdNxR47hJ/g8NUK/YfCEvByyEhpNL+lu+S1wm\nPWpBAS9gaj1XcmDhT0yLWV1PZBgWrtTRoFhRGpdleVGv40JceUumUQv/7eXJ\nHUed\r\n=/HPj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDHuthAtOXbGGV3ZLtjGTvPgrAnsMtXACs+CgzaW6dJJQIhAJkJLkFlU4OSI1kAi7/ILIFMwSQM5yD1KxNOBKNLSU+r"}]},"maintainers":[{"name":"3h","email":"1340545944@qq.com"}],"_npmUser":{"name":"3h","email":"1340545944@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/3h-serve_0.4.2_1548993109558_0.9970689789927261"},"_hasShrinkwrap":false},"0.5.0":{"name":"3h-serve","version":"0.5.0","description":"A simple but powerful server.","main":"src/crtServer.js","bin":{"3h-serve":"src/cli.js"},"scripts":{"start":"node src/cli test --debug","help":"node src/cli -h","test":"node test/index.js"},"repository":{"type":"git","url":"git+https://github.com/huang2002/3h-serve.git"},"keywords":["serve","server","cli","spa","3h"],"author":{"name":"3h"},"license":"MIT","bugs":{"url":"https://github.com/huang2002/3h-serve/issues"},"homepage":"https://github.com/huang2002/3h-serve#readme","dependencies":{"3h-cli":"^1.5.0","3h-log":"^3.1.1"},"devDependencies":{"3h-join":"^2.0.0","@types/node":"^10.12.18"},"gitHead":"a7651863d7deef246d00d5c7f2dfd92d3d679cca","_id":"3h-serve@0.5.0","_nodeVersion":"10.15.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-DI8SCzhUBLBO3TE1nV3pXl7Vp1pMvqtoDyuUSAGuifC9e7l+/ciWdb3a+YEUMhLCvlgHAvJ1AoBkuYf//dnPOw==","shasum":"0eed7a716d1437a082e6731abe473044840d0276","tarball":"https://registry.npmjs.org/3h-serve/-/3h-serve-0.5.0.tgz","fileCount":8,"unpackedSize":22533,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcWoHlCRA9TVsSAnZWagAALd4P/3Ikwz+F4RmwFzNZaSZO\n7EajaZP43J2KhaG/uQODkmIbjZr+xW5H/P/tbA1u/017txaLJHMZL12GkdS7\nONPUmgtoFao3Uhum/oFJAHn5JgbAS/2+UvGCXhMF1SMu3d96fkSUjN0sUFKQ\n20oOy18zv9HKXMXXeXDVBbAVnhRXRAAewpTQRRibtypQRpwwtMoos4IBpxid\nfcbh7eXYLGFW2cM07hicgju9qn9UaAAF/J5PVlm/3ZBLH3r9EiRI5W1G/jai\njzS3vXBc5gFr7Q9T/EB7aAaj0X8vN28XMaaw7HV4fxBfq2U3DG7ftuNEHNU2\n8P4EdPM3A1yGc19xVLBYcx02CukqJp1Jz5TcxArMFKlZhUDhVOZXNLv+nYm+\nQwM+viaFc/5MYLvnxfZGSO1HBt8fcr41YrQ3L4g8pRfy6p8j8iJy3/gv9auA\nkw4FwBC5f3WTcyShGFwgKy6Jv6iI4I++SY/aEURUE8iOSoFoO3IvduVa7jct\na83Ee6LofsVyi4J7rxaDKCTURxSKPWQq7YTstggFpl9N9my/6ccj0fd3c9sJ\n3B/it9EaGUfVSJe35HFJwYybcTrcesIuAa0M/Zz48kvYCYGMjuaF7AHTFHkZ\nm8chjud6uAvS/7dF8meAI8PKQ1dzpg/faQr/dZ3/XybqShmsCnxeOMoWbgtL\nZDWt\r\n=l0mA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCM5TwDEgw7SHJvYYcFvK+EwxEXk04wCtEQhC+AASOWhAIgZIfuwBw8Vulyw+P+lUnqJHLM1WIrQiddCZuDDzFp+so="}]},"maintainers":[{"name":"3h","email":"1340545944@qq.com"}],"_npmUser":{"name":"3h","email":"1340545944@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/3h-serve_0.5.0_1549435364486_0.04352507799540528"},"_hasShrinkwrap":false},"0.6.0":{"name":"3h-serve","version":"0.6.0","description":"A simple but powerful server.","main":"src/crtServer.js","bin":{"3h-serve":"src/cli.js"},"scripts":{"start":"node src/cli test --debug","help":"node src/cli -h","test":"node test/index.js"},"repository":{"type":"git","url":"git+https://github.com/huang2002/3h-serve.git"},"keywords":["serve","server","cli","spa","3h"],"author":{"name":"3h"},"license":"MIT","bugs":{"url":"https://github.com/huang2002/3h-serve/issues"},"homepage":"https://github.com/huang2002/3h-serve#readme","dependencies":{"3h-cli":"^1.5.0","3h-log":"^3.1.1"},"devDependencies":{"3h-join":"^2.0.0","@types/node":"^10.12.18"},"gitHead":"f608ca12542be85ef80eef5c3191179a34a07041","_id":"3h-serve@0.6.0","_nodeVersion":"10.15.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-7z1H0ABmbu9M76T/gQyc5+tEDJeynHS0Yc5lSwS24bb/TRYEEJ6bpf8AOhZ1fR4owpxFmhpj1hp9+rW+TzMN3A==","shasum":"7813ac8ecb23945008218b0933e14f28db96c2c3","tarball":"https://registry.npmjs.org/3h-serve/-/3h-serve-0.6.0.tgz","fileCount":8,"unpackedSize":22605,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcWoTKCRA9TVsSAnZWagAAFlYP/1fZb2mKH42vzU15F8cC\nAyxphG3n73l3pBOgsFq8B1vpIiaPTGhT5xL8tbUOtRBUzVD2wvxrGIy6HqoW\ngiY0Zk7Ic4uZOTDprYoXFvmN3E4uSyCPMyl4LKw0X1xWZD5xfhjHiSn0xz40\nensEGa0dKh9VSOfSoCFiRKuSS6oJ4Usooe/mYd7PH/k9LFK8hh5l6n9/ax1r\nz2U30PFPGBPEDxQeiNLO73pmtEjGzkCXUOe13O1MMX6EmZRlvA33WOBMEiff\nuSagtMjbUAOg3FRPQK9Q4+3jiW1bfpap2H3KSbt2uZor8H4db+o6Z8gDKACX\nFG3JqLNxoHk6zEYLre1JpqGUz7ak9R1XNEPG57FJgcYEa/53npvpWvBYvzNh\nGNkzy/zAIs7MBHoHtCZAS3V03qiDP9XQziAxL+jkj9tux5GvtQb9xDZjotV1\nkkUFyQqVseQACtGAZuoRrmCaJ0QAFFm1L+u7XVCdHh5YqXoxnKNrZkEYRqrT\nX1gG3z3fUBJQ5tco9NyJumz/ev933+PDRNaLx5c7yePvgkFja5duJihpb1RM\nTCDnv8HrYzuLOt/lDbuhUhK0t7hD87Ukj14UFvXXjSa6zsrToFhdxtzx8xbh\nkWsICCTe3cy1jnRAz/Ib1vkSvkfAUI/Dz6dBFt6/AvE1s+Fa++FMr+JM46od\nseNP\r\n=ibRl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDxx5Ve37Ho9Z9bTxTE4OLABygABQZiRvOiG06eeuEkCAIgd4efD2a/cHPC8pf+ArU5Y+9Ilu3OeXjc7X++3zUM1hU="}]},"maintainers":[{"name":"3h","email":"1340545944@qq.com"}],"_npmUser":{"name":"3h","email":"1340545944@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/3h-serve_0.6.0_1549436105382_0.6257730930371443"},"_hasShrinkwrap":false},"0.6.1":{"name":"3h-serve","version":"0.6.1","description":"A simple but powerful server.","main":"src/crtServer.js","bin":{"3h-serve":"src/cli.js"},"scripts":{"start":"node src/cli test --debug","help":"node src/cli -h","test":"node test/index.js"},"repository":{"type":"git","url":"git+https://github.com/huang2002/3h-serve.git"},"keywords":["serve","server","cli","spa","3h"],"author":{"name":"3h"},"license":"MIT","bugs":{"url":"https://github.com/huang2002/3h-serve/issues"},"homepage":"https://github.com/huang2002/3h-serve#readme","dependencies":{"3h-cli":"^1.5.0","3h-log":"^3.1.1"},"devDependencies":{"3h-join":"^2.0.0","@types/node":"^10.12.18"},"gitHead":"05a0d3d22ab5a999648daf205a13c5bf3fee3465","_id":"3h-serve@0.6.1","_nodeVersion":"10.15.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-7bhtXrDWEDvn4mbIoH4E2qnX/yv6UV9L2wO0euWpGEZozrZvOAUnVNrlM+8lmHSHuF4CWxgKMwNMCQUe/Fos5g==","shasum":"8836f9bfe22de45d6385d578c108a03d45f3e40e","tarball":"https://registry.npmjs.org/3h-serve/-/3h-serve-0.6.1.tgz","fileCount":8,"unpackedSize":22660,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcWoZDCRA9TVsSAnZWagAAY5oP/Av/6kOsY+O60klAx22p\niMfSHI7ou1aEj6UJ9vY/TyXct47Fy95iUsCFwDu5D30iNACy+0lAZ/J/Stau\np7i2l5EjYT+k4VXIjy8HdZH+BCPSAP9twjMrjpK4vKWrb1PoVW0/l0tzLlwV\n6M1IO+2ClYKNL6yHPWp6NAAF0bo87d34ePN8qCjaW7psH+Kh/PS4znfQCW3j\nXIMv8BofGAXKk2alaWIJQVlaZtThzwoWIAMdXf4oIKZyr02lIV7pSVrLmTPa\nhi1lMIOTZ0CeYOjX2R7s8VQZDRPHtR8adiEaxIiTWZQ3+o9FDsyv+kf5UnDk\nuNNpy2ktBYIucLhvAPiMVIuaOti0cqlZj1S54leVDG/+td8cU+vn0g2M0xsk\nx6tHuTLbSUWAXQUroL7jDIt8XEe9FRb2UG4VpespSM4FexXKTof8MoIKuOw4\nAYa6JTV15QO8bHOkchhtagpBhz7isJLH5u0rRNu6F68akr2d3M3/mLqniA8x\nXHO+p9fLghGxLiCyi6QjCB92yRG6XjKRtx3pxc/O1odHAwDDw3ly0n9URv71\nGqjC1NOHLeIs23766m0KlbuqgOn9h8wWNMOcRAyJohzwydBrLemWEdJCKmVK\nbtA+ckTzC6FW5RhRIETZp98vVOqsdLOI+pXL68x4MQokJlJaFIepebRMCrO6\nzppw\r\n=tGQZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAZYzZwxzgBRLA4J183+zJuAJFJGosJLX5jQ5nB5CirwAiEAn6y4Ioi2S2JR1utHtlQ4CuACHwHFhVCo0xK5F17vzmc="}]},"maintainers":[{"name":"3h","email":"1340545944@qq.com"}],"_npmUser":{"name":"3h","email":"1340545944@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/3h-serve_0.6.1_1549436482905_0.6897449945477305"},"_hasShrinkwrap":false},"0.6.2":{"name":"3h-serve","version":"0.6.2","description":"A simple but powerful server.","main":"src/crtServer.js","bin":{"3h-serve":"src/cli.js"},"scripts":{"start":"node src/cli test --debug","help":"node src/cli -h","test":"node test/index.js"},"repository":{"type":"git","url":"git+https://github.com/huang2002/3h-serve.git"},"keywords":["serve","server","cli","spa","3h"],"author":{"name":"3h"},"license":"MIT","bugs":{"url":"https://github.com/huang2002/3h-serve/issues"},"homepage":"https://github.com/huang2002/3h-serve#readme","dependencies":{"3h-cli":"^1.5.0","3h-log":"^3.1.1"},"devDependencies":{"3h-join":"^2.0.0","@types/node":"^10.12.18"},"gitHead":"45e18e9f0c435747bd5c2dbf4414430fc29d0948","_id":"3h-serve@0.6.2","_nodeVersion":"10.15.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-oNZrfLmENpZy7jEoUdCWnwGGxVROXMl2Bd9wPKpeGFABW/bbvFGI3X0EWyvzskGrewhTq0St58kaSYlRGmjBeA==","shasum":"570688ac8f28437b6ac16bfc9728fbcfa5073a1e","tarball":"https://registry.npmjs.org/3h-serve/-/3h-serve-0.6.2.tgz","fileCount":8,"unpackedSize":22839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcWuRVCRA9TVsSAnZWagAANDsP/2EOuamRqemoy5xN+JfU\n6fUq9PmlulHkYipoSnB8iWjUt404+YEOkcO3VJS3odu7rtLlkhjCYs/DdX3C\nYCAU/oHyCrV9K1f2vynqOUbG1rrb2Tha4YKsWsCToMDf9LFdrVVLlsmNQxXo\nJBJSVPlo9p+Wn+RZ0kHg9ZFRpWtjjiQkbhgu6XPVfRdwVDX3ydO8ViMEsbCS\npfxdBOhgKC9cZ4hzckGnzjgP2hQAWy6i29/cR+Pe/3U/VxSh2K2iElDUmyuF\nieC7vIaRI7p5Vb/6J4Z2TjcuJIr8xE0Cu/LfsEz59hK4sfMINZ4Tf17Qsn1j\n3SesUKXSADUK99rEhOdhlXPDKHyDCBpMN4Tuj+ri2/Cc5K4WdLY9KDKTLgOC\nWbsG1Ya2usdCqlYYJ8vpqN0g8w5urdZ7td2Pt94NehA9wXPvUB68Y7t/q6ZI\n5mfaSYz0ljateIvApMESzVW06IfeJLUy8UU8EUNFhDG5/qFPuui43vGpUgrn\nnwd3id2/gHjJ4SxQbKtCOELMzqRWSGTPbb6GJG5Tz73bkvGz6K8H8Ralt0bT\noRmBQDgJ/E2PHFnUH4LoW+CABRxzVsEqPkzZaY9IqiScSTqHYzD70RCUS93H\n7zxAmoggRUbj2lPPeRvJZmVawZTXt3SA5LjYfIZl5yksiAePqrMfKsM7hmr+\nhSfH\r\n=WO+P\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAFGiGb9rFSpjkF/uSIzjuXkFgEaBNs/QI/ig3lgIKS/AiAKFw7YqCWfpbJD1SVLdLK//R6nACv9yqbs297YzZIS1Q=="}]},"maintainers":[{"name":"3h","email":"1340545944@qq.com"}],"_npmUser":{"name":"3h","email":"1340545944@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/3h-serve_0.6.2_1549460565094_0.7392664511316247"},"_hasShrinkwrap":false},"0.7.0":{"name":"3h-serve","version":"0.7.0","description":"A simple but powerful server.","main":"index.js","bin":{"3h-serve":"cli.js"},"scripts":{"help":"node cli.js -h","test":"node cli.js test -p 88 -l debug -s \"^/api/\" --forbidden secret"},"repository":{"type":"git","url":"git+https://github.com/huang2002/3h-serve.git"},"keywords":["serve","server","cli","spa","serverless","3h"],"author":{"name":"3h"},"license":"MIT","bugs":{"url":"https://github.com/huang2002/3h-serve/issues"},"homepage":"https://github.com/huang2002/3h-serve#readme","dependencies":{"3h-cli":"^1.5.0","3h-log":"^3.1.1"},"devDependencies":{"3h-join":"^2.0.0","@types/node":"^12.7.2"},"gitHead":"55454002f0784d779223364242fd4b1b5866a287","_id":"3h-serve@0.7.0","_nodeVersion":"10.16.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-j6G917wATKfx6/NSq6XRLf4LwBwSl5YvfW7ps3kT9c0vyOad2t5VQJWFI/XaJAPqbu1h1pcw3ZxCs85ijcMPSw==","shasum":"08b3f33a2c130d10c49ec63298ae50aa0181b700","tarball":"https://registry.npmjs.org/3h-serve/-/3h-serve-0.7.0.tgz","fileCount":8,"unpackedSize":30763,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdYn9DCRA9TVsSAnZWagAAYoYQAIDTWaz7ThpRSorAztI2\nlBkGOWEdnOFszKQVDaHKidt1CDy455eOYtHWTgYwvMvzEUGdgJU4b69b6xRQ\nlbhM9YAKY4FIu0UniYsRaNJsNeNlKz8Q9y9zPayo5rNiecR7NLp9rOgEfCOf\n1N2x9RMyHixF9gofEu3m6hBXH/xbUTDx9inTm6B4NHi21PtnmwAghSSrZiY1\n+nNSuUazb1h6GKFpT57oi/DNA+cb9uuLP1y2vf8BPSS/1JVlXrDM0gFoc25l\nSGy5fKARayk6dY7UcJGYFvaI3o7HVinBb4g1SGsH1w+dLyknk4hVtDc5tTu5\n2zf1b9O+84i3Et3ZVloxaG3oHvV4s+PrFJZYPRkhe5T86TGrCQgiKiS9nkoA\nI+g0emmexyHRhw7bE6Z5Bi54GgZuAlMilNOK8xEjP5TLj5JVoMz7tA800H5e\nF73HdlQ91Qsqsz1ZQJlmwYxqEd7r88NLYoa4X4Cqd2NhinsM2yjvKvGCalhj\nK1q3VyN96CVXnXW5nASLFVLwPan8pZgP3xN2LK4p1rvYAzKS33a/JO8Crlb8\n5221lc+t0k+fHs8sz5GNE5BAqpfxbaY1+t5yi5F0X5/HcLtOWP40cpe0CtVG\nMsfycSYHULyzJB4eE3+6Fqx5dRaDYZOoYpPFnx2a63OEqX6BPPiK0PM2j78a\nY+Sa\r\n=d4gV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDj1m/apCbafuDzpT1SBbUTBd65szfY7351nGccPUdjJAIgfB/jVOzORCdTACG3YxIuJN9L4QwUEKVedY1hwYo6dko="}]},"maintainers":[{"name":"3h","email":"1340545944@qq.com"}],"_npmUser":{"name":"3h","email":"1340545944@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/3h-serve_0.7.0_1566736194573_0.8224287252283822"},"_hasShrinkwrap":false},"0.8.0":{"name":"3h-serve","version":"0.8.0","description":"A simple but powerful server.","main":"index.js","bin":{"3h-serve":"cli.js"},"scripts":{"help":"node cli.js -h","test":"node cli.js test -p 88 -l debug -s \"^/api/\" --forbidden secret"},"repository":{"type":"git","url":"git+https://github.com/huang2002/3h-serve.git"},"keywords":["serve","server","cli","spa","serverless","3h"],"author":{"name":"3h"},"license":"MIT","bugs":{"url":"https://github.com/huang2002/3h-serve/issues"},"homepage":"https://github.com/huang2002/3h-serve#readme","dependencies":{"3h-cli":"^1.5.0","3h-log":"^3.1.1"},"devDependencies":{"3h-join":"^2.0.0","@types/node":"^12.7.2"},"gitHead":"2209fdc7ce36c608c0f87f2f36bc40e27e13012e","_id":"3h-serve@0.8.0","_nodeVersion":"10.16.3","_npmVersion":"6.9.0","dist":{"integrity":"sha512-slopg2C0WskM6doBlUhWYW3f2LOgurJhK+Eb8HPLlqUiuwTTlHAuuQaDO/gav2jFgaRXMmQtxsM4DEEIPgmxNg==","shasum":"d7e153dd05263e4f4a19dd9b4e7436d70210b1cc","tarball":"https://registry.npmjs.org/3h-serve/-/3h-serve-0.8.0.tgz","fileCount":8,"unpackedSize":31198,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdZ78XCRA9TVsSAnZWagAAte8P+QBO7hP/BQjyqSKKXniQ\nUt5nmiHOY6k4QIfOchO3vLOmJ3oJmOtkf0IqvDIvpBF2fvH0Z2emaPgqR//A\nAoY851XZIsWBHHlFYB8YtJ9ExJVYP7nvRvchZ+5sssezrpdpeS47HPiSOeK3\nxZqix8Yuolo4RI3jSHr6XY6Nmk4Q/hMVDadcwJIfoSrfi5bUtfq3WCCmRzNs\nLpPkAGLhKbNgY9vdQ4K4Go5BnyrnKZ45EupjiNmaEXlrwLJjZw4hyVjm+qjn\nf4HVmrXsvdEmc3KjdWuVHB/mZWyJ1AMlAFc66yud8+oGgbAbF1pTYP3qHvTM\nlRQY1jcwwthmo5f3xFfnXuMVQNt+64d8OQE3Q5SZFxdHsFJdLoMop9/0FbvT\ntUyDjGCHS3ir9XLZWdaB+74wz3X2mqCLZH2kUg4p1ieockLklayIEXPO0bp4\n4NlB4d62wXz9d2O2Fh2FiQ0rWfSpfYThYLT7oaaRjJkAF6468bUqKd9JpSdG\nfplNiQ/KL0/BGCOr8VMYpGk9VFvZc/cPa33K1npCQxip9A3aEN0A4y7WGcLL\nJOBL0wx8eMqixIxRyUqSnIVmLrFB0Cy4mqznnaZt6Qo+hEq31Lfj74QsAEnZ\nUq+lb+y0cVJa3l+WHSh4+GmD9aY/9fUFN2ES2mSx0KfjLoKQJRRJvtzwbXBN\nXHsK\r\n=iRxH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFDDPaSi7aKyoP7aC/GlkDeTyBdaIesf1q9d+JhClc3UAiEA1gpQLmVu+SMWDhNIdhRBVV6FQlZoluQNeSLFU45Vh9k="}]},"maintainers":[{"name":"3h","email":"1340545944@qq.com"}],"_npmUser":{"name":"3h","email":"1340545944@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/3h-serve_0.8.0_1567080214275_0.4592814591282697"},"_hasShrinkwrap":false},"0.8.1":{"name":"3h-serve","version":"0.8.1","description":"A simple but powerful server.","main":"index.js","bin":{"3h-serve":"cli.js"},"scripts":{"help":"node cli.js -h","test":"node cli.js test -p 88 -l debug -s \"^/api/\" --forbidden secret"},"repository":{"type":"git","url":"git+https://github.com/huang2002/3h-serve.git"},"keywords":["serve","server","cli","spa","serverless","3h"],"author":{"name":"3h"},"license":"MIT","bugs":{"url":"https://github.com/huang2002/3h-serve/issues"},"homepage":"https://github.com/huang2002/3h-serve#readme","dependencies":{"3h-cli":"^1.5.0","3h-log":"^3.1.2"},"devDependencies":{"3h-join":"^2.0.0","@types/node":"^12.12.47"},"gitHead":"6e65f9d4f4b256caa26e6d35b2dc8e35f4e5bf4d","_id":"3h-serve@0.8.1","_nodeVersion":"14.2.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-jDD8LP58T4vIR6j2ITdaq23yx3IhJyzuz6rIBd/Qw18+7fEgrxhAX0226bzHlibnVXm7zuWoewzQENxAyiravQ==","shasum":"b3f90f691a373112a41c7455a31f90c12bef53ad","tarball":"https://registry.npmjs.org/3h-serve/-/3h-serve-0.8.1.tgz","fileCount":8,"unpackedSize":30251,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe5DvlCRA9TVsSAnZWagAAFikP/1kp0Mo40ANwgDYQ+bm5\npZJkwevstM0hwwKo63CVF3APtmwZplHfnsJpxbtfUyoL34RYG1lKnzD80qoz\nTgl60q/7aGMaZS1LbbD/EfmgpTu3H9JSlw4RnByFVhHwzbqXgGlyjU36yobJ\n6MPyFlRqXVzDZPl2HNe5wnLONAA21y1l92WG1Va/cB6I+DNToCy+WPgNt2gq\nFOp721KeVMlmLsx1xiwa/i30n1t99+V0HJtNKXbPw/8PtfKNmHVZ2DVtk/v+\nZEbVF/8+ODX8XbODbN4UD5LAUN0NRRkHJcF8TcnJnPy30UhodJ4uXL0PJcM/\nETVN45w6rvF1/c4L6yS7z5/r7cdwW64gbsJwWecJghGYPKuJ+huiXX8H5ujy\nG1fUr2WkTEBGY5l6QgivV640Ppduj9YgMxOrw9aQIa3b0Lg+9cbGgDsJRhAG\nqxlxYuraix8W6EAOR6MKym1mf1qLMSs5TIfSRTaH1JIJyxSxyc+WeOGdHaOc\ngmAaaGG/ibRD0A1IidG0QrfTloAb5q3wej2uPmlK9/qdgr7f/2yQicaXtC8C\n7FR0fgwW+Ewc3Kxolo9teu9lcbEZvRWfHmdx9tJWAgRpzz0nC1MmROUZw8/I\nQ79kJuAgEOs+VMQMZ9BCK2HxOJJ2DHsqc8iRxMre6d9TSeQYcZPiy54k0z7e\nBS20\r\n=VyIm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDzEjrxi+4Xw5hXO4yGsDxHEraw6UOmZP+e2ahp4wA0CwIgWpq0SNtJZW06HAAET6pBXxZ3vIdKVae0kfFQp1NS+f4="}]},"maintainers":[{"name":"3h","email":"1340545944@qq.com"}],"_npmUser":{"name":"3h","email":"1340545944@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/3h-serve_0.8.1_1592015845046_0.5142531027253572"},"_hasShrinkwrap":false},"0.8.2":{"name":"3h-serve","version":"0.8.2","description":"A simple but powerful server.","main":"index.js","bin":{"3h-serve":"cli.js"},"scripts":{"help":"node cli.js -h","test":"node cli.js test -p 88 -l debug -s \"^/api/\" --forbidden secret"},"repository":{"type":"git","url":"git+https://github.com/huang2002/3h-serve.git"},"keywords":["serve","server","cli","spa","serverless","3h"],"author":{"name":"3h"},"license":"MIT","bugs":{"url":"https://github.com/huang2002/3h-serve/issues"},"homepage":"https://github.com/huang2002/3h-serve#readme","dependencies":{"3h-cli":"^1.5.0","3h-log":"^3.1.2"},"devDependencies":{"3h-join":"^2.0.0","@types/node":"^12.12.47"},"gitHead":"850a61f4805b03bb5c30b3bd9a447a11f084209b","_id":"3h-serve@0.8.2","_nodeVersion":"14.2.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-V8bRqyyQ92dSp9WdhM7M+IF4AwfdkTYEPZtp0g9KGFkSfSsyCwd+D33mE5YqMamM7RxvOuLr9Qog1K9nncnGBw==","shasum":"e9c666b6fd199a82b0c4e7d7ceafb45df92ee10f","tarball":"https://registry.npmjs.org/3h-serve/-/3h-serve-0.8.2.tgz","fileCount":8,"unpackedSize":30289,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe5EDTCRA9TVsSAnZWagAAxAwP/1MDek1r/6uLoqq5pgTo\nQBJoiAksM6qDq4agw6DSTxJHmcV/hjfFF2ZXkKBLF/oOiUCgggtxGO/YSE6Y\nrdaxazTkhzsRI25d1ZguDWtTpHYQePyCcgLK2Q2iJAij2afwO+cly0Tgu+NY\n2hBzabDSHkx6H3WSPdDcv5xqKCrnd95q87RP8+2MvsxOWwOs3Mgt7xq6i2sJ\n/T5qt8znANiDOeW7Q/FzDCdZ2hQuA4mAxg60Ji3IrqlY2oxec1i0C0xwR375\nJqTZwilbcZZgFKtEC7lStQS+x6hULbRSGMWpWRt/5TgUJAslS/fAhP2D62Gn\nNE/FUZCyqWNMzlW7bKJIxpqawQnO6Y7gWK3TfwrDe6o/6QwOEltA02XcXqEV\nU0EBJNotKZlq9UQZTXR2KH7hcERWzN4mQ/RN/hbM984a3c1pCYSw/HjRtZJt\nRMZc7fLEfAj2jsDpjJLKsM7/lorodicBWjUbUonPmDzxfiZVN/oRFZWEe8s0\n9B0tmVC5DMe76uWJ74cgcWRHuoxstnRWIlpRbV8wLVxWGCC5vRxJ/DB3Xe1b\nzAkuyfGL1ZAN4CAjMOIx4Nge5Wzdy9Jy/tdZUEYtselpkz5kCnOVxrKfic4a\nd4qpvNhzTkS1rWfn1fwDgEKH5Z+NMAyL2EdYQghqwq2PlB0YOP8L7oVAPHmW\naUiB\r\n=a3mT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH3XmRPUrPdZH5mNx7eAoxcTI3Eew1QCdPuh0JiFgKNwAiAY75fMVvOqtQM3qy0p1muzP5dzm7c/KFvUPeKRuriCAA=="}]},"maintainers":[{"name":"3h","email":"1340545944@qq.com"}],"_npmUser":{"name":"3h","email":"1340545944@qq.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/3h-serve_0.8.2_1592017107369_0.411273456818928"},"_hasShrinkwrap":false}},"time":{"created":"2019-01-26T14:04:14.375Z","0.1.0":"2019-01-26T14:04:14.476Z","modified":"2022-04-04T10:21:36.134Z","0.1.1":"2019-01-26T14:12:04.730Z","0.1.2":"2019-01-26T14:28:26.823Z","0.2.0":"2019-01-28T12:51:40.484Z","0.3.0":"2019-01-28T14:04:55.628Z","0.4.0":"2019-01-29T12:02:28.536Z","0.4.1":"2019-01-31T15:31:59.382Z","0.4.2":"2019-02-01T03:51:49.716Z","0.4.3":"2019-02-06T06:39:34.161Z","0.5.0":"2019-02-06T06:42:44.629Z","0.6.0":"2019-02-06T06:55:05.524Z","0.6.1":"2019-02-06T07:01:23.025Z","0.6.2":"2019-02-06T13:42:45.241Z","0.7.0":"2019-08-25T12:29:54.742Z","0.8.0":"2019-08-29T12:03:34.550Z","0.8.1":"2020-06-13T02:37:25.226Z","0.8.2":"2020-06-13T02:58:27.472Z"},"maintainers":[{"name":"3h","email":"1340545944@qq.com"}],"description":"A simple but powerful server.","homepage":"https://github.com/huang2002/3h-serve#readme","keywords":["serve","server","cli","spa","serverless","3h"],"repository":{"type":"git","url":"git+https://github.com/huang2002/3h-serve.git"},"author":{"name":"3h"},"bugs":{"url":"https://github.com/huang2002/3h-serve/issues"},"license":"MIT","readme":"# 3h-serve\n\n> A simple but powerful server.\n\n## TOC\n\n- [Introduction](#introduction)\n- [Features](#features)\n- [Command Line Usage](#command-line-usage)\n- [Program Usage](#program-usage)\n\n## Introduction\n\n`3h-serve` is a simple but powerful server which is mainly used for testing.\n\nYou can run `npm i -g 3h-serve` to install it globally and check the help information by executing `3h-serve -h`.\n\n## Features\n\n### Serverless Functions\n\nServerless functions are supported out of the box.\n\nFor example, given a script file `/api/helloWorld.js`:\n\n```js\nmodule.exports = (request, response) => {\n    response.end('Hello, world!');\n};\n```\n\nBy running `3h-serve --serverless \"^/api/\"` in the root directory and visitting `localhost:8080/api/helloWorld` in your browser, you should get `Hello, world!` as the result.\n\nMore specifically speaking, a function exported from a file which matches the serverless pattern given in options will be invoked to handle the request. The file defining the serverless function should be like this:\n\n```js\n/**\n * @param {import('http').IncomingMessage} request The native request object\n * @param {import('http').ServerResponse} response The native response object\n * @param {import('3h-serve').lib} lib The lib object (See `Program Usage` section)\n * @param {object} options Options passed to current handler\n */\nmodule.exports = (request, response, lib, options) => {\n    // Do something with the request and respond to it...\n};\n```\n\n### SPA Home Page Routing\n\nRouting single page applications is also supported. That is, with this feature, given a home page named `200.html`(the name can be configured) in a directory, requests to files in the directory which are not present will be responded with that page.\n\n### Lucid Caching\n\n`3h-serve` has a built-in cache control system. With cache enabled, all responses will have the following cache control directive and an `ETag` identifier, which tells the browsers that they can store any assets for a year but they must validate cached assets before serving them:\n\n```txt\nCache-Control: public, max-age=31536000, no-cache\n```\n\nIn this way, all assets will be cached but no stale assets will be served.\n\n### Clean URLs\n\nClean URLs mean that you can visit `/baz/index.html` by requesting `/baz/index` or even `/baz`, which includes default page serving and default extension matching. (Default: `index.html` and `.html`)\n\n### Automatic Zipping\n\nWith zipping enabled, all responses will be zipped if corresponding clients claim support of it (by using request header `Accept-Encoding`). This includes `br`, `gzip` and `deflate` zipping support.\n\n### Custom Fallback Page\n\nYou can also customize the fallback page of your site by just simpling put a file named `404.html`(the name can be configured) in the root directory of your site.\n\n### Debug Logging\n\n`3h-serve` provides detailed debug logging so that you can see how requests are solved. To enable logging, set log level to `log` or `debug`. Setting it to `log` results in some brief request and response information, while setting it to `debug` will make routing processes logging also available.\n\n## Command Line Usage\n\n```txt\n3h-serve <root> [options]\n\n    <root>                        Serving root\n                                  Default: .\n\n    -a, --absolute                Indicate that the root path is absolute\n\n    -p, --port          <port>    The port to listen on\n                                  Default: 8080\n\n    --default-page      <file>    The default page to serve\n                                  Default: index.html\n\n    --no-default-page             Disable default page\n\n    --default-ext       <ext>     Default file extension\n                                  Default: .html\n\n    --no-default-ext              Disable default file extension\n\n    --spa               <file>    SPA home page\n                                  Default: 200.html\n\n    --no-spa                      Disable SPA routing\n\n    --forbidden                   Forbidden URL pattern\n\n    --fallback-page     <file>    Fallback page path\n                                  Default: 404.html\n\n    --no-fallback-page            Disable fallback page\n\n    -s, --serverless              Serverless file pattern\n\n    --serverless-ext    <ext>     Default serverless file extension\n                                  Default: .js\n\n    --no-serverless-ext           Disable default serverless file extension\n\n    --no-cache                    Disable cache\n\n    --no-zip                      Disable zipping\n\n    -l, --log-level               Log level\n                                  Options: \"info\"(default), \"log\", \"debug\"\n\n    --silent                      Disable log\n\n    --time-format                 Time format\n                                  Default: [YYYY-MM-DD HH:mm:SS.sss]\n\n    -h, --help                    Show help information\n```\n\n## Program Usage\n\nThe exported APIs are listed here which can be accessed by installing `3h-serve` as a dependency and importing them from `3h-serve`. (Note that the `lib` object is also available as the third parameter of serverless functions.)\n\n```ts\n/**\n * @desc The default MIME type map\n */\nconst DEFAULT_TYPES: Map<string, string>;\n\n/**\n * @typedef ServeOptions\n * @property {string} root The root directory (Default: .)\n * @property {number} port The port to use (Default: 8080)\n * @property {string} timeFormat Time format passing to `3h-log` (Default: [YYYY-MM-DD HH:mm:SS.sss])\n * @property {boolean} cache Whether to enable cache (Default: true)\n * @property {boolean} zip Whether to enable response zipping (Default: true)\n * @property {'info' | 'log' | 'debug'} logLevel Log level (Default: info)\n * @property {boolean} silent Whether to suppress any log (including basic info logging)\n * @property {string | null} separator The separator between logs (Default: ----------)\n * @property {Map<string, string>} types The MINE type map (Default: DEFAULT_TYPES)\n * @property {RegExp | null} forbiddenPattern Pattern of forbidden URLs (Default: null)\n * @property {RegExp | null} serverlessPattern Pattern of serverless files (Default: null)\n * @property {string | null} serverlessExtension Default extension of serverless files (Default: .js)\n * @property {string | null} spaPage SPA home page (Default: 200.html)\n * @property {string | null} defaultPage The default page to serve (Default: index.html)\n * @property {string | null} defaultExtension The default extension to match (Default: .html)\n * @property {string | null} fallbackPage Fallback page (Default: 404.html)\n */\n\n/**\n * @desc Defaults for `serve`\n */\nconst DEFAULT_SERVE_OPTIONS: ServeOptions;\n\n/**\n * @desc Create a server that acts according to given options\n */\nfunction serve(options?: ServeOptions): Server;\n\n/**\n * @desc The lib object provides some useful functionalities for dealing with requests\n */\nnamespace lib {\n\n    /**\n     * @desc Merge the defaults and options\n     */\n    function merge<T>(defaults: T, options: Partial<T>): T;\n\n    /**\n     * @desc Tell whether the given path is a file\n     */\n    function isFile(path: string): boolean;\n\n    /**\n     * @typedef RouteOptions\n     * @property {string | null} spaPage SPA home page\n     * @property {string | null} defaultPage The default page to serve\n     * @property {string | null} defaultExtension The default extension to match\n     * @property {boolean} acceptServerless Whether serverless files are acceptable\n     * @property {string | null} serverlessExtension Default serverless file extension\n     * @property {Logger | null} logger The logger to use\n     */\n\n    /**\n     * @typedef RoutingResult\n     * @property {string} path The result path\n     * @property {boolean} serverless Whether the target is a serverless function\n     */\n\n    /**\n     * @desc Route the given path and returns the result\n     */\n    function route(path: string, options: RouteOptions): RoutingResult | null;\n\n    /**\n     * @desc Log the status code and its corresponding status phrase\n     */\n    function logStatus(logger: Logger, statusCode: number): void;\n\n\n    /**\n     * @desc End the response with the given code and logs it if logger is provided\n     */\n    function endWithCode(response: ServerResponse, code: number, logger?: Logger | null): void;\n\n    /**\n     * @typedef EndWithFileOptions\n     * @property {boolean} cache\n     * @property {boolean} zip\n     * @property {Map<string, string>} types\n     * @property {Logger | null} logger The logger to use\n     */\n\n    /**\n     * @desc End the response with the file indicated by `path`\n     */\n    function endWithFile(\n        request: IncomingMessage,\n        response: ServerResponse,\n        path: string,\n        options: EndWithFileOptions\n    ): void;\n\n    /**\n     * @typedef SolveOptions\n     * @property {string} root The root path\n     * @property {boolean} cache Whether to enable cache\n     * @property {boolean} zip Whether to enable zipping\n     * @property {Map<string, string>} types The MIME map to use\n     * @property {RegExp | null} forbiddenPattern Pattern of forbidden URLs\n     * @property {RegExp | null} serverlessPattern Pattern of serverless files\n     * @property {string | null} serverlessExtension Default extension of serverless files\n     * @property {string | null} spaPage SPA home page\n     * @property {string | null} defaultPage The default page to serve\n     * @property {string | null} defaultExtension The default extension to match\n     * @property {string | null} fallbackPage Fallback page\n     * @property {Logger | null} logger The logger to use\n     */\n\n    /**\n     * @desc Solve the request according to the given path\n     */\n    function solve(\n        request: IncomingMessage,\n        response: ServerResponse,\n        path: string,\n        options: SolveOptions\n    ): void;\n\n}\n```\n","readmeFilename":"README.md"}