main
HerrHase 1 year ago
parent 5c0e64d71c
commit 25faa9f629

832
package-lock.json generated

File diff suppressed because it is too large Load Diff

@ -2,6 +2,7 @@ import fastify from 'fastify'
import dotenv from 'dotenv'
import path from 'path'
import { EventEmitter } from 'events'
import formBody from '@fastify/formbody'
// getting .env
dotenv.config({ path: path.join(path.resolve(), '/../../.env') })
@ -12,6 +13,9 @@ const server = fastify()
// adding eventEmitter
server.decorate('eventEmitter', new EventEmitter())
// adding formBody
server.register(formBody)
/**
* add xmpp
*
@ -34,13 +38,14 @@ server.register(xmpp, {
import helmet from '@fastify/helmet'
server.register(
/***
server.register(
helmet, {
referrerPolicy: {
policy: ['origin']
}
}
)
)*/
/**
* add rateLimit

@ -1,4 +1,4 @@
import * as DOMPurify from 'dompurify'
import DOMPurify from 'isomorphic-dompurify'
/**
*
@ -21,15 +21,20 @@ async function parserHandler(request, response) {
// if parser not found send 404
if (allowedParsers.indexOf(parserName) === -1) {
console.log('Parsers: "' + parserName + '" not found!')
return response
.code(404)
.send()
}
// getting parser and set body to parser
const Parser = await import('./../../parsers/' + parserName + '.js')
response.locals.parser = new Parser.default(request.body)
const Parser = await import('./../parsers/' + parserName + '.js')
response.locals = {
parser: new Parser.default(request.body)
}
}
export default parserHandler

@ -1,3 +1,5 @@
import DOMPurify from 'isomorphic-dompurify'
/**
* handle token
*
@ -7,8 +9,11 @@
*
*/
async function tokenHandler(request, token) {
if (request.params.token !== process.env.APP_API_TOKEN) {
async function tokenHandler(request, response) {
const token = DOMPurify.sanitize(request.params.token)
if (token !== process.env.APP_API_TOKEN) {
return response
.code(401)
.send()

@ -7,8 +7,8 @@
*
*/
export default async function(fastify, opts)
{
export default async function(fastify, opts) {
/**
* getting post getting allowed parser class and send over xmpp
*
@ -16,8 +16,7 @@ export default async function(fastify, opts)
* @param {object} response
*
*/
fastify.get('/v1', async function (request, response)
{
fastify.get('/v1', async function (request, response) {
response
.code(200)
.send()

@ -14,7 +14,7 @@ export default async function(fastify, options) {
fastify.addHook('preHandler', tokenHandler)
fastify.addHook('preHandler', parserHandler)
/**
* getting post getting allowed parser class and send over xmpp
*
@ -22,7 +22,7 @@ export default async function(fastify, options) {
* @param {object} response
*
*/
fastify.post('/v1/:parser([a-zA-Z0-9]{0,255})/:token([a-zA-Z0-9])', async function (request, response) {
fastify.post('/v1/:token/:parser', async function (request, response) {
// getting parser from preHandler: parserHandler
const result = response.locals.parser.run()

@ -7,12 +7,13 @@
},
"type": "module",
"dependencies": {
"@fastify/formbody": "^7.4.0",
"@fastify/helmet": "^11.0.0",
"@fastify/rate-limit": "^8.0.1",
"@xmpp/client": "^0.13.1",
"dompurify": "^3.0.4",
"dotenv": "^10.0.0",
"fastify": "^4.19.2",
"fastify-plugin": "^4.5.0"
"fastify-plugin": "^4.5.0",
"isomorphic-dompurify": "^1.7.0"
}
}

@ -1,5 +1,5 @@
import Parser from './parser.js'
import * as DOMPurify from 'dompurify'
import Parser from './_parser.js'
import DOMPurify from 'isomorphic-dompurify'
/**
* Parser for Kuma, getting only error message

@ -1,5 +1,5 @@
import Parser from './parser.js'
import * as DOMPurify from 'dompurify'
import Parser from './_parser.js'
import DOMPurify from 'isomorphic-dompurify'
/**
* Parser for "text" in Json, is used by slack

@ -293,6 +293,14 @@
dependencies:
"fast-json-stringify" "^5.7.0"
"@fastify/formbody@^7.4.0":
"integrity" "sha512-H3C6h1GN56/SMrZS8N2vCT2cZr7mIHzBHzOBa5OPpjfB/D6FzP9mMpE02ZzrFX0ANeh0BAJdoXKOF2e7IbV+Og=="
"resolved" "https://registry.npmjs.org/@fastify/formbody/-/formbody-7.4.0.tgz"
"version" "7.4.0"
dependencies:
"fast-querystring" "^1.0.0"
"fastify-plugin" "^4.0.0"
"@fastify/helmet@^11.0.0":
"integrity" "sha512-YSFhJFR4Pk2azmTkX54f0Z/O7h5j4ruCQUlagf/Rw1P45u5/2u+F+I83DRyIKryM6prXl++X2yY0Ib0RXAlZ7Q=="
"resolved" "https://registry.npmjs.org/@fastify/helmet/-/helmet-11.0.0.tgz"
@ -357,6 +365,23 @@
"resolved" "https://registry.npmjs.org/@nicolo-ribaudo/semver-v6/-/semver-v6-6.3.3.tgz"
"version" "6.3.3"
"@tootallnate/once@2":
"integrity" "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A=="
"resolved" "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz"
"version" "2.0.0"
"@types/dompurify@^3.0.2":
"integrity" "sha512-YBL4ziFebbbfQfH5mlC+QTJsvh0oJUrWbmxKMyEdL7emlHJqGR2Qb34TEFKj+VCayBvjKy3xczMFNhugThUsfQ=="
"resolved" "https://registry.npmjs.org/@types/dompurify/-/dompurify-3.0.2.tgz"
"version" "3.0.2"
dependencies:
"@types/trusted-types" "*"
"@types/trusted-types@*":
"integrity" "sha512-NfQ4gyz38SL8sDNrSixxU2Os1a5xcdFxipAFxYEuLUlvU2uDwS4NUpsImcf1//SlWItCVMMLiylsxbmNMToV/g=="
"resolved" "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.3.tgz"
"version" "2.0.3"
"@xmpp/base64@^0.13.1":
"integrity" "sha512-ifzj81zZc8uhL9Nl8us2NUDfLt3qsbHr8lwdKmrDMk/9unY8aIGjzHdNBJoFFyJe8GSo1NFq3mS7X+X0TwkQYw=="
"resolved" "https://registry.npmjs.org/@xmpp/base64/-/base64-0.13.1.tgz"
@ -574,6 +599,11 @@
dependencies:
"ltx" "^3.0.0"
"abab@^2.0.6":
"integrity" "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA=="
"resolved" "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz"
"version" "2.0.6"
"abort-controller@^3.0.0":
"integrity" "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg=="
"resolved" "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz"
@ -586,6 +616,13 @@
"resolved" "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz"
"version" "2.0.1"
"agent-base@6":
"integrity" "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ=="
"resolved" "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz"
"version" "6.0.2"
dependencies:
"debug" "4"
"ajv-formats@^2.1.1":
"integrity" "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA=="
"resolved" "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz"
@ -1130,6 +1167,11 @@
"resolved" "https://registry.npmjs.org/async/-/async-1.5.2.tgz"
"version" "1.5.2"
"asynckit@^0.4.0":
"integrity" "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="
"resolved" "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz"
"version" "0.4.0"
"atomic-sleep@^1.0.0":
"integrity" "sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ=="
"resolved" "https://registry.npmjs.org/atomic-sleep/-/atomic-sleep-1.0.0.tgz"
@ -1843,6 +1885,13 @@
"resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz"
"version" "1.1.3"
"combined-stream@^1.0.8":
"integrity" "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg=="
"resolved" "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz"
"version" "1.0.8"
dependencies:
"delayed-stream" "~1.0.0"
"commander@^4.0.1":
"integrity" "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA=="
"resolved" "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz"
@ -1963,6 +2012,13 @@
"safe-buffer" "^5.0.1"
"sha.js" "^2.4.8"
"cssstyle@^3.0.0":
"integrity" "sha512-N4u2ABATi3Qplzf0hWbVCdjenim8F3ojEXpBDF5hBpjzW182MjNGLqfmQ0SkSPeQ+V86ZXgeH8aXj6kayd4jgg=="
"resolved" "https://registry.npmjs.org/cssstyle/-/cssstyle-3.0.0.tgz"
"version" "3.0.0"
dependencies:
"rrweb-cssom" "^0.6.0"
"cwd@^0.10.0":
"integrity" "sha512-YGZxdTTL9lmLkCUTpg4j0zQ7IhRB5ZmqNBbGCl3Tg6MP/d5/6sY7L5mmTjzbc6JKgVZYiqTQTNhPFsbXNGlRaA=="
"resolved" "https://registry.npmjs.org/cwd/-/cwd-0.10.0.tgz"
@ -1997,6 +2053,15 @@
"rimraf" "^2.5.3"
"union-value" "^0.2.3"
"data-urls@^4.0.0":
"integrity" "sha512-/mMTei/JXPqvFqQtfyTowxmJVwr2PVAeCcDxyFf6LhoOu/09TX2OX3kb2wzi4DMXcfj4OItwDOnhl5oziPnT6g=="
"resolved" "https://registry.npmjs.org/data-urls/-/data-urls-4.0.0.tgz"
"version" "4.0.0"
dependencies:
"abab" "^2.0.6"
"whatwg-mimetype" "^3.0.0"
"whatwg-url" "^12.0.0"
"debug@^2.2.0":
"integrity" "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA=="
"resolved" "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz"
@ -2039,7 +2104,7 @@
dependencies:
"ms" "2.0.0"
"debug@^4.0.0", "debug@^4.1.0":
"debug@^4.0.0", "debug@^4.1.0", "debug@4":
"integrity" "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ=="
"resolved" "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz"
"version" "4.3.4"
@ -2053,6 +2118,11 @@
dependencies:
"ms" "2.0.0"
"decimal.js@^10.4.3":
"integrity" "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA=="
"resolved" "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz"
"version" "10.4.3"
"deep-bind@^0.3.0":
"integrity" "sha512-SwekOBPDnCT3qhOM78ARzBdPSbNMyQ63F8eZDahBzzVAoqousMhYh3HYIh2pLmhtGcVvO8/SU6B6kMsj0SXb1Q=="
"resolved" "https://registry.npmjs.org/deep-bind/-/deep-bind-0.3.0.tgz"
@ -2098,6 +2168,11 @@
dependencies:
"is-descriptor" "^1.0.0"
"delayed-stream@~1.0.0":
"integrity" "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ=="
"resolved" "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz"
"version" "1.0.0"
"delimiter-regex@^1.3.1":
"integrity" "sha512-NyEdbzFCa0imbFMxQH6X5AB/DxngubpAAiQEqaam+YYcT0gGiM1gFo410HwpiPOruHl8HfFM913tFLjA8kkvHg=="
"resolved" "https://registry.npmjs.org/delimiter-regex/-/delimiter-regex-1.3.1.tgz"
@ -2123,6 +2198,13 @@
"resolved" "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz"
"version" "1.2.0"
"domexception@^4.0.0":
"integrity" "sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw=="
"resolved" "https://registry.npmjs.org/domexception/-/domexception-4.0.0.tgz"
"version" "4.0.0"
dependencies:
"webidl-conversions" "^7.0.0"
"dompurify@^3.0.4":
"integrity" "sha512-ae0mA+Qiqp6C29pqZX3fQgK+F91+F7wobM/v8DRzDqJdZJELXiFUx4PP4pK/mzUS0xkiSEx3Ncd9gr69jg3YsQ=="
"resolved" "https://registry.npmjs.org/dompurify/-/dompurify-3.0.4.tgz"
@ -2240,6 +2322,11 @@
"object.omit" "^2.0.0"
"set-value" "^0.2.0"
"entities@^4.4.0":
"integrity" "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw=="
"resolved" "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz"
"version" "4.5.0"
"error-symbol@^0.1.0":
"integrity" "sha512-VyjaKxUmeDX/m2lxm/aknsJ1GWDWUO2Ze2Ad8S1Pb9dykAm9TjSKp5CjrNyltYqZ5W/PO6TInAmO2/BfwMyT1g=="
"resolved" "https://registry.npmjs.org/error-symbol/-/error-symbol-0.1.0.tgz"
@ -2695,6 +2782,15 @@
dependencies:
"is-callable" "^1.1.3"
"form-data@^4.0.0":
"integrity" "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww=="
"resolved" "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz"
"version" "4.0.0"
dependencies:
"asynckit" "^0.4.0"
"combined-stream" "^1.0.8"
"mime-types" "^2.1.12"
"forwarded@0.2.0":
"integrity" "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow=="
"resolved" "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz"
@ -3103,6 +3199,13 @@
dependencies:
"parse-passwd" "^1.0.0"
"html-encoding-sniffer@^3.0.0":
"integrity" "sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA=="
"resolved" "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz"
"version" "3.0.0"
dependencies:
"whatwg-encoding" "^2.0.0"
"http-errors@2.0.0":
"integrity" "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ=="
"resolved" "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz"
@ -3114,12 +3217,29 @@
"statuses" "2.0.1"
"toidentifier" "1.0.1"
"iconv-lite@0.4.24":
"integrity" "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA=="
"resolved" "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz"
"version" "0.4.24"
"http-proxy-agent@^5.0.0":
"integrity" "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w=="
"resolved" "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz"
"version" "5.0.0"
dependencies:
"@tootallnate/once" "2"
"agent-base" "6"
"debug" "4"
"https-proxy-agent@^5.0.1":
"integrity" "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA=="
"resolved" "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz"
"version" "5.0.1"
dependencies:
"agent-base" "6"
"debug" "4"
"iconv-lite@0.4.24", "iconv-lite@0.6.3":
"integrity" "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw=="
"resolved" "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz"
"version" "0.6.3"
dependencies:
"safer-buffer" ">= 2.1.2 < 3"
"safer-buffer" ">= 2.1.2 < 3.0.0"
"ieee754@^1.2.1":
"integrity" "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="
@ -3424,6 +3544,11 @@
"resolved" "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz"
"version" "0.1.1"
"is-potential-custom-element-name@^1.0.1":
"integrity" "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ=="
"resolved" "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz"
"version" "1.0.1"
"is-primitive@^2.0.0":
"integrity" "sha512-N3w1tFaRfk3UrPfqeRyD+GYDASU3W5VinKhlORy8EWVf/sIdDL9GAcew85XmktCfH+ngG7SRXEVDoO18WMdB/Q=="
"resolved" "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz"
@ -3634,6 +3759,15 @@
"resolved" "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz"
"version" "3.0.1"
"isomorphic-dompurify@^1.7.0":
"integrity" "sha512-Iqt+WDG6I6qjsHAV9k3TYXemKHz5pfMZbSDklCXY2KaQY/jY2s+VbpxKP4j0ujCZ+11/oUB4NPQMY+dVEJ9vPA=="
"resolved" "https://registry.npmjs.org/isomorphic-dompurify/-/isomorphic-dompurify-1.7.0.tgz"
"version" "1.7.0"
dependencies:
"@types/dompurify" "^3.0.2"
"dompurify" "^3.0.4"
"jsdom" "^22.1.0"
"isstream@^0.1.2":
"integrity" "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g=="
"resolved" "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz"
@ -3652,6 +3786,35 @@
"argparse" "^1.0.7"
"esprima" "^4.0.0"
"jsdom@^22.1.0":
"integrity" "sha512-/9AVW7xNbsBv6GfWho4TTNjEo9fe6Zhf9O7s0Fhhr3u+awPwAJMKwAMXnkk5vBxflqLW9hTHX/0cs+P3gW+cQw=="
"resolved" "https://registry.npmjs.org/jsdom/-/jsdom-22.1.0.tgz"
"version" "22.1.0"
dependencies:
"abab" "^2.0.6"
"cssstyle" "^3.0.0"
"data-urls" "^4.0.0"
"decimal.js" "^10.4.3"
"domexception" "^4.0.0"
"form-data" "^4.0.0"
"html-encoding-sniffer" "^3.0.0"
"http-proxy-agent" "^5.0.0"
"https-proxy-agent" "^5.0.1"
"is-potential-custom-element-name" "^1.0.1"
"nwsapi" "^2.2.4"
"parse5" "^7.1.2"
"rrweb-cssom" "^0.6.0"
"saxes" "^6.0.0"
"symbol-tree" "^3.2.4"
"tough-cookie" "^4.1.2"
"w3c-xmlserializer" "^4.0.0"
"webidl-conversions" "^7.0.0"
"whatwg-encoding" "^2.0.0"
"whatwg-mimetype" "^3.0.0"
"whatwg-url" "^12.0.1"
"ws" "^8.13.0"
"xml-name-validator" "^4.0.0"
"jsesc@^2.5.1":
"integrity" "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA=="
"resolved" "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz"
@ -4261,7 +4424,7 @@
"resolved" "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz"
"version" "1.52.0"
"mime-types@~2.1.24":
"mime-types@^2.1.12", "mime-types@~2.1.24":
"integrity" "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw=="
"resolved" "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz"
"version" "2.1.35"
@ -4429,6 +4592,11 @@
"resolved" "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz"
"version" "1.0.1"
"nwsapi@^2.2.4":
"integrity" "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ=="
"resolved" "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz"
"version" "2.2.7"
"object-assign@^4.0.0", "object-assign@^4.1.0":
"integrity" "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg=="
"resolved" "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz"
@ -4647,6 +4815,13 @@
"resolved" "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz"
"version" "1.0.0"
"parse5@^7.1.2":
"integrity" "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw=="
"resolved" "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz"
"version" "7.1.2"
dependencies:
"entities" "^4.4.0"
"parser-front-matter@^1.4.1":
"integrity" "sha512-eqtUnI5+COkf1CQOYo8FmykN5Zs+5Yr60f/7GcPgQDZEEjdE/VZ4WMaMo9g37foof8h64t/TH2Uvk2Sq0fDy/g=="
"resolved" "https://registry.npmjs.org/parser-front-matter/-/parser-front-matter-1.6.4.tgz"
@ -4803,7 +4978,12 @@
"forwarded" "0.2.0"
"ipaddr.js" "1.9.1"
"punycode@^2.1.0":
"psl@^1.1.33":
"integrity" "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag=="
"resolved" "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz"
"version" "1.9.0"
"punycode@^2.1.0", "punycode@^2.1.1", "punycode@^2.3.0":
"integrity" "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA=="
"resolved" "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz"
"version" "2.3.0"
@ -4822,6 +5002,11 @@
dependencies:
"side-channel" "^1.0.4"
"querystringify@^2.1.1":
"integrity" "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ=="
"resolved" "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz"
"version" "2.2.0"
"question-cache@^0.4.0":
"integrity" "sha512-QgX1mI/ZNBbG8M5gYfZQG/qxZRggP2Fk+WOqE/FKylmNwi5aWy6o1JSaojYrHT5JUtRdyG+wwVJSlTfW7UBmog=="
"resolved" "https://registry.npmjs.org/question-cache/-/question-cache-0.4.0.tgz"
@ -5115,6 +5300,11 @@
"resolved" "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz"
"version" "2.0.2"
"requires-port@^1.0.0":
"integrity" "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ=="
"resolved" "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz"
"version" "1.0.0"
"resolve-dir@^0.1.0":
"integrity" "sha512-QxMPqI6le2u0dCLyiGzgy92kjkkL6zO0XyvHzjdTNH3zM6e5Hz3BwG6+aEyNgiQ5Xz6PwTwgQEj3U50dByPKIA=="
"resolved" "https://registry.npmjs.org/resolve-dir/-/resolve-dir-0.1.1.tgz"
@ -5235,6 +5425,11 @@
"hash-base" "^3.0.0"
"inherits" "^2.0.1"
"rrweb-cssom@^0.6.0":
"integrity" "sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw=="
"resolved" "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.6.0.tgz"
"version" "0.6.0"
"run-async@^0.1.0":
"integrity" "sha512-qOX+w+IxFgpUpJfkv2oGN0+ExPs68F4sZHfaRRx4dDexAQkG83atugKVEylyT5ARees3HBbfmuvnjbrd8j9Wjw=="
"resolved" "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz"
@ -5288,7 +5483,7 @@
"resolved" "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz"
"version" "2.4.3"
"safer-buffer@>= 2.1.2 < 3":
"safer-buffer@>= 2.1.2 < 3.0.0":
"integrity" "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
"resolved" "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz"
"version" "2.1.2"
@ -5318,6 +5513,13 @@
"resolved" "https://registry.npmjs.org/saslmechanisms/-/saslmechanisms-0.1.1.tgz"
"version" "0.1.1"
"saxes@^6.0.0":
"integrity" "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA=="
"resolved" "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz"
"version" "6.0.0"
dependencies:
"xmlchars" "^2.2.0"
"secure-json-parse@^2.5.0":
"integrity" "sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw=="
"resolved" "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-2.7.0.tgz"
@ -5366,13 +5568,17 @@
"server@file:/home/herrhase/Workspace/herrhase/tellme-bot/packages/server":
"resolved" "file:packages/server"
"version" "0.2.0"
"version" "0.1.0"
dependencies:
"@fastify/formbody" "^7.4.0"
"@fastify/helmet" "^11.0.0"
"@fastify/rate-limit" "^8.0.1"
"@xmpp/client" "^0.13.1"
"dompurify" "^3.0.4"
"dotenv" "^10.0.0"
"fastify" "^4.19.2"
"fastify-plugin" "^4.5.0"
"isomorphic-dompurify" "^1.7.0"
"set-blocking@^2.0.0":
"integrity" "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw=="
@ -5666,6 +5872,11 @@
"resolved" "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz"
"version" "1.0.0"
"symbol-tree@^3.2.4":
"integrity" "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw=="
"resolved" "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz"
"version" "3.2.4"
"tableize-object@^0.1.0":
"integrity" "sha512-seDB76zNqvGXG0W8gxUteRuq1fk1dvSxcRVbeYQ1a1QqMkbtqrGwvqTubfN6VCizzlb7NxOPM/j3z9JeBrbxYg=="
"resolved" "https://registry.npmjs.org/tableize-object/-/tableize-object-0.1.0.tgz"
@ -5865,6 +6076,23 @@
"resolved" "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz"
"version" "1.0.1"
"tough-cookie@^4.1.2":
"integrity" "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw=="
"resolved" "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz"
"version" "4.1.3"
dependencies:
"psl" "^1.1.33"
"punycode" "^2.1.1"
"universalify" "^0.2.0"
"url-parse" "^1.5.3"
"tr46@^4.1.1":
"integrity" "sha512-2lv/66T7e5yNyhAAC4NaKe5nVavzuGJQVVtRYLyQ2OI8tsJ61PMLlelehb0wi2Hx6+hT/OJUWZcw8MjlSRnxvw=="
"resolved" "https://registry.npmjs.org/tr46/-/tr46-4.1.1.tgz"
"version" "4.1.1"
dependencies:
"punycode" "^2.3.0"
"tr46@~0.0.3":
"integrity" "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
"resolved" "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz"
@ -5942,6 +6170,11 @@
"json-stable-stringify-without-jsonify" "^1.0.1"
"through2-filter" "^3.0.0"
"universalify@^0.2.0":
"integrity" "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg=="
"resolved" "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz"
"version" "0.2.0"
"unpipe@1.0.0":
"integrity" "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ=="
"resolved" "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz"
@ -5983,6 +6216,14 @@
dependencies:
"punycode" "^2.1.0"
"url-parse@^1.5.3":
"integrity" "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ=="
"resolved" "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz"
"version" "1.5.10"
dependencies:
"querystringify" "^2.1.1"
"requires-port" "^1.0.0"
"use@^1.1.2":
"integrity" "sha512-25Uw2xiVk0m2ySqmnu2GjOIROlImdXMRcpI6Cq7sZeG/zFZgFkSeo2+QwKNWJncfZOVS55eACoinvJ3EtprOBw=="
"resolved" "https://registry.npmjs.org/use/-/use-1.1.2.tgz"
@ -6090,6 +6331,13 @@
"remove-trailing-separator" "^1.0.1"
"replace-ext" "^1.0.0"
"w3c-xmlserializer@^4.0.0":
"integrity" "sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw=="
"resolved" "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz"
"version" "4.0.0"
dependencies:
"xml-name-validator" "^4.0.0"
"warning-symbol@^0.1.0":
"integrity" "sha512-1S0lwbHo3kNUKA4VomBAhqn4DPjQkIKSdbOin5K7EFUQNwyIKx+wZMGXKI53RUjla8V2B8ouQduUlgtx8LoSMw=="
"resolved" "https://registry.npmjs.org/warning-symbol/-/warning-symbol-0.1.0.tgz"
@ -6100,6 +6348,39 @@
"resolved" "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz"
"version" "3.0.1"
"webidl-conversions@^7.0.0":
"integrity" "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g=="
"resolved" "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz"
"version" "7.0.0"
"whatwg-encoding@^2.0.0":
"integrity" "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg=="
"resolved" "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz"
"version" "2.0.0"
dependencies:
"iconv-lite" "0.6.3"
"whatwg-mimetype@^3.0.0":
"integrity" "sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q=="
"resolved" "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz"
"version" "3.0.0"
"whatwg-url@^12.0.0":
"integrity" "sha512-Ed/LrqB8EPlGxjS+TrsXcpUond1mhccS3pchLhzSgPCnTimUCKj3IZE75pAs5m6heB2U2TMerKFUXheyHY+VDQ=="
"resolved" "https://registry.npmjs.org/whatwg-url/-/whatwg-url-12.0.1.tgz"
"version" "12.0.1"
dependencies:
"tr46" "^4.1.1"
"webidl-conversions" "^7.0.0"
"whatwg-url@^12.0.1":
"integrity" "sha512-Ed/LrqB8EPlGxjS+TrsXcpUond1mhccS3pchLhzSgPCnTimUCKj3IZE75pAs5m6heB2U2TMerKFUXheyHY+VDQ=="
"resolved" "https://registry.npmjs.org/whatwg-url/-/whatwg-url-12.0.1.tgz"
"version" "12.0.1"
dependencies:
"tr46" "^4.1.1"
"webidl-conversions" "^7.0.0"
"whatwg-url@^5.0.0":
"integrity" "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw=="
"resolved" "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz"
@ -6157,11 +6438,21 @@
dependencies:
"mkdirp" "^0.5.1"
"ws@^8.4.0":
"ws@^8.13.0", "ws@^8.4.0":
"integrity" "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA=="
"resolved" "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz"
"version" "8.13.0"
"xml-name-validator@^4.0.0":
"integrity" "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw=="
"resolved" "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz"
"version" "4.0.0"
"xmlchars@^2.2.0":
"integrity" "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw=="
"resolved" "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz"
"version" "2.2.0"
"xtend@>=4.0.0 <4.1.0-0", "xtend@~4.0.0", "xtend@~4.0.1":
"integrity" "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ=="
"resolved" "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz"

Loading…
Cancel
Save