diff --git a/package.json b/package.json index c412603..46178ab 100644 --- a/package.json +++ b/package.json @@ -1,16 +1,15 @@ { - "//1": "describes your app and its dependencies", - "//2": "https://docs.npmjs.com/files/package.json", - "//3": "updating this file will download and update your packages", - "name": "hello-express", + "name": "hello-fastify", "version": "0.0.1", - "description": "A simple Node app built on Express, instantly up and running.", + "description": "A simple Node app built on fastify, instantly up and running.", "main": "server.js", "scripts": { "start": "node server.js" }, "dependencies": { - "express": "^4.17.1" + "express": "^4.17.1", + "fastify": "^3.5.1", + "fastify-static": "^3.2.1" }, "engines": { "node": "12.x" diff --git a/server.js b/server.js index 1df7216..e2d1181 100644 --- a/server.js +++ b/server.js @@ -1,34 +1,18 @@ -// server.js -// where your node app starts - -// we've started you off with Express (https://expressjs.com/) -// but feel free to use whatever libraries or frameworks you'd like through `package.json`. -const express = require("express"); -const app = express(); - -// our default array of dreams -const dreams = [ - "Find and count some sheep", - "Climb a really tall mountain", - "Wash the dishes" -]; - -// make all the files in 'public' available -// https://expressjs.com/en/starter/static-files.html -app.use(express.static("public")); - -// https://expressjs.com/en/starter/basic-routing.html -app.get("/", (request, response) => { - response.sendFile(__dirname + "/views/index.html"); +// Require the framework and instantiate it +const fastify = require("fastify")({ + logger: true }); -// send the default array of dreams to the webpage -app.get("/dreams", (request, response) => { - // express helps us take JS objects and send them as JSON - response.json(dreams); +// Declare a route +fastify.get("/", function(request, reply) { + reply.send({ hello: "world" }); }); -// listen for requests :) -const listener = app.listen(process.env.PORT, () => { - console.log("Your app is listening on port " + listener.address().port); +// Run the server! +fastify.listen(process.env.PORT, function(err, address) { + if (err) { + fastify.log.error(err); + process.exit(1); + } + fastify.log.info(`server listening on ${address}`); }); diff --git a/shrinkwrap.yaml b/shrinkwrap.yaml index 64625d4..f91c70b 100644 --- a/shrinkwrap.yaml +++ b/shrinkwrap.yaml @@ -1,6 +1,12 @@ dependencies: express: 4.17.1 + fastify: 3.7.0 + fastify-static: 3.3.0 packages: + /abstract-logging/2.0.1: + dev: false + resolution: + integrity: sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA== /accepts/1.3.7: dependencies: mime-types: 2.1.25 @@ -10,10 +16,42 @@ packages: node: '>= 0.6' resolution: integrity: sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA== + /ajv/6.12.6: + dependencies: + fast-deep-equal: 3.1.3 + fast-json-stable-stringify: 2.1.0 + json-schema-traverse: 0.4.1 + uri-js: 4.4.0 + dev: false + resolution: + integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + /archy/1.0.0: + dev: false + resolution: + integrity: sha1-+cjBN1fMHde8N5rHeyxipcKGjEA= /array-flatten/1.1.1: dev: false resolution: integrity: sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= + /atomic-sleep/1.0.0: + dev: false + engines: + node: '>=8.0.0' + resolution: + integrity: sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ== + /avvio/7.2.0: + dependencies: + archy: 1.0.0 + debug: 4.2.0 + fastq: 1.8.0 + queue-microtask: 1.2.0 + dev: false + resolution: + integrity: sha512-KtC63UyZARidAoIV8wXutAZnDIbZcXBqLjTAhZOX+mdMZBQCh5il/15MvCvma1178nhTwvN2D0TOAdiKG1MpUA== + /balanced-match/1.0.0: + dev: false + resolution: + integrity: sha1-ibTRmasr7kneFk6gK4nORi1xt2c= /body-parser/1.19.0: dependencies: bytes: 3.1.0 @@ -31,12 +69,23 @@ packages: node: '>= 0.8' resolution: integrity: sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw== + /brace-expansion/1.1.11: + dependencies: + balanced-match: 1.0.0 + concat-map: 0.0.1 + dev: false + resolution: + integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== /bytes/3.1.0: dev: false engines: node: '>= 0.8' resolution: integrity: sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== + /concat-map/0.0.1: + dev: false + resolution: + integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= /content-disposition/0.5.3: dependencies: safe-buffer: 5.1.2 @@ -61,12 +110,32 @@ packages: node: '>= 0.6' resolution: integrity: sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg== + /cookie/0.4.1: + dev: false + engines: + node: '>= 0.6' + resolution: + integrity: sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA== /debug/2.6.9: dependencies: ms: 2.0.0 dev: false resolution: integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + /debug/4.2.0: + dependencies: + ms: 2.1.2 + dev: false + engines: + node: '>=6.0' + resolution: + integrity: sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg== + /deepmerge/4.2.2: + dev: false + engines: + node: '>=0.10.0' + resolution: + integrity: sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== /depd/1.1.2: dev: false engines: @@ -134,6 +203,88 @@ packages: node: '>= 0.10.0' resolution: integrity: sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g== + /fast-decode-uri-component/1.0.1: + dev: false + resolution: + integrity: sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg== + /fast-deep-equal/3.1.3: + dev: false + resolution: + integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + /fast-json-stable-stringify/2.1.0: + dev: false + resolution: + integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + /fast-json-stringify/2.2.9: + dependencies: + ajv: 6.12.6 + deepmerge: 4.2.2 + string-similarity: 4.0.2 + dev: false + engines: + node: '>= 10.0.0' + resolution: + integrity: sha512-O8YmNoc7LnfSafVaTfa1yXVFT4UMsi/N7cYcNZw6w5D5tltyu6XGXvH45mvWfsrcFoSK+H0q0exGXsUqC18z/g== + /fast-redact/3.0.0: + dev: false + engines: + node: '>=6' + resolution: + integrity: sha512-a/S/Hp6aoIjx7EmugtzLqXmcNsyFszqbt6qQ99BdG61QjBZF6shNis0BYR6TsZOQ1twYc0FN2Xdhwwbv6+KD0w== + /fast-safe-stringify/2.0.7: + dev: false + resolution: + integrity: sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA== + /fastify-error/0.2.0: + dev: false + resolution: + integrity: sha512-zabxsBatj59ROG0fhP36zNdc5Q1/eYeH9oSF9uvfrurZf8/JKfrJbMcIGrLpLWcf89rS6L91RHWm20A/X85hcA== + /fastify-plugin/3.0.0: + dev: false + resolution: + integrity: sha512-ZdCvKEEd92DNLps5n0v231Bha8bkz1DjnPP/aEz37rz/q42Z5JVLmgnqR4DYuNn3NXAO3IDCPyRvgvxtJ4Ym4w== + /fastify-static/3.3.0: + dependencies: + fastify-plugin: 3.0.0 + glob: 7.1.6 + readable-stream: 3.6.0 + send: 0.17.1 + dev: false + resolution: + integrity: sha512-NaaeGWz25TmCYTGR8z90rhpfCuQqxDJauMC7fUTaswtxkM5CUmGGpwInm5/A55qfn9MbUQbPOWtWwSvhY73xHg== + /fastify-warning/0.2.0: + dev: false + resolution: + integrity: sha512-s1EQguBw/9qtc1p/WTY4eq9WMRIACkj+HTcOIK1in4MV5aFaQC9ZCIt0dJ7pr5bIf4lPpHvAtP2ywpTNgs7hqw== + /fastify/3.7.0: + dependencies: + abstract-logging: 2.0.1 + ajv: 6.12.6 + avvio: 7.2.0 + fast-json-stringify: 2.2.9 + fastify-error: 0.2.0 + fastify-warning: 0.2.0 + find-my-way: 3.0.4 + flatstr: 1.0.12 + light-my-request: 4.2.1 + pino: 6.7.0 + proxy-addr: 2.0.6 + readable-stream: 3.6.0 + rfdc: 1.1.4 + secure-json-parse: 2.1.0 + semver: 7.3.2 + tiny-lru: 7.0.6 + dev: false + engines: + node: '>=10.16.0' + resolution: + integrity: sha512-xmiR1TOSNXXNHfEvBwhWlyj158q59vZkPLIKQ71f7qJG5QMPqCbeYUUFRaDKTaLFhRqmLLFprBpJsO5nbSMiPQ== + /fastq/1.8.0: + dependencies: + reusify: 1.0.4 + dev: false + resolution: + integrity: sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q== /finalhandler/1.1.2: dependencies: debug: 2.6.9 @@ -148,6 +299,20 @@ packages: node: '>= 0.8' resolution: integrity: sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== + /find-my-way/3.0.4: + dependencies: + fast-decode-uri-component: 1.0.1 + safe-regex2: 2.0.0 + semver-store: 0.3.0 + dev: false + engines: + node: '>=10' + resolution: + integrity: sha512-Trl/mNAVvTgCpo9ox6yixkwiZUvecKYUQZoAuMCBACsgGqv+FbWe+jE5sBA5+U8LIWrJk/cw8zPV53GPrjTnsw== + /flatstr/1.0.12: + dev: false + resolution: + integrity: sha512-4zPxDyhCyiN2wIAtSLI6gc82/EjqZc1onI4Mz/l0pWrAlsSfYH/2ZIcU+e3oA2wDwbzIWNKwa23F8rh6+DRWkw== /forwarded/0.1.2: dev: false engines: @@ -160,6 +325,21 @@ packages: node: '>= 0.6' resolution: integrity: sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= + /fs.realpath/1.0.0: + dev: false + resolution: + integrity: sha1-FQStJSMVjKpA20onh8sBQRmU6k8= + /glob/7.1.6: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.0.4 + once: 1.4.0 + path-is-absolute: 1.0.1 + dev: false + resolution: + integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== /http-errors/1.7.2: dependencies: depd: 1.1.2 @@ -192,6 +372,13 @@ packages: node: '>=0.10.0' resolution: integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + /inflight/1.0.6: + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + dev: false + resolution: + integrity: sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= /inherits/2.0.3: dev: false resolution: @@ -206,6 +393,26 @@ packages: node: '>= 0.10' resolution: integrity: sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA== + /ipaddr.js/1.9.1: + dev: false + engines: + node: '>= 0.10' + resolution: + integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== + /json-schema-traverse/0.4.1: + dev: false + resolution: + integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + /light-my-request/4.2.1: + dependencies: + ajv: 6.12.6 + cookie: 0.4.1 + fastify-warning: 0.2.0 + readable-stream: 3.6.0 + set-cookie-parser: 2.4.6 + dev: false + resolution: + integrity: sha512-33FZvX/418IEy0sXldsLiJifbS/ruttcVveTbbZ8sQVR2VSFPA39hBu/iF/hVkt/1V0N7CdTQg4jiiVPdGgW8A== /media-typer/0.3.0: dev: false engines: @@ -243,6 +450,12 @@ packages: hasBin: true resolution: integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== + /minimatch/3.0.4: + dependencies: + brace-expansion: 1.1.11 + dev: false + resolution: + integrity: sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== /ms/2.0.0: dev: false resolution: @@ -251,6 +464,10 @@ packages: dev: false resolution: integrity: sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== + /ms/2.1.2: + dev: false + resolution: + integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== /negotiator/0.6.2: dev: false engines: @@ -265,16 +482,44 @@ packages: node: '>= 0.8' resolution: integrity: sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= + /once/1.4.0: + dependencies: + wrappy: 1.0.2 + dev: false + resolution: + integrity: sha1-WDsap3WWHUsROsF9nFC6753Xa9E= /parseurl/1.3.3: dev: false engines: node: '>= 0.8' resolution: integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== + /path-is-absolute/1.0.1: + dev: false + engines: + node: '>=0.10.0' + resolution: + integrity: sha1-F0uSaHNVNP+8es5r9TpanhtcX18= /path-to-regexp/0.1.7: dev: false resolution: integrity: sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= + /pino-std-serializers/2.5.0: + dev: false + resolution: + integrity: sha512-wXqbqSrIhE58TdrxxlfLwU9eDhrzppQDvGhBEr1gYbzzM4KKo3Y63gSjiDXRKLVS2UOXdPNR2v+KnQgNrs+xUg== + /pino/6.7.0: + dependencies: + fast-redact: 3.0.0 + fast-safe-stringify: 2.0.7 + flatstr: 1.0.12 + pino-std-serializers: 2.5.0 + quick-format-unescaped: 4.0.1 + sonic-boom: 1.3.0 + dev: false + hasBin: true + resolution: + integrity: sha512-vPXJ4P9rWCwzlTJt+f0Ni4THc3DWyt8iDDCO4edQ8narTu6hnpzdXu8FqeSJCGndl1W6lfbYQUQihUO54y66Lw== /proxy-addr/2.0.5: dependencies: forwarded: 0.1.2 @@ -284,12 +529,35 @@ packages: node: '>= 0.10' resolution: integrity: sha512-t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ== + /proxy-addr/2.0.6: + dependencies: + forwarded: 0.1.2 + ipaddr.js: 1.9.1 + dev: false + engines: + node: '>= 0.10' + resolution: + integrity: sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw== + /punycode/2.1.1: + dev: false + engines: + node: '>=6' + resolution: + integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== /qs/6.7.0: dev: false engines: node: '>=0.6' resolution: integrity: sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ== + /queue-microtask/1.2.0: + dev: false + resolution: + integrity: sha512-J95OVUiS4b8qqmpqhCodN8yPpHG2mpZUPQ8tDGyIY0VhM+kBHszOuvsMJVGNQ1OH2BnTFbqz45i+2jGpDw9H0w== + /quick-format-unescaped/4.0.1: + dev: false + resolution: + integrity: sha512-RyYpQ6Q5/drsJyOhrWHYMWTedvjTIat+FTwv0K4yoUxzvekw2aRHMQJLlnvt8UantkZg2++bEzD9EdxXqkWf4A== /range-parser/1.2.1: dev: false engines: @@ -307,14 +575,66 @@ packages: node: '>= 0.8' resolution: integrity: sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q== + /readable-stream/3.6.0: + dependencies: + inherits: 2.0.4 + string_decoder: 1.3.0 + util-deprecate: 1.0.2 + dev: false + engines: + node: '>= 6' + resolution: + integrity: sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== + /ret/0.2.2: + dev: false + engines: + node: '>=4' + resolution: + integrity: sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ== + /reusify/1.0.4: + dev: false + engines: + iojs: '>=1.0.0' + node: '>=0.10.0' + resolution: + integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== + /rfdc/1.1.4: + dev: false + resolution: + integrity: sha512-5C9HXdzK8EAqN7JDif30jqsBzavB7wLpaubisuQIGHWf2gUXSpzy6ArX/+Da8RjFpagWsCn+pIgxTMAmKw9Zug== /safe-buffer/5.1.2: dev: false resolution: integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + /safe-buffer/5.2.1: + dev: false + resolution: + integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + /safe-regex2/2.0.0: + dependencies: + ret: 0.2.2 + dev: false + resolution: + integrity: sha512-PaUSFsUaNNuKwkBijoAPHAK6/eM6VirvyPWlZ7BAQy4D+hCvh4B6lIG+nPdhbFfIbP+gTGBcrdsOaUs0F+ZBOQ== /safer-buffer/2.1.2: dev: false resolution: integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + /secure-json-parse/2.1.0: + dev: false + resolution: + integrity: sha512-GckO+MS/wT4UogDyoI/H/S1L0MCcKS1XX/vp48wfmU7Nw4woBmb8mIpu4zPBQjKlRT88/bt9xdoV4111jPpNJA== + /semver-store/0.3.0: + dev: false + resolution: + integrity: sha512-TcZvGMMy9vodEFSse30lWinkj+JgOBvPn8wRItpQRSayhc+4ssDs335uklkfvQQJgL/WvmHLVj4Ycv2s7QCQMg== + /semver/7.3.2: + dev: false + engines: + node: '>=10' + hasBin: true + resolution: + integrity: sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ== /send/0.17.1: dependencies: debug: 2.6.9 @@ -346,16 +666,43 @@ packages: node: '>= 0.8.0' resolution: integrity: sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg== + /set-cookie-parser/2.4.6: + dev: false + resolution: + integrity: sha512-mNCnTUF0OYPwYzSHbdRdCfNNHqrne+HS5tS5xNb6yJbdP9wInV0q5xPLE0EyfV/Q3tImo3y/OXpD8Jn0Jtnjrg== /setprototypeof/1.1.1: dev: false resolution: integrity: sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw== + /sonic-boom/1.3.0: + dependencies: + atomic-sleep: 1.0.0 + flatstr: 1.0.12 + dev: false + resolution: + integrity: sha512-4nX6OYvOYr6R76xfQKi6cZpTO3YSWe/vd+QdIfoH0lBy0MnPkeAbb2rRWgmgADkXUeCKPwO1FZAKlAVWAadELw== /statuses/1.5.0: dev: false engines: node: '>= 0.6' resolution: integrity: sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= + /string-similarity/4.0.2: + dev: false + resolution: + integrity: sha512-eCsPPyoQBgY4TMpVD6DVfO7pLrimUONriaO4Xjp3WPUW0YnNLqdHgRj23xotLlqrL90eJhBeq3zdAJf2mQgfBQ== + /string_decoder/1.3.0: + dependencies: + safe-buffer: 5.2.1 + dev: false + resolution: + integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + /tiny-lru/7.0.6: + dev: false + engines: + node: '>=6' + resolution: + integrity: sha512-zNYO0Kvgn5rXzWpL0y3RS09sMK67eGaQj9805jlK9G6pSadfriTczzLHFXa/xcW4mIRfmlB9HyQ/+SgL0V1uow== /toidentifier/1.0.0: dev: false engines: @@ -377,6 +724,16 @@ packages: node: '>= 0.8' resolution: integrity: sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= + /uri-js/4.4.0: + dependencies: + punycode: 2.1.1 + dev: false + resolution: + integrity: sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g== + /util-deprecate/1.0.2: + dev: false + resolution: + integrity: sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= /utils-merge/1.0.1: dev: false engines: @@ -389,8 +746,14 @@ packages: node: '>= 0.8' resolution: integrity: sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= + /wrappy/1.0.2: + dev: false + resolution: + integrity: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= registry: 'https://registry.npmjs.org/' shrinkwrapMinorVersion: 9 shrinkwrapVersion: 3 specifiers: express: ^4.17.1 + fastify: ^3.5.1 + fastify-static: ^3.2.1