From c6158fe2e2bc419318974ea2ad23442bced5c91e Mon Sep 17 00:00:00 2001 From: Fabian Stamm Date: Mon, 15 Sep 2025 22:04:57 +0200 Subject: [PATCH] Updating dependencies and switching to ESModules where possible --- .yarnrc.yml | 21 +- Backend/package.json | 84 +- Backend/src/api/admin/client.ts | 382 +- Backend/src/api/admin/index.ts | 48 +- Backend/src/api/admin/permission.ts | 11 +- Backend/src/api/admin/regcode.ts | 136 +- Backend/src/api/admin/user.ts | 186 +- Backend/src/api/client/index.ts | 220 +- Backend/src/api/client/permissions.ts | 12 +- Backend/src/api/index.ts | 22 +- Backend/src/api/internal/index.ts | 60 +- Backend/src/api/internal/oauth.ts | 10 +- Backend/src/api/internal/password.ts | 70 +- Backend/src/api/jrpc/index.ts | 12 +- Backend/src/api/jrpc/services/account.ts | 8 +- Backend/src/api/jrpc/services/login.ts | 19 +- Backend/src/api/jrpc/services/security.ts | 6 +- Backend/src/api/jrpc/services/twofactor.ts | 27 +- Backend/src/api/middlewares/client.ts | 245 +- Backend/src/api/middlewares/stacker.ts | 56 +- Backend/src/api/middlewares/user.ts | 6 +- Backend/src/api/middlewares/verify.ts | 283 +- Backend/src/api/oauth/auth.ts | 14 +- Backend/src/api/oauth/index.ts | 146 +- Backend/src/api/oauth/jwt.ts | 86 +- Backend/src/api/oauth/profile.ts | 6 +- Backend/src/api/oauth/public.ts | 12 +- Backend/src/api/oauth/refresh.ts | 244 +- Backend/src/api/user/index.ts | 4 +- Backend/src/api/user/oauth/_helper.ts | 42 +- Backend/src/api/user/oauth/index.ts | 24 +- Backend/src/api/user/oauth/jwt.ts | 48 +- Backend/src/api/user/oauth/permissions.ts | 16 +- Backend/src/api/user/oauth/refresh_token.ts | 96 +- Backend/src/api/user/register.ts | 310 +- Backend/src/database.ts | 2 +- Backend/src/express.d.ts | 4 +- Backend/src/helper/jwt.ts | 8 +- Backend/src/helper/login.ts | 2 +- Backend/src/helper/user_key.ts | 36 +- Backend/src/index.ts | 180 +- Backend/src/keys.ts | 1 - Backend/src/models/client.ts | 4 +- Backend/src/models/client_code.ts | 5 +- Backend/src/models/grants.ts | 4 +- Backend/src/models/login_token.ts | 4 +- Backend/src/models/mail.ts | 48 +- Backend/src/models/permissions.ts | 4 +- Backend/src/models/refresh_token.ts | 4 +- Backend/src/models/regcodes.ts | 4 +- Backend/src/models/twofactor.ts | 6 +- Backend/src/models/user.ts | 7 +- Backend/src/testdata.ts | 16 +- Backend/src/views/admin.ts | 16 +- Backend/src/views/authorize.ts | 44 +- Backend/src/views/index.ts | 12 +- Backend/src/views/register.ts | 18 +- Backend/src/web.ts | 43 +- Backend/tsconfig.json | 21 +- Frontend/package.json | 48 +- FrontendLegacy/package.json | 22 +- _API/package.json | 2 +- _API/tsconfig-esm.json | 43 +- _API/tsconfig.json | 43 +- package.json | 2 +- yarn.lock | 4667 +++++++++++-------- 66 files changed, 4540 insertions(+), 3752 deletions(-) diff --git a/.yarnrc.yml b/.yarnrc.yml index 1e0ab28..4ae98fe 100644 --- a/.yarnrc.yml +++ b/.yarnrc.yml @@ -1,9 +1,12 @@ -nodeLinker: node-modules - -npmRegistryServer: "https://npm.hibas123.de" - -plugins: - - path: .yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs - spec: "@yarnpkg/plugin-interactive-tools" - -yarnPath: .yarn/releases/yarn-3.5.0.cjs +nodeLinker: node-modules + +npmRegistryServer: "https://npm.hibas123.de" +npmScopes: + "hibas123": + npmRegistryServer: "https://git.hibas.dev/api/packages/hibas123/npm/" + +plugins: + - path: .yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs + spec: "@yarnpkg/plugin-interactive-tools" + +yarnPath: .yarn/releases/yarn-3.5.0.cjs diff --git a/Backend/package.json b/Backend/package.json index 4c8735b..a14c1ca 100644 --- a/Backend/package.json +++ b/Backend/package.json @@ -3,12 +3,15 @@ "main": "lib/index.js", "author": "Fabian Stamm ", "license": "MIT", + "type": "module", "scripts": { "build": "run-s build-ts build-doc", "build-doc": "apidoc -i src/ -p apidoc/", "build-ts": "tsc", "start": "node lib/index.js", - "dev": "nodemon -e ts --exec ts-node src/index.ts", + "dev:js": "nodemon lib/index.ts", + "dev:ts": "tsc --watch", + "dev": "concurrently 'yarn run dev:js' 'yarn run dev:ts'", "format": "prettier --write \"src/**\"" }, "pipelines": { @@ -20,58 +23,59 @@ ] }, "devDependencies": { - "@types/body-parser": "^1.19.2", - "@types/compression": "^1.7.2", - "@types/cookie-parser": "^1.4.3", - "@types/dotenv": "^8.2.0", - "@types/express": "^4.17.17", - "@types/express-session": "^1.17.7", - "@types/i18n": "^0.13.6", - "@types/ini": "^1.3.31", - "@types/jsonwebtoken": "^9.0.1", + "@types/body-parser": "^1.19.6", + "@types/compression": "^1.8.1", + "@types/cookie-parser": "^1.4.9", + "@types/dotenv": "^8.2.3", + "@types/express": "^5.0.3", + "@types/express-serve-static-core": "^5.0.7", + "@types/express-session": "^1.18.2", + "@types/i18n": "^0.13.12", + "@types/ini": "^4.1.1", + "@types/jsonwebtoken": "^9.0.10", "@types/mongodb": "^4.0.7", - "@types/node": "^18.15.11", - "@types/node-rsa": "^1.1.1", - "@types/qrcode": "^1.5.0", - "@types/speakeasy": "^2.0.7", - "@types/uuid": "^9.0.1", - "apidoc": "^0.54.0", - "concurrently": "^8.2.2", - "nodemon": "^3.0.1", - "prettier": "^2.8.7", - "ts-node": "^10.9.1", - "typescript": "^5.0.4" + "@types/node": "^24.4.0", + "@types/node-rsa": "^1.1.4", + "@types/qrcode": "^1.5.5", + "@types/speakeasy": "^2.0.10", + "@types/uuid": "^10.0.0", + "apidoc": "^1.2.0", + "concurrently": "^9.2.1", + "nodemon": "^3.1.10", + "prettier": "^3.6.2", + "ts-node": "^10.9.2", + "typescript": "^5.9.2" }, "dependencies": { "@hibas123/config": "^1.1.2", - "@hibas123/nodelogging": "^3.1.3", + "@hibas123/nodelogging": "^4.0.0", "@hibas123/nodeloggingserver_client": "^1.1.2", "@hibas123/openauth-internalapi": "workspace:^", "@hibas123/openauth-views-v1": "workspace:^", - "@hibas123/safe_mongo": "2.0.1", - "@simplewebauthn/server": "^7.2.0", - "body-parser": "^1.20.2", - "compression": "^1.7.4", - "connect-mongo": "^5.0.0", - "cookie-parser": "^1.4.6", + "@hibas123/safe_mongo": "2.1.0", + "@simplewebauthn/server": "^13.2.0", + "body-parser": "^2.2.0", + "compression": "^1.8.1", + "connect-mongo": "^5.1.0", + "cookie-parser": "^1.4.7", "cors": "^2.8.5", - "dotenv": "^16.0.3", - "express": "^4.18.2", - "express-session": "^1.17.3", - "handlebars": "^4.7.7", + "dotenv": "^17.2.2", + "express": "^5.1.0", + "express-session": "^1.18.2", + "handlebars": "^4.7.8", "i18n": "^0.15.1", - "ini": "^4.1.1", - "joi": "^17.11.0", - "jsonwebtoken": "^9.0.0", - "moment": "^2.29.4", - "mongodb": "^5.2.0", + "ini": "^5.0.0", + "joi": "^18.0.1", + "jsonwebtoken": "^9.0.2", + "moment": "^2.30.1", + "mongodb": "^6.19.0", "node-rsa": "^1.1.1", "npm-run-all": "^4.1.5", - "qrcode": "^1.5.3", - "reflect-metadata": "^0.1.13", + "qrcode": "^1.5.4", + "reflect-metadata": "^0.2.2", "speakeasy": "^2.0.0", "u2f": "^0.1.3", - "uuid": "^9.0.1" + "uuid": "^13.0.0" }, "packageManager": "yarn@3.5.0" } diff --git a/Backend/src/api/admin/client.ts b/Backend/src/api/admin/client.ts index 34fbb4d..5fff813 100644 --- a/Backend/src/api/admin/client.ts +++ b/Backend/src/api/admin/client.ts @@ -1,191 +1,191 @@ -import { Router, Request } from "express"; -import RequestError, { HttpStatusCode } from "../../helper/request_error"; -import promiseMiddleware from "../../helper/promiseMiddleware"; -import Client from "../../models/client"; -import verify, { Types } from "../middlewares/verify"; -import { randomBytes } from "crypto"; - -const ClientRouter: Router = Router(); -ClientRouter.route("/") - /** - * @api {get} /admin/client - * @apiName AdminGetClients - * - * @apiGroup admin_client - * @apiPermission admin - * - * @apiSuccess {Object[]} clients - * @apiSuccess {String} clients._id The internally used id - * @apiSuccess {String} clients.maintainer - * @apiSuccess {Boolean} clients.internal - * @apiSuccess {String} clients.name - * @apiSuccess {String} clients.redirect_url - * @apiSuccess {String} clients.website - * @apiSuccess {String} clients.logo - * @apiSuccess {String} clients.client_id Client ID used outside of DB - * @apiSuccess {String} clients.client_secret - */ - .get( - promiseMiddleware(async (req, res) => { - let clients = await Client.find({}); - //ToDo check if user is required! - res.json(clients); - }) - ) - /** - * @api {get} /admin/client - * @apiName AdminAddClients - * - * @apiGroup admin_client - * @apiPermission admin - * - * @apiParam {Boolean} internal Is it an internal app - * @apiParam {String} name - * @apiParam {String} redirect_url - * @apiParam {String} website - * @apiParam {String} logo - * - * @apiSuccess {Object[]} clients - * @apiSuccess {String} clients._id The internally used id - * @apiSuccess {String} clients.maintainer - * @apiSuccess {Boolean} clients.internal - * @apiSuccess {String} clients.name - * @apiSuccess {String} clients.redirect_url - * @apiSuccess {String} clients.website - * @apiSuccess {String} clients.logo - * @apiSuccess {String} clients.client_id Client ID used outside of DB - * @apiSuccess {String} clients.client_secret - */ - .post( - verify( - { - internal: { - type: Types.BOOLEAN, - optional: true, - }, - name: { - type: Types.STRING, - }, - redirect_url: { - type: Types.STRING, - }, - website: { - type: Types.STRING, - }, - logo: { - type: Types.STRING, - optional: true, - }, - featured: { - type: Types.BOOLEAN, - optional: true, - }, - description: { - type: Types.STRING, - optional: true, - }, - }, - true - ), - promiseMiddleware(async (req, res) => { - req.body.client_secret = randomBytes(32).toString("hex"); - let client = Client.new(req.body); - client.maintainer = req.user._id; - await Client.save(client); - res.json(client); - }) - ); - -ClientRouter.route("/:id") - /** - * @api {delete} /admin/client/:id - * @apiParam {String} id Client _id - * @apiName AdminDeleteClient - * - * @apiGroup admin_client - * @apiPermission admin - * - * @apiSuccess {Boolean} success - */ - .delete( - promiseMiddleware(async (req, res) => { - let { id } = req.params; - await Client.delete(id); - res.json({ success: true }); - }) - ) - /** - * @api {put} /admin/client/:id - * @apiParam {String} id Client _id - * @apiName AdminUpdateClient - * - * @apiGroup admin_client - * @apiPermission admin - * - * @apiParam {Boolean} internal Is it an internal app - * @apiParam {String} name - * @apiParam {String} redirect_url - * @apiParam {String} website - * @apiParam {String} logo - * - * @apiSuccess {String} _id The internally used id - * @apiSuccess {String} maintainer UserID of client maintainer - * @apiSuccess {Boolean} internal Defines if it is a internal client - * @apiSuccess {String} name The name of the Client - * @apiSuccess {String} redirect_url Redirect URL after login - * @apiSuccess {String} website Website of Client - * @apiSuccess {String} logo The Logo of the Client (optional) - * @apiSuccess {String} client_id Client ID used outside of DB - * @apiSuccess {String} client_secret The client secret, that can be used to obtain token - */ - .put( - verify( - { - internal: { - type: Types.BOOLEAN, - optional: true, - }, - name: { - type: Types.STRING, - optional: true, - }, - redirect_url: { - type: Types.STRING, - optional: true, - }, - website: { - type: Types.STRING, - optional: true, - }, - logo: { - type: Types.STRING, - optional: true, - }, - featured: { - type: Types.BOOLEAN, - optional: true, - }, - description: { - type: Types.STRING, - optional: true, - }, - }, - true - ), - promiseMiddleware(async (req, res) => { - let { id } = req.query as { [key: string]: string }; - let client = await Client.findById(id); - if (!client) - throw new RequestError( - req.__("Client not found"), - HttpStatusCode.BAD_REQUEST - ); - for (let key in req.body) { - client[key] = req.body[key]; - } - await Client.save(client); - res.json(client); - }) - ); - -export default ClientRouter; +import { Router, Request } from "express"; +import RequestError, { HttpStatusCode } from "../../helper/request_error.js"; +import promiseMiddleware from "../../helper/promiseMiddleware.js"; +import Client from "../../models/client.js"; +import verify, { Types } from "../middlewares/verify.js"; +import { randomBytes } from "crypto"; + +const ClientRouter: Router = Router(); +ClientRouter.route("/") + /** + * @api {get} /admin/client + * @apiName AdminGetClients + * + * @apiGroup admin_client + * @apiPermission admin + * + * @apiSuccess {Object[]} clients + * @apiSuccess {String} clients._id The internally used id + * @apiSuccess {String} clients.maintainer + * @apiSuccess {Boolean} clients.internal + * @apiSuccess {String} clients.name + * @apiSuccess {String} clients.redirect_url + * @apiSuccess {String} clients.website + * @apiSuccess {String} clients.logo + * @apiSuccess {String} clients.client_id Client ID used outside of DB + * @apiSuccess {String} clients.client_secret + */ + .get( + promiseMiddleware(async (req, res) => { + let clients = await Client.find({}); + //ToDo check if user is required! + res.json(clients); + }) + ) + /** + * @api {get} /admin/client + * @apiName AdminAddClients + * + * @apiGroup admin_client + * @apiPermission admin + * + * @apiParam {Boolean} internal Is it an internal app + * @apiParam {String} name + * @apiParam {String} redirect_url + * @apiParam {String} website + * @apiParam {String} logo + * + * @apiSuccess {Object[]} clients + * @apiSuccess {String} clients._id The internally used id + * @apiSuccess {String} clients.maintainer + * @apiSuccess {Boolean} clients.internal + * @apiSuccess {String} clients.name + * @apiSuccess {String} clients.redirect_url + * @apiSuccess {String} clients.website + * @apiSuccess {String} clients.logo + * @apiSuccess {String} clients.client_id Client ID used outside of DB + * @apiSuccess {String} clients.client_secret + */ + .post( + verify( + { + internal: { + type: Types.BOOLEAN, + optional: true, + }, + name: { + type: Types.STRING, + }, + redirect_url: { + type: Types.STRING, + }, + website: { + type: Types.STRING, + }, + logo: { + type: Types.STRING, + optional: true, + }, + featured: { + type: Types.BOOLEAN, + optional: true, + }, + description: { + type: Types.STRING, + optional: true, + }, + }, + true + ), + promiseMiddleware(async (req, res) => { + req.body.client_secret = randomBytes(32).toString("hex"); + let client = Client.new(req.body); + client.maintainer = req.user._id; + await Client.save(client); + res.json(client); + }) + ); + +ClientRouter.route("/:id") + /** + * @api {delete} /admin/client/:id + * @apiParam {String} id Client _id + * @apiName AdminDeleteClient + * + * @apiGroup admin_client + * @apiPermission admin + * + * @apiSuccess {Boolean} success + */ + .delete( + promiseMiddleware(async (req, res) => { + let { id } = req.params; + await Client.delete(id); + res.json({ success: true }); + }) + ) + /** + * @api {put} /admin/client/:id + * @apiParam {String} id Client _id + * @apiName AdminUpdateClient + * + * @apiGroup admin_client + * @apiPermission admin + * + * @apiParam {Boolean} internal Is it an internal app + * @apiParam {String} name + * @apiParam {String} redirect_url + * @apiParam {String} website + * @apiParam {String} logo + * + * @apiSuccess {String} _id The internally used id + * @apiSuccess {String} maintainer UserID of client maintainer + * @apiSuccess {Boolean} internal Defines if it is a internal client + * @apiSuccess {String} name The name of the Client + * @apiSuccess {String} redirect_url Redirect URL after login + * @apiSuccess {String} website Website of Client + * @apiSuccess {String} logo The Logo of the Client (optional) + * @apiSuccess {String} client_id Client ID used outside of DB + * @apiSuccess {String} client_secret The client secret, that can be used to obtain token + */ + .put( + verify( + { + internal: { + type: Types.BOOLEAN, + optional: true, + }, + name: { + type: Types.STRING, + optional: true, + }, + redirect_url: { + type: Types.STRING, + optional: true, + }, + website: { + type: Types.STRING, + optional: true, + }, + logo: { + type: Types.STRING, + optional: true, + }, + featured: { + type: Types.BOOLEAN, + optional: true, + }, + description: { + type: Types.STRING, + optional: true, + }, + }, + true + ), + promiseMiddleware(async (req, res) => { + let { id } = req.query as { [key: string]: string }; + let client = await Client.findById(id); + if (!client) + throw new RequestError( + req.__("Client not found"), + HttpStatusCode.BAD_REQUEST + ); + for (let key in req.body) { + client[key] = req.body[key]; + } + await Client.save(client); + res.json(client); + }) + ); + +export default ClientRouter; diff --git a/Backend/src/api/admin/index.ts b/Backend/src/api/admin/index.ts index cfc40d2..d80934f 100644 --- a/Backend/src/api/admin/index.ts +++ b/Backend/src/api/admin/index.ts @@ -1,24 +1,24 @@ -import { Request, Router } from "express"; -import ClientRoute from "./client"; -import UserRoute from "./user"; -import RegCodeRoute from "./regcode"; -import PermissionRoute from "./permission"; -import { GetUserMiddleware } from "../middlewares/user"; -import RequestError, { HttpStatusCode } from "../../helper/request_error"; - -const AdminRoute: Router = Router(); - -AdminRoute.use(GetUserMiddleware(true, true), (req: Request, res, next) => { - if (!req.isAdmin) - throw new RequestError( - "You have no permission to access this API", - HttpStatusCode.FORBIDDEN - ); - else next(); -}); - -AdminRoute.use("/client", ClientRoute); -AdminRoute.use("/regcode", RegCodeRoute); -AdminRoute.use("/user", UserRoute); -AdminRoute.use("/permission", PermissionRoute); -export default AdminRoute; +import { Request, Router } from "express"; +import ClientRoute from "./client.js"; +import UserRoute from "./user.js"; +import RegCodeRoute from "./regcode.js"; +import PermissionRoute from "./permission.js"; +import { GetUserMiddleware } from "../middlewares/user.js"; +import RequestError, { HttpStatusCode } from "../../helper/request_error.js"; + +const AdminRoute: Router = Router(); + +AdminRoute.use(GetUserMiddleware(true, true), (req: Request, res, next) => { + if (!req.isAdmin) + throw new RequestError( + "You have no permission to access this API", + HttpStatusCode.FORBIDDEN + ); + else next(); +}); + +AdminRoute.use("/client", ClientRoute); +AdminRoute.use("/regcode", RegCodeRoute); +AdminRoute.use("/user", UserRoute); +AdminRoute.use("/permission", PermissionRoute); +export default AdminRoute; diff --git a/Backend/src/api/admin/permission.ts b/Backend/src/api/admin/permission.ts index 0595e1e..a811972 100644 --- a/Backend/src/api/admin/permission.ts +++ b/Backend/src/api/admin/permission.ts @@ -1,10 +1,9 @@ import { Request, Router } from "express"; -import { GetUserMiddleware } from "../middlewares/user"; -import RequestError, { HttpStatusCode } from "../../helper/request_error"; -import promiseMiddleware from "../../helper/promiseMiddleware"; -import Permission from "../../models/permissions"; -import verify, { Types } from "../middlewares/verify"; -import Client from "../../models/client"; +import RequestError, { HttpStatusCode } from "../../helper/request_error.js"; +import promiseMiddleware from "../../helper/promiseMiddleware.js"; +import Permission from "../../models/permissions.js"; +import verify, { Types } from "../middlewares/verify.js"; +import Client from "../../models/client.js"; import { ObjectId } from "bson"; const PermissionRoute: Router = Router(); diff --git a/Backend/src/api/admin/regcode.ts b/Backend/src/api/admin/regcode.ts index 40f476c..af7aa03 100644 --- a/Backend/src/api/admin/regcode.ts +++ b/Backend/src/api/admin/regcode.ts @@ -1,69 +1,67 @@ -import { Request, Router } from "express"; -import promiseMiddleware from "../../helper/promiseMiddleware"; -import RegCode from "../../models/regcodes"; -import { randomBytes } from "crypto"; -import moment = require("moment"); -import { GetUserMiddleware } from "../middlewares/user"; -import { HttpStatusCode } from "../../helper/request_error"; - -const RegCodeRoute: Router = Router(); -RegCodeRoute.route("/") - /** - * @api {get} /admin/regcode - * @apiName AdminGetRegcodes - * - * @apiGroup admin_regcode - * @apiPermission admin - * - * @apiSuccess {Object[]} regcodes - * @apiSuccess {String} permissions._id The ID - * @apiSuccess {String} permissions.token The Regcode Token - * @apiSuccess {String} permissions.valid Defines if the Regcode is valid - * @apiSuccess {String} permissions.validTill Expiration date of RegCode - */ - .get( - promiseMiddleware(async (req, res) => { - let regcodes = await RegCode.find({}); - res.json(regcodes); - }) - ) - /** - * @api {delete} /admin/regcode - * @apiName AdminDeleteRegcode - * - * @apiParam {String} id The id of the RegCode - * - * @apiGroup admin_regcode - * @apiPermission admin - * - * @apiSuccess {Boolean} success - */ - .delete( - promiseMiddleware(async (req, res) => { - let { id } = req.query as { [key: string]: string }; - await RegCode.delete(id); - res.json({ success: true }); - }) - ) - /** - * @api {post} /admin/regcode - * @apiName AdminAddRegcode - * - * @apiGroup admin_regcode - * @apiPermission admin - * - * @apiSuccess {String} code The newly created code - */ - .post( - promiseMiddleware(async (req, res) => { - let regcode = RegCode.new({ - token: randomBytes(10).toString("hex"), - valid: true, - validTill: moment().add("1", "month").toDate(), - }); - await RegCode.save(regcode); - res.json({ code: regcode.token }); - }) - ); - -export default RegCodeRoute; +import { Request, Router } from "express"; +import promiseMiddleware from "../../helper/promiseMiddleware.js"; +import RegCode from "../../models/regcodes.js"; +import { randomBytes } from "crypto"; +import moment = require("moment"); + +const RegCodeRoute: Router = Router(); +RegCodeRoute.route("/") + /** + * @api {get} /admin/regcode + * @apiName AdminGetRegcodes + * + * @apiGroup admin_regcode + * @apiPermission admin + * + * @apiSuccess {Object[]} regcodes + * @apiSuccess {String} permissions._id The ID + * @apiSuccess {String} permissions.token The Regcode Token + * @apiSuccess {String} permissions.valid Defines if the Regcode is valid + * @apiSuccess {String} permissions.validTill Expiration date of RegCode + */ + .get( + promiseMiddleware(async (req, res) => { + let regcodes = await RegCode.find({}); + res.json(regcodes); + }) + ) + /** + * @api {delete} /admin/regcode + * @apiName AdminDeleteRegcode + * + * @apiParam {String} id The id of the RegCode + * + * @apiGroup admin_regcode + * @apiPermission admin + * + * @apiSuccess {Boolean} success + */ + .delete( + promiseMiddleware(async (req, res) => { + let { id } = req.query as { [key: string]: string }; + await RegCode.delete(id); + res.json({ success: true }); + }) + ) + /** + * @api {post} /admin/regcode + * @apiName AdminAddRegcode + * + * @apiGroup admin_regcode + * @apiPermission admin + * + * @apiSuccess {String} code The newly created code + */ + .post( + promiseMiddleware(async (req, res) => { + let regcode = RegCode.new({ + token: randomBytes(10).toString("hex"), + valid: true, + validTill: moment().add("1", "month").toDate(), + }); + await RegCode.save(regcode); + res.json({ code: regcode.token }); + }) + ); + +export default RegCodeRoute; diff --git a/Backend/src/api/admin/user.ts b/Backend/src/api/admin/user.ts index 36f4418..03f60f8 100644 --- a/Backend/src/api/admin/user.ts +++ b/Backend/src/api/admin/user.ts @@ -1,93 +1,93 @@ -import { Request, Router } from "express"; -import { GetUserMiddleware } from "../middlewares/user"; -import { HttpStatusCode } from "../../helper/request_error"; -import promiseMiddleware from "../../helper/promiseMiddleware"; -import User from "../../models/user"; -import Mail from "../../models/mail"; -import RefreshToken from "../../models/refresh_token"; -import LoginToken from "../../models/login_token"; - -const UserRoute: Router = Router(); -UserRoute.use(GetUserMiddleware(true, true), (req: Request, res, next) => { - if (!req.isAdmin) res.sendStatus(HttpStatusCode.FORBIDDEN); - else next(); -}); - -UserRoute.route("/") - /** - * @api {get} /admin/user - * @apiName AdminGetUsers - * - * @apiGroup admin_user - * @apiPermission admin - * @apiSuccess {Object[]} user - * @apiSuccess {String} user._id The internal id of the user - * @apiSuccess {String} user.uid The public UID of the user - * @apiSuccess {String} user.username The username - * @apiSuccess {String} user.name The real name - * @apiSuccess {Date} user.birthday The birthday - * @apiSuccess {Number} user.gender 0 = none, 1 = male, 2 = female, 3 = other - * @apiSuccess {Boolean} user.admin Is admin or not - */ - .get( - promiseMiddleware(async (req, res) => { - let users = await User.find({}); - users.forEach( - (e) => delete e.password && delete e.salt && delete e.encryption_key - ); - res.json(users); - }) - ) - /** - * @api {delete} /admin/user - * @apiName AdminDeleteUser - * - * @apiParam {String} id The User ID - * - * @apiGroup admin_user - * @apiPermission admin - * - * @apiSuccess {Boolean} success - */ - .delete( - promiseMiddleware(async (req, res) => { - let { id } = req.query as { [key: string]: string }; - let user = await User.findById(id); - - await Promise.all([ - user.mails.map((mail) => Mail.delete(mail)), - [ - RefreshToken.deleteFilter({ user: user._id }), - LoginToken.deleteFilter({ user: user._id }), - ], - ]); - - await User.delete(user); - res.json({ success: true }); - }) - ) - /** - * @api {put} /admin/user - * @apiName AdminChangeUser - * - * @apiParam {String} id The User ID - * - * @apiGroup admin_user - * @apiPermission admin - * - * @apiSuccess {Boolean} success - * - * @apiDescription Flipps the user role: - * admin -> user - * user -> admin - */ - .put( - promiseMiddleware(async (req, res) => { - let { id } = req.query as { [key: string]: string }; - let user = await User.findById(id); - user.admin = !user.admin; - await User.save(user); - res.json({ success: true }); - }) - ); -export default UserRoute; +import { Request, Router } from "express"; +import { GetUserMiddleware } from "../middlewares/user.js"; +import { HttpStatusCode } from "../../helper/request_error.js"; +import promiseMiddleware from "../../helper/promiseMiddleware.js"; +import User from "../../models/user.js"; +import Mail from "../../models/mail.js"; +import RefreshToken from "../../models/refresh_token.js"; +import LoginToken from "../../models/login_token.js"; + +const UserRoute: Router = Router(); +UserRoute.use(GetUserMiddleware(true, true), (req: Request, res, next) => { + if (!req.isAdmin) res.sendStatus(HttpStatusCode.FORBIDDEN); + else next(); +}); + +UserRoute.route("/") + /** + * @api {get} /admin/user + * @apiName AdminGetUsers + * + * @apiGroup admin_user + * @apiPermission admin + * @apiSuccess {Object[]} user + * @apiSuccess {String} user._id The internal id of the user + * @apiSuccess {String} user.uid The public UID of the user + * @apiSuccess {String} user.username The username + * @apiSuccess {String} user.name The real name + * @apiSuccess {Date} user.birthday The birthday + * @apiSuccess {Number} user.gender 0 = none, 1 = male, 2 = female, 3 = other + * @apiSuccess {Boolean} user.admin Is admin or not + */ + .get( + promiseMiddleware(async (req, res) => { + let users = await User.find({}); + users.forEach( + (e) => delete e.password && delete e.salt && delete e.encryption_key + ); + res.json(users); + }) + ) + /** + * @api {delete} /admin/user + * @apiName AdminDeleteUser + * + * @apiParam {String} id The User ID + * + * @apiGroup admin_user + * @apiPermission admin + * + * @apiSuccess {Boolean} success + */ + .delete( + promiseMiddleware(async (req, res) => { + let { id } = req.query as { [key: string]: string }; + let user = await User.findById(id); + + await Promise.all([ + user.mails.map((mail) => Mail.delete(mail)), + [ + RefreshToken.deleteFilter({ user: user._id }), + LoginToken.deleteFilter({ user: user._id }), + ], + ]); + + await User.delete(user); + res.json({ success: true }); + }) + ) + /** + * @api {put} /admin/user + * @apiName AdminChangeUser + * + * @apiParam {String} id The User ID + * + * @apiGroup admin_user + * @apiPermission admin + * + * @apiSuccess {Boolean} success + * + * @apiDescription Flipps the user role: + * admin -> user + * user -> admin + */ + .put( + promiseMiddleware(async (req, res) => { + let { id } = req.query as { [key: string]: string }; + let user = await User.findById(id); + user.admin = !user.admin; + await User.save(user); + res.json({ success: true }); + }) + ); +export default UserRoute; diff --git a/Backend/src/api/client/index.ts b/Backend/src/api/client/index.ts index 794c2d8..eb8353b 100644 --- a/Backend/src/api/client/index.ts +++ b/Backend/src/api/client/index.ts @@ -1,110 +1,110 @@ -import { Request, Response, Router } from "express"; -import Stacker from "../middlewares/stacker"; -import { - GetClientAuthMiddleware, - GetClientApiAuthMiddleware, -} from "../middlewares/client"; -import { GetUserMiddleware } from "../middlewares/user"; -import { createJWT } from "../../keys"; -import Client from "../../models/client"; -import RequestError, { HttpStatusCode } from "../../helper/request_error"; -import config from "../../config"; -import Mail from "../../models/mail"; - -const ClientRouter = Router(); - -/** - * @api {get} /client/user - * - * @apiDescription Can be used for simple authentication of user. It will redirect the user to the redirect URI with a very short lived jwt. - * - * @apiParam {String} redirect_uri URL to redirect to on success - * @apiParam {String} state A optional state, that will be included in the JWT and redirect_uri as parameter - * - * @apiName ClientUser - * @apiGroup client - * - * @apiPermission user_client Requires ClientID and Authenticated User - */ -ClientRouter.get( - "/user", - Stacker( - GetClientAuthMiddleware(false), - GetUserMiddleware(false, false), - async (req: Request, res: Response) => { - let { redirect_uri, state } = req.query; - - if (redirect_uri !== req.client.redirect_url) - throw new RequestError( - "Invalid redirect URI", - HttpStatusCode.BAD_REQUEST - ); - - let jwt = await createJWT( - { - client: req.client.client_id, - uid: req.user.uid, - username: req.user.username, - state: state, - }, - { - expiresIn: 30, - issuer: config.core.url, - algorithm: "RS256", - subject: req.user.uid, - audience: req.client.client_id, - } - ); //after 30 seconds this token is invalid - res.redirect( - redirect_uri + "?jwt=" + jwt + (state ? `&state=${state}` : "") - ); - } - ) -); - -ClientRouter.get( - "/account", - Stacker(GetClientApiAuthMiddleware(), async (req: Request, res) => { - let mails = await Promise.all( - req.user.mails.map((id) => Mail.findById(id)) - ); - - let mail = mails.find((e) => e.primary) || mails[0]; - - res.json({ - user: { - username: req.user.username, - name: req.user.name, - email: mail, - }, - }); - }) -); - -/** - * @api {get} /client/featured - * - * @apiDescription Get a list of clients, that want to be featured on the home page - * - * @apiName GetFeaturedClients - * @apiGroup client - */ -ClientRouter.get( - "/featured", - Stacker(async (req: Request, res) => { - let clients = await Client.find({ - featured: true, - }); - - res.json({ - clients: clients.map(({ name, logo, website, description }) => ({ - name, - logo, - website, - description, - })), - }); - }) -); - -export default ClientRouter; +import { Request, Response, Router } from "express"; +import Stacker from "../middlewares/stacker.js"; +import { + GetClientAuthMiddleware, + GetClientApiAuthMiddleware, +} from "../middlewares/client.js"; +import { GetUserMiddleware } from "../middlewares/user.js"; +import { createJWT } from "../../keys.js"; +import Client from "../../models/client.js"; +import RequestError, { HttpStatusCode } from "../../helper/request_error.js"; +import config from "../../config.js"; +import Mail from "../../models/mail.js"; + +const ClientRouter = Router(); + +/** + * @api {get} /client/user + * + * @apiDescription Can be used for simple authentication of user. It will redirect the user to the redirect URI with a very short lived jwt. + * + * @apiParam {String} redirect_uri URL to redirect to on success + * @apiParam {String} state A optional state, that will be included in the JWT and redirect_uri as parameter + * + * @apiName ClientUser + * @apiGroup client + * + * @apiPermission user_client Requires ClientID and Authenticated User + */ +ClientRouter.get( + "/user", + Stacker( + GetClientAuthMiddleware(false), + GetUserMiddleware(false, false), + async (req: Request, res: Response) => { + let { redirect_uri, state } = req.query; + + if (redirect_uri !== req.client.redirect_url) + throw new RequestError( + "Invalid redirect URI", + HttpStatusCode.BAD_REQUEST + ); + + let jwt = await createJWT( + { + client: req.client.client_id, + uid: req.user.uid, + username: req.user.username, + state: state, + }, + { + expiresIn: 30, + issuer: config.core.url, + algorithm: "RS256", + subject: req.user.uid, + audience: req.client.client_id, + } + ); //after 30 seconds this token is invalid + res.redirect( + redirect_uri + "?jwt=" + jwt + (state ? `&state=${state}` : "") + ); + } + ) +); + +ClientRouter.get( + "/account", + Stacker(GetClientApiAuthMiddleware(), async (req: Request, res) => { + let mails = await Promise.all( + req.user.mails.map((id) => Mail.findById(id)) + ); + + let mail = mails.find((e) => e.primary) || mails[0]; + + res.json({ + user: { + username: req.user.username, + name: req.user.name, + email: mail, + }, + }); + }) +); + +/** + * @api {get} /client/featured + * + * @apiDescription Get a list of clients, that want to be featured on the home page + * + * @apiName GetFeaturedClients + * @apiGroup client + */ +ClientRouter.get( + "/featured", + Stacker(async (req: Request, res) => { + let clients = await Client.find({ + featured: true, + }); + + res.json({ + clients: clients.map(({ name, logo, website, description }) => ({ + name, + logo, + website, + description, + })), + }); + }) +); + +export default ClientRouter; diff --git a/Backend/src/api/client/permissions.ts b/Backend/src/api/client/permissions.ts index a52dc26..1ff6125 100644 --- a/Backend/src/api/client/permissions.ts +++ b/Backend/src/api/client/permissions.ts @@ -1,14 +1,14 @@ import { Request, Response } from "express"; -import Stacker from "../middlewares/stacker"; +import Stacker from "../middlewares/stacker.js"; import { ClientAuthMiddleware, GetClientAuthMiddleware, -} from "../middlewares/client"; -import Permission from "../../models/permissions"; -import User from "../../models/user"; +} from "../middlewares/client.js"; +import Permission from "../../models/permissions.js"; +import User from "../../models/user.js"; -import RequestError, { HttpStatusCode } from "../../helper/request_error"; -import Grant from "../../models/grants"; +import RequestError, { HttpStatusCode } from "../../helper/request_error.js"; +import Grant from "../../models/grants.js"; import { ObjectId } from "mongodb"; export const GetPermissions = Stacker( diff --git a/Backend/src/api/index.ts b/Backend/src/api/index.ts index 09c6015..50d2e84 100644 --- a/Backend/src/api/index.ts +++ b/Backend/src/api/index.ts @@ -1,12 +1,12 @@ import * as express from "express"; -import AdminRoute from "./admin"; -import UserRoute from "./user"; -import InternalRoute from "./internal"; -import ClientRouter from "./client"; +import AdminRoute from "./admin/index.js"; +import UserRoute from "./user/index.js"; +import InternalRoute from "./internal/index.js"; +import ClientRouter from "./client/index.js"; import cors from "cors"; -import OAuthRoute from "./oauth"; -import config from "../config"; -import JRPCEndpoint from "./jrpc"; +import OAuthRoute from "./oauth/index.js"; +import config from "../config.js"; +import JRPCEndpoint from "./jrpc/index.js"; const ApiRouter: express.IRouter = express.Router(); ApiRouter.use("/admin", AdminRoute); @@ -41,10 +41,10 @@ ApiRouter.post("/jrpc", JRPCEndpoint); ApiRouter.use("/", ClientRouter); ApiRouter.get("/config.json", (req, res) => { - return res.json({ - name: config.core.name, - url: config.core.url, - }); + return res.json({ + name: config.core.name, + url: config.core.url, + }); }); export default ApiRouter; diff --git a/Backend/src/api/internal/index.ts b/Backend/src/api/internal/index.ts index a857430..baac96d 100644 --- a/Backend/src/api/internal/index.ts +++ b/Backend/src/api/internal/index.ts @@ -1,30 +1,30 @@ -import { Router } from "express"; -import { OAuthInternalApp } from "./oauth"; -import PasswordAuth from "./password"; - -const InternalRoute: Router = Router(); -/** - * @api {get} /internal/oauth - * @apiName ClientInteralOAuth - * - * @apiGroup client_internal - * @apiPermission client_internal Only ClientID - * - * @apiParam {String} redirect_uri Redirect URI called after success - * @apiParam {String} state State will be set in RedirectURI for the client to check - */ -InternalRoute.get("/oauth", OAuthInternalApp); - -/** - * @api {post} /internal/password - * @apiName ClientInteralPassword - * - * @apiGroup client_internal - * @apiPermission client_internal Requires ClientID and Secret - * - * @apiParam {String} username Username (either username or UID) - * @apiParam {String} uid User ID (either username or UID) - * @apiParam {String} password Hashed and Salted according to specification - */ -InternalRoute.post("/password", PasswordAuth); -export default InternalRoute; +import { Router } from "express"; +import { OAuthInternalApp } from "./oauth.js"; +import PasswordAuth from "./password.js"; + +const InternalRoute: Router = Router(); +/** + * @api {get} /internal/oauth + * @apiName ClientInteralOAuth + * + * @apiGroup client_internal + * @apiPermission client_internal Only ClientID + * + * @apiParam {String} redirect_uri Redirect URI called after success + * @apiParam {String} state State will be set in RedirectURI for the client to check + */ +InternalRoute.get("/oauth", OAuthInternalApp); + +/** + * @api {post} /internal/password + * @apiName ClientInteralPassword + * + * @apiGroup client_internal + * @apiPermission client_internal Requires ClientID and Secret + * + * @apiParam {String} username Username (either username or UID) + * @apiParam {String} uid User ID (either username or UID) + * @apiParam {String} password Hashed and Salted according to specification + */ +InternalRoute.post("/password", PasswordAuth); +export default InternalRoute; diff --git a/Backend/src/api/internal/oauth.ts b/Backend/src/api/internal/oauth.ts index 1ebc5c4..cb6008e 100644 --- a/Backend/src/api/internal/oauth.ts +++ b/Backend/src/api/internal/oauth.ts @@ -1,9 +1,9 @@ import { Request, Response, NextFunction } from "express"; -import Stacker from "../middlewares/stacker"; -import { GetClientAuthMiddleware } from "../middlewares/client"; -import { UserMiddleware } from "../middlewares/user"; -import RequestError, { HttpStatusCode } from "../../helper/request_error"; -import ClientCode from "../../models/client_code"; +import Stacker from "../middlewares/stacker.js"; +import { GetClientAuthMiddleware } from "../middlewares/client.js"; +import { UserMiddleware } from "../middlewares/user.js"; +import RequestError, { HttpStatusCode } from "../../helper/request_error.js"; +import ClientCode from "../../models/client_code.js"; import moment = require("moment"); import { randomBytes } from "crypto"; export const OAuthInternalApp = Stacker( diff --git a/Backend/src/api/internal/password.ts b/Backend/src/api/internal/password.ts index 954ae8b..3a60c10 100644 --- a/Backend/src/api/internal/password.ts +++ b/Backend/src/api/internal/password.ts @@ -1,35 +1,35 @@ -import { Request, Response, NextFunction } from "express"; -import { GetClientAuthMiddleware } from "../middlewares/client"; -import Stacker from "../middlewares/stacker"; -import RequestError, { HttpStatusCode } from "../../helper/request_error"; -import User from "../../models/user"; - -const PasswordAuth = Stacker( - GetClientAuthMiddleware(true, true), - async (req: Request, res: Response) => { - let { - username, - password, - uid, - }: { username: string; password: string; uid: string } = req.body; - let query: any = { password: password }; - if (username) { - query.username = username.toLowerCase(); - } else if (uid) { - query.uid = uid; - } else { - throw new RequestError( - req.__("No username or uid set"), - HttpStatusCode.BAD_REQUEST - ); - } - - let user = await User.findOne(query); - if (!user) { - res.json({ error: req.__("Password or username wrong") }); - } else { - res.json({ success: true, uid: user.uid }); - } - } -); -export default PasswordAuth; +import { Request, Response, NextFunction } from "express"; +import { GetClientAuthMiddleware } from "../middlewares/client.js"; +import Stacker from "../middlewares/stacker.js"; +import RequestError, { HttpStatusCode } from "../../helper/request_error.js"; +import User from "../../models/user.js"; + +const PasswordAuth = Stacker( + GetClientAuthMiddleware(true, true), + async (req: Request, res: Response) => { + let { + username, + password, + uid, + }: { username: string; password: string; uid: string } = req.body; + let query: any = { password: password }; + if (username) { + query.username = username.toLowerCase(); + } else if (uid) { + query.uid = uid; + } else { + throw new RequestError( + req.__("No username or uid set"), + HttpStatusCode.BAD_REQUEST + ); + } + + let user = await User.findOne(query); + if (!user) { + res.json({ error: req.__("Password or username wrong") }); + } else { + res.json({ success: true, uid: user.uid }); + } + } +); +export default PasswordAuth; diff --git a/Backend/src/api/jrpc/index.ts b/Backend/src/api/jrpc/index.ts index 711df8f..7471583 100644 --- a/Backend/src/api/jrpc/index.ts +++ b/Backend/src/api/jrpc/index.ts @@ -1,13 +1,13 @@ import { Format } from "@hibas123/logging"; import Logging from "@hibas123/nodelogging"; import { Server, } from "@hibas123/openauth-internalapi"; -import { RequestObject, ResponseObject } from "@hibas123/openauth-internalapi/lib/service_base"; +import { RequestObject, ResponseObject } from "@hibas123/openauth-internalapi/lib/service_base.js"; import { Request, Response } from "express"; -import Stacker from "../middlewares/stacker"; -import AccountService from "./services/account"; -import LoginService from "./services/login"; -import SecurityService from "./services/security"; -import TFAService from "./services/twofactor"; +import Stacker from "../middlewares/stacker.js"; +import AccountService from "./services/account.js"; +import LoginService from "./services/login.js"; +import SecurityService from "./services/security.js"; +import TFAService from "./services/twofactor.js"; export type SessionContext = Request; diff --git a/Backend/src/api/jrpc/services/account.ts b/Backend/src/api/jrpc/services/account.ts index 85f5d9f..2daadb5 100644 --- a/Backend/src/api/jrpc/services/account.ts +++ b/Backend/src/api/jrpc/services/account.ts @@ -1,8 +1,8 @@ import { Profile, ContactInfo, Gender, Server, UserRegisterInfo } from "@hibas123/openauth-internalapi"; -import type { SessionContext } from "../index"; -import Mail from "../../../models/mail"; -import User from "../../../models/user"; -import { RequireLogin } from "../../../helper/login"; +import type { SessionContext } from "../index.js"; +import Mail from "../../../models/mail.js"; +import User from "../../../models/user.js"; +import { RequireLogin } from "../../../helper/login.js"; export default class AccountService extends Server.AccountService { Register(regcode: string, info: UserRegisterInfo, ctx: SessionContext): Promise { diff --git a/Backend/src/api/jrpc/services/login.ts b/Backend/src/api/jrpc/services/login.ts index cca691b..c8efbb1 100644 --- a/Backend/src/api/jrpc/services/login.ts +++ b/Backend/src/api/jrpc/services/login.ts @@ -1,13 +1,13 @@ import { Server, LoginState, TFAOption, TFAType } from "@hibas123/openauth-internalapi"; -import type { SessionContext } from "../index"; +import type { SessionContext } from "../index.js"; import Logging from "@hibas123/nodelogging"; -import User, { IUser } from "../../../models/user"; +import User, { IUser } from "../../../models/user.js"; import moment from "moment"; import crypto from "node:crypto"; -import TwoFactor, { ITwoFactor, IWebAuthn } from "../../../models/twofactor"; +import TwoFactor, { ITwoFactor, IWebAuthn } from "../../../models/twofactor.js"; import speakeasy from "speakeasy"; import { generateAuthenticationOptions, verifyAuthenticationResponse } from "@simplewebauthn/server"; -import config from "../../../config"; +import config from "../../../config.js"; //FIXME: There are a lot of uneccessary database requests happening here. Since this is not a "hot" path, it should not matter to much, but it should be fixed nontheless. @@ -212,13 +212,12 @@ export default class LoginService extends Server.LoginService { const rpID = new URL(config.core.url).hostname; - let options = generateAuthenticationOptions({ + let options = await generateAuthenticationOptions({ timeout: 60000, userVerification: "discouraged", rpID, allowCredentials: [{ - id: tfa.data.device.credentialID.buffer, - type: "public-key", + id: typeof tfa.data.device.credentialID === "string" ? tfa.data.device.credentialID : Buffer.from(tfa.data.device.credentialID.buffer).toString("base64url"), transports: tfa.data.device.transports }] }) @@ -241,10 +240,10 @@ export default class LoginService extends Server.LoginService { let verification = await verifyAuthenticationResponse({ response: JSON.parse(response), - authenticator: { + credential: { + id: typeof tfa.data.device.credentialID === "string" ? tfa.data.device.credentialID : Buffer.from(tfa.data.device.credentialID.buffer).toString("base64url"), + publicKey: Buffer.from(tfa.data.device.credentialPublicKey.buffer), counter: tfa.data.device.counter, - credentialID: tfa.data.device.credentialID.buffer, - credentialPublicKey: tfa.data.device.credentialPublicKey.buffer, transports: tfa.data.device.transports }, expectedChallenge: ctx.session.login_state.webauthn_challenge, diff --git a/Backend/src/api/jrpc/services/security.ts b/Backend/src/api/jrpc/services/security.ts index 3bc7768..7a39e69 100644 --- a/Backend/src/api/jrpc/services/security.ts +++ b/Backend/src/api/jrpc/services/security.ts @@ -1,9 +1,9 @@ import { Server, Session } from "@hibas123/openauth-internalapi"; -import type { SessionContext } from "../index"; +import type { SessionContext } from "../index.js"; import Logging from "@hibas123/nodelogging"; -import { RequireLogin } from "../../../helper/login"; +import { RequireLogin } from "../../../helper/login.js"; import crypto from "node:crypto"; -import User from "../../../models/user"; +import User from "../../../models/user.js"; export default class SecurityService extends Server.SecurityService { @RequireLogin() diff --git a/Backend/src/api/jrpc/services/twofactor.ts b/Backend/src/api/jrpc/services/twofactor.ts index 20ac123..b9ed033 100644 --- a/Backend/src/api/jrpc/services/twofactor.ts +++ b/Backend/src/api/jrpc/services/twofactor.ts @@ -1,15 +1,15 @@ import { TFANewTOTP, Server, TFAOption, UserRegisterInfo, TFAWebAuthRegister } from "@hibas123/openauth-internalapi"; -import type { SessionContext } from "../index"; -import TwoFactorModel, { ITOTP, IWebAuthn, TFATypes } from "../../../models/twofactor"; +import type { SessionContext } from "../index.js"; +import TwoFactorModel, { ITOTP, IWebAuthn, TFATypes } from "../../../models/twofactor.js"; import moment = require("moment"); import * as speakeasy from "speakeasy"; import * as qrcode from "qrcode"; -import config from "../../../config"; +import config from "../../../config.js"; import { generateRegistrationOptions, verifyRegistrationResponse } from '@simplewebauthn/server'; -import type { RegistrationResponseJSON } from '@simplewebauthn/typescript-types'; +// import type { RegistrationResponseJSON } from '@simplewebauthn/typescript-types'; import Logging from "@hibas123/nodelogging"; import { Binary } from "mongodb"; -import { RequireLogin } from "../../../helper/login"; +import { RequireLogin } from "../../../helper/login.js"; export default class TFAService extends Server.TFAService { @@ -111,10 +111,10 @@ export default class TFAService extends Server.TFAService { // TODO: Get already registered options const rpID = new URL(config.core.url).hostname; - const options = generateRegistrationOptions({ + const options = await generateRegistrationOptions({ rpName: config.core.name, rpID, - userID: ctx.user.uid, + userID: Buffer.from(ctx.user.uid, "utf-8"), userName: ctx.user.username, attestationType: 'direct', userDisplayName: ctx.user.name, @@ -156,7 +156,7 @@ export default class TFAService extends Server.TFAService { const rpID = new URL(config.core.url).hostname; - const response = JSON.parse(registration) as RegistrationResponseJSON; + const response = JSON.parse(registration); // as RegistrationResponseJSON; let verification = await verifyRegistrationResponse({ response, @@ -167,7 +167,7 @@ export default class TFAService extends Server.TFAService { }); if (verification.verified) { - const { credentialPublicKey, credentialID, counter } = verification.registrationInfo; + const { credential, } = verification.registrationInfo; //TODO: Check if already registered! // TwoFactorModel.find({ @@ -177,10 +177,11 @@ export default class TFAService extends Server.TFAService { twofactor.data = { device: { - credentialPublicKey: new Binary(credentialPublicKey), - credentialID: new Binary(credentialID), - counter: verification.registrationInfo.counter, - transports: response.response.transports as any[] + counter: credential.counter, + credentialPublicKey: new Binary(credential.publicKey), + credentialID: credential.id, + // counter: verification.registrationInfo.counter, + transports: response.response.transports as any[], } } diff --git a/Backend/src/api/middlewares/client.ts b/Backend/src/api/middlewares/client.ts index 59353e5..4ad27e6 100644 --- a/Backend/src/api/middlewares/client.ts +++ b/Backend/src/api/middlewares/client.ts @@ -1,123 +1,122 @@ -import { NextFunction, Request, Response } from "express"; -import RequestError, { HttpStatusCode } from "../../helper/request_error"; -import Client from "../../models/client"; -import { validateJWT } from "../../keys"; -import User from "../../models/user"; -import Mail from "../../models/mail"; -import { OAuthJWT } from "../../helper/jwt"; -import Logging from "@hibas123/nodelogging"; - -export function GetClientAuthMiddleware( - checksecret = true, - internal = false, - checksecret_if_available = false -) { - return async (req: Request, res: Response, next: NextFunction) => { - try { - let client_id = req.query.client_id || req.body.client_id; - let client_secret = req.query.client_secret || req.body.client_secret; - - if (!client_id && !client_secret && req.headers.authorization) { - let header = req.headers.authorization; - let [type, val] = header.split(" "); - if (val) { - let str = Buffer.from(val, "base64").toString("utf-8"); - let [id, secret] = str.split(":"); - client_id = id; - client_secret = secret; - } - } - - if (!client_id || (!client_secret && checksecret)) { - throw new RequestError( - "No client credentials", - HttpStatusCode.BAD_REQUEST - ); - } - let w = { client_id: client_id, client_secret: client_secret }; - if (!checksecret && !(checksecret_if_available && client_secret)) - delete w.client_secret; - - let client = await Client.findOne(w); - - if (!client) { - throw new RequestError( - "Invalid client_id" + (checksecret ? "or client_secret" : ""), - HttpStatusCode.BAD_REQUEST - ); - } - - if (internal && !client.internal) { - throw new RequestError( - req.__("Client has no permission for access"), - HttpStatusCode.FORBIDDEN - ); - } - req.client = client; - next(); - } catch (e) { - if (next) next(e); - else throw e; - } - }; -} - -export const ClientAuthMiddleware = GetClientAuthMiddleware(); - -export function GetClientApiAuthMiddleware(permissions?: string[]) { - return async (req: Request, res: Response, next: NextFunction) => { - try { - const invalid_err = new RequestError( - req.__("Unauthorized"), - HttpStatusCode.UNAUTHORIZED - ); - let token = - (req.query.access_token as string) || - (req.headers.authorization as string); - if (!token) { - Logging.debug("No token found. Searched in query (access_token) and header (authorization)"); - throw invalid_err; - } - - if (token.toLowerCase().startsWith("bearer ")) - token = token.substring(7); - - let data: OAuthJWT; - try { - data = await validateJWT(token); - } catch (err) { - Logging.debug("Invalid JWT", err.message); - throw invalid_err; - } - - let user = await User.findOne({ uid: data.user }); - - if (!user) { - Logging.debug("User not found"); - throw invalid_err; - } - - let client = await Client.findOne({ client_id: data.application }); - if (!client) { - Logging.debug("Client not found"); - throw invalid_err; - } - - if ( - permissions && - (!data.permissions || - !permissions.every((e) => data.permissions.indexOf(e) >= 0)) - ) { - Logging.debug("Invalid permissions"); - throw invalid_err; - } - - req.user = user; - req.client = client; - next(); - } catch (e) { - if (next) next(e); - else throw e; - } - }; -} +import { NextFunction, Request, Response } from "express"; +import RequestError, { HttpStatusCode } from "../../helper/request_error.js"; +import Client from "../../models/client.js"; +import { validateJWT } from "../../keys.js"; +import User from "../../models/user.js"; +import { OAuthJWT } from "../../helper/jwt.js"; +import Logging from "@hibas123/nodelogging"; + +export function GetClientAuthMiddleware( + checksecret = true, + internal = false, + checksecret_if_available = false +) { + return async (req: Request, res: Response, next: NextFunction) => { + try { + let client_id = req.query.client_id || req.body.client_id; + let client_secret = req.query.client_secret || req.body.client_secret; + + if (!client_id && !client_secret && req.headers.authorization) { + let header = req.headers.authorization; + let [type, val] = header.split(" "); + if (val) { + let str = Buffer.from(val, "base64").toString("utf-8"); + let [id, secret] = str.split(":"); + client_id = id; + client_secret = secret; + } + } + + if (!client_id || (!client_secret && checksecret)) { + throw new RequestError( + "No client credentials", + HttpStatusCode.BAD_REQUEST + ); + } + let w = { client_id: client_id, client_secret: client_secret }; + if (!checksecret && !(checksecret_if_available && client_secret)) + delete w.client_secret; + + let client = await Client.findOne(w); + + if (!client) { + throw new RequestError( + "Invalid client_id" + (checksecret ? "or client_secret" : ""), + HttpStatusCode.BAD_REQUEST + ); + } + + if (internal && !client.internal) { + throw new RequestError( + req.__("Client has no permission for access"), + HttpStatusCode.FORBIDDEN + ); + } + req.client = client; + next(); + } catch (e) { + if (next) next(e); + else throw e; + } + }; +} + +export const ClientAuthMiddleware = GetClientAuthMiddleware(); + +export function GetClientApiAuthMiddleware(permissions?: string[]) { + return async (req: Request, res: Response, next: NextFunction) => { + try { + const invalid_err = new RequestError( + req.__("Unauthorized"), + HttpStatusCode.UNAUTHORIZED + ); + let token = + (req.query.access_token as string) || + (req.headers.authorization as string); + if (!token) { + Logging.debug("No token found. Searched in query (access_token) and header (authorization)"); + throw invalid_err; + } + + if (token.toLowerCase().startsWith("bearer ")) + token = token.substring(7); + + let data: OAuthJWT; + try { + data = await validateJWT(token); + } catch (err) { + Logging.debug("Invalid JWT", err.message); + throw invalid_err; + } + + let user = await User.findOne({ uid: data.user }); + + if (!user) { + Logging.debug("User not found"); + throw invalid_err; + } + + let client = await Client.findOne({ client_id: data.application }); + if (!client) { + Logging.debug("Client not found"); + throw invalid_err; + } + + if ( + permissions && + (!data.permissions || + !permissions.every((e) => data.permissions.indexOf(e) >= 0)) + ) { + Logging.debug("Invalid permissions"); + throw invalid_err; + } + + req.user = user; + req.client = client; + next(); + } catch (e) { + if (next) next(e); + else throw e; + } + }; +} diff --git a/Backend/src/api/middlewares/stacker.ts b/Backend/src/api/middlewares/stacker.ts index b6af84c..0ee9590 100644 --- a/Backend/src/api/middlewares/stacker.ts +++ b/Backend/src/api/middlewares/stacker.ts @@ -1,28 +1,28 @@ -import { Request, Response, NextFunction, RequestHandler } from "express"; -import promiseMiddleware from "../../helper/promiseMiddleware"; - -type RH = (req: Request, res: Response, next?: NextFunction) => any; - -function call(handler: RH, req: Request, res: Response) { - return new Promise((yes, no) => { - let p = handler(req, res, (err) => { - if (err) no(err); - else yes(); - }); - if (p && p.catch) p.catch((err) => no(err)); - }); -} - -const Stacker = (...handler: RH[]) => { - return promiseMiddleware( - async (req: Request, res: Response, next: NextFunction) => { - let hc = handler.concat(); - while (hc.length > 0) { - let h = hc.shift(); - await call(h, req, res); - } - next(); - } - ); -}; -export default Stacker; +import { Request, Response, NextFunction, RequestHandler } from "express"; +import promiseMiddleware from "../../helper/promiseMiddleware.js"; + +type RH = (req: Request, res: Response, next?: NextFunction) => any; + +function call(handler: RH, req: Request, res: Response) { + return new Promise((yes, no) => { + let p = handler(req, res, (err) => { + if (err) no(err); + else yes(); + }); + if (p && p.catch) p.catch((err) => no(err)); + }); +} + +const Stacker = (...handler: RH[]) => { + return promiseMiddleware( + async (req: Request, res: Response, next: NextFunction) => { + let hc = handler.concat(); + while (hc.length > 0) { + let h = hc.shift(); + await call(h, req, res); + } + next(); + } + ); +}; +export default Stacker; diff --git a/Backend/src/api/middlewares/user.ts b/Backend/src/api/middlewares/user.ts index d81507e..3518c20 100644 --- a/Backend/src/api/middlewares/user.ts +++ b/Backend/src/api/middlewares/user.ts @@ -1,8 +1,8 @@ import { NextFunction, Request, Response } from "express"; import Logging from "@hibas123/nodelogging"; -import RequestError, { HttpStatusCode } from "../../helper/request_error"; -import promiseMiddleware from "../../helper/promiseMiddleware"; -import { requireLoginState } from "../../helper/login"; +import RequestError, { HttpStatusCode } from "../../helper/request_error.js"; +import promiseMiddleware from "../../helper/promiseMiddleware.js"; +import { requireLoginState } from "../../helper/login.js"; class Invalid extends Error { } diff --git a/Backend/src/api/middlewares/verify.ts b/Backend/src/api/middlewares/verify.ts index 0525280..d82bd30 100644 --- a/Backend/src/api/middlewares/verify.ts +++ b/Backend/src/api/middlewares/verify.ts @@ -1,142 +1,141 @@ -import { Request, Response, NextFunction } from "express"; -import Logging from "@hibas123/nodelogging"; -import { - isString, - isDate, -} from "util"; -import RequestError, { HttpStatusCode } from "../../helper/request_error"; - -export enum Types { - STRING, - NUMBER, - BOOLEAN, - EMAIL, - OBJECT, - DATE, - ARRAY, - ENUM, -} - -function isEmail(value: any): boolean { - return /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test( - value - ); -} - -export interface CheckObject { - type: Types; - query?: boolean; - optional?: boolean; - - /** - * Only when Type.ENUM - * - * values to check before - */ - values?: string[]; - - /** - * Only when Type.STRING - */ - notempty?: boolean; // Only STRING -} - -export interface Checks { - [index: string]: CheckObject; // | Types -} - -// req: Request, res: Response, next: NextFunction -export default function (fields: Checks, noadditional = false) { - return (req: Request, res: Response, next: NextFunction) => { - let errors: { message: string; field: string }[] = []; - - function check(data: any, field_name: string, field: CheckObject) { - if (data !== undefined && data !== null) { - switch (field.type) { - case Types.STRING: - if (isString(data)) { - if (!field.notempty) return; - if (data !== "") return; - } - break; - case Types.NUMBER: - if (typeof data == "number") return; - break; - case Types.EMAIL: - if (isEmail(data)) return; - break; - case Types.BOOLEAN: - if (typeof data == "boolean") return; - break; - case Types.OBJECT: - if (typeof data == "object") return; - break; - case Types.ARRAY: - if (Array.isArray(data)) return; - break; - case Types.DATE: - if (isDate(data)) return; - break; - case Types.ENUM: - if (typeof data == "string") { - if (field.values.indexOf(data) >= 0) return; - } - break; - default: - Logging.error( - `Invalid type to check: ${field.type} ${Types[field.type]}` - ); - } - errors.push({ - message: res.__( - "Field {{field}} has wrong type. It should be from type {{type}}", - { field: field_name, type: Types[field.type].toLowerCase() } - ), - field: field_name, - }); - } else { - if (!field.optional) - errors.push({ - message: res.__("Field {{field}} is not defined", { - field: field_name, - }), - field: field_name, - }); - } - } - - for (let field_name in fields) { - let field = fields[field_name]; - let data = fields[field_name].query - ? req.query[field_name] - : req.body[field_name]; - check(data, field_name, field); - } - - if (noadditional) { - //Checks if the data given has additional parameters - let should = Object.keys(fields); - should = should.filter((e) => !fields[e].query); //Query parameters should not exist on body - let has = Object.keys(req.body); - - has.every((e) => { - if (should.indexOf(e) >= 0) { - return true; - } else { - errors.push({ - message: res.__("Field {{field}} should not be there", { - field: e, - }), - field: e, - }); - return false; - } - }); - } - - if (errors.length > 0) { - let err = new RequestError(errors, HttpStatusCode.BAD_REQUEST, true); - next(err); - } else next(); - }; -} +import { Request, Response, NextFunction } from "express"; +import Logging from "@hibas123/nodelogging"; +import { + types +} from "util"; +import RequestError, { HttpStatusCode } from "../../helper/request_error.js"; + +export enum Types { + STRING, + NUMBER, + BOOLEAN, + EMAIL, + OBJECT, + DATE, + ARRAY, + ENUM, +} + +function isEmail(value: any): boolean { + return /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test( + value + ); +} + +export interface CheckObject { + type: Types; + query?: boolean; + optional?: boolean; + + /** + * Only when Type.ENUM + * + * values to check before + */ + values?: string[]; + + /** + * Only when Type.STRING + */ + notempty?: boolean; // Only STRING +} + +export interface Checks { + [index: string]: CheckObject; // | Types +} + +// req: Request, res: Response, next: NextFunction +export default function (fields: Checks, noadditional = false) { + return (req: Request, res: Response, next: NextFunction) => { + let errors: { message: string; field: string }[] = []; + + function check(data: any, field_name: string, field: CheckObject) { + if (data !== undefined && data !== null) { + switch (field.type) { + case Types.STRING: + if (typeof data === "string") { + if (!field.notempty) return; + if (data !== "") return; + } + break; + case Types.NUMBER: + if (typeof data == "number") return; + break; + case Types.EMAIL: + if (isEmail(data)) return; + break; + case Types.BOOLEAN: + if (typeof data == "boolean") return; + break; + case Types.OBJECT: + if (typeof data == "object") return; + break; + case Types.ARRAY: + if (Array.isArray(data)) return; + break; + case Types.DATE: + if (types.isDate(data)) return; + break; + case Types.ENUM: + if (typeof data == "string") { + if (field.values.indexOf(data) >= 0) return; + } + break; + default: + Logging.error( + `Invalid type to check: ${field.type} ${Types[field.type]}` + ); + } + errors.push({ + message: res.__( + "Field {{field}} has wrong type. It should be from type {{type}}", + { field: field_name, type: Types[field.type].toLowerCase() } + ), + field: field_name, + }); + } else { + if (!field.optional) + errors.push({ + message: res.__("Field {{field}} is not defined", { + field: field_name, + }), + field: field_name, + }); + } + } + + for (let field_name in fields) { + let field = fields[field_name]; + let data = fields[field_name].query + ? req.query[field_name] + : req.body[field_name]; + check(data, field_name, field); + } + + if (noadditional) { + //Checks if the data given has additional parameters + let should = Object.keys(fields); + should = should.filter((e) => !fields[e].query); //Query parameters should not exist on body + let has = Object.keys(req.body); + + has.every((e) => { + if (should.indexOf(e) >= 0) { + return true; + } else { + errors.push({ + message: res.__("Field {{field}} should not be there", { + field: e, + }), + field: e, + }); + return false; + } + }); + } + + if (errors.length > 0) { + let err = new RequestError(errors, HttpStatusCode.BAD_REQUEST, true); + next(err); + } else next(); + }; +} diff --git a/Backend/src/api/oauth/auth.ts b/Backend/src/api/oauth/auth.ts index 9881207..b1ef7b4 100644 --- a/Backend/src/api/oauth/auth.ts +++ b/Backend/src/api/oauth/auth.ts @@ -1,15 +1,15 @@ -import Stacker from "../middlewares/stacker"; -import { GetUserMiddleware } from "../middlewares/user"; +import Stacker from "../middlewares/stacker.js"; +import { GetUserMiddleware } from "../middlewares/user.js"; import { Request, Response } from "express"; -import Client from "../../models/client"; +import Client from "../../models/client.js"; import Logging from "@hibas123/nodelogging"; -import Permission, { IPermission } from "../../models/permissions"; -import ClientCode from "../../models/client_code"; +import Permission, { IPermission } from "../../models/permissions.js"; +import ClientCode from "../../models/client_code.js"; import moment = require("moment"); import { randomBytes } from "crypto"; // import { ObjectId } from "bson"; -import Grant, { IGrant } from "../../models/grants"; -import GetAuthPage from "../../views/authorize"; +import Grant, { IGrant } from "../../models/grants.js"; +import GetAuthPage from "../../views/authorize.js"; import { ObjectId } from "mongodb"; // const AuthRoute = Stacker(GetUserMiddleware(true), async (req: Request, res: Response) => { diff --git a/Backend/src/api/oauth/index.ts b/Backend/src/api/oauth/index.ts index 562f88a..ef59e98 100644 --- a/Backend/src/api/oauth/index.ts +++ b/Backend/src/api/oauth/index.ts @@ -1,73 +1,73 @@ -import { Router } from "express"; -import GetAuthRoute from "./auth"; -import JWTRoute from "./jwt"; -import Public from "./public"; -import RefreshTokenRoute from "./refresh"; -import ProfileRoute from "./profile"; - -const OAuthRoute: Router = Router(); -/** - * @api {post} /oauth/auth - * @apiName OAuthAuth - * - * @apiGroup oauth - * @apiPermission user Special required - * - * @apiParam {String} response_type must be "code" others are not supported - * @apiParam {String} client_id ClientID - * @apiParam {String} redirect_uri The URI to redirect with code - * @apiParam {String} scope Scope that contains the requested permissions (comma seperated list of permissions) - * @apiParam {String} state State, that will be passed to redirect_uri for client - * @apiParam {String} nored Deactivates the Redirect response from server and instead returns the redirect URI in JSON response - */ -OAuthRoute.post("/auth", GetAuthRoute(false)); - -/** - * @api {get} /oauth/jwt - * @apiName OAuthJwt - * - * @apiGroup oauth - * @apiPermission none - * - * @apiParam {String} refreshtoken - * - * @apiSuccess {String} token The JWT that allowes the application to access the recources granted for refresh token - */ -OAuthRoute.get("/jwt", JWTRoute); - -/** - * @api {get} /oauth/public - * @apiName OAuthPublic - * - * @apiGroup oauth - * @apiPermission none - * - * @apiSuccess {String} public_key The applications public_key. Used to verify JWT. - */ -OAuthRoute.get("/public", Public); - -/** - * @api {get} /oauth/refresh - * @apiName OAuthRefreshGet - * - * @apiGroup oauth - */ -OAuthRoute.get("/refresh", RefreshTokenRoute); - -/** - * @api {post} /oauth/refresh - * @apiName OAuthRefreshPost - * - * @apiGroup oauth - */ -OAuthRoute.post("/refresh", RefreshTokenRoute); - -/** - * @api {get} /oauth/profile - * @apiName OAuthProfile - * - * @apiGroup oauth - */ -OAuthRoute.get("/profile", ProfileRoute); - -export default OAuthRoute; +import { Router } from "express"; +import GetAuthRoute from "./auth.js"; +import JWTRoute from "./jwt.js"; +import Public from "./public.js"; +import RefreshTokenRoute from "./refresh.js"; +import ProfileRoute from "./profile.js"; + +const OAuthRoute: Router = Router(); +/** + * @api {post} /oauth/auth + * @apiName OAuthAuth + * + * @apiGroup oauth + * @apiPermission user Special required + * + * @apiParam {String} response_type must be "code" others are not supported + * @apiParam {String} client_id ClientID + * @apiParam {String} redirect_uri The URI to redirect with code + * @apiParam {String} scope Scope that contains the requested permissions (comma seperated list of permissions) + * @apiParam {String} state State, that will be passed to redirect_uri for client + * @apiParam {String} nored Deactivates the Redirect response from server and instead returns the redirect URI in JSON response + */ +OAuthRoute.post("/auth", GetAuthRoute(false)); + +/** + * @api {get} /oauth/jwt + * @apiName OAuthJwt + * + * @apiGroup oauth + * @apiPermission none + * + * @apiParam {String} refreshtoken + * + * @apiSuccess {String} token The JWT that allowes the application to access the recources granted for refresh token + */ +OAuthRoute.get("/jwt", JWTRoute); + +/** + * @api {get} /oauth/public + * @apiName OAuthPublic + * + * @apiGroup oauth + * @apiPermission none + * + * @apiSuccess {String} public_key The applications public_key. Used to verify JWT. + */ +OAuthRoute.get("/public", Public); + +/** + * @api {get} /oauth/refresh + * @apiName OAuthRefreshGet + * + * @apiGroup oauth + */ +OAuthRoute.get("/refresh", RefreshTokenRoute); + +/** + * @api {post} /oauth/refresh + * @apiName OAuthRefreshPost + * + * @apiGroup oauth + */ +OAuthRoute.post("/refresh", RefreshTokenRoute); + +/** + * @api {get} /oauth/profile + * @apiName OAuthProfile + * + * @apiGroup oauth + */ +OAuthRoute.get("/profile", ProfileRoute); + +export default OAuthRoute; diff --git a/Backend/src/api/oauth/jwt.ts b/Backend/src/api/oauth/jwt.ts index 49c60b0..34f9e28 100644 --- a/Backend/src/api/oauth/jwt.ts +++ b/Backend/src/api/oauth/jwt.ts @@ -1,43 +1,43 @@ -import { Request, Response } from "express"; -import promiseMiddleware from "../../helper/promiseMiddleware"; -import RequestError, { HttpStatusCode } from "../../helper/request_error"; -import RefreshToken from "../../models/refresh_token"; -import User from "../../models/user"; -import Client from "../../models/client"; -import { getAccessTokenJWT } from "../../helper/jwt"; - -const JWTRoute = promiseMiddleware(async (req: Request, res: Response) => { - let { refreshtoken } = req.query as { [key: string]: string }; - if (!refreshtoken) - throw new RequestError( - req.__("Refresh token not set"), - HttpStatusCode.BAD_REQUEST - ); - - let token = await RefreshToken.findOne({ token: refreshtoken }); - if (!token) - throw new RequestError( - req.__("Invalid token"), - HttpStatusCode.BAD_REQUEST - ); - - let user = await User.findById(token.user); - if (!user) { - token.valid = false; - await RefreshToken.save(token); - throw new RequestError( - req.__("Invalid token"), - HttpStatusCode.BAD_REQUEST - ); - } - - let client = await Client.findById(token.client); - - let jwt = await getAccessTokenJWT({ - user, - permissions: token.permissions, - client, - }); - res.json({ token: jwt }); -}); -export default JWTRoute; +import { Request, Response } from "express"; +import promiseMiddleware from "../../helper/promiseMiddleware.js"; +import RequestError, { HttpStatusCode } from "../../helper/request_error.js"; +import RefreshToken from "../../models/refresh_token.js"; +import User from "../../models/user.js"; +import Client from "../../models/client.js"; +import { getAccessTokenJWT } from "../../helper/jwt.js"; + +const JWTRoute = promiseMiddleware(async (req: Request, res: Response) => { + let { refreshtoken } = req.query as { [key: string]: string }; + if (!refreshtoken) + throw new RequestError( + req.__("Refresh token not set"), + HttpStatusCode.BAD_REQUEST + ); + + let token = await RefreshToken.findOne({ token: refreshtoken }); + if (!token) + throw new RequestError( + req.__("Invalid token"), + HttpStatusCode.BAD_REQUEST + ); + + let user = await User.findById(token.user); + if (!user) { + token.valid = false; + await RefreshToken.save(token); + throw new RequestError( + req.__("Invalid token"), + HttpStatusCode.BAD_REQUEST + ); + } + + let client = await Client.findById(token.client); + + let jwt = await getAccessTokenJWT({ + user, + permissions: token.permissions, + client, + }); + res.json({ token: jwt }); +}); +export default JWTRoute; diff --git a/Backend/src/api/oauth/profile.ts b/Backend/src/api/oauth/profile.ts index 4c4c6ed..9e3eed5 100644 --- a/Backend/src/api/oauth/profile.ts +++ b/Backend/src/api/oauth/profile.ts @@ -1,6 +1,6 @@ -import Mail from "../../models/mail"; -import { GetClientApiAuthMiddleware } from "../middlewares/client"; -import Stacker from "../middlewares/stacker"; +import Mail from "../../models/mail.js"; +import { GetClientApiAuthMiddleware } from "../middlewares/client.js"; +import Stacker from "../middlewares/stacker.js"; import { Request, Response } from "express"; import Logging from "@hibas123/nodelogging"; diff --git a/Backend/src/api/oauth/public.ts b/Backend/src/api/oauth/public.ts index 1534afa..23474f4 100644 --- a/Backend/src/api/oauth/public.ts +++ b/Backend/src/api/oauth/public.ts @@ -1,6 +1,6 @@ -import { Request, Response } from "express"; -import { public_key } from "../../keys"; - -export default function Public(req: Request, res: Response) { - res.json({ public_key: public_key }); -} +import { Request, Response } from "express"; +import { public_key } from "../../keys.js"; + +export default function Public(req: Request, res: Response) { + res.json({ public_key: public_key }); +} diff --git a/Backend/src/api/oauth/refresh.ts b/Backend/src/api/oauth/refresh.ts index 277d848..00bab76 100644 --- a/Backend/src/api/oauth/refresh.ts +++ b/Backend/src/api/oauth/refresh.ts @@ -1,122 +1,122 @@ -import { Request, Response } from "express"; -import RequestError, { HttpStatusCode } from "../../helper/request_error"; -import User from "../../models/user"; -import Client from "../../models/client"; -import { - getAccessTokenJWT, - getIDToken, - AccessTokenJWTExp, -} from "../../helper/jwt"; -import Stacker from "../middlewares/stacker"; -import { GetClientAuthMiddleware } from "../middlewares/client"; -import ClientCode from "../../models/client_code"; -import Mail from "../../models/mail"; -import { randomBytes } from "crypto"; -import moment = require("moment"); -// import { JWTExpDur } from "../../keys"; -import RefreshToken from "../../models/refresh_token"; -import { getEncryptionKey } from "../../helper/user_key"; -import { refreshTokenValidTime } from "../../config"; - -// TODO: -/* -For example, the authorization server could employ refresh token -rotation in which a new refresh token is issued with every access -token refresh response. The previous refresh token is invalidated but retained by the authorization server. If a refresh token is -compromised and subsequently used by both the attacker and the -legitimate client, one of them will present an invalidated refresh -token, which will inform the authorization server of the breach. -*/ - -const RefreshTokenRoute = Stacker( - GetClientAuthMiddleware(false, false, true), - async (req: Request, res: Response) => { - let grant_type = req.query.grant_type || req.body.grant_type; - if (!grant_type || grant_type === "authorization_code") { - let code = req.query.code || req.body.code; - let nonce = req.query.nonce || req.body.nonce; - - let c = await ClientCode.findOne({ code: code }); - if (!c || moment(c.validTill).isBefore()) { - throw new RequestError( - req.__("Invalid code"), - HttpStatusCode.BAD_REQUEST - ); - } - - let client = await Client.findById(c.client); - - let user = await User.findById(c.user); - let mails = await Promise.all(user.mails.map((m) => Mail.findOne(m))); - - let token = RefreshToken.new({ - user: c.user, - client: c.client, - permissions: c.permissions, - token: randomBytes(16).toString("hex"), - valid: true, - validTill: moment().add(refreshTokenValidTime).toDate(), - }); - await RefreshToken.save(token); - await ClientCode.delete(c); - - let mail = mails.find((e) => e.primary); - if (!mail) mail = mails[0]; - - res.json({ - refresh_token: token.token, - token: token.token, - access_token: await getAccessTokenJWT({ - client: client, - user: user, - permissions: c.permissions, - }), - token_type: "bearer", - expires_in: AccessTokenJWTExp.asSeconds(), - profile: { - uid: user.uid, - email: mail ? mail.mail : "", - name: user.name, - enc_key: getEncryptionKey(user, client), - }, - id_token: getIDToken(user, client.client_id, nonce), - }); - } else if (grant_type === "refresh_token") { - let refresh_token = req.query.refresh_token || req.body.refresh_token; - if (!refresh_token) - throw new RequestError( - req.__("refresh_token not set"), - HttpStatusCode.BAD_REQUEST - ); - - let token = await RefreshToken.findOne({ token: refresh_token }); - if (!token || !token.valid || moment(token.validTill).isBefore()) - throw new RequestError( - req.__("Invalid token"), - HttpStatusCode.BAD_REQUEST - ); - - token.validTill = moment().add(refreshTokenValidTime).toDate(); - await RefreshToken.save(token); - - let user = await User.findById(token.user); - let client = await Client.findById(token.client); - let jwt = await getAccessTokenJWT({ - user, - client, - permissions: token.permissions, - }); - res.json({ - access_token: jwt, - expires_in: AccessTokenJWTExp.asSeconds(), - }); - } else { - throw new RequestError( - "invalid grant_type", - HttpStatusCode.BAD_REQUEST - ); - } - } -); - -export default RefreshTokenRoute; +import { Request, Response } from "express"; +import RequestError, { HttpStatusCode } from "../../helper/request_error.js"; +import User from "../../models/user.js"; +import Client from "../../models/client.js"; +import { + getAccessTokenJWT, + getIDToken, + AccessTokenJWTExp, +} from "../../helper/jwt.js"; +import Stacker from "../middlewares/stacker.js"; +import { GetClientAuthMiddleware } from "../middlewares/client.js"; +import ClientCode from "../../models/client_code.js"; +import Mail from "../../models/mail.js"; +import { randomBytes } from "crypto"; +import moment = require("moment"); +// import { JWTExpDur } from "../../keys"; +import RefreshToken from "../../models/refresh_token.js"; +import { getEncryptionKey } from "../../helper/user_key.js"; +import { refreshTokenValidTime } from "../../config.js"; + +// TODO: +/* +For example, the authorization server could employ refresh token +rotation in which a new refresh token is issued with every access +token refresh response. The previous refresh token is invalidated but retained by the authorization server. If a refresh token is +compromised and subsequently used by both the attacker and the +legitimate client, one of them will present an invalidated refresh +token, which will inform the authorization server of the breach. +*/ + +const RefreshTokenRoute = Stacker( + GetClientAuthMiddleware(false, false, true), + async (req: Request, res: Response) => { + let grant_type = req.query.grant_type || req.body.grant_type; + if (!grant_type || grant_type === "authorization_code") { + let code = req.query.code || req.body.code; + let nonce = req.query.nonce || req.body.nonce; + + let c = await ClientCode.findOne({ code: code }); + if (!c || moment(c.validTill).isBefore()) { + throw new RequestError( + req.__("Invalid code"), + HttpStatusCode.BAD_REQUEST + ); + } + + let client = await Client.findById(c.client); + + let user = await User.findById(c.user); + let mails = await Promise.all(user.mails.map((m) => Mail.findOne(m))); + + let token = RefreshToken.new({ + user: c.user, + client: c.client, + permissions: c.permissions, + token: randomBytes(16).toString("hex"), + valid: true, + validTill: moment().add(refreshTokenValidTime).toDate(), + }); + await RefreshToken.save(token); + await ClientCode.delete(c); + + let mail = mails.find((e) => e.primary); + if (!mail) mail = mails[0]; + + res.json({ + refresh_token: token.token, + token: token.token, + access_token: await getAccessTokenJWT({ + client: client, + user: user, + permissions: c.permissions, + }), + token_type: "bearer", + expires_in: AccessTokenJWTExp.asSeconds(), + profile: { + uid: user.uid, + email: mail ? mail.mail : "", + name: user.name, + enc_key: getEncryptionKey(user, client), + }, + id_token: getIDToken(user, client.client_id, nonce), + }); + } else if (grant_type === "refresh_token") { + let refresh_token = req.query.refresh_token || req.body.refresh_token; + if (!refresh_token) + throw new RequestError( + req.__("refresh_token not set"), + HttpStatusCode.BAD_REQUEST + ); + + let token = await RefreshToken.findOne({ token: refresh_token }); + if (!token || !token.valid || moment(token.validTill).isBefore()) + throw new RequestError( + req.__("Invalid token"), + HttpStatusCode.BAD_REQUEST + ); + + token.validTill = moment().add(refreshTokenValidTime).toDate(); + await RefreshToken.save(token); + + let user = await User.findById(token.user); + let client = await Client.findById(token.client); + let jwt = await getAccessTokenJWT({ + user, + client, + permissions: token.permissions, + }); + res.json({ + access_token: jwt, + expires_in: AccessTokenJWTExp.asSeconds(), + }); + } else { + throw new RequestError( + "invalid grant_type", + HttpStatusCode.BAD_REQUEST + ); + } + } +); + +export default RefreshTokenRoute; diff --git a/Backend/src/api/user/index.ts b/Backend/src/api/user/index.ts index c181a10..ee93fef 100644 --- a/Backend/src/api/user/index.ts +++ b/Backend/src/api/user/index.ts @@ -1,6 +1,6 @@ import { Router } from "express"; -import Register from "./register"; -import OAuthRoute from "./oauth"; +import Register from "./register.js"; +import OAuthRoute from "./oauth/index.js"; const UserRoute: Router = Router(); diff --git a/Backend/src/api/user/oauth/_helper.ts b/Backend/src/api/user/oauth/_helper.ts index 1fd6c84..6152dc2 100644 --- a/Backend/src/api/user/oauth/_helper.ts +++ b/Backend/src/api/user/oauth/_helper.ts @@ -1,21 +1,21 @@ -import RequestError, { HttpStatusCode } from "../../../helper/request_error"; -import Client, { IClient } from "../../../models/client"; - -export async function getClientWithOrigin(client_id: string, origin: string) { - const client = await Client.findOne({ - client_id, - }); - - const clientNotFoundError = new RequestError( - "Client not found!", - HttpStatusCode.BAD_REQUEST - ); - - if (!client) throw clientNotFoundError; - - const clientUrl = new URL(client.redirect_url); - - if (clientUrl.hostname !== origin) throw clientNotFoundError; - - return client; -} +import RequestError, { HttpStatusCode } from "../../../helper/request_error.js"; +import Client, { IClient } from "../../../models/client.js"; + +export async function getClientWithOrigin(client_id: string, origin: string) { + const client = await Client.findOne({ + client_id, + }); + + const clientNotFoundError = new RequestError( + "Client not found!", + HttpStatusCode.BAD_REQUEST + ); + + if (!client) throw clientNotFoundError; + + const clientUrl = new URL(client.redirect_url); + + if (clientUrl.hostname !== origin) throw clientNotFoundError; + + return client; +} diff --git a/Backend/src/api/user/oauth/index.ts b/Backend/src/api/user/oauth/index.ts index cab9ada..00b4e6a 100644 --- a/Backend/src/api/user/oauth/index.ts +++ b/Backend/src/api/user/oauth/index.ts @@ -1,12 +1,12 @@ -import { Router } from "express"; -import { GetJWTByUser } from "./jwt"; -import { GetPermissionsForAuthRequest } from "./permissions"; -import { GetTokenByUser } from "./refresh_token"; - -const router = Router(); - -router.get("/jwt", GetJWTByUser); -router.get("/permissions", GetPermissionsForAuthRequest); -router.get("/refresh_token", GetTokenByUser); - -export default router; +import { Router } from "express"; +import { GetJWTByUser } from "./jwt.js"; +import { GetPermissionsForAuthRequest } from "./permissions.js"; +import { GetTokenByUser } from "./refresh_token.js"; + +const router = Router(); + +router.get("/jwt", GetJWTByUser); +router.get("/permissions", GetPermissionsForAuthRequest); +router.get("/refresh_token", GetTokenByUser); + +export default router; diff --git a/Backend/src/api/user/oauth/jwt.ts b/Backend/src/api/user/oauth/jwt.ts index beca8b9..d7e5068 100644 --- a/Backend/src/api/user/oauth/jwt.ts +++ b/Backend/src/api/user/oauth/jwt.ts @@ -1,25 +1,23 @@ -import { Request, Response } from "express"; -import Stacker from "../../middlewares/stacker"; -import { GetUserMiddleware } from "../../middlewares/user"; -import { URL } from "url"; -import Client from "../../../models/client"; -import RequestError, { HttpStatusCode } from "../../../helper/request_error"; -import { getAccessTokenJWT } from "../../../helper/jwt"; -import { getClientWithOrigin } from "./_helper"; - -export const GetJWTByUser = Stacker( - GetUserMiddleware(true, false), - async (req: Request, res: Response) => { - const { client_id, origin } = req.query as { [key: string]: string }; - - const client = await getClientWithOrigin(client_id, origin); - - const jwt = await getAccessTokenJWT({ - user: req.user, - client: client, - permissions: [], - }); - - res.json({ jwt }); - } -); +import { Request, Response } from "express"; +import Stacker from "../../middlewares/stacker.js"; +import { GetUserMiddleware } from "../../middlewares/user.js"; + +import { getAccessTokenJWT } from "../../../helper/jwt.js"; +import { getClientWithOrigin } from "./_helper.js"; + +export const GetJWTByUser = Stacker( + GetUserMiddleware(true, false), + async (req: Request, res: Response) => { + const { client_id, origin } = req.query as { [key: string]: string }; + + const client = await getClientWithOrigin(client_id, origin); + + const jwt = await getAccessTokenJWT({ + user: req.user, + client: client, + permissions: [], + }); + + res.json({ jwt }); + } +); diff --git a/Backend/src/api/user/oauth/permissions.ts b/Backend/src/api/user/oauth/permissions.ts index dc9ed1a..5a076cc 100644 --- a/Backend/src/api/user/oauth/permissions.ts +++ b/Backend/src/api/user/oauth/permissions.ts @@ -1,15 +1,9 @@ import { Request, Response } from "express"; -import Stacker from "../../middlewares/stacker"; -import { GetUserMiddleware } from "../../middlewares/user"; -import { URL } from "url"; -import Client from "../../../models/client"; -import RequestError, { HttpStatusCode } from "../../../helper/request_error"; -import { randomBytes } from "crypto"; -import moment = require("moment"); -import RefreshToken from "../../../models/refresh_token"; -import { refreshTokenValidTime } from "../../../config"; -import { getClientWithOrigin } from "./_helper"; -import Permission from "../../../models/permissions"; +import Stacker from "../../middlewares/stacker.js"; +import { GetUserMiddleware } from "../../middlewares/user.js"; +import RequestError, { HttpStatusCode } from "../../../helper/request_error.js"; +import { getClientWithOrigin } from "./_helper.js"; +import Permission from "../../../models/permissions.js"; export const GetPermissionsForAuthRequest = Stacker( GetUserMiddleware(true, false), diff --git a/Backend/src/api/user/oauth/refresh_token.ts b/Backend/src/api/user/oauth/refresh_token.ts index 4ff4cc4..d4dcb1d 100644 --- a/Backend/src/api/user/oauth/refresh_token.ts +++ b/Backend/src/api/user/oauth/refresh_token.ts @@ -1,49 +1,47 @@ -import { Request, Response } from "express"; -import Stacker from "../../middlewares/stacker"; -import { GetUserMiddleware } from "../../middlewares/user"; -import { URL } from "url"; -import Client from "../../../models/client"; -import RequestError, { HttpStatusCode } from "../../../helper/request_error"; -import { randomBytes } from "crypto"; -import moment = require("moment"); -import RefreshToken from "../../../models/refresh_token"; -import { refreshTokenValidTime } from "../../../config"; -import { getClientWithOrigin } from "./_helper"; -import Permission from "../../../models/permissions"; - -export const GetTokenByUser = Stacker( - GetUserMiddleware(true, false), - async (req: Request, res: Response) => { - const { client_id, origin, permissions } = req.query as { - [key: string]: string; - }; - - const client = await getClientWithOrigin(client_id, origin); - - const perm = permissions.split(",").filter((e) => !!e); - - const resolved = await Promise.all( - perm.map((p) => Permission.findById(p)) - ); - - if (resolved.some((e) => e.grant_type !== "user")) { - throw new RequestError( - "Invalid Permission requested", - HttpStatusCode.BAD_REQUEST - ); - } - - let token = RefreshToken.new({ - user: req.user._id, - client: client._id, - permissions: resolved.map((e) => e._id), - token: randomBytes(16).toString("hex"), - valid: true, - validTill: moment().add(refreshTokenValidTime).toDate(), - }); - - await RefreshToken.save(token); - - res.json({ token }); - } -); +import { Request, Response } from "express"; +import Stacker from "../../middlewares/stacker.js"; +import { GetUserMiddleware } from "../../middlewares/user.js"; +import RequestError, { HttpStatusCode } from "../../../helper/request_error.js"; +import { randomBytes } from "crypto"; +import moment = require("moment"); +import RefreshToken from "../../../models/refresh_token.js"; +import { refreshTokenValidTime } from "../../../config.js"; +import { getClientWithOrigin } from "./_helper.js"; +import Permission from "../../../models/permissions.js"; + +export const GetTokenByUser = Stacker( + GetUserMiddleware(true, false), + async (req: Request, res: Response) => { + const { client_id, origin, permissions } = req.query as { + [key: string]: string; + }; + + const client = await getClientWithOrigin(client_id, origin); + + const perm = permissions.split(",").filter((e) => !!e); + + const resolved = await Promise.all( + perm.map((p) => Permission.findById(p)) + ); + + if (resolved.some((e) => e.grant_type !== "user")) { + throw new RequestError( + "Invalid Permission requested", + HttpStatusCode.BAD_REQUEST + ); + } + + let token = RefreshToken.new({ + user: req.user._id, + client: client._id, + permissions: resolved.map((e) => e._id), + token: randomBytes(16).toString("hex"), + valid: true, + validTill: moment().add(refreshTokenValidTime).toDate(), + }); + + await RefreshToken.save(token); + + res.json({ token }); + } +); diff --git a/Backend/src/api/user/register.ts b/Backend/src/api/user/register.ts index 07c744d..e5b1005 100644 --- a/Backend/src/api/user/register.ts +++ b/Backend/src/api/user/register.ts @@ -1,155 +1,155 @@ -import { Request, Response, Router } from "express"; -import Stacker from "../middlewares/stacker"; -import verify, { Types } from "../middlewares/verify"; -import promiseMiddleware from "../../helper/promiseMiddleware"; -import User, { Gender } from "../../models/user"; -import { HttpStatusCode } from "../../helper/request_error"; -import Mail from "../../models/mail"; -import RegCode from "../../models/regcodes"; - -const Register = Stacker( - verify({ - mail: { - type: Types.EMAIL, - notempty: true, - }, - username: { - type: Types.STRING, - notempty: true, - }, - password: { - type: Types.STRING, - notempty: true, - }, - salt: { - type: Types.STRING, - notempty: true, - }, - regcode: { - type: Types.STRING, - notempty: true, - }, - gender: { - type: Types.STRING, - notempty: true, - }, - name: { - type: Types.STRING, - notempty: true, - }, - // birthday: { - // type: Types.DATE - // } - }), - promiseMiddleware(async (req: Request, res: Response) => { - let { - username, - password, - salt, - mail, - gender, - name, - birthday, - regcode, - } = req.body; - let u = await User.findOne({ username: username.toLowerCase() }); - if (u) { - let err = { - message: [ - { - message: req.__("Username taken"), - field: "username", - }, - ], - status: HttpStatusCode.BAD_REQUEST, - nolog: true, - }; - throw err; - } - - let m = await Mail.findOne({ mail: mail }); - if (m) { - let err = { - message: [ - { - message: req.__("Mail linked with other account"), - field: "mail", - }, - ], - status: HttpStatusCode.BAD_REQUEST, - nolog: true, - }; - throw err; - } - - let regc = await RegCode.findOne({ token: regcode }); - if (!regc) { - let err = { - message: [ - { - message: req.__("Invalid registration code"), - field: "regcode", - }, - ], - status: HttpStatusCode.BAD_REQUEST, - nolog: true, - }; - throw err; - } - - if (!regc.valid) { - let err = { - message: [ - { - message: req.__("Registration code already used"), - field: "regcode", - }, - ], - status: HttpStatusCode.BAD_REQUEST, - nolog: true, - }; - throw err; - } - - let g = -1; - switch (gender) { - case "male": - g = Gender.male; - break; - case "female": - g = Gender.female; - break; - case "other": - g = Gender.other; - break; - default: - g = Gender.none; - break; - } - - let user = User.new({ - username: username.toLowerCase(), - password: password, - salt: salt, - gender: g, - name: name, - // birthday: birthday, - admin: false, - }); - - regc.valid = false; - await RegCode.save(regc); - - let ml = Mail.new({ - mail: mail, - primary: true, - }); - - await Mail.save(ml); - - user.mails.push(ml._id); - await User.save(user); - res.json({ success: true }); - }) -); -export default Register; +import { Request, Response, Router } from "express"; +import Stacker from "../middlewares/stacker.js"; +import verify, { Types } from "../middlewares/verify.js"; +import promiseMiddleware from "../../helper/promiseMiddleware.js"; +import User, { Gender } from "../../models/user.js"; +import { HttpStatusCode } from "../../helper/request_error.js"; +import Mail from "../../models/mail.js"; +import RegCode from "../../models/regcodes.js"; + +const Register = Stacker( + verify({ + mail: { + type: Types.EMAIL, + notempty: true, + }, + username: { + type: Types.STRING, + notempty: true, + }, + password: { + type: Types.STRING, + notempty: true, + }, + salt: { + type: Types.STRING, + notempty: true, + }, + regcode: { + type: Types.STRING, + notempty: true, + }, + gender: { + type: Types.STRING, + notempty: true, + }, + name: { + type: Types.STRING, + notempty: true, + }, + // birthday: { + // type: Types.DATE + // } + }), + promiseMiddleware(async (req: Request, res: Response) => { + let { + username, + password, + salt, + mail, + gender, + name, + birthday, + regcode, + } = req.body; + let u = await User.findOne({ username: username.toLowerCase() }); + if (u) { + let err = { + message: [ + { + message: req.__("Username taken"), + field: "username", + }, + ], + status: HttpStatusCode.BAD_REQUEST, + nolog: true, + }; + throw err; + } + + let m = await Mail.findOne({ mail: mail }); + if (m) { + let err = { + message: [ + { + message: req.__("Mail linked with other account"), + field: "mail", + }, + ], + status: HttpStatusCode.BAD_REQUEST, + nolog: true, + }; + throw err; + } + + let regc = await RegCode.findOne({ token: regcode }); + if (!regc) { + let err = { + message: [ + { + message: req.__("Invalid registration code"), + field: "regcode", + }, + ], + status: HttpStatusCode.BAD_REQUEST, + nolog: true, + }; + throw err; + } + + if (!regc.valid) { + let err = { + message: [ + { + message: req.__("Registration code already used"), + field: "regcode", + }, + ], + status: HttpStatusCode.BAD_REQUEST, + nolog: true, + }; + throw err; + } + + let g = -1; + switch (gender) { + case "male": + g = Gender.male; + break; + case "female": + g = Gender.female; + break; + case "other": + g = Gender.other; + break; + default: + g = Gender.none; + break; + } + + let user = User.new({ + username: username.toLowerCase(), + password: password, + salt: salt, + gender: g, + name: name, + // birthday: birthday, + admin: false, + }); + + regc.valid = false; + await RegCode.save(regc); + + let ml = Mail.new({ + mail: mail, + primary: true, + }); + + await Mail.save(ml); + + user.mails.push(ml._id); + await User.save(user); + res.json({ success: true }); + }) +); +export default Register; diff --git a/Backend/src/database.ts b/Backend/src/database.ts index 08104e4..e6d7b46 100644 --- a/Backend/src/database.ts +++ b/Backend/src/database.ts @@ -1,5 +1,5 @@ import SafeMongo from "@hibas123/safe_mongo"; -import Config from "./config"; +import Config from "./config.js"; const host = Config.database.host || "localhost"; diff --git a/Backend/src/express.d.ts b/Backend/src/express.d.ts index d7c3ecb..2a1c374 100644 --- a/Backend/src/express.d.ts +++ b/Backend/src/express.d.ts @@ -1,5 +1,5 @@ -import { IUser } from "./models/user"; -import { IClient } from "./models/client"; +import { IUser } from "./models/user.js"; +import { IClient } from "./models/client.js"; declare module "express" { interface Request { diff --git a/Backend/src/helper/jwt.ts b/Backend/src/helper/jwt.ts index 2e5b119..98f04f7 100644 --- a/Backend/src/helper/jwt.ts +++ b/Backend/src/helper/jwt.ts @@ -1,8 +1,8 @@ -import { IUser, Gender } from "../models/user"; +import { IUser, Gender } from "../models/user.js"; import { ObjectId } from "bson"; -import { createJWT } from "../keys"; -import { IClient } from "../models/client"; -import config from "../config"; +import { createJWT } from "../keys.js"; +import { IClient } from "../models/client.js"; +import config from "../config.js"; import moment = require("moment"); export interface OAuthJWT { diff --git a/Backend/src/helper/login.ts b/Backend/src/helper/login.ts index 2f7a78c..c1e4068 100644 --- a/Backend/src/helper/login.ts +++ b/Backend/src/helper/login.ts @@ -1,4 +1,4 @@ -import { SessionContext } from "../api/jrpc"; +import { SessionContext } from "../api/jrpc/index.js"; export function requireLoginState(ctx: SessionContext, validated: boolean = true, special: boolean = false): boolean { if (!ctx.user) return false; diff --git a/Backend/src/helper/user_key.ts b/Backend/src/helper/user_key.ts index 2aa3559..0351d2f 100644 --- a/Backend/src/helper/user_key.ts +++ b/Backend/src/helper/user_key.ts @@ -1,18 +1,18 @@ -// import * as crypto from "crypto-js" -import { IUser } from "../models/user"; -import { IClient } from "../models/client"; -import * as crypto from "crypto"; - -function sha512(text: string) { - let hash = crypto.createHash("sha512"); - hash.update(text); - return hash.digest("base64"); -} - -export function getEncryptionKey(user: IUser, client: IClient) { - return sha512( - sha512(user.encryption_key) + - sha512(client._id.toHexString()) + - sha512(client.client_id) - ); -} +// import * as crypto from "crypto-js" +import { IUser } from "../models/user.js"; +import { IClient } from "../models/client.js"; +import * as crypto from "crypto"; + +function sha512(text: string) { + let hash = crypto.createHash("sha512"); + hash.update(text); + return hash.digest("base64"); +} + +export function getEncryptionKey(user: IUser, client: IClient) { + return sha512( + sha512(user.encryption_key) + + sha512(client._id.toHexString()) + + sha512(client.client_id) + ); +} diff --git a/Backend/src/index.ts b/Backend/src/index.ts index 985ec48..6f4668e 100644 --- a/Backend/src/index.ts +++ b/Backend/src/index.ts @@ -1,90 +1,90 @@ -import Logging from "@hibas123/nodelogging"; -import config from "./config"; - -// import NLS from "@hibas123/nodeloggingserver_client"; -// if (config.logging) { -// let s = NLS(Logging, config.logging.server, config.logging.appid, config.logging.token); -// s.send(`[${new Date().toLocaleTimeString()}] Starting application`); -// } - -// if (!config.database) { -// Logging.error("No database config set. Terminating.") -// process.exit(); -// } - -if (!config.web) { - Logging.error("No web config set. Terminating."); - process.exit(); -} - -import * as i18n from "i18n"; -i18n.configure({ - locales: ["en", "de"], - directory: "./locales", -}); - -import Web from "./web"; -import TestData from "./testdata"; -import DB from "./database"; - -Logging.log("Connecting to Database"); -if (config.core.dev) { - Logging.warning("Running in dev mode! Database will be cleared!"); -} -DB.connect() - .then(async () => { - Logging.log("Database connected", config); - if (config.core.dev) await TestData(); - let web = new Web(config.web); - web.listen(); - - let already = new Set(); - function print(path, layer) { - if (layer.route) { - layer.route.stack.forEach( - print.bind(null, path.concat(split(layer.route.path))) - ); - } else if (layer.name === "router" && layer.handle.stack) { - layer.handle.stack.forEach( - print.bind(null, path.concat(split(layer.regexp))) - ); - } else if (layer.method) { - let me: string = layer.method.toUpperCase(); - me += " ".repeat(6 - me.length); - let msg = `${me} /${path - .concat(split(layer.regexp)) - .filter(Boolean) - .join("/")}`; - if (!already.has(msg)) { - already.add(msg); - Logging.log(msg); - } - } - } - - function split(thing) { - if (typeof thing === "string") { - return thing.split("/"); - } else if (thing.fast_slash) { - return ""; - } else { - var match = thing - .toString() - .replace("\\/?", "") - .replace("(?=\\/|$)", "$") - .match( - /^\/\^((?:\\[.*+?^${}()|[\]\\\/]|[^.*+?^${}()|[\]\\\/])*)\$\// - ); - return match - ? match[1].replace(/\\(.)/g, "$1").split("/") - : ""; - } - } - // Logging.log("--- Endpoints: ---"); - // web.server._router.stack.forEach(print.bind(null, [])) - // Logging.log("--- Endpoints end ---") - }) - .catch((e) => { - Logging.error(e); - process.exit(); - }); +import Logging from "@hibas123/nodelogging"; +import config from "./config.js"; + +// import NLS from "@hibas123/nodeloggingserver_client"; +// if (config.logging) { +// let s = NLS(Logging, config.logging.server, config.logging.appid, config.logging.token); +// s.send(`[${new Date().toLocaleTimeString()}] Starting application`); +// } + +// if (!config.database) { +// Logging.error("No database config set. Terminating.") +// process.exit(); +// } + +if (!config.web) { + Logging.error("No web config set. Terminating."); + process.exit(); +} + +import * as i18n from "i18n"; +i18n.configure({ + locales: ["en", "de"], + directory: "./locales", +}); + +import Web from "./web.js"; +import TestData from "./testdata.js"; +import DB from "./database.js"; + +Logging.log("Connecting to Database"); +if (config.core.dev) { + Logging.warning("Running in dev mode! Database will be cleared!"); +} +DB.connect() + .then(async () => { + Logging.log("Database connected", config); + if (config.core.dev) await TestData(); + let web = new Web(config.web); + web.listen(); + + let already = new Set(); + function print(path, layer) { + if (layer.route) { + layer.route.stack.forEach( + print.bind(null, path.concat(split(layer.route.path))) + ); + } else if (layer.name === "router" && layer.handle.stack) { + layer.handle.stack.forEach( + print.bind(null, path.concat(split(layer.regexp))) + ); + } else if (layer.method) { + let me: string = layer.method.toUpperCase(); + me += " ".repeat(6 - me.length); + let msg = `${me} /${path + .concat(split(layer.regexp)) + .filter(Boolean) + .join("/")}`; + if (!already.has(msg)) { + already.add(msg); + Logging.log(msg); + } + } + } + + function split(thing) { + if (typeof thing === "string") { + return thing.split("/"); + } else if (thing.fast_slash) { + return ""; + } else { + var match = thing + .toString() + .replace("\\/?", "") + .replace("(?=\\/|$)", "$") + .match( + /^\/\^((?:\\[.*+?^${}()|[\]\\\/]|[^.*+?^${}()|[\]\\\/])*)\$\// + ); + return match + ? match[1].replace(/\\(.)/g, "$1").split("/") + : ""; + } + } + // Logging.log("--- Endpoints: ---"); + // web.server._router.stack.forEach(print.bind(null, [])) + // Logging.log("--- Endpoints end ---") + }) + .catch((e) => { + Logging.error(e); + process.exit(); + }); diff --git a/Backend/src/keys.ts b/Backend/src/keys.ts index a58b37b..9f9e177 100644 --- a/Backend/src/keys.ts +++ b/Backend/src/keys.ts @@ -14,7 +14,6 @@ export function verify(message: Buffer, signature: Buffer): boolean { export let public_key: string; import * as jwt from "jsonwebtoken"; -import config from "./config"; export function createJWT(payload: any, options: jwt.SignOptions) { return new Promise((resolve, reject) => { diff --git a/Backend/src/models/client.ts b/Backend/src/models/client.ts index 69cbc4c..456861e 100644 --- a/Backend/src/models/client.ts +++ b/Backend/src/models/client.ts @@ -1,5 +1,5 @@ -import DB from "../database"; -import { ModelDataBase } from "@hibas123/safe_mongo/lib/model"; +import DB from "../database.js"; +import { ModelDataBase } from "@hibas123/safe_mongo/lib/model.js"; import { ObjectId } from "mongodb"; import { v4 } from "uuid"; diff --git a/Backend/src/models/client_code.ts b/Backend/src/models/client_code.ts index 0dce2a2..01bf328 100644 --- a/Backend/src/models/client_code.ts +++ b/Backend/src/models/client_code.ts @@ -1,7 +1,6 @@ -import DB from "../database"; -import { ModelDataBase } from "@hibas123/safe_mongo/lib/model"; +import DB from "../database.js"; +import { ModelDataBase } from "@hibas123/safe_mongo/lib/model.js"; import { ObjectId } from "mongodb"; -import { v4 } from "uuid"; export interface IClientCode extends ModelDataBase { user: ObjectId; diff --git a/Backend/src/models/grants.ts b/Backend/src/models/grants.ts index 9d972f5..65caa15 100644 --- a/Backend/src/models/grants.ts +++ b/Backend/src/models/grants.ts @@ -1,5 +1,5 @@ -import DB from "../database"; -import { ModelDataBase } from "@hibas123/safe_mongo/lib/model"; +import DB from "../database.js"; +import { ModelDataBase } from "@hibas123/safe_mongo/lib/model.js"; import { ObjectId } from "mongodb"; export interface IGrant extends ModelDataBase { diff --git a/Backend/src/models/login_token.ts b/Backend/src/models/login_token.ts index 1322d92..fffe2ea 100644 --- a/Backend/src/models/login_token.ts +++ b/Backend/src/models/login_token.ts @@ -1,5 +1,5 @@ -import DB from "../database"; -import { ModelDataBase } from "@hibas123/safe_mongo/lib/model"; +import DB from "../database.js"; +import { ModelDataBase } from "@hibas123/safe_mongo/lib/model.js"; import { ObjectId } from "mongodb"; import moment = require("moment"); diff --git a/Backend/src/models/mail.ts b/Backend/src/models/mail.ts index 51b1289..0695d0b 100644 --- a/Backend/src/models/mail.ts +++ b/Backend/src/models/mail.ts @@ -1,24 +1,24 @@ -import DB from "../database"; -import { ModelDataBase } from "@hibas123/safe_mongo"; - -export interface IMail extends ModelDataBase { - mail: string; - verified: boolean; - primary: boolean; -} - -const Mail = DB.addModel({ - name: "mail", - versions: [ - { - migration: () => {}, - schema: { - mail: { type: String }, - verified: { type: Boolean, default: false }, - primary: { type: Boolean }, - }, - }, - ], -}); - -export default Mail; +import DB from "../database.js"; +import { ModelDataBase } from "@hibas123/safe_mongo"; + +export interface IMail extends ModelDataBase { + mail: string; + verified: boolean; + primary: boolean; +} + +const Mail = DB.addModel({ + name: "mail", + versions: [ + { + migration: () => { }, + schema: { + mail: { type: String }, + verified: { type: Boolean, default: false }, + primary: { type: Boolean }, + }, + }, + ], +}); + +export default Mail; diff --git a/Backend/src/models/permissions.ts b/Backend/src/models/permissions.ts index 3138164..acf85d6 100644 --- a/Backend/src/models/permissions.ts +++ b/Backend/src/models/permissions.ts @@ -1,5 +1,5 @@ -import DB from "../database"; -import { ModelDataBase } from "@hibas123/safe_mongo/lib/model"; +import DB from "../database.js"; +import { ModelDataBase } from "@hibas123/safe_mongo/lib/model.js"; import { ObjectId } from "mongodb"; export interface IPermission extends ModelDataBase { diff --git a/Backend/src/models/refresh_token.ts b/Backend/src/models/refresh_token.ts index 39d7c45..56c1506 100644 --- a/Backend/src/models/refresh_token.ts +++ b/Backend/src/models/refresh_token.ts @@ -1,5 +1,5 @@ -import DB from "../database"; -import { ModelDataBase } from "@hibas123/safe_mongo/lib/model"; +import DB from "../database.js"; +import { ModelDataBase } from "@hibas123/safe_mongo/lib/model.js"; import { ObjectId } from "mongodb"; import { v4 } from "uuid"; diff --git a/Backend/src/models/regcodes.ts b/Backend/src/models/regcodes.ts index 5d1f9c7..490e822 100644 --- a/Backend/src/models/regcodes.ts +++ b/Backend/src/models/regcodes.ts @@ -1,5 +1,5 @@ -import DB from "../database"; -import { ModelDataBase } from "@hibas123/safe_mongo/lib/model"; +import DB from "../database.js"; +import { ModelDataBase } from "@hibas123/safe_mongo/lib/model.js"; import { ObjectId } from "mongodb"; import { v4 } from "uuid"; diff --git a/Backend/src/models/twofactor.ts b/Backend/src/models/twofactor.ts index d05a207..8dd6785 100644 --- a/Backend/src/models/twofactor.ts +++ b/Backend/src/models/twofactor.ts @@ -1,6 +1,6 @@ import { TFAType } from "@hibas123/openauth-internalapi"; -import DB from "../database"; -import { ModelDataBase } from "@hibas123/safe_mongo/lib/model"; +import DB from "../database.js"; +import { ModelDataBase } from "@hibas123/safe_mongo/lib/model.js"; import { ObjectId } from "bson"; import { Binary } from "mongodb"; @@ -30,7 +30,7 @@ export interface IWebAuthn extends ITwoFactor { data: { challenge?: any; device?: { - credentialID: Binary; + credentialID: Binary | string; credentialPublicKey: Binary; counter: number; transports: AuthenticatorTransport[] diff --git a/Backend/src/models/user.ts b/Backend/src/models/user.ts index 8b62c19..baacdc3 100644 --- a/Backend/src/models/user.ts +++ b/Backend/src/models/user.ts @@ -1,8 +1,9 @@ -import DB from "../database"; -import { ModelDataBase } from "@hibas123/safe_mongo/lib/model"; +import DB from "../database.js"; + +import { ModelDataBase } from "@hibas123/safe_mongo/lib/model.js"; import { ObjectId } from "mongodb"; import { v4 } from "uuid"; -import { randomString } from "../helper/random"; +import { randomString } from "../helper/random.js"; export enum Gender { none, diff --git a/Backend/src/testdata.ts b/Backend/src/testdata.ts index f09f16e..4859c66 100644 --- a/Backend/src/testdata.ts +++ b/Backend/src/testdata.ts @@ -1,15 +1,15 @@ -import User, { Gender } from "./models/user"; -import Client from "./models/client"; +import User, { Gender } from "./models/user.js"; +import Client from "./models/client.js"; import Logging from "@hibas123/nodelogging"; -import RegCode from "./models/regcodes"; +import RegCode from "./models/regcodes.js"; import moment from "moment"; -import Permission from "./models/permissions"; +import Permission from "./models/permissions.js"; import { ObjectId } from "mongodb"; -import DB from "./database"; -import TwoFactor from "./models/twofactor"; +import DB from "./database.js"; +import TwoFactor from "./models/twofactor.js"; -import LoginToken from "./models/login_token"; -import Mail from "./models/mail"; +import LoginToken from "./models/login_token.js"; +import Mail from "./models/mail.js"; export default async function TestData() { Logging.warn("Running in dev mode! Database will be cleared!"); diff --git a/Backend/src/views/admin.ts b/Backend/src/views/admin.ts index 3bded27..2ae78fb 100644 --- a/Backend/src/views/admin.ts +++ b/Backend/src/views/admin.ts @@ -1,8 +1,8 @@ -import { __ as i__ } from "i18n"; -import config from "../config"; -import * as viewsv1 from "@hibas123/openauth-views-v1"; - -export default function GetAdminPage(__: typeof i__): string { - let data = {}; - return viewsv1.admin(config.core.dev)(data, { helpers: { i18n: __ } }); -} +import { __ as i__ } from "i18n"; +import config from "../config.js"; +import * as viewsv1 from "@hibas123/openauth-views-v1"; + +export default function GetAdminPage(__: typeof i__): string { + let data = {}; + return viewsv1.admin(config.core.dev)(data, { helpers: { i18n: __ } }); +} diff --git a/Backend/src/views/authorize.ts b/Backend/src/views/authorize.ts index 7dee294..36011ef 100644 --- a/Backend/src/views/authorize.ts +++ b/Backend/src/views/authorize.ts @@ -1,22 +1,22 @@ -import { __ as i__ } from "i18n"; -import config from "../config"; -import * as viewsv1 from "@hibas123/openauth-views-v1"; - -export default function GetAuthPage( - __: typeof i__, - appname: string, - scopes: { name: string; description: string; logo: string }[] -): string { - - return viewsv1.authorize(config.core.dev)( - { - title: __("Authorize %s", appname), - information: __( - "By clicking on ALLOW, you allow this app to access the requested recources." - ), - scopes: scopes, - // request: request - }, - { helpers: { i18n: __ } } - ); -} +import { __ as i__ } from "i18n"; +import config from "../config.js"; +import * as viewsv1 from "@hibas123/openauth-views-v1"; + +export default function GetAuthPage( + __: typeof i__, + appname: string, + scopes: { name: string; description: string; logo: string }[] +): string { + + return viewsv1.authorize(config.core.dev)( + { + title: __("Authorize %s", appname), + information: __( + "By clicking on ALLOW, you allow this app to access the requested recources." + ), + scopes: scopes, + // request: request + }, + { helpers: { i18n: __ } } + ); +} diff --git a/Backend/src/views/index.ts b/Backend/src/views/index.ts index 27bff86..704177e 100644 --- a/Backend/src/views/index.ts +++ b/Backend/src/views/index.ts @@ -7,12 +7,12 @@ import { } from "express"; import * as Handlebars from "handlebars"; import moment = require("moment"); -import { GetUserMiddleware, UserMiddleware } from "../api/middlewares/user"; -import GetAuthRoute from "../api/oauth/auth"; -import config from "../config"; -import { HttpStatusCode } from "../helper/request_error"; -import GetAdminPage from "./admin"; -import GetRegistrationPage from "./register"; +import { GetUserMiddleware, UserMiddleware } from "../api/middlewares/user.js"; +import GetAuthRoute from "../api/oauth/auth.js"; +import config from "../config.js"; +import { HttpStatusCode } from "../helper/request_error.js"; +import GetAdminPage from "./admin.js"; +import GetRegistrationPage from "./register.js"; import * as path from "path"; const viewsv2_location = path.join(path.dirname(require.resolve("@hibas123/openauth-views-v2")), "build"); diff --git a/Backend/src/views/register.ts b/Backend/src/views/register.ts index e5e1830..ab7a528 100644 --- a/Backend/src/views/register.ts +++ b/Backend/src/views/register.ts @@ -1,9 +1,9 @@ -import { __ as i__ } from "i18n"; -import config from "../config"; -import * as viewsv1 from "@hibas123/openauth-views-v1"; - -export default function GetRegistrationPage(__: typeof i__): string { - let data = {}; - return viewsv1.register(config.core.dev)(data, { helpers: { i18n: __ } }); -} - +import { __ as i__ } from "i18n"; +import config from "../config.js"; +import * as viewsv1 from "@hibas123/openauth-views-v1"; + +export default function GetRegistrationPage(__: typeof i__): string { + let data = {}; + return viewsv1.register(config.core.dev)(data, { helpers: { i18n: __ } }); +} + diff --git a/Backend/src/web.ts b/Backend/src/web.ts index a8ef723..8fb496b 100644 --- a/Backend/src/web.ts +++ b/Backend/src/web.ts @@ -1,4 +1,4 @@ -import config, { WebConfig } from "./config"; +import config, { WebConfig } from "./config.js"; import express from "express"; import { Express } from "express"; @@ -11,14 +11,12 @@ import session from "express-session"; import MongoStore from "connect-mongo"; import i18n from "i18n"; -import compression from "compression"; -import ApiRouter from "./api"; -import ViewRouter from "./views"; -import RequestError, { HttpStatusCode } from "./helper/request_error"; -import DB from "./database"; -import promiseMiddleware from "./helper/promiseMiddleware"; -import User from "./models/user"; -import LoginToken, { CheckToken } from "./models/login_token"; +import ApiRouter from "./api/index.js"; +import ViewRouter from "./views/index.js"; +import RequestError, { HttpStatusCode } from "./helper/request_error.js"; +import DB from "./database.js"; +import promiseMiddleware from "./helper/promiseMiddleware.js"; +import User from "./models/user.js"; export default class Web { server: Express; @@ -41,7 +39,7 @@ export default class Web { } private registerMiddleware() { - this.server.use(session({ + const sess = session({ secret: config.core.secret, resave: false, saveUninitialized: false, @@ -57,7 +55,9 @@ export default class Web { secure: !config.core.dev, sameSite: "strict", } - })) + }); + + this.server.use(sess as any) // FIXME: These types seem to be brokenb, but they shouldn't this.server.use(cookieparser()); this.server.use( bodyparser.json(), @@ -103,16 +103,17 @@ export default class Web { next(); }); - this.server.use( - compression({ - filter: (req, res) => { - if (req.headers["x-no-compression"]) { - return false; - } - return compression.filter(req, res); - }, - }) - ); + // Compression will be handled by the reverse proxy! + // this.server.use( + // compression({ + // filter: (req, res) => { + // if (req.headers["x-no-compression"]) { + // return false; + // } + // return compression.filter(req, res); + // }, + // }) + // ); } private registerEndpoints() { diff --git a/Backend/tsconfig.json b/Backend/tsconfig.json index c63cc7f..435ba27 100644 --- a/Backend/tsconfig.json +++ b/Backend/tsconfig.json @@ -1,7 +1,11 @@ { "compilerOptions": { - "target": "ESNext", - "module": "commonjs", + "target": "esnext", + "isolatedModules": true, + "noEmit": false, + "allowImportingTsExtensions": false, + "module": "nodenext", + "moduleResolution": "nodenext", "declaration": true, "sourceMap": true, "outDir": "./lib", @@ -11,7 +15,14 @@ "emitDecoratorMetadata": true, "esModuleInterop": true }, - "exclude": ["node_modules/"], - "files": ["src/express.d.ts"], - "include": ["./src"] + "exclude": [ + "node_modules/", + "../node_modules/", + ], + "files": [ + "src/express.d.ts" + ], + "include": [ + "./src" + ] } diff --git a/Frontend/package.json b/Frontend/package.json index 82380e4..81502d2 100644 --- a/Frontend/package.json +++ b/Frontend/package.json @@ -6,36 +6,36 @@ "@hibas123/theme": "^2.0.7", "@hibas123/utils": "^2.2.18", "@popperjs/core": "^2.11.8", - "@rollup/plugin-commonjs": "^24.0.1", - "@rollup/plugin-html": "^1.0.3", + "@rollup/plugin-commonjs": "^28.0.6", + "@rollup/plugin-html": "^2.0.0", "@rollup/plugin-image": "^3.0.3", - "@rollup/plugin-node-resolve": "^15.0.2", - "@simplewebauthn/browser": "^7.2.0", - "@tsconfig/svelte": "^4.0.1", - "@types/cleave.js": "^1.4.7", - "autoprefixer": "^10.4.14", - "classnames": "^2.3.2", + "@rollup/plugin-node-resolve": "^16.0.1", + "@simplewebauthn/browser": "^13.2.0", + "@tsconfig/svelte": "^5.0.5", + "@types/cleave.js": "^1.4.12", + "autoprefixer": "^10.4.21", + "classnames": "^2.5.1", "cleave.js": "^1.6.0", - "cssnano": "^6.0.1", - "esbuild": "^0.17.16", - "flowbite": "^1.6.5", - "flowbite-svelte": "^0.34.9", - "joi": "^17.11.0", - "postcss": "^8.4.31", - "postcss-import": "^15.1.0", + "cssnano": "^7.1.1", + "esbuild": "^0.25.9", + "flowbite": "^3.1.2", + "flowbite-svelte": "^1.13.8", + "joi": "^18.0.1", + "postcss": "^8.5.6", + "postcss-import": "^16.1.1", "postcss-url": "^10.1.3", - "rollup": "^3.20.2", - "rollup-plugin-esbuild": "^5.0.0", + "rollup": "^4.50.2", + "rollup-plugin-esbuild": "^6.2.1", "rollup-plugin-hash": "^1.3.0", "rollup-plugin-livereload": "^2.0.5", "rollup-plugin-postcss": "^4.0.2", - "rollup-plugin-sizes": "^1.0.6", - "rollup-plugin-svelte": "^7.1.4", - "rollup-plugin-visualizer": "^5.9.0", - "svelte": "^3.58.0", - "svelte-preprocess": "^5.0.3", - "tailwindcss": "^3.3.1", - "typescript": "^5.0.4", + "rollup-plugin-sizes": "^1.1.0", + "rollup-plugin-svelte": "^7.2.3", + "rollup-plugin-visualizer": "^6.0.3", + "svelte": "^5.38.10", + "svelte-preprocess": "^6.0.3", + "tailwindcss": "^4.1.13", + "typescript": "^5.9.2", "what-the-pack": "^2.0.3" }, "scripts": { diff --git a/FrontendLegacy/package.json b/FrontendLegacy/package.json index 04743aa..45d09a6 100644 --- a/FrontendLegacy/package.json +++ b/FrontendLegacy/package.json @@ -8,21 +8,21 @@ "watch": "node build.js watch" }, "dependencies": { - "handlebars": "^4.7.7" + "handlebars": "^4.7.8" }, "devDependencies": { - "@material/button": "^5.1.0", - "@material/form-field": "^5.1.0", - "@material/radio": "^5.1.0", - "chokidar": "^3.5.3", - "gzip-size": "^6.0.0", + "@material/button": "^14.0.0", + "@material/form-field": "^14.0.0", + "@material/radio": "^14.0.0", + "chokidar": "^4.0.3", + "gzip-size": "^7.0.0", "html-minifier": "^4.0.0", - "preact": "^10.13.2", - "rollup": "^3.20.2", + "preact": "^10.27.2", + "rollup": "^4.50.2", "rollup-plugin-includepaths": "^0.2.4", "rollup-plugin-node-resolve": "^5.2.0", - "rollup-plugin-typescript2": "^0.34.1", - "sass": "^1.61.0", - "typescript": "^5.0.4" + "rollup-plugin-typescript2": "^0.36.0", + "sass": "^1.92.1", + "typescript": "^5.9.2" } } diff --git a/_API/package.json b/_API/package.json index 409dfd2..128c397 100644 --- a/_API/package.json +++ b/_API/package.json @@ -14,6 +14,6 @@ "author": "Fabian Stamm ", "license": "ISC", "devDependencies": { - "typescript": "^5.0.4" + "typescript": "^5.9.2" } } diff --git a/_API/tsconfig-esm.json b/_API/tsconfig-esm.json index f4223e9..2797453 100644 --- a/_API/tsconfig-esm.json +++ b/_API/tsconfig-esm.json @@ -1,21 +1,22 @@ -{ - "compilerOptions": { - "module": "ESNext", - "target": "esnext", - "moduleResolution": "node", - "outDir": "esm/", - "sourceMap": true, - "declaration": true, - "noImplicitAny": false, - "esModuleInterop": true, - "experimentalDecorators": true, - "emitDecoratorMetadata": true, - "preserveWatchOutput": true - }, - "exclude": [ - "node_modules" - ], - "include": [ - "src" - ] -} +{ + "compilerOptions": { + "module": "ESNext", + "target": "esnext", + "moduleResolution": "node", + "outDir": "esm/", + "sourceMap": true, + "declaration": true, + "noImplicitAny": false, + "esModuleInterop": true, + "experimentalDecorators": true, + "emitDecoratorMetadata": true, + "preserveWatchOutput": true + }, + "exclude": [ + "node_modules", + "../node_modules" + ], + "include": [ + "src" + ] +} diff --git a/_API/tsconfig.json b/_API/tsconfig.json index 9f7a9ec..45e378c 100644 --- a/_API/tsconfig.json +++ b/_API/tsconfig.json @@ -1,21 +1,22 @@ -{ - "compilerOptions": { - "module": "commonjs", - "target": "esnext", - "moduleResolution": "node", - "outDir": "lib/", - "sourceMap": true, - "declaration": true, - "noImplicitAny": false, - "esModuleInterop": true, - "experimentalDecorators": true, - "emitDecoratorMetadata": true, - "preserveWatchOutput": true - }, - "exclude": [ - "node_modules" - ], - "include": [ - "src" - ] -} +{ + "compilerOptions": { + "module": "commonjs", + "target": "esnext", + "moduleResolution": "node", + "outDir": "lib/", + "sourceMap": true, + "declaration": true, + "noImplicitAny": false, + "esModuleInterop": true, + "experimentalDecorators": true, + "emitDecoratorMetadata": true, + "preserveWatchOutput": true + }, + "exclude": [ + "node_modules", + "../node_modules" + ], + "include": [ + "src" + ] +} diff --git a/package.json b/package.json index c663361..57ce1de 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,6 @@ "_API" ], "dependencies": { - "@hibas123/jrpcgen": "^1.2.14" + "@hibas123/jrpcgen": "^1.2.20" } } diff --git a/yarn.lock b/yarn.lock index a7811b9..689309e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5,57 +5,6 @@ __metadata: version: 6 cacheKey: 8 -"@babel/runtime@npm:^7.21.0": - version: 7.23.4 - resolution: "@babel/runtime@npm:7.23.4" - dependencies: - regenerator-runtime: ^0.14.0 - checksum: 8eb6a6b2367f7d60e7f7dd83f477cc2e2fdb169e5460694d7614ce5c730e83324bcf29251b70940068e757ad1ee56ff8073a372260d90cad55f18a825caf97cd - languageName: node - linkType: hard - -"@cbor-extract/cbor-extract-darwin-arm64@npm:2.1.1": - version: 2.1.1 - resolution: "@cbor-extract/cbor-extract-darwin-arm64@npm:2.1.1" - conditions: os=darwin & cpu=arm64 - languageName: node - linkType: hard - -"@cbor-extract/cbor-extract-darwin-x64@npm:2.1.1": - version: 2.1.1 - resolution: "@cbor-extract/cbor-extract-darwin-x64@npm:2.1.1" - conditions: os=darwin & cpu=x64 - languageName: node - linkType: hard - -"@cbor-extract/cbor-extract-linux-arm64@npm:2.1.1": - version: 2.1.1 - resolution: "@cbor-extract/cbor-extract-linux-arm64@npm:2.1.1" - conditions: os=linux & cpu=arm64 - languageName: node - linkType: hard - -"@cbor-extract/cbor-extract-linux-arm@npm:2.1.1": - version: 2.1.1 - resolution: "@cbor-extract/cbor-extract-linux-arm@npm:2.1.1" - conditions: os=linux & cpu=arm - languageName: node - linkType: hard - -"@cbor-extract/cbor-extract-linux-x64@npm:2.1.1": - version: 2.1.1 - resolution: "@cbor-extract/cbor-extract-linux-x64@npm:2.1.1" - conditions: os=linux & cpu=x64 - languageName: node - linkType: hard - -"@cbor-extract/cbor-extract-win32-x64@npm:2.1.1": - version: 2.1.1 - resolution: "@cbor-extract/cbor-extract-win32-x64@npm:2.1.1" - conditions: os=win32 & cpu=x64 - languageName: node - linkType: hard - "@colors/colors@npm:1.5.0": version: 1.5.0 resolution: "@colors/colors@npm:1.5.0" @@ -90,6 +39,13 @@ __metadata: languageName: node linkType: hard +"@esbuild/aix-ppc64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/aix-ppc64@npm:0.25.9" + conditions: os=aix & cpu=ppc64 + languageName: node + linkType: hard + "@esbuild/android-arm64@npm:0.16.17": version: 0.16.17 resolution: "@esbuild/android-arm64@npm:0.16.17" @@ -97,9 +53,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm64@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/android-arm64@npm:0.17.16" +"@esbuild/android-arm64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/android-arm64@npm:0.25.9" conditions: os=android & cpu=arm64 languageName: node linkType: hard @@ -111,9 +67,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-arm@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/android-arm@npm:0.17.16" +"@esbuild/android-arm@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/android-arm@npm:0.25.9" conditions: os=android & cpu=arm languageName: node linkType: hard @@ -125,9 +81,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/android-x64@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/android-x64@npm:0.17.16" +"@esbuild/android-x64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/android-x64@npm:0.25.9" conditions: os=android & cpu=x64 languageName: node linkType: hard @@ -139,9 +95,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-arm64@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/darwin-arm64@npm:0.17.16" +"@esbuild/darwin-arm64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/darwin-arm64@npm:0.25.9" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard @@ -153,9 +109,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/darwin-x64@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/darwin-x64@npm:0.17.16" +"@esbuild/darwin-x64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/darwin-x64@npm:0.25.9" conditions: os=darwin & cpu=x64 languageName: node linkType: hard @@ -167,9 +123,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-arm64@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/freebsd-arm64@npm:0.17.16" +"@esbuild/freebsd-arm64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/freebsd-arm64@npm:0.25.9" conditions: os=freebsd & cpu=arm64 languageName: node linkType: hard @@ -181,9 +137,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/freebsd-x64@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/freebsd-x64@npm:0.17.16" +"@esbuild/freebsd-x64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/freebsd-x64@npm:0.25.9" conditions: os=freebsd & cpu=x64 languageName: node linkType: hard @@ -195,9 +151,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm64@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/linux-arm64@npm:0.17.16" +"@esbuild/linux-arm64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/linux-arm64@npm:0.25.9" conditions: os=linux & cpu=arm64 languageName: node linkType: hard @@ -209,9 +165,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-arm@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/linux-arm@npm:0.17.16" +"@esbuild/linux-arm@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/linux-arm@npm:0.25.9" conditions: os=linux & cpu=arm languageName: node linkType: hard @@ -223,9 +179,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ia32@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/linux-ia32@npm:0.17.16" +"@esbuild/linux-ia32@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/linux-ia32@npm:0.25.9" conditions: os=linux & cpu=ia32 languageName: node linkType: hard @@ -237,9 +193,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-loong64@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/linux-loong64@npm:0.17.16" +"@esbuild/linux-loong64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/linux-loong64@npm:0.25.9" conditions: os=linux & cpu=loong64 languageName: node linkType: hard @@ -251,9 +207,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-mips64el@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/linux-mips64el@npm:0.17.16" +"@esbuild/linux-mips64el@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/linux-mips64el@npm:0.25.9" conditions: os=linux & cpu=mips64el languageName: node linkType: hard @@ -265,9 +221,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-ppc64@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/linux-ppc64@npm:0.17.16" +"@esbuild/linux-ppc64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/linux-ppc64@npm:0.25.9" conditions: os=linux & cpu=ppc64 languageName: node linkType: hard @@ -279,9 +235,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-riscv64@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/linux-riscv64@npm:0.17.16" +"@esbuild/linux-riscv64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/linux-riscv64@npm:0.25.9" conditions: os=linux & cpu=riscv64 languageName: node linkType: hard @@ -293,9 +249,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-s390x@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/linux-s390x@npm:0.17.16" +"@esbuild/linux-s390x@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/linux-s390x@npm:0.25.9" conditions: os=linux & cpu=s390x languageName: node linkType: hard @@ -307,13 +263,20 @@ __metadata: languageName: node linkType: hard -"@esbuild/linux-x64@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/linux-x64@npm:0.17.16" +"@esbuild/linux-x64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/linux-x64@npm:0.25.9" conditions: os=linux & cpu=x64 languageName: node linkType: hard +"@esbuild/netbsd-arm64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/netbsd-arm64@npm:0.25.9" + conditions: os=netbsd & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/netbsd-x64@npm:0.16.17": version: 0.16.17 resolution: "@esbuild/netbsd-x64@npm:0.16.17" @@ -321,13 +284,20 @@ __metadata: languageName: node linkType: hard -"@esbuild/netbsd-x64@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/netbsd-x64@npm:0.17.16" +"@esbuild/netbsd-x64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/netbsd-x64@npm:0.25.9" conditions: os=netbsd & cpu=x64 languageName: node linkType: hard +"@esbuild/openbsd-arm64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/openbsd-arm64@npm:0.25.9" + conditions: os=openbsd & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/openbsd-x64@npm:0.16.17": version: 0.16.17 resolution: "@esbuild/openbsd-x64@npm:0.16.17" @@ -335,13 +305,20 @@ __metadata: languageName: node linkType: hard -"@esbuild/openbsd-x64@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/openbsd-x64@npm:0.17.16" +"@esbuild/openbsd-x64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/openbsd-x64@npm:0.25.9" conditions: os=openbsd & cpu=x64 languageName: node linkType: hard +"@esbuild/openharmony-arm64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/openharmony-arm64@npm:0.25.9" + conditions: os=openharmony & cpu=arm64 + languageName: node + linkType: hard + "@esbuild/sunos-x64@npm:0.16.17": version: 0.16.17 resolution: "@esbuild/sunos-x64@npm:0.16.17" @@ -349,9 +326,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/sunos-x64@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/sunos-x64@npm:0.17.16" +"@esbuild/sunos-x64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/sunos-x64@npm:0.25.9" conditions: os=sunos & cpu=x64 languageName: node linkType: hard @@ -363,9 +340,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-arm64@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/win32-arm64@npm:0.17.16" +"@esbuild/win32-arm64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/win32-arm64@npm:0.25.9" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard @@ -377,9 +354,9 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-ia32@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/win32-ia32@npm:0.17.16" +"@esbuild/win32-ia32@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/win32-ia32@npm:0.25.9" conditions: os=win32 & cpu=ia32 languageName: node linkType: hard @@ -391,13 +368,39 @@ __metadata: languageName: node linkType: hard -"@esbuild/win32-x64@npm:0.17.16": - version: 0.17.16 - resolution: "@esbuild/win32-x64@npm:0.17.16" +"@esbuild/win32-x64@npm:0.25.9": + version: 0.25.9 + resolution: "@esbuild/win32-x64@npm:0.25.9" conditions: os=win32 & cpu=x64 languageName: node linkType: hard +"@floating-ui/core@npm:^1.7.3": + version: 1.7.3 + resolution: "@floating-ui/core@npm:1.7.3" + dependencies: + "@floating-ui/utils": ^0.2.10 + checksum: 5adfb28ddfa1776ec83516439256b9026e5d62b5413f62ae51e50a870cf0df4bea9abf72aacc0610ee84bc00e85883d0d32f2a0976ee7fa89728a717a7494f27 + languageName: node + linkType: hard + +"@floating-ui/dom@npm:^1.7.4": + version: 1.7.4 + resolution: "@floating-ui/dom@npm:1.7.4" + dependencies: + "@floating-ui/core": ^1.7.3 + "@floating-ui/utils": ^0.2.10 + checksum: 806923e6f5b09e024c366070f2115a4db6e8ad28462bac29cd075170a6f7d900497da3ee542439bd0770b8e2fff12b636cc30873d1c82e9ec4a487870b080643 + languageName: node + linkType: hard + +"@floating-ui/utils@npm:^0.2.10": + version: 0.2.10 + resolution: "@floating-ui/utils@npm:0.2.10" + checksum: ffc4c24a46a665cfd0337e9aaf7de8415b572f8a0f323af39175e4b575582aed13d172e7f049eedeece9eaf022bad019c140a2d192580451984ae529bdf1285c + languageName: node + linkType: hard + "@gar/promisify@npm:^1.1.3": version: 1.1.3 resolution: "@gar/promisify@npm:1.1.3" @@ -405,26 +408,56 @@ __metadata: languageName: node linkType: hard -"@hapi/hoek@npm:^9.0.0": - version: 9.3.0 - resolution: "@hapi/hoek@npm:9.3.0" - checksum: 4771c7a776242c3c022b168046af4e324d116a9d2e1d60631ee64f474c6e38d1bb07092d898bf95c7bc5d334c5582798a1456321b2e53ca817d4e7c88bc25b43 - languageName: node - linkType: hard - -"@hapi/topo@npm:^5.0.0": - version: 5.1.0 - resolution: "@hapi/topo@npm:5.1.0" +"@hapi/address@npm:^5.1.1": + version: 5.1.1 + resolution: "@hapi/address@npm:5.1.1" dependencies: - "@hapi/hoek": ^9.0.0 - checksum: 604dfd5dde76d5c334bd03f9001fce69c7ce529883acf92da96f4fe7e51221bf5e5110e964caca287a6a616ba027c071748ab636ff178ad750547fba611d6014 + "@hapi/hoek": ^11.0.2 + checksum: 678790d86d120e36ff5ea7db061763447cd2589e99fd82bcb5d86c8e6ec290f1c0370d3e2050bf483413757e798f5a9495af0af13ba7e0d8a747c5bcd5682b33 languageName: node linkType: hard -"@hexagon/base64@npm:^1.1.25": - version: 1.1.26 - resolution: "@hexagon/base64@npm:1.1.26" - checksum: 596ccc3973a2f9481b25dbbc840fe3209b90fa57649f781126396c64c4d31228f8b1953ebc21d5723805cca138b86249f08d29b5bad2b2987bd15c5f97d08faf +"@hapi/formula@npm:^3.0.2": + version: 3.0.2 + resolution: "@hapi/formula@npm:3.0.2" + checksum: a774d8133e4cfc7059a1196f1233ba4ed204ac9a6835db476eb94b301555038ba2511664b5e941df3b6e973759e8c0ddf76124e1c04716a48b7ffeedb070d288 + languageName: node + linkType: hard + +"@hapi/hoek@npm:^11.0.2, @hapi/hoek@npm:^11.0.7": + version: 11.0.7 + resolution: "@hapi/hoek@npm:11.0.7" + checksum: 3da5546649c0fa2bb264ce4b2aea8dc13d6fbdd9179bba553c90ab8fb7bd56413d2237d60c0b97c1e747216597eeb13694a947325bfff62ae3725209ec8bb8c6 + languageName: node + linkType: hard + +"@hapi/pinpoint@npm:^2.0.1": + version: 2.0.1 + resolution: "@hapi/pinpoint@npm:2.0.1" + checksum: 8a1bb399f7cf48948669fdc80dff83892ed56eb62eee2cca128fc8b0683733b16e274b395eddfae6154a698aa57c66a3905ceaa3119c59de29751d4601831057 + languageName: node + linkType: hard + +"@hapi/tlds@npm:^1.1.1": + version: 1.1.3 + resolution: "@hapi/tlds@npm:1.1.3" + checksum: aa8019c5c432f4c552b50b97f2b26168aeae9da3ab96941bd002d5c058c0139291ae912925acdbb2308956df89aa1f2c0a31c6ebbdba33804bd9117d28ae9be3 + languageName: node + linkType: hard + +"@hapi/topo@npm:^6.0.2": + version: 6.0.2 + resolution: "@hapi/topo@npm:6.0.2" + dependencies: + "@hapi/hoek": ^11.0.2 + checksum: c11da8a995ac66d94dcc8ffe37cc094ace15ab8aec30ba2b556e8318394454cc93967a5bcc6519b846586fea4d347f95d924cb6ce5d51236c199c5e677b9575c + languageName: node + linkType: hard + +"@hexagon/base64@npm:^1.1.27": + version: 1.1.28 + resolution: "@hexagon/base64@npm:1.1.28" + checksum: b2c99863ec1401c61cf127603928c4194ecc434728b1522c3a892ff2adacb4aca853f5770628e5305d7f360a518f68740073a289706220ad7711c3b4b0a19f66 languageName: node linkType: hard @@ -437,14 +470,14 @@ __metadata: languageName: node linkType: hard -"@hibas123/jrpcgen@npm:^1.2.14": - version: 1.2.14 - resolution: "@hibas123/jrpcgen@npm:1.2.14" +"@hibas123/jrpcgen@npm:^1.2.20": + version: 1.2.20 + resolution: "@hibas123/jrpcgen@npm:1.2.20" dependencies: fs-extra: ^10.0.0 bin: jrpc: lib/jrpc.js - checksum: 9539b56177d7d13bc7f13629f8b18536e975093d433a2e87d1f7b965c1500abd62e0b45d73178643f51652e94aa44e74b734cdbb917822a8a90a70898f00ad9e + checksum: c9c8f7e638071c90b10f677b1ca7940a8d698f385cbb0fabc5ca1a8c222d5ce3dc868742c72f7b5722c0a4d715d64630d962a11e08439be3cf0bfc7e4896f840 languageName: node linkType: hard @@ -455,13 +488,20 @@ __metadata: languageName: node linkType: hard -"@hibas123/nodelogging@npm:^3.1.3": - version: 3.1.3 - resolution: "@hibas123/nodelogging@npm:3.1.3" +"@hibas123/logging@npm:^4.0.1": + version: 4.0.1 + resolution: "@hibas123/logging@npm:4.0.1::__archiveUrl=https%3A%2F%2Fgit.hibas.dev%2Fapi%2Fpackages%2Fhibas123%2Fnpm%2F%2540hibas123%252Flogging%2F-%2F4.0.1%2Flogging-4.0.1.tgz" + checksum: 4d55e1be6740e07f05d015c2ce355f33a2cf0f0daa4608bf9b164c1478609d1d01ecc9bfa2b5b93d3bf1f883ab74cc652c8203acb50f46809553d9b68f10e0f0 + languageName: node + linkType: hard + +"@hibas123/nodelogging@npm:^4.0.0": + version: 4.0.0 + resolution: "@hibas123/nodelogging@npm:4.0.0::__archiveUrl=https%3A%2F%2Fgit.hibas.dev%2Fapi%2Fpackages%2Fhibas123%2Fnpm%2F%2540hibas123%252Fnodelogging%2F-%2F4.0.0%2Fnodelogging-4.0.0.tgz" dependencies: - "@hibas123/logging": ^3.1.2 - "@hibas123/utils": ^2.2.18 - checksum: 347da92632d62b88d81a1e30ae3f4ae7aa4855c28bcb6905c2d75af9b62dedea394ee9a4c79a4671e86181ab6c89efd4b8189a1a34cc6585f28d494e32bc3466 + "@hibas123/logging": ^4.0.1 + "@hibas123/utils": ^3.0.0 + checksum: 350243e23ebe2aa92b5ac7c3a57b5b47b99c6839b9e9963a03bebc5802af266b810276efd82e546a69e44623167396e3f674e7a416e9f0ffc106a23e68e1c6ce languageName: node linkType: hard @@ -481,55 +521,56 @@ __metadata: resolution: "@hibas123/openauth-backend@workspace:Backend" dependencies: "@hibas123/config": ^1.1.2 - "@hibas123/nodelogging": ^3.1.3 + "@hibas123/nodelogging": ^4.0.0 "@hibas123/nodeloggingserver_client": ^1.1.2 "@hibas123/openauth-internalapi": "workspace:^" "@hibas123/openauth-views-v1": "workspace:^" - "@hibas123/safe_mongo": 2.0.1 - "@simplewebauthn/server": ^7.2.0 - "@types/body-parser": ^1.19.2 - "@types/compression": ^1.7.2 - "@types/cookie-parser": ^1.4.3 - "@types/dotenv": ^8.2.0 - "@types/express": ^4.17.17 - "@types/express-session": ^1.17.7 - "@types/i18n": ^0.13.6 - "@types/ini": ^1.3.31 - "@types/jsonwebtoken": ^9.0.1 + "@hibas123/safe_mongo": 2.1.0 + "@simplewebauthn/server": ^13.2.0 + "@types/body-parser": ^1.19.6 + "@types/compression": ^1.8.1 + "@types/cookie-parser": ^1.4.9 + "@types/dotenv": ^8.2.3 + "@types/express": ^5.0.3 + "@types/express-serve-static-core": ^5.0.7 + "@types/express-session": ^1.18.2 + "@types/i18n": ^0.13.12 + "@types/ini": ^4.1.1 + "@types/jsonwebtoken": ^9.0.10 "@types/mongodb": ^4.0.7 - "@types/node": ^18.15.11 - "@types/node-rsa": ^1.1.1 - "@types/qrcode": ^1.5.0 - "@types/speakeasy": ^2.0.7 - "@types/uuid": ^9.0.1 - apidoc: ^0.54.0 - body-parser: ^1.20.2 - compression: ^1.7.4 - concurrently: ^8.2.2 - connect-mongo: ^5.0.0 - cookie-parser: ^1.4.6 + "@types/node": ^24.4.0 + "@types/node-rsa": ^1.1.4 + "@types/qrcode": ^1.5.5 + "@types/speakeasy": ^2.0.10 + "@types/uuid": ^10.0.0 + apidoc: ^1.2.0 + body-parser: ^2.2.0 + compression: ^1.8.1 + concurrently: ^9.2.1 + connect-mongo: ^5.1.0 + cookie-parser: ^1.4.7 cors: ^2.8.5 - dotenv: ^16.0.3 - express: ^4.18.2 - express-session: ^1.17.3 - handlebars: ^4.7.7 + dotenv: ^17.2.2 + express: ^5.1.0 + express-session: ^1.18.2 + handlebars: ^4.7.8 i18n: ^0.15.1 - ini: ^4.1.1 - joi: ^17.11.0 - jsonwebtoken: ^9.0.0 - moment: ^2.29.4 - mongodb: ^5.2.0 + ini: ^5.0.0 + joi: ^18.0.1 + jsonwebtoken: ^9.0.2 + moment: ^2.30.1 + mongodb: ^6.19.0 node-rsa: ^1.1.1 - nodemon: ^3.0.1 + nodemon: ^3.1.10 npm-run-all: ^4.1.5 - prettier: ^2.8.7 - qrcode: ^1.5.3 - reflect-metadata: ^0.1.13 + prettier: ^3.6.2 + qrcode: ^1.5.4 + reflect-metadata: ^0.2.2 speakeasy: ^2.0.0 - ts-node: ^10.9.1 - typescript: ^5.0.4 + ts-node: ^10.9.2 + typescript: ^5.9.2 u2f: ^0.1.3 - uuid: ^9.0.1 + uuid: ^13.0.0 languageName: unknown linkType: soft @@ -537,7 +578,7 @@ __metadata: version: 0.0.0-use.local resolution: "@hibas123/openauth-internalapi@workspace:_API" dependencies: - typescript: ^5.0.4 + typescript: ^5.9.2 languageName: unknown linkType: soft @@ -545,20 +586,20 @@ __metadata: version: 0.0.0-use.local resolution: "@hibas123/openauth-views-v1@workspace:FrontendLegacy" dependencies: - "@material/button": ^5.1.0 - "@material/form-field": ^5.1.0 - "@material/radio": ^5.1.0 - chokidar: ^3.5.3 - gzip-size: ^6.0.0 - handlebars: ^4.7.7 + "@material/button": ^14.0.0 + "@material/form-field": ^14.0.0 + "@material/radio": ^14.0.0 + chokidar: ^4.0.3 + gzip-size: ^7.0.0 + handlebars: ^4.7.8 html-minifier: ^4.0.0 - preact: ^10.13.2 - rollup: ^3.20.2 + preact: ^10.27.2 + rollup: ^4.50.2 rollup-plugin-includepaths: ^0.2.4 rollup-plugin-node-resolve: ^5.2.0 - rollup-plugin-typescript2: ^0.34.1 - sass: ^1.61.0 - typescript: ^5.0.4 + rollup-plugin-typescript2: ^0.36.0 + sass: ^1.92.1 + typescript: ^5.9.2 languageName: unknown linkType: soft @@ -570,36 +611,36 @@ __metadata: "@hibas123/theme": ^2.0.7 "@hibas123/utils": ^2.2.18 "@popperjs/core": ^2.11.8 - "@rollup/plugin-commonjs": ^24.0.1 - "@rollup/plugin-html": ^1.0.3 + "@rollup/plugin-commonjs": ^28.0.6 + "@rollup/plugin-html": ^2.0.0 "@rollup/plugin-image": ^3.0.3 - "@rollup/plugin-node-resolve": ^15.0.2 - "@simplewebauthn/browser": ^7.2.0 - "@tsconfig/svelte": ^4.0.1 - "@types/cleave.js": ^1.4.7 - autoprefixer: ^10.4.14 - classnames: ^2.3.2 + "@rollup/plugin-node-resolve": ^16.0.1 + "@simplewebauthn/browser": ^13.2.0 + "@tsconfig/svelte": ^5.0.5 + "@types/cleave.js": ^1.4.12 + autoprefixer: ^10.4.21 + classnames: ^2.5.1 cleave.js: ^1.6.0 - cssnano: ^6.0.1 - esbuild: ^0.17.16 - flowbite: ^1.6.5 - flowbite-svelte: ^0.34.9 - joi: ^17.11.0 - postcss: ^8.4.31 - postcss-import: ^15.1.0 + cssnano: ^7.1.1 + esbuild: ^0.25.9 + flowbite: ^3.1.2 + flowbite-svelte: ^1.13.8 + joi: ^18.0.1 + postcss: ^8.5.6 + postcss-import: ^16.1.1 postcss-url: ^10.1.3 - rollup: ^3.20.2 - rollup-plugin-esbuild: ^5.0.0 + rollup: ^4.50.2 + rollup-plugin-esbuild: ^6.2.1 rollup-plugin-hash: ^1.3.0 rollup-plugin-livereload: ^2.0.5 rollup-plugin-postcss: ^4.0.2 - rollup-plugin-sizes: ^1.0.6 - rollup-plugin-svelte: ^7.1.4 - rollup-plugin-visualizer: ^5.9.0 - svelte: ^3.58.0 - svelte-preprocess: ^5.0.3 - tailwindcss: ^3.3.1 - typescript: ^5.0.4 + rollup-plugin-sizes: ^1.1.0 + rollup-plugin-svelte: ^7.2.3 + rollup-plugin-visualizer: ^6.0.3 + svelte: ^5.38.10 + svelte-preprocess: ^6.0.3 + tailwindcss: ^4.1.13 + typescript: ^5.9.2 what-the-pack: ^2.0.3 languageName: unknown linkType: soft @@ -608,17 +649,17 @@ __metadata: version: 0.0.0-use.local resolution: "@hibas123/openauth@workspace:." dependencies: - "@hibas123/jrpcgen": ^1.2.14 + "@hibas123/jrpcgen": ^1.2.20 languageName: unknown linkType: soft -"@hibas123/safe_mongo@npm:2.0.1": - version: 2.0.1 - resolution: "@hibas123/safe_mongo@npm:2.0.1" +"@hibas123/safe_mongo@npm:2.1.0": + version: 2.1.0 + resolution: "@hibas123/safe_mongo@npm:2.1.0" dependencies: "@hibas123/logging": ^3.1.2 - mongodb: ^5.2.0 - checksum: 6d02d6803312a61de23a741eb7b72b92e7443f76ffecce7faa4887109f6478ed5ad2920bd92371db23e1108fb6dfd83a0adcedf1448708c03ba51f564ba20afd + mongodb: ^6.0.0 + checksum: 8c8125a9f50d26494094315029e7ce352cf19469e6c5f5a727e3c643e66c2b87b3e3587b6b4d9b3d28835f095512b9b9de0a2e5532e20d53d5f9c64ad7983480 languageName: node linkType: hard @@ -636,6 +677,13 @@ __metadata: languageName: node linkType: hard +"@hibas123/utils@npm:^3.0.0": + version: 3.0.0 + resolution: "@hibas123/utils@npm:3.0.0::__archiveUrl=https%3A%2F%2Fgit.hibas.dev%2Fapi%2Fpackages%2Fhibas123%2Fnpm%2F%2540hibas123%252Futils%2F-%2F3.0.0%2Futils-3.0.0.tgz" + checksum: 08049ed86de11b89bc59fe34aa1a492fb50d1d3c8fe6d05505469e4eab90800019e5c9b44dfd93163e0ebafa63fff3d66b5906dd31855166c927342c9a17c0a4 + languageName: node + linkType: hard + "@jridgewell/gen-mapping@npm:^0.3.0": version: 0.3.3 resolution: "@jridgewell/gen-mapping@npm:0.3.3" @@ -647,6 +695,26 @@ __metadata: languageName: node linkType: hard +"@jridgewell/gen-mapping@npm:^0.3.5": + version: 0.3.13 + resolution: "@jridgewell/gen-mapping@npm:0.3.13" + dependencies: + "@jridgewell/sourcemap-codec": ^1.5.0 + "@jridgewell/trace-mapping": ^0.3.24 + checksum: f2105acefc433337145caa3c84bba286de954f61c0bc46279bbd85a9e6a02871089717fa060413cfb6a9d44189fe8313b2d1cabf3a2eb3284d208fd5f75c54ff + languageName: node + linkType: hard + +"@jridgewell/remapping@npm:^2.3.4": + version: 2.3.5 + resolution: "@jridgewell/remapping@npm:2.3.5" + dependencies: + "@jridgewell/gen-mapping": ^0.3.5 + "@jridgewell/trace-mapping": ^0.3.24 + checksum: 4a66a7397c3dc9c6b5c14a0024b1f98c5e1d90a0dbc1e5955b5038f2db339904df2a0ee8a66559fafb4fc23ff33700a2639fd40bbdd2e9e82b58b3bdf83738e3 + languageName: node + linkType: hard + "@jridgewell/resolve-uri@npm:3.1.0": version: 3.1.0 resolution: "@jridgewell/resolve-uri@npm:3.1.0" @@ -661,6 +729,13 @@ __metadata: languageName: node linkType: hard +"@jridgewell/resolve-uri@npm:^3.1.0": + version: 3.1.2 + resolution: "@jridgewell/resolve-uri@npm:3.1.2" + checksum: 83b85f72c59d1c080b4cbec0fef84528963a1b5db34e4370fa4bd1e3ff64a0d80e0cee7369d11d73c704e0286fb2865b530acac7a871088fbe92b5edf1000870 + languageName: node + linkType: hard + "@jridgewell/set-array@npm:^1.0.1": version: 1.1.2 resolution: "@jridgewell/set-array@npm:1.1.2" @@ -685,13 +760,20 @@ __metadata: languageName: node linkType: hard -"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.13, @jridgewell/sourcemap-codec@npm:^1.4.14": +"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14": version: 1.4.15 resolution: "@jridgewell/sourcemap-codec@npm:1.4.15" checksum: b881c7e503db3fc7f3c1f35a1dd2655a188cc51a3612d76efc8a6eb74728bef5606e6758ee77423e564092b4a518aba569bbb21c9bac5ab7a35b0c6ae7e344c8 languageName: node linkType: hard +"@jridgewell/sourcemap-codec@npm:^1.4.15, @jridgewell/sourcemap-codec@npm:^1.5.0, @jridgewell/sourcemap-codec@npm:^1.5.5": + version: 1.5.5 + resolution: "@jridgewell/sourcemap-codec@npm:1.5.5" + checksum: c2e36e67971f719a8a3a85ef5a5f580622437cc723c35d03ebd0c9c0b06418700ef006f58af742791f71f6a4fc68fcfaf1f6a74ec2f9a3332860e9373459dae7 + languageName: node + linkType: hard + "@jridgewell/trace-mapping@npm:0.3.9": version: 0.3.9 resolution: "@jridgewell/trace-mapping@npm:0.3.9" @@ -712,165 +794,224 @@ __metadata: languageName: node linkType: hard -"@material/animation@npm:^5.1.0": - version: 5.1.0 - resolution: "@material/animation@npm:5.1.0" +"@jridgewell/trace-mapping@npm:^0.3.24": + version: 0.3.31 + resolution: "@jridgewell/trace-mapping@npm:0.3.31" dependencies: - tslib: ^1.9.3 - checksum: 82feadbd02d085ec9f16b74d1477e26ca4b1429269e1e3bd68ec36e2cd79da99af0069fe7cbd73c964e212f526c5c06ed86123ca03fcc6d57d9bbb10a19eaaff + "@jridgewell/resolve-uri": ^3.1.0 + "@jridgewell/sourcemap-codec": ^1.4.14 + checksum: af8fda2431348ad507fbddf8e25f5d08c79ecc94594061ce402cf41bc5aba1a7b3e59bf0fd70a619b35f33983a3f488ceeba8faf56bff784f98bb5394a8b7d47 languageName: node linkType: hard -"@material/base@npm:^5.1.0": - version: 5.1.0 - resolution: "@material/base@npm:5.1.0" +"@levischuck/tiny-cbor@npm:^0.2.2": + version: 0.2.11 + resolution: "@levischuck/tiny-cbor@npm:0.2.11" + checksum: d5df99f7ad518eddfab387fd99807aacf6056d955eb13727907a05c05ddb36c92e6bcbee4d68608f8568ed7634ce7ca192e3c60795925de90ca4fd0d781b1e21 + languageName: node + linkType: hard + +"@material/animation@npm:^14.0.0": + version: 14.0.0 + resolution: "@material/animation@npm:14.0.0" dependencies: - tslib: ^1.9.3 - checksum: e4a160bea0a90807d9f6a0edd4b6e9f53d80892eb4918c717a949d81e4d9f19cefcf032e79e31738ca39f0ea4b24bf7e42b6c9a179bb059c9adacda62b01e9b0 + tslib: ^2.1.0 + checksum: 8120bf924ff1c8fafb3fff6e7f9418c25f59fae9d7c62e1ed23a4982633da07d5cb66cef7469efacb689751e1636f64d19f6de94750974c47bf1d1f3285c9010 languageName: node linkType: hard -"@material/button@npm:^5.1.0": - version: 5.1.0 - resolution: "@material/button@npm:5.1.0" +"@material/base@npm:^14.0.0": + version: 14.0.0 + resolution: "@material/base@npm:14.0.0" dependencies: - "@material/density": ^5.1.0 - "@material/elevation": ^5.1.0 - "@material/feature-targeting": ^5.1.0 - "@material/ripple": ^5.1.0 - "@material/rtl": ^5.1.0 - "@material/shape": ^5.1.0 - "@material/theme": ^5.1.0 - "@material/touch-target": ^5.1.0 - "@material/typography": ^5.1.0 - checksum: 53bb192120d3a1c8ef209f138e238bc2a418f620fa2d027c670dfc0f9afb874eaef2324223883474f8da4a678178a344fa7611ec0c12fed41755e4a479f74c84 + tslib: ^2.1.0 + checksum: ab4c1ea9c8c391e0da130975d97a7eb26d743c6d140d7a3d0f673391850ad2fd37a3948264c05e6354a28d61c9be8d2f489f98dc9378f6617594eab59b591be1 languageName: node linkType: hard -"@material/density@npm:^5.1.0": - version: 5.1.0 - resolution: "@material/density@npm:5.1.0" - checksum: c7ff64a67d3a9475df597d8f474c304096d060318ec84f2fe3c1b04e90b695b6e5a11081cf3dab59945c309cfda4db7b52dd16a39f413e4057f514f932b96541 - languageName: node - linkType: hard - -"@material/dom@npm:^5.1.0": - version: 5.1.0 - resolution: "@material/dom@npm:5.1.0" +"@material/button@npm:^14.0.0": + version: 14.0.0 + resolution: "@material/button@npm:14.0.0" dependencies: - tslib: ^1.9.3 - checksum: 298a53bf47a9236402a94beb483c652ffb0345bd2c192420a52f2549882144e9ba5cbb2fb48cfb5c5ff64078cc73b6c5e82b7b0d74e58c89d0b70878c91742f4 + "@material/density": ^14.0.0 + "@material/dom": ^14.0.0 + "@material/elevation": ^14.0.0 + "@material/feature-targeting": ^14.0.0 + "@material/focus-ring": ^14.0.0 + "@material/ripple": ^14.0.0 + "@material/rtl": ^14.0.0 + "@material/shape": ^14.0.0 + "@material/theme": ^14.0.0 + "@material/tokens": ^14.0.0 + "@material/touch-target": ^14.0.0 + "@material/typography": ^14.0.0 + tslib: ^2.1.0 + checksum: 83b55dd1038b3fa98e685d31f4a20c3530bd152f4c2f2319ae553c9496955f3ab9a86bfd50f523018a28bbeaf49410cd689c2b25339eb8b718b1677f6fe7103b languageName: node linkType: hard -"@material/elevation@npm:^5.1.0": - version: 5.1.0 - resolution: "@material/elevation@npm:5.1.0" +"@material/density@npm:^14.0.0": + version: 14.0.0 + resolution: "@material/density@npm:14.0.0" dependencies: - "@material/animation": ^5.1.0 - "@material/base": ^5.1.0 - "@material/feature-targeting": ^5.1.0 - "@material/theme": ^5.1.0 - checksum: d472405a36b33320860d4f669873085b3c97118e5fa778f2f99c4c1c71903006187491eb8d64872c9a024262fb1f529ec94f41f3fa5befcee8ad9a82ce61188a + tslib: ^2.1.0 + checksum: 94279ca2d7b75bbb998026da5fb7fbd68c830f986d25c4dcd5988a9f180bb600d8c1135c7828f844f1d74fa8919d817f44d10be03a18a4ccf81afe0f0d3810a9 languageName: node linkType: hard -"@material/feature-targeting@npm:^5.1.0": - version: 5.1.0 - resolution: "@material/feature-targeting@npm:5.1.0" - checksum: 7e5699ed3c8afac91fc83764e112aeb7bb089ac2f144b016bfb965542a480bb1747a2278bcea22cfcd5c2011e6b486f1b56197b0656fef73ceaf832fd62c09c3 - languageName: node - linkType: hard - -"@material/form-field@npm:^5.1.0": - version: 5.1.0 - resolution: "@material/form-field@npm:5.1.0" +"@material/dom@npm:^14.0.0": + version: 14.0.0 + resolution: "@material/dom@npm:14.0.0" dependencies: - "@material/base": ^5.1.0 - "@material/feature-targeting": ^5.1.0 - "@material/ripple": ^5.1.0 - "@material/rtl": ^5.1.0 - "@material/theme": ^5.1.0 - "@material/typography": ^5.1.0 - tslib: ^1.9.3 - checksum: 1c01742918ba2fc944b15b60d9c26cf4680b9770ba0b5b561232032eea9f4e91caedc45c7ddf0f65c7dec9ad1fc795bc43f27fc01639f777bbcf2ef8e912cdd5 + "@material/feature-targeting": ^14.0.0 + tslib: ^2.1.0 + checksum: 7a89a721294e0f1c55d0c1c1e5164c1fcd13b4383758220a2dacb8831f1fb5c8d55c8ce3236e8a21df553ef147930ddb2bbe8b3aae80c593ff7e3caf16b0d101 languageName: node linkType: hard -"@material/radio@npm:^5.1.0": - version: 5.1.0 - resolution: "@material/radio@npm:5.1.0" +"@material/elevation@npm:^14.0.0": + version: 14.0.0 + resolution: "@material/elevation@npm:14.0.0" dependencies: - "@material/animation": ^5.1.0 - "@material/base": ^5.1.0 - "@material/density": ^5.1.0 - "@material/dom": ^5.1.0 - "@material/feature-targeting": ^5.1.0 - "@material/ripple": ^5.1.0 - "@material/theme": ^5.1.0 - "@material/touch-target": ^5.1.0 - tslib: ^1.9.3 - checksum: e45a59e00692b28a7e26f06f50ab5c7a728aaebccbc99aece040f307db9aeee112bf7c5e935576b32255c8c209a8098c09b8d3dd85e7c50a499e4b726883d3ff + "@material/animation": ^14.0.0 + "@material/base": ^14.0.0 + "@material/feature-targeting": ^14.0.0 + "@material/rtl": ^14.0.0 + "@material/theme": ^14.0.0 + tslib: ^2.1.0 + checksum: 1cdc33f86b47d40dbc3f425f36dae20ebdfc5b8ce1b0307d4bbd30bc9680d17aff1af13399c733aeba7425cd97ff12197e14d21fa9e7fa6e3582f6f63ed0cb1a languageName: node linkType: hard -"@material/ripple@npm:^5.1.0": - version: 5.1.0 - resolution: "@material/ripple@npm:5.1.0" +"@material/feature-targeting@npm:^14.0.0": + version: 14.0.0 + resolution: "@material/feature-targeting@npm:14.0.0" dependencies: - "@material/animation": ^5.1.0 - "@material/base": ^5.1.0 - "@material/dom": ^5.1.0 - "@material/feature-targeting": ^5.1.0 - "@material/theme": ^5.1.0 - tslib: ^1.9.3 - checksum: 453901acc3ecd1f4b09a2fd0c022c1a3e01226275b1249936c33d411dd1855b51deefa9909367b49ce33fdb0cdb4a30a3d5805e14b55728f6f0dad8a600a40d1 + tslib: ^2.1.0 + checksum: 5fe6f44634d17074f4d19629e3dc7b391bdad03239ea1e3ef75917c94b3166fc6cec7c9869ed32c3db284a8e6f9a8c0b7127dae40eb21e3155ee759116167759 languageName: node linkType: hard -"@material/rtl@npm:^5.1.0": - version: 5.1.0 - resolution: "@material/rtl@npm:5.1.0" - checksum: 57b207b2a26939fd2d86148f1127f4d6e64b7b89e1d82c235ee9f2518736e5c3ae7d30ef31d48d1ccfbccc78864660fb0f06a67f10fd10f018ee230b3380cace - languageName: node - linkType: hard - -"@material/shape@npm:^5.1.0": - version: 5.1.0 - resolution: "@material/shape@npm:5.1.0" +"@material/focus-ring@npm:^14.0.0": + version: 14.0.0 + resolution: "@material/focus-ring@npm:14.0.0" dependencies: - "@material/feature-targeting": ^5.1.0 - "@material/rtl": ^5.1.0 - checksum: 2ee3083a2b9aaea30320b622e9a88eb111e6d992b2b3e3bac9ca95e97d7fc5f4aaf4900702bcc9689a1a3f224993c6c319b12bd0baf102636532ad862520ba23 + "@material/dom": ^14.0.0 + "@material/feature-targeting": ^14.0.0 + "@material/rtl": ^14.0.0 + checksum: 61cbd9d2c449b7e743198c7dcae3181ee7488fdcefcd7666aff016f03b9a128b918f74cdf97862c189f6629e4cc654ea1325ca51f56751a20924fc7cb86914cb languageName: node linkType: hard -"@material/theme@npm:^5.1.0": - version: 5.1.0 - resolution: "@material/theme@npm:5.1.0" +"@material/form-field@npm:^14.0.0": + version: 14.0.0 + resolution: "@material/form-field@npm:14.0.0" dependencies: - "@material/feature-targeting": ^5.1.0 - checksum: 6372380f91144a62c392fe7ab297e761e91219a897c4761bc83ce29635de1508bbe8d4344d2c1188bf932e6250d1b2362c76267e5dcc3f58ea4dd4725f250c4a + "@material/base": ^14.0.0 + "@material/feature-targeting": ^14.0.0 + "@material/ripple": ^14.0.0 + "@material/rtl": ^14.0.0 + "@material/theme": ^14.0.0 + "@material/typography": ^14.0.0 + tslib: ^2.1.0 + checksum: 00be39517ab5e18182c5c285375cc64d3b8cf6cbe75dd3f5e467494e71fdf9c2d8417dc832d30b8feaf7f2565cb64dc16065dcaeb42e7694c986c1ce2214b97d languageName: node linkType: hard -"@material/touch-target@npm:^5.1.0": - version: 5.1.0 - resolution: "@material/touch-target@npm:5.1.0" +"@material/radio@npm:^14.0.0": + version: 14.0.0 + resolution: "@material/radio@npm:14.0.0" dependencies: - "@material/base": ^5.1.0 - "@material/feature-targeting": ^5.1.0 - checksum: 19041deafafca5dcda61168d72df5464e577d9a6fee1bdc22a0d963d3dba3a2d4a1d6aa1820aadc7f1de22b205f9fffad1c1b6b1a12e1128e685bfc3d689b457 + "@material/animation": ^14.0.0 + "@material/base": ^14.0.0 + "@material/density": ^14.0.0 + "@material/dom": ^14.0.0 + "@material/feature-targeting": ^14.0.0 + "@material/focus-ring": ^14.0.0 + "@material/ripple": ^14.0.0 + "@material/theme": ^14.0.0 + "@material/touch-target": ^14.0.0 + tslib: ^2.1.0 + checksum: 81e0c45e0810611bf5b52a17e5c9049d7bbe685226604a8f44293b761d12e38c4969a86374039ec88c11ac9b398bcd840efb0e4259f8644cea8b1ab9e2f80449 languageName: node linkType: hard -"@material/typography@npm:^5.1.0": - version: 5.1.0 - resolution: "@material/typography@npm:5.1.0" +"@material/ripple@npm:^14.0.0": + version: 14.0.0 + resolution: "@material/ripple@npm:14.0.0" dependencies: - "@material/feature-targeting": ^5.1.0 - "@material/theme": ^5.1.0 - checksum: 15403c42b940d9e926057ae2f4c859153ded44c9be204d2a7e0d59d66fcfb082d4ccd2319d06fdad4ce757448d9fc04a7a5013ddaa367be0978b4cdda28388a5 + "@material/animation": ^14.0.0 + "@material/base": ^14.0.0 + "@material/dom": ^14.0.0 + "@material/feature-targeting": ^14.0.0 + "@material/rtl": ^14.0.0 + "@material/theme": ^14.0.0 + tslib: ^2.1.0 + checksum: 04ba1213d205c9caed17ee32082551b43ce76b95b47d18de3552493a768ccfb5afbe53623250896ace892dc213f9fef721848903a962248c5a36c851bcb05791 + languageName: node + linkType: hard + +"@material/rtl@npm:^14.0.0": + version: 14.0.0 + resolution: "@material/rtl@npm:14.0.0" + dependencies: + "@material/theme": ^14.0.0 + tslib: ^2.1.0 + checksum: 2b3a1960c1f09170f1e62ed44e4d2a619ad70fcbb4e0c903be3c4b3193469edce91a02d4e59e987561818720b73c1abb19678ba4524715d563e00e9736ea2c79 + languageName: node + linkType: hard + +"@material/shape@npm:^14.0.0": + version: 14.0.0 + resolution: "@material/shape@npm:14.0.0" + dependencies: + "@material/feature-targeting": ^14.0.0 + "@material/rtl": ^14.0.0 + "@material/theme": ^14.0.0 + tslib: ^2.1.0 + checksum: bcab9e26a10ff26880c99f86b31485f0b416330cd83e81bceeb9c4bc13fddc3a108eb3bbb011998da6ae1bf1f42707bb6095a804915728b10c746724e0b21607 + languageName: node + linkType: hard + +"@material/theme@npm:^14.0.0": + version: 14.0.0 + resolution: "@material/theme@npm:14.0.0" + dependencies: + "@material/feature-targeting": ^14.0.0 + tslib: ^2.1.0 + checksum: 9f20a074bd893352ca3a8e76caf043842233284577c4d54b8d4004d1ab5d1d3946e15efe60451417921a8855460c08996ba9e604b7c7f59e737968eb5ee79147 + languageName: node + linkType: hard + +"@material/tokens@npm:^14.0.0": + version: 14.0.0 + resolution: "@material/tokens@npm:14.0.0" + dependencies: + "@material/elevation": ^14.0.0 + checksum: 666320dd0bde170e337ab8172153fa975381144cf46765f1fa898bfe7dad216a7437ee0b7f9c32ab4d8317a4096064596fe89fe5d9a90f047b14081392beb9d6 + languageName: node + linkType: hard + +"@material/touch-target@npm:^14.0.0": + version: 14.0.0 + resolution: "@material/touch-target@npm:14.0.0" + dependencies: + "@material/base": ^14.0.0 + "@material/feature-targeting": ^14.0.0 + "@material/rtl": ^14.0.0 + tslib: ^2.1.0 + checksum: 2ad21fccf992d15b049ca5cf5ee954685cdcd64157f3bd36b44488af1f5363075c24a962274532f87377f3b5e0cc3ca929797bb213126467c1db415f7896bf86 + languageName: node + linkType: hard + +"@material/typography@npm:^14.0.0": + version: 14.0.0 + resolution: "@material/typography@npm:14.0.0" + dependencies: + "@material/feature-targeting": ^14.0.0 + "@material/theme": ^14.0.0 + tslib: ^2.1.0 + checksum: 24e52daaf1f94a32689b585e8e9cb9f09894cb0d9b3cbe4f8c19112fa59a1586b8b250f7dfaa7aa27b00158b0cd1184c89bcace40906557fbe59a94c65a45417 languageName: node linkType: hard @@ -920,39 +1061,12 @@ __metadata: languageName: node linkType: hard -"@mongodb-js/saslprep@npm:^1.1.0": - version: 1.1.1 - resolution: "@mongodb-js/saslprep@npm:1.1.1" +"@mongodb-js/saslprep@npm:^1.1.9": + version: 1.3.0 + resolution: "@mongodb-js/saslprep@npm:1.3.0" dependencies: sparse-bitfield: ^3.0.3 - checksum: 0b263aef5e42a2b296c205a4afcc06c3e59817427dfdf4b5d6f49c4e5c000aa90f652006b95f726e0eac7e888031a82393a964e390d5689a2de61e945f8238d3 - languageName: node - linkType: hard - -"@nodelib/fs.scandir@npm:2.1.5": - version: 2.1.5 - resolution: "@nodelib/fs.scandir@npm:2.1.5" - dependencies: - "@nodelib/fs.stat": 2.0.5 - run-parallel: ^1.1.9 - checksum: a970d595bd23c66c880e0ef1817791432dbb7acbb8d44b7e7d0e7a22f4521260d4a83f7f9fd61d44fda4610105577f8f58a60718105fb38352baed612fd79e59 - languageName: node - linkType: hard - -"@nodelib/fs.stat@npm:2.0.5, @nodelib/fs.stat@npm:^2.0.2": - version: 2.0.5 - resolution: "@nodelib/fs.stat@npm:2.0.5" - checksum: 012480b5ca9d97bff9261571dbbec7bbc6033f69cc92908bc1ecfad0792361a5a1994bc48674b9ef76419d056a03efadfce5a6cf6dbc0a36559571a7a483f6f0 - languageName: node - linkType: hard - -"@nodelib/fs.walk@npm:^1.2.3": - version: 1.2.8 - resolution: "@nodelib/fs.walk@npm:1.2.8" - dependencies: - "@nodelib/fs.scandir": 2.1.5 - fastq: ^1.6.0 - checksum: 190c643f156d8f8f277bf2a6078af1ffde1fd43f498f187c2db24d35b4b4b5785c02c7dc52e356497b9a1b65b13edc996de08de0b961c32844364da02986dc53 + checksum: 0003ab0a943220df74f8ffcf076c4e4fc4105b20d6b1610d802231d2a6d3b74ad0fa9d26e3d828cb07daabe511ffb2760c347f7a4c0f985d8a7770f7d95190a3 languageName: node linkType: hard @@ -976,69 +1090,303 @@ __metadata: languageName: node linkType: hard -"@peculiar/asn1-android@npm:^2.3.3": - version: 2.3.6 - resolution: "@peculiar/asn1-android@npm:2.3.6" - dependencies: - "@peculiar/asn1-schema": ^2.3.6 - asn1js: ^3.0.5 - tslib: ^2.4.0 - checksum: 66615ada47238e91a42eaefe21501d9b49a8eb769c23a508d1f2aca345a2e03aa2860666d3bac7cf47eb09d10f3800c564d63a2a91c7dce13f90b01a4208f625 +"@parcel/watcher-android-arm64@npm:2.5.1": + version: 2.5.1 + resolution: "@parcel/watcher-android-arm64@npm:2.5.1" + conditions: os=android & cpu=arm64 languageName: node linkType: hard -"@peculiar/asn1-ecc@npm:^2.3.4": - version: 2.3.6 - resolution: "@peculiar/asn1-ecc@npm:2.3.6" - dependencies: - "@peculiar/asn1-schema": ^2.3.6 - "@peculiar/asn1-x509": ^2.3.6 - asn1js: ^3.0.5 - tslib: ^2.4.0 - checksum: 4b9a383dd443fbb9699d79550e03d1185781885768d8c7b780e26a959344286a53539824fa4a3103e9e8393a7d062fe6820bf79abafb340dc18ee5ce81b1d470 +"@parcel/watcher-darwin-arm64@npm:2.5.1": + version: 2.5.1 + resolution: "@parcel/watcher-darwin-arm64@npm:2.5.1" + conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@peculiar/asn1-rsa@npm:^2.3.4": - version: 2.3.6 - resolution: "@peculiar/asn1-rsa@npm:2.3.6" - dependencies: - "@peculiar/asn1-schema": ^2.3.6 - "@peculiar/asn1-x509": ^2.3.6 - asn1js: ^3.0.5 - tslib: ^2.4.0 - checksum: 120dda00af6e1b1e5568826ac8211d60d36b3cbe91b086cae6b5ba132f1670ba129284068110305b237550e402c0beeda45fd713d640f97ad11d8cf6c925b31a +"@parcel/watcher-darwin-x64@npm:2.5.1": + version: 2.5.1 + resolution: "@parcel/watcher-darwin-x64@npm:2.5.1" + conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@peculiar/asn1-schema@npm:^2.3.3, @peculiar/asn1-schema@npm:^2.3.6": - version: 2.3.6 - resolution: "@peculiar/asn1-schema@npm:2.3.6" - dependencies: - asn1js: ^3.0.5 - pvtsutils: ^1.3.2 - tslib: ^2.4.0 - checksum: fc09387c6e3dea07fca21b54ea8c71ce3ec0f8c92377237e51aef729f0c2df92781aa7a18a546a6fe809519faeaa222df576ec21a35c6095037a78677204a55b +"@parcel/watcher-freebsd-x64@npm:2.5.1": + version: 2.5.1 + resolution: "@parcel/watcher-freebsd-x64@npm:2.5.1" + conditions: os=freebsd & cpu=x64 languageName: node linkType: hard -"@peculiar/asn1-x509@npm:^2.3.4, @peculiar/asn1-x509@npm:^2.3.6": - version: 2.3.6 - resolution: "@peculiar/asn1-x509@npm:2.3.6" - dependencies: - "@peculiar/asn1-schema": ^2.3.6 - asn1js: ^3.0.5 - ipaddr.js: ^2.0.1 - pvtsutils: ^1.3.2 - tslib: ^2.4.0 - checksum: 6e946bd44091fb88f617c3bbf54ed1113ed2b249675dd36004513444f409160f6d446bdb82d3cb6041b4d15c68fa4cf40ad452891a5f85dda2af89ee5b0590d2 +"@parcel/watcher-linux-arm-glibc@npm:2.5.1": + version: 2.5.1 + resolution: "@parcel/watcher-linux-arm-glibc@npm:2.5.1" + conditions: os=linux & cpu=arm & libc=glibc languageName: node linkType: hard -"@popperjs/core@npm:^2.11.6, @popperjs/core@npm:^2.9.3": - version: 2.11.7 - resolution: "@popperjs/core@npm:2.11.7" - checksum: 5b6553747899683452a1d28898c1b39173a4efd780e74360bfcda8eb42f1c5e819602769c81a10920fc68c881d07fb40429604517d499567eac079cfa6470f19 +"@parcel/watcher-linux-arm-musl@npm:2.5.1": + version: 2.5.1 + resolution: "@parcel/watcher-linux-arm-musl@npm:2.5.1" + conditions: os=linux & cpu=arm & libc=musl + languageName: node + linkType: hard + +"@parcel/watcher-linux-arm64-glibc@npm:2.5.1": + version: 2.5.1 + resolution: "@parcel/watcher-linux-arm64-glibc@npm:2.5.1" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@parcel/watcher-linux-arm64-musl@npm:2.5.1": + version: 2.5.1 + resolution: "@parcel/watcher-linux-arm64-musl@npm:2.5.1" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@parcel/watcher-linux-x64-glibc@npm:2.5.1": + version: 2.5.1 + resolution: "@parcel/watcher-linux-x64-glibc@npm:2.5.1" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@parcel/watcher-linux-x64-musl@npm:2.5.1": + version: 2.5.1 + resolution: "@parcel/watcher-linux-x64-musl@npm:2.5.1" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@parcel/watcher-win32-arm64@npm:2.5.1": + version: 2.5.1 + resolution: "@parcel/watcher-win32-arm64@npm:2.5.1" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@parcel/watcher-win32-ia32@npm:2.5.1": + version: 2.5.1 + resolution: "@parcel/watcher-win32-ia32@npm:2.5.1" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@parcel/watcher-win32-x64@npm:2.5.1": + version: 2.5.1 + resolution: "@parcel/watcher-win32-x64@npm:2.5.1" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@parcel/watcher@npm:^2.4.1": + version: 2.5.1 + resolution: "@parcel/watcher@npm:2.5.1" + dependencies: + "@parcel/watcher-android-arm64": 2.5.1 + "@parcel/watcher-darwin-arm64": 2.5.1 + "@parcel/watcher-darwin-x64": 2.5.1 + "@parcel/watcher-freebsd-x64": 2.5.1 + "@parcel/watcher-linux-arm-glibc": 2.5.1 + "@parcel/watcher-linux-arm-musl": 2.5.1 + "@parcel/watcher-linux-arm64-glibc": 2.5.1 + "@parcel/watcher-linux-arm64-musl": 2.5.1 + "@parcel/watcher-linux-x64-glibc": 2.5.1 + "@parcel/watcher-linux-x64-musl": 2.5.1 + "@parcel/watcher-win32-arm64": 2.5.1 + "@parcel/watcher-win32-ia32": 2.5.1 + "@parcel/watcher-win32-x64": 2.5.1 + detect-libc: ^1.0.3 + is-glob: ^4.0.3 + micromatch: ^4.0.5 + node-addon-api: ^7.0.0 + node-gyp: latest + dependenciesMeta: + "@parcel/watcher-android-arm64": + optional: true + "@parcel/watcher-darwin-arm64": + optional: true + "@parcel/watcher-darwin-x64": + optional: true + "@parcel/watcher-freebsd-x64": + optional: true + "@parcel/watcher-linux-arm-glibc": + optional: true + "@parcel/watcher-linux-arm-musl": + optional: true + "@parcel/watcher-linux-arm64-glibc": + optional: true + "@parcel/watcher-linux-arm64-musl": + optional: true + "@parcel/watcher-linux-x64-glibc": + optional: true + "@parcel/watcher-linux-x64-musl": + optional: true + "@parcel/watcher-win32-arm64": + optional: true + "@parcel/watcher-win32-ia32": + optional: true + "@parcel/watcher-win32-x64": + optional: true + checksum: c6444cd20212929ef2296d5620c0d41343a1719232cb0c947ced51155b8afc1e470c09d238b92f6c3a589e0320048badf5b73cb41790229521be224cbf89e0f4 + languageName: node + linkType: hard + +"@peculiar/asn1-android@npm:^2.3.10": + version: 2.5.0 + resolution: "@peculiar/asn1-android@npm:2.5.0" + dependencies: + "@peculiar/asn1-schema": ^2.5.0 + asn1js: ^3.0.6 + tslib: ^2.8.1 + checksum: 00bfaf2bfdc87b3ba60c0fddb433ae80513ef8ff3ef74725df3d7135bd8c3ee34400dfc12070e19dd69e7527dd5d4fc6f621b5d22c99b1e3d2c158fb3f529b63 + languageName: node + linkType: hard + +"@peculiar/asn1-cms@npm:^2.5.0": + version: 2.5.0 + resolution: "@peculiar/asn1-cms@npm:2.5.0" + dependencies: + "@peculiar/asn1-schema": ^2.5.0 + "@peculiar/asn1-x509": ^2.5.0 + "@peculiar/asn1-x509-attr": ^2.5.0 + asn1js: ^3.0.6 + tslib: ^2.8.1 + checksum: 76eea5505fd06a429754f6b3873b72357070e1b12e0268f316ff1296859f739994e29c511ac43c92901c8d1525e72f2ec337e672966f80164bfb7d4198886dd2 + languageName: node + linkType: hard + +"@peculiar/asn1-csr@npm:^2.5.0": + version: 2.5.0 + resolution: "@peculiar/asn1-csr@npm:2.5.0" + dependencies: + "@peculiar/asn1-schema": ^2.5.0 + "@peculiar/asn1-x509": ^2.5.0 + asn1js: ^3.0.6 + tslib: ^2.8.1 + checksum: 523b1f3c123b792f78db5a4385595116a69054b6b07111134fbcfe0861964ab9a6a108c33e63c62cc16ea2084dd2f3ae7448e53da12afb277148013f84c5833c + languageName: node + linkType: hard + +"@peculiar/asn1-ecc@npm:^2.3.8, @peculiar/asn1-ecc@npm:^2.5.0": + version: 2.5.0 + resolution: "@peculiar/asn1-ecc@npm:2.5.0" + dependencies: + "@peculiar/asn1-schema": ^2.5.0 + "@peculiar/asn1-x509": ^2.5.0 + asn1js: ^3.0.6 + tslib: ^2.8.1 + checksum: e68203c576aa94e1e0519564825ebd8982619abe065c71011e66b4fa8d85208735fcf1234a00b58f63b5ab578503da25cf3be1f5714035ede68c2b5ba61db05c + languageName: node + linkType: hard + +"@peculiar/asn1-pfx@npm:^2.5.0": + version: 2.5.0 + resolution: "@peculiar/asn1-pfx@npm:2.5.0" + dependencies: + "@peculiar/asn1-cms": ^2.5.0 + "@peculiar/asn1-pkcs8": ^2.5.0 + "@peculiar/asn1-rsa": ^2.5.0 + "@peculiar/asn1-schema": ^2.5.0 + asn1js: ^3.0.6 + tslib: ^2.8.1 + checksum: f8b2d9116fe36a3e6dd46ec51fb81a3b71313a5bb48260b9e012c3ff77f951138f82b5cab973cbc8a8d20c393d623ee3f6e2c07b324057bb7e025cb2ff0cf81f + languageName: node + linkType: hard + +"@peculiar/asn1-pkcs8@npm:^2.5.0": + version: 2.5.0 + resolution: "@peculiar/asn1-pkcs8@npm:2.5.0" + dependencies: + "@peculiar/asn1-schema": ^2.5.0 + "@peculiar/asn1-x509": ^2.5.0 + asn1js: ^3.0.6 + tslib: ^2.8.1 + checksum: a8dad4a216be861000e6233009ef271991d093cc31743101de75d0d124d9873c82697464d65340cdfd4b95066ac9122b209324399d44c191d2b9618c470fea06 + languageName: node + linkType: hard + +"@peculiar/asn1-pkcs9@npm:^2.5.0": + version: 2.5.0 + resolution: "@peculiar/asn1-pkcs9@npm:2.5.0" + dependencies: + "@peculiar/asn1-cms": ^2.5.0 + "@peculiar/asn1-pfx": ^2.5.0 + "@peculiar/asn1-pkcs8": ^2.5.0 + "@peculiar/asn1-schema": ^2.5.0 + "@peculiar/asn1-x509": ^2.5.0 + "@peculiar/asn1-x509-attr": ^2.5.0 + asn1js: ^3.0.6 + tslib: ^2.8.1 + checksum: 6d79272d6c4d2f2c04a8b7326f9c56ce74db83705107ec4cebb0b561835aabb3600639a5c8cf0168a2cc39deeb1555d2c4e2e31bd6fdd49868af789f549475a2 + languageName: node + linkType: hard + +"@peculiar/asn1-rsa@npm:^2.3.8, @peculiar/asn1-rsa@npm:^2.5.0": + version: 2.5.0 + resolution: "@peculiar/asn1-rsa@npm:2.5.0" + dependencies: + "@peculiar/asn1-schema": ^2.5.0 + "@peculiar/asn1-x509": ^2.5.0 + asn1js: ^3.0.6 + tslib: ^2.8.1 + checksum: 1ea7fcd8fae4c30ad0fd64fb2b8ff7b53c68a595c6b0945563670a6b329d788fc370741f83bee5e7ab88b120d495cc4bf9bf119326471a09d046bb1b4f9903a3 + languageName: node + linkType: hard + +"@peculiar/asn1-schema@npm:^2.3.8, @peculiar/asn1-schema@npm:^2.5.0": + version: 2.5.0 + resolution: "@peculiar/asn1-schema@npm:2.5.0" + dependencies: + asn1js: ^3.0.6 + pvtsutils: ^1.3.6 + tslib: ^2.8.1 + checksum: afa900ed07e4bad4003a8452d35114c01084021dac6d089777ae200b1e1f6534695e2d95a75c9d0b53841499e130a52548965305e5aad2ba5ec1b8305a00a3b5 + languageName: node + linkType: hard + +"@peculiar/asn1-x509-attr@npm:^2.5.0": + version: 2.5.0 + resolution: "@peculiar/asn1-x509-attr@npm:2.5.0" + dependencies: + "@peculiar/asn1-schema": ^2.5.0 + "@peculiar/asn1-x509": ^2.5.0 + asn1js: ^3.0.6 + tslib: ^2.8.1 + checksum: e2f101e5cf09e58b43bd0f83b6b748e834fa6b0e40576ca322284f63ed0a8e146ec815bcd2cb884c9fa695d1f9acc2f9e97f8c9b84dca04184dd3b0e39d20fdb + languageName: node + linkType: hard + +"@peculiar/asn1-x509@npm:^2.3.8, @peculiar/asn1-x509@npm:^2.5.0": + version: 2.5.0 + resolution: "@peculiar/asn1-x509@npm:2.5.0" + dependencies: + "@peculiar/asn1-schema": ^2.5.0 + asn1js: ^3.0.6 + pvtsutils: ^1.3.6 + tslib: ^2.8.1 + checksum: 098c5560968d60b826cb388551e426aaff5f39d5da2a53a6fb0babe97dae17d6a3e47bbb8ce0705c771d1d1f1f27860b6fd618270cc120fd5bbbba815ad76053 + languageName: node + linkType: hard + +"@peculiar/x509@npm:^1.13.0": + version: 1.14.0 + resolution: "@peculiar/x509@npm:1.14.0" + dependencies: + "@peculiar/asn1-cms": ^2.5.0 + "@peculiar/asn1-csr": ^2.5.0 + "@peculiar/asn1-ecc": ^2.5.0 + "@peculiar/asn1-pkcs9": ^2.5.0 + "@peculiar/asn1-rsa": ^2.5.0 + "@peculiar/asn1-schema": ^2.5.0 + "@peculiar/asn1-x509": ^2.5.0 + pvtsutils: ^1.3.6 + reflect-metadata: ^0.2.2 + tslib: ^2.8.1 + tsyringe: ^4.10.0 + checksum: c05dd1c13fefc1d6283766f2f254a366f113072774a7a1c9954f1a49c22d65b54871fcea32b0ca112231e2a5e784059d325820b475a2706bbec98581651e125f languageName: node linkType: hard @@ -1049,34 +1397,42 @@ __metadata: languageName: node linkType: hard -"@rollup/plugin-commonjs@npm:^24.0.1": - version: 24.0.1 - resolution: "@rollup/plugin-commonjs@npm:24.0.1" +"@popperjs/core@npm:^2.9.3": + version: 2.11.7 + resolution: "@popperjs/core@npm:2.11.7" + checksum: 5b6553747899683452a1d28898c1b39173a4efd780e74360bfcda8eb42f1c5e819602769c81a10920fc68c881d07fb40429604517d499567eac079cfa6470f19 + languageName: node + linkType: hard + +"@rollup/plugin-commonjs@npm:^28.0.6": + version: 28.0.6 + resolution: "@rollup/plugin-commonjs@npm:28.0.6" dependencies: "@rollup/pluginutils": ^5.0.1 commondir: ^1.0.1 estree-walker: ^2.0.2 - glob: ^8.0.3 + fdir: ^6.2.0 is-reference: 1.2.1 - magic-string: ^0.27.0 + magic-string: ^0.30.3 + picomatch: ^4.0.2 peerDependencies: - rollup: ^2.68.0||^3.0.0 + rollup: ^2.68.0||^3.0.0||^4.0.0 peerDependenciesMeta: rollup: optional: true - checksum: ff5b09f5c350640fe6836fcc97bf5c5612bf78b26eaaad01bf1aee955f0b136135d1a8950a02f680779aec1f16f2c6b6cf89d6080e84ed09be62737abb6b3a5f + checksum: 613a1f487ffe3835a68e376b9ad0c0dcea39de31e19ea8817188701f715c1b26943d9648169c49c1942b5b1fef6603a59fa6ca5a37ad6213ca8011b1a11fcbc9 languageName: node linkType: hard -"@rollup/plugin-html@npm:^1.0.3": - version: 1.0.3 - resolution: "@rollup/plugin-html@npm:1.0.3" +"@rollup/plugin-html@npm:^2.0.0": + version: 2.0.0 + resolution: "@rollup/plugin-html@npm:2.0.0" peerDependencies: rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 peerDependenciesMeta: rollup: optional: true - checksum: f71fb47a5e3b4f9a3223de385217d350814dd330c9d82ec822c37c566f1effb83cd251c8df7e034b5605394654db6b21abc0501e69bf911dd3bce67cc4944a4f + checksum: 01bcb452f68fb65449da5243837b142c00905b5c859e1ebe5cee14a8ff0c779f8bf69a507b42c29786fc56ca73386c103002a181bfa61bc32e34268783191bed languageName: node linkType: hard @@ -1095,22 +1451,39 @@ __metadata: languageName: node linkType: hard -"@rollup/plugin-node-resolve@npm:^15.0.2": - version: 15.0.2 - resolution: "@rollup/plugin-node-resolve@npm:15.0.2" +"@rollup/plugin-node-resolve@npm:^15.2.3": + version: 15.3.1 + resolution: "@rollup/plugin-node-resolve@npm:15.3.1" dependencies: "@rollup/pluginutils": ^5.0.1 "@types/resolve": 1.20.2 deepmerge: ^4.2.2 - is-builtin-module: ^3.2.1 is-module: ^1.0.0 resolve: ^1.22.1 peerDependencies: - rollup: ^2.78.0||^3.0.0 + rollup: ^2.78.0||^3.0.0||^4.0.0 peerDependenciesMeta: rollup: optional: true - checksum: 328eafee06ff967a36441b55e77fbd0d4f599d256e5d1977800ee71915846c46bc1b6185df35c7b512ad2b4023b05b65a332be77b8b00b9d8a20f87d056b8166 + checksum: 2973db4da0e7ed97c35a8dd8878ed6b6781bcb03d72039f064d878f711b0290446348c5268aa1359d064787adc0d5cc35f662d35ea5a4fa9b0b3f9f17c678f41 + languageName: node + linkType: hard + +"@rollup/plugin-node-resolve@npm:^16.0.1": + version: 16.0.1 + resolution: "@rollup/plugin-node-resolve@npm:16.0.1" + dependencies: + "@rollup/pluginutils": ^5.0.1 + "@types/resolve": 1.20.2 + deepmerge: ^4.2.2 + is-module: ^1.0.0 + resolve: ^1.22.1 + peerDependencies: + rollup: ^2.78.0||^3.0.0||^4.0.0 + peerDependenciesMeta: + rollup: + optional: true + checksum: 5606531bdeb81fedc240178c37775bfb6f8530d081ba95498d94be96b50f93b0a9aa09825e51615b6aef203dbf394157c1e4de7928a2667a6651a7be478e2ab8 languageName: node linkType: hard @@ -1140,73 +1513,233 @@ __metadata: languageName: node linkType: hard -"@sideway/address@npm:^4.1.3": - version: 4.1.4 - resolution: "@sideway/address@npm:4.1.4" +"@rollup/rollup-android-arm-eabi@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-android-arm-eabi@npm:4.50.2" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@rollup/rollup-android-arm64@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-android-arm64@npm:4.50.2" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-darwin-arm64@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-darwin-arm64@npm:4.50.2" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-darwin-x64@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-darwin-x64@npm:4.50.2" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@rollup/rollup-freebsd-arm64@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-freebsd-arm64@npm:4.50.2" + conditions: os=freebsd & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-freebsd-x64@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-freebsd-x64@npm:4.50.2" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm-gnueabihf@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.50.2" + conditions: os=linux & cpu=arm & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm-musleabihf@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.50.2" + conditions: os=linux & cpu=arm & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm64-gnu@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.50.2" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm64-musl@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-linux-arm64-musl@npm:4.50.2" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-loong64-gnu@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-linux-loong64-gnu@npm:4.50.2" + conditions: os=linux & cpu=loong64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-ppc64-gnu@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-linux-ppc64-gnu@npm:4.50.2" + conditions: os=linux & cpu=ppc64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-riscv64-gnu@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.50.2" + conditions: os=linux & cpu=riscv64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-riscv64-musl@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-linux-riscv64-musl@npm:4.50.2" + conditions: os=linux & cpu=riscv64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-s390x-gnu@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.50.2" + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-x64-gnu@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-linux-x64-gnu@npm:4.50.2" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-x64-musl@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-linux-x64-musl@npm:4.50.2" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-openharmony-arm64@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-openharmony-arm64@npm:4.50.2" + conditions: os=openharmony & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-win32-arm64-msvc@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.50.2" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-win32-ia32-msvc@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.50.2" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@rollup/rollup-win32-x64-msvc@npm:4.50.2": + version: 4.50.2 + resolution: "@rollup/rollup-win32-x64-msvc@npm:4.50.2" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@simplewebauthn/browser@npm:^13.2.0": + version: 13.2.0 + resolution: "@simplewebauthn/browser@npm:13.2.0" + checksum: 48099e0e72d558b3aa7427c90858139686fc50dbffc9bdbc320da9de8e1f9ded0dd1e17f74c9d291c486b33c0ba2507a7642dd10c04eb6697a427c7e27a33546 + languageName: node + linkType: hard + +"@simplewebauthn/server@npm:^13.2.0": + version: 13.2.0 + resolution: "@simplewebauthn/server@npm:13.2.0" dependencies: - "@hapi/hoek": ^9.0.0 - checksum: b9fca2a93ac2c975ba12e0a6d97853832fb1f4fb02393015e012b47fa916a75ca95102d77214b2a29a2784740df2407951af8c5dde054824c65577fd293c4cdb + "@hexagon/base64": ^1.1.27 + "@levischuck/tiny-cbor": ^0.2.2 + "@peculiar/asn1-android": ^2.3.10 + "@peculiar/asn1-ecc": ^2.3.8 + "@peculiar/asn1-rsa": ^2.3.8 + "@peculiar/asn1-schema": ^2.3.8 + "@peculiar/asn1-x509": ^2.3.8 + "@peculiar/x509": ^1.13.0 + checksum: d242ae1375cd2e12113ad2ff862304c8edaa928dc3eda6cf8363369129ac3bba0d4a7be4f9360f3d6da6a9866e574a2a2fc48aec60af8a11b3de494b10c90a6f languageName: node linkType: hard -"@sideway/formula@npm:^3.0.1": - version: 3.0.1 - resolution: "@sideway/formula@npm:3.0.1" - checksum: e4beeebc9dbe2ff4ef0def15cec0165e00d1612e3d7cea0bc9ce5175c3263fc2c818b679bd558957f49400ee7be9d4e5ac90487e1625b4932e15c4aa7919c57a +"@standard-schema/spec@npm:^1.0.0": + version: 1.0.0 + resolution: "@standard-schema/spec@npm:1.0.0" + checksum: 2d7d73a1c9706622750ab06fc40ef7c1d320b52d5e795f8a1c7a77d0d6a9f978705092bc4149327b3cff4c9a14e5b3800d3b00dc945489175a2d3031ded8332a languageName: node linkType: hard -"@sideway/pinpoint@npm:^2.0.0": - version: 2.0.0 - resolution: "@sideway/pinpoint@npm:2.0.0" - checksum: 0f4491e5897fcf5bf02c46f5c359c56a314e90ba243f42f0c100437935daa2488f20482f0f77186bd6bf43345095a95d8143ecf8b1f4d876a7bc0806aba9c3d2 +"@sveltejs/acorn-typescript@npm:^1.0.5": + version: 1.0.5 + resolution: "@sveltejs/acorn-typescript@npm:1.0.5" + peerDependencies: + acorn: ^8.9.0 + checksum: 80bb2dcff30f848d3cb74e99e957df5868b3ad3c29b4a72472472a959a79948b3deb3e7825021b32287603a66ada10b7846b59a7f396b622ede3d12e639d33a5 languageName: node linkType: hard -"@simplewebauthn/browser@npm:^7.2.0": - version: 7.2.0 - resolution: "@simplewebauthn/browser@npm:7.2.0" +"@svgdotjs/svg.draggable.js@npm:^3.0.4": + version: 3.0.6 + resolution: "@svgdotjs/svg.draggable.js@npm:3.0.6" + peerDependencies: + "@svgdotjs/svg.js": ^3.2.4 + checksum: afb41e960475a3de26a079d6b8322c3c8ff35507f57cebd982e250b27eb34501a49f4383dd071f9040de4bf26e2bbf1a2b58a8880f0ff505817d8282a28c145a + languageName: node + linkType: hard + +"@svgdotjs/svg.filter.js@npm:^3.0.8": + version: 3.0.9 + resolution: "@svgdotjs/svg.filter.js@npm:3.0.9" dependencies: - "@simplewebauthn/typescript-types": "*" - checksum: 1eb8193e671307936cca3305b44860716e3c081effb83f11f35293cb411fc07e47c3e1ce0194322afab9d24b5e5cbde8c566daf8a21dcf8b2d872169cd04ce3d + "@svgdotjs/svg.js": ^3.2.4 + checksum: 777fff63cba867b088359cffce414f51caf9092ed07ebc142f9623f06adf1e4dc5a77905b1b44bab76a43acf13e2f0673a33ea6c654f3efddbf814eee8792fbf languageName: node linkType: hard -"@simplewebauthn/iso-webcrypto@npm:^7.2.0": - version: 7.2.0 - resolution: "@simplewebauthn/iso-webcrypto@npm:7.2.0" - dependencies: - "@simplewebauthn/typescript-types": "*" - "@types/node": ^18.11.9 - checksum: 663b3cf8b88987e5a87126d3f35f92941756682aa13af4816fffe3a9547eb344fc433f817502a7e7066d6179270afdd5ea18638a629c4218b433c77f6669f14b +"@svgdotjs/svg.js@npm:^3.2.4": + version: 3.2.5 + resolution: "@svgdotjs/svg.js@npm:3.2.5" + checksum: d352ea33ed01bcde94f11b3aa72c1fb70d61f45fb7f4b1dc5586fa26dfaf63804bdd12edfbb550d62ab6e3242acca5335354e2babecdccc7e761a355130d7805 languageName: node linkType: hard -"@simplewebauthn/server@npm:^7.2.0": - version: 7.2.0 - resolution: "@simplewebauthn/server@npm:7.2.0" - dependencies: - "@hexagon/base64": ^1.1.25 - "@peculiar/asn1-android": ^2.3.3 - "@peculiar/asn1-ecc": ^2.3.4 - "@peculiar/asn1-rsa": ^2.3.4 - "@peculiar/asn1-schema": ^2.3.3 - "@peculiar/asn1-x509": ^2.3.4 - "@simplewebauthn/iso-webcrypto": ^7.2.0 - "@simplewebauthn/typescript-types": "*" - "@types/debug": ^4.1.7 - "@types/node": ^18.11.9 - cbor-x: ^1.4.1 - cross-fetch: ^3.1.5 - debug: ^4.3.2 - checksum: 6340e94be8f1705f59477d92324a0f3910fab48bbfff59e12e1660259161fdddb6d24b992915017277a18df6b0e3508d520918c2e4eac16eb299f498cfa3ccb6 +"@svgdotjs/svg.resize.js@npm:^2.0.2": + version: 2.0.5 + resolution: "@svgdotjs/svg.resize.js@npm:2.0.5" + peerDependencies: + "@svgdotjs/svg.js": ^3.2.4 + "@svgdotjs/svg.select.js": ^4.0.1 + checksum: 3a1c7247ca9c03b6248d612ed807f6b4161a21118d78eaafce6feb8e60c9a76f7a50c568edf952793bc77416b7d46ee7627e37951cbde344b18f7e1061a76d8c languageName: node linkType: hard -"@simplewebauthn/typescript-types@npm:*": - version: 7.0.0 - resolution: "@simplewebauthn/typescript-types@npm:7.0.0" - checksum: 11e55e74035e4a88287d5a615939c9cfffc6e05520dc947b68d77a1b5b301707137c2e29b5b279f91e3e4a9b472226fb6c7025144a6057990b6841145fdd4959 +"@svgdotjs/svg.select.js@npm:^4.0.1": + version: 4.0.3 + resolution: "@svgdotjs/svg.select.js@npm:4.0.3" + peerDependencies: + "@svgdotjs/svg.js": ^3.2.4 + checksum: e580b9393c9fc8c61fbbeab3f4b67de3c6f016fedd1ce267536a770cd835856af320a6ffd683bda09ff36d6021b734b5748158aafb4788f38c7d88bf531c012d languageName: node linkType: hard @@ -1252,14 +1785,14 @@ __metadata: languageName: node linkType: hard -"@tsconfig/svelte@npm:^4.0.1": - version: 4.0.1 - resolution: "@tsconfig/svelte@npm:4.0.1" - checksum: 888b3dca2dc0041afb1d734ca500f6f40107b7a548c8890df448259ffec2ae3c97765ca7a43a42ad17d33a623ec29e3d39cbacb56847c962eff72b021d0780b6 +"@tsconfig/svelte@npm:^5.0.5": + version: 5.0.5 + resolution: "@tsconfig/svelte@npm:5.0.5" + checksum: 4624403d49b8b4aed2f9be8b361bed121a2406871438e79f1f926e80f2b5dd47916663ce7e1069ca01861c748ef546b3227a9a280dc5c52adeebf42c63eed6e2 languageName: node linkType: hard -"@types/body-parser@npm:*, @types/body-parser@npm:^1.19.2": +"@types/body-parser@npm:*": version: 1.19.2 resolution: "@types/body-parser@npm:1.19.2" dependencies: @@ -1269,21 +1802,32 @@ __metadata: languageName: node linkType: hard -"@types/cleave.js@npm:^1.4.7": - version: 1.4.7 - resolution: "@types/cleave.js@npm:1.4.7" +"@types/body-parser@npm:^1.19.6": + version: 1.19.6 + resolution: "@types/body-parser@npm:1.19.6" dependencies: - "@types/react": "*" - checksum: 156e35d77a9f9d46ffb7b136972a6043d70a0823ff4371d9b82aef7814b9db40539c83c612b77eb8049ecf2bd3094bd769e06c17e9ba3160b55f61b7ca9249ae + "@types/connect": "*" + "@types/node": "*" + checksum: 33041e88eae00af2cfa0827e951e5f1751eafab2a8b6fce06cd89ef368a988907996436b1325180edaeddd1c0c7d0d0d4c20a6c9ff294a91e0039a9db9e9b658 languageName: node linkType: hard -"@types/compression@npm:^1.7.2": - version: 1.7.2 - resolution: "@types/compression@npm:1.7.2" +"@types/cleave.js@npm:^1.4.12": + version: 1.4.12 + resolution: "@types/cleave.js@npm:1.4.12" + dependencies: + "@types/react": "*" + checksum: 07b82c2cd0a726b3e4c862e684e5409eaae9230faaa9dd7c14daf3691b73bd0690635d370777cc22040fa1bd7c8447fcc4969c8f3384c1ba8f3108429e43d2f5 + languageName: node + linkType: hard + +"@types/compression@npm:^1.8.1": + version: 1.8.1 + resolution: "@types/compression@npm:1.8.1" dependencies: "@types/express": "*" - checksum: 3457f9d39ed73d58387bccf15bcfe8e140298c5d6e90fe354dfeb24ec7828432658caebee8ab6f4e4ac39a7d03bc0a6a52686d7fb2fe405fbdefede41d6b5834 + "@types/node": "*" + checksum: f3fc76d6a1fdc61985d4d2cb42c17031fa992f8202e11f7e63fb01d01276b18fa812066d40e35b6600fbe5b2b04776cf29c244d97461943fc12eff1754db5fe0 languageName: node linkType: hard @@ -1296,30 +1840,21 @@ __metadata: languageName: node linkType: hard -"@types/cookie-parser@npm:^1.4.3": - version: 1.4.3 - resolution: "@types/cookie-parser@npm:1.4.3" - dependencies: +"@types/cookie-parser@npm:^1.4.9": + version: 1.4.9 + resolution: "@types/cookie-parser@npm:1.4.9" + peerDependencies: "@types/express": "*" - checksum: f390f3af1b1711190dee2c2ecd9af33af81fbde8d81ee820dadb6fe1e0d80c3faba40af37c6ed36fb88b04b64870f6a021f7e9edceecd17c42fe22abe0af5005 + checksum: 6192a4899b5412a4c3be0f47158321aef73a4cd7e7a4f7b2a37e2e1045f11a21209681cb1bc5335f250ee2a6ce64d8a3fefb851181a98e6415d3716ef9ed1f62 languageName: node linkType: hard -"@types/debug@npm:^4.1.7": - version: 4.1.7 - resolution: "@types/debug@npm:4.1.7" - dependencies: - "@types/ms": "*" - checksum: 0a7b89d8ed72526858f0b61c6fd81f477853e8c4415bb97f48b1b5545248d2ae389931680b94b393b993a7cfe893537a200647d93defe6d87159b96812305adc - languageName: node - linkType: hard - -"@types/dotenv@npm:^8.2.0": - version: 8.2.0 - resolution: "@types/dotenv@npm:8.2.0" +"@types/dotenv@npm:^8.2.3": + version: 8.2.3 + resolution: "@types/dotenv@npm:8.2.3" dependencies: dotenv: "*" - checksum: a1f524da7dc18b09bdb6c2613b9abbbe8ca575621cce4625efc7f98daf2ba07c7dbab622c9bb394507a12c5c515f9cbbbba4aeec17b801c88faeb8e8e656d460 + checksum: 3075371abbcaf231593c57297338c9b731a45b3dd519ab96c1708a2f7fa345fcf885daf1ba3e39d84942873706fb1aa656b560cde9ccb62ce598ceb563502470 languageName: node linkType: hard @@ -1350,6 +1885,13 @@ __metadata: languageName: node linkType: hard +"@types/estree@npm:1.0.8, @types/estree@npm:^1.0.5, @types/estree@npm:^1.0.6": + version: 1.0.8 + resolution: "@types/estree@npm:1.0.8" + checksum: bd93e2e415b6f182ec4da1074e1f36c480f1d26add3e696d54fb30c09bc470897e41361c8fd957bf0985024f8fbf1e6e2aff977d79352ef7eb93a5c6dcff6c11 + languageName: node + linkType: hard + "@types/estree@npm:^0.0.51": version: 0.0.51 resolution: "@types/estree@npm:0.0.51" @@ -1368,16 +1910,28 @@ __metadata: languageName: node linkType: hard -"@types/express-session@npm:^1.17.7": - version: 1.17.7 - resolution: "@types/express-session@npm:1.17.7" +"@types/express-serve-static-core@npm:^5.0.0, @types/express-serve-static-core@npm:^5.0.7": + version: 5.0.7 + resolution: "@types/express-serve-static-core@npm:5.0.7" dependencies: - "@types/express": "*" - checksum: 4764eafaf4e26842e891e83fa9fee30b92cc3724d91987aac3a658322f9a69fb544dae24fc3aba6e15fe9575ed862760ebecd7ff97a947afb695284967434a65 + "@types/node": "*" + "@types/qs": "*" + "@types/range-parser": "*" + "@types/send": "*" + checksum: 3539f5866720c081053daeb97d6786614791b382ec2f30b46f05c09076c99ae14c87755b00d8367f7d456535191594d67336dbaa764e8fbbba9ca3dfb15dae00 languageName: node linkType: hard -"@types/express@npm:*, @types/express@npm:^4.17.17": +"@types/express-session@npm:^1.18.2": + version: 1.18.2 + resolution: "@types/express-session@npm:1.18.2" + dependencies: + "@types/express": "*" + checksum: 317b749c2179f8d6b5b961e9da3deb8c730c06586cfbf92391c9f74c7981825bfa1b37942e7fe85e51a85c678809b614b2405c722c3474d4afd98686ee04d0ad + languageName: node + linkType: hard + +"@types/express@npm:*": version: 4.17.17 resolution: "@types/express@npm:4.17.17" dependencies: @@ -1389,17 +1943,28 @@ __metadata: languageName: node linkType: hard -"@types/i18n@npm:^0.13.6": - version: 0.13.6 - resolution: "@types/i18n@npm:0.13.6" - checksum: 73490f7248e1e6330962d5a9a9621c4a92685188d840f0799d33292350dbd88733f189b2a0f82805bb2ac9ab1c02beec5575e80fec71aa3abac43e46752fad8d +"@types/express@npm:^5.0.3": + version: 5.0.3 + resolution: "@types/express@npm:5.0.3" + dependencies: + "@types/body-parser": "*" + "@types/express-serve-static-core": ^5.0.0 + "@types/serve-static": "*" + checksum: bb6f10c14c8e3cce07f79ee172688aa9592852abd7577b663cd0c2054307f172c2b2b36468c918fed0d4ac359b99695807b384b3da6157dfa79acbac2226b59b languageName: node linkType: hard -"@types/ini@npm:^1.3.31": - version: 1.3.31 - resolution: "@types/ini@npm:1.3.31" - checksum: aca4fed0cd68f6693fd64e1b7d188a9c8c6f5823b2e3501b0570135555d4184d7d0dfba2c1afb3514c94cb21ece732f4467ea98c827d1b1b98716827ac9de680 +"@types/i18n@npm:^0.13.12": + version: 0.13.12 + resolution: "@types/i18n@npm:0.13.12" + checksum: dceac7da2ad985a04e2a96e450ad8a2b313e8a7be921ec7d1f05b5d9ee66309ec1845d7af70b0c2ab213de2d2f1de315038978d5c4dd86796b350fea67c6e90f + languageName: node + linkType: hard + +"@types/ini@npm:^4.1.1": + version: 4.1.1 + resolution: "@types/ini@npm:4.1.1" + checksum: 5d17a4af098bcf0263c767515a3856ebdd61a84ba78bd132e1cf7d05ed29a928af4ea80657a1226b39a4c9b3d5e1349a2bbaaa0c5c7ec068034ba7ae768f63cf languageName: node linkType: hard @@ -1410,12 +1975,13 @@ __metadata: languageName: node linkType: hard -"@types/jsonwebtoken@npm:^9.0.1": - version: 9.0.1 - resolution: "@types/jsonwebtoken@npm:9.0.1" +"@types/jsonwebtoken@npm:^9.0.10": + version: 9.0.10 + resolution: "@types/jsonwebtoken@npm:9.0.10" dependencies: + "@types/ms": "*" "@types/node": "*" - checksum: a7f0925e9a42ad3ae970364c63c5986d40da5c83d51d3f4e624eb0f064a380376f9e3fb3f2f837390a9ab80143f5d75fd51866da30e110f6b486a3379e1c768f + checksum: 370e60879902d769c3dd86dc94cda0bf6149c3514762fa8ed6de873d10de7f0952edf960796a4b89ebc5d81f45abcff21430c1e956b165962ad42c836f3e88c8 languageName: node linkType: hard @@ -1426,6 +1992,13 @@ __metadata: languageName: node linkType: hard +"@types/mime@npm:^1": + version: 1.3.5 + resolution: "@types/mime@npm:1.3.5" + checksum: e29a5f9c4776f5229d84e525b7cd7dd960b51c30a0fb9a028c0821790b82fca9f672dab56561e2acd9e8eed51d431bde52eafdfef30f643586c4162f1aecfc78 + languageName: node + linkType: hard + "@types/mongodb@npm:^4.0.7": version: 4.0.7 resolution: "@types/mongodb@npm:4.0.7" @@ -1442,22 +2015,31 @@ __metadata: languageName: node linkType: hard -"@types/node-rsa@npm:^1.1.1": - version: 1.1.1 - resolution: "@types/node-rsa@npm:1.1.1" +"@types/node-rsa@npm:^1.1.4": + version: 1.1.4 + resolution: "@types/node-rsa@npm:1.1.4" dependencies: "@types/node": "*" - checksum: dee0c318618991f115b6e757c54980324c3b2f7dfec8137dcb31e8e88955e7c048d5e89e1e3a572148697783f323dbf9af5738ac5bbe9069666663ad3737284d + checksum: cd607463b7954dd0eda390e0710fa5fdc1a26e716baefd77134f54893ed57bfbf1906f3a354f43f89174aa37ac6f05fa450b708e516a4a8fa643e0d2f8e26106 languageName: node linkType: hard -"@types/node@npm:*, @types/node@npm:^18.11.9, @types/node@npm:^18.15.11": +"@types/node@npm:*": version: 18.15.11 resolution: "@types/node@npm:18.15.11" checksum: 977b4ad04708897ff0eb049ecf82246d210939c82461922d20f7d2dcfd81bbc661582ba3af28869210f7e8b1934529dcd46bff7d448551400f9d48b9d3bddec3 languageName: node linkType: hard +"@types/node@npm:^24.4.0": + version: 24.4.0 + resolution: "@types/node@npm:24.4.0" + dependencies: + undici-types: ~7.11.0 + checksum: a081561c1bd434f2c82e528aa39d6e24433de521f638a5b0a7c2a1e2013351a556011894bcda7983016bdecb4ae5ee80672b0a96167c9b6be5ab948fcc827d00 + languageName: node + linkType: hard + "@types/prop-types@npm:*": version: 15.7.5 resolution: "@types/prop-types@npm:15.7.5" @@ -1465,19 +2047,12 @@ __metadata: languageName: node linkType: hard -"@types/pug@npm:^2.0.6": - version: 2.0.6 - resolution: "@types/pug@npm:2.0.6" - checksum: e8d09c3ddc7e6b87050a16d73694518f259a8ed74a0ab79b81b847baf89d92d44959ed68199966ac6f4a218c715c9bb3e4c86c8800d4868a4a674f4b21d2f01d - languageName: node - linkType: hard - -"@types/qrcode@npm:^1.5.0": - version: 1.5.0 - resolution: "@types/qrcode@npm:1.5.0" +"@types/qrcode@npm:^1.5.5": + version: 1.5.5 + resolution: "@types/qrcode@npm:1.5.5" dependencies: "@types/node": "*" - checksum: b0ece3834ca5ba6171132928fd1ef764772dc619b45cb4123461ee05e377ad15553a330d234c69db0d0028c6639a99429e88d99192fbba9c5ee97c23f278c48b + checksum: d92c1d3e77406bf13a03ec521b2ffb1ac99b2e6ea3a17cad670f2610f62e1293554c57e4074bb2fd4e9369f475f863b69e0ae8c543cb049c4a3c1b0c2d92522a languageName: node linkType: hard @@ -1529,6 +2104,16 @@ __metadata: languageName: node linkType: hard +"@types/send@npm:*": + version: 0.17.5 + resolution: "@types/send@npm:0.17.5" + dependencies: + "@types/mime": ^1 + "@types/node": "*" + checksum: bff5add75eb178c3b80bebc422db483c76eeb2cb5016508c952e4fc67d968794f9c709b978d086bf60e4d6fbfe8c0b77e99a7603a615c671c1f97f808458d4a8 + languageName: node + linkType: hard + "@types/serve-static@npm:*": version: 1.15.1 resolution: "@types/serve-static@npm:1.15.1" @@ -1539,12 +2124,12 @@ __metadata: languageName: node linkType: hard -"@types/speakeasy@npm:^2.0.7": - version: 2.0.7 - resolution: "@types/speakeasy@npm:2.0.7" +"@types/speakeasy@npm:^2.0.10": + version: 2.0.10 + resolution: "@types/speakeasy@npm:2.0.10" dependencies: "@types/node": "*" - checksum: 30152d950ea23654060ef596ea459935a9ea80ba4d9803b13fc9b02c7a27a7b5c96742f2cb00db51b19ba0e13ef9a16c1fd977042f61c9019b10c4191e2f1b97 + checksum: 672c757a7662895a0d9eea5ecc8309b75c3925f00f0af4e7133fd3e475f3fdb1289d95ae6cf7fbab024f149703d999891b17771cc221db4e9a24c70ab1b04319 languageName: node linkType: hard @@ -1555,10 +2140,10 @@ __metadata: languageName: node linkType: hard -"@types/uuid@npm:^9.0.1": - version: 9.0.1 - resolution: "@types/uuid@npm:9.0.1" - checksum: c472b8a77cbeded4bc529220b8611afa39bd64677f507838f8083d8aac8033b1f88cb9ddaa2f8589e0dcd2317291d0f6e1379f82d5ceebd6f74f3b4825288e00 +"@types/uuid@npm:^10.0.0": + version: 10.0.0 + resolution: "@types/uuid@npm:10.0.0" + checksum: e3958f8b0fe551c86c14431f5940c3470127293280830684154b91dc7eb3514aeb79fe3216968833cf79d4d1c67f580f054b5be2cd562bebf4f728913e73e944 languageName: node linkType: hard @@ -1569,6 +2154,15 @@ __metadata: languageName: node linkType: hard +"@types/whatwg-url@npm:^11.0.2": + version: 11.0.5 + resolution: "@types/whatwg-url@npm:11.0.5" + dependencies: + "@types/webidl-conversions": "*" + checksum: 23a0c45aff51817807b473a6adb181d6e3bb0d27dde54e84883d5d5bc93358e95204d2188e7ff7fdc2cdaf157e97e1188ef0a22ec79228da300fc30d4a05b56a + languageName: node + linkType: hard + "@types/whatwg-url@npm:^8.2.1": version: 8.2.2 resolution: "@types/whatwg-url@npm:8.2.2" @@ -1777,6 +2371,13 @@ __metadata: languageName: node linkType: hard +"@yr/monotone-cubic-spline@npm:^1.0.3": + version: 1.0.3 + resolution: "@yr/monotone-cubic-spline@npm:1.0.3" + checksum: ebc75e4d84d5b97d1d715452088ffe3cf6b3d71943433118116a2e90f17aed654b6f726868e913a49aef28645bb8afcc28580349de1ac77ad0c7dab3d991843e + languageName: node + linkType: hard + "abbrev@npm:1, abbrev@npm:^1.0.0": version: 1.1.1 resolution: "abbrev@npm:1.1.1" @@ -1784,13 +2385,13 @@ __metadata: languageName: node linkType: hard -"accepts@npm:~1.3.5, accepts@npm:~1.3.8": - version: 1.3.8 - resolution: "accepts@npm:1.3.8" +"accepts@npm:^2.0.0": + version: 2.0.0 + resolution: "accepts@npm:2.0.0" dependencies: - mime-types: ~2.1.34 - negotiator: 0.6.3 - checksum: 50c43d32e7b50285ebe84b613ee4a3aa426715a7d131b65b786e2ead0fd76b6b60091b9916d3478a75f11f162628a2139991b6c03ab3f1d9ab7c86075dc8eab4 + mime-types: ^3.0.0 + negotiator: ^1.0.0 + checksum: 49fe6c050cb6f6ff4e771b4d88324fca4d3127865f2473872e818dca127d809ba3aa8fdfc7acb51dd3c5bade7311ca6b8cfff7015ea6db2f7eb9c8444d223a4f languageName: node linkType: hard @@ -1810,6 +2411,15 @@ __metadata: languageName: node linkType: hard +"acorn@npm:^8.12.1": + version: 8.15.0 + resolution: "acorn@npm:8.15.0" + bin: + acorn: bin/acorn + checksum: 309c6b49aedf1a2e34aaf266de06de04aab6eb097c02375c66fdeb0f64556a6a823540409914fb364d9a11bc30d79d485a2eba29af47992d3490e9886c4391c3 + languageName: node + linkType: hard + "acorn@npm:^8.4.1, acorn@npm:^8.5.0, acorn@npm:^8.7.1": version: 8.8.2 resolution: "acorn@npm:8.8.2" @@ -1902,13 +2512,6 @@ __metadata: languageName: node linkType: hard -"any-promise@npm:^1.0.0": - version: 1.3.0 - resolution: "any-promise@npm:1.3.0" - checksum: 0ee8a9bdbe882c90464d75d1f55cf027f5458650c4bd1f0467e65aec38ccccda07ca5844969ee77ed46d04e7dded3eaceb027e8d32f385688523fe305fa7e1de - languageName: node - linkType: hard - "anymatch@npm:~3.1.2": version: 3.1.3 resolution: "anymatch@npm:3.1.3" @@ -1919,16 +2522,30 @@ __metadata: languageName: node linkType: hard -"apidoc@npm:^0.54.0": - version: 0.54.0 - resolution: "apidoc@npm:0.54.0" +"apexcharts@npm:^5.3.4": + version: 5.3.5 + resolution: "apexcharts@npm:5.3.5" + dependencies: + "@svgdotjs/svg.draggable.js": ^3.0.4 + "@svgdotjs/svg.filter.js": ^3.0.8 + "@svgdotjs/svg.js": ^3.2.4 + "@svgdotjs/svg.resize.js": ^2.0.2 + "@svgdotjs/svg.select.js": ^4.0.1 + "@yr/monotone-cubic-spline": ^1.0.3 + checksum: 99b76d5fba64b5aa4f58b634ca449277870e4f6e7a3a7d872978a95c6281476348e8b77d4c81bebcdc8d8207e4c3a99d42fd197b40798121c76ac9656c117b24 + languageName: node + linkType: hard + +"apidoc@npm:^1.2.0": + version: 1.2.0 + resolution: "apidoc@npm:1.2.0" dependencies: bootstrap: 3.4.1 - commander: ^8.3.0 + commander: ^10.0.0 diff-match-patch: ^1.0.5 esbuild-loader: ^2.16.0 - expose-loader: ^3.1.0 - fs-extra: ^10.0.0 + expose-loader: ^4.0.0 + fs-extra: ^11.0.0 glob: ^7.2.0 handlebars: ^4.7.7 iconv-lite: ^0.6.3 @@ -1936,16 +2553,16 @@ __metadata: klaw-sync: ^6.0.0 lodash: ^4.17.21 markdown-it: ^12.2.0 - nodemon: ^2.0.15 + nodemon: ^3.0.1 prismjs: ^1.25.0 - semver: ^7.3.5 + semver: ^7.5.0 style-loader: ^3.3.1 webpack: ^5.64.2 webpack-cli: ^4.9.1 winston: ^3.3.3 bin: apidoc: bin/apidoc - checksum: 9c7456cadd7edc8aa1d9c2bbf4186e79309e4be96f1d8f401574abc0dba82d8afd7e7bf3e030f6f0559b3893839e9c34cab2f506a60f64dcd733b421b0312855 + checksum: e82c4437a02116abf253ad9dbac0399685bced39c2c6132a6c84a0719ef509984299e18ab6a9b9d992828a8d1e7209fa7af07df14a0e1600cfcc0608c3310a5c conditions: (os=darwin | os=freebsd | os=linux | os=openbsd | os=win32) languageName: node linkType: hard @@ -1974,13 +2591,6 @@ __metadata: languageName: node linkType: hard -"arg@npm:^5.0.2": - version: 5.0.2 - resolution: "arg@npm:5.0.2" - checksum: 6c69ada1a9943d332d9e5382393e897c500908d91d5cb735a01120d5f71daf1b339b7b8980cbeaba8fd1afc68e658a739746179e4315a26e8a28951ff9930078 - languageName: node - linkType: hard - "argparse@npm:^2.0.1": version: 2.0.1 resolution: "argparse@npm:2.0.1" @@ -1988,6 +2598,13 @@ __metadata: languageName: node linkType: hard +"aria-query@npm:^5.3.1": + version: 5.3.2 + resolution: "aria-query@npm:5.3.2" + checksum: d971175c85c10df0f6d14adfe6f1292409196114ab3c62f238e208b53103686f46cc70695a4f775b73bc65f6a09b6a092fd963c4f3a5a7d690c8fc5094925717 + languageName: node + linkType: hard + "array-buffer-byte-length@npm:^1.0.0": version: 1.0.0 resolution: "array-buffer-byte-length@npm:1.0.0" @@ -1998,13 +2615,6 @@ __metadata: languageName: node linkType: hard -"array-flatten@npm:1.1.1": - version: 1.1.1 - resolution: "array-flatten@npm:1.1.1" - checksum: a9925bf3512d9dce202112965de90c222cd59a4fbfce68a0951d25d965cf44642931f40aac72309c41f12df19afa010ecadceb07cfff9ccc1621e99d89ab5f3b - languageName: node - linkType: hard - "arraybuffer.slice@npm:~0.0.7": version: 0.0.7 resolution: "arraybuffer.slice@npm:0.0.7" @@ -2033,14 +2643,14 @@ __metadata: languageName: node linkType: hard -"asn1js@npm:^3.0.5": - version: 3.0.5 - resolution: "asn1js@npm:3.0.5" +"asn1js@npm:^3.0.6": + version: 3.0.6 + resolution: "asn1js@npm:3.0.6" dependencies: - pvtsutils: ^1.3.2 + pvtsutils: ^1.3.6 pvutils: ^1.1.3 - tslib: ^2.4.0 - checksum: 3b6af1bbadd5762ef8ead5daf2f6bda1bc9e23bc825c4dcc996aa1f9521ad7390a64028565d95d98090d69c8431f004c71cccb866004759169d7c203cf9075eb + tslib: ^2.8.1 + checksum: 2b43a4c7964183cc2c6b45d7f757eeeb93d2c60e89250dae2826250580e2049a43a795af6ab6d8eb6cbb13c8f51674a430923b2981313c64503b7159e378b477 languageName: node linkType: hard @@ -2051,21 +2661,21 @@ __metadata: languageName: node linkType: hard -"autoprefixer@npm:^10.4.14": - version: 10.4.14 - resolution: "autoprefixer@npm:10.4.14" +"autoprefixer@npm:^10.4.21": + version: 10.4.21 + resolution: "autoprefixer@npm:10.4.21" dependencies: - browserslist: ^4.21.5 - caniuse-lite: ^1.0.30001464 - fraction.js: ^4.2.0 + browserslist: ^4.24.4 + caniuse-lite: ^1.0.30001702 + fraction.js: ^4.3.7 normalize-range: ^0.1.2 - picocolors: ^1.0.0 + picocolors: ^1.1.1 postcss-value-parser: ^4.2.0 peerDependencies: postcss: ^8.1.0 bin: autoprefixer: bin/autoprefixer - checksum: e9f18e664a4e4a54a8f4ec5f6b49ed228ec45afaa76efcae361c93721795dc5ab644f36d2fdfc0dea446b02a8067b9372f91542ea431994399e972781ed46d95 + checksum: 11770ce635a0520e457eaf2ff89056cd57094796a9f5d6d9375513388a5a016cd947333dcfd213b822fdd8a0b43ce68ae4958e79c6f077c41d87444c8cca0235 languageName: node linkType: hard @@ -2076,6 +2686,13 @@ __metadata: languageName: node linkType: hard +"axobject-query@npm:^4.1.0": + version: 4.1.0 + resolution: "axobject-query@npm:4.1.0" + checksum: 7d1e87bf0aa7ae7a76cd39ab627b7c48fda3dc40181303d9adce4ba1d5b5ce73b5e5403ee6626ec8e91090448c887294d6144e24b6741a976f5be9347e3ae1df + languageName: node + linkType: hard + "backo2@npm:1.0.2": version: 1.0.2 resolution: "backo2@npm:1.0.2" @@ -2111,6 +2728,15 @@ __metadata: languageName: node linkType: hard +"baseline-browser-mapping@npm:^2.8.2": + version: 2.8.3 + resolution: "baseline-browser-mapping@npm:2.8.3" + bin: + baseline-browser-mapping: dist/cli.js + checksum: 5b68bebb5ff1e2266e9252fdf13f23679ebd3b884cc4165a7257e6a09c5fdc51a1fb98bac24a78e3bf7c429f7a4c05743733e6255f0a6403ace8e6fcefd2ed53 + languageName: node + linkType: hard + "big.js@npm:^5.2.2": version: 5.2.2 resolution: "big.js@npm:5.2.2" @@ -2139,43 +2765,20 @@ __metadata: languageName: node linkType: hard -"body-parser@npm:1.20.1": - version: 1.20.1 - resolution: "body-parser@npm:1.20.1" +"body-parser@npm:^2.2.0": + version: 2.2.0 + resolution: "body-parser@npm:2.2.0" dependencies: - bytes: 3.1.2 - content-type: ~1.0.4 - debug: 2.6.9 - depd: 2.0.0 - destroy: 1.2.0 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - on-finished: 2.4.1 - qs: 6.11.0 - raw-body: 2.5.1 - type-is: ~1.6.18 - unpipe: 1.0.0 - checksum: f1050dbac3bede6a78f0b87947a8d548ce43f91ccc718a50dd774f3c81f2d8b04693e52acf62659fad23101827dd318da1fb1363444ff9a8482b886a3e4a5266 - languageName: node - linkType: hard - -"body-parser@npm:^1.20.2": - version: 1.20.2 - resolution: "body-parser@npm:1.20.2" - dependencies: - bytes: 3.1.2 - content-type: ~1.0.5 - debug: 2.6.9 - depd: 2.0.0 - destroy: 1.2.0 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - on-finished: 2.4.1 - qs: 6.11.0 - raw-body: 2.5.2 - type-is: ~1.6.18 - unpipe: 1.0.0 - checksum: 14d37ec638ab5c93f6099ecaed7f28f890d222c650c69306872e00b9efa081ff6c596cd9afb9930656aae4d6c4e1c17537bea12bb73c87a217cb3cfea8896737 + bytes: ^3.1.2 + content-type: ^1.0.5 + debug: ^4.4.0 + http-errors: ^2.0.0 + iconv-lite: ^0.6.3 + on-finished: ^2.4.1 + qs: ^6.14.0 + raw-body: ^3.0.0 + type-is: ^2.0.0 + checksum: 7fe3a2d288f0b632528d6ccb90052d1a9492c5b79d5716d32c8de1f5fb8237b0d31ee5050e1d0b7ff143a492ff151804612c6e2686a222a1d4c9e2e6531b8fb2 languageName: node linkType: hard @@ -2228,7 +2831,7 @@ __metadata: languageName: node linkType: hard -"browserslist@npm:^4.0.0, browserslist@npm:^4.14.5, browserslist@npm:^4.21.4, browserslist@npm:^4.21.5": +"browserslist@npm:^4.0.0, browserslist@npm:^4.14.5, browserslist@npm:^4.21.4": version: 4.21.5 resolution: "browserslist@npm:4.21.5" dependencies: @@ -2242,6 +2845,21 @@ __metadata: languageName: node linkType: hard +"browserslist@npm:^4.24.4, browserslist@npm:^4.25.1": + version: 4.26.0 + resolution: "browserslist@npm:4.26.0" + dependencies: + baseline-browser-mapping: ^2.8.2 + caniuse-lite: ^1.0.30001741 + electron-to-chromium: ^1.5.218 + node-releases: ^2.0.21 + update-browserslist-db: ^1.1.3 + bin: + browserslist: cli.js + checksum: 7188de936499e7a68234c740f10fd5167191d7a033964f572201d4df71919997c8ba1053027f066e8c01189df06840a1570b35e871796fd87fcb05141e8428f2 + languageName: node + linkType: hard + "bson@npm:^5.2.0": version: 5.2.0 resolution: "bson@npm:5.2.0" @@ -2249,17 +2867,10 @@ __metadata: languageName: node linkType: hard -"bson@npm:^5.5.0": - version: 5.5.1 - resolution: "bson@npm:5.5.1" - checksum: f49730504e8362e2c8d1eb0c272e5e125392c41fb7196fc35ccbc39718ee62569a1d197bd2342c3334cd420073d3fd5dc7dea764a7f219dcd79e0ce473dd2772 - languageName: node - linkType: hard - -"buffer-crc32@npm:^0.2.5": - version: 0.2.13 - resolution: "buffer-crc32@npm:0.2.13" - checksum: 06252347ae6daca3453b94e4b2f1d3754a3b146a111d81c68924c22d91889a40623264e95e67955b1cb4a68cbedf317abeabb5140a9766ed248973096db5ce1c +"bson@npm:^6.10.4": + version: 6.10.4 + resolution: "bson@npm:6.10.4" + checksum: 5b0b625ac9b3661497aa1baec58c8e8979cc501a5c490a5740001b3cc415d0d5d51f16bf9da433b28ffd1303b6f98c1427e8192cf4220b13b09a9a4184bfceb2 languageName: node linkType: hard @@ -2287,21 +2898,14 @@ __metadata: languageName: node linkType: hard -"builtin-modules@npm:^3.1.0, builtin-modules@npm:^3.3.0": +"builtin-modules@npm:^3.1.0": version: 3.3.0 resolution: "builtin-modules@npm:3.3.0" checksum: db021755d7ed8be048f25668fe2117620861ef6703ea2c65ed2779c9e3636d5c3b82325bd912244293959ff3ae303afa3471f6a15bf5060c103e4cc3a839749d languageName: node linkType: hard -"bytes@npm:3.0.0": - version: 3.0.0 - resolution: "bytes@npm:3.0.0" - checksum: a2b386dd8188849a5325f58eef69c3b73c51801c08ffc6963eddc9be244089ba32d19347caf6d145c86f315ae1b1fc7061a32b0c1aa6379e6a719090287ed101 - languageName: node - linkType: hard - -"bytes@npm:3.1.2": +"bytes@npm:3.1.2, bytes@npm:^3.1.2": version: 3.1.2 resolution: "bytes@npm:3.1.2" checksum: e4bcd3948d289c5127591fbedf10c0b639ccbf00243504e4e127374a15c3bc8eed0d28d4aaab08ff6f1cf2abc0cce6ba3085ed32f4f90e82a5683ce0014e1b6e @@ -2334,6 +2938,16 @@ __metadata: languageName: node linkType: hard +"call-bind-apply-helpers@npm:^1.0.1, call-bind-apply-helpers@npm:^1.0.2": + version: 1.0.2 + resolution: "call-bind-apply-helpers@npm:1.0.2" + dependencies: + es-errors: ^1.3.0 + function-bind: ^1.1.2 + checksum: b2863d74fcf2a6948221f65d95b91b4b2d90cfe8927650b506141e669f7d5de65cea191bf788838bc40d13846b7886c5bc5c84ab96c3adbcf88ad69a72fcdc6b + languageName: node + linkType: hard + "call-bind@npm:^1.0.0, call-bind@npm:^1.0.2": version: 1.0.2 resolution: "call-bind@npm:1.0.2" @@ -2344,6 +2958,16 @@ __metadata: languageName: node linkType: hard +"call-bound@npm:^1.0.2": + version: 1.0.4 + resolution: "call-bound@npm:1.0.4" + dependencies: + call-bind-apply-helpers: ^1.0.2 + get-intrinsic: ^1.3.0 + checksum: 2f6399488d1c272f56306ca60ff696575e2b7f31daf23bc11574798c84d9f2759dceb0cb1f471a85b77f28962a7ac6411f51d283ea2e45319009a19b6ccab3b2 + languageName: node + linkType: hard + "camel-case@npm:^3.0.0": version: 3.0.0 resolution: "camel-case@npm:3.0.0" @@ -2354,13 +2978,6 @@ __metadata: languageName: node linkType: hard -"camelcase-css@npm:^2.0.1": - version: 2.0.1 - resolution: "camelcase-css@npm:2.0.1" - checksum: 1cec2b3b3dcb5026688a470b00299a8db7d904c4802845c353dbd12d9d248d3346949a814d83bfd988d4d2e5b9904c07efe76fecd195a1d4f05b543e7c0b56b1 - languageName: node - linkType: hard - "camelcase@npm:^5.0.0": version: 5.3.1 resolution: "camelcase@npm:5.3.1" @@ -2387,53 +3004,20 @@ __metadata: languageName: node linkType: hard -"caniuse-lite@npm:^1.0.30001464": - version: 1.0.30001476 - resolution: "caniuse-lite@npm:1.0.30001476" - checksum: 4e8b233b349330598ac8e4b77515901011ed687b0d0042b78b06cd520ba31953dbacca62348662e912f3b67892fb12406b928caed4233ab53b1603235802bc7c +"caniuse-lite@npm:^1.0.30001702, caniuse-lite@npm:^1.0.30001741": + version: 1.0.30001741 + resolution: "caniuse-lite@npm:1.0.30001741" + checksum: 0f2e90e1418a0b35923735420a0a0f9d2aa91eb6e0e2ae955e386155b402892ed4aa9996aae644b9f0cf2cf6a2af52c9467d4f8fc1d1710e8e4c961f12bdec67 languageName: node linkType: hard -"cbor-extract@npm:^2.1.1": - version: 2.1.1 - resolution: "cbor-extract@npm:2.1.1" +"chalk@npm:4.1.2, chalk@npm:^4.1.0": + version: 4.1.2 + resolution: "chalk@npm:4.1.2" dependencies: - "@cbor-extract/cbor-extract-darwin-arm64": 2.1.1 - "@cbor-extract/cbor-extract-darwin-x64": 2.1.1 - "@cbor-extract/cbor-extract-linux-arm": 2.1.1 - "@cbor-extract/cbor-extract-linux-arm64": 2.1.1 - "@cbor-extract/cbor-extract-linux-x64": 2.1.1 - "@cbor-extract/cbor-extract-win32-x64": 2.1.1 - node-gyp: latest - node-gyp-build-optional-packages: 5.0.3 - dependenciesMeta: - "@cbor-extract/cbor-extract-darwin-arm64": - optional: true - "@cbor-extract/cbor-extract-darwin-x64": - optional: true - "@cbor-extract/cbor-extract-linux-arm": - optional: true - "@cbor-extract/cbor-extract-linux-arm64": - optional: true - "@cbor-extract/cbor-extract-linux-x64": - optional: true - "@cbor-extract/cbor-extract-win32-x64": - optional: true - bin: - download-cbor-prebuilds: bin/download-prebuilds.js - checksum: 283d9cdb3c716b171b5ad8666673f4ac373f975b51d9a38233d280c6f9381d66c6af4c011a561d993c4be6e427e34681bc3c5af194b9da0c9ab3401d424b7988 - languageName: node - linkType: hard - -"cbor-x@npm:^1.4.1": - version: 1.5.2 - resolution: "cbor-x@npm:1.5.2" - dependencies: - cbor-extract: ^2.1.1 - dependenciesMeta: - cbor-extract: - optional: true - checksum: 2c473622f61a3b2a1ff5fb493e2db00b8cd02d59704191c9f3af21ad97ec0019360ea1301fc18f35eb4138bc737986d04ee6f094a6b2dc71e6b4c69c6f584c0c + ansi-styles: ^4.1.0 + supports-color: ^7.1.0 + checksum: fe75c9d5c76a7a98d45495b91b2172fa3b7a09e0cc9370e5c8feb1c567b85c4288e2b3fded7cfdd7359ac28d6b3844feb8b82b8686842e93d23c827c417e83fc languageName: node linkType: hard @@ -2448,17 +3032,7 @@ __metadata: languageName: node linkType: hard -"chalk@npm:^4.1.0, chalk@npm:^4.1.2": - version: 4.1.2 - resolution: "chalk@npm:4.1.2" - dependencies: - ansi-styles: ^4.1.0 - supports-color: ^7.1.0 - checksum: fe75c9d5c76a7a98d45495b91b2172fa3b7a09e0cc9370e5c8feb1c567b85c4288e2b3fded7cfdd7359ac28d6b3844feb8b82b8686842e93d23c827c417e83fc - languageName: node - linkType: hard - -"chokidar@npm:>=3.0.0 <4.0.0, chokidar@npm:^3.5.0, chokidar@npm:^3.5.2, chokidar@npm:^3.5.3": +"chokidar@npm:^3.5.0, chokidar@npm:^3.5.2": version: 3.5.3 resolution: "chokidar@npm:3.5.3" dependencies: @@ -2477,6 +3051,15 @@ __metadata: languageName: node linkType: hard +"chokidar@npm:^4.0.0, chokidar@npm:^4.0.3": + version: 4.0.3 + resolution: "chokidar@npm:4.0.3" + dependencies: + readdirp: ^4.0.1 + checksum: a8765e452bbafd04f3f2fad79f04222dd65f43161488bb6014a41099e6ca18d166af613d59a90771908c1c823efa3f46ba36b86ac50b701c20c1b9908c5fe36e + languageName: node + linkType: hard + "chownr@npm:^2.0.0": version: 2.0.0 resolution: "chownr@npm:2.0.0" @@ -2491,10 +3074,10 @@ __metadata: languageName: node linkType: hard -"classnames@npm:^2.3.2": - version: 2.3.2 - resolution: "classnames@npm:2.3.2" - checksum: 2c62199789618d95545c872787137262e741f9db13328e216b093eea91c85ef2bfb152c1f9e63027204e2559a006a92eb74147d46c800a9f96297ae1d9f96f4e +"classnames@npm:^2.5.1": + version: 2.5.1 + resolution: "classnames@npm:2.5.1" + checksum: da424a8a6f3a96a2e87d01a432ba19315503294ac7e025f9fece656db6b6a0f7b5003bb1fbb51cbb0d9624d964f1b9bb35a51c73af9b2434c7b292c42231c1e5 languageName: node linkType: hard @@ -2554,6 +3137,13 @@ __metadata: languageName: node linkType: hard +"clsx@npm:^2.1.1": + version: 2.1.1 + resolution: "clsx@npm:2.1.1" + checksum: acd3e1ab9d8a433ecb3cc2f6a05ab95fe50b4a3cfc5ba47abb6cbf3754585fcb87b84e90c822a1f256c4198e3b41c7f6c391577ffc8678ad587fc0976b24fd57 + languageName: node + linkType: hard + "color-convert@npm:^1.9.0, color-convert@npm:^1.9.3": version: 1.9.3 resolution: "color-convert@npm:1.9.3" @@ -2579,7 +3169,7 @@ __metadata: languageName: node linkType: hard -"color-name@npm:^1.0.0, color-name@npm:^1.1.4, color-name@npm:~1.1.4": +"color-name@npm:^1.0.0, color-name@npm:~1.1.4": version: 1.1.4 resolution: "color-name@npm:1.1.4" checksum: b0445859521eb4021cd0fb0cc1a75cecf67fceecae89b63f62b201cca8d345baf8b952c966862a9d9a2632987d4f6581f0ec8d957dfacece86f0a7919316f610 @@ -2615,7 +3205,7 @@ __metadata: languageName: node linkType: hard -"colord@npm:^2.9.1": +"colord@npm:^2.9.1, colord@npm:^2.9.3": version: 2.9.3 resolution: "colord@npm:2.9.3" checksum: 95d909bfbcfd8d5605cbb5af56f2d1ce2b323990258fd7c0d2eb0e6d3bb177254d7fb8213758db56bb4ede708964f78c6b992b326615f81a18a6aaf11d64c650 @@ -2639,6 +3229,20 @@ __metadata: languageName: node linkType: hard +"commander@npm:^10.0.0": + version: 10.0.1 + resolution: "commander@npm:10.0.1" + checksum: 436901d64a818295803c1996cd856621a74f30b9f9e28a588e726b2b1670665bccd7c1a77007ebf328729f0139838a88a19265858a0fa7a8728c4656796db948 + languageName: node + linkType: hard + +"commander@npm:^11.1.0": + version: 11.1.0 + resolution: "commander@npm:11.1.0" + checksum: fd1a8557c6b5b622c89ecdfde703242ab7db3b628ea5d1755784c79b8e7cb0d74d65b4a262289b533359cd58e1bfc0bf50245dfbcd2954682a6f367c828b79ef + languageName: node + linkType: hard + "commander@npm:^2.19.0, commander@npm:^2.20.0": version: 2.20.3 resolution: "commander@npm:2.20.3" @@ -2646,13 +3250,6 @@ __metadata: languageName: node linkType: hard -"commander@npm:^4.0.0": - version: 4.1.1 - resolution: "commander@npm:4.1.1" - checksum: d7b9913ff92cae20cb577a4ac6fcc121bd6223319e54a40f51a14740a681ad5c574fd29a57da478a5f234a6fa6c52cbf0b7c641353e03c648b1ae85ba670b977 - languageName: node - linkType: hard - "commander@npm:^7.0.0, commander@npm:^7.2.0": version: 7.2.0 resolution: "commander@npm:7.2.0" @@ -2660,13 +3257,6 @@ __metadata: languageName: node linkType: hard -"commander@npm:^8.3.0": - version: 8.3.0 - resolution: "commander@npm:8.3.0" - checksum: 0f82321821fc27b83bd409510bb9deeebcfa799ff0bf5d102128b500b7af22872c0c92cb6a0ebc5a4cf19c6b550fba9cedfa7329d18c6442a625f851377bacf0 - languageName: node - linkType: hard - "commondir@npm:^1.0.1": version: 1.0.1 resolution: "commondir@npm:1.0.1" @@ -2695,7 +3285,7 @@ __metadata: languageName: node linkType: hard -"compressible@npm:~2.0.16": +"compressible@npm:~2.0.18": version: 2.0.18 resolution: "compressible@npm:2.0.18" dependencies: @@ -2704,18 +3294,18 @@ __metadata: languageName: node linkType: hard -"compression@npm:^1.7.4": - version: 1.7.4 - resolution: "compression@npm:1.7.4" +"compression@npm:^1.8.1": + version: 1.8.1 + resolution: "compression@npm:1.8.1" dependencies: - accepts: ~1.3.5 - bytes: 3.0.0 - compressible: ~2.0.16 + bytes: 3.1.2 + compressible: ~2.0.18 debug: 2.6.9 - on-headers: ~1.0.2 - safe-buffer: 5.1.2 + negotiator: ~0.6.4 + on-headers: ~1.1.0 + safe-buffer: 5.2.1 vary: ~1.1.2 - checksum: 35c0f2eb1f28418978615dc1bc02075b34b1568f7f56c62d60f4214d4b7cc00d0f6d282b5f8a954f59872396bd770b6b15ffd8aa94c67d4bce9b8887b906999b + checksum: 906325935180cd3507d30ed898fb129deccab03689383d55536245a94610f5003923bb14c95ee6adc8d658ee13be549407eb4346ef55169045f3e41e9969808e languageName: node linkType: hard @@ -2735,36 +3325,33 @@ __metadata: languageName: node linkType: hard -"concurrently@npm:^8.2.2": - version: 8.2.2 - resolution: "concurrently@npm:8.2.2" +"concurrently@npm:^9.2.1": + version: 9.2.1 + resolution: "concurrently@npm:9.2.1" dependencies: - chalk: ^4.1.2 - date-fns: ^2.30.0 - lodash: ^4.17.21 - rxjs: ^7.8.1 - shell-quote: ^1.8.1 - spawn-command: 0.0.2 - supports-color: ^8.1.1 - tree-kill: ^1.2.2 - yargs: ^17.7.2 + chalk: 4.1.2 + rxjs: 7.8.2 + shell-quote: 1.8.3 + supports-color: 8.1.1 + tree-kill: 1.2.2 + yargs: 17.7.2 bin: conc: dist/bin/concurrently.js concurrently: dist/bin/concurrently.js - checksum: 8ac774df06869773438f1bf91025180c52d5b53139bc86cf47659136c0d97461d0579c515d848d1e945d4e3e0cafe646b2ea18af8d74259b46abddcfe39b2c6c + checksum: 95c6cdde21b6304d53005d872318805f69e153d4cedfd4d720cc5776f56fbd073b38297cfe56bacfc8fbdba9b6c38ac1233739abd25b023761fd03b896a4cea5 languageName: node linkType: hard -"connect-mongo@npm:^5.0.0": - version: 5.0.0 - resolution: "connect-mongo@npm:5.0.0" +"connect-mongo@npm:^5.1.0": + version: 5.1.0 + resolution: "connect-mongo@npm:5.1.0" dependencies: debug: ^4.3.1 kruptein: ^3.0.0 peerDependencies: express-session: ^1.17.1 - mongodb: ^5.1.0 - checksum: 3f81eca3efbdb00d1d35d73551cf2405ad1cae5b9580566880007d7bfcddeb1ad9b0e8a6850c247534bf00bf93d1941ac610aa0a2df6dea4d475195c2c402f4e + mongodb: ">= 5.1.0 < 7" + checksum: fb62bf4aedee85331dd3ce83302e8a0680b5a2cd4aa2d2aa8655e3fbf81d2b4cd16e316e92e639cfeb7f6df2b14b7a98ea1984b94fa3bf500711b737146c745b languageName: node linkType: hard @@ -2775,29 +3362,29 @@ __metadata: languageName: node linkType: hard -"content-disposition@npm:0.5.4": - version: 0.5.4 - resolution: "content-disposition@npm:0.5.4" +"content-disposition@npm:^1.0.0": + version: 1.0.0 + resolution: "content-disposition@npm:1.0.0" dependencies: safe-buffer: 5.2.1 - checksum: afb9d545e296a5171d7574fcad634b2fdf698875f4006a9dd04a3e1333880c5c0c98d47b560d01216fb6505a54a2ba6a843ee3a02ec86d7e911e8315255f56c3 + checksum: b27e2579fefe0ecf78238bb652fbc750671efce8344f0c6f05235b12433e6a965adb40906df1ac1fdde23e8f9f0e58385e44640e633165420f3f47d830ae0398 languageName: node linkType: hard -"content-type@npm:~1.0.4, content-type@npm:~1.0.5": +"content-type@npm:^1.0.5": version: 1.0.5 resolution: "content-type@npm:1.0.5" checksum: 566271e0a251642254cde0f845f9dd4f9856e52d988f4eb0d0dcffbb7a1f8ec98de7a5215fc628f3bce30fe2fb6fd2bc064b562d721658c59b544e2d34ea2766 languageName: node linkType: hard -"cookie-parser@npm:^1.4.6": - version: 1.4.6 - resolution: "cookie-parser@npm:1.4.6" +"cookie-parser@npm:^1.4.7": + version: 1.4.7 + resolution: "cookie-parser@npm:1.4.7" dependencies: - cookie: 0.4.1 + cookie: 0.7.2 cookie-signature: 1.0.6 - checksum: 1e5a63aa82e8eb4e02d2977c6902983dee87b02e87ec5ec43ac3cb1e72da354003716570cd5190c0ad9e8a454c9d3237f4ad6e2f16d0902205a96a1c72b77ba5 + checksum: 243fa13f217e793d20a57675e6552beea08c5989fcc68495d543997a31646875335e0e82d687b42dcfd466df57891d22bae7f5ba6ab33b7705ed2dd6eb989105 languageName: node linkType: hard @@ -2808,24 +3395,24 @@ __metadata: languageName: node linkType: hard -"cookie@npm:0.4.1": - version: 0.4.1 - resolution: "cookie@npm:0.4.1" - checksum: bd7c47f5d94ab70ccdfe8210cde7d725880d2fcda06d8e375afbdd82de0c8d3b73541996e9ce57d35f67f672c4ee6d60208adec06b3c5fc94cebb85196084cf8 +"cookie-signature@npm:1.0.7": + version: 1.0.7 + resolution: "cookie-signature@npm:1.0.7" + checksum: 1a62808cd30d15fb43b70e19829b64d04b0802d8ef00275b57d152de4ae6a3208ca05c197b6668d104c4d9de389e53ccc2d3bc6bcaaffd9602461417d8c40710 languageName: node linkType: hard -"cookie@npm:0.4.2": - version: 0.4.2 - resolution: "cookie@npm:0.4.2" - checksum: a00833c998bedf8e787b4c342defe5fa419abd96b32f4464f718b91022586b8f1bafbddd499288e75c037642493c83083da426c6a9080d309e3bd90fd11baa9b +"cookie-signature@npm:^1.2.1": + version: 1.2.2 + resolution: "cookie-signature@npm:1.2.2" + checksum: 1ad4f9b3907c9f3673a0f0a07c0a23da7909ac6c9204c5d80a0ec102fe50ccc45f27fdf496361840d6c132c5bb0037122c0a381f856d070183d1ebe3e5e041ff languageName: node linkType: hard -"cookie@npm:0.5.0": - version: 0.5.0 - resolution: "cookie@npm:0.5.0" - checksum: 1f4bd2ca5765f8c9689a7e8954183f5332139eb72b6ff783d8947032ec1fdf43109852c178e21a953a30c0dd42257828185be01b49d1eb1a67fd054ca588a180 +"cookie@npm:0.7.2, cookie@npm:^0.7.1": + version: 0.7.2 + resolution: "cookie@npm:0.7.2" + checksum: 9bf8555e33530affd571ea37b615ccad9b9a34febbf2c950c86787088eb00a8973690833b0f8ebd6b69b753c62669ea60cec89178c1fb007bf0749abed74f93e languageName: node linkType: hard @@ -2846,15 +3433,6 @@ __metadata: languageName: node linkType: hard -"cross-fetch@npm:^3.1.5": - version: 3.1.5 - resolution: "cross-fetch@npm:3.1.5" - dependencies: - node-fetch: 2.6.7 - checksum: f6b8c6ee3ef993ace6277fd789c71b6acf1b504fd5f5c7128df4ef2f125a429e29cd62dc8c127523f04a5f2fa4771ed80e3f3d9695617f441425045f505cf3bb - languageName: node - linkType: hard - "cross-spawn@npm:^6.0.5": version: 6.0.5 resolution: "cross-spawn@npm:6.0.5" @@ -2888,6 +3466,15 @@ __metadata: languageName: node linkType: hard +"css-declaration-sorter@npm:^7.2.0": + version: 7.2.0 + resolution: "css-declaration-sorter@npm:7.2.0" + peerDependencies: + postcss: ^8.0.9 + checksum: 69b2f63a1c7c593123fabcbb353618ed01eb75f6404da9321328fbb30d603d89c47195129fadf1dc316e1406a0881400b324c2bded9438c47196e1c96ec726dd + languageName: node + linkType: hard + "css-select@npm:^4.1.3": version: 4.3.0 resolution: "css-select@npm:4.3.0" @@ -2924,13 +3511,13 @@ __metadata: languageName: node linkType: hard -"css-tree@npm:^2.2.1": - version: 2.3.1 - resolution: "css-tree@npm:2.3.1" +"css-tree@npm:^3.0.1": + version: 3.1.0 + resolution: "css-tree@npm:3.1.0" dependencies: - mdn-data: 2.0.30 + mdn-data: 2.12.2 source-map-js: ^1.0.1 - checksum: 493cc24b5c22b05ee5314b8a0d72d8a5869491c1458017ae5ed75aeb6c3596637dbe1b11dac2548974624adec9f7a1f3a6cf40593dc1f9185eb0e8279543fbc0 + checksum: 6b8c713c22b7223c0e71179575c3bbf421a13a61641204645d6c3b560bdc4ffed8d676220bbcb83777e07b46a934ec3b1c629aa61d57422c196c8e2e7417ee1a languageName: node linkType: hard @@ -2999,42 +3586,43 @@ __metadata: languageName: node linkType: hard -"cssnano-preset-default@npm:^6.0.1": - version: 6.0.1 - resolution: "cssnano-preset-default@npm:6.0.1" +"cssnano-preset-default@npm:^7.0.9": + version: 7.0.9 + resolution: "cssnano-preset-default@npm:7.0.9" dependencies: - css-declaration-sorter: ^6.3.1 - cssnano-utils: ^4.0.0 - postcss-calc: ^9.0.0 - postcss-colormin: ^6.0.0 - postcss-convert-values: ^6.0.0 - postcss-discard-comments: ^6.0.0 - postcss-discard-duplicates: ^6.0.0 - postcss-discard-empty: ^6.0.0 - postcss-discard-overridden: ^6.0.0 - postcss-merge-longhand: ^6.0.0 - postcss-merge-rules: ^6.0.1 - postcss-minify-font-values: ^6.0.0 - postcss-minify-gradients: ^6.0.0 - postcss-minify-params: ^6.0.0 - postcss-minify-selectors: ^6.0.0 - postcss-normalize-charset: ^6.0.0 - postcss-normalize-display-values: ^6.0.0 - postcss-normalize-positions: ^6.0.0 - postcss-normalize-repeat-style: ^6.0.0 - postcss-normalize-string: ^6.0.0 - postcss-normalize-timing-functions: ^6.0.0 - postcss-normalize-unicode: ^6.0.0 - postcss-normalize-url: ^6.0.0 - postcss-normalize-whitespace: ^6.0.0 - postcss-ordered-values: ^6.0.0 - postcss-reduce-initial: ^6.0.0 - postcss-reduce-transforms: ^6.0.0 - postcss-svgo: ^6.0.0 - postcss-unique-selectors: ^6.0.0 + browserslist: ^4.25.1 + css-declaration-sorter: ^7.2.0 + cssnano-utils: ^5.0.1 + postcss-calc: ^10.1.1 + postcss-colormin: ^7.0.4 + postcss-convert-values: ^7.0.7 + postcss-discard-comments: ^7.0.4 + postcss-discard-duplicates: ^7.0.2 + postcss-discard-empty: ^7.0.1 + postcss-discard-overridden: ^7.0.1 + postcss-merge-longhand: ^7.0.5 + postcss-merge-rules: ^7.0.6 + postcss-minify-font-values: ^7.0.1 + postcss-minify-gradients: ^7.0.1 + postcss-minify-params: ^7.0.4 + postcss-minify-selectors: ^7.0.5 + postcss-normalize-charset: ^7.0.1 + postcss-normalize-display-values: ^7.0.1 + postcss-normalize-positions: ^7.0.1 + postcss-normalize-repeat-style: ^7.0.1 + postcss-normalize-string: ^7.0.1 + postcss-normalize-timing-functions: ^7.0.1 + postcss-normalize-unicode: ^7.0.4 + postcss-normalize-url: ^7.0.1 + postcss-normalize-whitespace: ^7.0.1 + postcss-ordered-values: ^7.0.2 + postcss-reduce-initial: ^7.0.4 + postcss-reduce-transforms: ^7.0.1 + postcss-svgo: ^7.1.0 + postcss-unique-selectors: ^7.0.4 peerDependencies: - postcss: ^8.2.15 - checksum: 451080ae47c93e6525c7133c36426968ee758eb9115132ba481e6b12d50775f4d086635bb2f807957e017fc9d253aa876aa64800be6b3d000ada90721b9ea410 + postcss: ^8.4.32 + checksum: 0703800ffe2cd5dca436d17731e14d708853d47a2ea4ab6617eb8fa00bdb0fab8bf76bc23b9e4359c97f0eaea2414584848569a3f3923d6c268be228cd4683da languageName: node linkType: hard @@ -3047,12 +3635,12 @@ __metadata: languageName: node linkType: hard -"cssnano-utils@npm:^4.0.0": - version: 4.0.0 - resolution: "cssnano-utils@npm:4.0.0" +"cssnano-utils@npm:^5.0.1": + version: 5.0.1 + resolution: "cssnano-utils@npm:5.0.1" peerDependencies: - postcss: ^8.2.15 - checksum: 7db9b3eb4ec7cc7b2d1a3caf8c2d3b6b067bb8404b93dc183907325db3231e396350a50e5388beda02dab03404d5e8d226977b2b87adc11768173e0259e80219 + postcss: ^8.4.32 + checksum: cdf37315d3cf9726e10ce842b18e148e4df1d1d18d292540e724d5a96994901abc631c8894328c39ab70c864449a8a83f8fc117114fdcbade204e5e65898af90 languageName: node linkType: hard @@ -3069,15 +3657,15 @@ __metadata: languageName: node linkType: hard -"cssnano@npm:^6.0.1": - version: 6.0.1 - resolution: "cssnano@npm:6.0.1" +"cssnano@npm:^7.1.1": + version: 7.1.1 + resolution: "cssnano@npm:7.1.1" dependencies: - cssnano-preset-default: ^6.0.1 - lilconfig: ^2.1.0 + cssnano-preset-default: ^7.0.9 + lilconfig: ^3.1.3 peerDependencies: - postcss: ^8.2.15 - checksum: 15e0777189edf2d4287ed3628f65d78c9934a2c0729e29811e85bd760653a0142477b3c2dde9e0a51438c509b2b926e6482215cd8d4e6704e3eb1ab38d1dba0c + postcss: ^8.4.32 + checksum: ab4fbc40ecdfb194984ef6e9d928e04070966deb94eef8f02fe69eea22efea4f01036324ee103f9da2193748ac45f79ca9a489618715e4a1e902b77863abd9b1 languageName: node linkType: hard @@ -3113,12 +3701,10 @@ __metadata: languageName: node linkType: hard -"date-fns@npm:^2.30.0": - version: 2.30.0 - resolution: "date-fns@npm:2.30.0" - dependencies: - "@babel/runtime": ^7.21.0 - checksum: f7be01523282e9bb06c0cd2693d34f245247a29098527d4420628966a2d9aad154bd0e90a6b1cf66d37adcb769cd108cf8a7bd49d76db0fb119af5cdd13644f4 +"date-fns@npm:^4.1.0": + version: 4.1.0 + resolution: "date-fns@npm:4.1.0" + checksum: fb681b242cccabed45494468f64282a7d375ea970e0adbcc5dcc92dcb7aba49b2081c2c9739d41bf71ce89ed68dd73bebfe06ca35129490704775d091895710b languageName: node linkType: hard @@ -3131,7 +3717,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4": +"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.3.1, debug@npm:^4.3.3": version: 4.3.4 resolution: "debug@npm:4.3.4" dependencies: @@ -3152,6 +3738,18 @@ __metadata: languageName: node linkType: hard +"debug@npm:^4, debug@npm:^4.3.5, debug@npm:^4.4.0": + version: 4.4.3 + resolution: "debug@npm:4.4.3" + dependencies: + ms: ^2.1.3 + peerDependenciesMeta: + supports-color: + optional: true + checksum: 4805abd570e601acdca85b6aa3757186084a45cff9b2fa6eee1f3b173caa776b45f478b2a71a572d616d2010cea9211d0ac4a02a610e4c18ac4324bde3760834 + languageName: node + linkType: hard + "debug@npm:~3.1.0": version: 3.1.0 resolution: "debug@npm:3.1.0" @@ -3206,24 +3804,12 @@ __metadata: languageName: node linkType: hard -"destroy@npm:1.2.0": - version: 1.2.0 - resolution: "destroy@npm:1.2.0" - checksum: 0acb300b7478a08b92d810ab229d5afe0d2f4399272045ab22affa0d99dbaf12637659411530a6fcd597a9bdac718fc94373a61a95b4651bbc7b83684a565e38 - languageName: node - linkType: hard - -"detect-indent@npm:^6.1.0": - version: 6.1.0 - resolution: "detect-indent@npm:6.1.0" - checksum: ab953a73c72dbd4e8fc68e4ed4bfd92c97eb6c43734af3900add963fd3a9316f3bc0578b018b24198d4c31a358571eff5f0656e81a1f3b9ad5c547d58b2d093d - languageName: node - linkType: hard - -"didyoumean@npm:^1.2.2": - version: 1.2.2 - resolution: "didyoumean@npm:1.2.2" - checksum: d5d98719d58b3c2fa59663c4c42ba9716f1fd01245c31d5fce31915bd3aa26e6aac149788e007358f778ebbd68a2256eb5973e8ca6f221df221ba060115acf2e +"detect-libc@npm:^1.0.3": + version: 1.0.3 + resolution: "detect-libc@npm:1.0.3" + bin: + detect-libc: ./bin/detect-libc.js + checksum: daaaed925ffa7889bd91d56e9624e6c8033911bb60f3a50a74a87500680652969dbaab9526d1e200a4c94acf80fc862a22131841145a0a8482d60a99c24f4a3e languageName: node linkType: hard @@ -3248,13 +3834,6 @@ __metadata: languageName: node linkType: hard -"dlv@npm:^1.1.3": - version: 1.1.3 - resolution: "dlv@npm:1.1.3" - checksum: d7381bca22ed11933a1ccf376db7a94bee2c57aa61e490f680124fa2d1cd27e94eba641d9f45be57caab4f9a6579de0983466f620a2cd6230d7ec93312105ae7 - languageName: node - linkType: hard - "dom-serializer@npm:^1.0.1": version: 1.4.1 resolution: "dom-serializer@npm:1.4.1" @@ -3324,13 +3903,31 @@ __metadata: languageName: node linkType: hard -"dotenv@npm:*, dotenv@npm:^16.0.3": +"dotenv@npm:*": version: 16.0.3 resolution: "dotenv@npm:16.0.3" checksum: afcf03f373d7a6d62c7e9afea6328e62851d627a4e73f2e12d0a8deae1cd375892004f3021883f8aec85932cd2834b091f568ced92b4774625b321db83b827f8 languageName: node linkType: hard +"dotenv@npm:^17.2.2": + version: 17.2.2 + resolution: "dotenv@npm:17.2.2" + checksum: 673825993b16a6722332b2e1f8c24b1c2ebe3dd3b81ae5df9be35f1483bf52e0b463555b09da65b756c7abee3cf55ba2ae2628c22874a899556fa787fac56019 + languageName: node + linkType: hard + +"dunder-proto@npm:^1.0.1": + version: 1.0.1 + resolution: "dunder-proto@npm:1.0.1" + dependencies: + call-bind-apply-helpers: ^1.0.1 + es-errors: ^1.3.0 + gopd: ^1.2.0 + checksum: 149207e36f07bd4941921b0ca929e3a28f1da7bd6b6ff8ff7f4e2f2e460675af4576eeba359c635723dc189b64cdd4787e0255897d5b135ccc5d15cb8685fc90 + languageName: node + linkType: hard + "duplexer@npm:^0.1.2": version: 0.1.2 resolution: "duplexer@npm:0.1.2" @@ -3361,6 +3958,13 @@ __metadata: languageName: node linkType: hard +"electron-to-chromium@npm:^1.5.218": + version: 1.5.218 + resolution: "electron-to-chromium@npm:1.5.218" + checksum: 869953636f9d7ff865c827a65e3a8e5f2b4162f1ba58389d93e19f2c945001a2e5925d2c29b49af57c2ddbbf75c6205d01d472bf0d54085c42d606b97fd76eab + languageName: node + linkType: hard + "emoji-regex@npm:^8.0.0": version: 8.0.0 resolution: "emoji-regex@npm:8.0.0" @@ -3382,17 +3986,10 @@ __metadata: languageName: node linkType: hard -"encode-utf8@npm:^1.0.3": - version: 1.0.3 - resolution: "encode-utf8@npm:1.0.3" - checksum: 550224bf2a104b1d355458c8a82e9b4ea07f9fc78387bc3a49c151b940ad26473de8dc9e121eefc4e84561cb0b46de1e4cd2bc766f72ee145e9ea9541482817f - languageName: node - linkType: hard - -"encodeurl@npm:~1.0.2": - version: 1.0.2 - resolution: "encodeurl@npm:1.0.2" - checksum: e50e3d508cdd9c4565ba72d2012e65038e5d71bdc9198cb125beb6237b5b1ade6c0d343998da9e170fb2eae52c1bed37d4d6d98a46ea423a0cddbed5ac3f780c +"encodeurl@npm:^2.0.0": + version: 2.0.0 + resolution: "encodeurl@npm:2.0.0" + checksum: abf5cd51b78082cf8af7be6785813c33b6df2068ce5191a40ca8b1afe6a86f9230af9a9ce694a5ce4665955e5c1120871826df9c128a642e09c58d592e2807fe languageName: node linkType: hard @@ -3542,6 +4139,20 @@ __metadata: languageName: node linkType: hard +"es-define-property@npm:^1.0.1": + version: 1.0.1 + resolution: "es-define-property@npm:1.0.1" + checksum: 0512f4e5d564021c9e3a644437b0155af2679d10d80f21adaf868e64d30efdfbd321631956f20f42d655fedb2e3a027da479fad3fa6048f768eb453a80a5f80a + languageName: node + linkType: hard + +"es-errors@npm:^1.3.0": + version: 1.3.0 + resolution: "es-errors@npm:1.3.0" + checksum: ec1414527a0ccacd7f15f4a3bc66e215f04f595ba23ca75cdae0927af099b5ec865f9f4d33e9d7e86f512f252876ac77d4281a7871531a50678132429b1271b5 + languageName: node + linkType: hard + "es-module-lexer@npm:^0.9.0": version: 0.9.3 resolution: "es-module-lexer@npm:0.9.3" @@ -3549,10 +4160,19 @@ __metadata: languageName: node linkType: hard -"es-module-lexer@npm:^1.0.5": - version: 1.2.1 - resolution: "es-module-lexer@npm:1.2.1" - checksum: c4145b853e1491eaa5d591e4580926d242978c38071ad3d09165c3b6d50314cc0ae3bf6e1dec81a9e53768b9299df2063d2e4a67d7742a5029ddeae6c4fc26f0 +"es-module-lexer@npm:^1.6.0": + version: 1.7.0 + resolution: "es-module-lexer@npm:1.7.0" + checksum: 7858bb76ae387fdbf8a6fccc951bf18919768309850587553eca34698b9193fbc65fab03d3d9f69163d860321fbf66adf89d5821e7f4148c7cb7d7b997259211 + languageName: node + linkType: hard + +"es-object-atoms@npm:^1.0.0, es-object-atoms@npm:^1.1.1": + version: 1.1.1 + resolution: "es-object-atoms@npm:1.1.1" + dependencies: + es-errors: ^1.3.0 + checksum: 214d3767287b12f36d3d7267ef342bbbe1e89f899cfd67040309fc65032372a8e60201410a99a1645f2f90c1912c8c49c8668066f6bdd954bcd614dda2e3da97 languageName: node linkType: hard @@ -3578,13 +4198,6 @@ __metadata: languageName: node linkType: hard -"es6-promise@npm:^3.1.2": - version: 3.3.1 - resolution: "es6-promise@npm:3.3.1" - checksum: ce4044009c2b78db18b15212338eb711cd8a4d485961bc9ec18bb24e8c1e91c96d3295b0fcf63066fc0fa1b0ade36da05e6657827d4336dece382be2429b8398 - languageName: node - linkType: hard - "esbuild-loader@npm:^2.16.0": version: 2.21.0 resolution: "esbuild-loader@npm:2.21.0" @@ -3678,33 +4291,39 @@ __metadata: languageName: node linkType: hard -"esbuild@npm:^0.17.16": - version: 0.17.16 - resolution: "esbuild@npm:0.17.16" +"esbuild@npm:^0.25.9": + version: 0.25.9 + resolution: "esbuild@npm:0.25.9" dependencies: - "@esbuild/android-arm": 0.17.16 - "@esbuild/android-arm64": 0.17.16 - "@esbuild/android-x64": 0.17.16 - "@esbuild/darwin-arm64": 0.17.16 - "@esbuild/darwin-x64": 0.17.16 - "@esbuild/freebsd-arm64": 0.17.16 - "@esbuild/freebsd-x64": 0.17.16 - "@esbuild/linux-arm": 0.17.16 - "@esbuild/linux-arm64": 0.17.16 - "@esbuild/linux-ia32": 0.17.16 - "@esbuild/linux-loong64": 0.17.16 - "@esbuild/linux-mips64el": 0.17.16 - "@esbuild/linux-ppc64": 0.17.16 - "@esbuild/linux-riscv64": 0.17.16 - "@esbuild/linux-s390x": 0.17.16 - "@esbuild/linux-x64": 0.17.16 - "@esbuild/netbsd-x64": 0.17.16 - "@esbuild/openbsd-x64": 0.17.16 - "@esbuild/sunos-x64": 0.17.16 - "@esbuild/win32-arm64": 0.17.16 - "@esbuild/win32-ia32": 0.17.16 - "@esbuild/win32-x64": 0.17.16 + "@esbuild/aix-ppc64": 0.25.9 + "@esbuild/android-arm": 0.25.9 + "@esbuild/android-arm64": 0.25.9 + "@esbuild/android-x64": 0.25.9 + "@esbuild/darwin-arm64": 0.25.9 + "@esbuild/darwin-x64": 0.25.9 + "@esbuild/freebsd-arm64": 0.25.9 + "@esbuild/freebsd-x64": 0.25.9 + "@esbuild/linux-arm": 0.25.9 + "@esbuild/linux-arm64": 0.25.9 + "@esbuild/linux-ia32": 0.25.9 + "@esbuild/linux-loong64": 0.25.9 + "@esbuild/linux-mips64el": 0.25.9 + "@esbuild/linux-ppc64": 0.25.9 + "@esbuild/linux-riscv64": 0.25.9 + "@esbuild/linux-s390x": 0.25.9 + "@esbuild/linux-x64": 0.25.9 + "@esbuild/netbsd-arm64": 0.25.9 + "@esbuild/netbsd-x64": 0.25.9 + "@esbuild/openbsd-arm64": 0.25.9 + "@esbuild/openbsd-x64": 0.25.9 + "@esbuild/openharmony-arm64": 0.25.9 + "@esbuild/sunos-x64": 0.25.9 + "@esbuild/win32-arm64": 0.25.9 + "@esbuild/win32-ia32": 0.25.9 + "@esbuild/win32-x64": 0.25.9 dependenciesMeta: + "@esbuild/aix-ppc64": + optional: true "@esbuild/android-arm": optional: true "@esbuild/android-arm64": @@ -3737,10 +4356,16 @@ __metadata: optional: true "@esbuild/linux-x64": optional: true + "@esbuild/netbsd-arm64": + optional: true "@esbuild/netbsd-x64": optional: true + "@esbuild/openbsd-arm64": + optional: true "@esbuild/openbsd-x64": optional: true + "@esbuild/openharmony-arm64": + optional: true "@esbuild/sunos-x64": optional: true "@esbuild/win32-arm64": @@ -3751,7 +4376,7 @@ __metadata: optional: true bin: esbuild: bin/esbuild - checksum: c9787d8e05b9c4f762761be31a7847b5b4492b9b997808b7098479fef9a3260f1b8ca01e9b38376b6698f4394bfe088acb4f797a697b45b965cd664e103aafa7 + checksum: 718bc15016266da5b4675c2226923cadfe014b119e5c7a9240a6fe826c01ec2e7d5492af052e1c8a03b511778187f234cef2e994e6195287945ce0a824b79974 languageName: node linkType: hard @@ -3762,7 +4387,14 @@ __metadata: languageName: node linkType: hard -"escape-html@npm:~1.0.3": +"escalade@npm:^3.2.0": + version: 3.2.0 + resolution: "escalade@npm:3.2.0" + checksum: 47b029c83de01b0d17ad99ed766347b974b0d628e848de404018f3abee728e987da0d2d370ad4574aa3d5b5bfc368754fd085d69a30f8e75903486ec4b5b709e + languageName: node + linkType: hard + +"escape-html@npm:^1.0.3": version: 1.0.3 resolution: "escape-html@npm:1.0.3" checksum: 6213ca9ae00d0ab8bccb6d8d4e0a98e76237b2410302cf7df70aaa6591d509a2a37ce8998008cbecae8fc8ffaadf3fb0229535e6a145f3ce0b211d060decbb24 @@ -3786,6 +4418,22 @@ __metadata: languageName: node linkType: hard +"esm-env@npm:^1.2.1": + version: 1.2.2 + resolution: "esm-env@npm:1.2.2" + checksum: 3fb28f6f84b33219df8bf15ea0efcb1110512199014072a19e90c2ea37316dccb6309c90230d760c4c28a324ebc5ebecf0af809cefebe7558730bd6d401c93b5 + languageName: node + linkType: hard + +"esrap@npm:^2.1.0": + version: 2.1.0 + resolution: "esrap@npm:2.1.0" + dependencies: + "@jridgewell/sourcemap-codec": ^1.4.15 + checksum: 19361da3d8b6794a26571a7ec1777c7a5e4f6d681cc5f36ec5d737e12aeb82917e2279b108d03e05d2926d6f6dadd54e441a4250c7430df6d858488aecf04606 + languageName: node + linkType: hard + "esrecurse@npm:^4.3.0": version: 4.3.0 resolution: "esrecurse@npm:4.3.0" @@ -3823,7 +4471,7 @@ __metadata: languageName: node linkType: hard -"etag@npm:~1.8.1": +"etag@npm:^1.8.1": version: 1.8.1 resolution: "etag@npm:1.8.1" checksum: 571aeb3dbe0f2bbd4e4fadbdb44f325fc75335cd5f6f6b6a091e6a06a9f25ed5392f0863c5442acb0646787446e816f13cbfc6edce5b07658541dff573cab1ff @@ -3844,67 +4492,63 @@ __metadata: languageName: node linkType: hard -"expose-loader@npm:^3.1.0": - version: 3.1.0 - resolution: "expose-loader@npm:3.1.0" +"expose-loader@npm:^4.0.0": + version: 4.1.0 + resolution: "expose-loader@npm:4.1.0" peerDependencies: webpack: ^5.0.0 - checksum: c9bc3c220f9f5e46f7897a8a884fbe3b494b7e2a7fca454dc4642ad73664367c2501dfdf8476477a1ee3fd6c32d18aae1187e428c03f310de2f465eb4157d33c + checksum: 2e5f6b85302fdaadeed9c170f2bfa063faa61921f4bd2f1a032e43c5c097e14eea225a59dd7349155ff5c4322193b20d21ed5ec5fc3554f75121b299d2d6f828 languageName: node linkType: hard -"express-session@npm:^1.17.3": - version: 1.17.3 - resolution: "express-session@npm:1.17.3" +"express-session@npm:^1.18.2": + version: 1.18.2 + resolution: "express-session@npm:1.18.2" dependencies: - cookie: 0.4.2 - cookie-signature: 1.0.6 + cookie: 0.7.2 + cookie-signature: 1.0.7 debug: 2.6.9 depd: ~2.0.0 - on-headers: ~1.0.2 + on-headers: ~1.1.0 parseurl: ~1.3.3 safe-buffer: 5.2.1 uid-safe: ~2.1.5 - checksum: 1021a793433cbc6a1b32c803fcb2daa1e03a8f50dd907e8745ae57994370315a5cfde5b6ef7b062d9a9a0754ff268844bda211c08240b3a0e01014dcf1073ec5 + checksum: 3d72db9e2eef4b399eaccb48522f604f0218aade82c2cd59e3c6cb6a6957a4e2f7d8b0039aab260c714908d596f81c4f2422ec11d856f2d2c639cdeca7d114f9 languageName: node linkType: hard -"express@npm:^4.18.2": - version: 4.18.2 - resolution: "express@npm:4.18.2" +"express@npm:^5.1.0": + version: 5.1.0 + resolution: "express@npm:5.1.0" dependencies: - accepts: ~1.3.8 - array-flatten: 1.1.1 - body-parser: 1.20.1 - content-disposition: 0.5.4 - content-type: ~1.0.4 - cookie: 0.5.0 - cookie-signature: 1.0.6 - debug: 2.6.9 - depd: 2.0.0 - encodeurl: ~1.0.2 - escape-html: ~1.0.3 - etag: ~1.8.1 - finalhandler: 1.2.0 - fresh: 0.5.2 - http-errors: 2.0.0 - merge-descriptors: 1.0.1 - methods: ~1.1.2 - on-finished: 2.4.1 - parseurl: ~1.3.3 - path-to-regexp: 0.1.7 - proxy-addr: ~2.0.7 - qs: 6.11.0 - range-parser: ~1.2.1 - safe-buffer: 5.2.1 - send: 0.18.0 - serve-static: 1.15.0 - setprototypeof: 1.2.0 - statuses: 2.0.1 - type-is: ~1.6.18 - utils-merge: 1.0.1 - vary: ~1.1.2 - checksum: 3c4b9b076879442f6b968fe53d85d9f1eeacbb4f4c41e5f16cc36d77ce39a2b0d81b3f250514982110d815b2f7173f5561367f9110fcc541f9371948e8c8b037 + accepts: ^2.0.0 + body-parser: ^2.2.0 + content-disposition: ^1.0.0 + content-type: ^1.0.5 + cookie: ^0.7.1 + cookie-signature: ^1.2.1 + debug: ^4.4.0 + encodeurl: ^2.0.0 + escape-html: ^1.0.3 + etag: ^1.8.1 + finalhandler: ^2.1.0 + fresh: ^2.0.0 + http-errors: ^2.0.0 + merge-descriptors: ^2.0.0 + mime-types: ^3.0.0 + on-finished: ^2.4.1 + once: ^1.4.0 + parseurl: ^1.3.3 + proxy-addr: ^2.0.7 + qs: ^6.14.0 + range-parser: ^1.2.1 + router: ^2.2.0 + send: ^1.1.0 + serve-static: ^2.2.0 + statuses: ^2.0.1 + type-is: ^2.0.1 + vary: ^1.1.2 + checksum: 06e6141780c6c4780111f971ce062c83d4cf4862c40b43caf1d95afcbb58d7422c560503b8c9d04c7271511525d09cbdbe940bcaad63970fd4c1b9f6fd713bdb languageName: node linkType: hard @@ -3915,19 +4559,6 @@ __metadata: languageName: node linkType: hard -"fast-glob@npm:^3.2.12": - version: 3.2.12 - resolution: "fast-glob@npm:3.2.12" - dependencies: - "@nodelib/fs.stat": ^2.0.2 - "@nodelib/fs.walk": ^1.2.3 - glob-parent: ^5.1.2 - merge2: ^1.3.0 - micromatch: ^4.0.4 - checksum: 0b1990f6ce831c7e28c4d505edcdaad8e27e88ab9fa65eedadb730438cfc7cde4910d6c975d6b7b8dc8a73da4773702ebcfcd6e3518e73938bb1383badfe01c2 - languageName: node - linkType: hard - "fast-json-stable-stringify@npm:^2.0.0": version: 2.1.0 resolution: "fast-json-stable-stringify@npm:2.1.0" @@ -3951,12 +4582,15 @@ __metadata: languageName: node linkType: hard -"fastq@npm:^1.6.0": - version: 1.15.0 - resolution: "fastq@npm:1.15.0" - dependencies: - reusify: ^1.0.4 - checksum: 0170e6bfcd5d57a70412440b8ef600da6de3b2a6c5966aeaf0a852d542daff506a0ee92d6de7679d1de82e644bce69d7a574a6c93f0b03964b5337eed75ada1a +"fdir@npm:^6.2.0": + version: 6.5.0 + resolution: "fdir@npm:6.5.0" + peerDependencies: + picomatch: ^3 || ^4 + peerDependenciesMeta: + picomatch: + optional: true + checksum: bd537daa9d3cd53887eed35efa0eab2dbb1ca408790e10e024120e7a36c6e9ae2b33710cb8381e35def01bc9c1d7eaba746f886338413e68ff6ebaee07b9a6e8 languageName: node linkType: hard @@ -3983,18 +4617,17 @@ __metadata: languageName: node linkType: hard -"finalhandler@npm:1.2.0": - version: 1.2.0 - resolution: "finalhandler@npm:1.2.0" +"finalhandler@npm:^2.1.0": + version: 2.1.0 + resolution: "finalhandler@npm:2.1.0" dependencies: - debug: 2.6.9 - encodeurl: ~1.0.2 - escape-html: ~1.0.3 - on-finished: 2.4.1 - parseurl: ~1.3.3 - statuses: 2.0.1 - unpipe: ~1.0.0 - checksum: 92effbfd32e22a7dff2994acedbd9bcc3aa646a3e919ea6a53238090e87097f8ef07cced90aa2cc421abdf993aefbdd5b00104d55c7c5479a8d00ed105b45716 + debug: ^4.4.0 + encodeurl: ^2.0.0 + escape-html: ^1.0.3 + on-finished: ^2.4.1 + parseurl: ^1.3.3 + statuses: ^2.0.1 + checksum: 27ca9cc83b1384ba37959eb95bc7e62bc0bf4d6f6af63f6d38821cf7499b113e34b23f96a2a031616817f73986f94deea67c2f558de9daf406790c181a2501df languageName: node linkType: hard @@ -4019,39 +4652,55 @@ __metadata: languageName: node linkType: hard -"flowbite-svelte@npm:^0.34.9": - version: 0.34.9 - resolution: "flowbite-svelte@npm:0.34.9" +"flowbite-datepicker@npm:^1.3.0, flowbite-datepicker@npm:^1.3.1": + version: 1.3.2 + resolution: "flowbite-datepicker@npm:1.3.2" dependencies: - "@popperjs/core": ^2.11.6 - classnames: ^2.3.2 - flowbite: ^1.6.3 + "@rollup/plugin-node-resolve": ^15.2.3 + flowbite: ^2.0.0 + checksum: 22fb7552cf96d9df25406fce0e5638be7dd8d0715cbc4521b4c1b628ec2aaf8f54e49b9e8c1479223d2d51fa99046cf0f351fe5aa11f1db8c7b4200e36f060b4 + languageName: node + linkType: hard + +"flowbite-svelte@npm:^1.13.8": + version: 1.13.8 + resolution: "flowbite-svelte@npm:1.13.8" + dependencies: + "@floating-ui/dom": ^1.7.4 + "@floating-ui/utils": ^0.2.10 + apexcharts: ^5.3.4 + clsx: ^2.1.1 + date-fns: ^4.1.0 + flowbite: ^3.1.2 + tailwind-merge: ^3.3.1 + tailwind-variants: 3.0.0 peerDependencies: - "@popperjs/core": ^2.11.6 - classnames: ^2.3.2 - flowbite: ^1.6.3 - svelte: ^3.55.1 - checksum: a628e3defc0e7415f4001e4cb5a5a6d13ec5d86007c8c198b7207bc8d215f77dedb1047f7fa6c2c5e572b73c3bfa7f6c1f50bd076a639ae4bd25b24548614665 + svelte: ^5.29.0 + tailwindcss: ^4.1.4 + checksum: 4f76134f0f0709913843abff5b19b45293c21f5b82cba2b66a7c2277e4ab99a756dc1904b692d8dc2595a1a5eb5cae228d1195bc7cdebc0273b73411789c0292 languageName: node linkType: hard -"flowbite@npm:^1.6.3": - version: 1.6.4 - resolution: "flowbite@npm:1.6.4" +"flowbite@npm:^2.0.0": + version: 2.5.2 + resolution: "flowbite@npm:2.5.2" dependencies: "@popperjs/core": ^2.9.3 + flowbite-datepicker: ^1.3.0 mini-svg-data-uri: ^1.4.3 - checksum: 926a530571678811cf93c0a2de7f4e46e5ee44f4758fc1c74badda3b1bc6863baf7a65bf86c11476d8a283c19fd9add8c3cbffc86fd8642de2b16ce9d0c382cd + checksum: 5ff9d8bbc45cac313f4c6e53370810aa8a554f15e59de9ae691b09fd33e4c193ef9464070faf8aef2d2acda21c591a0239bb1b8957091c5bef685c5bea72d45c languageName: node linkType: hard -"flowbite@npm:^1.6.5": - version: 1.6.5 - resolution: "flowbite@npm:1.6.5" +"flowbite@npm:^3.1.2": + version: 3.1.2 + resolution: "flowbite@npm:3.1.2" dependencies: "@popperjs/core": ^2.9.3 + flowbite-datepicker: ^1.3.1 mini-svg-data-uri: ^1.4.3 - checksum: b6b7da2b3c07356e47dcec0ec4365462053b8bd0b8e6a7a5126588f0deffc31d783f5e7cd5288856a4a6562dab8d2555e0ea9b2c718e1d94a5c147655a8622f5 + postcss: ^8.5.1 + checksum: ed0d87d77a2fad4f7324b381a8608c26ff6e25c68f1b50871548b68ea60bfe7570f43c052f479b3b3fb1ca6a28ed3094a1e9883e1448760f43a1be0b658ee4ee languageName: node linkType: hard @@ -4078,17 +4727,17 @@ __metadata: languageName: node linkType: hard -"fraction.js@npm:^4.2.0": - version: 4.2.0 - resolution: "fraction.js@npm:4.2.0" - checksum: 8c76a6e21dedea87109d6171a0ac77afa14205794a565d71cb10d2925f629a3922da61bf45ea52dbc30bce4d8636dc0a27213a88cbd600eab047d82f9a3a94c5 +"fraction.js@npm:^4.3.7": + version: 4.3.7 + resolution: "fraction.js@npm:4.3.7" + checksum: e1553ae3f08e3ba0e8c06e43a3ab20b319966dfb7ddb96fd9b5d0ee11a66571af7f993229c88ebbb0d4a816eb813a24ed48207b140d442a8f76f33763b8d1f3f languageName: node linkType: hard -"fresh@npm:0.5.2": - version: 0.5.2 - resolution: "fresh@npm:0.5.2" - checksum: 13ea8b08f91e669a64e3ba3a20eb79d7ca5379a81f1ff7f4310d54e2320645503cc0c78daedc93dfb6191287295f6479544a649c64d8e41a1c0fb0c221552346 +"fresh@npm:^2.0.0": + version: 2.0.0 + resolution: "fresh@npm:2.0.0" + checksum: 38b9828352c6271e2a0dd8bdd985d0100dbbc4eb8b6a03286071dd6f7d96cfaacd06d7735701ad9a95870eb3f4555e67c08db1dcfe24c2e7bb87383c72fae1d2 languageName: node linkType: hard @@ -4103,6 +4752,17 @@ __metadata: languageName: node linkType: hard +"fs-extra@npm:^11.0.0": + version: 11.3.1 + resolution: "fs-extra@npm:11.3.1" + dependencies: + graceful-fs: ^4.2.0 + jsonfile: ^6.0.1 + universalify: ^2.0.0 + checksum: 12968b8b426f298c9ddfa9c2163e828a3bdf295b222895073faaec9798286102d771f54374498b934520cab6ef900ee3d643ea53b98a82703d5c546e16975538 + languageName: node + linkType: hard + "fs-minipass@npm:^2.0.0, fs-minipass@npm:^2.1.0": version: 2.1.0 resolution: "fs-minipass@npm:2.1.0" @@ -4145,6 +4805,13 @@ __metadata: languageName: node linkType: hard +"function-bind@npm:^1.1.2": + version: 1.1.2 + resolution: "function-bind@npm:1.1.2" + checksum: 2b0ff4ce708d99715ad14a6d1f894e2a83242e4a52ccfcefaee5e40050562e5f6dafc1adbb4ce2d4ab47279a45dc736ab91ea5042d843c3c092820dfe032efb1 + languageName: node + linkType: hard + "function.prototype.name@npm:^1.1.5": version: 1.1.5 resolution: "function.prototype.name@npm:1.1.5" @@ -4207,6 +4874,34 @@ __metadata: languageName: node linkType: hard +"get-intrinsic@npm:^1.2.5, get-intrinsic@npm:^1.3.0": + version: 1.3.0 + resolution: "get-intrinsic@npm:1.3.0" + dependencies: + call-bind-apply-helpers: ^1.0.2 + es-define-property: ^1.0.1 + es-errors: ^1.3.0 + es-object-atoms: ^1.1.1 + function-bind: ^1.1.2 + get-proto: ^1.0.1 + gopd: ^1.2.0 + has-symbols: ^1.1.0 + hasown: ^2.0.2 + math-intrinsics: ^1.1.0 + checksum: 301008e4482bb9a9cb49e132b88fee093bff373b4e6def8ba219b1e96b60158a6084f273ef5cafe832e42cd93462f4accb46a618d35fe59a2b507f2388c5b79d + languageName: node + linkType: hard + +"get-proto@npm:^1.0.1": + version: 1.0.1 + resolution: "get-proto@npm:1.0.1" + dependencies: + dunder-proto: ^1.0.1 + es-object-atoms: ^1.0.0 + checksum: 4fc96afdb58ced9a67558698b91433e6b037aaa6f1493af77498d7c85b141382cf223c0e5946f334fb328ee85dfe6edd06d218eaf09556f4bc4ec6005d7f5f7b + languageName: node + linkType: hard + "get-symbol-description@npm:^1.0.0": version: 1.0.0 resolution: "get-symbol-description@npm:1.0.0" @@ -4217,7 +4912,16 @@ __metadata: languageName: node linkType: hard -"glob-parent@npm:^5.1.2, glob-parent@npm:~5.1.2": +"get-tsconfig@npm:^4.10.0": + version: 4.10.1 + resolution: "get-tsconfig@npm:4.10.1" + dependencies: + resolve-pkg-maps: ^1.0.0 + checksum: 22925debda6bd0992171a44ee79a22c32642063ba79534372c4d744e0c9154abe2c031659da0fb86bc9e73fc56a3b76b053ea5d24ca3ac3da43d2e6f7d1c3c33 + languageName: node + linkType: hard + +"glob-parent@npm:~5.1.2": version: 5.1.2 resolution: "glob-parent@npm:5.1.2" dependencies: @@ -4226,15 +4930,6 @@ __metadata: languageName: node linkType: hard -"glob-parent@npm:^6.0.2": - version: 6.0.2 - resolution: "glob-parent@npm:6.0.2" - dependencies: - is-glob: ^4.0.3 - checksum: c13ee97978bef4f55106b71e66428eb1512e71a7466ba49025fc2aec59a5bfb0954d5abd58fc5ee6c9b076eef4e1f6d3375c2e964b88466ca390da4419a786a8 - languageName: node - linkType: hard - "glob-to-regexp@npm:^0.4.1": version: 0.4.1 resolution: "glob-to-regexp@npm:0.4.1" @@ -4242,20 +4937,6 @@ __metadata: languageName: node linkType: hard -"glob@npm:7.1.6": - version: 7.1.6 - resolution: "glob@npm:7.1.6" - dependencies: - fs.realpath: ^1.0.0 - inflight: ^1.0.4 - inherits: 2 - minimatch: ^3.0.4 - once: ^1.3.0 - path-is-absolute: ^1.0.0 - checksum: 351d549dd90553b87c2d3f90ce11aed9e1093c74130440e7ae0592e11bbcd2ce7f0ebb8ba6bfe63aaf9b62166a7f4c80cb84490ae5d78408bb2572bf7d4ee0a6 - languageName: node - linkType: hard - "glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.2.0": version: 7.2.3 resolution: "glob@npm:7.2.3" @@ -4270,7 +4951,7 @@ __metadata: languageName: node linkType: hard -"glob@npm:^8.0.1, glob@npm:^8.0.3": +"glob@npm:^8.0.1": version: 8.1.0 resolution: "glob@npm:8.1.0" dependencies: @@ -4301,19 +4982,26 @@ __metadata: languageName: node linkType: hard -"graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.3, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": +"gopd@npm:^1.2.0": + version: 1.2.0 + resolution: "gopd@npm:1.2.0" + checksum: cc6d8e655e360955bdccaca51a12a474268f95bb793fc3e1f2bdadb075f28bfd1fd988dab872daf77a61d78cbaf13744bc8727a17cfb1d150d76047d805375f3 + languageName: node + linkType: hard + +"graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": version: 4.2.11 resolution: "graceful-fs@npm:4.2.11" checksum: ac85f94da92d8eb6b7f5a8b20ce65e43d66761c55ce85ac96df6865308390da45a8d3f0296dd3a663de65d30ba497bd46c696cc1e248c72b13d6d567138a4fc7 languageName: node linkType: hard -"gzip-size@npm:^6.0.0": - version: 6.0.0 - resolution: "gzip-size@npm:6.0.0" +"gzip-size@npm:^7.0.0": + version: 7.0.0 + resolution: "gzip-size@npm:7.0.0" dependencies: duplexer: ^0.1.2 - checksum: 2df97f359696ad154fc171dcb55bc883fe6e833bca7a65e457b9358f3cb6312405ed70a8da24a77c1baac0639906cd52358dc0ce2ec1a937eaa631b934c94194 + checksum: 52d0bf586307082428b99f7b04d56d756d640e1f84d4a56debf9fb8c972d9db679143b067dd4024ebef42e9f6787e9dc8b9dcad344372b9dc87e55d942276f49 languageName: node linkType: hard @@ -4335,6 +5023,24 @@ __metadata: languageName: node linkType: hard +"handlebars@npm:^4.7.8": + version: 4.7.8 + resolution: "handlebars@npm:4.7.8" + dependencies: + minimist: ^1.2.5 + neo-async: ^2.6.2 + source-map: ^0.6.1 + uglify-js: ^3.1.4 + wordwrap: ^1.0.0 + dependenciesMeta: + uglify-js: + optional: true + bin: + handlebars: bin/handlebars + checksum: 00e68bb5c183fd7b8b63322e6234b5ac8fbb960d712cb3f25587d559c2951d9642df83c04a1172c918c41bcfc81bfbd7a7718bbce93b893e0135fc99edea93ff + languageName: node + linkType: hard + "has-bigints@npm:^1.0.1, has-bigints@npm:^1.0.2": version: 1.0.2 resolution: "has-bigints@npm:1.0.2" @@ -4395,6 +5101,13 @@ __metadata: languageName: node linkType: hard +"has-symbols@npm:^1.1.0": + version: 1.1.0 + resolution: "has-symbols@npm:1.1.0" + checksum: b2316c7302a0e8ba3aaba215f834e96c22c86f192e7310bdf689dd0e6999510c89b00fbc5742571507cebf25764d68c988b3a0da217369a73596191ac0ce694b + languageName: node + linkType: hard + "has-tostringtag@npm:^1.0.0": version: 1.0.0 resolution: "has-tostringtag@npm:1.0.0" @@ -4430,6 +5143,15 @@ __metadata: languageName: node linkType: hard +"hasown@npm:^2.0.2": + version: 2.0.2 + resolution: "hasown@npm:2.0.2" + dependencies: + function-bind: ^1.1.2 + checksum: e8516f776a15149ca6c6ed2ae3110c417a00b62260e222590e54aa367cbcd6ed99122020b37b7fbdf05748df57b265e70095d7bf35a47660587619b15ffb93db + languageName: node + linkType: hard + "he@npm:^1.2.0": version: 1.2.0 resolution: "he@npm:1.2.0" @@ -4470,7 +5192,7 @@ __metadata: languageName: node linkType: hard -"http-errors@npm:2.0.0": +"http-errors@npm:2.0.0, http-errors@npm:^2.0.0": version: 2.0.0 resolution: "http-errors@npm:2.0.0" dependencies: @@ -4527,12 +5249,12 @@ __metadata: languageName: node linkType: hard -"iconv-lite@npm:0.4.24": - version: 0.4.24 - resolution: "iconv-lite@npm:0.4.24" +"iconv-lite@npm:0.7.0": + version: 0.7.0 + resolution: "iconv-lite@npm:0.7.0" dependencies: - safer-buffer: ">= 2.1.2 < 3" - checksum: bd9f120f5a5b306f0bc0b9ae1edeb1577161503f5f8252a20f1a9e56ef8775c9959fd01c55f2d3a39d9a8abaf3e30c1abeb1895f367dcbbe0a8fd1c9ca01c4f6 + safer-buffer: ">= 2.1.2 < 3.0.0" + checksum: f362a8befb95e37f29be1d1290c17e0c9d0d4ad4fa62fcfd813cc9c937ab89401abed9a011f83e10651a267abb2aa231ec7da91d843570bec873bd98489b5bf8 languageName: node linkType: hard @@ -4575,10 +5297,10 @@ __metadata: languageName: node linkType: hard -"immutable@npm:^4.0.0": - version: 4.3.0 - resolution: "immutable@npm:4.3.0" - checksum: bbd7ea99e2752e053323543d6ff1cc71a4b4614fa6121f321ca766db2bd2092f3f1e0a90784c5431350b7344a4f792fa002eac227062d59b9377b6c09063b58b +"immutable@npm:^5.0.2": + version: 5.1.3 + resolution: "immutable@npm:5.1.3" + checksum: 63a1df5f68bbcaa7b1cb17aeaa8bc327734ad7b6936afe33b157fbdb480542c95fbab2de800b4969b5d45d51f2974aa916c78fa5c0d3a48810604268e72824cc languageName: node linkType: hard @@ -4664,10 +5386,10 @@ __metadata: languageName: node linkType: hard -"ini@npm:^4.1.1": - version: 4.1.1 - resolution: "ini@npm:4.1.1" - checksum: 0e5909554074fbc31824fa5415b0f604de4a665514c96a897a77bf77353a7ad4743927321270e9d0610a9d510ccd1f3cd77422f7cc80d8f4542dbce75476fb6d +"ini@npm:^5.0.0": + version: 5.0.0 + resolution: "ini@npm:5.0.0" + checksum: a1cd2a06bf4d995b072ebe97132d8d50a6630798cc3a1c56d325d7b3aaf1f236b3301816f0079e4d47a9887f08e60a6fb95673f19bcafe4f0f9c4a5b5e30aff4 languageName: node linkType: hard @@ -4703,13 +5425,6 @@ __metadata: languageName: node linkType: hard -"ipaddr.js@npm:^2.0.1": - version: 2.0.1 - resolution: "ipaddr.js@npm:2.0.1" - checksum: dd194a394a843d470f88d17191b0948f383ed1c8e320813f850c336a0fcb5e9215d97ec26ca35ab4fbbd31392c8b3467f3e8344628029ed3710b2ff6b5d1034e - languageName: node - linkType: hard - "is-array-buffer@npm:^3.0.1, is-array-buffer@npm:^3.0.2": version: 3.0.2 resolution: "is-array-buffer@npm:3.0.2" @@ -4763,15 +5478,6 @@ __metadata: languageName: node linkType: hard -"is-builtin-module@npm:^3.2.1": - version: 3.2.1 - resolution: "is-builtin-module@npm:3.2.1" - dependencies: - builtin-modules: ^3.3.0 - checksum: e8f0ffc19a98240bda9c7ada84d846486365af88d14616e737d280d378695c8c448a621dcafc8332dbf0fcd0a17b0763b845400709963fa9151ddffece90ae88 - languageName: node - linkType: hard - "is-callable@npm:^1.1.3, is-callable@npm:^1.1.4, is-callable@npm:^1.2.7": version: 1.2.7 resolution: "is-callable@npm:1.2.7" @@ -4875,6 +5581,13 @@ __metadata: languageName: node linkType: hard +"is-promise@npm:^4.0.0": + version: 4.0.0 + resolution: "is-promise@npm:4.0.0" + checksum: 0b46517ad47b00b6358fd6553c83ec1f6ba9acd7ffb3d30a0bf519c5c69e7147c132430452351b8a9fc198f8dd6c4f76f8e6f5a7f100f8c77d57d9e0f4261a8a + languageName: node + linkType: hard + "is-reference@npm:1.2.1": version: 1.2.1 resolution: "is-reference@npm:1.2.1" @@ -4884,6 +5597,15 @@ __metadata: languageName: node linkType: hard +"is-reference@npm:^3.0.3": + version: 3.0.3 + resolution: "is-reference@npm:3.0.3" + dependencies: + "@types/estree": ^1.0.6 + checksum: 11371fb2669a8144bffb2ae9bd11b0342b7dc384c3c0f8d5996566b071614282a3a0d306fd2fd1c6b4c9078d0e2703d191b47f4f78f9ce08f464c44a3a412412 + languageName: node + linkType: hard + "is-regex@npm:^1.1.4": version: 1.1.4 resolution: "is-regex@npm:1.1.4" @@ -4998,29 +5720,22 @@ __metadata: languageName: node linkType: hard -"jiti@npm:^1.17.2": - version: 1.18.2 - resolution: "jiti@npm:1.18.2" - bin: - jiti: bin/jiti.js - checksum: 46c41cd82d01c6efdee3fc0ae9b3e86ed37457192d6366f19157d863d64961b07982ab04e9d5879576a1af99cc4d132b0b73b336094f86a5ce9fb1029ec2d29f - languageName: node - linkType: hard - -"joi@npm:^17.11.0": - version: 17.11.0 - resolution: "joi@npm:17.11.0" +"joi@npm:^18.0.1": + version: 18.0.1 + resolution: "joi@npm:18.0.1" dependencies: - "@hapi/hoek": ^9.0.0 - "@hapi/topo": ^5.0.0 - "@sideway/address": ^4.1.3 - "@sideway/formula": ^3.0.1 - "@sideway/pinpoint": ^2.0.0 - checksum: 3a4e9ecba345cdafe585e7ed8270a44b39718e11dff3749aa27e0001a63d578b75100c062be28e6f48f960b594864034e7a13833f33fbd7ad56d5ce6b617f9bf + "@hapi/address": ^5.1.1 + "@hapi/formula": ^3.0.2 + "@hapi/hoek": ^11.0.7 + "@hapi/pinpoint": ^2.0.1 + "@hapi/tlds": ^1.1.1 + "@hapi/topo": ^6.0.2 + "@standard-schema/spec": ^1.0.0 + checksum: dbf511036b4ad89e962e51e2fb393ec20a863b023b5a4fe32d0c7a8c28456f4ad05ea4a3b30f8ea37560cb4444a0d3e20ede8ee170e2edf7841ac247d3faf91e languageName: node linkType: hard -"joycon@npm:^3.0.1, joycon@npm:^3.1.1": +"joycon@npm:^3.0.1": version: 3.1.1 resolution: "joycon@npm:3.1.1" checksum: 8003c9c3fc79c5c7602b1c7e9f7a2df2e9916f046b0dbad862aa589be78c15734d11beb9fe846f5e06138df22cb2ad29961b6a986ba81c4920ce2b15a7f11067 @@ -5064,13 +5779,6 @@ __metadata: languageName: node linkType: hard -"jsonc-parser@npm:^3.2.0": - version: 3.2.0 - resolution: "jsonc-parser@npm:3.2.0" - checksum: 946dd9a5f326b745aa326d48a7257e3f4a4b62c5e98ec8e49fa2bdd8d96cef7e6febf1399f5c7016114fd1f68a1c62c6138826d5d90bc650448e3cf0951c53c7 - languageName: node - linkType: hard - "jsonfile@npm:^6.0.1": version: 6.1.0 resolution: "jsonfile@npm:6.1.0" @@ -5084,15 +5792,21 @@ __metadata: languageName: node linkType: hard -"jsonwebtoken@npm:^9.0.0": - version: 9.0.0 - resolution: "jsonwebtoken@npm:9.0.0" +"jsonwebtoken@npm:^9.0.2": + version: 9.0.2 + resolution: "jsonwebtoken@npm:9.0.2" dependencies: jws: ^3.2.2 - lodash: ^4.17.21 + lodash.includes: ^4.3.0 + lodash.isboolean: ^3.0.3 + lodash.isinteger: ^4.0.4 + lodash.isnumber: ^3.0.3 + lodash.isplainobject: ^4.0.6 + lodash.isstring: ^4.0.1 + lodash.once: ^4.0.0 ms: ^2.1.1 - semver: ^7.3.8 - checksum: b9181cecf9df99f1dc0253f91ba000a1aa4d91f5816d1608c0dba61a5623726a0bfe200b51df25de18c1a6000825d231ad7ce2788aa54fd48dcb760ad9eb9514 + semver: ^7.5.4 + checksum: fc739a6a8b33f1974f9772dca7f8493ca8df4cc31c5a09dcfdb7cff77447dcf22f4236fb2774ef3fe50df0abeb8e1c6f4c41eba82f500a804ab101e2fbc9d61a languageName: node linkType: hard @@ -5149,17 +5863,17 @@ __metadata: languageName: node linkType: hard -"lilconfig@npm:^2.0.3, lilconfig@npm:^2.0.5, lilconfig@npm:^2.0.6, lilconfig@npm:^2.1.0": +"lilconfig@npm:^2.0.3, lilconfig@npm:^2.0.5": version: 2.1.0 resolution: "lilconfig@npm:2.1.0" checksum: 8549bb352b8192375fed4a74694cd61ad293904eee33f9d4866c2192865c44c4eb35d10782966242634e0cbc1e91fe62b1247f148dc5514918e3a966da7ea117 languageName: node linkType: hard -"lines-and-columns@npm:^1.1.6": - version: 1.2.4 - resolution: "lines-and-columns@npm:1.2.4" - checksum: 0c37f9f7fa212b38912b7145e1cd16a5f3cd34d782441c3e6ca653485d326f58b3caccda66efce1c5812bde4961bbde3374fae4b0d11bf1226152337f3894aa5 +"lilconfig@npm:^3.1.3": + version: 3.1.3 + resolution: "lilconfig@npm:3.1.3" + checksum: 644eb10830350f9cdc88610f71a921f510574ed02424b57b0b3abb66ea725d7a082559552524a842f4e0272c196b88dfe1ff7d35ffcc6f45736777185cd67c9a languageName: node linkType: hard @@ -5230,6 +5944,13 @@ __metadata: languageName: node linkType: hard +"locate-character@npm:^3.0.0": + version: 3.0.0 + resolution: "locate-character@npm:3.0.0" + checksum: 2d9e9f45e2dce7464c016ed6d81ebc938bc9c656392f7d6858308ab6fdaa57bcd4b6b479291d49e7db4047e3f321ddadbe78355f349b7974b203f19674e277cc + languageName: node + linkType: hard + "locate-path@npm:^5.0.0": version: 5.0.0 resolution: "locate-path@npm:5.0.0" @@ -5246,6 +5967,48 @@ __metadata: languageName: node linkType: hard +"lodash.includes@npm:^4.3.0": + version: 4.3.0 + resolution: "lodash.includes@npm:4.3.0" + checksum: 71092c130515a67ab3bd928f57f6018434797c94def7f46aafa417771e455ce3a4834889f4267b17887d7f75297dfabd96231bf704fd2b8c5096dc4a913568b6 + languageName: node + linkType: hard + +"lodash.isboolean@npm:^3.0.3": + version: 3.0.3 + resolution: "lodash.isboolean@npm:3.0.3" + checksum: b70068b4a8b8837912b54052557b21fc4774174e3512ed3c5b94621e5aff5eb6c68089d0a386b7e801d679cd105d2e35417978a5e99071750aa2ed90bffd0250 + languageName: node + linkType: hard + +"lodash.isinteger@npm:^4.0.4": + version: 4.0.4 + resolution: "lodash.isinteger@npm:4.0.4" + checksum: 6034821b3fc61a2ffc34e7d5644bb50c5fd8f1c0121c554c21ac271911ee0c0502274852845005f8651d51e199ee2e0cfebfe40aaa49c7fe617f603a8a0b1691 + languageName: node + linkType: hard + +"lodash.isnumber@npm:^3.0.3": + version: 3.0.3 + resolution: "lodash.isnumber@npm:3.0.3" + checksum: 913784275b565346255e6ae6a6e30b760a0da70abc29f3e1f409081585875105138cda4a429ff02577e1bc0a7ae2a90e0a3079a37f3a04c3d6c5aaa532f4cab2 + languageName: node + linkType: hard + +"lodash.isplainobject@npm:^4.0.6": + version: 4.0.6 + resolution: "lodash.isplainobject@npm:4.0.6" + checksum: 29c6351f281e0d9a1d58f1a4c8f4400924b4c79f18dfc4613624d7d54784df07efaff97c1ff2659f3e085ecf4fff493300adc4837553104cef2634110b0d5337 + languageName: node + linkType: hard + +"lodash.isstring@npm:^4.0.1": + version: 4.0.1 + resolution: "lodash.isstring@npm:4.0.1" + checksum: eaac87ae9636848af08021083d796e2eea3d02e80082ab8a9955309569cb3a463ce97fd281d7dc119e402b2e7d8c54a23914b15d2fc7fff56461511dc8937ba0 + languageName: node + linkType: hard + "lodash.memoize@npm:^4.1.2": version: 4.1.2 resolution: "lodash.memoize@npm:4.1.2" @@ -5253,6 +6016,13 @@ __metadata: languageName: node linkType: hard +"lodash.once@npm:^4.0.0": + version: 4.1.1 + resolution: "lodash.once@npm:4.1.1" + checksum: d768fa9f9b4e1dc6453be99b753906f58990e0c45e7b2ca5a3b40a33111e5d17f6edf2f768786e2716af90a8e78f8f91431ab8435f761fef00f9b0c256f6d245 + languageName: node + linkType: hard + "lodash.uniq@npm:^4.5.0": version: 4.5.0 resolution: "lodash.uniq@npm:4.5.0" @@ -5304,12 +6074,12 @@ __metadata: languageName: node linkType: hard -"magic-string@npm:^0.27.0": - version: 0.27.0 - resolution: "magic-string@npm:0.27.0" +"magic-string@npm:^0.30.11, magic-string@npm:^0.30.3": + version: 0.30.19 + resolution: "magic-string@npm:0.30.19" dependencies: - "@jridgewell/sourcemap-codec": ^1.4.13 - checksum: 273faaa50baadb7a2df6e442eac34ad611304fc08fe16e24fe2e472fd944bfcb73ffb50d2dc972dc04e92784222002af46868cb9698b1be181c81830fd95a13e + "@jridgewell/sourcemap-codec": ^1.5.5 + checksum: f360b87febeceddb35238e55963b70ef68381688c1aada6d842833a7be440a08cb0a8776e23b5e4e34785edc6b42b92dc08c829f43ecdb58547122f3fd79fdc7 languageName: node linkType: hard @@ -5382,6 +6152,13 @@ __metadata: languageName: node linkType: hard +"math-intrinsics@npm:^1.1.0": + version: 1.1.0 + resolution: "math-intrinsics@npm:1.1.0" + checksum: 0e513b29d120f478c85a70f49da0b8b19bc638975eca466f2eeae0071f3ad00454c621bf66e16dd435896c208e719fc91ad79bbfba4e400fe0b372e7c1c9c9a2 + languageName: node + linkType: hard + "mdn-data@npm:2.0.14": version: 2.0.14 resolution: "mdn-data@npm:2.0.14" @@ -5396,10 +6173,10 @@ __metadata: languageName: node linkType: hard -"mdn-data@npm:2.0.30": - version: 2.0.30 - resolution: "mdn-data@npm:2.0.30" - checksum: d6ac5ac7439a1607df44b22738ecf83f48e66a0874e4482d6424a61c52da5cde5750f1d1229b6f5fa1b80a492be89465390da685b11f97d62b8adcc6e88189aa +"mdn-data@npm:2.12.2": + version: 2.12.2 + resolution: "mdn-data@npm:2.12.2" + checksum: 77f38c180292cfbbd41c06641a27940cc293c08f47faa98f80bf64f98bb1b2a804df371e864e31a1ea97bdf181c0b0f85a2d96d1a6261f43c427b32222f33f1f languageName: node linkType: hard @@ -5410,10 +6187,10 @@ __metadata: languageName: node linkType: hard -"media-typer@npm:0.3.0": - version: 0.3.0 - resolution: "media-typer@npm:0.3.0" - checksum: af1b38516c28ec95d6b0826f6c8f276c58aec391f76be42aa07646b4e39d317723e869700933ca6995b056db4b09a78c92d5440dc23657e6764be5d28874bba1 +"media-typer@npm:^1.1.0": + version: 1.1.0 + resolution: "media-typer@npm:1.1.0" + checksum: a58dd60804df73c672942a7253ccc06815612326dc1c0827984b1a21704466d7cde351394f47649e56cf7415e6ee2e26e000e81b51b3eebb5a93540e8bf93cbd languageName: node linkType: hard @@ -5431,10 +6208,10 @@ __metadata: languageName: node linkType: hard -"merge-descriptors@npm:1.0.1": - version: 1.0.1 - resolution: "merge-descriptors@npm:1.0.1" - checksum: 5abc259d2ae25bb06d19ce2b94a21632583c74e2a9109ee1ba7fd147aa7362b380d971e0251069f8b3eb7d48c21ac839e21fa177b335e82c76ec172e30c31a26 +"merge-descriptors@npm:^2.0.0": + version: 2.0.0 + resolution: "merge-descriptors@npm:2.0.0" + checksum: e383332e700a94682d0125a36c8be761142a1320fc9feeb18e6e36647c9edf064271645f5669b2c21cf352116e561914fd8aa831b651f34db15ef4038c86696a languageName: node linkType: hard @@ -5445,21 +6222,7 @@ __metadata: languageName: node linkType: hard -"merge2@npm:^1.3.0": - version: 1.4.1 - resolution: "merge2@npm:1.4.1" - checksum: 7268db63ed5169466540b6fb947aec313200bcf6d40c5ab722c22e242f651994619bcd85601602972d3c85bd2cc45a358a4c61937e9f11a061919a1da569b0c2 - languageName: node - linkType: hard - -"methods@npm:~1.1.2": - version: 1.1.2 - resolution: "methods@npm:1.1.2" - checksum: 0917ff4041fa8e2f2fda5425a955fe16ca411591fbd123c0d722fcf02b73971ed6f764d85f0a6f547ce49ee0221ce2c19a5fa692157931cecb422984f1dcd13a - languageName: node - linkType: hard - -"micromatch@npm:^4.0.4, micromatch@npm:^4.0.5": +"micromatch@npm:^4.0.5": version: 4.0.5 resolution: "micromatch@npm:4.0.5" dependencies: @@ -5476,7 +6239,14 @@ __metadata: languageName: node linkType: hard -"mime-types@npm:^2.1.27, mime-types@npm:~2.1.24, mime-types@npm:~2.1.34": +"mime-db@npm:^1.54.0": + version: 1.54.0 + resolution: "mime-db@npm:1.54.0" + checksum: e99aaf2f23f5bd607deb08c83faba5dd25cf2fec90a7cc5b92d8260867ee08dab65312e1a589e60093dc7796d41e5fae013268418482f1db4c7d52d0a0960ac9 + languageName: node + linkType: hard + +"mime-types@npm:^2.1.27": version: 2.1.35 resolution: "mime-types@npm:2.1.35" dependencies: @@ -5485,12 +6255,12 @@ __metadata: languageName: node linkType: hard -"mime@npm:1.6.0": - version: 1.6.0 - resolution: "mime@npm:1.6.0" - bin: - mime: cli.js - checksum: fef25e39263e6d207580bdc629f8872a3f9772c923c7f8c7e793175cee22777bbe8bba95e5d509a40aaa292d8974514ce634ae35769faa45f22d17edda5e8557 +"mime-types@npm:^3.0.0, mime-types@npm:^3.0.1": + version: 3.0.1 + resolution: "mime-types@npm:3.0.1" + dependencies: + mime-db: ^1.54.0 + checksum: 8d497ad5cb2dd1210ac7d049b5de94af0b24b45a314961e145b44389344604d54752f03bc00bf880c0da60a214be6fb6d423d318104f02c28d95dd8ebeea4fb4 languageName: node linkType: hard @@ -5503,13 +6273,6 @@ __metadata: languageName: node linkType: hard -"min-indent@npm:^1.0.0": - version: 1.0.1 - resolution: "min-indent@npm:1.0.1" - checksum: bfc6dd03c5eaf623a4963ebd94d087f6f4bbbfd8c41329a7f09706b0cb66969c4ddd336abeb587bc44bc6f08e13bf90f0b374f9d71f9f01e04adc2cd6f083ef1 - languageName: node - linkType: hard - "mini-svg-data-uri@npm:^1.4.3, mini-svg-data-uri@npm:^1.4.4": version: 1.4.4 resolution: "mini-svg-data-uri@npm:1.4.4" @@ -5553,7 +6316,7 @@ __metadata: languageName: node linkType: hard -"minimist@npm:^1.2.0, minimist@npm:^1.2.5, minimist@npm:^1.2.6": +"minimist@npm:^1.2.5": version: 1.2.8 resolution: "minimist@npm:1.2.8" checksum: 75a6d645fb122dad29c06a7597bddea977258957ed88d7a6df59b5cd3fe4a527e253e9bbf2e783e4b73657f9098b96a5fe96ab8a113655d4109108577ecf85b0 @@ -5637,17 +6400,6 @@ __metadata: languageName: node linkType: hard -"mkdirp@npm:^0.5.1": - version: 0.5.6 - resolution: "mkdirp@npm:0.5.6" - dependencies: - minimist: ^1.2.6 - bin: - mkdirp: bin/cmd.js - checksum: 0c91b721bb12c3f9af4b77ebf73604baf350e64d80df91754dc509491ae93bf238581e59c7188360cec7cb62fc4100959245a42cfe01834efedc5e9d068376c2 - languageName: node - linkType: hard - "mkdirp@npm:^1.0.3, mkdirp@npm:^1.0.4": version: 1.0.4 resolution: "mkdirp@npm:1.0.4" @@ -5664,10 +6416,10 @@ __metadata: languageName: node linkType: hard -"moment@npm:^2.29.4": - version: 2.29.4 - resolution: "moment@npm:2.29.4" - checksum: 0ec3f9c2bcba38dc2451b1daed5daded747f17610b92427bebe1d08d48d8b7bdd8d9197500b072d14e326dd0ccf3e326b9e3d07c5895d3d49e39b6803b76e80e +"moment@npm:^2.30.1": + version: 2.30.1 + resolution: "moment@npm:2.30.1" + checksum: 859236bab1e88c3e5802afcf797fc801acdbd0ee509d34ea3df6eea21eb6bcc2abd4ae4e4e64aa7c986aa6cba563c6e62806218e6412a765010712e5fa121ba6 languageName: node linkType: hard @@ -5681,6 +6433,16 @@ __metadata: languageName: node linkType: hard +"mongodb-connection-string-url@npm:^3.0.0": + version: 3.0.2 + resolution: "mongodb-connection-string-url@npm:3.0.2" + dependencies: + "@types/whatwg-url": ^11.0.2 + whatwg-url: ^14.1.0 || ^13.0.0 + checksum: 382319aa41d381ff4be9370024e3cf765ded14aa581bca7c7a171fcaae618b8d92912329b6b13898334c3b6f3cab12ae8785defad2745ca20226ceeb253ef1ae + languageName: node + linkType: hard + "mongodb@npm:*": version: 5.2.0 resolution: "mongodb@npm:5.2.0" @@ -5707,35 +6469,37 @@ __metadata: languageName: node linkType: hard -"mongodb@npm:^5.2.0": - version: 5.9.1 - resolution: "mongodb@npm:5.9.1" +"mongodb@npm:^6.0.0, mongodb@npm:^6.19.0": + version: 6.19.0 + resolution: "mongodb@npm:6.19.0" dependencies: - "@mongodb-js/saslprep": ^1.1.0 - bson: ^5.5.0 - mongodb-connection-string-url: ^2.6.0 - socks: ^2.7.1 + "@mongodb-js/saslprep": ^1.1.9 + bson: ^6.10.4 + mongodb-connection-string-url: ^3.0.0 peerDependencies: "@aws-sdk/credential-providers": ^3.188.0 - "@mongodb-js/zstd": ^1.0.0 - kerberos: ^1.0.0 || ^2.0.0 - mongodb-client-encryption: ">=2.3.0 <3" - snappy: ^7.2.2 - dependenciesMeta: - "@mongodb-js/saslprep": - optional: true + "@mongodb-js/zstd": ^1.1.0 || ^2.0.0 + gcp-metadata: ^5.2.0 + kerberos: ^2.0.1 + mongodb-client-encryption: ">=6.0.0 <7" + snappy: ^7.3.2 + socks: ^2.7.1 peerDependenciesMeta: "@aws-sdk/credential-providers": optional: true "@mongodb-js/zstd": optional: true + gcp-metadata: + optional: true kerberos: optional: true mongodb-client-encryption: optional: true snappy: optional: true - checksum: a827937120cd7eecafc0ad5657b40536774f0b09582a9363db0a192149ba20eae80a33fccf573f5ce69a20aca6759c40b4961d9d1d4de2a350c543030055e0f6 + socks: + optional: true + checksum: 76463f821085a2558e4700d28193131ccbf62717a9bc7e4847c8cf80fffaec5384301318a5287a6d79a05dee6d4cf5ce3ad14eebb19a91b7e04f00acc9efa245 languageName: node linkType: hard @@ -5760,7 +6524,7 @@ __metadata: languageName: node linkType: hard -"ms@npm:2.1.3, ms@npm:^2.0.0, ms@npm:^2.1.1": +"ms@npm:^2.0.0, ms@npm:^2.1.1, ms@npm:^2.1.3": version: 2.1.3 resolution: "ms@npm:2.1.3" checksum: aa92de608021b242401676e35cfa5aa42dd70cbdc082b916da7fb925c542173e36bce97ea3e804923fe92c0ad991434e4a38327e15a1b5b5f945d66df615ae6d @@ -5776,42 +6540,36 @@ __metadata: languageName: node linkType: hard -"mz@npm:^2.7.0": - version: 2.7.0 - resolution: "mz@npm:2.7.0" - dependencies: - any-promise: ^1.0.0 - object-assign: ^4.0.1 - thenify-all: ^1.0.0 - checksum: 8427de0ece99a07e9faed3c0c6778820d7543e3776f9a84d22cf0ec0a8eb65f6e9aee9c9d353ff9a105ff62d33a9463c6ca638974cc652ee8140cd1e35951c87 - languageName: node - linkType: hard - -"nanoid@npm:^3.3.4": - version: 3.3.6 - resolution: "nanoid@npm:3.3.6" +"nanoid@npm:^3.3.11": + version: 3.3.11 + resolution: "nanoid@npm:3.3.11" bin: nanoid: bin/nanoid.cjs - checksum: 7d0eda657002738aa5206107bd0580aead6c95c460ef1bdd0b1a87a9c7ae6277ac2e9b945306aaa5b32c6dcb7feaf462d0f552e7f8b5718abfc6ead5c94a71b3 + checksum: 3be20d8866a57a6b6d218e82549711c8352ed969f9ab3c45379da28f405363ad4c9aeb0b39e9abc101a529ca65a72ff9502b00bf74a912c4b64a9d62dfd26c29 languageName: node linkType: hard -"nanoid@npm:^3.3.6": - version: 3.3.7 - resolution: "nanoid@npm:3.3.7" - bin: - nanoid: bin/nanoid.cjs - checksum: d36c427e530713e4ac6567d488b489a36582ef89da1d6d4e3b87eded11eb10d7042a877958c6f104929809b2ab0bafa17652b076cdf84324aa75b30b722204f2 - languageName: node - linkType: hard - -"negotiator@npm:0.6.3, negotiator@npm:^0.6.3": +"negotiator@npm:^0.6.3": version: 0.6.3 resolution: "negotiator@npm:0.6.3" checksum: b8ffeb1e262eff7968fc90a2b6767b04cfd9842582a9d0ece0af7049537266e7b2506dfb1d107a32f06dd849ab2aea834d5830f7f4d0e5cb7d36e1ae55d021d9 languageName: node linkType: hard +"negotiator@npm:^1.0.0": + version: 1.0.0 + resolution: "negotiator@npm:1.0.0" + checksum: 20ebfe79b2d2e7cf9cbc8239a72662b584f71164096e6e8896c8325055497c96f6b80cd22c258e8a2f2aa382a787795ec3ee8b37b422a302c7d4381b0d5ecfbb + languageName: node + linkType: hard + +"negotiator@npm:~0.6.4": + version: 0.6.4 + resolution: "negotiator@npm:0.6.4" + checksum: 7ded10aa02a0707d1d12a9973fdb5954f98547ca7beb60e31cb3a403cc6e8f11138db7a3b0128425cf836fc85d145ec4ce983b2bdf83dca436af879c2d683510 + languageName: node + linkType: hard + "neo-async@npm:^2.6.0, neo-async@npm:^2.6.2": version: 2.6.2 resolution: "neo-async@npm:2.6.2" @@ -5835,28 +6593,12 @@ __metadata: languageName: node linkType: hard -"node-fetch@npm:2.6.7": - version: 2.6.7 - resolution: "node-fetch@npm:2.6.7" +"node-addon-api@npm:^7.0.0": + version: 7.1.1 + resolution: "node-addon-api@npm:7.1.1" dependencies: - whatwg-url: ^5.0.0 - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true - checksum: 8d816ffd1ee22cab8301c7756ef04f3437f18dace86a1dae22cf81db8ef29c0bf6655f3215cb0cdb22b420b6fe141e64b26905e7f33f9377a7fa59135ea3e10b - languageName: node - linkType: hard - -"node-gyp-build-optional-packages@npm:5.0.3": - version: 5.0.3 - resolution: "node-gyp-build-optional-packages@npm:5.0.3" - bin: - node-gyp-build-optional-packages: bin.js - node-gyp-build-optional-packages-optional: optional.js - node-gyp-build-optional-packages-test: build-test.js - checksum: be3f0235925c8361e5bc1a03848f5e24815b0df8aa90bd13f1eac91cd86264bbb8b7689ca6cd083b02c8099c7b54f9fb83066c7bb77c2389dc4eceab921f084f + node-gyp: latest + checksum: 46051999e3289f205799dfaf6bcb017055d7569090f0004811110312e2db94cb4f8654602c7eb77a60a1a05142cc2b96e1b5c56ca4622c41a5c6370787faaf30 languageName: node linkType: hard @@ -5880,6 +6622,13 @@ __metadata: languageName: node linkType: hard +"node-releases@npm:^2.0.21": + version: 2.0.21 + resolution: "node-releases@npm:2.0.21" + checksum: 191f8245e18272971650eb45151c5891313bca27507a8f634085bd8c98a9cb9492686ef6182176866ceebff049646ef6cd5fb5ca46d5b5ca00ce2c69185d84c4 + languageName: node + linkType: hard + "node-releases@npm:^2.0.8": version: 2.0.10 resolution: "node-releases@npm:2.0.10" @@ -5896,26 +6645,6 @@ __metadata: languageName: node linkType: hard -"nodemon@npm:^2.0.15": - version: 2.0.22 - resolution: "nodemon@npm:2.0.22" - dependencies: - chokidar: ^3.5.2 - debug: ^3.2.7 - ignore-by-default: ^1.0.1 - minimatch: ^3.1.2 - pstree.remy: ^1.1.8 - semver: ^5.7.1 - simple-update-notifier: ^1.0.7 - supports-color: ^5.5.0 - touch: ^3.1.0 - undefsafe: ^2.0.5 - bin: - nodemon: bin/nodemon.js - checksum: 9c987e139748f5b5c480c6c9080bdc97304ee7d29172b7b3da1a7db590b1323ad57b96346304e9b522b0e445c336dc393ccd3f9f45c73b20d476d2347890dcd0 - languageName: node - linkType: hard - "nodemon@npm:^3.0.1": version: 3.0.1 resolution: "nodemon@npm:3.0.1" @@ -5936,6 +6665,26 @@ __metadata: languageName: node linkType: hard +"nodemon@npm:^3.1.10": + version: 3.1.10 + resolution: "nodemon@npm:3.1.10" + dependencies: + chokidar: ^3.5.2 + debug: ^4 + ignore-by-default: ^1.0.1 + minimatch: ^3.1.2 + pstree.remy: ^1.1.8 + semver: ^7.5.3 + simple-update-notifier: ^2.0.0 + supports-color: ^5.5.0 + touch: ^3.1.0 + undefsafe: ^2.0.5 + bin: + nodemon: bin/nodemon.js + checksum: cdd2bcae3ad810fcc0f00a01ed3b0addb76a1328ee024e483cdcadfab7eed2d24964e3feaf7e6c83895ad6154379d5403ffcf762a87841158fd3514c50ea9ef8 + languageName: node + linkType: hard + "nopt@npm:^6.0.0": version: 6.0.0 resolution: "nopt@npm:6.0.0" @@ -6033,20 +6782,13 @@ __metadata: languageName: node linkType: hard -"object-assign@npm:^4, object-assign@npm:^4.0.1": +"object-assign@npm:^4": version: 4.1.1 resolution: "object-assign@npm:4.1.1" checksum: fcc6e4ea8c7fe48abfbb552578b1c53e0d194086e2e6bbbf59e0a536381a292f39943c6e9628af05b5528aa5e3318bb30d6b2e53cadaf5b8fe9e12c4b69af23f languageName: node linkType: hard -"object-hash@npm:^3.0.0": - version: 3.0.0 - resolution: "object-hash@npm:3.0.0" - checksum: 80b4904bb3857c52cc1bfd0b52c0352532ca12ed3b8a6ff06a90cd209dfda1b95cee059a7625eb9da29537027f68ac4619363491eedb2f5d3dddbba97494fd6c - languageName: node - linkType: hard - "object-inspect@npm:^1.12.3, object-inspect@npm:^1.9.0": version: 1.12.3 resolution: "object-inspect@npm:1.12.3" @@ -6054,6 +6796,13 @@ __metadata: languageName: node linkType: hard +"object-inspect@npm:^1.13.3": + version: 1.13.4 + resolution: "object-inspect@npm:1.13.4" + checksum: 582810c6a8d2ef988ea0a39e69e115a138dad8f42dd445383b394877e5816eb4268489f316a6f74ee9c4e0a984b3eab1028e3e79d62b1ed67c726661d55c7a8b + languageName: node + linkType: hard + "object-keys@npm:^1.1.1": version: 1.1.1 resolution: "object-keys@npm:1.1.1" @@ -6073,7 +6822,7 @@ __metadata: languageName: node linkType: hard -"on-finished@npm:2.4.1": +"on-finished@npm:^2.4.1": version: 2.4.1 resolution: "on-finished@npm:2.4.1" dependencies: @@ -6082,14 +6831,14 @@ __metadata: languageName: node linkType: hard -"on-headers@npm:~1.0.2": - version: 1.0.2 - resolution: "on-headers@npm:1.0.2" - checksum: 2bf13467215d1e540a62a75021e8b318a6cfc5d4fc53af8e8f84ad98dbcea02d506c6d24180cd62e1d769c44721ba542f3154effc1f7579a8288c9f7873ed8e5 +"on-headers@npm:~1.1.0": + version: 1.1.0 + resolution: "on-headers@npm:1.1.0" + checksum: 98aa64629f986fb8cc4517dd8bede73c980e31208cba97f4442c330959f60ced3dc6214b83420491f5111fc7c4f4343abe2ea62c85f505cf041d67850f238776 languageName: node linkType: hard -"once@npm:^1.3.0": +"once@npm:^1.3.0, once@npm:^1.4.0": version: 1.4.0 resolution: "once@npm:1.4.0" dependencies: @@ -6107,7 +6856,7 @@ __metadata: languageName: node linkType: hard -"open@npm:^8.4.0": +"open@npm:^8.0.0": version: 8.4.2 resolution: "open@npm:8.4.2" dependencies: @@ -6218,7 +6967,7 @@ __metadata: languageName: node linkType: hard -"parseurl@npm:~1.3.3": +"parseurl@npm:^1.3.3, parseurl@npm:~1.3.3": version: 1.3.3 resolution: "parseurl@npm:1.3.3" checksum: 407cee8e0a3a4c5cd472559bca8b6a45b82c124e9a4703302326e9ab60fc1081442ada4e02628efef1eb16197ddc7f8822f5a91fd7d7c86b51f530aedb17dfa2 @@ -6260,10 +7009,10 @@ __metadata: languageName: node linkType: hard -"path-to-regexp@npm:0.1.7": - version: 0.1.7 - resolution: "path-to-regexp@npm:0.1.7" - checksum: 69a14ea24db543e8b0f4353305c5eac6907917031340e5a8b37df688e52accd09e3cebfe1660b70d76b6bd89152f52183f28c74813dbf454ba1a01c82a38abce +"path-to-regexp@npm:^8.0.0": + version: 8.3.0 + resolution: "path-to-regexp@npm:8.3.0" + checksum: 73e0d3db449f9899692b10be8480bbcfa294fd575be2d09bce3e63f2f708d1fccd3aaa8591709f8b82062c528df116e118ff9df8f5c52ccc4c2443a90be73e10 languageName: node linkType: hard @@ -6276,6 +7025,13 @@ __metadata: languageName: node linkType: hard +"pathe@npm:^2.0.3": + version: 2.0.3 + resolution: "pathe@npm:2.0.3" + checksum: 0602bdd4acb54d91044e0c56f1fb63467ae7d44ab3afea1f797947b0eb2b4d1d91cf0d58d065fdb0a8ab0c4acbbd8d3a5b424983eaf10dd5285d37a16f6e3ee9 + languageName: node + linkType: hard + "picocolors@npm:^1.0.0": version: 1.0.0 resolution: "picocolors@npm:1.0.0" @@ -6283,6 +7039,13 @@ __metadata: languageName: node linkType: hard +"picocolors@npm:^1.1.1": + version: 1.1.1 + resolution: "picocolors@npm:1.1.1" + checksum: e1cf46bf84886c79055fdfa9dcb3e4711ad259949e3565154b004b260cd356c5d54b31a1437ce9782624bf766272fe6b0154f5f0c744fb7af5d454d2b60db045 + languageName: node + linkType: hard + "picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.2.2, picomatch@npm:^2.3.1": version: 2.3.1 resolution: "picomatch@npm:2.3.1" @@ -6290,6 +7053,13 @@ __metadata: languageName: node linkType: hard +"picomatch@npm:^4.0.2, picomatch@npm:^4.0.3": + version: 4.0.3 + resolution: "picomatch@npm:4.0.3" + checksum: 6817fb74eb745a71445debe1029768de55fd59a42b75606f478ee1d0dc1aa6e78b711d041a7c9d5550e042642029b7f373dc1a43b224c4b7f12d23436735dba0 + languageName: node + linkType: hard + "pidtree@npm:^0.3.0": version: 0.3.1 resolution: "pidtree@npm:0.3.1" @@ -6336,13 +7106,6 @@ __metadata: languageName: node linkType: hard -"pirates@npm:^4.0.1": - version: 4.0.5 - resolution: "pirates@npm:4.0.5" - checksum: c9994e61b85260bec6c4fc0307016340d9b0c4f4b6550a957afaaff0c9b1ad58fbbea5cfcf083860a25cb27a375442e2b0edf52e2e1e40e69934e08dcc52d227 - languageName: node - linkType: hard - "pkg-dir@npm:^4.1.0, pkg-dir@npm:^4.2.0": version: 4.2.0 resolution: "pkg-dir@npm:4.2.0" @@ -6359,6 +7122,18 @@ __metadata: languageName: node linkType: hard +"postcss-calc@npm:^10.1.1": + version: 10.1.1 + resolution: "postcss-calc@npm:10.1.1" + dependencies: + postcss-selector-parser: ^7.0.0 + postcss-value-parser: ^4.2.0 + peerDependencies: + postcss: ^8.4.38 + checksum: f68fee3a633e9d9814ac162038b5cde382425fa9259967efdf0695093025ba45c0c861c91dda24bfd0c3ce9cd450ee2074af1a855cf9df4474cfbc7b72eed13a + languageName: node + linkType: hard + "postcss-calc@npm:^8.2.3": version: 8.2.4 resolution: "postcss-calc@npm:8.2.4" @@ -6371,18 +7146,6 @@ __metadata: languageName: node linkType: hard -"postcss-calc@npm:^9.0.0": - version: 9.0.1 - resolution: "postcss-calc@npm:9.0.1" - dependencies: - postcss-selector-parser: ^6.0.11 - postcss-value-parser: ^4.2.0 - peerDependencies: - postcss: ^8.2.2 - checksum: 7327ed83bfec544ab8b3e38353baa72ff6d04378b856db4ad82dbd68ce0b73668867ef182b5d4025f9dd9aa9c64aacc50cd1bd9db8d8b51ccc4cb97866b9d72b - languageName: node - linkType: hard - "postcss-colormin@npm:^5.3.1": version: 5.3.1 resolution: "postcss-colormin@npm:5.3.1" @@ -6397,17 +7160,17 @@ __metadata: languageName: node linkType: hard -"postcss-colormin@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-colormin@npm:6.0.0" +"postcss-colormin@npm:^7.0.4": + version: 7.0.4 + resolution: "postcss-colormin@npm:7.0.4" dependencies: - browserslist: ^4.21.4 + browserslist: ^4.25.1 caniuse-api: ^3.0.0 - colord: ^2.9.1 + colord: ^2.9.3 postcss-value-parser: ^4.2.0 peerDependencies: - postcss: ^8.2.15 - checksum: f7113758df45a198f4cf310b317e5bc49fcbd2648064245a5cddcb46e892593950592d4040136bf3b0c8fd64973b0dda3b4b0865b72b5bd94af244cf52418c67 + postcss: ^8.4.32 + checksum: 6848beeb0bae3ff40ff1bf71cd438aba779422a6934b1ebce2ceecc77eecf10761ccc764b1f553bc62dbd941f2b6f9144942a1a52475ff0d9e4abfca1a860c4e languageName: node linkType: hard @@ -6423,15 +7186,15 @@ __metadata: languageName: node linkType: hard -"postcss-convert-values@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-convert-values@npm:6.0.0" +"postcss-convert-values@npm:^7.0.7": + version: 7.0.7 + resolution: "postcss-convert-values@npm:7.0.7" dependencies: - browserslist: ^4.21.4 + browserslist: ^4.25.1 postcss-value-parser: ^4.2.0 peerDependencies: - postcss: ^8.2.15 - checksum: 511ca9358148fc336808d0f58f1e6ad330b73c1a87f32581f3d541ffa66cb61f2a36c8e76d1defb7c54c577c83f11d9bf2eb0d27a83c963c315b8eb149935bd7 + postcss: ^8.4.32 + checksum: ebc6784f2ea2a25ef3bd666bce719360db69a670a295a5bfae697379f9d9b9f0c306774412c252a5b67a24f86e6ae4c7a6deadf5daf12ffcf657780901594e87 languageName: node linkType: hard @@ -6444,12 +7207,14 @@ __metadata: languageName: node linkType: hard -"postcss-discard-comments@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-discard-comments@npm:6.0.0" +"postcss-discard-comments@npm:^7.0.4": + version: 7.0.4 + resolution: "postcss-discard-comments@npm:7.0.4" + dependencies: + postcss-selector-parser: ^7.1.0 peerDependencies: - postcss: ^8.2.15 - checksum: 9be073707b5ef781c616ddd32ffd98faf14bf8b40027f341d5a4fb7989fa7b017087ad54146a370fe38295b1f2568b9f5522f4e4c1a1d09fe0e01abd9f5ae00d + postcss: ^8.4.32 + checksum: a09ac248bfbd6f2baa72b84873a876f4113df0fb5e9dd10808f6bbb310473fcd7905cc4639dbfd3ad8a5444053d42f7bb644a6934e95305820bdedc731d3c80a languageName: node linkType: hard @@ -6462,12 +7227,12 @@ __metadata: languageName: node linkType: hard -"postcss-discard-duplicates@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-discard-duplicates@npm:6.0.0" +"postcss-discard-duplicates@npm:^7.0.2": + version: 7.0.2 + resolution: "postcss-discard-duplicates@npm:7.0.2" peerDependencies: - postcss: ^8.2.15 - checksum: 999dfc652a60c96f782cc37fbe0d04a89bec88b5ed943f06555166eebf03c6ee47cd56947f1373d84c8161687d1ca23ff6badd1278b5482c506614cf617bc21d + postcss: ^8.4.32 + checksum: 2da841b5c0117528e56e1ccda28924339c03fdb93dab61b767cebb9a9e4a2a077498d00e0c97c9ec36a534f98d6f358e6236f30913c184f90d51f6d302f4f0f6 languageName: node linkType: hard @@ -6480,12 +7245,12 @@ __metadata: languageName: node linkType: hard -"postcss-discard-empty@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-discard-empty@npm:6.0.0" +"postcss-discard-empty@npm:^7.0.1": + version: 7.0.1 + resolution: "postcss-discard-empty@npm:7.0.1" peerDependencies: - postcss: ^8.2.15 - checksum: 0d6cc604719d4a70569db77de75e60b3b7e9b99a4521879f6047d71325556e9f46d6bd13aecbbd857c35f075c503c1f8b1be442329fb8e9653c24cbf2fb42f3e + postcss: ^8.4.32 + checksum: 39977000657e78202da891ae6300593e40e1c8a756f1d9707087390e47a410739c394c35e902130556efb5808e6701b3b34b89facf7a9e56533d617dd9597049 languageName: node linkType: hard @@ -6498,53 +7263,29 @@ __metadata: languageName: node linkType: hard -"postcss-discard-overridden@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-discard-overridden@npm:6.0.0" +"postcss-discard-overridden@npm:^7.0.1": + version: 7.0.1 + resolution: "postcss-discard-overridden@npm:7.0.1" peerDependencies: - postcss: ^8.2.15 - checksum: f2d244bb574cf2c0974c56a1af7131f3833e14515be99c68e6fa6fe82df47cb2c9befa413b9ec92f5f067567c682dc253980a0dede3cc697f6cc9135dfc17ec7 + postcss: ^8.4.32 + checksum: a0e67314b696591396e6bb371cdd57537e06f63e9fa0d742fe678decf600bed0cdcfa481487bce91b3732bdd7c46338f9102ccc8180c41032811e99962883715 languageName: node linkType: hard -"postcss-import@npm:^14.1.0": - version: 14.1.0 - resolution: "postcss-import@npm:14.1.0" +"postcss-import@npm:^16.1.1": + version: 16.1.1 + resolution: "postcss-import@npm:16.1.1" dependencies: postcss-value-parser: ^4.0.0 read-cache: ^1.0.0 resolve: ^1.1.7 peerDependencies: postcss: ^8.0.0 - checksum: cd45d406e90f67cdab9524352e573cc6b4462b790934a05954e929a6653ebd31288ceebc8ce3c3ed7117ae672d9ebbec57df0bceec0a56e9b259c2e71d47ca86 + checksum: 7652c42b63a2752584aa08a6e78445bd7d93f47ab392843157c3e21970595750f3c0f2eec02bd283d2820ccfbda0b4f4423debcad761cf64dd48128dcc2b33c1 languageName: node linkType: hard -"postcss-import@npm:^15.1.0": - version: 15.1.0 - resolution: "postcss-import@npm:15.1.0" - dependencies: - postcss-value-parser: ^4.0.0 - read-cache: ^1.0.0 - resolve: ^1.1.7 - peerDependencies: - postcss: ^8.0.0 - checksum: 7bd04bd8f0235429009d0022cbf00faebc885de1d017f6d12ccb1b021265882efc9302006ba700af6cab24c46bfa2f3bc590be3f9aee89d064944f171b04e2a3 - languageName: node - linkType: hard - -"postcss-js@npm:^4.0.0": - version: 4.0.1 - resolution: "postcss-js@npm:4.0.1" - dependencies: - camelcase-css: ^2.0.1 - peerDependencies: - postcss: ^8.4.21 - checksum: 5c1e83efeabeb5a42676193f4357aa9c88f4dc1b3c4a0332c132fe88932b33ea58848186db117cf473049fc233a980356f67db490bd0a7832ccba9d0b3fd3491 - languageName: node - linkType: hard - -"postcss-load-config@npm:^3.0.0, postcss-load-config@npm:^3.1.4": +"postcss-load-config@npm:^3.0.0": version: 3.1.4 resolution: "postcss-load-config@npm:3.1.4" dependencies: @@ -6574,15 +7315,15 @@ __metadata: languageName: node linkType: hard -"postcss-merge-longhand@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-merge-longhand@npm:6.0.0" +"postcss-merge-longhand@npm:^7.0.5": + version: 7.0.5 + resolution: "postcss-merge-longhand@npm:7.0.5" dependencies: postcss-value-parser: ^4.2.0 - stylehacks: ^6.0.0 + stylehacks: ^7.0.5 peerDependencies: - postcss: ^8.2.15 - checksum: 86d1eda1b845cc7bc781a18db714d8e3ed639f673a7a9f416ecae8b8822235a87724e32d06477c707b40bc2ef96a16e87d831b89188354921791fce0de50103b + postcss: ^8.4.32 + checksum: 4fd1a64e7c5e8937b4a9552bbb6ebc6edec750e20941cc3a8c5c20936fa939090f8c1e25bdc336632d72ff59011cc4157b9e101403c4c0a9d8c6b316ecff275a languageName: node linkType: hard @@ -6600,17 +7341,17 @@ __metadata: languageName: node linkType: hard -"postcss-merge-rules@npm:^6.0.1": - version: 6.0.1 - resolution: "postcss-merge-rules@npm:6.0.1" +"postcss-merge-rules@npm:^7.0.6": + version: 7.0.6 + resolution: "postcss-merge-rules@npm:7.0.6" dependencies: - browserslist: ^4.21.4 + browserslist: ^4.25.1 caniuse-api: ^3.0.0 - cssnano-utils: ^4.0.0 - postcss-selector-parser: ^6.0.5 + cssnano-utils: ^5.0.1 + postcss-selector-parser: ^7.1.0 peerDependencies: - postcss: ^8.2.15 - checksum: db003c820319181647806f087ead22598faffee745713026b5c8ea637936dc737a55fdc8d7631731879f49ba675a880dda174f21ae62c8f5aa4b0fda1a81f19a + postcss: ^8.4.32 + checksum: 2ccbe7387f1e9eaf40a1c941b1c67e051d7a0e3823492d3029a58d25d853d6e2f1aaf73e8e5932c80c61dfcd6f04c29d53e77f46ef61a6e549f25154d044a156 languageName: node linkType: hard @@ -6625,14 +7366,14 @@ __metadata: languageName: node linkType: hard -"postcss-minify-font-values@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-minify-font-values@npm:6.0.0" +"postcss-minify-font-values@npm:^7.0.1": + version: 7.0.1 + resolution: "postcss-minify-font-values@npm:7.0.1" dependencies: postcss-value-parser: ^4.2.0 peerDependencies: - postcss: ^8.2.15 - checksum: 60de1e405a8849387714980d85f30c8e3df4b7b3083850086656ef50cdaf41605426373f28c0c43dcadfd1d78816b8e425571f12a024120dced1c7e8facb5073 + postcss: ^8.4.32 + checksum: 9c61118beb2914cf0aad3a219597a5251c757e02a7d506f3addaadcd85429cf7859e108945c655ce3a2c0e66a8e6291aae695b70fa3b2af989788a09b23f1585 languageName: node linkType: hard @@ -6649,16 +7390,16 @@ __metadata: languageName: node linkType: hard -"postcss-minify-gradients@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-minify-gradients@npm:6.0.0" +"postcss-minify-gradients@npm:^7.0.1": + version: 7.0.1 + resolution: "postcss-minify-gradients@npm:7.0.1" dependencies: - colord: ^2.9.1 - cssnano-utils: ^4.0.0 + colord: ^2.9.3 + cssnano-utils: ^5.0.1 postcss-value-parser: ^4.2.0 peerDependencies: - postcss: ^8.2.15 - checksum: f2399211f78b88d122f4c7248cb2cc887b49304eb3315c7332c6216aec361113aca6fe0dac43289f70f0c3f25c97fb10cd74417aab5c2f5f51b64b1ef2c5af13 + postcss: ^8.4.32 + checksum: 0bc4cdeb310a31c6d70460126e4a41963372b46039abe144da1803bf114c13f646341b541ee6e102ec79471ee9507d9f9d1da4f9c1c6e6858db5718d7b22eb1c languageName: node linkType: hard @@ -6675,16 +7416,16 @@ __metadata: languageName: node linkType: hard -"postcss-minify-params@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-minify-params@npm:6.0.0" +"postcss-minify-params@npm:^7.0.4": + version: 7.0.4 + resolution: "postcss-minify-params@npm:7.0.4" dependencies: - browserslist: ^4.21.4 - cssnano-utils: ^4.0.0 + browserslist: ^4.25.1 + cssnano-utils: ^5.0.1 postcss-value-parser: ^4.2.0 peerDependencies: - postcss: ^8.2.15 - checksum: 1cd9e372cfa27a9849f6994b03cc031534b519299bd1e392062b524405ba76906d23261ab5c0bb505289343c8ffb6a44414265f96a3e04a28181493eb032af01 + postcss: ^8.4.32 + checksum: 888029becb986f00a5a69618be1b63228948f7734eb6dc2a31a74d93c747984dfc41044f15b09b71cd4a9e15d7fac15ccec14d20199a2631cd37f4244685a47f languageName: node linkType: hard @@ -6699,14 +7440,15 @@ __metadata: languageName: node linkType: hard -"postcss-minify-selectors@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-minify-selectors@npm:6.0.0" +"postcss-minify-selectors@npm:^7.0.5": + version: 7.0.5 + resolution: "postcss-minify-selectors@npm:7.0.5" dependencies: - postcss-selector-parser: ^6.0.5 + cssesc: ^3.0.0 + postcss-selector-parser: ^7.1.0 peerDependencies: - postcss: ^8.2.15 - checksum: 13ce0a1055fdc4571df8d289c4e5dac983e22ac9b449af2c1418ea536b9176a5354d1a487cc0047789f0981053263675d50c7db7cba99588ecb7ff0045fba818 + postcss: ^8.4.32 + checksum: 95779f39b226e90fc3dcb2ec8be4fef112559a9496122b1bd011b21ed1cc6c363b65c815adc0b9d3379601ba7433d4a5d46a730e3a803e8226ea33fd992313ce languageName: node linkType: hard @@ -6772,17 +7514,6 @@ __metadata: languageName: node linkType: hard -"postcss-nested@npm:6.0.0": - version: 6.0.0 - resolution: "postcss-nested@npm:6.0.0" - dependencies: - postcss-selector-parser: ^6.0.10 - peerDependencies: - postcss: ^8.2.14 - checksum: 2105dc52cd19747058f1a46862c9e454b5a365ac2e7135fc1015d67a8fe98ada2a8d9ee578e90f7a093bd55d3994dd913ba5ff1d5e945b4ed9a8a2992ecc8f10 - languageName: node - linkType: hard - "postcss-normalize-charset@npm:^5.1.0": version: 5.1.0 resolution: "postcss-normalize-charset@npm:5.1.0" @@ -6792,12 +7523,12 @@ __metadata: languageName: node linkType: hard -"postcss-normalize-charset@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-normalize-charset@npm:6.0.0" +"postcss-normalize-charset@npm:^7.0.1": + version: 7.0.1 + resolution: "postcss-normalize-charset@npm:7.0.1" peerDependencies: - postcss: ^8.2.15 - checksum: 186a94083f6d41dbda884bf915ff7fe9d9d19828c50dbf02a7e00c90673bec52e5962afd648220598c40940fb1ed5b93bc25697c395cd38ef30b6fd04e48580e + postcss: ^8.4.32 + checksum: bcec822491e3421b009c688473433164b5c80bbef48af4e47f704bee68f0b7ba2009aaf46788e698dd233d5f4e1cf444a4f59a901623c73f8458c2227b15db57 languageName: node linkType: hard @@ -6812,14 +7543,14 @@ __metadata: languageName: node linkType: hard -"postcss-normalize-display-values@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-normalize-display-values@npm:6.0.0" +"postcss-normalize-display-values@npm:^7.0.1": + version: 7.0.1 + resolution: "postcss-normalize-display-values@npm:7.0.1" dependencies: postcss-value-parser: ^4.2.0 peerDependencies: - postcss: ^8.2.15 - checksum: 4f8da7cf817e4c66004d3b2d88603aeadc7f9b55caca1bbba27f45e81ae8c65db8ff252488c8fd9ebb3e5c62f85e475131dcee9754346320453bc2b40865afd9 + postcss: ^8.4.32 + checksum: b92c826d39d4990264c5f92e6f60ed4cc2f838fde9618dfc9adf1dd720b6e4c723e66aa45ab90f31019ae9fdfbd1805fffb1fe74e85afbc3f7637f661bae98a8 languageName: node linkType: hard @@ -6834,14 +7565,14 @@ __metadata: languageName: node linkType: hard -"postcss-normalize-positions@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-normalize-positions@npm:6.0.0" +"postcss-normalize-positions@npm:^7.0.1": + version: 7.0.1 + resolution: "postcss-normalize-positions@npm:7.0.1" dependencies: postcss-value-parser: ^4.2.0 peerDependencies: - postcss: ^8.2.15 - checksum: 34dedb07f906b28eb77c57be34899c5c694b81b91c6bfff1e6e9a251aa8f28fea0fdb35a7cdda0fc83e4248b078343a2d76e4485c3ef87f469b24332fa1788cd + postcss: ^8.4.32 + checksum: 72b23ab87c97c155d2ec475fba8a8b968f7c7b42d055a79b267449d570c328d5ea4cb0002428cf26e9daa70c58655e0b931d2a5801cc407554d3f03a21ac041b languageName: node linkType: hard @@ -6856,14 +7587,14 @@ __metadata: languageName: node linkType: hard -"postcss-normalize-repeat-style@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-normalize-repeat-style@npm:6.0.0" +"postcss-normalize-repeat-style@npm:^7.0.1": + version: 7.0.1 + resolution: "postcss-normalize-repeat-style@npm:7.0.1" dependencies: postcss-value-parser: ^4.2.0 peerDependencies: - postcss: ^8.2.15 - checksum: a53b994bb6594f5c48bd7083a46e6a47c1cf02843bcb864d37e7919c08a6f1d7dbbfee8a6abc2afb5d15554b667abc69d696b90d43066ceb97f835e6c8272098 + postcss: ^8.4.32 + checksum: 4f2b3707e02718bdacf2f6d8eef4ce4a66b2c83c3ae4330a79f2646657892403912810230ecea712f7008476b0870eee2d57e77df07c6879f837250c08e26836 languageName: node linkType: hard @@ -6878,14 +7609,14 @@ __metadata: languageName: node linkType: hard -"postcss-normalize-string@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-normalize-string@npm:6.0.0" +"postcss-normalize-string@npm:^7.0.1": + version: 7.0.1 + resolution: "postcss-normalize-string@npm:7.0.1" dependencies: postcss-value-parser: ^4.2.0 peerDependencies: - postcss: ^8.2.15 - checksum: 3d55f31ec0d008e7c8e8db0dc03e6e4f2cf8365f6578a0929b7098753c9db3c7de56a134d011fb3c9d8af8b004f0776169194cdfa25654af4919634cdb6ba7b0 + postcss: ^8.4.32 + checksum: ef7b8cd931260ac040450a6d2ea64ee651cb44e1c89fcb27b24430d8d5a6198a741eadb583e86590bac3cbf22f85041916a41b217cbbbd7ee8ac106ba2ea3bd9 languageName: node linkType: hard @@ -6900,14 +7631,14 @@ __metadata: languageName: node linkType: hard -"postcss-normalize-timing-functions@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-normalize-timing-functions@npm:6.0.0" +"postcss-normalize-timing-functions@npm:^7.0.1": + version: 7.0.1 + resolution: "postcss-normalize-timing-functions@npm:7.0.1" dependencies: postcss-value-parser: ^4.2.0 peerDependencies: - postcss: ^8.2.15 - checksum: 67021374f8f18474788d8bc99d31af6a13efc5baf961c1e9f0c6b1e265fb21ac1ad56c489d988fcde9e0d049e9b62c8b0b350cc1e79d7d3bff9f00f7c97d6221 + postcss: ^8.4.32 + checksum: 31fb88489244334295918fa7d6af2d76c310a83abd20be0a7f1c408c54ac0c0f81b0ae7877698bf66de1f76495766e159c8871387407dfcafa0cb1a53f5f0460 languageName: node linkType: hard @@ -6923,15 +7654,15 @@ __metadata: languageName: node linkType: hard -"postcss-normalize-unicode@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-normalize-unicode@npm:6.0.0" +"postcss-normalize-unicode@npm:^7.0.4": + version: 7.0.4 + resolution: "postcss-normalize-unicode@npm:7.0.4" dependencies: - browserslist: ^4.21.4 + browserslist: ^4.25.1 postcss-value-parser: ^4.2.0 peerDependencies: - postcss: ^8.2.15 - checksum: 0f246bf5511ae2294d8ec0decda6abee58c62e301a3a8f6542fa090bb426359caee156b96cc1e7f4b3a3f2cd9f62b410a446cf101e710d8fa71c704cfb057a5d + postcss: ^8.4.32 + checksum: bbc67aa0e70ca9f783f871174c358b1d1682a58231dc890babf2261874ea55977417bdd5f11dff41be44421b1820236bfe39b651611ca1b9faad0ff1e9687bed languageName: node linkType: hard @@ -6947,14 +7678,14 @@ __metadata: languageName: node linkType: hard -"postcss-normalize-url@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-normalize-url@npm:6.0.0" +"postcss-normalize-url@npm:^7.0.1": + version: 7.0.1 + resolution: "postcss-normalize-url@npm:7.0.1" dependencies: postcss-value-parser: ^4.2.0 peerDependencies: - postcss: ^8.2.15 - checksum: 93160c02e54c45cbe8ade7122bf34e25c41ac39656b2ddb15d342ce557efc17873fc6dd1439dd8d814152ebdfbba3ee2c16601d41b085ecaad73e6f2d037cd43 + postcss: ^8.4.32 + checksum: 975dd0d1b55b637d45756ec57e554b2134f77368dd3ae09be9fa6636f2f41e72422505409d7fca75c635b9b1b8ec8ec2607d84c6c85497bbfd4e7748a2992882 languageName: node linkType: hard @@ -6969,14 +7700,14 @@ __metadata: languageName: node linkType: hard -"postcss-normalize-whitespace@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-normalize-whitespace@npm:6.0.0" +"postcss-normalize-whitespace@npm:^7.0.1": + version: 7.0.1 + resolution: "postcss-normalize-whitespace@npm:7.0.1" dependencies: postcss-value-parser: ^4.2.0 peerDependencies: - postcss: ^8.2.15 - checksum: 77940955fb0b47b46468a3e17bb9b86eb2f2c572649271a4db600b981f68c9c1ed71197b58d7a351c1b2d1aee2eb79b1e11b3021eb28604fd1a8d0ded21dfb2a + postcss: ^8.4.32 + checksum: 05a0fa74f4c8e93243053b9cc865cbddddb309b2ccb08271ca9c38ea7ece2ff43d5faa12cce87f06e40cbcf22c94443c9fa2b74ed0c6b94d72a9e67ea0381626 languageName: node linkType: hard @@ -6992,15 +7723,15 @@ __metadata: languageName: node linkType: hard -"postcss-ordered-values@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-ordered-values@npm:6.0.0" +"postcss-ordered-values@npm:^7.0.2": + version: 7.0.2 + resolution: "postcss-ordered-values@npm:7.0.2" dependencies: - cssnano-utils: ^4.0.0 + cssnano-utils: ^5.0.1 postcss-value-parser: ^4.2.0 peerDependencies: - postcss: ^8.2.15 - checksum: 162d60e9fd7d6717457194e943ba63ed6d149ae3b4f150324e65b485312be5d1c99ae140e47698e9f8943967c1575b65c922081263a8fa22a2489ed705eb0202 + postcss: ^8.4.32 + checksum: e5e45b0f8fceb7c33027191bea753d8d3cb25eda3566d53cc6b97f21f255eb066acad770e1bb3cfdd76d92f24929ca17729e6f0db1ce2bfe5552481e77c9c8a3 languageName: node linkType: hard @@ -7016,15 +7747,15 @@ __metadata: languageName: node linkType: hard -"postcss-reduce-initial@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-reduce-initial@npm:6.0.0" +"postcss-reduce-initial@npm:^7.0.4": + version: 7.0.4 + resolution: "postcss-reduce-initial@npm:7.0.4" dependencies: - browserslist: ^4.21.4 + browserslist: ^4.25.1 caniuse-api: ^3.0.0 peerDependencies: - postcss: ^8.2.15 - checksum: 988001da75b969733756d9cec9bb37cfae9a667c888c0394d8aa84af7fa6fe134cdd997b63d657900f72541310c5a396db3436367bf91908bc4c7f7ce965c511 + postcss: ^8.4.32 + checksum: a88fea6ce31c3095e689ac764a53549c0b54e4dc5789a1aa0ec5d72a350603f0700f8b20fe36b8d3e5344fa6e53793f0b7d087aa098f12bcedd4f87f4ad2d93f languageName: node linkType: hard @@ -7039,18 +7770,18 @@ __metadata: languageName: node linkType: hard -"postcss-reduce-transforms@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-reduce-transforms@npm:6.0.0" +"postcss-reduce-transforms@npm:^7.0.1": + version: 7.0.1 + resolution: "postcss-reduce-transforms@npm:7.0.1" dependencies: postcss-value-parser: ^4.2.0 peerDependencies: - postcss: ^8.2.15 - checksum: 17c27b1858897ee37a4f80af0d76c5ce895466392acac1ead75cbb71ac290ab57b209f47d5d205f6ea60c1697109f09531de005ef17d8826d545bbc02891351a + postcss: ^8.4.32 + checksum: 8b52a5866fccabb910dfdf55ab17b1bc3b6e46a698ee9c675388f4be9c22a8b98d551ae5e9dbeddf9d1b7baef2c4f1595b726390b5b6ca53a140115f57e4d1ef languageName: node linkType: hard -"postcss-selector-parser@npm:^6.0.10, postcss-selector-parser@npm:^6.0.11, postcss-selector-parser@npm:^6.0.2, postcss-selector-parser@npm:^6.0.4, postcss-selector-parser@npm:^6.0.5, postcss-selector-parser@npm:^6.0.9": +"postcss-selector-parser@npm:^6.0.2, postcss-selector-parser@npm:^6.0.4, postcss-selector-parser@npm:^6.0.5, postcss-selector-parser@npm:^6.0.9": version: 6.0.11 resolution: "postcss-selector-parser@npm:6.0.11" dependencies: @@ -7060,6 +7791,16 @@ __metadata: languageName: node linkType: hard +"postcss-selector-parser@npm:^7.0.0, postcss-selector-parser@npm:^7.1.0": + version: 7.1.0 + resolution: "postcss-selector-parser@npm:7.1.0" + dependencies: + cssesc: ^3.0.0 + util-deprecate: ^1.0.2 + checksum: 1300e7871dd60a5132ee5462cc6e94edd4f3df28462b2495ca9ff025bd83768a908e892a18fde62cae63ff63524641baa6d58c64120f04fe6884b916663ce737 + languageName: node + linkType: hard + "postcss-svgo@npm:^5.1.0": version: 5.1.0 resolution: "postcss-svgo@npm:5.1.0" @@ -7072,15 +7813,15 @@ __metadata: languageName: node linkType: hard -"postcss-svgo@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-svgo@npm:6.0.0" +"postcss-svgo@npm:^7.1.0": + version: 7.1.0 + resolution: "postcss-svgo@npm:7.1.0" dependencies: postcss-value-parser: ^4.2.0 - svgo: ^3.0.2 + svgo: ^4.0.0 peerDependencies: - postcss: ^8.2.15 - checksum: 14c68b7c275dbbbbf1f954e313ff812dacea88970165d7859c1683e2530ea51cd333372b8c0d440d4e9525768f34a8dab5f0846d3445bbb478a87a99f69e9abb + postcss: ^8.4.32 + checksum: ef067e83ff52562d2c9ba46f767012e0bdb3438bf051b092a739ff849f6df06a22d9ee87e4d9e0edb5ab82340155547550f57da21b71ac86c13513fb4f44daf8 languageName: node linkType: hard @@ -7095,14 +7836,14 @@ __metadata: languageName: node linkType: hard -"postcss-unique-selectors@npm:^6.0.0": - version: 6.0.0 - resolution: "postcss-unique-selectors@npm:6.0.0" +"postcss-unique-selectors@npm:^7.0.4": + version: 7.0.4 + resolution: "postcss-unique-selectors@npm:7.0.4" dependencies: - postcss-selector-parser: ^6.0.5 + postcss-selector-parser: ^7.1.0 peerDependencies: - postcss: ^8.2.15 - checksum: 5fbfeaf796c6442853ce3afd03ae8c306fcb83b0b7ee59cbdc9aad57a1e601e65a2a5efd1e25edaa5c7c62e05d3795f357fe95933de0868a78a5d1d1f541be34 + postcss: ^8.4.32 + checksum: b880f96fdb20037b16ae21b48f5240a4cf8585bf3133c7894dd869711b14f3a1a82bbdecd36adc78f8c34553a46fc2199ed3e92d5031b0267ff6f43894fc00f7 languageName: node linkType: hard @@ -7127,41 +7868,30 @@ __metadata: languageName: node linkType: hard -"postcss@npm:^8.0.9": - version: 8.4.21 - resolution: "postcss@npm:8.4.21" +"postcss@npm:^8.5.1, postcss@npm:^8.5.6": + version: 8.5.6 + resolution: "postcss@npm:8.5.6" dependencies: - nanoid: ^3.3.4 - picocolors: ^1.0.0 - source-map-js: ^1.0.2 - checksum: e39ac60ccd1542d4f9d93d894048aac0d686b3bb38e927d8386005718e6793dbbb46930f0a523fe382f1bbd843c6d980aaea791252bf5e176180e5a4336d9679 + nanoid: ^3.3.11 + picocolors: ^1.1.1 + source-map-js: ^1.2.1 + checksum: 20f3b5d673ffeec2b28d65436756d31ee33f65b0a8bedb3d32f556fbd5973be38c3a7fb5b959a5236c60a5db7b91b0a6b14ffaac0d717dce1b903b964ee1c1bb languageName: node linkType: hard -"postcss@npm:^8.4.31": - version: 8.4.31 - resolution: "postcss@npm:8.4.31" - dependencies: - nanoid: ^3.3.6 - picocolors: ^1.0.0 - source-map-js: ^1.0.2 - checksum: 1d8611341b073143ad90486fcdfeab49edd243377b1f51834dc4f6d028e82ce5190e4f11bb2633276864503654fb7cab28e67abdc0fbf9d1f88cad4a0ff0beea +"preact@npm:^10.27.2": + version: 10.27.2 + resolution: "preact@npm:10.27.2" + checksum: 5020d280f81cd7e4430c67ff3ec0105ed5dee00f0831ef2f067b1131bbfe7699d41421e5193cc39d0e282cedd875f88b0250fc93c74e21765656230be2672d3d languageName: node linkType: hard -"preact@npm:^10.13.2": - version: 10.13.2 - resolution: "preact@npm:10.13.2" - checksum: 3bc98aa09bcd297eb59abd7e4f3a4d499b8e345bd68b922f7678ef105ba4721dc9b9940b221e6e3443f957d51402fe407bb96ccaa0a4b65d6808ca8a3be76bfa - languageName: node - linkType: hard - -"prettier@npm:^2.8.7": - version: 2.8.7 - resolution: "prettier@npm:2.8.7" +"prettier@npm:^3.6.2": + version: 3.6.2 + resolution: "prettier@npm:3.6.2" bin: - prettier: bin-prettier.js - checksum: fdc8f2616f099f5f0d685907f4449a70595a0fc1d081a88919604375989e0d5e9168d6121d8cc6861f21990b31665828e00472544d785d5940ea08a17660c3a6 + prettier: bin/prettier.cjs + checksum: 0206f5f437892e8858f298af8850bf9d0ef1c22e21107a213ba56bfb9c2387a2020bfda244a20161d8e3dad40c6b04101609a55d370dece53d0a31893b64f861 languageName: node linkType: hard @@ -7203,7 +7933,7 @@ __metadata: languageName: node linkType: hard -"proxy-addr@npm:~2.0.7": +"proxy-addr@npm:^2.0.7": version: 2.0.7 resolution: "proxy-addr@npm:2.0.7" dependencies: @@ -7227,12 +7957,19 @@ __metadata: languageName: node linkType: hard -"pvtsutils@npm:^1.3.2": - version: 1.3.2 - resolution: "pvtsutils@npm:1.3.2" +"punycode@npm:^2.3.1": + version: 2.3.1 + resolution: "punycode@npm:2.3.1" + checksum: bb0a0ceedca4c3c57a9b981b90601579058903c62be23c5e8e843d2c2d4148a3ecf029d5133486fb0e1822b098ba8bba09e89d6b21742d02fa26bda6441a6fb2 + languageName: node + linkType: hard + +"pvtsutils@npm:^1.3.6": + version: 1.3.6 + resolution: "pvtsutils@npm:1.3.6" dependencies: - tslib: ^2.4.0 - checksum: 9b8155611363e2f40276879f2454e60204b45be0cd0482f9373f369308a2e9c76d5d74cdf661a3f5aae8022d75ea159eb0ba38ee78fc782ee3051e4722db98d0 + tslib: ^2.8.1 + checksum: 97b023b46d7b95bff004f8340efc465c1d995f35d7e97a2ef2e28d5e160f5ca47b48f42463b6be92b4341452a6b8c555feb2b1eb59ee90b97bd5d6fc86ffb186 languageName: node linkType: hard @@ -7243,40 +7980,25 @@ __metadata: languageName: node linkType: hard -"qrcode@npm:^1.5.3": - version: 1.5.3 - resolution: "qrcode@npm:1.5.3" +"qrcode@npm:^1.5.4": + version: 1.5.4 + resolution: "qrcode@npm:1.5.4" dependencies: dijkstrajs: ^1.0.1 - encode-utf8: ^1.0.3 pngjs: ^5.0.0 yargs: ^15.3.1 bin: qrcode: bin/qrcode - checksum: 9a8a20a0a9cb1d15de8e7b3ffa214e8b6d2a8b07655f25bd1b1d77f4681488f84d7bae569870c0652872d829d5f8ac4922c27a6bd14c13f0e197bf07b28dead7 + checksum: 0a162822e12c02b0333315462fd4ccad22255002130f86806773be7592aec5ef295efaffa3eb148cbf00e290839c7b610f63b0d62a0c5efc5bc52a68f4189684 languageName: node linkType: hard -"qs@npm:6.11.0": - version: 6.11.0 - resolution: "qs@npm:6.11.0" +"qs@npm:^6.14.0": + version: 6.14.0 + resolution: "qs@npm:6.14.0" dependencies: - side-channel: ^1.0.4 - checksum: 6e1f29dd5385f7488ec74ac7b6c92f4d09a90408882d0c208414a34dd33badc1a621019d4c799a3df15ab9b1d0292f97c1dd71dc7c045e69f81a8064e5af7297 - languageName: node - linkType: hard - -"queue-microtask@npm:^1.2.2": - version: 1.2.3 - resolution: "queue-microtask@npm:1.2.3" - checksum: b676f8c040cdc5b12723ad2f91414d267605b26419d5c821ff03befa817ddd10e238d22b25d604920340fd73efd8ba795465a0377c4adf45a4a41e4234e42dc4 - languageName: node - linkType: hard - -"quick-lru@npm:^5.1.1": - version: 5.1.1 - resolution: "quick-lru@npm:5.1.1" - checksum: a516faa25574be7947969883e6068dbe4aa19e8ef8e8e0fd96cddd6d36485e9106d85c0041a27153286b0770b381328f4072aa40d3b18a19f5f7d2b78b94b5ed + side-channel: ^1.1.0 + checksum: 189b52ad4e9a0da1a16aff4c58b2a554a8dad9bd7e287c7da7446059b49ca2e33a49e570480e8be406b87fccebf134f51c373cbce36c8c83859efa0c9b71d635 languageName: node linkType: hard @@ -7296,34 +8018,22 @@ __metadata: languageName: node linkType: hard -"range-parser@npm:~1.2.1": +"range-parser@npm:^1.2.1": version: 1.2.1 resolution: "range-parser@npm:1.2.1" checksum: 0a268d4fea508661cf5743dfe3d5f47ce214fd6b7dec1de0da4d669dd4ef3d2144468ebe4179049eff253d9d27e719c88dae55be64f954e80135a0cada804ec9 languageName: node linkType: hard -"raw-body@npm:2.5.1": - version: 2.5.1 - resolution: "raw-body@npm:2.5.1" +"raw-body@npm:^3.0.0": + version: 3.0.1 + resolution: "raw-body@npm:3.0.1" dependencies: bytes: 3.1.2 http-errors: 2.0.0 - iconv-lite: 0.4.24 + iconv-lite: 0.7.0 unpipe: 1.0.0 - checksum: 5362adff1575d691bb3f75998803a0ffed8c64eabeaa06e54b4ada25a0cd1b2ae7f4f5ec46565d1bec337e08b5ac90c76eaa0758de6f72a633f025d754dec29e - languageName: node - linkType: hard - -"raw-body@npm:2.5.2": - version: 2.5.2 - resolution: "raw-body@npm:2.5.2" - dependencies: - bytes: 3.1.2 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - unpipe: 1.0.0 - checksum: ba1583c8d8a48e8fbb7a873fdbb2df66ea4ff83775421bfe21ee120140949ab048200668c47d9ae3880012f6e217052690628cf679ddfbd82c9fc9358d574676 + checksum: e75e1db74337e01b78cc07f7e65692ed46aef2e0c4fb39cb25bb365a7ab04cbdb8b3541aabebe50b07a5bffec5def5674b587fd9e8fbde84c8838cbab1ad9836 languageName: node linkType: hard @@ -7358,6 +8068,13 @@ __metadata: languageName: node linkType: hard +"readdirp@npm:^4.0.1": + version: 4.1.2 + resolution: "readdirp@npm:4.1.2" + checksum: 3242ee125422cb7c0e12d51452e993f507e6ed3d8c490bc8bf3366c5cdd09167562224e429b13e9cb2b98d4b8b2b11dc100d3c73883aa92d657ade5a21ded004 + languageName: node + linkType: hard + "readdirp@npm:~3.6.0": version: 3.6.0 resolution: "readdirp@npm:3.6.0" @@ -7376,17 +8093,10 @@ __metadata: languageName: node linkType: hard -"reflect-metadata@npm:^0.1.13": - version: 0.1.13 - resolution: "reflect-metadata@npm:0.1.13" - checksum: 798d379a7b6f6455501145419505c97dd11cbc23857a386add2b9ef15963ccf15a48d9d15507afe01d4cd74116df8a213247200bac00320bd7c11ddeaa5e8fb4 - languageName: node - linkType: hard - -"regenerator-runtime@npm:^0.14.0": - version: 0.14.0 - resolution: "regenerator-runtime@npm:0.14.0" - checksum: 1c977ad82a82a4412e4f639d65d22be376d3ebdd30da2c003eeafdaaacd03fc00c2320f18120007ee700900979284fc78a9f00da7fb593f6e6eeebc673fba9a3 +"reflect-metadata@npm:^0.2.2": + version: 0.2.2 + resolution: "reflect-metadata@npm:0.2.2" + checksum: a66c7b583e4efdd8f3c3124fbff33da2d0c86d8280617516308b32b2159af7a3698c961db3246387f56f6316b1d33a608f39bb2b49d813316dfc58f6d3bf3210 languageName: node linkType: hard @@ -7438,6 +8148,13 @@ __metadata: languageName: node linkType: hard +"resolve-pkg-maps@npm:^1.0.0": + version: 1.0.0 + resolution: "resolve-pkg-maps@npm:1.0.0" + checksum: 1012afc566b3fdb190a6309cc37ef3b2dcc35dff5fa6683a9d00cd25c3247edfbc4691b91078c97adc82a29b77a2660c30d791d65dab4fc78bfc473f60289977 + languageName: node + linkType: hard + "resolve.exports@npm:^2.0.0": version: 2.0.2 resolution: "resolve.exports@npm:2.0.2" @@ -7478,24 +8195,6 @@ __metadata: languageName: node linkType: hard -"reusify@npm:^1.0.4": - version: 1.0.4 - resolution: "reusify@npm:1.0.4" - checksum: c3076ebcc22a6bc252cb0b9c77561795256c22b757f40c0d8110b1300723f15ec0fc8685e8d4ea6d7666f36c79ccc793b1939c748bf36f18f542744a4e379fcc - languageName: node - linkType: hard - -"rimraf@npm:^2.5.2": - version: 2.7.1 - resolution: "rimraf@npm:2.7.1" - dependencies: - glob: ^7.1.3 - bin: - rimraf: ./bin.js - checksum: cdc7f6eacb17927f2a075117a823e1c5951792c6498ebcce81ca8203454a811d4cf8900314154d3259bb8f0b42ab17f67396a8694a54cae3283326e57ad250cd - languageName: node - linkType: hard - "rimraf@npm:^3.0.2": version: 3.0.2 resolution: "rimraf@npm:3.0.2" @@ -7507,19 +8206,18 @@ __metadata: languageName: node linkType: hard -"rollup-plugin-esbuild@npm:^5.0.0": - version: 5.0.0 - resolution: "rollup-plugin-esbuild@npm:5.0.0" +"rollup-plugin-esbuild@npm:^6.2.1": + version: 6.2.1 + resolution: "rollup-plugin-esbuild@npm:6.2.1" dependencies: - "@rollup/pluginutils": ^5.0.1 - debug: ^4.3.4 - es-module-lexer: ^1.0.5 - joycon: ^3.1.1 - jsonc-parser: ^3.2.0 + debug: ^4.4.0 + es-module-lexer: ^1.6.0 + get-tsconfig: ^4.10.0 + unplugin-utils: ^0.2.4 peerDependencies: - esbuild: ">=0.10.1" - rollup: ^1.20.0 || ^2.0.0 || ^3.0.0 - checksum: 59b2922db370918ca97ac3862bce9a37e530a8e6332c670803b211e827de6b0efb8e06d1b4eba60af7dab42a1fd38c6aaa039c6cea321f61fb363a3abdedc28a + esbuild: ">=0.18.0" + rollup: ^1.20.0 || ^2.0.0 || ^3.0.0 || ^4.0.0 + checksum: ee6e20dc467593bb6bf5f0a9aedaf052daefe895d9fe207eea744c8d7bad86e63542a5aa8bbf00301b0f4a38be695dc793d874dc9c04463c3e1d745bf74b8991 languageName: node linkType: hard @@ -7586,63 +8284,66 @@ __metadata: languageName: node linkType: hard -"rollup-plugin-sizes@npm:^1.0.6": - version: 1.0.6 - resolution: "rollup-plugin-sizes@npm:1.0.6" +"rollup-plugin-sizes@npm:^1.1.0": + version: 1.1.0 + resolution: "rollup-plugin-sizes@npm:1.1.0" dependencies: filesize: ^9.0.0 module-details-from-path: ^1.0.3 peerDependencies: rollup: ^2 || ^3 || ^4 - checksum: 1f48fedc6163650c4ca19c1ca1ed64343d9c8d2e25d575858c9548e08c1f0f324cf183620003033a20cbc4bde09aa72769c705ffe027b7d5b2e78aee1b4edf37 + checksum: 2071c5cdcec165f5a3172fcce777b2c0c696c6a3b715e4e2b53b0fc8ca87474121668aab4fb59789d0146d81d8520b961d8c429e950479f4770cfbc79342d9a3 languageName: node linkType: hard -"rollup-plugin-svelte@npm:^7.1.4": - version: 7.1.4 - resolution: "rollup-plugin-svelte@npm:7.1.4" +"rollup-plugin-svelte@npm:^7.2.3": + version: 7.2.3 + resolution: "rollup-plugin-svelte@npm:7.2.3" dependencies: "@rollup/pluginutils": ^4.1.0 resolve.exports: ^2.0.0 peerDependencies: rollup: ">=2.0.0" svelte: ">=3.5.0" - checksum: 4eb49c8e714d58f2674c55a08f30434ff763c853c52b650d4aa677365069b2a76c0b782eb2ecd2951a04132ae6771027ee64e821a00a505c41e2dd682736eea6 + checksum: 089fa80acd27fc1e9244adca59581566cbc0fbc4d41194dbd1549cb81dc6be55d7b2235f430e202ce5a27bb5fcbe6b4e124c7f0125165d6c1ca516cf20ea3fce languageName: node linkType: hard -"rollup-plugin-typescript2@npm:^0.34.1": - version: 0.34.1 - resolution: "rollup-plugin-typescript2@npm:0.34.1" +"rollup-plugin-typescript2@npm:^0.36.0": + version: 0.36.0 + resolution: "rollup-plugin-typescript2@npm:0.36.0" dependencies: "@rollup/pluginutils": ^4.1.2 find-cache-dir: ^3.3.2 fs-extra: ^10.0.0 - semver: ^7.3.7 - tslib: ^2.4.0 + semver: ^7.5.4 + tslib: ^2.6.2 peerDependencies: rollup: ">=1.26.3" typescript: ">=2.4.0" - checksum: 107e66b9ab1aaf4b237564e500ea9de9f2d3f0a81be5139dc753fc76bbf00a1a2230eb1ec59145d2dfc4c4da9be8211f1f3e1370007efe1e24ce45a00905e558 + checksum: 199afe11f9218ad943b67138b3165c2be2cd2535926da6ed467124273f7bbb1dd779521a648a26a65073cafe43388104857a90e0fdf06ca526a6613771eb2e70 languageName: node linkType: hard -"rollup-plugin-visualizer@npm:^5.9.0": - version: 5.9.0 - resolution: "rollup-plugin-visualizer@npm:5.9.0" +"rollup-plugin-visualizer@npm:^6.0.3": + version: 6.0.3 + resolution: "rollup-plugin-visualizer@npm:6.0.3" dependencies: - open: ^8.4.0 - picomatch: ^2.3.1 + open: ^8.0.0 + picomatch: ^4.0.2 source-map: ^0.7.4 yargs: ^17.5.1 peerDependencies: - rollup: 2.x || 3.x + rolldown: 1.x || ^1.0.0-beta + rollup: 2.x || 3.x || 4.x peerDependenciesMeta: + rolldown: + optional: true rollup: optional: true bin: rollup-plugin-visualizer: dist/bin/cli.js - checksum: 362d4fac0295c14bd205dbc85c20c31f4b6c47604868da21d9565ed47e0333759f08b9fe0acb82f78221f5173ea01e4eb70d47351eb6012216afe71b5492ed5f + checksum: 96c8e57ff193d1a569246624c2344651024b8b2f7b35ceba462ff0fa6c4262de7c141e39a5dd71d4d95b009afecad01620476cca108b8031dcebd35c911732bf languageName: node linkType: hard @@ -7655,42 +8356,103 @@ __metadata: languageName: node linkType: hard -"rollup@npm:^3.20.2": - version: 3.20.2 - resolution: "rollup@npm:3.20.2" +"rollup@npm:^4.50.2": + version: 4.50.2 + resolution: "rollup@npm:4.50.2" dependencies: + "@rollup/rollup-android-arm-eabi": 4.50.2 + "@rollup/rollup-android-arm64": 4.50.2 + "@rollup/rollup-darwin-arm64": 4.50.2 + "@rollup/rollup-darwin-x64": 4.50.2 + "@rollup/rollup-freebsd-arm64": 4.50.2 + "@rollup/rollup-freebsd-x64": 4.50.2 + "@rollup/rollup-linux-arm-gnueabihf": 4.50.2 + "@rollup/rollup-linux-arm-musleabihf": 4.50.2 + "@rollup/rollup-linux-arm64-gnu": 4.50.2 + "@rollup/rollup-linux-arm64-musl": 4.50.2 + "@rollup/rollup-linux-loong64-gnu": 4.50.2 + "@rollup/rollup-linux-ppc64-gnu": 4.50.2 + "@rollup/rollup-linux-riscv64-gnu": 4.50.2 + "@rollup/rollup-linux-riscv64-musl": 4.50.2 + "@rollup/rollup-linux-s390x-gnu": 4.50.2 + "@rollup/rollup-linux-x64-gnu": 4.50.2 + "@rollup/rollup-linux-x64-musl": 4.50.2 + "@rollup/rollup-openharmony-arm64": 4.50.2 + "@rollup/rollup-win32-arm64-msvc": 4.50.2 + "@rollup/rollup-win32-ia32-msvc": 4.50.2 + "@rollup/rollup-win32-x64-msvc": 4.50.2 + "@types/estree": 1.0.8 fsevents: ~2.3.2 dependenciesMeta: + "@rollup/rollup-android-arm-eabi": + optional: true + "@rollup/rollup-android-arm64": + optional: true + "@rollup/rollup-darwin-arm64": + optional: true + "@rollup/rollup-darwin-x64": + optional: true + "@rollup/rollup-freebsd-arm64": + optional: true + "@rollup/rollup-freebsd-x64": + optional: true + "@rollup/rollup-linux-arm-gnueabihf": + optional: true + "@rollup/rollup-linux-arm-musleabihf": + optional: true + "@rollup/rollup-linux-arm64-gnu": + optional: true + "@rollup/rollup-linux-arm64-musl": + optional: true + "@rollup/rollup-linux-loong64-gnu": + optional: true + "@rollup/rollup-linux-ppc64-gnu": + optional: true + "@rollup/rollup-linux-riscv64-gnu": + optional: true + "@rollup/rollup-linux-riscv64-musl": + optional: true + "@rollup/rollup-linux-s390x-gnu": + optional: true + "@rollup/rollup-linux-x64-gnu": + optional: true + "@rollup/rollup-linux-x64-musl": + optional: true + "@rollup/rollup-openharmony-arm64": + optional: true + "@rollup/rollup-win32-arm64-msvc": + optional: true + "@rollup/rollup-win32-ia32-msvc": + optional: true + "@rollup/rollup-win32-x64-msvc": + optional: true fsevents: optional: true bin: rollup: dist/bin/rollup - checksum: 34b0932839b7c2a5d1742fb21ce95a47e0b49a0849f4abee2dccf25833187aa7babb898ca90d4fc761cffa4102b9ed0ac6ad7f6f6b96c8b8e2d67305abc5da65 + checksum: fbdd9b470585fe1add3ec35edb760de289fe4413c9eb4ba5321fcf38638669d7f0d44ee54f9c55cd81404c69caa2c4b0598d2b4715e0b138cdace65bbe9a207a languageName: node linkType: hard -"run-parallel@npm:^1.1.9": - version: 1.2.0 - resolution: "run-parallel@npm:1.2.0" +"router@npm:^2.2.0": + version: 2.2.0 + resolution: "router@npm:2.2.0" dependencies: - queue-microtask: ^1.2.2 - checksum: cb4f97ad25a75ebc11a8ef4e33bb962f8af8516bb2001082ceabd8902e15b98f4b84b4f8a9b222e5d57fc3bd1379c483886ed4619367a7680dad65316993021d + debug: ^4.4.0 + depd: ^2.0.0 + is-promise: ^4.0.0 + parseurl: ^1.3.3 + path-to-regexp: ^8.0.0 + checksum: 4c3bec8011ed10bb07d1ee860bc715f245fff0fdff991d8319741d2932d89c3fe0a56766b4fa78e95444bc323fd2538e09c8e43bfbd442c2a7fab67456df7fa5 languageName: node linkType: hard -"rxjs@npm:^7.8.1": - version: 7.8.1 - resolution: "rxjs@npm:7.8.1" +"rxjs@npm:7.8.2": + version: 7.8.2 + resolution: "rxjs@npm:7.8.2" dependencies: tslib: ^2.1.0 - checksum: de4b53db1063e618ec2eca0f7965d9137cabe98cf6be9272efe6c86b47c17b987383df8574861bcced18ebd590764125a901d5506082be84a8b8e364bf05f119 - languageName: node - linkType: hard - -"safe-buffer@npm:5.1.2": - version: 5.1.2 - resolution: "safe-buffer@npm:5.1.2" - checksum: f2f1f7943ca44a594893a852894055cf619c1fbcb611237fc39e461ae751187e7baf4dc391a72125e0ac4fb2d8c5c0b3c71529622e6a58f46b960211e704903c + checksum: 2f233d7c832a6c255dabe0759014d7d9b1c9f1cb2f2f0d59690fd11c883c9826ea35a51740c06ab45b6ade0d9087bde9192f165cba20b6730d344b831ef80744 languageName: node linkType: hard @@ -7726,25 +8488,13 @@ __metadata: languageName: node linkType: hard -"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0, safer-buffer@npm:^2.1.0, safer-buffer@npm:~2.1.0": +"safer-buffer@npm:>= 2.1.2 < 3.0.0, safer-buffer@npm:^2.1.0, safer-buffer@npm:~2.1.0": version: 2.1.2 resolution: "safer-buffer@npm:2.1.2" checksum: cab8f25ae6f1434abee8d80023d7e72b598cf1327164ddab31003c51215526801e40b66c5e65d658a0af1e9d6478cadcb4c745f4bd6751f97d8644786c0978b0 languageName: node linkType: hard -"sander@npm:^0.5.0": - version: 0.5.1 - resolution: "sander@npm:0.5.1" - dependencies: - es6-promise: ^3.1.2 - graceful-fs: ^4.1.3 - mkdirp: ^0.5.1 - rimraf: ^2.5.2 - checksum: 76da5b91dd7848de0c985adf035fc39ca76a3cd15d68bdae0a4672659a4bdef7b716747b31245af5dd769f19765a9e8e16ad577984b12cc041bdb09599921f3a - languageName: node - linkType: hard - "saslprep@npm:^1.0.3": version: 1.0.3 resolution: "saslprep@npm:1.0.3" @@ -7754,16 +8504,27 @@ __metadata: languageName: node linkType: hard -"sass@npm:^1.61.0": - version: 1.61.0 - resolution: "sass@npm:1.61.0" +"sass@npm:^1.92.1": + version: 1.92.1 + resolution: "sass@npm:1.92.1" dependencies: - chokidar: ">=3.0.0 <4.0.0" - immutable: ^4.0.0 + "@parcel/watcher": ^2.4.1 + chokidar: ^4.0.0 + immutable: ^5.0.2 source-map-js: ">=0.6.2 <2.0.0" + dependenciesMeta: + "@parcel/watcher": + optional: true bin: sass: sass.js - checksum: 31bfb3719f1bb1299bec7b8918bcbca77efa7328b8030cc8e665ed55a02bc5498a3e543b4eb0d06d55ceda8b2f5b2b3176f0678854a8277cb19a59addf65533f + checksum: ec0d4da639874f0f849b766f51f3db1fdff703840e7066ca3dd097999179630707b357744d83dde54289c02bba2f1ef8b34bba460cf4f703874b7922a86e32df + languageName: node + linkType: hard + +"sax@npm:^1.4.1": + version: 1.4.1 + resolution: "sax@npm:1.4.1" + checksum: 3ad64df16b743f0f2eb7c38ced9692a6d924f1cd07bbe45c39576c2cf50de8290d9d04e7b2228f924c7d05fecc4ec5cf651423278e0c7b63d260c387ef3af84a languageName: node linkType: hard @@ -7778,7 +8539,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:2 || 3 || 4 || 5, semver@npm:^5.5.0, semver@npm:^5.7.1": +"semver@npm:2 || 3 || 4 || 5, semver@npm:^5.5.0": version: 5.7.1 resolution: "semver@npm:5.7.1" bin: @@ -7796,7 +8557,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8": +"semver@npm:^7.3.5": version: 7.3.8 resolution: "semver@npm:7.3.8" dependencies: @@ -7807,6 +8568,15 @@ __metadata: languageName: node linkType: hard +"semver@npm:^7.5.0, semver@npm:^7.5.4": + version: 7.7.2 + resolution: "semver@npm:7.7.2" + bin: + semver: bin/semver.js + checksum: dd94ba8f1cbc903d8eeb4dd8bf19f46b3deb14262b6717d0de3c804b594058ae785ef2e4b46c5c3b58733c99c83339068203002f9e37cfe44f7e2cc5e3d2f621 + languageName: node + linkType: hard + "semver@npm:^7.5.3": version: 7.5.4 resolution: "semver@npm:7.5.4" @@ -7818,33 +8588,22 @@ __metadata: languageName: node linkType: hard -"semver@npm:~7.0.0": - version: 7.0.0 - resolution: "semver@npm:7.0.0" - bin: - semver: bin/semver.js - checksum: 272c11bf8d083274ef79fe40a81c55c184dff84dd58e3c325299d0927ba48cece1f020793d138382b85f89bab5002a35a5ba59a3a68a7eebbb597eb733838778 - languageName: node - linkType: hard - -"send@npm:0.18.0": - version: 0.18.0 - resolution: "send@npm:0.18.0" +"send@npm:^1.1.0, send@npm:^1.2.0": + version: 1.2.0 + resolution: "send@npm:1.2.0" dependencies: - debug: 2.6.9 - depd: 2.0.0 - destroy: 1.2.0 - encodeurl: ~1.0.2 - escape-html: ~1.0.3 - etag: ~1.8.1 - fresh: 0.5.2 - http-errors: 2.0.0 - mime: 1.6.0 - ms: 2.1.3 - on-finished: 2.4.1 - range-parser: ~1.2.1 - statuses: 2.0.1 - checksum: 74fc07ebb58566b87b078ec63e5a3e41ecd987e4272ba67b7467e86c6ad51bc6b0b0154133b6d8b08a2ddda360464f71382f7ef864700f34844a76c8027817a8 + debug: ^4.3.5 + encodeurl: ^2.0.0 + escape-html: ^1.0.3 + etag: ^1.8.1 + fresh: ^2.0.0 + http-errors: ^2.0.0 + mime-types: ^3.0.1 + ms: ^2.1.3 + on-finished: ^2.4.1 + range-parser: ^1.2.1 + statuses: ^2.0.1 + checksum: 7557ee6c1c257a1c53b402b4fba8ed88c95800b08abe085fc79e0824869274f213491be2efb2df3de228c70e4d40ce2019e5f77b58c42adb97149135420c3f34 languageName: node linkType: hard @@ -7857,15 +8616,15 @@ __metadata: languageName: node linkType: hard -"serve-static@npm:1.15.0": - version: 1.15.0 - resolution: "serve-static@npm:1.15.0" +"serve-static@npm:^2.2.0": + version: 2.2.0 + resolution: "serve-static@npm:2.2.0" dependencies: - encodeurl: ~1.0.2 - escape-html: ~1.0.3 - parseurl: ~1.3.3 - send: 0.18.0 - checksum: af57fc13be40d90a12562e98c0b7855cf6e8bd4c107fe9a45c212bf023058d54a1871b1c89511c3958f70626fff47faeb795f5d83f8cf88514dbaeb2b724464d + encodeurl: ^2.0.0 + escape-html: ^1.0.3 + parseurl: ^1.3.3 + send: ^1.2.0 + checksum: 74f39e88f0444aa6732aae3b9597739c47552adecdc83fa32aa42555e76f1daad480d791af73894655c27a2d378275a461e691cead33fb35d8b976f1e2d24665 languageName: node linkType: hard @@ -7924,6 +8683,13 @@ __metadata: languageName: node linkType: hard +"shell-quote@npm:1.8.3": + version: 1.8.3 + resolution: "shell-quote@npm:1.8.3" + checksum: 550dd84e677f8915eb013d43689c80bb114860649ec5298eb978f40b8f3d4bc4ccb072b82c094eb3548dc587144bb3965a8676f0d685c1cf4c40b5dc27166242 + languageName: node + linkType: hard + "shell-quote@npm:^1.6.1": version: 1.8.0 resolution: "shell-quote@npm:1.8.0" @@ -7931,10 +8697,38 @@ __metadata: languageName: node linkType: hard -"shell-quote@npm:^1.8.1": - version: 1.8.1 - resolution: "shell-quote@npm:1.8.1" - checksum: 5f01201f4ef504d4c6a9d0d283fa17075f6770bfbe4c5850b074974c68062f37929ca61700d95ad2ac8822e14e8c4b990ca0e6e9272e64befd74ce5e19f0736b +"side-channel-list@npm:^1.0.0": + version: 1.0.0 + resolution: "side-channel-list@npm:1.0.0" + dependencies: + es-errors: ^1.3.0 + object-inspect: ^1.13.3 + checksum: 603b928997abd21c5a5f02ae6b9cc36b72e3176ad6827fab0417ead74580cc4fb4d5c7d0a8a2ff4ead34d0f9e35701ed7a41853dac8a6d1a664fcce1a044f86f + languageName: node + linkType: hard + +"side-channel-map@npm:^1.0.1": + version: 1.0.1 + resolution: "side-channel-map@npm:1.0.1" + dependencies: + call-bound: ^1.0.2 + es-errors: ^1.3.0 + get-intrinsic: ^1.2.5 + object-inspect: ^1.13.3 + checksum: 42501371cdf71f4ccbbc9c9e2eb00aaaab80a4c1c429d5e8da713fd4d39ef3b8d4a4b37ed4f275798a65260a551a7131fd87fe67e922dba4ac18586d6aab8b06 + languageName: node + linkType: hard + +"side-channel-weakmap@npm:^1.0.2": + version: 1.0.2 + resolution: "side-channel-weakmap@npm:1.0.2" + dependencies: + call-bound: ^1.0.2 + es-errors: ^1.3.0 + get-intrinsic: ^1.2.5 + object-inspect: ^1.13.3 + side-channel-map: ^1.0.1 + checksum: a815c89bc78c5723c714ea1a77c938377ea710af20d4fb886d362b0d1f8ac73a17816a5f6640f354017d7e292a43da9c5e876c22145bac00b76cfb3468001736 languageName: node linkType: hard @@ -7949,6 +8743,19 @@ __metadata: languageName: node linkType: hard +"side-channel@npm:^1.1.0": + version: 1.1.0 + resolution: "side-channel@npm:1.1.0" + dependencies: + es-errors: ^1.3.0 + object-inspect: ^1.13.3 + side-channel-list: ^1.0.0 + side-channel-map: ^1.0.1 + side-channel-weakmap: ^1.0.2 + checksum: bf73d6d6682034603eb8e99c63b50155017ed78a522d27c2acec0388a792c3ede3238b878b953a08157093b85d05797217d270b7666ba1f111345fbe933380ff + languageName: node + linkType: hard + "signal-exit@npm:^3.0.7": version: 3.0.7 resolution: "signal-exit@npm:3.0.7" @@ -7965,15 +8772,6 @@ __metadata: languageName: node linkType: hard -"simple-update-notifier@npm:^1.0.7": - version: 1.1.0 - resolution: "simple-update-notifier@npm:1.1.0" - dependencies: - semver: ~7.0.0 - checksum: 1012e9b6c504e559a948078177b3eedbb9d7e4d15878e2bda56314d08db609ca5da485be4ac9f838759faae8057935ee0246fcdf63f1233c86bd9fecb2a5544b - languageName: node - linkType: hard - "simple-update-notifier@npm:^2.0.0": version: 2.0.0 resolution: "simple-update-notifier@npm:2.0.0" @@ -8041,20 +8839,6 @@ __metadata: languageName: node linkType: hard -"sorcery@npm:^0.11.0": - version: 0.11.0 - resolution: "sorcery@npm:0.11.0" - dependencies: - "@jridgewell/sourcemap-codec": ^1.4.14 - buffer-crc32: ^0.2.5 - minimist: ^1.2.0 - sander: ^0.5.0 - bin: - sorcery: bin/sorcery - checksum: b79a4194f5ab7ee1d19d5cd2a683bd605762d5cbeeb238f46a71af357a179a6193d64a92ef2af1e05e4261cb3797be8694ad9b7ecfea9ca0d8f14d98f449dff5 - languageName: node - linkType: hard - "source-list-map@npm:^2.0.0": version: 2.0.1 resolution: "source-list-map@npm:2.0.1" @@ -8062,13 +8846,20 @@ __metadata: languageName: node linkType: hard -"source-map-js@npm:>=0.6.2 <2.0.0, source-map-js@npm:^1.0.1, source-map-js@npm:^1.0.2": +"source-map-js@npm:>=0.6.2 <2.0.0, source-map-js@npm:^1.0.1": version: 1.0.2 resolution: "source-map-js@npm:1.0.2" checksum: c049a7fc4deb9a7e9b481ae3d424cc793cb4845daa690bc5a05d428bf41bf231ced49b4cf0c9e77f9d42fdb3d20d6187619fc586605f5eabe995a316da8d377c languageName: node linkType: hard +"source-map-js@npm:^1.2.1": + version: 1.2.1 + resolution: "source-map-js@npm:1.2.1" + checksum: 4eb0cd997cdf228bc253bcaff9340afeb706176e64868ecd20efbe6efea931465f43955612346d6b7318789e5265bdc419bc7669c1cebe3db0eb255f57efa76b + languageName: node + linkType: hard + "source-map-support@npm:~0.5.20": version: 0.5.21 resolution: "source-map-support@npm:0.5.21" @@ -8102,13 +8893,6 @@ __metadata: languageName: node linkType: hard -"spawn-command@npm:0.0.2": - version: 0.0.2 - resolution: "spawn-command@npm:0.0.2" - checksum: e35c5d28177b4d461d33c88cc11f6f3a5079e2b132c11e1746453bbb7a0c0b8a634f07541a2a234fa4758239d88203b758def509161b651e81958894c0b4b64b - languageName: node - linkType: hard - "spdx-correct@npm:^3.0.0": version: 3.2.0 resolution: "spdx-correct@npm:3.2.0" @@ -8182,6 +8966,13 @@ __metadata: languageName: node linkType: hard +"statuses@npm:^2.0.1": + version: 2.0.2 + resolution: "statuses@npm:2.0.2" + checksum: 6927feb50c2a75b2a4caab2c565491f7a93ad3d8dbad7b1398d52359e9243a20e2ebe35e33726dee945125ef7a515e9097d8a1b910ba2bbd818265a2f6c39879 + languageName: node + linkType: hard + "string-hash@npm:^1.1.1": version: 1.1.3 resolution: "string-hash@npm:1.1.3" @@ -8269,15 +9060,6 @@ __metadata: languageName: node linkType: hard -"strip-indent@npm:^3.0.0": - version: 3.0.0 - resolution: "strip-indent@npm:3.0.0" - dependencies: - min-indent: ^1.0.0 - checksum: 18f045d57d9d0d90cd16f72b2313d6364fd2cb4bf85b9f593523ad431c8720011a4d5f08b6591c9d580f446e78855c5334a30fb91aa1560f5d9f95ed1b4a0530 - languageName: node - linkType: hard - "style-inject@npm:^0.3.0": version: 0.3.0 resolution: "style-inject@npm:0.3.0" @@ -8306,32 +9088,24 @@ __metadata: languageName: node linkType: hard -"stylehacks@npm:^6.0.0": - version: 6.0.0 - resolution: "stylehacks@npm:6.0.0" +"stylehacks@npm:^7.0.5": + version: 7.0.6 + resolution: "stylehacks@npm:7.0.6" dependencies: - browserslist: ^4.21.4 - postcss-selector-parser: ^6.0.4 + browserslist: ^4.25.1 + postcss-selector-parser: ^7.1.0 peerDependencies: - postcss: ^8.2.15 - checksum: b6071ab5f4451576e3a445f7304b41c43329f84d7a7987a91442febaabc1de51e62f1e37c4f37fad21990d3f573a8110bd31e09f9df7b8628465e19b1cdc702b + postcss: ^8.4.32 + checksum: 7dc9258663d8d5343b0216d68a1460f04e19545f943d597b13850a1f7a96b4a1ce9be1b0815f09e931c4df9e0fd9d626ab3fa5429cf761ef80e28765bf99ef4a languageName: node linkType: hard -"sucrase@npm:^3.29.0": - version: 3.31.0 - resolution: "sucrase@npm:3.31.0" +"supports-color@npm:8.1.1, supports-color@npm:^8.0.0": + version: 8.1.1 + resolution: "supports-color@npm:8.1.1" dependencies: - commander: ^4.0.0 - glob: 7.1.6 - lines-and-columns: ^1.1.6 - mz: ^2.7.0 - pirates: ^4.0.1 - ts-interface-checker: ^0.1.9 - bin: - sucrase: bin/sucrase - sucrase-node: bin/sucrase-node - checksum: 333990b1bca57acc010ae07c763dddfd34f01fd38afe9e53cf43f4a5096bd7a66f924fed65770288fba475f914f3aa5277cc4490ed9e74c50b4cea7f147e9e63 + has-flag: ^4.0.0 + checksum: c052193a7e43c6cdc741eb7f378df605636e01ad434badf7324f17fb60c69a880d8d8fcdcb562cf94c2350e57b937d7425ab5b8326c67c2adc48f7c87c1db406 languageName: node linkType: hard @@ -8353,15 +9127,6 @@ __metadata: languageName: node linkType: hard -"supports-color@npm:^8.0.0, supports-color@npm:^8.1.1": - version: 8.1.1 - resolution: "supports-color@npm:8.1.1" - dependencies: - has-flag: ^4.0.0 - checksum: c052193a7e43c6cdc741eb7f378df605636e01ad434badf7324f17fb60c69a880d8d8fcdcb562cf94c2350e57b937d7425ab5b8326c67c2adc48f7c87c1db406 - languageName: node - linkType: hard - "supports-preserve-symlinks-flag@npm:^1.0.0": version: 1.0.0 resolution: "supports-preserve-symlinks-flag@npm:1.0.0" @@ -8369,27 +9134,21 @@ __metadata: languageName: node linkType: hard -"svelte-preprocess@npm:^5.0.3": - version: 5.0.3 - resolution: "svelte-preprocess@npm:5.0.3" - dependencies: - "@types/pug": ^2.0.6 - detect-indent: ^6.1.0 - magic-string: ^0.27.0 - sorcery: ^0.11.0 - strip-indent: ^3.0.0 +"svelte-preprocess@npm:^6.0.3": + version: 6.0.3 + resolution: "svelte-preprocess@npm:6.0.3" peerDependencies: "@babel/core": ^7.10.2 coffeescript: ^2.5.1 less: ^3.11.3 || ^4.0.0 postcss: ^7 || ^8 - postcss-load-config: ^2.1.0 || ^3.0.0 || ^4.0.0 + postcss-load-config: ">=3" pug: ^3.0.0 sass: ^1.26.8 - stylus: ^0.55.0 + stylus: ">=0.55" sugarss: ^2.0.0 || ^3.0.0 || ^4.0.0 - svelte: ^3.23.0 - typescript: ">=3.9.5 || ^4.0.0 || ^5.0.0" + svelte: ^4.0.0 || ^5.0.0-next.100 || ^5.0.0 + typescript: ^5.0.0 peerDependenciesMeta: "@babel/core": optional: true @@ -8411,14 +9170,29 @@ __metadata: optional: true typescript: optional: true - checksum: fedec5f8ce90ed11c3408d739e1403b0df1d32206702e3607043a6d06e6007d2f3d9efc6c261b2c2cb4f6e48311e2bad12d42f1de05acc4f908100735e29fac9 + checksum: 55452be73647db8d4a0cbe474ce6d4c77e94de652ea8782af1abed432c6713ca125f3f4a84cefb9d017a5ef2bfaccc3f0c8cdb593a04aed103e2a7c6a17af4b0 languageName: node linkType: hard -"svelte@npm:^3.58.0": - version: 3.58.0 - resolution: "svelte@npm:3.58.0" - checksum: c05625705961adc971e2bed6b86957c065f34e9d358390ad8dc953f8b4c956bb5ed297e3466f18c8080339cd26b973294489ee4094800fd75a8650fa1f6a9b52 +"svelte@npm:^5.38.10": + version: 5.38.10 + resolution: "svelte@npm:5.38.10" + dependencies: + "@jridgewell/remapping": ^2.3.4 + "@jridgewell/sourcemap-codec": ^1.5.0 + "@sveltejs/acorn-typescript": ^1.0.5 + "@types/estree": ^1.0.5 + acorn: ^8.12.1 + aria-query: ^5.3.1 + axobject-query: ^4.1.0 + clsx: ^2.1.1 + esm-env: ^1.2.1 + esrap: ^2.1.0 + is-reference: ^3.0.3 + locate-character: ^3.0.0 + magic-string: ^0.30.11 + zimmerframe: ^1.1.2 + checksum: 111a68afadca6714cfbfda5e009ab13af0ffa6b350d4b3ed7243b3dd3bd34c7ab1445d098d7da6854ef327081376068e2c6958d159595f806b20d7aa0c8116ee languageName: node linkType: hard @@ -8439,56 +9213,47 @@ __metadata: languageName: node linkType: hard -"svgo@npm:^3.0.2": - version: 3.0.2 - resolution: "svgo@npm:3.0.2" +"svgo@npm:^4.0.0": + version: 4.0.0 + resolution: "svgo@npm:4.0.0" dependencies: - "@trysound/sax": 0.2.0 - commander: ^7.2.0 + commander: ^11.1.0 css-select: ^5.1.0 - css-tree: ^2.2.1 + css-tree: ^3.0.1 + css-what: ^6.1.0 csso: ^5.0.5 - picocolors: ^1.0.0 + picocolors: ^1.1.1 + sax: ^1.4.1 bin: - svgo: bin/svgo - checksum: 381ba14aa782e71ab7033227634a3041c11fa3e2769aeaf0df43a08a615de61925108e34f55af6e7c5146f4a3109e78deabb4fa9d687e36d45d1f848b4e23d17 + svgo: ./bin/svgo.js + checksum: bddf57bda7b4e8252e5f8c5aa8555ec9810f963369bad17476cf21881e0b5fd3dfffcffddebd7b8b4c80b7e64b508589fad5be055d143d70b28ef0dee2583fcc languageName: node linkType: hard -"tailwindcss@npm:^3.3.1": +"tailwind-merge@npm:^3.3.1": version: 3.3.1 - resolution: "tailwindcss@npm:3.3.1" - dependencies: - arg: ^5.0.2 - chokidar: ^3.5.3 - color-name: ^1.1.4 - didyoumean: ^1.2.2 - dlv: ^1.1.3 - fast-glob: ^3.2.12 - glob-parent: ^6.0.2 - is-glob: ^4.0.3 - jiti: ^1.17.2 - lilconfig: ^2.0.6 - micromatch: ^4.0.5 - normalize-path: ^3.0.0 - object-hash: ^3.0.0 - picocolors: ^1.0.0 - postcss: ^8.0.9 - postcss-import: ^14.1.0 - postcss-js: ^4.0.0 - postcss-load-config: ^3.1.4 - postcss-nested: 6.0.0 - postcss-selector-parser: ^6.0.11 - postcss-value-parser: ^4.2.0 - quick-lru: ^5.1.1 - resolve: ^1.22.1 - sucrase: ^3.29.0 + resolution: "tailwind-merge@npm:3.3.1" + checksum: ace3675227d86f1def95b25b7f6793268a6ab2f340b43ef64ad25646588d2b1d87714cd60db6947bfdb5bb85be3bb6ce1802021620c541ef7a9c3faa05915f2b + languageName: node + linkType: hard + +"tailwind-variants@npm:3.0.0": + version: 3.0.0 + resolution: "tailwind-variants@npm:3.0.0" peerDependencies: - postcss: ^8.0.9 - bin: - tailwind: lib/cli.js - tailwindcss: lib/cli.js - checksum: 966ba175486fb65ef3dd76aa8ec6929ff1d168531843ca7d5faf680b7097c36bf5f9ca385b563cdfdff935bb2bd37ac5998e877491407867503cc129d118bf93 + tailwind-merge: ">=3.0.0" + tailwindcss: "*" + peerDependenciesMeta: + tailwind-merge: + optional: true + checksum: b9e643df1305e5cf77f0f30fa172cbaa9e69cc86e0a2801b07ec93b0b10e8e4ebf38072bdca736b66eaa35efe2d30c96e93179cc07cd37c4a977ba1fdbf6049a + languageName: node + linkType: hard + +"tailwindcss@npm:^4.1.13": + version: 4.1.13 + resolution: "tailwindcss@npm:4.1.13" + checksum: 25e2883c69190c6474a6c44caed8f82511a4025a2285e34bca4b79671a73acd79e74844a4908313098218de81a5aba62df727bb6ee26f69eeca3386b4941de4b languageName: node linkType: hard @@ -8556,24 +9321,6 @@ __metadata: languageName: node linkType: hard -"thenify-all@npm:^1.0.0": - version: 1.6.0 - resolution: "thenify-all@npm:1.6.0" - dependencies: - thenify: ">= 3.1.0 < 4" - checksum: dba7cc8a23a154cdcb6acb7f51d61511c37a6b077ec5ab5da6e8b874272015937788402fd271fdfc5f187f8cb0948e38d0a42dcc89d554d731652ab458f5343e - languageName: node - linkType: hard - -"thenify@npm:>= 3.1.0 < 4": - version: 3.3.1 - resolution: "thenify@npm:3.3.1" - dependencies: - any-promise: ^1.0.0 - checksum: 84e1b804bfec49f3531215f17b4a6e50fd4397b5f7c1bccc427b9c656e1ecfb13ea79d899930184f78bc2f57285c54d9a50a590c8868f4f0cef5c1d9f898b05e - languageName: node - linkType: hard - "to-array@npm:0.1.4": version: 0.1.4 resolution: "to-array@npm:0.1.4" @@ -8617,14 +9364,16 @@ __metadata: languageName: node linkType: hard -"tr46@npm:~0.0.3": - version: 0.0.3 - resolution: "tr46@npm:0.0.3" - checksum: 726321c5eaf41b5002e17ffbd1fb7245999a073e8979085dacd47c4b4e8068ff5777142fc6726d6ca1fd2ff16921b48788b87225cbc57c72636f6efa8efbffe3 +"tr46@npm:^5.1.0": + version: 5.1.1 + resolution: "tr46@npm:5.1.1" + dependencies: + punycode: ^2.3.1 + checksum: da7a04bd3f77e641abdabe948bb84f24e6ee73e81c8c96c36fe79796c889ba97daf3dbacae778f8581ff60307a4136ee14c9540a5f85ebe44f99c6cc39a97690 languageName: node linkType: hard -"tree-kill@npm:^1.2.2": +"tree-kill@npm:1.2.2": version: 1.2.2 resolution: "tree-kill@npm:1.2.2" bin: @@ -8640,16 +9389,9 @@ __metadata: languageName: node linkType: hard -"ts-interface-checker@npm:^0.1.9": - version: 0.1.13 - resolution: "ts-interface-checker@npm:0.1.13" - checksum: 20c29189c2dd6067a8775e07823ddf8d59a33e2ffc47a1bd59a5cb28bb0121a2969a816d5e77eda2ed85b18171aa5d1c4005a6b88ae8499ec7cc49f78571cb5e - languageName: node - linkType: hard - -"ts-node@npm:^10.9.1": - version: 10.9.1 - resolution: "ts-node@npm:10.9.1" +"ts-node@npm:^10.9.2": + version: 10.9.2 + resolution: "ts-node@npm:10.9.2" dependencies: "@cspotcode/source-map-support": ^0.8.0 "@tsconfig/node10": ^1.0.7 @@ -8681,7 +9423,7 @@ __metadata: ts-node-script: dist/bin-script.js ts-node-transpile-only: dist/bin-transpile.js ts-script: dist/bin-script-deprecated.js - checksum: 090adff1302ab20bd3486e6b4799e90f97726ed39e02b39e566f8ab674fd5bd5f727f43615debbfc580d33c6d9d1c6b1b3ce7d8e3cca3e20530a145ffa232c35 + checksum: fde256c9073969e234526e2cfead42591b9a2aec5222bac154b0de2fa9e4ceb30efcd717ee8bc785a56f3a119bdd5aa27b333d9dbec94ed254bd26f8944c67ac languageName: node linkType: hard @@ -8692,20 +9434,37 @@ __metadata: languageName: node linkType: hard -"tslib@npm:^2.1.0, tslib@npm:^2.4.0": +"tslib@npm:^2.1.0": version: 2.5.0 resolution: "tslib@npm:2.5.0" checksum: ae3ed5f9ce29932d049908ebfdf21b3a003a85653a9a140d614da6b767a93ef94f460e52c3d787f0e4f383546981713f165037dc2274df212ea9f8a4541004e1 languageName: node linkType: hard -"type-is@npm:~1.6.18": - version: 1.6.18 - resolution: "type-is@npm:1.6.18" +"tslib@npm:^2.6.2, tslib@npm:^2.8.1": + version: 2.8.1 + resolution: "tslib@npm:2.8.1" + checksum: e4aba30e632b8c8902b47587fd13345e2827fa639e7c3121074d5ee0880723282411a8838f830b55100cbe4517672f84a2472667d355b81e8af165a55dc6203a + languageName: node + linkType: hard + +"tsyringe@npm:^4.10.0": + version: 4.10.0 + resolution: "tsyringe@npm:4.10.0" dependencies: - media-typer: 0.3.0 - mime-types: ~2.1.24 - checksum: 2c8e47675d55f8b4e404bcf529abdf5036c537a04c2b20177bcf78c9e3c1da69da3942b1346e6edb09e823228c0ee656ef0e033765ec39a70d496ef601a0c657 + tslib: ^1.9.3 + checksum: 61810b1bca8bd58911fe54fbb5a660a3d9349ce1b62b5bc33fea82bbd0dc6475b57aa1f4fd95007cf7dd2c9d05502525b65bd900941fc4b3de08f9c56751d5e9 + languageName: node + linkType: hard + +"type-is@npm:^2.0.0, type-is@npm:^2.0.1": + version: 2.0.1 + resolution: "type-is@npm:2.0.1" + dependencies: + content-type: ^1.0.5 + media-typer: ^1.1.0 + mime-types: ^3.0.0 + checksum: 0266e7c782238128292e8c45e60037174d48c6366bb2d45e6bd6422b611c193f83409a8341518b6b5f33f8e4d5a959f38658cacfea77f0a3505b9f7ac1ddec8f languageName: node linkType: hard @@ -8720,23 +9479,23 @@ __metadata: languageName: node linkType: hard -"typescript@npm:^5.0.4": - version: 5.0.4 - resolution: "typescript@npm:5.0.4" +"typescript@npm:^5.9.2": + version: 5.9.2 + resolution: "typescript@npm:5.9.2" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 82b94da3f4604a8946da585f7d6c3025fff8410779e5bde2855ab130d05e4fd08938b9e593b6ebed165bda6ad9292b230984f10952cf82f0a0ca07bbeaa08172 + checksum: f619cf6773cfe31409279711afd68cdf0859780006c50bc2a7a0c3227f85dea89a3b97248846326f3a17dad72ea90ec27cf61a8387772c680b2252fd02d8497b languageName: node linkType: hard -"typescript@patch:typescript@^5.0.4#~builtin": - version: 5.0.4 - resolution: "typescript@patch:typescript@npm%3A5.0.4#~builtin::version=5.0.4&hash=85af82" +"typescript@patch:typescript@^5.9.2#~builtin": + version: 5.9.2 + resolution: "typescript@patch:typescript@npm%3A5.9.2#~builtin::version=5.9.2&hash=85af82" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: bb309d320c59a26565fb3793dba550576ab861018ff3fd1b7fccabbe46ae4a35546bc45f342c0a0b6f265c801ccdf64ffd68f548f117ceb7f0eac4b805cd52a9 + checksum: e42a701947325500008334622321a6ad073f842f5e7d5e7b588a6346b31fdf51d56082b9ce5cef24312ecd3e48d6c0d4d44da7555f65e2feec18cf62ec540385 languageName: node linkType: hard @@ -8791,6 +9550,13 @@ __metadata: languageName: node linkType: hard +"undici-types@npm:~7.11.0": + version: 7.11.0 + resolution: "undici-types@npm:7.11.0" + checksum: 8f6d0dc0e4d96aff2f2d87163a40643d93d841484b06dbaeef0ec534ddbfeaa8459918ac990467263f71f229f9891dcc36242f51d71dcce293ff86f4c16f66b4 + languageName: node + linkType: hard + "unique-filename@npm:^2.0.0": version: 2.0.1 resolution: "unique-filename@npm:2.0.1" @@ -8816,13 +9582,23 @@ __metadata: languageName: node linkType: hard -"unpipe@npm:1.0.0, unpipe@npm:~1.0.0": +"unpipe@npm:1.0.0": version: 1.0.0 resolution: "unpipe@npm:1.0.0" checksum: 4fa18d8d8d977c55cb09715385c203197105e10a6d220087ec819f50cb68870f02942244f1017565484237f1f8c5d3cd413631b1ae104d3096f24fdfde1b4aa2 languageName: node linkType: hard +"unplugin-utils@npm:^0.2.4": + version: 0.2.5 + resolution: "unplugin-utils@npm:0.2.5" + dependencies: + pathe: ^2.0.3 + picomatch: ^4.0.3 + checksum: 7dd30c0fed129e49b3b2b48f45faaf3d0335bee0bc7997c4ab63660ac365878704411ca7f3e373d47032b5e98b3accd156975bb2c78c3bec114f4bf3cdbd0971 + languageName: node + linkType: hard + "update-browserslist-db@npm:^1.0.10": version: 1.0.10 resolution: "update-browserslist-db@npm:1.0.10" @@ -8837,6 +9613,20 @@ __metadata: languageName: node linkType: hard +"update-browserslist-db@npm:^1.1.3": + version: 1.1.3 + resolution: "update-browserslist-db@npm:1.1.3" + dependencies: + escalade: ^3.2.0 + picocolors: ^1.1.1 + peerDependencies: + browserslist: ">= 4.21.0" + bin: + update-browserslist-db: cli.js + checksum: 7b6d8d08c34af25ee435bccac542bedcb9e57c710f3c42421615631a80aa6dd28b0a81c9d2afbef53799d482fb41453f714b8a7a0a8003e3b4ec8fb1abb819af + languageName: node + linkType: hard + "upper-case@npm:^1.1.1": version: 1.1.3 resolution: "upper-case@npm:1.1.3" @@ -8860,19 +9650,12 @@ __metadata: languageName: node linkType: hard -"utils-merge@npm:1.0.1": - version: 1.0.1 - resolution: "utils-merge@npm:1.0.1" - checksum: c81095493225ecfc28add49c106ca4f09cdf56bc66731aa8dabc2edbbccb1e1bfe2de6a115e5c6a380d3ea166d1636410b62ef216bb07b3feb1cfde1d95d5080 - languageName: node - linkType: hard - -"uuid@npm:^9.0.1": - version: 9.0.1 - resolution: "uuid@npm:9.0.1" +"uuid@npm:^13.0.0": + version: 13.0.0 + resolution: "uuid@npm:13.0.0" bin: - uuid: dist/bin/uuid - checksum: 39931f6da74e307f51c0fb463dc2462807531dc80760a9bff1e35af4316131b4fc3203d16da60ae33f07fdca5b56f3f1dd662da0c99fea9aaeab2004780cc5f4 + uuid: dist-node/bin/uuid + checksum: 7510ee1ab371be5339ef26ff8cabc2f4a2c60640ff880652968f758072f53bd4f4af1c8b0e671a8c9bb29ef926a24dec3ef0e3861d78183b39291a85743a9f96 languageName: node linkType: hard @@ -8893,7 +9676,7 @@ __metadata: languageName: node linkType: hard -"vary@npm:^1, vary@npm:~1.1.2": +"vary@npm:^1, vary@npm:^1.1.2, vary@npm:~1.1.2": version: 1.1.2 resolution: "vary@npm:1.1.2" checksum: ae0123222c6df65b437669d63dfa8c36cee20a504101b2fcd97b8bf76f91259c17f9f2b4d70a1e3c6bbcee7f51b28392833adb6b2770b23b01abec84e369660b @@ -8910,13 +9693,6 @@ __metadata: languageName: node linkType: hard -"webidl-conversions@npm:^3.0.0": - version: 3.0.1 - resolution: "webidl-conversions@npm:3.0.1" - checksum: c92a0a6ab95314bde9c32e1d0a6dfac83b578f8fa5f21e675bc2706ed6981bc26b7eb7e6a1fab158e5ce4adf9caa4a0aee49a52505d4d13c7be545f15021b17c - languageName: node - linkType: hard - "webidl-conversions@npm:^7.0.0": version: 7.0.0 resolution: "webidl-conversions@npm:7.0.0" @@ -9041,13 +9817,13 @@ __metadata: languageName: node linkType: hard -"whatwg-url@npm:^5.0.0": - version: 5.0.0 - resolution: "whatwg-url@npm:5.0.0" +"whatwg-url@npm:^14.1.0 || ^13.0.0": + version: 14.2.0 + resolution: "whatwg-url@npm:14.2.0" dependencies: - tr46: ~0.0.3 - webidl-conversions: ^3.0.0 - checksum: b8daed4ad3356cc4899048a15b2c143a9aed0dfae1f611ebd55073310c7b910f522ad75d727346ad64203d7e6c79ef25eafd465f4d12775ca44b90fa82ed9e2c + tr46: ^5.1.0 + webidl-conversions: ^7.0.0 + checksum: c4f1ae1d353b9e56ab3c154cd73bf2b621cea1a2499fd2a9b2a17d448c2ed5e73a8922a0f395939de565fc3661461140111ae2aea26d4006a1ad0cfbf021c034 languageName: node linkType: hard @@ -9280,6 +10056,21 @@ __metadata: languageName: node linkType: hard +"yargs@npm:17.7.2": + version: 17.7.2 + resolution: "yargs@npm:17.7.2" + dependencies: + cliui: ^8.0.1 + escalade: ^3.1.1 + get-caller-file: ^2.0.5 + require-directory: ^2.1.1 + string-width: ^4.2.3 + y18n: ^5.0.5 + yargs-parser: ^21.1.1 + checksum: 73b572e863aa4a8cbef323dd911d79d193b772defd5a51aab0aca2d446655216f5002c42c5306033968193bdbf892a7a4c110b0d77954a7fdf563e653967b56a + languageName: node + linkType: hard + "yargs@npm:^15.3.1": version: 15.4.1 resolution: "yargs@npm:15.4.1" @@ -9314,21 +10105,6 @@ __metadata: languageName: node linkType: hard -"yargs@npm:^17.7.2": - version: 17.7.2 - resolution: "yargs@npm:17.7.2" - dependencies: - cliui: ^8.0.1 - escalade: ^3.1.1 - get-caller-file: ^2.0.5 - require-directory: ^2.1.1 - string-width: ^4.2.3 - y18n: ^5.0.5 - yargs-parser: ^21.1.1 - checksum: 73b572e863aa4a8cbef323dd911d79d193b772defd5a51aab0aca2d446655216f5002c42c5306033968193bdbf892a7a4c110b0d77954a7fdf563e653967b56a - languageName: node - linkType: hard - "yeast@npm:0.1.2": version: 0.1.2 resolution: "yeast@npm:0.1.2" @@ -9342,3 +10118,10 @@ __metadata: checksum: 2c487b0e149e746ef48cda9f8bad10fc83693cd69d7f9dcd8be4214e985de33a29c9e24f3c0d6bcf2288427040a8947406ab27f7af67ee9456e6b84854f02dd6 languageName: node linkType: hard + +"zimmerframe@npm:^1.1.2": + version: 1.1.4 + resolution: "zimmerframe@npm:1.1.4" + checksum: f7917916db73ad09c4870dc7045fdefb9f0122257878ec53e75ff6ea633718369b99185a21aae1fed1d258e7d66d95080169ef1a386c599b8b912467f17932bc + languageName: node + linkType: hard